projects
/
oota-llvm.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
This adds range checking for "ldr Rn, [pc, #imm]" Thumb
[oota-llvm.git]
/
lib
/
Target
/
ARM
/
MCTargetDesc
/
ARMAsmBackend.cpp
diff --git
a/lib/Target/ARM/MCTargetDesc/ARMAsmBackend.cpp
b/lib/Target/ARM/MCTargetDesc/ARMAsmBackend.cpp
index 5ef9314db217807f58a97ba2655c7e24f5606beb..b1e25d8b89e5f45d40e7d78dec3ed90e8d87bc58 100644
(file)
--- a/
lib/Target/ARM/MCTargetDesc/ARMAsmBackend.cpp
+++ b/
lib/Target/ARM/MCTargetDesc/ARMAsmBackend.cpp
@@
-152,7
+152,7
@@
static unsigned getRelaxedOpcode(unsigned Op) {
switch (Op) {
default: return Op;
case ARM::tBcc: return ARM::t2Bcc;
switch (Op) {
default: return Op;
case ARM::tBcc: return ARM::t2Bcc;
- case ARM::tLDRpci
ASM:
return ARM::t2LDRpci;
+ case ARM::tLDRpci
:
return ARM::t2LDRpci;
case ARM::tADR: return ARM::t2ADR;
case ARM::tB: return ARM::t2B;
}
case ARM::tADR: return ARM::t2ADR;
case ARM::tB: return ARM::t2B;
}
@@
-680,8
+680,11
@@
MCAsmBackend *llvm::createARMAsmBackend(const Target &T, StringRef TT, StringRef
return new DarwinARMAsmBackend(T, TT, CS);
}
return new DarwinARMAsmBackend(T, TT, CS);
}
- if (TheTriple.isOSWindows())
+#if 0
+ // FIXME: Introduce yet another checker but assert(0).
+ if (TheTriple.isOSBinFormatCOFF())
assert(0 && "Windows not supported on ARM");
assert(0 && "Windows not supported on ARM");
+#endif
uint8_t OSABI = MCELFObjectTargetWriter::getOSABI(Triple(TT).getOS());
return new ELFARMAsmBackend(T, TT, OSABI);
uint8_t OSABI = MCELFObjectTargetWriter::getOSABI(Triple(TT).getOS());
return new ELFARMAsmBackend(T, TT, OSABI);