Google Wants LLVM To Mainline x32 ABI Support

Posted by Michael Larabel on January 16, 2013

The Google Native Client (NaCl) team is looking to upstream some of their LLVM changes such as support for Software Fault Isolation (SFI). As part of pushing forward the changes for Native Client in LLVM, they're also looking to see mainlined the x32 ABI support. X32 is the Application Binary Interface that looks to take advantage of common x86_64 CPU features like increased CPU registers and more instruction set extensions while using 32-bit pointers.

David Sehr of Google, part of their Native Client team, wrote a new mailing list thread on Tuesday about upstreaming x32 ABI support inside LLVM. What the NaCl team would like to work on next with their LLVM upstreaming is the x32 ABI portion, "our ABI is dependent on the existence of an ILP32 ABI on x86-64. The conventions we rely on are the same as those developed for the x32 effort, and we propose that the community begin reviewing changes to implement the x32 ABI."

Google Native Client is the sandboxing technology for running x86/ARM code using Software Fault Isolation (SFI) within the web-browser and to run this code at near-native speeds.

In terms of Linux x32 coverage there is already Linux x32 kernel support, glibc support, gdb debugging support, and GCC compiler support. There has been early LLVM/Clang x32 support, but nothing has been merged yet.

Now Google is hoping to see this changed while the x32 ABI hasn't been widely adopted. At least it is possible to do a Gentoo Stage 3 x32 installation as well as running Debian with x32, but any Ubuntu support is still a ways off.

Discuss this article in our forums, IRC channel, or email the author. You can also follow our content via RSS and on social networks like Facebook, Identi.ca, and Twitter (@Phoronix and @MichaelLarabel). Subscribe to Phoronix Premium to view our content without advertisements, view entire articles on a single page, and experience other benefits.
Latest Hardware Reviews
  1. Sumo Lounge Emperor
  2. Gallium3D Continues Improving OpenGL For Older Radeon GPUs
  3. 15-Way Open vs. Closed Source NVIDIA/AMD Linux GPU Comparison
  4. Nouveau vs. NVIDIA Linux Comparison Shows Shortcomings
Latest Software Articles
  1. GCC 4.8.0 vs. LLVM Clang 3.3 Compiler Performance
  2. Intel Linux OpenGL Driver Leading Over Apple OS X
  3. The Cost Of Ubuntu Disk Encryption
  4. Btrfs vs. EXT4 vs. XFS vs. F2FS On Linux 3.10
Latest Linux News
  1. A New X.Org-Free Wayland LiveCD Released
  2. Unity 8, Mir Made Progress This Week On Features
  3. LLVM Clang 3.3 RC2 Is Ready For Testing
  4. AMD RadeonSI Gallium3D Begins Simple CL Demos
  5. Intel Shows Off GNOME3-Based Tizen Shell
  6. Linux Desktop Security Could Be A Whole Lot Better
  7. KDE 4.11 Will Be The Last Major KDE4 Workspaces Feature Release
  8. New NVIDIA Linux Driver Supports The GeForce GTX 780
  9. Chrome 28 To Offer More Speed Improvements
  10. Digia Announces "Boot To Qt" Project
  11. X.Org Libraries Hit By Round Of Security Issues
Latest Forum Talk
  1. AMD RadeonSI Gallium3D Begins Simple CL Demos
  2. A New X.Org-Free Wayland LiveCD Released
  3. X.Org Libraries Hit By Round Of Security Issues
  4. Wayland's Weston Gets Output Scaling Support
  5. GCC 4.8.0 vs. LLVM Clang 3.3 Compiler Performance
  6. Linux's "Ondemand" Governor Is No...
  1. Computers
  2. Display Drivers
  3. Graphics Cards
  4. Motherboards
  5. Peripherals
  6. Processors
  7. Software
  8. Operating Systems
  9. All Articles
  1. Linux Benchmarking
  2. OpenBenchmarking.org
  3. Phoronix Test Suite