[PATCH] [mips] [IAS] Preserve microMIPS label marking for objects when assigning.
Toma Tabacu
toma.tabacu at imgtec.com
Mon Mar 2 08:08:10 PST 2015
Hi dsanders,
Previously, this was only happening for functions, but because of .insn, objects can also be marked now.
This patch depends on http://reviews.llvm.org/D8006.
http://reviews.llvm.org/D8007
Files:
lib/Target/Mips/MCTargetDesc/MipsTargetStreamer.cpp
test/MC/Mips/micromips-alias.s
Index: lib/Target/Mips/MCTargetDesc/MipsTargetStreamer.cpp
===================================================================
--- lib/Target/Mips/MCTargetDesc/MipsTargetStreamer.cpp
+++ lib/Target/Mips/MCTargetDesc/MipsTargetStreamer.cpp
@@ -505,9 +505,8 @@
const MCSymbol &RhsSym =
static_cast<const MCSymbolRefExpr *>(Value)->getSymbol();
MCSymbolData &Data = getStreamer().getOrCreateSymbolData(&RhsSym);
- uint8_t Type = MCELF::GetType(Data);
- if ((Type != ELF::STT_FUNC) ||
- !(MCELF::getOther(Data) & (ELF::STO_MIPS_MICROMIPS >> 2)))
+
+ if (!(MCELF::getOther(Data) & (ELF::STO_MIPS_MICROMIPS >> 2)))
return;
MCSymbolData &SymbolData = getStreamer().getOrCreateSymbolData(Symbol);
Index: test/MC/Mips/micromips-alias.s
===================================================================
--- test/MC/Mips/micromips-alias.s
+++ test/MC/Mips/micromips-alias.s
@@ -14,3 +14,15 @@
nop
.globl bar
bar = f
+
+# CHECK: Name: foo
+# CHECK: Other: 128
+ .type o, at object
+ .set micromips
+o:
+ .insn
+ .word 0x00000000
+ .set nomicromips
+
+ .globl foo
+foo = o
EMAIL PREFERENCES
http://reviews.llvm.org/settings/panel/emailpreferences/
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D8007.21009.patch
Type: text/x-patch
Size: 1108 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20150302/00834843/attachment.bin>
More information about the llvm-commits
mailing list