MC: support different sized constants in constant pools
On AArch64 the pseudo instruction ldr <reg>, =... supports both 32-bit and 64-bit constants. Add support for 64 bit constants for the pools to support the pseudo instruction fully. Changes the AArch64 ldr-pseudo tests to use 32-bit registers and adds tests with 64-bit registers. Patch by Janne Grunau! Differential Revision: http://reviews.llvm.org/D4279 llvm-svn: 213387
Showing
- llvm/include/llvm/MC/ConstantPools.h 13 additions, 3 deletionsllvm/include/llvm/MC/ConstantPools.h
- llvm/include/llvm/MC/MCStreamer.h 1 addition, 1 deletionllvm/include/llvm/MC/MCStreamer.h
- llvm/lib/MC/ConstantPools.cpp 10 additions, 7 deletionsllvm/lib/MC/ConstantPools.cpp
- llvm/lib/Target/AArch64/AsmParser/AArch64AsmParser.cpp 16 additions, 5 deletionsllvm/lib/Target/AArch64/AsmParser/AArch64AsmParser.cpp
- llvm/lib/Target/AArch64/MCTargetDesc/AArch64TargetStreamer.cpp 3 additions, 2 deletions...lib/Target/AArch64/MCTargetDesc/AArch64TargetStreamer.cpp
- llvm/lib/Target/ARM/MCTargetDesc/ARMTargetStreamer.cpp 1 addition, 1 deletionllvm/lib/Target/ARM/MCTargetDesc/ARMTargetStreamer.cpp
- llvm/test/MC/AArch64/ldr-pseudo-diagnostics.s 14 additions, 0 deletionsllvm/test/MC/AArch64/ldr-pseudo-diagnostics.s
- llvm/test/MC/AArch64/ldr-pseudo.s 120 additions, 32 deletionsllvm/test/MC/AArch64/ldr-pseudo.s
- llvm/test/MC/ARM/ldr-pseudo-darwin.s 16 additions, 10 deletionsllvm/test/MC/ARM/ldr-pseudo-darwin.s
- llvm/test/MC/ARM/ltorg-darwin.s 6 additions, 6 deletionsllvm/test/MC/ARM/ltorg-darwin.s
Loading
Please register or sign in to comment