DescriptionHandle ELFCLASS32 files for x86-64
In the future we will use an x86-64 toolchain based on the "x32" ABI.
This uses ELFCLASS32 files for x86-64. Prepare for this by supporting
such files now. We do this by making the internal representation of
ELF files use ELFCLASS32 format unconditionally. On reading ELFCLASS64
files, we convert the header formats to the 32-bit representations.
Since we do not yet have x32-based tools for NaCl, the only way to
test an ELFCLASS32 x86-64 file is construct one by hand using the
latest Linux assembler and linker in x32 mode. I've done this for
a trivial all-assembly "Hello world" program. We test that ncval
accepts this program and that sel_ldr executes it correctly.
BUG= http://code.google.com/p/nativeclient/issues/detail?id=349
TEST= trybots
R=bsy@google.com,kschimpf@google.com
Committed: http://src.chromium.org/viewvc/native_client?view=rev&revision=6911
Patch Set 1 #Patch Set 2 : add some casts to silence windows compiler #Patch Set 3 : error message changes for some death tests with high bits set in header fields #Patch Set 4 : more explicit casts #Patch Set 5 : expected error msgs change only for x86-64 #Patch Set 6 : rebased; binary testdata committed separately #
Total comments: 2
Patch Set 7 : add comment; fix integer overflow case #
Total comments: 14
Patch Set 8 : comment and style changes per review #
Total comments: 3
Patch Set 9 : e_phentsize checks with != #
Total comments: 3
Patch Set 10 : error code renamed #Patch Set 11 : add new NaClErrorCode values at the end, do not reuse unused old numbers #Patch Set 12 : typo fixes in last iteration #Messages
Total messages: 12 (0 generated)
|