1 # RUN: llvm-mc -triple=hexagon -disassemble < %s | FileCheck %s 2 # Hexagon Programmer's Reference Manual 11.7.1 NV/J 3 4 # Jump to address conditioned on new register value 5 0x11 0x40 0x71 0x70 0x92 0xd5 0x02 0x20 6 # CHECK: r17 = r17 7 # CHECK-NEXT: if (cmp.eq(r17.new, r21)) jump:nt 8 0x11 0x40 0x71 0x70 0x92 0xf5 0x02 0x20 9 # CHECK: r17 = r17 10 # CHECK-NEXT: if (cmp.eq(r17.new, r21)) jump:t 11 0x11 0x40 0x71 0x70 0x92 0xd5 0x42 0x20 12 # CHECK: r17 = r17 13 # CHECK-NEXT: if (!cmp.eq(r17.new, r21)) jump:nt 14 0x11 0x40 0x71 0x70 0x92 0xf5 0x42 0x20 15 # CHECK: r17 = r17 16 # CHECK-NEXT: if (!cmp.eq(r17.new, r21)) jump:t 17 0x11 0x40 0x71 0x70 0x92 0xd5 0x82 0x20 18 # CHECK: r17 = r17 19 # CHECK-NEXT: if (cmp.gt(r17.new, r21)) jump:nt 20 0x11 0x40 0x71 0x70 0x92 0xf5 0x82 0x20 21 # CHECK: r17 = r17 22 # CHECK-NEXT: if (cmp.gt(r17.new, r21)) jump:t 23 0x11 0x40 0x71 0x70 0x92 0xd5 0xc2 0x20 24 # CHECK: r17 = r17 25 # CHECK-NEXT: if (!cmp.gt(r17.new, r21)) jump:nt 26 0x11 0x40 0x71 0x70 0x92 0xf5 0xc2 0x20 27 # CHECK: r17 = r17 28 # CHECK-NEXT: if (!cmp.gt(r17.new, r21)) jump:t 29 0x11 0x40 0x71 0x70 0x92 0xd5 0x02 0x21 30 # CHECK: r17 = r17 31 # CHECK-NEXT: if (cmp.gtu(r17.new, r21)) jump:nt 32 0x11 0x40 0x71 0x70 0x92 0xf5 0x02 0x21 33 # CHECK: r17 = r17 34 # CHECK-NEXT: if (cmp.gtu(r17.new, r21)) jump:t 35 0x11 0x40 0x71 0x70 0x92 0xd5 0x42 0x21 36 # CHECK: r17 = r17 37 # CHECK-NEXT: if (!cmp.gtu(r17.new, r21)) jump:nt 38 0x11 0x40 0x71 0x70 0x92 0xf5 0x42 0x21 39 # CHECK: r17 = r17 40 # CHECK-NEXT: if (!cmp.gtu(r17.new, r21)) jump:t 41 0x11 0x40 0x71 0x70 0x92 0xd5 0x82 0x21 42 # CHECK: r17 = r17 43 # CHECK-NEXT: if (cmp.gt(r21, r17.new)) jump:nt 44 0x11 0x40 0x71 0x70 0x92 0xf5 0x82 0x21 45 # CHECK: r17 = r17 46 # CHECK-NEXT: if (cmp.gt(r21, r17.new)) jump:t 47 0x11 0x40 0x71 0x70 0x92 0xd5 0xc2 0x21 48 # CHECK: r17 = r17 49 # CHECK-NEXT: if (!cmp.gt(r21, r17.new)) jump:nt 50 0x11 0x40 0x71 0x70 0x92 0xf5 0xc2 0x21 51 # CHECK: r17 = r17 52 # CHECK-NEXT: if (!cmp.gt(r21, r17.new)) jump:t 53 0x11 0x40 0x71 0x70 0x92 0xd5 0x02 0x22 54 # CHECK: r17 = r17 55 # CHECK-NEXT: if (cmp.gtu(r21, r17.new)) jump:nt 56 0x11 0x40 0x71 0x70 0x92 0xf5 0x02 0x22 57 # CHECK: r17 = r17 58 # CHECK-NEXT: if (cmp.gtu(r21, r17.new)) jump:t 59 0x11 0x40 0x71 0x70 0x92 0xd5 0x42 0x22 60 # CHECK: r17 = r17 61 # CHECK-NEXT: if (!cmp.gtu(r21, r17.new)) jump:nt 62 0x11 0x40 0x71 0x70 0x92 0xf5 0x42 0x22 63 # CHECK: r17 = r17 64 # CHECK-NEXT: if (!cmp.gtu(r21, r17.new)) jump:t 65 0x11 0x40 0x71 0x70 0x92 0xd5 0x02 0x24 66 # CHECK: r17 = r17 67 # CHECK-NEXT: if (cmp.eq(r17.new, #21)) jump:nt 68 0x11 0x40 0x71 0x70 0x92 0xf5 0x02 0x24 69 # CHECK: r17 = r17 70 # CHECK-NETX: if (cmp.eq(r17.new, #21)) jump:t 71 0x11 0x40 0x71 0x70 0x92 0xd5 0x42 0x24 72 # CHECK: r17 = r17 73 # CHECK-NEXT: if (!cmp.eq(r17.new, #21)) jump:nt 74 0x11 0x40 0x71 0x70 0x92 0xf5 0x42 0x24 75 # CHECK: r17 = r17 76 # CHECK-NEXT: if (!cmp.eq(r17.new, #21)) jump:t 77 0x11 0x40 0x71 0x70 0x92 0xd5 0x82 0x24 78 # CHECK: r17 = r17 79 # CHECK-NEXT: if (cmp.gt(r17.new, #21)) jump:nt 80 0x11 0x40 0x71 0x70 0x92 0xf5 0x82 0x24 81 # CHECK: r17 = r17 82 # CHECK-NEXT: if (cmp.gt(r17.new, #21)) jump:t 83 0x11 0x40 0x71 0x70 0x92 0xd5 0xc2 0x24 84 # CHECK: r17 = r17 85 # CHECK-NEXT: if (!cmp.gt(r17.new, #21)) jump:nt 86 0x11 0x40 0x71 0x70 0x92 0xf5 0xc2 0x24 87 # CHECK: r17 = r17 88 # CHECK-NEXT: if (!cmp.gt(r17.new, #21)) jump:t 89 0x11 0x40 0x71 0x70 0x92 0xd5 0x02 0x25 90 # CHECK: r17 = r17 91 # CHECK-NEXT: if (cmp.gtu(r17.new, #21)) jump:nt 92 0x11 0x40 0x71 0x70 0x92 0xf5 0x02 0x25 93 # CHECK: r17 = r17 94 # CHECK-NEXT: if (cmp.gtu(r17.new, #21)) jump:t 95 0x11 0x40 0x71 0x70 0x92 0xd5 0x42 0x25 96 # CHECK: r17 = r17 97 # CHECK-NEXT: if (!cmp.gtu(r17.new, #21)) jump:nt 98 0x11 0x40 0x71 0x70 0x92 0xf5 0x42 0x25 99 # CHECK: r17 = r17 100 # CHECK-NEXT: if (!cmp.gtu(r17.new, #21)) jump:t 101 0x11 0x40 0x71 0x70 0x92 0xc0 0x82 0x25 102 # CHECK: r17 = r17 103 # CHECK-NEXT: if (tstbit(r17.new, #0)) jump:nt 104 0x11 0x40 0x71 0x70 0x92 0xe0 0x82 0x25 105 # CHECK: r17 = r17 106 # CHECK-NEXT: if (tstbit(r17.new, #0)) jump:t 107 0x11 0x40 0x71 0x70 0x92 0xc0 0xc2 0x25 108 # CHECK: r17 = r17 109 # CHECK-NEXT: if (!tstbit(r17.new, #0)) jump:nt 110 0x11 0x40 0x71 0x70 0x92 0xe0 0xc2 0x25 111 # CHECK: r17 = r17 112 # CHECK-NEXT: if (!tstbit(r17.new, #0)) jump:t 113 0x11 0x40 0x71 0x70 0x92 0xc0 0x02 0x26 114 # CHECK: r17 = r17 115 # CHECK-NEXT: if (cmp.eq(r17.new, #-1)) jump:nt 116 0x11 0x40 0x71 0x70 0x92 0xe0 0x02 0x26 117 # CHECK: r17 = r17 118 # CHECK-NEXT: if (cmp.eq(r17.new, #-1)) jump:t 119 0x11 0x40 0x71 0x70 0x92 0xc0 0x42 0x26 120 # CHECK: r17 = r17 121 # CHECK-NEXT: if (!cmp.eq(r17.new, #-1)) jump:nt 122 0x11 0x40 0x71 0x70 0x92 0xe0 0x42 0x26 123 # CHECK: r17 = r17 124 # CHECK-NEXT: if (!cmp.eq(r17.new, #-1)) jump:t 125 0x11 0x40 0x71 0x70 0x92 0xc0 0x82 0x26 126 # CHECK: r17 = r17 127 # CHECK-NEXT: if (cmp.gt(r17.new, #-1)) jump:nt 128 0x11 0x40 0x71 0x70 0x92 0xe0 0x82 0x26 129 # CHECK: r17 = r17 130 # CHECK-NEXT: if (cmp.gt(r17.new, #-1)) jump:t 131 0x11 0x40 0x71 0x70 0x92 0xc0 0xc2 0x26 132 # CHECK: r17 = r17 133 # CHECK-NEXT: if (!cmp.gt(r17.new, #-1)) jump:nt 134 0x11 0x40 0x71 0x70 0x92 0xe0 0xc2 0x26 135 # CHECK: r17 = r17 136 # CHECK-NEXT: if (!cmp.gt(r17.new, #-1)) jump:t 137