aboutsummaryrefslogtreecommitdiffstats
path: root/lib/Target/ARM/MCTargetDesc/ARMMCCodeEmitter.cpp
diff options
context:
space:
mode:
authorMihai Popa <mihail.popa@gmail.com>2013-08-13 14:02:13 +0000
committerMihai Popa <mihail.popa@gmail.com>2013-08-13 14:02:13 +0000
commitea8ddd86b1e364a799e57fc0ac468a9c4a8f8bcf (patch)
tree791e420d30a6edb4ac9d45e1cdb76402ad779d97 /lib/Target/ARM/MCTargetDesc/ARMMCCodeEmitter.cpp
parent4d36bd80e68b8245ba4fcf26d33dbf35da3e2002 (diff)
downloadexternal_llvm-ea8ddd86b1e364a799e57fc0ac468a9c4a8f8bcf.zip
external_llvm-ea8ddd86b1e364a799e57fc0ac468a9c4a8f8bcf.tar.gz
external_llvm-ea8ddd86b1e364a799e57fc0ac468a9c4a8f8bcf.tar.bz2
Fix signed overflow in when computing encodings for ADR instructions
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@188268 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Target/ARM/MCTargetDesc/ARMMCCodeEmitter.cpp')
-rw-r--r--lib/Target/ARM/MCTargetDesc/ARMMCCodeEmitter.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/lib/Target/ARM/MCTargetDesc/ARMMCCodeEmitter.cpp b/lib/Target/ARM/MCTargetDesc/ARMMCCodeEmitter.cpp
index 0873220..c0c21d3 100644
--- a/lib/Target/ARM/MCTargetDesc/ARMMCCodeEmitter.cpp
+++ b/lib/Target/ARM/MCTargetDesc/ARMMCCodeEmitter.cpp
@@ -671,7 +671,7 @@ getAdrLabelOpValue(const MCInst &MI, unsigned OpIdx,
if (MO.isExpr())
return ::getBranchTargetOpValue(MI, OpIdx, ARM::fixup_arm_adr_pcrel_12,
Fixups);
- int32_t offset = MO.getImm();
+ int64_t offset = MO.getImm();
uint32_t Val = 0x2000;
int SoImmVal;