[mips] Correct ELF e_flags for the N32 ABI when using a mips-* triple rather than...
authorDaniel Sanders <daniel.sanders@imgtec.com>
Thu, 17 Jul 2014 10:02:08 +0000 (10:02 +0000)
committerDaniel Sanders <daniel.sanders@imgtec.com>
Thu, 17 Jul 2014 10:02:08 +0000 (10:02 +0000)
commit7f70573ed99e5cc38a42776fea6bbe2636cd2afb
tree21b57db3fb709bfc9406ffafa70eac59e0b71421
parent185f23adbceca4c7517ade14d5fe1989c6ea2e7b
[mips] Correct ELF e_flags for the N32 ABI when using a mips-* triple rather than a mips64-* triple

Summary:
Generally speaking, mips-* vs mips64-* should not be used to make decisions
about the content or format of the ELF. This should be based on the ABI
and CPU in use. For example, `mips-linux-gnu-clang -mips64r2 -mabi=64`
should produce an ELF64 as should `mips64-linux-gnu-clang -mabi=64`.
Conversely, `mips64-linux-gnu-clang -mabi=n32` should produce an ELF32 as
should `mips-linux-gnu-clang -mips64r2 -mabi=n32`.

This patch fixes the e_flags but leaves the ELF32 vs ELF64 issue for now
since there is no apparent way to base this decision on the ABI and CPU.

Differential Revision: http://reviews.llvm.org/D4539

llvm-svn: 213244
llvm/lib/Target/Mips/MCTargetDesc/MipsTargetStreamer.cpp
llvm/test/MC/Mips/elf_eflags.s