llvm-6502/test/MC/ARM
Stepan Dyatkovskiy fccc6901d6 Fix for pr18931: Crash using integrated assembler with immediate arithmetic
Fix description:
Expressions like 'cmp r0, #(l1 - l2) >> 3' could not be evaluated on asm parsing stage,
since it is impossible to resolve labels on this stage. In the end of stage we still have
expression (MCExpr).
Then, when we want to encode it, we expect it to be an immediate, but it still an expression.
Patch introduces a Fixup (MCFixup instance), that is processed after main encoding stage.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@204899 91177308-0d34-0410-b5e6-96231b3b80d8
2014-03-27 07:49:39 +00:00
..
AlignedBundling
2010-11-30-reloc-movt.s
2013-03-18-Br-to-label-named-like-reg.s
align_arm_2_thumb.s
align_thumb_2_arm.s
arm_addrmode2.s ARM: change implicit immediate forms of {ld,st}r{,b}t to psuedo-instructions 2014-01-12 04:36:01 +00:00
arm_addrmode3.s
arm_fixups.s
arm_instructions.s
arm-aliases.s
arm-arithmetic-aliases.s
arm-elf-symver.s Teach llvm-readobj to print human friendly description of reserved sections. 2014-03-24 05:00:34 +00:00
arm-it-block.s
arm-ldrd.s
arm-memory-instructions.s ARM IAS: support GNU extension for ldrd, strd 2014-01-10 04:38:35 +00:00
arm-qualifier-diagnostics.s ARM IAS: fix diagnostics of improper qualification 2014-01-12 05:25:44 +00:00
arm-shift-encoding.s
arm-thumb-cpus-default.s
arm-thumb-cpus.s
arm-thumb-trustzone.s
arm-trustzone.s
basic-arm-instructions-v8.s
basic-arm-instructions.s
basic-thumb2-instructions-v8.s
basic-thumb2-instructions.s Tidy up a bit. Formatting only. 2014-02-11 20:48:41 +00:00
basic-thumb-instructions.s
bkpt.s ARM: bkpt has an implicit immediate constant 0 2013-12-23 17:23:58 +00:00
bracket-darwin.s
bracket-exprs.s
cmp-immediate-fixup.s Fix for pr18931: Crash using integrated assembler with immediate arithmetic 2014-03-27 07:49:39 +00:00
comment.s Fix parsing of .symver directive on ARM 2014-01-15 22:40:02 +00:00
complex-operands.s ARM IAS: properly handle expression operands 2014-01-08 03:28:14 +00:00
crc32-thumb.s
crc32.s
cxx-global-constructor.ll
data-in-code.ll Remove -arm-disable-ehabi option 2014-02-07 20:12:49 +00:00
deprecated-v8.s
diagnostics-noneon.s
diagnostics.s
directive-align.s ARM IAS: support .align without parameters 2014-02-23 17:45:32 +00:00
directive-arch_extension-crc.s ARM IAS: (partially) support .arch_extension directive 2014-02-16 00:16:41 +00:00
directive-arch_extension-crypto.s ARM IAS: (partially) support .arch_extension directive 2014-02-16 00:16:41 +00:00
directive-arch_extension-fp.s ARM IAS: (partially) support .arch_extension directive 2014-02-16 00:16:41 +00:00
directive-arch_extension-idiv.s ARM IAS: (partially) support .arch_extension directive 2014-02-16 00:16:41 +00:00
directive-arch_extension-mp.s ARM IAS: (partially) support .arch_extension directive 2014-02-16 00:16:41 +00:00
directive-arch_extension-sec.s ARM IAS: (partially) support .arch_extension directive 2014-02-16 00:16:41 +00:00
directive-arch_extension-simd.s ARM IAS: (partially) support .arch_extension directive 2014-02-16 00:16:41 +00:00
directive-arch-armv2.s ARM: change attribute tests to use parsed form 2014-02-08 23:17:02 +00:00
directive-arch-armv2a.s ARM: change attribute tests to use parsed form 2014-02-08 23:17:02 +00:00
directive-arch-armv3.s ARM: change attribute tests to use parsed form 2014-02-08 23:17:02 +00:00
directive-arch-armv3m.s ARM: change attribute tests to use parsed form 2014-02-08 23:17:02 +00:00
directive-arch-armv4.s ARM: change attribute tests to use parsed form 2014-02-08 23:17:02 +00:00
directive-arch-armv4t.s ARM: change attribute tests to use parsed form 2014-02-08 23:17:02 +00:00
directive-arch-armv5.s ARM: change attribute tests to use parsed form 2014-02-08 23:17:02 +00:00
directive-arch-armv5t.s ARM: change attribute tests to use parsed form 2014-02-08 23:17:02 +00:00
directive-arch-armv5te.s ARM: change attribute tests to use parsed form 2014-02-08 23:17:02 +00:00
directive-arch-armv6-m.s ARM: change attribute tests to use parsed form 2014-02-08 23:17:02 +00:00
directive-arch-armv6.s ARM: change attribute tests to use parsed form 2014-02-08 23:17:02 +00:00
directive-arch-armv6j.s ARM: change attribute tests to use parsed form 2014-02-08 23:17:02 +00:00
directive-arch-armv6t2.s ARM: change attribute tests to use parsed form 2014-02-08 23:17:02 +00:00
directive-arch-armv6z.s ARM: change attribute tests to use parsed form 2014-02-08 23:17:02 +00:00
directive-arch-armv6zk.s ARM: change attribute tests to use parsed form 2014-02-08 23:17:02 +00:00
directive-arch-armv7-a.s ARM: change attribute tests to use parsed form 2014-02-08 23:17:02 +00:00
directive-arch-armv7-m.s ARM: change attribute tests to use parsed form 2014-02-08 23:17:02 +00:00
directive-arch-armv7-r.s ARM: change attribute tests to use parsed form 2014-02-08 23:17:02 +00:00
directive-arch-armv7.s ARM: change attribute tests to use parsed form 2014-02-08 23:17:02 +00:00
directive-arch-armv7a.s ARM: change attribute tests to use parsed form 2014-02-08 23:17:02 +00:00
directive-arch-armv7m.s ARM: change attribute tests to use parsed form 2014-02-08 23:17:02 +00:00
directive-arch-armv7r.s ARM: change attribute tests to use parsed form 2014-02-08 23:17:02 +00:00
directive-arch-armv8-a.s ARM: change attribute tests to use parsed form 2014-02-08 23:17:02 +00:00
directive-arch-armv8a.s ARM: change attribute tests to use parsed form 2014-02-08 23:17:02 +00:00
directive-arch-iwmmxt2.s ARM: change attribute tests to use parsed form 2014-02-08 23:17:02 +00:00
directive-arch-iwmmxt.s ARM: change attribute tests to use parsed form 2014-02-08 23:17:02 +00:00
directive-cpu.s
directive-eabi_attribute-2.s ARM: update build attributes for ABI r2.09 2014-01-19 08:25:35 +00:00
directive-eabi_attribute-diagnostics.s ARM IAS: improve .eabi_attribute handling 2014-01-07 02:28:42 +00:00
directive-eabi_attribute-overwrite.s ARM: change attribute tests to use parsed form 2014-02-08 23:17:02 +00:00
directive-eabi_attribute.s
directive-even.s ARM IAS: support .even directive 2013-12-26 01:52:28 +00:00
directive-fpu-multiple.s ARM: change attribute tests to use parsed form 2014-02-08 23:17:02 +00:00
directive-fpu-softvfp.s [arm] Add softvfp to supported FPU names. 2014-01-02 15:50:02 +00:00
directive-fpu.s
directive-literals.s ARM IAS: support .short and .hword 2014-02-23 06:22:09 +00:00
directive-object_arch-2.s ARM IAS: support .object_arch 2014-01-30 04:46:41 +00:00
directive-object_arch-3.s ARM IAS: support .object_arch 2014-01-30 04:46:41 +00:00
directive-object_arch-diagnostics.s ARM IAS: support .object_arch 2014-01-30 04:46:41 +00:00
directive-object_arch.s ARM IAS: support .object_arch 2014-01-30 04:46:41 +00:00
directive-tlsdescseq-diagnostics.s ARM: suuport .tlsdescseq directive 2014-01-30 04:02:47 +00:00
directive-tlsdescseq.s ARM: suuport .tlsdescseq directive 2014-01-30 04:02:47 +00:00
directive-word-diagnostics.s ARM: improve diagnostics for .word directive 2014-01-26 22:29:50 +00:00
dot-req-case-insensitive.s ARM: Make .unreq directives case-insensitive 2014-03-07 16:16:52 +00:00
dot-req.s
dwarf-cfi-initial-state.s ARM MC: Fix the initial DWARF CFI unwind info at the start of a function 2014-01-27 22:38:14 +00:00
eh-compact-pr0.s
eh-compact-pr1.s
eh-directive-cantunwind-diagnostics.s MCParser: introduce Note and use it for ARM AsmParser 2014-01-07 02:28:31 +00:00
eh-directive-cantunwind.s
eh-directive-fnend-diagnostics.s
eh-directive-fnstart-diagnostics.s ARM IAS: refactor unwind context 2014-01-07 02:28:55 +00:00
eh-directive-handlerdata.s
eh-directive-integrated-test.s
eh-directive-movsp-diagnostics.s ARM IAS: support .movsp 2014-01-30 04:46:24 +00:00
eh-directive-movsp.s ARM IAS: support .movsp 2014-01-30 04:46:24 +00:00
eh-directive-multiple-offsets.s
eh-directive-pad-diagnostics.s
eh-directive-pad.s
eh-directive-personality-diagnostics.s
eh-directive-personality.s
eh-directive-personalityindex-diagnostics.s ARM IAS: support .personalityindex 2014-01-21 02:33:02 +00:00
eh-directive-personalityindex.s ARM IAS: support .personalityindex 2014-01-21 02:33:02 +00:00
eh-directive-save-diagnoatics.s
eh-directive-save.s
eh-directive-section-comdat.s
eh-directive-section-multiple-func.s
eh-directive-section.s
eh-directive-setfp-diagnostics.s
eh-directive-setfp.s Fix known typos 2014-01-24 17:20:08 +00:00
eh-directive-text-section-multiple-func.s
eh-directive-text-section.s
eh-directive-unwind_raw-diagnostics.s ARM IAS: add support for .unwind_raw directive 2014-01-21 02:33:10 +00:00
eh-directive-unwind_raw.s tools: support decoding ARM EHABI opcodes in readobj 2014-01-21 02:33:15 +00:00
eh-directive-vsave-diagnostics.s
eh-directive-vsave.s
elf-eflags-eabi.s
elf-jump24-fixup.s llvm-objdump output hex to match binutils' objdump 2014-03-20 22:55:15 +00:00
elf-movt.s
elf-reloc-01.ll
elf-reloc-02.ll
elf-reloc-03.ll
elf-reloc-condcall.s
elf-thumbfunc-reloc.ll Enable EHABI by default 2014-01-29 11:50:56 +00:00
elf-thumbfunc-reloc.s
elf-thumbfunc.s
fconst.s Add ARM fconsts/fconstd aliases for vmov.f32/vmov.f64 2014-01-07 18:19:23 +00:00
fixup-cpu-mode.s Tests for mode switching 2014-01-28 23:13:30 +00:00
fp-armv8.s
fp-const-errors.s Add ARM fconsts/fconstd aliases for vmov.f32/vmov.f64 2014-01-07 18:19:23 +00:00
full_line_comment.s
hilo-16bit-relocations.s
idiv.s
inst-arm-suffixes.s ARM IAS: support .inst directive 2013-12-19 05:17:58 +00:00
inst-constant-required.s ARM IAS: support .inst directive 2013-12-19 05:17:58 +00:00
inst-directive-emit.s ARM IAS: support .inst directive 2013-12-19 05:17:58 +00:00
inst-directive.s ARM IAS: support .inst directive 2013-12-19 05:17:58 +00:00
inst-overflow.s ARM IAS: support .inst directive 2013-12-19 05:17:58 +00:00
inst-thumb-overflow-2.s ARM IAS: support .inst directive 2013-12-19 05:17:58 +00:00
inst-thumb-overflow.s ARM IAS: support .inst directive 2013-12-19 05:17:58 +00:00
inst-thumb-suffixes.s ARM IAS: support .inst directive 2013-12-19 05:17:58 +00:00
invalid-barrier.s
invalid-crc32.s
invalid-fp-armv8.s
invalid-hint-arm.s
invalid-hint-thumb.s
invalid-idiv.s
invalid-neon-v8.s
invalid-vector-index.s Fix the arm assembler so that this malformed instruction: 2014-02-17 21:45:27 +00:00
label_offset.s ARM: raise error message when complex SO expressions can't really be 2014-03-27 07:42:58 +00:00
ldr-pseudo-darwin.s Implement the ldr-pseudo opcode for ARM assembly 2013-12-19 18:12:36 +00:00
ldr-pseudo-obj-errors.s Implement the ldr-pseudo opcode for ARM assembly 2013-12-19 18:12:36 +00:00
ldr-pseudo-parse-errors.s Implement the ldr-pseudo opcode for ARM assembly 2013-12-19 18:12:36 +00:00
ldr-pseudo.s Generalise assembly tests to not rely on anonymous symbol names 2014-03-14 09:10:26 +00:00
lit.local.cfg
load-store-acquire-release-v8-thumb.s
load-store-acquire-release-v8.s
ltorg-darwin.s Implement the .ltorg directive for ARM assembly 2013-12-19 18:26:07 +00:00
ltorg.s Generalise assembly tests to not rely on anonymous symbol names 2014-03-14 09:10:26 +00:00
mapping-within-section.s
mode-switch.s
mul-v4.s Add MLA alias for ARMv4 support. 2014-01-17 13:53:08 +00:00
multi-section-mapping.s
neon-abs-encoding.s
neon-absdiff-encoding.s
neon-add-encoding.s
neon-bitcount-encoding.s
neon-bitwise-encoding.s
neon-cmp-encoding.s
neon-convert-encoding.s
neon-crypto.s
neon-dup-encoding.s
neon-minmax-encoding.s
neon-mov-encoding.s
neon-mul-accum-encoding.s
neon-mul-encoding.s
neon-neg-encoding.s
neon-pairwise-encoding.s
neon-reciprocal-encoding.s
neon-reverse-encoding.s
neon-satshift-encoding.s
neon-shift-encoding.s
neon-shiftaccum-encoding.s
neon-shuffle-encoding.s
neon-sub-encoding.s
neon-table-encoding.s
neon-v8.s
neon-vld-encoding.s Fix the ARM VST4 (single 4-element structure from one lane) 2014-03-26 19:35:40 +00:00
neon-vst-encoding.s
neon-vswp.s
neont2-abs-encoding.s
neont2-absdiff-encoding.s
neont2-add-encoding.s
neont2-bitcount-encoding.s
neont2-bitwise-encoding.s
neont2-cmp-encoding.s
neont2-convert-encoding.s
neont2-dup-encoding.s
neont2-minmax-encoding.s
neont2-mov-encoding.s
neont2-mul-accum-encoding.s
neont2-mul-encoding.s
neont2-neg-encoding.s
neont2-pairwise-encoding.s
neont2-reciprocal-encoding.s
neont2-reverse-encoding.s
neont2-satshift-encoding.s
neont2-shift-encoding.s
neont2-shiftaccum-encoding.s
neont2-shuffle-encoding.s
neont2-sub-encoding.s
neont2-table-encoding.s
neont2-vld-encoding.s
neont2-vst-encoding.s
not-armv4.s ARM: Let the assembler reject v5 instructions in v4 mode. 2014-01-18 19:03:19 +00:00
obsolete-v8.s
pool.s ARM IAS: add support for the .pool directive 2013-12-20 07:21:16 +00:00
pr11877.s
relocated-mapping.s
simple-fp-encoding.s Add ARM fconsts/fconstd aliases for vmov.f32/vmov.f64 2014-01-07 18:19:23 +00:00
single-precision-fp.s
symbol-variants-errors.s
symbol-variants.s llvm-objdump output hex to match binutils' objdump 2014-03-20 22:55:15 +00:00
target-expressions.s ARM IAS: support emitting constant values in target expressions 2014-01-11 23:03:48 +00:00
thumb2-b.w-encodingT4.s
thumb2-branches.s
thumb2-cbn-to-next-inst.s Fix a bug with the ARM thumb2 CBNZ and CBNZ instructions that 2014-01-10 00:43:32 +00:00
thumb2-diagnostics.s
thumb2-ldrd.s
thumb2-mclass.s Amending test/MC/ARM/thumb2-mclass.s to match its apparent original purpose (to test the ARMv6M/ARMv7M commonality), and creating a new test case for the differences between ARMv6M and ARMv7M 2014-01-10 16:49:49 +00:00
thumb2-narrow-dp.ll
thumb2-pldw.s
thumb_set-diagnostics.s Reapply 'ARM IAS: support .thumb_set' 2014-03-20 06:05:33 +00:00
thumb_set.s ARM IAS: properly handle function entries in .thumb 2014-03-22 19:26:18 +00:00
thumb-diagnostics.s
thumb-far-jump.s ARM: Resolve thumb_bl fixup in same MCFragment. 2014-02-05 14:15:16 +00:00
thumb-fp-armv8.s
thumb-hints.s
thumb-invalid-crypto.txt
thumb-neon-crypto.s
thumb-neon-v8.s
thumb-only-conditionals.s
thumb-shift-encoding.s
thumb-st_other.s
thumb-types.s ARM IAS: properly handle function entries in .thumb 2014-03-22 19:26:18 +00:00
thumb.s
thumbv7m.s Amending test/MC/ARM/thumb2-mclass.s to match its apparent original purpose (to test the ARMv6M/ARMv7M commonality), and creating a new test case for the differences between ARMv6M and ARMv7M 2014-01-10 16:49:49 +00:00
unwind-stack-diagnostics.s ARM IAS: allow more depth in contextual diagnostics 2014-01-07 02:29:00 +00:00
v8_IT_manual.s
variant-diagnostics.s MC: fix test locations/name 2014-01-26 22:55:02 +00:00
vfp4.s
vfp-aliases-diagnostics.s ARM IAS: account for predicated pre-UAL mnemonics 2013-12-30 18:38:01 +00:00
vfp-aliases.s ARM IAS: account for predicated pre-UAL mnemonics 2013-12-30 18:38:01 +00:00
vpush-vpop.s