summaryrefslogtreecommitdiff
path: root/test/MC/ARM/arm-memory-instructions.s
Commit message (Collapse)AuthorAge
* ARM IAS: support GNU extension for ldrd, strdSaleem Abdulrasool2014-01-10
| | | | | | | | | The GNU assembler has an extension that allows for the elision of the paired register (dt2) for the LDRD and STRD mnemonics. Add support for this in the assembly parser. Canonicalise the usage during the instruction parsing from the specified version. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@198915 91177308-0d34-0410-b5e6-96231b3b80d8
* ARM: Teach assembler to enforce constraints for ARM LDRD destination ↵Tilmann Scheller2013-09-27
| | | | | | | | | | | | | | | | | | | | | register operands. As specified in A8.8.72/A8.8.73/A8.8.74 in the ARM ARM, all variants of the ARM LDRD instruction have the following two constraints: LDRD<c> <Rt>, <Rt2>, ... (a) Rt must be even-numbered and not r14 (b) Rt2 must be R(t+1) If those two constraints are not met the result of executing the instruction will be unpredictable. Constraint (b) was already enforced, this commit adds support for constraint (a). Fixes rdar://14479793. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@191520 91177308-0d34-0410-b5e6-96231b3b80d8
* It adds support for negative zero offsets for loads and stores.Mihai Popa2013-06-11
| | | | | | | Negative zero is returned by the primary expression parser as INT32_MIN, so all that the method needs to do is to accept this value. Behavior already present for Thumb2. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@183734 91177308-0d34-0410-b5e6-96231b3b80d8
* ARM assembly parsing and encoding support for LDRD(label).Jim Grosbach2011-12-19
| | | | | | rdar://9932658 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@146921 91177308-0d34-0410-b5e6-96231b3b80d8
* ARM load shifted register pre-index fix shift value asm parser encoding.Jim Grosbach2011-08-11
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@137367 91177308-0d34-0410-b5e6-96231b3b80d8
* ARM STRHT assembly parsing and encoding.Jim Grosbach2011-08-11
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@137358 91177308-0d34-0410-b5e6-96231b3b80d8
* ARM STRH assembly parsing and encoding.Jim Grosbach2011-08-11
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@137353 91177308-0d34-0410-b5e6-96231b3b80d8
* ARM STRD assembly parsing and encoding.Jim Grosbach2011-08-11
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@137342 91177308-0d34-0410-b5e6-96231b3b80d8
* ARM STRBT assembly parsing and encoding.Jim Grosbach2011-08-11
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@137337 91177308-0d34-0410-b5e6-96231b3b80d8
* Add FIXME.Jim Grosbach2011-08-11
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@137336 91177308-0d34-0410-b5e6-96231b3b80d8
* ARM STRB assembly parsing and encoding tests.Jim Grosbach2011-08-11
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@137335 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix a copy/paste error so that LDRB(register) actually gets tested.Jim Grosbach2011-08-11
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@137333 91177308-0d34-0410-b5e6-96231b3b80d8
* ARM STR(register) assembly parsing and encoding tests.Jim Grosbach2011-08-11
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@137332 91177308-0d34-0410-b5e6-96231b3b80d8
* ARM STR(immediate) assembly parsing and encoding.Jim Grosbach2011-08-11
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@137331 91177308-0d34-0410-b5e6-96231b3b80d8
* ARM tests for LDRSHT assembly parsing and encoding.Jim Grosbach2011-08-10
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@137274 91177308-0d34-0410-b5e6-96231b3b80d8
* ARM tests for LDRSH assembly parsing and encoding.Jim Grosbach2011-08-10
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@137272 91177308-0d34-0410-b5e6-96231b3b80d8
* ARM tests for LDRSBT assembly parsing and encoding.Jim Grosbach2011-08-10
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@137271 91177308-0d34-0410-b5e6-96231b3b80d8
* ARM tests for LDRSB assembly parsing and encoding.Jim Grosbach2011-08-10
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@137270 91177308-0d34-0410-b5e6-96231b3b80d8
* Add FIXME.Jim Grosbach2011-08-10
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@137265 91177308-0d34-0410-b5e6-96231b3b80d8
* ARM tests for LDRHT assembly parsing and encoding.Jim Grosbach2011-08-10
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@137263 91177308-0d34-0410-b5e6-96231b3b80d8
* ARM tests for LDRH(register) assembly parsing and encoding.Jim Grosbach2011-08-10
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@137261 91177308-0d34-0410-b5e6-96231b3b80d8
* ARM LDRH(immediate) assembly parsing and encoding support.Jim Grosbach2011-08-10
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@137260 91177308-0d34-0410-b5e6-96231b3b80d8
* Add FIXMEJim Grosbach2011-08-10
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@137258 91177308-0d34-0410-b5e6-96231b3b80d8
* ARM LDRD(register) assembly parsing and encoding.Jim Grosbach2011-08-10
| | | | | | | Add support for literal encoding of #-0 along the way. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@137254 91177308-0d34-0410-b5e6-96231b3b80d8
* ARM LDRD(immediate) assembly parsing and encoding support.Jim Grosbach2011-08-10
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@137244 91177308-0d34-0410-b5e6-96231b3b80d8
* ARM parsing and encoding for LDRBT instruction.Jim Grosbach2011-08-08
| | | | | | | | Fix the instruction representation to correctly only allow post-indexed form. Add tests. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@137074 91177308-0d34-0410-b5e6-96231b3b80d8
* ARM parsing and encoding for LDRB instruction.Jim Grosbach2011-08-08
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@137071 91177308-0d34-0410-b5e6-96231b3b80d8
* Add FIXME.Jim Grosbach2011-08-08
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@137070 91177308-0d34-0410-b5e6-96231b3b80d8
* ARM load instruction shifted register index operands.Jim Grosbach2011-08-05
| | | | | | | Parsing and encoding for shifted index operands for load instructions. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@136986 91177308-0d34-0410-b5e6-96231b3b80d8
* ARM indexed load assembly parsing and encoding.Jim Grosbach2011-08-05
| | | | | | | | More parsing support for indexed loads. Fix pre-indexed with writeback parsing for register offsets and handle basic post-indexed offsets. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@136982 91177308-0d34-0410-b5e6-96231b3b80d8
* Add ARM LDR parsing tests.Jim Grosbach2011-08-05
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@136977 91177308-0d34-0410-b5e6-96231b3b80d8