1 // RUN: llvm-mc -triple=aarch64-none-linux-gnu < %s | FileCheck %s 2 3 // CHECK: sub w0, w2, #2, lsl #12 4 // CHECK: sub w0, w2, #2, lsl #12 5 sub w0, w2, #2, lsl 12 6 add w0, w2, #-2, lsl 12 7 // CHECK: sub x1, x3, #2, lsl #12 8 // CHECK: sub x1, x3, #2, lsl #12 9 sub x1, x3, #2, lsl 12 10 add x1, x3, #-2, lsl 12 11 // CHECK: sub x1, x3, #4 12 // CHECK: sub x1, x3, #4 13 sub x1, x3, #4 14 add x1, x3, #-4 15 // CHECK: sub x1, x3, #4095 16 // CHECK: sub x1, x3, #4095 17 sub x1, x3, #4095, lsl 0 18 add x1, x3, #-4095, lsl 0 19 // CHECK: sub x3, x4, #0 20 sub x3, x4, #0 21 22 // CHECK: add w0, w2, #2, lsl #12 23 // CHECK: add w0, w2, #2, lsl #12 24 add w0, w2, #2, lsl 12 25 sub w0, w2, #-2, lsl 12 26 // CHECK: add x1, x3, #2, lsl #12 27 // CHECK: add x1, x3, #2, lsl #12 28 add x1, x3, #2, lsl 12 29 sub x1, x3, #-2, lsl 12 30 // CHECK: add x1, x3, #4 31 // CHECK: add x1, x3, #4 32 add x1, x3, #4 33 sub x1, x3, #-4 34 // CHECK: add x1, x3, #4095 35 // CHECK: add x1, x3, #4095 36 add x1, x3, #4095, lsl 0 37 sub x1, x3, #-4095, lsl 0 38 // CHECK: add x2, x5, #0 39 add x2, x5, #0 40 41 // CHECK: subs w0, w2, #2, lsl #12 42 // CHECK: subs w0, w2, #2, lsl #12 43 subs w0, w2, #2, lsl 12 44 adds w0, w2, #-2, lsl 12 45 // CHECK: subs x1, x3, #2, lsl #12 46 // CHECK: subs x1, x3, #2, lsl #12 47 subs x1, x3, #2, lsl 12 48 adds x1, x3, #-2, lsl 12 49 // CHECK: subs x1, x3, #4 50 // CHECK: subs x1, x3, #4 51 subs x1, x3, #4 52 adds x1, x3, #-4 53 // CHECK: subs x1, x3, #4095 54 // CHECK: subs x1, x3, #4095 55 subs x1, x3, #4095, lsl 0 56 adds x1, x3, #-4095, lsl 0 57 // CHECK: subs x3, x4, #0 58 subs x3, x4, #0 59 60 // CHECK: adds w0, w2, #2, lsl #12 61 // CHECK: adds w0, w2, #2, lsl #12 62 adds w0, w2, #2, lsl 12 63 subs w0, w2, #-2, lsl 12 64 // CHECK: adds x1, x3, #2, lsl #12 65 // CHECK: adds x1, x3, #2, lsl #12 66 adds x1, x3, #2, lsl 12 67 subs x1, x3, #-2, lsl 12 68 // CHECK: adds x1, x3, #4 69 // CHECK: adds x1, x3, #4 70 adds x1, x3, #4 71 subs x1, x3, #-4 72 // CHECK: adds x1, x3, #4095 73 // CHECK: adds x1, x3, #4095 74 adds x1, x3, #4095, lsl 0 75 subs x1, x3, #-4095, lsl 0 76 // CHECK: adds x2, x5, #0 77 adds x2, x5, #0 78 79 // CHECK: {{adds xzr,|cmn}} x5, #5 80 // CHECK: {{adds xzr,|cmn}} x5, #5 81 cmn x5, #5 82 cmp x5, #-5 83 // CHECK: {{subs xzr,|cmp}} x6, #4095 84 // CHECK: {{subs xzr,|cmp}} x6, #4095 85 cmp x6, #4095 86 cmn x6, #-4095 87 // CHECK: {{adds wzr,|cmn}} w7, #5 88 // CHECK: {{adds wzr,|cmn}} w7, #5 89 cmn w7, #5 90 cmp w7, #-5 91 // CHECK: {{subs wzr,|cmp}} w8, #4095 92 // CHECK: {{subs wzr,|cmp}} w8, #4095 93 cmp w8, #4095 94 cmn w8, #-4095 95