[PATCH][ppc64le] Generate little-endian object files

Ulrich Weigand Ulrich.Weigand at de.ibm.com
Tue Mar 18 11:13:36 PDT 2014



Hello,

as a first step towards real little-endian code generation, this patch
changes the PowerPC MC layer to actually generate little-endian object
files.  This involves passing the little-endian flag through the various
layers, including down to createELFObjectWriter so we actually get basic
little-endian ELF objects, emitting instructions in little-endian order,
and handling fixups and relocations as appropriate for little-endian.

The bulk of the patch is to update most test cases in test/MC/PowerPC to
verify both big- and little-endian encodings.  (The only test cases *not*
updated are those that create actual big-endian ABI code, like the TLS
tests.)

Note that while the object files are now little-endian, the generated code
itself is not yet updated, in particular, it still does not adhere to the
ELFv2 ABI.

Does this look OK?

(See attached file: diff-llvm-ppc64le-mc)


Mit freundlichen Gruessen / Best Regards

Ulrich Weigand

--
  Dr. Ulrich Weigand | Phone: +49-7031/16-3727
  STSM, GNU/Linux compilers and toolchain
  IBM Deutschland Research & Development GmbH
  Vorsitzende des Aufsichtsrats: Martina Koederitz | Geschäftsführung: Dirk
Wittkopp
  Sitz der Gesellschaft: Böblingen | Registergericht: Amtsgericht
Stuttgart, HRB 243294
-------------- next part --------------
A non-text attachment was scrubbed...
Name: diff-llvm-ppc64le-mc
Type: application/octet-stream
Size: 698477 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20140318/28d2a942/attachment.obj>


More information about the llvm-commits mailing list