76 lines · plain
1// RUN: llvm-mc -triple aarch64-none-linux-gnu -show-encoding -mattr=+hbc < %s | FileCheck %s2// RUN: llvm-mc -triple aarch64-none-linux-gnu -show-encoding -mattr=+v8.8a < %s | FileCheck %s3// RUN: not llvm-mc -triple aarch64-none-linux-gnu < %s 2>&1 | FileCheck --check-prefix=CHECK-NO-HBC-ERR %s4 5lbl:6 bc.eq lbl7 bc.ne lbl8 bc.cs lbl9 bc.hs lbl10 bc.lo lbl11 bc.cc lbl12 bc.mi lbl13 bc.pl lbl14 bc.vs lbl15 bc.vc lbl16 bc.hi lbl17 bc.ls lbl18 bc.ge lbl19 bc.lt lbl20 bc.gt lbl21 bc.le lbl22 bc.al lbl23 24// CHECK: bc.eq lbl // encoding: [0bAAA10000,A,A,0x54]25// CHECK: // fixup A - offset: 0, value: lbl, kind: fixup_aarch64_pcrel_branch1926// CHECK: bc.ne lbl // encoding: [0bAAA10001,A,A,0x54]27// CHECK: // fixup A - offset: 0, value: lbl, kind: fixup_aarch64_pcrel_branch1928// CHECK: bc.hs lbl // encoding: [0bAAA10010,A,A,0x54]29// CHECK: // fixup A - offset: 0, value: lbl, kind: fixup_aarch64_pcrel_branch1930// CHECK: bc.hs lbl // encoding: [0bAAA10010,A,A,0x54]31// CHECK: // fixup A - offset: 0, value: lbl, kind: fixup_aarch64_pcrel_branch1932// CHECK: bc.lo lbl // encoding: [0bAAA10011,A,A,0x54]33// CHECK: // fixup A - offset: 0, value: lbl, kind: fixup_aarch64_pcrel_branch1934// CHECK: bc.lo lbl // encoding: [0bAAA10011,A,A,0x54]35// CHECK: // fixup A - offset: 0, value: lbl, kind: fixup_aarch64_pcrel_branch1936// CHECK: bc.mi lbl // encoding: [0bAAA10100,A,A,0x54]37// CHECK: // fixup A - offset: 0, value: lbl, kind: fixup_aarch64_pcrel_branch1938// CHECK: bc.pl lbl // encoding: [0bAAA10101,A,A,0x54]39// CHECK: // fixup A - offset: 0, value: lbl, kind: fixup_aarch64_pcrel_branch1940// CHECK: bc.vs lbl // encoding: [0bAAA10110,A,A,0x54]41// CHECK: // fixup A - offset: 0, value: lbl, kind: fixup_aarch64_pcrel_branch1942// CHECK: bc.vc lbl // encoding: [0bAAA10111,A,A,0x54]43// CHECK: // fixup A - offset: 0, value: lbl, kind: fixup_aarch64_pcrel_branch1944// CHECK: bc.hi lbl // encoding: [0bAAA11000,A,A,0x54]45// CHECK: // fixup A - offset: 0, value: lbl, kind: fixup_aarch64_pcrel_branch1946// CHECK: bc.ls lbl // encoding: [0bAAA11001,A,A,0x54]47// CHECK: // fixup A - offset: 0, value: lbl, kind: fixup_aarch64_pcrel_branch1948// CHECK: bc.ge lbl // encoding: [0bAAA11010,A,A,0x54]49// CHECK: // fixup A - offset: 0, value: lbl, kind: fixup_aarch64_pcrel_branch1950// CHECK: bc.lt lbl // encoding: [0bAAA11011,A,A,0x54]51// CHECK: // fixup A - offset: 0, value: lbl, kind: fixup_aarch64_pcrel_branch1952// CHECK: bc.gt lbl // encoding: [0bAAA11100,A,A,0x54]53// CHECK: // fixup A - offset: 0, value: lbl, kind: fixup_aarch64_pcrel_branch1954// CHECK: bc.le lbl // encoding: [0bAAA11101,A,A,0x54]55// CHECK: // fixup A - offset: 0, value: lbl, kind: fixup_aarch64_pcrel_branch1956// CHECK: bc.al lbl // encoding: [0bAAA11110,A,A,0x54]57// CHECK: // fixup A - offset: 0, value: lbl, kind: fixup_aarch64_pcrel_branch1958 59// CHECK-NO-HBC-ERR: [[@LINE-53]]:9: error: instruction requires: hbc60// CHECK-NO-HBC-ERR: [[@LINE-53]]:9: error: instruction requires: hbc61// CHECK-NO-HBC-ERR: [[@LINE-53]]:9: error: instruction requires: hbc62// CHECK-NO-HBC-ERR: [[@LINE-53]]:9: error: instruction requires: hbc63// CHECK-NO-HBC-ERR: [[@LINE-53]]:9: error: instruction requires: hbc64// CHECK-NO-HBC-ERR: [[@LINE-53]]:9: error: instruction requires: hbc65// CHECK-NO-HBC-ERR: [[@LINE-53]]:9: error: instruction requires: hbc66// CHECK-NO-HBC-ERR: [[@LINE-53]]:9: error: instruction requires: hbc67// CHECK-NO-HBC-ERR: [[@LINE-53]]:9: error: instruction requires: hbc68// CHECK-NO-HBC-ERR: [[@LINE-53]]:9: error: instruction requires: hbc69// CHECK-NO-HBC-ERR: [[@LINE-53]]:9: error: instruction requires: hbc70// CHECK-NO-HBC-ERR: [[@LINE-53]]:9: error: instruction requires: hbc71// CHECK-NO-HBC-ERR: [[@LINE-53]]:9: error: instruction requires: hbc72// CHECK-NO-HBC-ERR: [[@LINE-53]]:9: error: instruction requires: hbc73// CHECK-NO-HBC-ERR: [[@LINE-53]]:9: error: instruction requires: hbc74// CHECK-NO-HBC-ERR: [[@LINE-53]]:9: error: instruction requires: hbc75// CHECK-NO-HBC-ERR: [[@LINE-53]]:9: error: instruction requires: hbc76