summaryrefslogtreecommitdiffstats
path: root/binutils-2.24/gas/testsuite/gas/aarch64/movi.s
diff options
context:
space:
mode:
Diffstat (limited to 'binutils-2.24/gas/testsuite/gas/aarch64/movi.s')
-rw-r--r--binutils-2.24/gas/testsuite/gas/aarch64/movi.s120
1 files changed, 0 insertions, 120 deletions
diff --git a/binutils-2.24/gas/testsuite/gas/aarch64/movi.s b/binutils-2.24/gas/testsuite/gas/aarch64/movi.s
deleted file mode 100644
index 3a15e3d1..00000000
--- a/binutils-2.24/gas/testsuite/gas/aarch64/movi.s
+++ /dev/null
@@ -1,120 +0,0 @@
-// movi.s Test file for AArch64 AdvSIMD modified immediate instruction MOVI
-
- .text
-
- .macro all_64bit_mask_movi dst
- .irp b7, 0, 0xff00000000000000
- .irp b6, 0, 0xff000000000000
- .irp b5, 0, 0xff0000000000
- .irp b4, 0, 0xff00000000
- .irp b3, 0, 0xff000000
- .irp b2, 0, 0xff0000
- .irp b1, 0, 0xff00
- .irp b0, 0, 0xff
- movi \dst, \b7 + \b6 + \b5 + \b4 + \b3 + \b2 + \b1 + \b0
- .endr
- .endr
- .endr
- .endr
- .endr
- .endr
- .endr
- .endr
- .endm
-
- // MOVI <Dd>, #<imm>
- // MOVI <Vd>.2D, #<imm>
- all_64bit_mask_movi d31
- all_64bit_mask_movi v15.2d
-
-
- .macro all_8bit_imm_movi dst, from=0, to=255
- movi \dst, \from
- .if \to-\from
- all_8bit_imm_movi \dst, "(\from+1)", \to
- .endif
- .endm
-
- // Per byte
- // MOVI <Vd>.<T>, #<imm8>
- .irp T, 8b, 16b
- all_8bit_imm_movi v15.\T, 0, 63
- all_8bit_imm_movi v15.\T, 64, 127
- all_8bit_imm_movi v15.\T, 128, 191
- all_8bit_imm_movi v15.\T, 192, 255
- .endr
-
-
- .macro all_8bit_imm_movi_sft dst, from=0, to=255, shift_op, amount
- movi \dst, \from, \shift_op \amount
- .if \to-\from
- all_8bit_imm_movi_sft \dst, "(\from+1)", \to, \shift_op, \amount
- .endif
- .endm
-
- // Shift ones, per word
- // MOVI <Vd>.<T>, #<imm8>, MSL #<amount>
- .irp T, 2s, 4s
- .irp amount, 8, 16
- // Have to break into four chunks to avoid "Fatal error: macros nested
- // too deeply".
- all_8bit_imm_movi_sft v7.\T, 0, 63, MSL, \amount
- all_8bit_imm_movi_sft v7.\T, 64, 127, MSL, \amount
- all_8bit_imm_movi_sft v7.\T, 128, 191, MSL, \amount
- all_8bit_imm_movi_sft v7.\T, 192, 255, MSL, \amount
- .endr
- .endr
-
-
- // Shift zeros, per halfword
- // MOVI <Vd>.<T>, #<imm8> {, LSL #<amount>}
- .irp T, 4h, 8h
- .irp amount, 0, 8
- all_8bit_imm_movi_sft v7.\T, 0, 63, LSL, \amount
- all_8bit_imm_movi_sft v7.\T, 64, 127, LSL, \amount
- all_8bit_imm_movi_sft v7.\T, 128, 191, LSL, \amount
- all_8bit_imm_movi_sft v7.\T, 192, 255, LSL, \amount
- all_8bit_imm_movi v15.\T, 0, 63
- all_8bit_imm_movi v15.\T, 64, 127
- all_8bit_imm_movi v15.\T, 128, 191
- all_8bit_imm_movi v15.\T, 192, 255
- .endr
- .endr
-
-
- // Shift zeros, per word
- // MOVI <Vd>.<T>, #<imm8> {, LSL #<amount>}
- .irp T, 2s, 4s
- .irp amount, 0, 8, 16, 24
- all_8bit_imm_movi_sft v7.\T, 0, 63, LSL, \amount
- all_8bit_imm_movi_sft v7.\T, 64, 127, LSL, \amount
- all_8bit_imm_movi_sft v7.\T, 128, 191, LSL, \amount
- all_8bit_imm_movi_sft v7.\T, 192, 255, LSL, \amount
- all_8bit_imm_movi v15.\T, 0, 63
- all_8bit_imm_movi v15.\T, 64, 127
- all_8bit_imm_movi v15.\T, 128, 191
- all_8bit_imm_movi v15.\T, 192, 255
- .endr
- .endr
-
- // Shift zeros, per byte
- // MOVI <Vd>.<T>, #<imm8>, LSL #0
- // This used to be a programmer-friendly feature (allowing LSL #0),
- // but it is now part of the architecture specification.
- .irp T, 8b, 16b
- all_8bit_imm_movi_sft v7.\T, 0, 63, LSL, 0
- all_8bit_imm_movi_sft v7.\T, 64, 127, LSL, 0
- all_8bit_imm_movi_sft v7.\T, 128, 191, LSL, 0
- all_8bit_imm_movi_sft v7.\T, 192, 255, LSL, 0
- .endr
-
- movi v0.2d, 18446744073709551615
- movi v0.2d, -1
- movi v0.2d, bignum
- movi d31, 18446744073709551615
-.set bignum, 0xffffffffffffffff
-
- // Allow -128 to 255 in #<imm8>
- movi v3.8b, -128
- movi v3.8b, -127
- movi v3.8b, -1