aboutsummaryrefslogtreecommitdiffstats
path: root/lib/Target/Mips/MCTargetDesc/MipsELFStreamer.cpp
diff options
context:
space:
mode:
authorJack Carter <jcarter@mips.com>2013-02-19 22:14:34 +0000
committerJack Carter <jcarter@mips.com>2013-02-19 22:14:34 +0000
commitc989c61798783f99abe7f8c27baf76bd2aea5067 (patch)
treeb6ebb12172705b60536ffcd085dbd095ee89dc0a /lib/Target/Mips/MCTargetDesc/MipsELFStreamer.cpp
parent4263ed33a77a3679545e784da1ab26e79032a467 (diff)
downloadexternal_llvm-c989c61798783f99abe7f8c27baf76bd2aea5067.zip
external_llvm-c989c61798783f99abe7f8c27baf76bd2aea5067.tar.gz
external_llvm-c989c61798783f99abe7f8c27baf76bd2aea5067.tar.bz2
ELF symbol table field st_other support,
excluding visibility bits. Mips (Mips16) specific e_header setting. EF_MIPS_ARCH_ASE_M16 needs to be set in the ELF header flags for Mips16. Contributer: Reed Kotler git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@175566 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Target/Mips/MCTargetDesc/MipsELFStreamer.cpp')
-rw-r--r--lib/Target/Mips/MCTargetDesc/MipsELFStreamer.cpp5
1 files changed, 4 insertions, 1 deletions
diff --git a/lib/Target/Mips/MCTargetDesc/MipsELFStreamer.cpp b/lib/Target/Mips/MCTargetDesc/MipsELFStreamer.cpp
index ebcbf9d..e12b176 100644
--- a/lib/Target/Mips/MCTargetDesc/MipsELFStreamer.cpp
+++ b/lib/Target/Mips/MCTargetDesc/MipsELFStreamer.cpp
@@ -36,7 +36,10 @@ namespace llvm {
MCAssembler& MCA = getAssembler();
unsigned EFlags = MCA.getELFHeaderEFlags();
- EFlags |= ELF::EF_MIPS_NOREORDER;
+ if (Subtarget.inMips16Mode())
+ EFlags |= ELF::EF_MIPS_ARCH_ASE_M16;
+ else
+ EFlags |= ELF::EF_MIPS_NOREORDER;
// Architecture
if (Subtarget.hasMips64r2())