Geert Uytterhoeven <geert@xxxxxxxxxxxxxx> writes: > On Sat, Oct 22, 2016 at 10:23 PM, Robert Jarzmik <robert.jarzmik@xxxxxxx> wrote: >> Arnd Bergmann <arnd@xxxxxxxx> writes: >> >>> On Friday, October 21, 2016 4:48:56 PM CEST Russell King - ARM Linux wrote: >>>> What's the point of the x32 mode? >>> >>> On x86, the motivation is faster code for most use cases that >>> don't need a lot of memory, as the 64-bit opcodes have 16 registers >>> rather than 8 in 32-bit mode but 32-bit pointers have lower >>> cache footprint than 64-bit pointers. >> >> For completness, the second point of x32 AFAIU is the IP-relative addressing >> which is not available in standard 32 bit mode, which improves PIC code. For >> simple not algorithmic code (think Android HAL for example) with many shared >> libraries, it's better in the Hardware Abstraction Layer Libraries, instead of >> the push-to-stack and pop register. > > But that's not an advantage compared to full am64 mode, right? Nope, the amd64 (that's what you have in mind with am64, not aarch64 right ?) mode has the IP-relative has well, so x32 has no advantage over amd64 in this area. x32 over amd64 advantage is cache and memory footprint AFAICT, I don't see other benefits. There doesn't seem to be any ISA differences, or I didn't really notice in my daily system performance analysis job. There was a nice presentation made by Peter Anvin at a Plumber conference, here : http://linuxplumbersconf.org/2011/ocw/sessions/531 Cheers. -- Robert -- To unsubscribe from this list: send the line "unsubscribe linux-api" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html