llvm-6502/test/MC/ARM
Saleem Abdulrasool 0fe443d893 ARM: implement support for the UDF mnemonic
The UDF instruction is a reserved undefined instruction space.  The assembler
mnemonic was introduced with ARM ARM rev C.a.  The instruction is not predicated
and the immediate constant is ignored by the CPU.  Add support for the three
encodings for this instruction.

The changes to the invalid instruction test is due to the fact that the invalid
instructions actually overlap with the undefined instruction.  Introduction of
the new instruction results in a partial decode as an undefined sequence.  Drop
the tests as they are invalid instruction patterns anyways.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@208751 91177308-0d34-0410-b5e6-96231b3b80d8
2014-05-14 03:47:39 +00:00
..
AlignedBundling
2010-11-30-reloc-movt.s
2013-03-18-Br-to-label-named-like-reg.s ARM: fixup more tests to specify the target more explicitly 2014-04-03 16:01:44 +00:00
align_arm_2_thumb.s ARM integrated assembler generates incorrect nop opcode 2013-11-25 19:11:13 +00:00
align_thumb_2_arm.s ARM integrated assembler generates incorrect nop opcode 2013-11-25 19:11:13 +00:00
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 Change the ARM assembler to require a :lower16: or :upper16 on non-constant 2014-04-18 23:06:39 +00:00
arm_instructions.s
arm-aliases.s
arm-arithmetic-aliases.s
arm-elf-symver.s Completely rewrite ELFObjectWriter::RecordRelocation. 2014-03-29 06:26:49 +00:00
arm-it-block.s
arm-ldrd.s ARM: fixup more tests to specify the target more explicitly 2014-04-03 16:01:44 +00:00
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: update even more tests 2014-04-03 17:35:22 +00:00
arm-thumb-cpus.s ARM: update even more tests 2014-04-03 17:35:22 +00:00
arm-thumb-trustzone.s
arm-trustzone.s
basic-arm-instructions-v8.s Test cleanup for v8 instructions 2013-10-29 14:16:09 +00:00
basic-arm-instructions.s Add ARM big endian Target (armeb, thumbeb) 2014-03-28 14:35:30 +00:00
basic-thumb2-instructions-v8.s Test cleanup for v8 instructions 2013-10-29 14:16:09 +00:00
basic-thumb2-instructions.s Fixed register class in STRD instruction for Thumb2 mode. 2014-04-04 08:14:13 +00:00
basic-thumb-instructions.s Add ARM big endian Target (armeb, thumbeb) 2014-03-28 14:35:30 +00:00
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-fixup2.s Recommitted fix for PR18931, with extended tests set. 2014-03-29 13:12:40 +00:00
cmp-immediate-fixup-error2.s Recommitted fix for PR18931, with extended tests set. 2014-03-29 13:12:40 +00:00
cmp-immediate-fixup-error.s Recommitted fix for PR18931, with extended tests set. 2014-03-29 13:12:40 +00:00
cmp-immediate-fixup.s Recommitted fix for PR18931, with extended tests set. 2014-03-29 13:12:40 +00:00
coff-debugging-secrel.ll test: fix silly typo 2014-05-08 01:41:04 +00:00
coff-file.s MC: place .file records into the correct section 2014-05-02 17:45:24 +00:00
coff-function-type-info.ll ARM: print COFF function header for Windows on ARM 2014-04-30 06:14:25 +00:00
coff-relocations.s COFF: move ARM COFF test to ARM directory 2014-04-27 04:29:32 +00:00
comment.s Fix parsing of .symver directive on ARM 2014-01-15 22:40:02 +00:00
complex-operands.s Change the ARM assembler to require a :lower16: or :upper16 on non-constant 2014-04-18 23:06:39 +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 Change the ARM assembler to require a :lower16: or :upper16 on non-constant 2014-04-18 23:06:39 +00:00
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 [MC] Emit an error if cfi_startproc is used before a symbol is defined. 2014-04-15 01:17:45 +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-diagnostics.s Fix spelling. 2014-05-05 17:58:46 +00:00
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 Don't lose the thumb bit by using relocations with sections. 2014-04-11 19:18:01 +00:00
elf-thumbfunc.s Follow aliases when determining if a symbol is thumb. 2014-04-22 19:11:07 +00:00
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 [ARM] Add support for MVFR2 which is new in ARMv8 2013-11-11 19:56:13 +00:00
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 Test cleanup for v8 instructions 2013-10-29 14:16:09 +00:00
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
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
ldrd-strd-gnu-arm-bad-imm.s Fix for PR18921 (LDRD/STRD part):: 2014-04-04 10:17:56 +00:00
ldrd-strd-gnu-arm.s Fix for PR18921 (LDRD/STRD part):: 2014-04-04 10:17:56 +00:00
ldrd-strd-gnu-sp.s PR19320: 2014-04-03 11:29:15 +00:00
ldrd-strd-gnu-thumb-bad-regs.s Fix for PR18921 (LDRD/STRD part):: 2014-04-04 10:17:56 +00:00
ldrd-strd-gnu-thumb.s Fix for PR18921 (LDRD/STRD part):: 2014-04-04 10:17:56 +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 VLD3 (single 3-element structure to all lanes) 2014-04-08 18:00:52 +00:00
neon-vld-vst-align.s Remove the use of "%e" as it is not a valid expansion like "%t". 2014-04-10 21:55:58 +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 Test commit - Added a new line 2014-04-16 16:45:18 +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 Add support for parsing ARM symbol variants on ELF targets 2013-12-04 22:43:20 +00:00
symbol-variants.s Parse and create GOT_PREL relocations. 2014-04-29 13:42:02 +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 Correction to assert statemtent to allow 32-bit unsigned numbers with the top bit set. 2014-05-01 11:37:44 +00:00
thumb2-ldrd.s ARM: fixup more tests to specify the target more explicitly 2014-04-03 16:01:44 +00:00
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
thumb2-strd.s Fixed register class in STRD instruction for Thumb2 mode. 2014-04-04 08:14:13 +00:00
thumb2be-b.w-encoding.s ARM: Additional test files for thumb fixups (checked with llvm-mv -show-encoding) 2014-05-13 17:06:51 +00:00
thumb2be-beq.w-encoding.s ARM: Additional test files for thumb fixups (checked with llvm-mv -show-encoding) 2014-05-13 17:06:51 +00:00
thumb2be-movt-encoding.s ARM: Additional test files for thumb fixups (checked with llvm-mv -show-encoding) 2014-05-13 17:06:51 +00:00
thumb2be-movw-encoding.s ARM: Additional test files for thumb fixups (checked with llvm-mv -show-encoding) 2014-05-13 17:06:51 +00:00
thumb_set-diagnostics.s Reapply 'ARM IAS: support .thumb_set' 2014-03-20 06:05:33 +00:00
thumb_set.s Don't force symbols to be globals in .thumb_set. 2014-05-01 12:45:43 +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 ARM: permit bare dmb/dsb/isb aliases on Cortex-M0 2013-11-05 21:36:02 +00:00
thumb-invalid-crypto.txt
thumb-neon-crypto.s
thumb-neon-v8.s
thumb-only-conditionals.s [ARM] In ARMAsmParser, MatchCoprocessorOperandName() permitted p10 and p11 as operands for coprocessor instructions, resulting in encodings that clash with FP/NEON instruction encodings 2013-11-08 09:16:31 +00:00
thumb-shift-encoding.s
thumb-st_other.s Move llvm/test/MC/ELF/thumb-st_other.s to test/MC/ARM. 2013-12-05 02:21:44 +00:00
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
udf-arm-diagnostics.s ARM: implement support for the UDF mnemonic 2014-05-14 03:47:39 +00:00
udf-arm.s ARM: implement support for the UDF mnemonic 2014-05-14 03:47:39 +00:00
udf-thumb-2-diagnostics.s ARM: implement support for the UDF mnemonic 2014-05-14 03:47:39 +00:00
udf-thumb-2.s ARM: implement support for the UDF mnemonic 2014-05-14 03:47:39 +00:00
udf-thumb-diagnostics.s ARM: implement support for the UDF mnemonic 2014-05-14 03:47:39 +00:00
udf-thumb.s ARM: implement support for the UDF mnemonic 2014-05-14 03:47:39 +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 [ARM] Handling for coprocessor instructions that are undefined starting from ARMv8 (Thumb encodings) 2013-11-08 16:25:50 +00:00
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
vmov-vmvn-byte-replicate.s Fix for PR18921, "vmov" part. 2014-04-24 06:03:01 +00:00
vmov-vmvn-illegal-cases.s Fix for PR18921, "vmov" part. 2014-04-24 06:03:01 +00:00
vorr-vbic-illegal-cases.s Fix for PR18921, "vmov" part. 2014-04-24 06:03:01 +00:00
vpush-vpop.s