Date: Tue, 9 Jul 2013 18:08:30 -0700 From: Peter Wemm <peter@wemm.org> To: Adrian Chadd <adrian@freebsd.org> Cc: Baptiste Daroussin <bapt@freebsd.org>, Andrew Turner <andrew@fubar.geek.nz>, freebsd-arch@freebsd.org Subject: Re: Adding a MACHINE_ARCH note Message-ID: <CAGE5yCq9gQERDkbi4wu=6tNUap24ZR7sL7aF%2BzmEO0eT6nxPsA@mail.gmail.com> In-Reply-To: <CAJ-Vmo=tmGDW3Ubw9nr5rb30bXr1dcJUkKLOU7L=_bx29zvEhw@mail.gmail.com> References: <20130709090744.0e497e7e@bender.Home> <32F979BD-FB5C-4111-9586-4C5E7C6DFA71@bsdimp.com> <20130709234837.559e3769@bender.Home> <CAJ-Vmo=iV8BsGriFRgNuP-ZJdQhpmBLhjAkz-nSVRS0HPKSyOQ@mail.gmail.com> <CAGE5yCpJmRDvnaYtozj4bCqNoQXH=1e96HPJAqwJuRdn4H9BZA@mail.gmail.com> <CAJ-Vmo=tmGDW3Ubw9nr5rb30bXr1dcJUkKLOU7L=_bx29zvEhw@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On Tue, Jul 9, 2013 at 5:56 PM, Adrian Chadd <adrian@freebsd.org> wrote: > ... boy I'd like to see this particular x86 hiccup fixed before this > stuff is mainstream. I'm not entirely sure how much support there is behind "x32". I don't know if its much more than an academic curiosity or if there's real demand for it. gcc-4.8 and clang have it, or have patches for it. https://sites.google.com/site/x32abi/ http://www.phoronix.com/scan.php?page=news_item&px=MTExNDE > adrian > > On 9 July 2013 17:54, Peter Wemm <peter@wemm.org> wrote: >> On Tue, Jul 9, 2013 at 5:40 PM, Adrian Chadd <adrian@freebsd.org> wrote: >>> Someone pointed out there's dirty people running 32-bit binaries using >>> the 64-bit intel/amd instruction set. >>> >>> Is this also able to represent that? >> >> That would be "X32", so there's 3 x86 ABI variants: >> i386 - 32 bit >> amd64 - 32 bit >> amd64 - 64 bit >> >> Incidentally, pkgng has a issues with this. For some reason it lumps >> both i386 and amd64 into a single pseudo-arch called "x86" with a 32 >> and 64 bit variant. It doesn't leave room for distinguishing the two >> incompatible 32 bit architectures. >> >> "x32" is where the compiler generates code where "long" and "pointer" >> are 32 bit, but the instruction set is otherwise amd64 and has all 16 >> general purpose registers available. "long long" is a 64 bit >> register instead of a pair of 32 bit registers like on i386. >> >>> -adrian >>> >>> On 9 July 2013 15:48, Andrew Turner <andrew@fubar.geek.nz> wrote: >>>> On Tue, 9 Jul 2013 08:19:46 -0600 >>>> Warner Losh <imp@bsdimp.com> wrote: >>>>> I thought that the ELF headers gave us all the data we needed to know >>>>> how things were built... >>>> >>>> It will tell us if it was for e.g. an ARM or MIPS ELF file, but I'm not >>>> sure how we can tell the difference between an arm and an armv6 ELF. >>>> >>>> With armv6 there are a few changes in the userland/kernel >>>> interface, e.g. reading the thread local storage pointer is different >>>> such that an armv6 static binary would not run on an ARMv5 core as it >>>> uses newer instructions. >>>> >>>> Andrew >>>> _______________________________________________ >>>> freebsd-arch@freebsd.org mailing list >>>> http://lists.freebsd.org/mailman/listinfo/freebsd-arch >>>> To unsubscribe, send any mail to "freebsd-arch-unsubscribe@freebsd.org" >>> _______________________________________________ >>> freebsd-arch@freebsd.org mailing list >>> http://lists.freebsd.org/mailman/listinfo/freebsd-arch >>> To unsubscribe, send any mail to "freebsd-arch-unsubscribe@freebsd.org" >> >> >> >> -- >> Peter Wemm - peter@wemm.org; peter@FreeBSD.org; peter@yahoo-inc.com; KI6FJV >> UTF-8: So you can \342\200\231 .. for when a ' just won't do >> <brueffer> ZFS must be the bacon of file systems. "everything's better with ZFS" -- Peter Wemm - peter@wemm.org; peter@FreeBSD.org; peter@yahoo-inc.com; KI6FJV UTF-8: So you can \342\200\231 .. for when a ' just won't do <brueffer> ZFS must be the bacon of file systems. "everything's better with ZFS"
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAGE5yCq9gQERDkbi4wu=6tNUap24ZR7sL7aF%2BzmEO0eT6nxPsA>