llvm/test/MC/ARM
Richard Barton b5523ce1bb Add AArch32 DCPS{1,2,3} and HLT instructions.
These were pretty straightforward instructions, with some assembly support
required for HLT.

The ARM assembler is keen to split the instruction mnemonic into a
(non-existent) 'H' instruction with the LT condition code. An exception for
HLT is needed.

HLT follows the same rules as BKPT when in IT blocks, so the special BKPT
hadling code has been adapted to handle HLT also.

Regression tests added including diagnostic tests for out of range immediates
and illegal condition codes, as well as negative tests for pre-ARMv8.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@190053 91177308-0d34-0410-b5e6-96231b3b80d8
2013-09-05 14:14:19 +00:00
..
AlignedBundling [tests] Cleanup initialization of test suffixes. 2013-08-16 00:37:11 +00:00
2013-03-18-Br-to-label-named-like-reg.s Fix pr13145 - Naming a function like a register name confuses the asm parser. 2013-03-19 23:44:03 +00:00
arm_addrmode2.s revert the test change 2012-12-11 06:25:18 +00:00
arm_addrmode3.s ARM refactoring assembly parsing of memory address operands. 2011-08-03 23:50:40 +00:00
arm_fixups.s ARM: allow vanilla expressions for movw/movt. 2012-05-01 20:43:21 +00:00
arm_instructions.s Add a special ARM trap encoding for NaCl. 2013-01-30 16:30:19 +00:00
arm_word_directive.s
arm-aliases.s ARM assembler should accept shift-by-zero for any shifted-immediate operand. 2011-12-22 18:04:04 +00:00
arm-arithmetic-aliases.s ARM: 'add Rd, pc, #imm' is an alias for 'adr Rd, #imm'. 2012-09-25 00:08:13 +00:00
arm-it-block.s ARM assemly parsing and validation of IT instruction. 2012-01-25 19:52:01 +00:00
arm-memory-instructions.s It adds support for negative zero offsets for loads and stores. 2013-06-11 09:48:35 +00:00
arm-shift-encoding.s Fix edge cases of ARM shift operands in arith instructions. 2012-09-22 11:18:19 +00:00
arm-thumb-cpus-default.s Rework r183728, suppress assert(0) for now. Its behavior depends on assertions on win32 hosts. 2013-06-11 10:01:42 +00:00
arm-thumb-cpus.s Prefix failing commands with not to make clear they are expected to fail. 2013-07-03 16:41:29 +00:00
arm-thumb-trustzone.s Prefix failing commands with not to make clear they are expected to fail. 2013-07-03 16:41:29 +00:00
arm-trustzone.s Prefix failing commands with not to make clear they are expected to fail. 2013-07-03 16:41:29 +00:00
basic-arm-instructions-v8.s Add AArch32 DCPS{1,2,3} and HLT instructions. 2013-09-05 14:14:19 +00:00
basic-arm-instructions.s Fix signed overflow in when computing encodings for ADR instructions 2013-08-13 14:02:13 +00:00
basic-thumb2-instructions-v8.s Add AArch32 DCPS{1,2,3} and HLT instructions. 2013-09-05 14:14:19 +00:00
basic-thumb2-instructions.s Make "mov" work for all Thumb2 MOV encodings 2013-08-21 13:14:58 +00:00
basic-thumb-instructions.s This fixes the Thumb2 CPS assembly syntax. 2013-08-09 13:52:32 +00:00
bracket-darwin.s Restore r125595 (reverted in r126336) with modifications: 2011-02-24 21:59:22 +00:00
bracket-exprs.s split this test into arch specific pieces, so the ARM 2011-02-25 19:06:35 +00:00
cxx-global-constructor.ll Replace coff-/elf-dump with llvm-readobj 2013-04-12 04:06:46 +00:00
data-in-code.ll Fix ARM FastISel tests, as a first step to enabling ARM FastISel 2013-05-14 16:26:38 +00:00
deprecated-v8.s [ARMv8] Add an assembler warning for the deprecated 'setend' instruction. 2013-08-02 19:18:12 +00:00
diagnostics.s Add AArch32 DCPS{1,2,3} and HLT instructions. 2013-09-05 14:14:19 +00:00
dot-req.s ARM assembler support for the target-specific .req directive. 2011-12-14 02:16:11 +00:00
eh-compact-pr0.s Change how we iterate over relocations on ELF. 2013-05-30 03:05:14 +00:00
eh-compact-pr1.s Fix ARM EHABI compact model 1 and 2 without handlerdata. 2013-07-02 12:43:27 +00:00
eh-directive-cantunwind-diagnostics.s CEHCK->CHECK typo fix. 2013-07-08 21:47:33 +00:00
eh-directive-cantunwind.s Change how we iterate over relocations on ELF. 2013-05-30 03:05:14 +00:00
eh-directive-fnend-diagnostics.s Prefix failing commands with not to make clear they are expected to fail. 2013-07-03 16:41:29 +00:00
eh-directive-fnstart-diagnostics.s Prefix failing commands with not to make clear they are expected to fail. 2013-07-03 16:41:29 +00:00
eh-directive-handlerdata.s Change how we iterate over relocations on ELF. 2013-05-30 03:05:14 +00:00
eh-directive-integrated-test.s Fix ARM unwind opcode assembler in several cases. 2013-06-09 12:22:30 +00:00
eh-directive-multiple-offsets.s Fix ARM unwind opcode assembler in several cases. 2013-06-09 12:22:30 +00:00
eh-directive-pad-diagnostics.s Implement AsmParser for ARM unwind directives. 2013-05-10 16:17:24 +00:00
eh-directive-pad.s Fix ARM unwind opcode assembler in several cases. 2013-06-09 12:22:30 +00:00
eh-directive-personality-diagnostics.s Implement AsmParser for ARM unwind directives. 2013-05-10 16:17:24 +00:00
eh-directive-personality.s Change how we iterate over relocations on ELF. 2013-05-30 03:05:14 +00:00
eh-directive-save-diagnoatics.s Implement AsmParser for ARM unwind directives. 2013-05-10 16:17:24 +00:00
eh-directive-save.s Fix ARM unwind opcode assembler in several cases. 2013-06-09 12:22:30 +00:00
eh-directive-section-comdat.s Implement AsmParser for ARM unwind directives. 2013-05-10 16:17:24 +00:00
eh-directive-section-multiple-func.s Change how we iterate over relocations on ELF. 2013-05-30 03:05:14 +00:00
eh-directive-section.s Change how we iterate over relocations on ELF. 2013-05-30 03:05:14 +00:00
eh-directive-setfp-diagnostics.s Implement AsmParser for ARM unwind directives. 2013-05-10 16:17:24 +00:00
eh-directive-setfp.s Fix ARM unwind opcode assembler in several cases. 2013-06-09 12:22:30 +00:00
eh-directive-text-section-multiple-func.s Change how we iterate over relocations on ELF. 2013-05-30 03:05:14 +00:00
eh-directive-text-section.s Change how we iterate over relocations on ELF. 2013-05-30 03:05:14 +00:00
eh-directive-vsave-diagnostics.s Implement AsmParser for ARM unwind directives. 2013-05-10 16:17:24 +00:00
eh-directive-vsave.s Implement AsmParser for ARM unwind directives. 2013-05-10 16:17:24 +00:00
elf-eflags-eabi-cg.ll Replace coff-/elf-dump with llvm-readobj 2013-04-12 04:06:46 +00:00
elf-eflags-eabi.s Replace coff-/elf-dump with llvm-readobj 2013-04-12 04:06:46 +00:00
elf-jump24-fixup.s Convert an improper CodeGen test to a MC test. 2012-11-10 04:30:40 +00:00
elf-movt.s Change how we iterate over relocations on ELF. 2013-05-30 03:05:14 +00:00
elf-reloc-01.ll Change how we iterate over relocations on ELF. 2013-05-30 03:05:14 +00:00
elf-reloc-02.ll Change how we iterate over relocations on ELF. 2013-05-30 03:05:14 +00:00
elf-reloc-03.ll Change how we iterate over relocations on ELF. 2013-05-30 03:05:14 +00:00
elf-reloc-condcall.s Change how we iterate over relocations on ELF. 2013-05-30 03:05:14 +00:00
elf-thumbfunc-reloc.ll Change how we iterate over relocations on ELF. 2013-05-30 03:05:14 +00:00
elf-thumbfunc-reloc.s ARM: diagnose ARM/Thumb assembly switches on CPUs only supporting one. 2013-06-10 23:20:58 +00:00
elf-thumbfunc.s Replace coff-/elf-dump with llvm-readobj 2013-04-12 04:06:46 +00:00
full_line_comment.s
hilo-16bit-relocations.s
invalid-hint-arm.s Prefix failing commands with not to make clear they are expected to fail. 2013-07-03 16:41:29 +00:00
invalid-hint-thumb.s Prefix failing commands with not to make clear they are expected to fail. 2013-07-03 16:41:29 +00:00
invalid-neon-v8.s [ARMv8] Add some negative tests for the recent VFP/NEON instructions. 2013-08-27 11:24:16 +00:00
invalid-v8fp.s [ARMv8] Add some negative tests for the recent VFP/NEON instructions. 2013-08-27 11:24:16 +00:00
lit.local.cfg [tests] Cleanup initialization of test suffixes. 2013-08-16 00:37:11 +00:00
load-store-acquire-release-v8-thumb.s [ARMv8] 2013-08-28 16:39:20 +00:00
load-store-acquire-release-v8.s [ARMv8] 2013-08-28 16:39:20 +00:00
mapping-within-section.s ARM: diagnose ARM/Thumb assembly switches on CPUs only supporting one. 2013-06-10 23:20:58 +00:00
mode-switch.s ARM support the .arm and .thumb directives for assembly mode switching. 2011-12-07 18:04:19 +00:00
multi-section-mapping.s ARM: diagnose ARM/Thumb assembly switches on CPUs only supporting one. 2013-06-10 23:20:58 +00:00
neon-abs-encoding.s
neon-absdiff-encoding.s
neon-add-encoding.s ARM two-operand forms for vhadd and vhsub instructions. 2012-04-16 23:00:25 +00:00
neon-bitcount-encoding.s
neon-bitwise-encoding.s The ARM NEON vector compare instructions take three arguments. However, the 2013-02-14 23:18:40 +00:00
neon-cmp-encoding.s ARM: Add VACLT and VACLE assembly aliases. 2013-04-15 22:42:50 +00:00
neon-convert-encoding.s Fix ARM vcvt encoding when the number of fractional bits is zero. 2013-08-22 13:16:07 +00:00
neon-dup-encoding.s Enable ARM mode VDUP(scalar) tests. 2011-10-07 23:57:03 +00:00
neon-minmax-encoding.s ARM NEON implied destination aliases for VMAX/VMIN. 2011-12-19 18:57:38 +00:00
neon-mov-encoding.s ARM: Add optional datatype suffix to NEON mvn asm syntax. 2013-06-18 21:49:21 +00:00
neon-mul-accum-encoding.s ARM vmla/vmls assembly parsing for the lane index operand. 2011-10-18 18:27:07 +00:00
neon-mul-encoding.s ARM NEON two-operand aliases for VQDMULH. 2011-12-13 20:40:37 +00:00
neon-neg-encoding.s
neon-pairwise-encoding.s ARM NEON two-operand aliases for VPADD. 2011-12-19 19:51:03 +00:00
neon-reciprocal-encoding.s
neon-reverse-encoding.s
neon-satshift-encoding.s
neon-shift-encoding.s ARM assembly two-operand forms for VRSHL. 2012-04-16 18:03:16 +00:00
neon-shiftaccum-encoding.s ARM: Add testcases for two-operand variants of VSRA/VRSRA/VSRI. 2012-04-23 21:00:47 +00:00
neon-shuffle-encoding.s ARM 'vuzp.32 Dd, Dm' is a pseudo-instruction. 2012-04-11 17:40:18 +00:00
neon-sub-encoding.s ARM: Update NEON assembly two-operand aliases. 2012-04-20 18:12:54 +00:00
neon-table-encoding.s ARM NEON VTBL/VTBX assembly parsing and encoding. 2011-12-15 22:27:11 +00:00
neon-v8.s [ARMv8] Implement the NEON instructions VRINT{N, X, A, Z, M, P}. 2013-07-19 16:34:16 +00:00
neon-vld-encoding.s Make ARMAsmPrinter generate the correct alignment specifier syntax in instructions. 2013-02-22 10:01:33 +00:00
neon-vst-encoding.s Add newlines at end of test files, no functionality change 2013-07-13 22:00:58 +00:00
neon-vswp.s ARM encoding for VSWP got the second operand incorrect. 2012-03-30 18:53:01 +00:00
neont2-abs-encoding.s
neont2-absdiff-encoding.s Specify cpu to unbreak tests. 2012-04-26 01:38:10 +00:00
neont2-add-encoding.s
neont2-bitcount-encoding.s Un-XFAIL file. Fix incorrect CHECK lines. General format cleanup. 2011-10-04 20:50:05 +00:00
neont2-bitwise-encoding.s Un-XFAIL file. Comment out individual failing instructions. 2011-10-04 21:16:42 +00:00
neont2-cmp-encoding.s
neont2-convert-encoding.s
neont2-dup-encoding.s Specify cpu to unbreak tests. 2012-04-26 01:38:10 +00:00
neont2-minmax-encoding.s ARM NEON implied destination aliases for VMAX/VMIN. 2011-12-19 18:57:38 +00:00
neont2-mov-encoding.s Simplify some uses of utohexstr. 2011-11-07 21:00:59 +00:00
neont2-mul-accum-encoding.s ARM vmla/vmls assembly parsing for the lane index operand. 2011-10-18 20:14:56 +00:00
neont2-mul-encoding.s Enable and fix a test. 2011-12-20 23:20:00 +00:00
neont2-neg-encoding.s
neont2-pairwise-encoding.s Fix and clean up tests. Un-XFAIL. 2011-10-06 21:28:30 +00:00
neont2-reciprocal-encoding.s
neont2-reverse-encoding.s
neont2-satshift-encoding.s
neont2-shift-encoding.s
neont2-shiftaccum-encoding.s ARM: Add testcases for two-operand variants of VSRA/VRSRA/VSRI. 2012-04-23 21:00:47 +00:00
neont2-shuffle-encoding.s
neont2-sub-encoding.s
neont2-table-encoding.s ARM NEON VTBL/VTBX assembly parsing and encoding. 2011-12-15 22:27:11 +00:00
neont2-vld-encoding.s This patch fixes two tests marked as XFAIL among the ARM assembler tests. 2013-05-08 09:41:12 +00:00
neont2-vst-encoding.s This patch fixes two tests marked as XFAIL among the ARM assembler tests. 2013-05-08 09:41:12 +00:00
obsolete-v8.s ARMv8: SWP and SWPB are obsoleted on ARMv8. 2013-08-13 16:40:47 +00:00
pr11877.s Ensure .AliasedSymbol() is called on all uses of getSymbol(). Affects ARM and MIPS ELF backends. 2012-01-28 15:58:32 +00:00
relocated-mapping.s Added Mapping Symbols for ARM ELF 2012-12-07 16:50:23 +00:00
simple-fp-encoding.s This patch adds support for FPINST/FPINST2 as operands to vmsr/vmrs. These are optional registers that may be supported some ARM implementations to aid with resolution of floating point exceptions. The manual pages for vmsr and vmrs do not detail their use. Encodings and other information can be found in ARM Architecture Reference Manual section F, chapter 6, paragraph 3. 2013-06-11 09:39:51 +00:00
thumb2-b.w-encodingT4.s Fix assembling of Thumb2 branch instructions. 2013-08-09 10:38:32 +00:00
thumb2-branches.s Fix assembling of Thumb2 branch instructions. 2013-08-09 10:38:32 +00:00
thumb2-diagnostics.s Fix assembling of Thumb2 branch instructions. 2013-08-09 10:38:32 +00:00
thumb2-mclass.s Fix the encoding of the armv7m (MClass) for MSR registers other than aspr, 2012-06-15 22:14:44 +00:00
thumb2-narrow-dp.ll Teach the assembler to use the narrow thumb encodings of various three-register dp instructions where permissable. 2012-07-09 16:12:24 +00:00
thumb2-pldw.s This corrects creation of operands for t2PLDW. It also removes the definition of t2PLDWpci, 2013-08-06 16:07:46 +00:00
thumb-diagnostics.s Add AArch32 DCPS{1,2,3} and HLT instructions. 2013-09-05 14:14:19 +00:00
thumb-neon-v8.s [ARMv8] Implement the NEON instructions VRINT{N, X, A, Z, M, P}. 2013-07-19 16:34:16 +00:00
thumb-nop.s ARM: fix thumb1 nop decoding 2013-06-24 09:11:53 +00:00
thumb-only-conditionals.s ARM: fix more cases where predication may or may not be allowed 2013-06-26 16:52:40 +00:00
thumb-shift-encoding.s Fix edge cases of ARM shift operands in arith instructions. 2012-09-22 11:18:19 +00:00
thumb-v8fp.s Add Thumb tests for the ARMv8 FP instructions that I recently added. 2013-07-18 10:20:25 +00:00
thumb.s ARM: fix thumb1 nop decoding 2013-06-24 09:11:53 +00:00
v8fp.s Add MC assembly/disassembly support for VRINT{A, N, P, M} to V8FP. 2013-07-09 11:26:18 +00:00
vfp4.s Support fpv4 for ARM Cortex-M4. 2012-08-02 08:35:55 +00:00
vpush-vpop.s Specify cpu to unbreak tests. 2012-04-26 01:38:10 +00:00
xscale-attributes.ll Replace coff-/elf-dump with llvm-readobj 2013-04-12 04:06:46 +00:00