aboutsummaryrefslogtreecommitdiffstats
path: root/test/MC/PowerPC
diff options
context:
space:
mode:
authorStephen Hines <srhines@google.com>2014-04-23 16:57:46 -0700
committerStephen Hines <srhines@google.com>2014-04-24 15:53:16 -0700
commit36b56886974eae4f9c5ebc96befd3e7bfe5de338 (patch)
treee6cfb69fbbd937f450eeb83bfb83b9da3b01275a /test/MC/PowerPC
parent69a8640022b04415ae9fac62f8ab090601d8f889 (diff)
downloadexternal_llvm-36b56886974eae4f9c5ebc96befd3e7bfe5de338.zip
external_llvm-36b56886974eae4f9c5ebc96befd3e7bfe5de338.tar.gz
external_llvm-36b56886974eae4f9c5ebc96befd3e7bfe5de338.tar.bz2
Update to LLVM 3.5a.
Change-Id: Ifadecab779f128e62e430c2b4f6ddd84953ed617
Diffstat (limited to 'test/MC/PowerPC')
-rw-r--r--test/MC/PowerPC/deprecated-p7.s1
-rw-r--r--test/MC/PowerPC/ppc-llong.s2
-rw-r--r--test/MC/PowerPC/ppc-machine.s1
-rw-r--r--test/MC/PowerPC/ppc-nop.s8
-rw-r--r--test/MC/PowerPC/ppc-word.s2
-rw-r--r--test/MC/PowerPC/ppc64-encoding-bookII.s161
-rw-r--r--test/MC/PowerPC/ppc64-encoding-bookIII.s178
-rw-r--r--test/MC/PowerPC/ppc64-encoding-ext.s5636
-rw-r--r--test/MC/PowerPC/ppc64-encoding-fp.s578
-rw-r--r--test/MC/PowerPC/ppc64-encoding-vmx.s882
-rw-r--r--test/MC/PowerPC/ppc64-encoding.s1216
-rw-r--r--test/MC/PowerPC/ppc64-errors.s2
-rw-r--r--test/MC/PowerPC/ppc64-fixup-apply.s19
-rw-r--r--test/MC/PowerPC/ppc64-fixup-explicit.s96
-rw-r--r--test/MC/PowerPC/ppc64-fixups.s1123
-rw-r--r--test/MC/PowerPC/ppc64-initial-cfa.s26
-rw-r--r--test/MC/PowerPC/ppc64-operands.s177
-rw-r--r--test/MC/PowerPC/ppc64-regs.s1
-rw-r--r--test/MC/PowerPC/vsx.s447
19 files changed, 6581 insertions, 3975 deletions
diff --git a/test/MC/PowerPC/deprecated-p7.s b/test/MC/PowerPC/deprecated-p7.s
index ded9923..21ef6d2 100644
--- a/test/MC/PowerPC/deprecated-p7.s
+++ b/test/MC/PowerPC/deprecated-p7.s
@@ -1,4 +1,5 @@
# RUN: llvm-mc -triple powerpc64-unknown-linux-gnu -mcpu=pwr7 -show-encoding < %s 2>&1 | FileCheck %s
+# RUN: llvm-mc -triple powerpc64le-unknown-linux-gnu -mcpu=pwr7 -show-encoding < %s 2>&1 | FileCheck %s
# RUN: llvm-mc -triple powerpc-unknown-linux-gnu -mcpu=601 -show-encoding < %s 2>&1 | FileCheck -check-prefix=CHECK-OLD %s
mftb 3
diff --git a/test/MC/PowerPC/ppc-llong.s b/test/MC/PowerPC/ppc-llong.s
index 0838e42..5d92fe3 100644
--- a/test/MC/PowerPC/ppc-llong.s
+++ b/test/MC/PowerPC/ppc-llong.s
@@ -3,6 +3,8 @@
# RUN: llvm-readobj -s -sd | FileCheck %s
# RUN: llvm-mc -triple powerpc64-unknown-unknown -filetype=obj %s | \
# RUN: llvm-readobj -s -sd | FileCheck %s
+# RUN: llvm-mc -triple powerpc64le-unknown-unknown -filetype=obj %s | \
+# RUN: llvm-readobj -s -sd | FileCheck %s
.data
.llong 0
diff --git a/test/MC/PowerPC/ppc-machine.s b/test/MC/PowerPC/ppc-machine.s
index b8a7e3f..6b3bf31 100644
--- a/test/MC/PowerPC/ppc-machine.s
+++ b/test/MC/PowerPC/ppc-machine.s
@@ -1,5 +1,6 @@
# RUN: llvm-mc -triple powerpc-unknown-unknown %s
# RUN: llvm-mc -triple powerpc64-unknown-unknown %s
+# RUN: llvm-mc -triple powerpc64le-unknown-unknown %s
# For now, the only thing we check is that the .machine directive
# is accepted without syntax error.
diff --git a/test/MC/PowerPC/ppc-nop.s b/test/MC/PowerPC/ppc-nop.s
index 50afae2..29fd8e4 100644
--- a/test/MC/PowerPC/ppc-nop.s
+++ b/test/MC/PowerPC/ppc-nop.s
@@ -1,5 +1,6 @@
-# RUN: llvm-mc -filetype=obj -triple=powerpc-unknown-linux-gnu %s | llvm-readobj -s -sd - | FileCheck %s
-# RUN: llvm-mc -filetype=obj -triple=powerpc64-unknown-linux-gnu %s | llvm-readobj -s -sd - | FileCheck %s
+# RUN: llvm-mc -filetype=obj -triple=powerpc-unknown-linux-gnu %s | llvm-readobj -s -sd - | FileCheck -check-prefix=CHECK-BE %s
+# RUN: llvm-mc -filetype=obj -triple=powerpc64-unknown-linux-gnu %s | llvm-readobj -s -sd - | FileCheck -check-prefix=CHECK-BE %s
+# RUN: llvm-mc -filetype=obj -triple=powerpc64le-unknown-linux-gnu %s | llvm-readobj -s -sd - | FileCheck -check-prefix=CHECK-LE %s
blr
.p2align 3
@@ -8,5 +9,6 @@ blr
.byte 0x42
.p2align 2
-# CHECK: 0000: 4E800020 60000000 4E800020 42000000
+# CHECK-BE: 0000: 4E800020 60000000 4E800020 42000000
+# CHECK-LE: 0000: 2000804E 00000060 2000804E 42000000
diff --git a/test/MC/PowerPC/ppc-word.s b/test/MC/PowerPC/ppc-word.s
index 773fa14..e69de54 100644
--- a/test/MC/PowerPC/ppc-word.s
+++ b/test/MC/PowerPC/ppc-word.s
@@ -3,6 +3,8 @@
# RUN: llvm-readobj -s -sd | FileCheck %s
# RUN: llvm-mc -triple powerpc64-unknown-unknown -filetype=obj %s | \
# RUN: llvm-readobj -s -sd | FileCheck %s
+# RUN: llvm-mc -triple powerpc64le-unknown-unknown -filetype=obj %s | \
+# RUN: llvm-readobj -s -sd | FileCheck %s
.data
.word 0
diff --git a/test/MC/PowerPC/ppc64-encoding-bookII.s b/test/MC/PowerPC/ppc64-encoding-bookII.s
index 9e68a4b..99796ca 100644
--- a/test/MC/PowerPC/ppc64-encoding-bookII.s
+++ b/test/MC/PowerPC/ppc64-encoding-bookII.s
@@ -1,82 +1,107 @@
-# RUN: llvm-mc -triple powerpc64-unknown-unknown --show-encoding %s | FileCheck %s
+# RUN: llvm-mc -triple powerpc64-unknown-unknown --show-encoding %s | FileCheck -check-prefix=CHECK-BE %s
+# RUN: llvm-mc -triple powerpc64le-unknown-unknown --show-encoding %s | FileCheck -check-prefix=CHECK-LE %s
# Cache management instruction
-# CHECK: icbi 2, 3 # encoding: [0x7c,0x02,0x1f,0xac]
- icbi 2, 3
-
-# FIXME: dcbt 2, 3, 10
-# CHECK: dcbt 2, 3 # encoding: [0x7c,0x02,0x1a,0x2c]
- dcbt 2, 3
-# FIXME: dcbtst 2, 3, 10
-# CHECK: dcbtst 2, 3 # encoding: [0x7c,0x02,0x19,0xec]
- dcbtst 2, 3
-# CHECK: dcbz 2, 3 # encoding: [0x7c,0x02,0x1f,0xec]
- dcbz 2, 3
-# CHECK: dcbst 2, 3 # encoding: [0x7c,0x02,0x18,0x6c]
- dcbst 2, 3
-# FIXME: dcbf 2, 3, 1
+# CHECK-BE: icbi 2, 3 # encoding: [0x7c,0x02,0x1f,0xac]
+# CHECK-LE: icbi 2, 3 # encoding: [0xac,0x1f,0x02,0x7c]
+ icbi 2, 3
+
+# FIXME: dcbt 2, 3, 10
+# CHECK-BE: dcbt 2, 3 # encoding: [0x7c,0x02,0x1a,0x2c]
+# CHECK-LE: dcbt 2, 3 # encoding: [0x2c,0x1a,0x02,0x7c]
+ dcbt 2, 3
+# FIXME: dcbtst 2, 3, 10
+# CHECK-BE: dcbtst 2, 3 # encoding: [0x7c,0x02,0x19,0xec]
+# CHECK-LE: dcbtst 2, 3 # encoding: [0xec,0x19,0x02,0x7c]
+ dcbtst 2, 3
+# CHECK-BE: dcbz 2, 3 # encoding: [0x7c,0x02,0x1f,0xec]
+# CHECK-LE: dcbz 2, 3 # encoding: [0xec,0x1f,0x02,0x7c]
+ dcbz 2, 3
+# CHECK-BE: dcbst 2, 3 # encoding: [0x7c,0x02,0x18,0x6c]
+# CHECK-LE: dcbst 2, 3 # encoding: [0x6c,0x18,0x02,0x7c]
+ dcbst 2, 3
+# FIXME: dcbf 2, 3, 1
# Synchronization instructions
-# CHECK: isync # encoding: [0x4c,0x00,0x01,0x2c]
- isync
-
-# FIXME: lbarx 2, 3, 4, 1
-# FIXME: lharx 2, 3, 4, 1
-# FIXME: lwarx 2, 3, 4, 1
-# FIXME: ldarx 2, 3, 4, 1
-
-# FIXME: stbcx. 2, 3, 4
-# FIXME: sthcx. 2, 3, 4
-# CHECK: stwcx. 2, 3, 4 # encoding: [0x7c,0x43,0x21,0x2d]
- stwcx. 2, 3, 4
-# CHECK: stdcx. 2, 3, 4 # encoding: [0x7c,0x43,0x21,0xad]
- stdcx. 2, 3, 4
-
-# CHECK: sync 2 # encoding: [0x7c,0x40,0x04,0xac]
- sync 2
-# CHECK: eieio # encoding: [0x7c,0x00,0x06,0xac]
- eieio
-# CHECK: wait 2 # encoding: [0x7c,0x40,0x00,0x7c]
- wait 2
+# CHECK-BE: isync # encoding: [0x4c,0x00,0x01,0x2c]
+# CHECK-LE: isync # encoding: [0x2c,0x01,0x00,0x4c]
+ isync
+
+# FIXME: lbarx 2, 3, 4, 1
+# FIXME: lharx 2, 3, 4, 1
+# FIXME: lwarx 2, 3, 4, 1
+# FIXME: ldarx 2, 3, 4, 1
+
+# FIXME: stbcx. 2, 3, 4
+# FIXME: sthcx. 2, 3, 4
+# CHECK-BE: stwcx. 2, 3, 4 # encoding: [0x7c,0x43,0x21,0x2d]
+# CHECK-LE: stwcx. 2, 3, 4 # encoding: [0x2d,0x21,0x43,0x7c]
+ stwcx. 2, 3, 4
+# CHECK-BE: stdcx. 2, 3, 4 # encoding: [0x7c,0x43,0x21,0xad]
+# CHECK-LE: stdcx. 2, 3, 4 # encoding: [0xad,0x21,0x43,0x7c]
+ stdcx. 2, 3, 4
+
+# CHECK-BE: sync 2 # encoding: [0x7c,0x40,0x04,0xac]
+# CHECK-LE: sync 2 # encoding: [0xac,0x04,0x40,0x7c]
+ sync 2
+# CHECK-BE: eieio # encoding: [0x7c,0x00,0x06,0xac]
+# CHECK-LE: eieio # encoding: [0xac,0x06,0x00,0x7c]
+ eieio
+# CHECK-BE: wait 2 # encoding: [0x7c,0x40,0x00,0x7c]
+# CHECK-LE: wait 2 # encoding: [0x7c,0x00,0x40,0x7c]
+ wait 2
# Extended mnemonics
-# CHECK: dcbf 2, 3 # encoding: [0x7c,0x02,0x18,0xac]
- dcbf 2, 3
-# FIXME: dcbfl 2, 3
-
-# FIXME: lbarx 2, 3, 4
-# FIXME: lharx 2, 3, 4
-# CHECK: lwarx 2, 3, 4 # encoding: [0x7c,0x43,0x20,0x28]
- lwarx 2, 3, 4
-# CHECK: ldarx 2, 3, 4 # encoding: [0x7c,0x43,0x20,0xa8]
- ldarx 2, 3, 4
-
-# CHECK: sync 0 # encoding: [0x7c,0x00,0x04,0xac]
- sync
-# CHECK: sync 0 # encoding: [0x7c,0x00,0x04,0xac]
- msync
-# CHECK: sync 1 # encoding: [0x7c,0x20,0x04,0xac]
- lwsync
-# CHECK: sync 2 # encoding: [0x7c,0x40,0x04,0xac]
- ptesync
-
-# CHECK: wait 0 # encoding: [0x7c,0x00,0x00,0x7c]
- wait
-# CHECK: wait 1 # encoding: [0x7c,0x20,0x00,0x7c]
- waitrsv
-# CHECK: wait 2 # encoding: [0x7c,0x40,0x00,0x7c]
- waitimpl
+# CHECK-BE: dcbf 2, 3 # encoding: [0x7c,0x02,0x18,0xac]
+# CHECK-LE: dcbf 2, 3 # encoding: [0xac,0x18,0x02,0x7c]
+ dcbf 2, 3
+# FIXME: dcbfl 2, 3
+
+# FIXME: lbarx 2, 3, 4
+# FIXME: lharx 2, 3, 4
+# CHECK-BE: lwarx 2, 3, 4 # encoding: [0x7c,0x43,0x20,0x28]
+# CHECK-LE: lwarx 2, 3, 4 # encoding: [0x28,0x20,0x43,0x7c]
+ lwarx 2, 3, 4
+# CHECK-BE: ldarx 2, 3, 4 # encoding: [0x7c,0x43,0x20,0xa8]
+# CHECK-LE: ldarx 2, 3, 4 # encoding: [0xa8,0x20,0x43,0x7c]
+ ldarx 2, 3, 4
+
+# CHECK-BE: sync 0 # encoding: [0x7c,0x00,0x04,0xac]
+# CHECK-LE: sync 0 # encoding: [0xac,0x04,0x00,0x7c]
+ sync
+# CHECK-BE: sync 0 # encoding: [0x7c,0x00,0x04,0xac]
+# CHECK-LE: sync 0 # encoding: [0xac,0x04,0x00,0x7c]
+ msync
+# CHECK-BE: sync 1 # encoding: [0x7c,0x20,0x04,0xac]
+# CHECK-LE: sync 1 # encoding: [0xac,0x04,0x20,0x7c]
+ lwsync
+# CHECK-BE: sync 2 # encoding: [0x7c,0x40,0x04,0xac]
+# CHECK-LE: sync 2 # encoding: [0xac,0x04,0x40,0x7c]
+ ptesync
+
+# CHECK-BE: wait 0 # encoding: [0x7c,0x00,0x00,0x7c]
+# CHECK-LE: wait 0 # encoding: [0x7c,0x00,0x00,0x7c]
+ wait
+# CHECK-BE: wait 1 # encoding: [0x7c,0x20,0x00,0x7c]
+# CHECK-LE: wait 1 # encoding: [0x7c,0x00,0x20,0x7c]
+ waitrsv
+# CHECK-BE: wait 2 # encoding: [0x7c,0x40,0x00,0x7c]
+# CHECK-LE: wait 2 # encoding: [0x7c,0x00,0x40,0x7c]
+ waitimpl
# Time base instructions
-# CHECK: mftb 2, 123 # encoding: [0x7c,0x5b,0x1a,0xe6]
- mftb 2, 123
-# CHECK: mftb 2, 268 # encoding: [0x7c,0x4c,0x42,0xe6]
- mftb 2
-# CHECK: mftb 2, 269 # encoding: [0x7c,0x4d,0x42,0xe6]
- mftbu 2
+# CHECK-BE: mftb 2, 123 # encoding: [0x7c,0x5b,0x1a,0xe6]
+# CHECK-LE: mftb 2, 123 # encoding: [0xe6,0x1a,0x5b,0x7c]
+ mftb 2, 123
+# CHECK-BE: mftb 2, 268 # encoding: [0x7c,0x4c,0x42,0xe6]
+# CHECK-LE: mftb 2, 268 # encoding: [0xe6,0x42,0x4c,0x7c]
+ mftb 2
+# CHECK-BE: mftb 2, 269 # encoding: [0x7c,0x4d,0x42,0xe6]
+# CHECK-LE: mftb 2, 269 # encoding: [0xe6,0x42,0x4d,0x7c]
+ mftbu 2
diff --git a/test/MC/PowerPC/ppc64-encoding-bookIII.s b/test/MC/PowerPC/ppc64-encoding-bookIII.s
index 318c30b..dfce395 100644
--- a/test/MC/PowerPC/ppc64-encoding-bookIII.s
+++ b/test/MC/PowerPC/ppc64-encoding-bookIII.s
@@ -1,107 +1,143 @@
-# RUN: llvm-mc -triple powerpc64-unknown-unknown --show-encoding %s | FileCheck %s
+# RUN: llvm-mc -triple powerpc64-unknown-unknown --show-encoding %s | FileCheck -check-prefix=CHECK-BE %s
+# RUN: llvm-mc -triple powerpc64le-unknown-unknown --show-encoding %s | FileCheck -check-prefix=CHECK-LE %s
-# CHECK: mtmsr 4, 0 # encoding: [0x7c,0x80,0x01,0x24]
- mtmsr %r4
+# CHECK-BE: mtmsr 4, 0 # encoding: [0x7c,0x80,0x01,0x24]
+# CHECK-LE: mtmsr 4, 0 # encoding: [0x24,0x01,0x80,0x7c]
+ mtmsr %r4
-# CHECK: mtmsr 4, 1 # encoding: [0x7c,0x81,0x01,0x24]
- mtmsr %r4, 1
+# CHECK-BE: mtmsr 4, 1 # encoding: [0x7c,0x81,0x01,0x24]
+# CHECK-LE: mtmsr 4, 1 # encoding: [0x24,0x01,0x81,0x7c]
+ mtmsr %r4, 1
-# CHECK: mfmsr 4 # encoding: [0x7c,0x80,0x00,0xa6]
- mfmsr %r4
+# CHECK-BE: mfmsr 4 # encoding: [0x7c,0x80,0x00,0xa6]
+# CHECK-LE: mfmsr 4 # encoding: [0xa6,0x00,0x80,0x7c]
+ mfmsr %r4
-# CHECK: mtmsrd 4, 0 # encoding: [0x7c,0x80,0x01,0x64]
- mtmsrd %r4
+# CHECK-BE: mtmsrd 4, 0 # encoding: [0x7c,0x80,0x01,0x64]
+# CHECK-LE: mtmsrd 4, 0 # encoding: [0x64,0x01,0x80,0x7c]
+ mtmsrd %r4
-# CHECK: mtmsrd 4, 1 # encoding: [0x7c,0x81,0x01,0x64]
- mtmsrd %r4, 1
+# CHECK-BE: mtmsrd 4, 1 # encoding: [0x7c,0x81,0x01,0x64]
+# CHECK-LE: mtmsrd 4, 1 # encoding: [0x64,0x01,0x81,0x7c]
+ mtmsrd %r4, 1
-# CHECK: mfspr 4, 272 # encoding: [0x7c,0x90,0x42,0xa6]
- mfsprg %r4, 0
+# CHECK-BE: mfspr 4, 272 # encoding: [0x7c,0x90,0x42,0xa6]
+# CHECK-LE: mfspr 4, 272 # encoding: [0xa6,0x42,0x90,0x7c]
+ mfsprg %r4, 0
-# CHECK: mfspr 4, 273 # encoding: [0x7c,0x91,0x42,0xa6]
- mfsprg %r4, 1
+# CHECK-BE: mfspr 4, 273 # encoding: [0x7c,0x91,0x42,0xa6]
+# CHECK-LE: mfspr 4, 273 # encoding: [0xa6,0x42,0x91,0x7c]
+ mfsprg %r4, 1
-# CHECK: mfspr 4, 274 # encoding: [0x7c,0x92,0x42,0xa6]
- mfsprg %r4, 2
+# CHECK-BE: mfspr 4, 274 # encoding: [0x7c,0x92,0x42,0xa6]
+# CHECK-LE: mfspr 4, 274 # encoding: [0xa6,0x42,0x92,0x7c]
+ mfsprg %r4, 2
-# CHECK: mfspr 4, 275 # encoding: [0x7c,0x93,0x42,0xa6]
- mfsprg %r4, 3
+# CHECK-BE: mfspr 4, 275 # encoding: [0x7c,0x93,0x42,0xa6]
+# CHECK-LE: mfspr 4, 275 # encoding: [0xa6,0x42,0x93,0x7c]
+ mfsprg %r4, 3
-# CHECK: mtspr 272, 4 # encoding: [0x7c,0x90,0x43,0xa6]
- mtsprg 0, %r4
+# CHECK-BE: mtspr 272, 4 # encoding: [0x7c,0x90,0x43,0xa6]
+# CHECK-LE: mtspr 272, 4 # encoding: [0xa6,0x43,0x90,0x7c]
+ mtsprg 0, %r4
-# CHECK: mtspr 273, 4 # encoding: [0x7c,0x91,0x43,0xa6]
- mtsprg 1, %r4
+# CHECK-BE: mtspr 273, 4 # encoding: [0x7c,0x91,0x43,0xa6]
+# CHECK-LE: mtspr 273, 4 # encoding: [0xa6,0x43,0x91,0x7c]
+ mtsprg 1, %r4
-# CHECK: mtspr 274, 4 # encoding: [0x7c,0x92,0x43,0xa6]
- mtsprg 2, %r4
+# CHECK-BE: mtspr 274, 4 # encoding: [0x7c,0x92,0x43,0xa6]
+# CHECK-LE: mtspr 274, 4 # encoding: [0xa6,0x43,0x92,0x7c]
+ mtsprg 2, %r4
-# CHECK: mtspr 275, 4 # encoding: [0x7c,0x93,0x43,0xa6]
- mtsprg 3, %r4
+# CHECK-BE: mtspr 275, 4 # encoding: [0x7c,0x93,0x43,0xa6]
+# CHECK-LE: mtspr 275, 4 # encoding: [0xa6,0x43,0x93,0x7c]
+ mtsprg 3, %r4
-# CHECK: mtspr 272, 4 # encoding: [0x7c,0x90,0x43,0xa6]
- mtsprg0 %r4
+# CHECK-BE: mtspr 272, 4 # encoding: [0x7c,0x90,0x43,0xa6]
+# CHECK-LE: mtspr 272, 4 # encoding: [0xa6,0x43,0x90,0x7c]
+ mtsprg0 %r4
-# CHECK: mtspr 273, 4 # encoding: [0x7c,0x91,0x43,0xa6]
- mtsprg1 %r4
+# CHECK-BE: mtspr 273, 4 # encoding: [0x7c,0x91,0x43,0xa6]
+# CHECK-LE: mtspr 273, 4 # encoding: [0xa6,0x43,0x91,0x7c]
+ mtsprg1 %r4
-# CHECK: mtspr 274, 4 # encoding: [0x7c,0x92,0x43,0xa6]
- mtsprg2 %r4
+# CHECK-BE: mtspr 274, 4 # encoding: [0x7c,0x92,0x43,0xa6]
+# CHECK-LE: mtspr 274, 4 # encoding: [0xa6,0x43,0x92,0x7c]
+ mtsprg2 %r4
-# CHECK: mtspr 275, 4 # encoding: [0x7c,0x93,0x43,0xa6]
- mtsprg3 %r4
+# CHECK-BE: mtspr 275, 4 # encoding: [0x7c,0x93,0x43,0xa6]
+# CHECK-LE: mtspr 275, 4 # encoding: [0xa6,0x43,0x93,0x7c]
+ mtsprg3 %r4
-# CHECK: mtspr 280, 4 # encoding: [0x7c,0x98,0x43,0xa6]
- mtasr %r4
+# CHECK-BE: mtspr 280, 4 # encoding: [0x7c,0x98,0x43,0xa6]
+# CHECK-LE: mtspr 280, 4 # encoding: [0xa6,0x43,0x98,0x7c]
+ mtasr %r4
-# CHECK: mfspr 4, 22 # encoding: [0x7c,0x96,0x02,0xa6]
- mfdec %r4
+# CHECK-BE: mfspr 4, 22 # encoding: [0x7c,0x96,0x02,0xa6]
+# CHECK-LE: mfspr 4, 22 # encoding: [0xa6,0x02,0x96,0x7c]
+ mfdec %r4
-# CHECK: mtspr 22, 4 # encoding: [0x7c,0x96,0x03,0xa6]
- mtdec %r4
+# CHECK-BE: mtspr 22, 4 # encoding: [0x7c,0x96,0x03,0xa6]
+# CHECK-LE: mtspr 22, 4 # encoding: [0xa6,0x03,0x96,0x7c]
+ mtdec %r4
-# CHECK: mfspr 4, 287 # encoding: [0x7c,0x9f,0x42,0xa6]
- mfpvr %r4
+# CHECK-BE: mfspr 4, 287 # encoding: [0x7c,0x9f,0x42,0xa6]
+# CHECK-LE: mfspr 4, 287 # encoding: [0xa6,0x42,0x9f,0x7c]
+ mfpvr %r4
-# CHECK: mfspr 4, 25 # encoding: [0x7c,0x99,0x02,0xa6]
- mfsdr1 %r4
+# CHECK-BE: mfspr 4, 25 # encoding: [0x7c,0x99,0x02,0xa6]
+# CHECK-LE: mfspr 4, 25 # encoding: [0xa6,0x02,0x99,0x7c]
+ mfsdr1 %r4
-# CHECK: mtspr 25, 4 # encoding: [0x7c,0x99,0x03,0xa6]
- mtsdr1 %r4
+# CHECK-BE: mtspr 25, 4 # encoding: [0x7c,0x99,0x03,0xa6]
+# CHECK-LE: mtspr 25, 4 # encoding: [0xa6,0x03,0x99,0x7c]
+ mtsdr1 %r4
-# CHECK: mfspr 4, 26 # encoding: [0x7c,0x9a,0x02,0xa6]
- mfsrr0 %r4
+# CHECK-BE: mfspr 4, 26 # encoding: [0x7c,0x9a,0x02,0xa6]
+# CHECK-LE: mfspr 4, 26 # encoding: [0xa6,0x02,0x9a,0x7c]
+ mfsrr0 %r4
-# CHECK: mtspr 26, 4 # encoding: [0x7c,0x9a,0x03,0xa6]
- mtsrr0 %r4
+# CHECK-BE: mtspr 26, 4 # encoding: [0x7c,0x9a,0x03,0xa6]
+# CHECK-LE: mtspr 26, 4 # encoding: [0xa6,0x03,0x9a,0x7c]
+ mtsrr0 %r4
-# CHECK: mfspr 4, 27 # encoding: [0x7c,0x9b,0x02,0xa6]
- mfsrr1 %r4
+# CHECK-BE: mfspr 4, 27 # encoding: [0x7c,0x9b,0x02,0xa6]
+# CHECK-LE: mfspr 4, 27 # encoding: [0xa6,0x02,0x9b,0x7c]
+ mfsrr1 %r4
-# CHECK: mtspr 27, 4 # encoding: [0x7c,0x9b,0x03,0xa6]
- mtsrr1 %r4
+# CHECK-BE: mtspr 27, 4 # encoding: [0x7c,0x9b,0x03,0xa6]
+# CHECK-LE: mtspr 27, 4 # encoding: [0xa6,0x03,0x9b,0x7c]
+ mtsrr1 %r4
-# CHECK: slbie 4 # encoding: [0x7c,0x00,0x23,0x64]
- slbie %r4
+# CHECK-BE: slbie 4 # encoding: [0x7c,0x00,0x23,0x64]
+# CHECK-LE: slbie 4 # encoding: [0x64,0x23,0x00,0x7c]
+ slbie %r4
-# CHECK: slbmte 4, 5 # encoding: [0x7c,0x80,0x2b,0x24]
- slbmte %r4, %r5
+# CHECK-BE: slbmte 4, 5 # encoding: [0x7c,0x80,0x2b,0x24]
+# CHECK-LE: slbmte 4, 5 # encoding: [0x24,0x2b,0x80,0x7c]
+ slbmte %r4, %r5
-# CHECK: slbmfee 4, 5 # encoding: [0x7c,0x80,0x2f,0x26]
- slbmfee %r4, %r5
+# CHECK-BE: slbmfee 4, 5 # encoding: [0x7c,0x80,0x2f,0x26]
+# CHECK-LE: slbmfee 4, 5 # encoding: [0x26,0x2f,0x80,0x7c]
+ slbmfee %r4, %r5
-# CHECK: slbia # encoding: [0x7c,0x00,0x03,0xe4]
- slbia
+# CHECK-BE: slbia # encoding: [0x7c,0x00,0x03,0xe4]
+# CHECK-LE: slbia # encoding: [0xe4,0x03,0x00,0x7c]
+ slbia
-# CHECK: tlbsync # encoding: [0x7c,0x00,0x04,0x6c]
- tlbsync
+# CHECK-BE: tlbsync # encoding: [0x7c,0x00,0x04,0x6c]
+# CHECK-LE: tlbsync # encoding: [0x6c,0x04,0x00,0x7c]
+ tlbsync
-# CHECK: tlbiel 4 # encoding: [0x7c,0x00,0x22,0x24]
- tlbiel %r4
+# CHECK-BE: tlbiel 4 # encoding: [0x7c,0x00,0x22,0x24]
+# CHECK-LE: tlbiel 4 # encoding: [0x24,0x22,0x00,0x7c]
+ tlbiel %r4
-# CHECK: tlbie 4,0 # encoding: [0x7c,0x00,0x22,0x64]
- tlbie %r4, 0
+# CHECK-BE: tlbie 4,0 # encoding: [0x7c,0x00,0x22,0x64]
+# CHECK-LE: tlbie 4,0 # encoding: [0x64,0x22,0x00,0x7c]
+ tlbie %r4, 0
-# CHECK: tlbie 4,0 # encoding: [0x7c,0x00,0x22,0x64]
- tlbie %r4
+# CHECK-BE: tlbie 4,0 # encoding: [0x7c,0x00,0x22,0x64]
+# CHECK-LE: tlbie 4,0 # encoding: [0x64,0x22,0x00,0x7c]
+ tlbie %r4
diff --git a/test/MC/PowerPC/ppc64-encoding-ext.s b/test/MC/PowerPC/ppc64-encoding-ext.s
index a9c313a..2374675 100644
--- a/test/MC/PowerPC/ppc64-encoding-ext.s
+++ b/test/MC/PowerPC/ppc64-encoding-ext.s
@@ -1,2227 +1,3467 @@
-# RUN: llvm-mc -triple powerpc64-unknown-unknown --show-encoding %s | FileCheck %s
+# RUN: llvm-mc -triple powerpc64-unknown-unknown --show-encoding %s | FileCheck -check-prefix=CHECK-BE %s
+# RUN: llvm-mc -triple powerpc64le-unknown-unknown --show-encoding %s | FileCheck -check-prefix=CHECK-LE %s
# Condition register bit symbols
-# CHECK: beqlr 0 # encoding: [0x4d,0x82,0x00,0x20]
- beqlr cr0
-# CHECK: beqlr 1 # encoding: [0x4d,0x86,0x00,0x20]
- beqlr cr1
-# CHECK: beqlr 2 # encoding: [0x4d,0x8a,0x00,0x20]
- beqlr cr2
-# CHECK: beqlr 3 # encoding: [0x4d,0x8e,0x00,0x20]
- beqlr cr3
-# CHECK: beqlr 4 # encoding: [0x4d,0x92,0x00,0x20]
- beqlr cr4
-# CHECK: beqlr 5 # encoding: [0x4d,0x96,0x00,0x20]
- beqlr cr5
-# CHECK: beqlr 6 # encoding: [0x4d,0x9a,0x00,0x20]
- beqlr cr6
-# CHECK: beqlr 7 # encoding: [0x4d,0x9e,0x00,0x20]
- beqlr cr7
-
-# CHECK: bclr 12, 0, 0 # encoding: [0x4d,0x80,0x00,0x20]
- btlr 4*cr0+lt
-# CHECK: bclr 12, 1, 0 # encoding: [0x4d,0x81,0x00,0x20]
- btlr 4*cr0+gt
-# CHECK: bclr 12, 2, 0 # encoding: [0x4d,0x82,0x00,0x20]
- btlr 4*cr0+eq
-# CHECK: bclr 12, 3, 0 # encoding: [0x4d,0x83,0x00,0x20]
- btlr 4*cr0+so
-# CHECK: bclr 12, 3, 0 # encoding: [0x4d,0x83,0x00,0x20]
- btlr 4*cr0+un
-# CHECK: bclr 12, 4, 0 # encoding: [0x4d,0x84,0x00,0x20]
- btlr 4*cr1+lt
-# CHECK: bclr 12, 5, 0 # encoding: [0x4d,0x85,0x00,0x20]
- btlr 4*cr1+gt
-# CHECK: bclr 12, 6, 0 # encoding: [0x4d,0x86,0x00,0x20]
- btlr 4*cr1+eq
-# CHECK: bclr 12, 7, 0 # encoding: [0x4d,0x87,0x00,0x20]
- btlr 4*cr1+so
-# CHECK: bclr 12, 7, 0 # encoding: [0x4d,0x87,0x00,0x20]
- btlr 4*cr1+un
-# CHECK: bclr 12, 8, 0 # encoding: [0x4d,0x88,0x00,0x20]
- btlr 4*cr2+lt
-# CHECK: bclr 12, 9, 0 # encoding: [0x4d,0x89,0x00,0x20]
- btlr 4*cr2+gt
-# CHECK: bclr 12, 10, 0 # encoding: [0x4d,0x8a,0x00,0x20]
- btlr 4*cr2+eq
-# CHECK: bclr 12, 11, 0 # encoding: [0x4d,0x8b,0x00,0x20]
- btlr 4*cr2+so
-# CHECK: bclr 12, 11, 0 # encoding: [0x4d,0x8b,0x00,0x20]
- btlr 4*cr2+un
-# CHECK: bclr 12, 12, 0 # encoding: [0x4d,0x8c,0x00,0x20]
- btlr 4*cr3+lt
-# CHECK: bclr 12, 13, 0 # encoding: [0x4d,0x8d,0x00,0x20]
- btlr 4*cr3+gt
-# CHECK: bclr 12, 14, 0 # encoding: [0x4d,0x8e,0x00,0x20]
- btlr 4*cr3+eq
-# CHECK: bclr 12, 15, 0 # encoding: [0x4d,0x8f,0x00,0x20]
- btlr 4*cr3+so
-# CHECK: bclr 12, 15, 0 # encoding: [0x4d,0x8f,0x00,0x20]
- btlr 4*cr3+un
-# CHECK: bclr 12, 16, 0 # encoding: [0x4d,0x90,0x00,0x20]
- btlr 4*cr4+lt
-# CHECK: bclr 12, 17, 0 # encoding: [0x4d,0x91,0x00,0x20]
- btlr 4*cr4+gt
-# CHECK: bclr 12, 18, 0 # encoding: [0x4d,0x92,0x00,0x20]
- btlr 4*cr4+eq
-# CHECK: bclr 12, 19, 0 # encoding: [0x4d,0x93,0x00,0x20]
- btlr 4*cr4+so
-# CHECK: bclr 12, 19, 0 # encoding: [0x4d,0x93,0x00,0x20]
- btlr 4*cr4+un
-# CHECK: bclr 12, 20, 0 # encoding: [0x4d,0x94,0x00,0x20]
- btlr 4*cr5+lt
-# CHECK: bclr 12, 21, 0 # encoding: [0x4d,0x95,0x00,0x20]
- btlr 4*cr5+gt
-# CHECK: bclr 12, 22, 0 # encoding: [0x4d,0x96,0x00,0x20]
- btlr 4*cr5+eq
-# CHECK: bclr 12, 23, 0 # encoding: [0x4d,0x97,0x00,0x20]
- btlr 4*cr5+so
-# CHECK: bclr 12, 23, 0 # encoding: [0x4d,0x97,0x00,0x20]
- btlr 4*cr5+un
-# CHECK: bclr 12, 24, 0 # encoding: [0x4d,0x98,0x00,0x20]
- btlr 4*cr6+lt
-# CHECK: bclr 12, 25, 0 # encoding: [0x4d,0x99,0x00,0x20]
- btlr 4*cr6+gt
-# CHECK: bclr 12, 26, 0 # encoding: [0x4d,0x9a,0x00,0x20]
- btlr 4*cr6+eq
-# CHECK: bclr 12, 27, 0 # encoding: [0x4d,0x9b,0x00,0x20]
- btlr 4*cr6+so
-# CHECK: bclr 12, 27, 0 # encoding: [0x4d,0x9b,0x00,0x20]
- btlr 4*cr6+un
-# CHECK: bclr 12, 28, 0 # encoding: [0x4d,0x9c,0x00,0x20]
- btlr 4*cr7+lt
-# CHECK: bclr 12, 29, 0 # encoding: [0x4d,0x9d,0x00,0x20]
- btlr 4*cr7+gt
-# CHECK: bclr 12, 30, 0 # encoding: [0x4d,0x9e,0x00,0x20]
- btlr 4*cr7+eq
-# CHECK: bclr 12, 31, 0 # encoding: [0x4d,0x9f,0x00,0x20]
- btlr 4*cr7+so
-# CHECK: bclr 12, 31, 0 # encoding: [0x4d,0x9f,0x00,0x20]
- btlr 4*cr7+un
+# CHECK-BE: beqlr 0 # encoding: [0x4d,0x82,0x00,0x20]
+# CHECK-LE: beqlr 0 # encoding: [0x20,0x00,0x82,0x4d]
+ beqlr cr0
+# CHECK-BE: beqlr 1 # encoding: [0x4d,0x86,0x00,0x20]
+# CHECK-LE: beqlr 1 # encoding: [0x20,0x00,0x86,0x4d]
+ beqlr cr1
+# CHECK-BE: beqlr 2 # encoding: [0x4d,0x8a,0x00,0x20]
+# CHECK-LE: beqlr 2 # encoding: [0x20,0x00,0x8a,0x4d]
+ beqlr cr2
+# CHECK-BE: beqlr 3 # encoding: [0x4d,0x8e,0x00,0x20]
+# CHECK-LE: beqlr 3 # encoding: [0x20,0x00,0x8e,0x4d]
+ beqlr cr3
+# CHECK-BE: beqlr 4 # encoding: [0x4d,0x92,0x00,0x20]
+# CHECK-LE: beqlr 4 # encoding: [0x20,0x00,0x92,0x4d]
+ beqlr cr4
+# CHECK-BE: beqlr 5 # encoding: [0x4d,0x96,0x00,0x20]
+# CHECK-LE: beqlr 5 # encoding: [0x20,0x00,0x96,0x4d]
+ beqlr cr5
+# CHECK-BE: beqlr 6 # encoding: [0x4d,0x9a,0x00,0x20]
+# CHECK-LE: beqlr 6 # encoding: [0x20,0x00,0x9a,0x4d]
+ beqlr cr6
+# CHECK-BE: beqlr 7 # encoding: [0x4d,0x9e,0x00,0x20]
+# CHECK-LE: beqlr 7 # encoding: [0x20,0x00,0x9e,0x4d]
+ beqlr cr7
+
+# CHECK-BE: bclr 12, 0, 0 # encoding: [0x4d,0x80,0x00,0x20]
+# CHECK-LE: bclr 12, 0, 0 # encoding: [0x20,0x00,0x80,0x4d]
+ btlr 4*cr0+lt
+# CHECK-BE: bclr 12, 1, 0 # encoding: [0x4d,0x81,0x00,0x20]
+# CHECK-LE: bclr 12, 1, 0 # encoding: [0x20,0x00,0x81,0x4d]
+ btlr 4*cr0+gt
+# CHECK-BE: bclr 12, 2, 0 # encoding: [0x4d,0x82,0x00,0x20]
+# CHECK-LE: bclr 12, 2, 0 # encoding: [0x20,0x00,0x82,0x4d]
+ btlr 4*cr0+eq
+# CHECK-BE: bclr 12, 3, 0 # encoding: [0x4d,0x83,0x00,0x20]
+# CHECK-LE: bclr 12, 3, 0 # encoding: [0x20,0x00,0x83,0x4d]
+ btlr 4*cr0+so
+# CHECK-BE: bclr 12, 3, 0 # encoding: [0x4d,0x83,0x00,0x20]
+# CHECK-LE: bclr 12, 3, 0 # encoding: [0x20,0x00,0x83,0x4d]
+ btlr 4*cr0+un
+# CHECK-BE: bclr 12, 4, 0 # encoding: [0x4d,0x84,0x00,0x20]
+# CHECK-LE: bclr 12, 4, 0 # encoding: [0x20,0x00,0x84,0x4d]
+ btlr 4*cr1+lt
+# CHECK-BE: bclr 12, 5, 0 # encoding: [0x4d,0x85,0x00,0x20]
+# CHECK-LE: bclr 12, 5, 0 # encoding: [0x20,0x00,0x85,0x4d]
+ btlr 4*cr1+gt
+# CHECK-BE: bclr 12, 6, 0 # encoding: [0x4d,0x86,0x00,0x20]
+# CHECK-LE: bclr 12, 6, 0 # encoding: [0x20,0x00,0x86,0x4d]
+ btlr 4*cr1+eq
+# CHECK-BE: bclr 12, 7, 0 # encoding: [0x4d,0x87,0x00,0x20]
+# CHECK-LE: bclr 12, 7, 0 # encoding: [0x20,0x00,0x87,0x4d]
+ btlr 4*cr1+so
+# CHECK-BE: bclr 12, 7, 0 # encoding: [0x4d,0x87,0x00,0x20]
+# CHECK-LE: bclr 12, 7, 0 # encoding: [0x20,0x00,0x87,0x4d]
+ btlr 4*cr1+un
+# CHECK-BE: bclr 12, 8, 0 # encoding: [0x4d,0x88,0x00,0x20]
+# CHECK-LE: bclr 12, 8, 0 # encoding: [0x20,0x00,0x88,0x4d]
+ btlr 4*cr2+lt
+# CHECK-BE: bclr 12, 9, 0 # encoding: [0x4d,0x89,0x00,0x20]
+# CHECK-LE: bclr 12, 9, 0 # encoding: [0x20,0x00,0x89,0x4d]
+ btlr 4*cr2+gt
+# CHECK-BE: bclr 12, 10, 0 # encoding: [0x4d,0x8a,0x00,0x20]
+# CHECK-LE: bclr 12, 10, 0 # encoding: [0x20,0x00,0x8a,0x4d]
+ btlr 4*cr2+eq
+# CHECK-BE: bclr 12, 11, 0 # encoding: [0x4d,0x8b,0x00,0x20]
+# CHECK-LE: bclr 12, 11, 0 # encoding: [0x20,0x00,0x8b,0x4d]
+ btlr 4*cr2+so
+# CHECK-BE: bclr 12, 11, 0 # encoding: [0x4d,0x8b,0x00,0x20]
+# CHECK-LE: bclr 12, 11, 0 # encoding: [0x20,0x00,0x8b,0x4d]
+ btlr 4*cr2+un
+# CHECK-BE: bclr 12, 12, 0 # encoding: [0x4d,0x8c,0x00,0x20]
+# CHECK-LE: bclr 12, 12, 0 # encoding: [0x20,0x00,0x8c,0x4d]
+ btlr 4*cr3+lt
+# CHECK-BE: bclr 12, 13, 0 # encoding: [0x4d,0x8d,0x00,0x20]
+# CHECK-LE: bclr 12, 13, 0 # encoding: [0x20,0x00,0x8d,0x4d]
+ btlr 4*cr3+gt
+# CHECK-BE: bclr 12, 14, 0 # encoding: [0x4d,0x8e,0x00,0x20]
+# CHECK-LE: bclr 12, 14, 0 # encoding: [0x20,0x00,0x8e,0x4d]
+ btlr 4*cr3+eq
+# CHECK-BE: bclr 12, 15, 0 # encoding: [0x4d,0x8f,0x00,0x20]
+# CHECK-LE: bclr 12, 15, 0 # encoding: [0x20,0x00,0x8f,0x4d]
+ btlr 4*cr3+so
+# CHECK-BE: bclr 12, 15, 0 # encoding: [0x4d,0x8f,0x00,0x20]
+# CHECK-LE: bclr 12, 15, 0 # encoding: [0x20,0x00,0x8f,0x4d]
+ btlr 4*cr3+un
+# CHECK-BE: bclr 12, 16, 0 # encoding: [0x4d,0x90,0x00,0x20]
+# CHECK-LE: bclr 12, 16, 0 # encoding: [0x20,0x00,0x90,0x4d]
+ btlr 4*cr4+lt
+# CHECK-BE: bclr 12, 17, 0 # encoding: [0x4d,0x91,0x00,0x20]
+# CHECK-LE: bclr 12, 17, 0 # encoding: [0x20,0x00,0x91,0x4d]
+ btlr 4*cr4+gt
+# CHECK-BE: bclr 12, 18, 0 # encoding: [0x4d,0x92,0x00,0x20]
+# CHECK-LE: bclr 12, 18, 0 # encoding: [0x20,0x00,0x92,0x4d]
+ btlr 4*cr4+eq
+# CHECK-BE: bclr 12, 19, 0 # encoding: [0x4d,0x93,0x00,0x20]
+# CHECK-LE: bclr 12, 19, 0 # encoding: [0x20,0x00,0x93,0x4d]
+ btlr 4*cr4+so
+# CHECK-BE: bclr 12, 19, 0 # encoding: [0x4d,0x93,0x00,0x20]
+# CHECK-LE: bclr 12, 19, 0 # encoding: [0x20,0x00,0x93,0x4d]
+ btlr 4*cr4+un
+# CHECK-BE: bclr 12, 20, 0 # encoding: [0x4d,0x94,0x00,0x20]
+# CHECK-LE: bclr 12, 20, 0 # encoding: [0x20,0x00,0x94,0x4d]
+ btlr 4*cr5+lt
+# CHECK-BE: bclr 12, 21, 0 # encoding: [0x4d,0x95,0x00,0x20]
+# CHECK-LE: bclr 12, 21, 0 # encoding: [0x20,0x00,0x95,0x4d]
+ btlr 4*cr5+gt
+# CHECK-BE: bclr 12, 22, 0 # encoding: [0x4d,0x96,0x00,0x20]
+# CHECK-LE: bclr 12, 22, 0 # encoding: [0x20,0x00,0x96,0x4d]
+ btlr 4*cr5+eq
+# CHECK-BE: bclr 12, 23, 0 # encoding: [0x4d,0x97,0x00,0x20]
+# CHECK-LE: bclr 12, 23, 0 # encoding: [0x20,0x00,0x97,0x4d]
+ btlr 4*cr5+so
+# CHECK-BE: bclr 12, 23, 0 # encoding: [0x4d,0x97,0x00,0x20]
+# CHECK-LE: bclr 12, 23, 0 # encoding: [0x20,0x00,0x97,0x4d]
+ btlr 4*cr5+un
+# CHECK-BE: bclr 12, 24, 0 # encoding: [0x4d,0x98,0x00,0x20]
+# CHECK-LE: bclr 12, 24, 0 # encoding: [0x20,0x00,0x98,0x4d]
+ btlr 4*cr6+lt
+# CHECK-BE: bclr 12, 25, 0 # encoding: [0x4d,0x99,0x00,0x20]
+# CHECK-LE: bclr 12, 25, 0 # encoding: [0x20,0x00,0x99,0x4d]
+ btlr 4*cr6+gt
+# CHECK-BE: bclr 12, 26, 0 # encoding: [0x4d,0x9a,0x00,0x20]
+# CHECK-LE: bclr 12, 26, 0 # encoding: [0x20,0x00,0x9a,0x4d]
+ btlr 4*cr6+eq
+# CHECK-BE: bclr 12, 27, 0 # encoding: [0x4d,0x9b,0x00,0x20]
+# CHECK-LE: bclr 12, 27, 0 # encoding: [0x20,0x00,0x9b,0x4d]
+ btlr 4*cr6+so
+# CHECK-BE: bclr 12, 27, 0 # encoding: [0x4d,0x9b,0x00,0x20]
+# CHECK-LE: bclr 12, 27, 0 # encoding: [0x20,0x00,0x9b,0x4d]
+ btlr 4*cr6+un
+# CHECK-BE: bclr 12, 28, 0 # encoding: [0x4d,0x9c,0x00,0x20]
+# CHECK-LE: bclr 12, 28, 0 # encoding: [0x20,0x00,0x9c,0x4d]
+ btlr 4*cr7+lt
+# CHECK-BE: bclr 12, 29, 0 # encoding: [0x4d,0x9d,0x00,0x20]
+# CHECK-LE: bclr 12, 29, 0 # encoding: [0x20,0x00,0x9d,0x4d]
+ btlr 4*cr7+gt
+# CHECK-BE: bclr 12, 30, 0 # encoding: [0x4d,0x9e,0x00,0x20]
+# CHECK-LE: bclr 12, 30, 0 # encoding: [0x20,0x00,0x9e,0x4d]
+ btlr 4*cr7+eq
+# CHECK-BE: bclr 12, 31, 0 # encoding: [0x4d,0x9f,0x00,0x20]
+# CHECK-LE: bclr 12, 31, 0 # encoding: [0x20,0x00,0x9f,0x4d]
+ btlr 4*cr7+so
+# CHECK-BE: bclr 12, 31, 0 # encoding: [0x4d,0x9f,0x00,0x20]
+# CHECK-LE: bclr 12, 31, 0 # encoding: [0x20,0x00,0x9f,0x4d]
+ btlr 4*cr7+un
# Branch mnemonics
-# CHECK: blr # encoding: [0x4e,0x80,0x00,0x20]
- blr
-# CHECK: bctr # encoding: [0x4e,0x80,0x04,0x20]
- bctr
-# CHECK: blrl # encoding: [0x4e,0x80,0x00,0x21]
- blrl
-# CHECK: bctrl # encoding: [0x4e,0x80,0x04,0x21]
- bctrl
-
-# CHECK: bc 12, 2, target # encoding: [0x41,0x82,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bt 2, target
-# CHECK: bca 12, 2, target # encoding: [0x41,0x82,A,0bAAAAAA10]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bta 2, target
-# CHECK: bclr 12, 2, 0 # encoding: [0x4d,0x82,0x00,0x20]
- btlr 2
-# CHECK: bcctr 12, 2, 0 # encoding: [0x4d,0x82,0x04,0x20]
- btctr 2
-# CHECK: bcl 12, 2, target # encoding: [0x41,0x82,A,0bAAAAAA01]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- btl 2, target
-# CHECK: bcla 12, 2, target # encoding: [0x41,0x82,A,0bAAAAAA11]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- btla 2, target
-# CHECK: bclrl 12, 2, 0 # encoding: [0x4d,0x82,0x00,0x21]
- btlrl 2
-# CHECK: bcctrl 12, 2, 0 # encoding: [0x4d,0x82,0x04,0x21]
- btctrl 2
-
-# CHECK: bc 15, 2, target # encoding: [0x41,0xe2,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bt+ 2, target
-# CHECK: bca 15, 2, target # encoding: [0x41,0xe2,A,0bAAAAAA10]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bta+ 2, target
-# CHECK: bclr 15, 2, 0 # encoding: [0x4d,0xe2,0x00,0x20]
- btlr+ 2
-# CHECK: bcctr 15, 2, 0 # encoding: [0x4d,0xe2,0x04,0x20]
- btctr+ 2
-# CHECK: bcl 15, 2, target # encoding: [0x41,0xe2,A,0bAAAAAA01]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- btl+ 2, target
-# CHECK: bcla 15, 2, target # encoding: [0x41,0xe2,A,0bAAAAAA11]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- btla+ 2, target
-# CHECK: bclrl 15, 2, 0 # encoding: [0x4d,0xe2,0x00,0x21]
- btlrl+ 2
-# CHECK: bcctrl 15, 2, 0 # encoding: [0x4d,0xe2,0x04,0x21]
- btctrl+ 2
-
-# CHECK: bc 14, 2, target # encoding: [0x41,0xc2,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bt- 2, target
-# CHECK: bca 14, 2, target # encoding: [0x41,0xc2,A,0bAAAAAA10]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bta- 2, target
-# CHECK: bclr 14, 2, 0 # encoding: [0x4d,0xc2,0x00,0x20]
- btlr- 2
-# CHECK: bcctr 14, 2, 0 # encoding: [0x4d,0xc2,0x04,0x20]
- btctr- 2
-# CHECK: bcl 14, 2, target # encoding: [0x41,0xc2,A,0bAAAAAA01]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- btl- 2, target
-# CHECK: bcla 14, 2, target # encoding: [0x41,0xc2,A,0bAAAAAA11]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- btla- 2, target
-# CHECK: bclrl 14, 2, 0 # encoding: [0x4d,0xc2,0x00,0x21]
- btlrl- 2
-# CHECK: bcctrl 14, 2, 0 # encoding: [0x4d,0xc2,0x04,0x21]
- btctrl- 2
-
-# CHECK: bc 4, 2, target # encoding: [0x40,0x82,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bf 2, target
-# CHECK: bca 4, 2, target # encoding: [0x40,0x82,A,0bAAAAAA10]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bfa 2, target
-# CHECK: bclr 4, 2, 0 # encoding: [0x4c,0x82,0x00,0x20]
- bflr 2
-# CHECK: bcctr 4, 2, 0 # encoding: [0x4c,0x82,0x04,0x20]
- bfctr 2
-# CHECK: bcl 4, 2, target # encoding: [0x40,0x82,A,0bAAAAAA01]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bfl 2, target
-# CHECK: bcla 4, 2, target # encoding: [0x40,0x82,A,0bAAAAAA11]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bfla 2, target
-# CHECK: bclrl 4, 2, 0 # encoding: [0x4c,0x82,0x00,0x21]
- bflrl 2
-# CHECK: bcctrl 4, 2, 0 # encoding: [0x4c,0x82,0x04,0x21]
- bfctrl 2
-
-# CHECK: bc 7, 2, target # encoding: [0x40,0xe2,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bf+ 2, target
-# CHECK: bca 7, 2, target # encoding: [0x40,0xe2,A,0bAAAAAA10]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bfa+ 2, target
-# CHECK: bclr 7, 2, 0 # encoding: [0x4c,0xe2,0x00,0x20]
- bflr+ 2
-# CHECK: bcctr 7, 2, 0 # encoding: [0x4c,0xe2,0x04,0x20]
- bfctr+ 2
-# CHECK: bcl 7, 2, target # encoding: [0x40,0xe2,A,0bAAAAAA01]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bfl+ 2, target
-# CHECK: bcla 7, 2, target # encoding: [0x40,0xe2,A,0bAAAAAA11]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bfla+ 2, target
-# CHECK: bclrl 7, 2, 0 # encoding: [0x4c,0xe2,0x00,0x21]
- bflrl+ 2
-# CHECK: bcctrl 7, 2, 0 # encoding: [0x4c,0xe2,0x04,0x21]
- bfctrl+ 2
-
-# CHECK: bc 6, 2, target # encoding: [0x40,0xc2,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bf- 2, target
-# CHECK: bca 6, 2, target # encoding: [0x40,0xc2,A,0bAAAAAA10]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bfa- 2, target
-# CHECK: bclr 6, 2, 0 # encoding: [0x4c,0xc2,0x00,0x20]
- bflr- 2
-# CHECK: bcctr 6, 2, 0 # encoding: [0x4c,0xc2,0x04,0x20]
- bfctr- 2
-# CHECK: bcl 6, 2, target # encoding: [0x40,0xc2,A,0bAAAAAA01]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bfl- 2, target
-# CHECK: bcla 6, 2, target # encoding: [0x40,0xc2,A,0bAAAAAA11]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bfla- 2, target
-# CHECK: bclrl 6, 2, 0 # encoding: [0x4c,0xc2,0x00,0x21]
- bflrl- 2
-# CHECK: bcctrl 6, 2, 0 # encoding: [0x4c,0xc2,0x04,0x21]
- bfctrl- 2
-
-# CHECK: bdnz target # encoding: [0x42,0x00,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bdnz target
-# CHECK: bdnza target # encoding: [0x42,0x00,A,0bAAAAAA10]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bdnza target
-# CHECK: bdnzlr # encoding: [0x4e,0x00,0x00,0x20]
- bdnzlr
-# CHECK: bdnzl target # encoding: [0x42,0x00,A,0bAAAAAA01]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bdnzl target
-# CHECK: bdnzla target # encoding: [0x42,0x00,A,0bAAAAAA11]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bdnzla target
-# CHECK: bdnzlrl # encoding: [0x4e,0x00,0x00,0x21]
- bdnzlrl
-
-# CHECK: bdnz+ target # encoding: [0x43,0x20,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bdnz+ target
-# CHECK: bdnza+ target # encoding: [0x43,0x20,A,0bAAAAAA10]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bdnza+ target
-# CHECK: bdnzlr+ # encoding: [0x4f,0x20,0x00,0x20]
- bdnzlr+
-# CHECK: bdnzl+ target # encoding: [0x43,0x20,A,0bAAAAAA01]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bdnzl+ target
-# CHECK: bdnzla+ target # encoding: [0x43,0x20,A,0bAAAAAA11]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bdnzla+ target
-# CHECK: bdnzlrl+ # encoding: [0x4f,0x20,0x00,0x21]
- bdnzlrl+
-
-# CHECK: bdnz- target # encoding: [0x43,0x00,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bdnz- target
-# CHECK: bdnza- target # encoding: [0x43,0x00,A,0bAAAAAA10]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bdnza- target
-# CHECK: bdnzlr- # encoding: [0x4f,0x00,0x00,0x20]
- bdnzlr-
-# CHECK: bdnzl- target # encoding: [0x43,0x00,A,0bAAAAAA01]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bdnzl- target
-# CHECK: bdnzla- target # encoding: [0x43,0x00,A,0bAAAAAA11]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bdnzla- target
-# CHECK: bdnzlrl- # encoding: [0x4f,0x00,0x00,0x21]
- bdnzlrl-
-
-# CHECK: bc 8, 2, target # encoding: [0x41,0x02,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bdnzt 2, target
-# CHECK: bca 8, 2, target # encoding: [0x41,0x02,A,0bAAAAAA10]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bdnzta 2, target
-# CHECK: bclr 8, 2, 0 # encoding: [0x4d,0x02,0x00,0x20]
- bdnztlr 2
-# CHECK: bcl 8, 2, target # encoding: [0x41,0x02,A,0bAAAAAA01]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bdnztl 2, target
-# CHECK: bcla 8, 2, target # encoding: [0x41,0x02,A,0bAAAAAA11]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bdnztla 2, target
-# CHECK: bclrl 8, 2, 0 # encoding: [0x4d,0x02,0x00,0x21]
- bdnztlrl 2
-
-# CHECK: bc 0, 2, target # encoding: [0x40,0x02,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bdnzf 2, target
-# CHECK: bca 0, 2, target # encoding: [0x40,0x02,A,0bAAAAAA10]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bdnzfa 2, target
-# CHECK: bclr 0, 2, 0 # encoding: [0x4c,0x02,0x00,0x20]
- bdnzflr 2
-# CHECK: bcl 0, 2, target # encoding: [0x40,0x02,A,0bAAAAAA01]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bdnzfl 2, target
-# CHECK: bcla 0, 2, target # encoding: [0x40,0x02,A,0bAAAAAA11]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bdnzfla 2, target
-# CHECK: bclrl 0, 2, 0 # encoding: [0x4c,0x02,0x00,0x21]
- bdnzflrl 2
-
-# CHECK: bdz target # encoding: [0x42,0x40,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bdz target
-# CHECK: bdza target # encoding: [0x42,0x40,A,0bAAAAAA10]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bdza target
-# CHECK: bdzlr # encoding: [0x4e,0x40,0x00,0x20]
- bdzlr
-# CHECK: bdzl target # encoding: [0x42,0x40,A,0bAAAAAA01]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bdzl target
-# CHECK: bdzla target # encoding: [0x42,0x40,A,0bAAAAAA11]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bdzla target
-# CHECK: bdzlrl # encoding: [0x4e,0x40,0x00,0x21]
- bdzlrl
-
-# CHECK: bdz+ target # encoding: [0x43,0x60,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bdz+ target
-# CHECK: bdza+ target # encoding: [0x43,0x60,A,0bAAAAAA10]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bdza+ target
-# CHECK: bdzlr+ # encoding: [0x4f,0x60,0x00,0x20]
- bdzlr+
-# CHECK: bdzl+ target # encoding: [0x43,0x60,A,0bAAAAAA01]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bdzl+ target
-# CHECK: bdzla+ target # encoding: [0x43,0x60,A,0bAAAAAA11]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bdzla+ target
-# CHECK: bdzlrl+ # encoding: [0x4f,0x60,0x00,0x21]
- bdzlrl+
-
-# CHECK: bdz- target # encoding: [0x43,0x40,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bdz- target
-# CHECK: bdza- target # encoding: [0x43,0x40,A,0bAAAAAA10]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bdza- target
-# CHECK: bdzlr- # encoding: [0x4f,0x40,0x00,0x20]
- bdzlr-
-# CHECK: bdzl- target # encoding: [0x43,0x40,A,0bAAAAAA01]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bdzl- target
-# CHECK: bdzla- target # encoding: [0x43,0x40,A,0bAAAAAA11]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bdzla- target
-# CHECK: bdzlrl- # encoding: [0x4f,0x40,0x00,0x21]
- bdzlrl-
-
-# CHECK: bc 10, 2, target # encoding: [0x41,0x42,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bdzt 2, target
-# CHECK: bca 10, 2, target # encoding: [0x41,0x42,A,0bAAAAAA10]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bdzta 2, target
-# CHECK: bclr 10, 2, 0 # encoding: [0x4d,0x42,0x00,0x20]
- bdztlr 2
-# CHECK: bcl 10, 2, target # encoding: [0x41,0x42,A,0bAAAAAA01]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bdztl 2, target
-# CHECK: bcla 10, 2, target # encoding: [0x41,0x42,A,0bAAAAAA11]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bdztla 2, target
-# CHECK: bclrl 10, 2, 0 # encoding: [0x4d,0x42,0x00,0x21]
- bdztlrl 2
-
-# CHECK: bc 2, 2, target # encoding: [0x40,0x42,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bdzf 2, target
-# CHECK: bca 2, 2, target # encoding: [0x40,0x42,A,0bAAAAAA10]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bdzfa 2, target
-# CHECK: bclr 2, 2, 0 # encoding: [0x4c,0x42,0x00,0x20]
- bdzflr 2
-# CHECK: bcl 2, 2, target # encoding: [0x40,0x42,A,0bAAAAAA01]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bdzfl 2, target
-# CHECK: bcla 2, 2, target # encoding: [0x40,0x42,A,0bAAAAAA11]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bdzfla 2, target
-# CHECK: bclrl 2, 2, 0 # encoding: [0x4c,0x42,0x00,0x21]
- bdzflrl 2
-
-# CHECK: blt 2, target # encoding: [0x41,0x88,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- blt 2, target
-# CHECK: blt 0, target # encoding: [0x41,0x80,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- blt target
-# CHECK: blta 2, target # encoding: [0x41,0x88,A,0bAAAAAA10]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- blta 2, target
-# CHECK: blta 0, target # encoding: [0x41,0x80,A,0bAAAAAA10]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- blta target
-# CHECK: bltlr 2 # encoding: [0x4d,0x88,0x00,0x20]
- bltlr 2
-# CHECK: bltlr 0 # encoding: [0x4d,0x80,0x00,0x20]
- bltlr
-# CHECK: bltctr 2 # encoding: [0x4d,0x88,0x04,0x20]
- bltctr 2
-# CHECK: bltctr 0 # encoding: [0x4d,0x80,0x04,0x20]
- bltctr
-# CHECK: bltl 2, target # encoding: [0x41,0x88,A,0bAAAAAA01]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bltl 2, target
-# CHECK: bltl 0, target # encoding: [0x41,0x80,A,0bAAAAAA01]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bltl target
-# CHECK: bltla 2, target # encoding: [0x41,0x88,A,0bAAAAAA11]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bltla 2, target
-# CHECK: bltla 0, target # encoding: [0x41,0x80,A,0bAAAAAA11]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bltla target
-# CHECK: bltlrl 2 # encoding: [0x4d,0x88,0x00,0x21]
- bltlrl 2
-# CHECK: bltlrl 0 # encoding: [0x4d,0x80,0x00,0x21]
- bltlrl
-# CHECK: bltctrl 2 # encoding: [0x4d,0x88,0x04,0x21]
- bltctrl 2
-# CHECK: bltctrl 0 # encoding: [0x4d,0x80,0x04,0x21]
- bltctrl
-
-# CHECK: blt+ 2, target # encoding: [0x41,0xe8,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- blt+ 2, target
-# CHECK: blt+ 0, target # encoding: [0x41,0xe0,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- blt+ target
-# CHECK: blta+ 2, target # encoding: [0x41,0xe8,A,0bAAAAAA10]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- blta+ 2, target
-# CHECK: blta+ 0, target # encoding: [0x41,0xe0,A,0bAAAAAA10]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- blta+ target
-# CHECK: bltlr+ 2 # encoding: [0x4d,0xe8,0x00,0x20]
- bltlr+ 2
-# CHECK: bltlr+ 0 # encoding: [0x4d,0xe0,0x00,0x20]
- bltlr+
-# CHECK: bltctr+ 2 # encoding: [0x4d,0xe8,0x04,0x20]
- bltctr+ 2
-# CHECK: bltctr+ 0 # encoding: [0x4d,0xe0,0x04,0x20]
- bltctr+
-# CHECK: bltl+ 2, target # encoding: [0x41,0xe8,A,0bAAAAAA01]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bltl+ 2, target
-# CHECK: bltl+ 0, target # encoding: [0x41,0xe0,A,0bAAAAAA01]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bltl+ target
-# CHECK: bltla+ 2, target # encoding: [0x41,0xe8,A,0bAAAAAA11]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bltla+ 2, target
-# CHECK: bltla+ 0, target # encoding: [0x41,0xe0,A,0bAAAAAA11]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bltla+ target
-# CHECK: bltlrl+ 2 # encoding: [0x4d,0xe8,0x00,0x21]
- bltlrl+ 2
-# CHECK: bltlrl+ 0 # encoding: [0x4d,0xe0,0x00,0x21]
- bltlrl+
-# CHECK: bltctrl+ 2 # encoding: [0x4d,0xe8,0x04,0x21]
- bltctrl+ 2
-# CHECK: bltctrl+ 0 # encoding: [0x4d,0xe0,0x04,0x21]
- bltctrl+
-
-# CHECK: blt- 2, target # encoding: [0x41,0xc8,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- blt- 2, target
-# CHECK: blt- 0, target # encoding: [0x41,0xc0,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- blt- target
-# CHECK: blta- 2, target # encoding: [0x41,0xc8,A,0bAAAAAA10]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- blta- 2, target
-# CHECK: blta- 0, target # encoding: [0x41,0xc0,A,0bAAAAAA10]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- blta- target
-# CHECK: bltlr- 2 # encoding: [0x4d,0xc8,0x00,0x20]
- bltlr- 2
-# CHECK: bltlr- 0 # encoding: [0x4d,0xc0,0x00,0x20]
- bltlr-
-# CHECK: bltctr- 2 # encoding: [0x4d,0xc8,0x04,0x20]
- bltctr- 2
-# CHECK: bltctr- 0 # encoding: [0x4d,0xc0,0x04,0x20]
- bltctr-
-# CHECK: bltl- 2, target # encoding: [0x41,0xc8,A,0bAAAAAA01]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bltl- 2, target
-# CHECK: bltl- 0, target # encoding: [0x41,0xc0,A,0bAAAAAA01]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bltl- target
-# CHECK: bltla- 2, target # encoding: [0x41,0xc8,A,0bAAAAAA11]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bltla- 2, target
-# CHECK: bltla- 0, target # encoding: [0x41,0xc0,A,0bAAAAAA11]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bltla- target
-# CHECK: bltlrl- 2 # encoding: [0x4d,0xc8,0x00,0x21]
- bltlrl- 2
-# CHECK: bltlrl- 0 # encoding: [0x4d,0xc0,0x00,0x21]
- bltlrl-
-# CHECK: bltctrl- 2 # encoding: [0x4d,0xc8,0x04,0x21]
- bltctrl- 2
-# CHECK: bltctrl- 0 # encoding: [0x4d,0xc0,0x04,0x21]
- bltctrl-
-
-# CHECK: ble 2, target # encoding: [0x40,0x89,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- ble 2, target
-# CHECK: ble 0, target # encoding: [0x40,0x81,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- ble target
-# CHECK: blea 2, target # encoding: [0x40,0x89,A,0bAAAAAA10]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- blea 2, target
-# CHECK: blea 0, target # encoding: [0x40,0x81,A,0bAAAAAA10]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- blea target
-# CHECK: blelr 2 # encoding: [0x4c,0x89,0x00,0x20]
- blelr 2
-# CHECK: blelr 0 # encoding: [0x4c,0x81,0x00,0x20]
- blelr
-# CHECK: blectr 2 # encoding: [0x4c,0x89,0x04,0x20]
- blectr 2
-# CHECK: blectr 0 # encoding: [0x4c,0x81,0x04,0x20]
- blectr
-# CHECK: blel 2, target # encoding: [0x40,0x89,A,0bAAAAAA01]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- blel 2, target
-# CHECK: blel 0, target # encoding: [0x40,0x81,A,0bAAAAAA01]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- blel target
-# CHECK: blela 2, target # encoding: [0x40,0x89,A,0bAAAAAA11]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- blela 2, target
-# CHECK: blela 0, target # encoding: [0x40,0x81,A,0bAAAAAA11]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- blela target
-# CHECK: blelrl 2 # encoding: [0x4c,0x89,0x00,0x21]
- blelrl 2
-# CHECK: blelrl 0 # encoding: [0x4c,0x81,0x00,0x21]
- blelrl
-# CHECK: blectrl 2 # encoding: [0x4c,0x89,0x04,0x21]
- blectrl 2
-# CHECK: blectrl 0 # encoding: [0x4c,0x81,0x04,0x21]
- blectrl
-
-# CHECK: ble+ 2, target # encoding: [0x40,0xe9,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- ble+ 2, target
-# CHECK: ble+ 0, target # encoding: [0x40,0xe1,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- ble+ target
-# CHECK: blea+ 2, target # encoding: [0x40,0xe9,A,0bAAAAAA10]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- blea+ 2, target
-# CHECK: blea+ 0, target # encoding: [0x40,0xe1,A,0bAAAAAA10]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- blea+ target
-# CHECK: blelr+ 2 # encoding: [0x4c,0xe9,0x00,0x20]
- blelr+ 2
-# CHECK: blelr+ 0 # encoding: [0x4c,0xe1,0x00,0x20]
- blelr+
-# CHECK: blectr+ 2 # encoding: [0x4c,0xe9,0x04,0x20]
- blectr+ 2
-# CHECK: blectr+ 0 # encoding: [0x4c,0xe1,0x04,0x20]
- blectr+
-# CHECK: blel+ 2, target # encoding: [0x40,0xe9,A,0bAAAAAA01]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- blel+ 2, target
-# CHECK: blel+ 0, target # encoding: [0x40,0xe1,A,0bAAAAAA01]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- blel+ target
-# CHECK: blela+ 2, target # encoding: [0x40,0xe9,A,0bAAAAAA11]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- blela+ 2, target
-# CHECK: blela+ 0, target # encoding: [0x40,0xe1,A,0bAAAAAA11]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- blela+ target
-# CHECK: blelrl+ 2 # encoding: [0x4c,0xe9,0x00,0x21]
- blelrl+ 2
-# CHECK: blelrl+ 0 # encoding: [0x4c,0xe1,0x00,0x21]
- blelrl+
-# CHECK: blectrl+ 2 # encoding: [0x4c,0xe9,0x04,0x21]
- blectrl+ 2
-# CHECK: blectrl+ 0 # encoding: [0x4c,0xe1,0x04,0x21]
- blectrl+
-
-# CHECK: ble- 2, target # encoding: [0x40,0xc9,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- ble- 2, target
-# CHECK: ble- 0, target # encoding: [0x40,0xc1,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- ble- target
-# CHECK: blea- 2, target # encoding: [0x40,0xc9,A,0bAAAAAA10]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- blea- 2, target
-# CHECK: blea- 0, target # encoding: [0x40,0xc1,A,0bAAAAAA10]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- blea- target
-# CHECK: blelr- 2 # encoding: [0x4c,0xc9,0x00,0x20]
- blelr- 2
-# CHECK: blelr- 0 # encoding: [0x4c,0xc1,0x00,0x20]
- blelr-
-# CHECK: blectr- 2 # encoding: [0x4c,0xc9,0x04,0x20]
- blectr- 2
-# CHECK: blectr- 0 # encoding: [0x4c,0xc1,0x04,0x20]
- blectr-
-# CHECK: blel- 2, target # encoding: [0x40,0xc9,A,0bAAAAAA01]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- blel- 2, target
-# CHECK: blel- 0, target # encoding: [0x40,0xc1,A,0bAAAAAA01]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- blel- target
-# CHECK: blela- 2, target # encoding: [0x40,0xc9,A,0bAAAAAA11]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- blela- 2, target
-# CHECK: blela- 0, target # encoding: [0x40,0xc1,A,0bAAAAAA11]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- blela- target
-# CHECK: blelrl- 2 # encoding: [0x4c,0xc9,0x00,0x21]
- blelrl- 2
-# CHECK: blelrl- 0 # encoding: [0x4c,0xc1,0x00,0x21]
- blelrl-
-# CHECK: blectrl- 2 # encoding: [0x4c,0xc9,0x04,0x21]
- blectrl- 2
-# CHECK: blectrl- 0 # encoding: [0x4c,0xc1,0x04,0x21]
- blectrl-
-
-# CHECK: beq 2, target # encoding: [0x41,0x8a,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- beq 2, target
-# CHECK: beq 0, target # encoding: [0x41,0x82,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- beq target
-# CHECK: beqa 2, target # encoding: [0x41,0x8a,A,0bAAAAAA10]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- beqa 2, target
-# CHECK: beqa 0, target # encoding: [0x41,0x82,A,0bAAAAAA10]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- beqa target
-# CHECK: beqlr 2 # encoding: [0x4d,0x8a,0x00,0x20]
- beqlr 2
-# CHECK: beqlr 0 # encoding: [0x4d,0x82,0x00,0x20]
- beqlr
-# CHECK: beqctr 2 # encoding: [0x4d,0x8a,0x04,0x20]
- beqctr 2
-# CHECK: beqctr 0 # encoding: [0x4d,0x82,0x04,0x20]
- beqctr
-# CHECK: beql 2, target # encoding: [0x41,0x8a,A,0bAAAAAA01]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- beql 2, target
-# CHECK: beql 0, target # encoding: [0x41,0x82,A,0bAAAAAA01]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- beql target
-# CHECK: beqla 2, target # encoding: [0x41,0x8a,A,0bAAAAAA11]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- beqla 2, target
-# CHECK: beqla 0, target # encoding: [0x41,0x82,A,0bAAAAAA11]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- beqla target
-# CHECK: beqlrl 2 # encoding: [0x4d,0x8a,0x00,0x21]
- beqlrl 2
-# CHECK: beqlrl 0 # encoding: [0x4d,0x82,0x00,0x21]
- beqlrl
-# CHECK: beqctrl 2 # encoding: [0x4d,0x8a,0x04,0x21]
- beqctrl 2
-# CHECK: beqctrl 0 # encoding: [0x4d,0x82,0x04,0x21]
- beqctrl
-
-# CHECK: beq+ 2, target # encoding: [0x41,0xea,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- beq+ 2, target
-# CHECK: beq+ 0, target # encoding: [0x41,0xe2,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- beq+ target
-# CHECK: beqa+ 2, target # encoding: [0x41,0xea,A,0bAAAAAA10]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- beqa+ 2, target
-# CHECK: beqa+ 0, target # encoding: [0x41,0xe2,A,0bAAAAAA10]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- beqa+ target
-# CHECK: beqlr+ 2 # encoding: [0x4d,0xea,0x00,0x20]
- beqlr+ 2
-# CHECK: beqlr+ 0 # encoding: [0x4d,0xe2,0x00,0x20]
- beqlr+
-# CHECK: beqctr+ 2 # encoding: [0x4d,0xea,0x04,0x20]
- beqctr+ 2
-# CHECK: beqctr+ 0 # encoding: [0x4d,0xe2,0x04,0x20]
- beqctr+
-# CHECK: beql+ 2, target # encoding: [0x41,0xea,A,0bAAAAAA01]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- beql+ 2, target
-# CHECK: beql+ 0, target # encoding: [0x41,0xe2,A,0bAAAAAA01]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- beql+ target
-# CHECK: beqla+ 2, target # encoding: [0x41,0xea,A,0bAAAAAA11]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- beqla+ 2, target
-# CHECK: beqla+ 0, target # encoding: [0x41,0xe2,A,0bAAAAAA11]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- beqla+ target
-# CHECK: beqlrl+ 2 # encoding: [0x4d,0xea,0x00,0x21]
- beqlrl+ 2
-# CHECK: beqlrl+ 0 # encoding: [0x4d,0xe2,0x00,0x21]
- beqlrl+
-# CHECK: beqctrl+ 2 # encoding: [0x4d,0xea,0x04,0x21]
- beqctrl+ 2
-# CHECK: beqctrl+ 0 # encoding: [0x4d,0xe2,0x04,0x21]
- beqctrl+
-
-# CHECK: beq- 2, target # encoding: [0x41,0xca,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- beq- 2, target
-# CHECK: beq- 0, target # encoding: [0x41,0xc2,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- beq- target
-# CHECK: beqa- 2, target # encoding: [0x41,0xca,A,0bAAAAAA10]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- beqa- 2, target
-# CHECK: beqa- 0, target # encoding: [0x41,0xc2,A,0bAAAAAA10]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- beqa- target
-# CHECK: beqlr- 2 # encoding: [0x4d,0xca,0x00,0x20]
- beqlr- 2
-# CHECK: beqlr- 0 # encoding: [0x4d,0xc2,0x00,0x20]
- beqlr-
-# CHECK: beqctr- 2 # encoding: [0x4d,0xca,0x04,0x20]
- beqctr- 2
-# CHECK: beqctr- 0 # encoding: [0x4d,0xc2,0x04,0x20]
- beqctr-
-# CHECK: beql- 2, target # encoding: [0x41,0xca,A,0bAAAAAA01]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- beql- 2, target
-# CHECK: beql- 0, target # encoding: [0x41,0xc2,A,0bAAAAAA01]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- beql- target
-# CHECK: beqla- 2, target # encoding: [0x41,0xca,A,0bAAAAAA11]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- beqla- 2, target
-# CHECK: beqla- 0, target # encoding: [0x41,0xc2,A,0bAAAAAA11]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- beqla- target
-# CHECK: beqlrl- 2 # encoding: [0x4d,0xca,0x00,0x21]
- beqlrl- 2
-# CHECK: beqlrl- 0 # encoding: [0x4d,0xc2,0x00,0x21]
- beqlrl-
-# CHECK: beqctrl- 2 # encoding: [0x4d,0xca,0x04,0x21]
- beqctrl- 2
-# CHECK: beqctrl- 0 # encoding: [0x4d,0xc2,0x04,0x21]
- beqctrl-
-
-# CHECK: bge 2, target # encoding: [0x40,0x88,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bge 2, target
-# CHECK: bge 0, target # encoding: [0x40,0x80,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bge target
-# CHECK: bgea 2, target # encoding: [0x40,0x88,A,0bAAAAAA10]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bgea 2, target
-# CHECK: bgea 0, target # encoding: [0x40,0x80,A,0bAAAAAA10]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bgea target
-# CHECK: bgelr 2 # encoding: [0x4c,0x88,0x00,0x20]
- bgelr 2
-# CHECK: bgelr 0 # encoding: [0x4c,0x80,0x00,0x20]
- bgelr
-# CHECK: bgectr 2 # encoding: [0x4c,0x88,0x04,0x20]
- bgectr 2
-# CHECK: bgectr 0 # encoding: [0x4c,0x80,0x04,0x20]
- bgectr
-# CHECK: bgel 2, target # encoding: [0x40,0x88,A,0bAAAAAA01]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bgel 2, target
-# CHECK: bgel 0, target # encoding: [0x40,0x80,A,0bAAAAAA01]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bgel target
-# CHECK: bgela 2, target # encoding: [0x40,0x88,A,0bAAAAAA11]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bgela 2, target
-# CHECK: bgela 0, target # encoding: [0x40,0x80,A,0bAAAAAA11]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bgela target
-# CHECK: bgelrl 2 # encoding: [0x4c,0x88,0x00,0x21]
- bgelrl 2
-# CHECK: bgelrl 0 # encoding: [0x4c,0x80,0x00,0x21]
- bgelrl
-# CHECK: bgectrl 2 # encoding: [0x4c,0x88,0x04,0x21]
- bgectrl 2
-# CHECK: bgectrl 0 # encoding: [0x4c,0x80,0x04,0x21]
- bgectrl
-
-# CHECK: bge+ 2, target # encoding: [0x40,0xe8,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bge+ 2, target
-# CHECK: bge+ 0, target # encoding: [0x40,0xe0,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bge+ target
-# CHECK: bgea+ 2, target # encoding: [0x40,0xe8,A,0bAAAAAA10]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bgea+ 2, target
-# CHECK: bgea+ 0, target # encoding: [0x40,0xe0,A,0bAAAAAA10]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bgea+ target
-# CHECK: bgelr+ 2 # encoding: [0x4c,0xe8,0x00,0x20]
- bgelr+ 2
-# CHECK: bgelr+ 0 # encoding: [0x4c,0xe0,0x00,0x20]
- bgelr+
-# CHECK: bgectr+ 2 # encoding: [0x4c,0xe8,0x04,0x20]
- bgectr+ 2
-# CHECK: bgectr+ 0 # encoding: [0x4c,0xe0,0x04,0x20]
- bgectr+
-# CHECK: bgel+ 2, target # encoding: [0x40,0xe8,A,0bAAAAAA01]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bgel+ 2, target
-# CHECK: bgel+ 0, target # encoding: [0x40,0xe0,A,0bAAAAAA01]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bgel+ target
-# CHECK: bgela+ 2, target # encoding: [0x40,0xe8,A,0bAAAAAA11]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bgela+ 2, target
-# CHECK: bgela+ 0, target # encoding: [0x40,0xe0,A,0bAAAAAA11]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bgela+ target
-# CHECK: bgelrl+ 2 # encoding: [0x4c,0xe8,0x00,0x21]
- bgelrl+ 2
-# CHECK: bgelrl+ 0 # encoding: [0x4c,0xe0,0x00,0x21]
- bgelrl+
-# CHECK: bgectrl+ 2 # encoding: [0x4c,0xe8,0x04,0x21]
- bgectrl+ 2
-# CHECK: bgectrl+ 0 # encoding: [0x4c,0xe0,0x04,0x21]
- bgectrl+
-
-# CHECK: bge- 2, target # encoding: [0x40,0xc8,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bge- 2, target
-# CHECK: bge- 0, target # encoding: [0x40,0xc0,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bge- target
-# CHECK: bgea- 2, target # encoding: [0x40,0xc8,A,0bAAAAAA10]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bgea- 2, target
-# CHECK: bgea- 0, target # encoding: [0x40,0xc0,A,0bAAAAAA10]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bgea- target
-# CHECK: bgelr- 2 # encoding: [0x4c,0xc8,0x00,0x20]
- bgelr- 2
-# CHECK: bgelr- 0 # encoding: [0x4c,0xc0,0x00,0x20]
- bgelr-
-# CHECK: bgectr- 2 # encoding: [0x4c,0xc8,0x04,0x20]
- bgectr- 2
-# CHECK: bgectr- 0 # encoding: [0x4c,0xc0,0x04,0x20]
- bgectr-
-# CHECK: bgel- 2, target # encoding: [0x40,0xc8,A,0bAAAAAA01]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bgel- 2, target
-# CHECK: bgel- 0, target # encoding: [0x40,0xc0,A,0bAAAAAA01]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bgel- target
-# CHECK: bgela- 2, target # encoding: [0x40,0xc8,A,0bAAAAAA11]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bgela- 2, target
-# CHECK: bgela- 0, target # encoding: [0x40,0xc0,A,0bAAAAAA11]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bgela- target
-# CHECK: bgelrl- 2 # encoding: [0x4c,0xc8,0x00,0x21]
- bgelrl- 2
-# CHECK: bgelrl- 0 # encoding: [0x4c,0xc0,0x00,0x21]
- bgelrl-
-# CHECK: bgectrl- 2 # encoding: [0x4c,0xc8,0x04,0x21]
- bgectrl- 2
-# CHECK: bgectrl- 0 # encoding: [0x4c,0xc0,0x04,0x21]
- bgectrl-
-
-# CHECK: bgt 2, target # encoding: [0x41,0x89,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bgt 2, target
-# CHECK: bgt 0, target # encoding: [0x41,0x81,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bgt target
-# CHECK: bgta 2, target # encoding: [0x41,0x89,A,0bAAAAAA10]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bgta 2, target
-# CHECK: bgta 0, target # encoding: [0x41,0x81,A,0bAAAAAA10]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bgta target
-# CHECK: bgtlr 2 # encoding: [0x4d,0x89,0x00,0x20]
- bgtlr 2
-# CHECK: bgtlr 0 # encoding: [0x4d,0x81,0x00,0x20]
- bgtlr
-# CHECK: bgtctr 2 # encoding: [0x4d,0x89,0x04,0x20]
- bgtctr 2
-# CHECK: bgtctr 0 # encoding: [0x4d,0x81,0x04,0x20]
- bgtctr
-# CHECK: bgtl 2, target # encoding: [0x41,0x89,A,0bAAAAAA01]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bgtl 2, target
-# CHECK: bgtl 0, target # encoding: [0x41,0x81,A,0bAAAAAA01]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bgtl target
-# CHECK: bgtla 2, target # encoding: [0x41,0x89,A,0bAAAAAA11]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bgtla 2, target
-# CHECK: bgtla 0, target # encoding: [0x41,0x81,A,0bAAAAAA11]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bgtla target
-# CHECK: bgtlrl 2 # encoding: [0x4d,0x89,0x00,0x21]
- bgtlrl 2
-# CHECK: bgtlrl 0 # encoding: [0x4d,0x81,0x00,0x21]
- bgtlrl
-# CHECK: bgtctrl 2 # encoding: [0x4d,0x89,0x04,0x21]
- bgtctrl 2
-# CHECK: bgtctrl 0 # encoding: [0x4d,0x81,0x04,0x21]
- bgtctrl
-
-# CHECK: bgt+ 2, target # encoding: [0x41,0xe9,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bgt+ 2, target
-# CHECK: bgt+ 0, target # encoding: [0x41,0xe1,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bgt+ target
-# CHECK: bgta+ 2, target # encoding: [0x41,0xe9,A,0bAAAAAA10]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bgta+ 2, target
-# CHECK: bgta+ 0, target # encoding: [0x41,0xe1,A,0bAAAAAA10]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bgta+ target
-# CHECK: bgtlr+ 2 # encoding: [0x4d,0xe9,0x00,0x20]
- bgtlr+ 2
-# CHECK: bgtlr+ 0 # encoding: [0x4d,0xe1,0x00,0x20]
- bgtlr+
-# CHECK: bgtctr+ 2 # encoding: [0x4d,0xe9,0x04,0x20]
- bgtctr+ 2
-# CHECK: bgtctr+ 0 # encoding: [0x4d,0xe1,0x04,0x20]
- bgtctr+
-# CHECK: bgtl+ 2, target # encoding: [0x41,0xe9,A,0bAAAAAA01]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bgtl+ 2, target
-# CHECK: bgtl+ 0, target # encoding: [0x41,0xe1,A,0bAAAAAA01]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bgtl+ target
-# CHECK: bgtla+ 2, target # encoding: [0x41,0xe9,A,0bAAAAAA11]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bgtla+ 2, target
-# CHECK: bgtla+ 0, target # encoding: [0x41,0xe1,A,0bAAAAAA11]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bgtla+ target
-# CHECK: bgtlrl+ 2 # encoding: [0x4d,0xe9,0x00,0x21]
- bgtlrl+ 2
-# CHECK: bgtlrl+ 0 # encoding: [0x4d,0xe1,0x00,0x21]
- bgtlrl+
-# CHECK: bgtctrl+ 2 # encoding: [0x4d,0xe9,0x04,0x21]
- bgtctrl+ 2
-# CHECK: bgtctrl+ 0 # encoding: [0x4d,0xe1,0x04,0x21]
- bgtctrl+
-
-# CHECK: bgt- 2, target # encoding: [0x41,0xc9,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bgt- 2, target
-# CHECK: bgt- 0, target # encoding: [0x41,0xc1,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bgt- target
-# CHECK: bgta- 2, target # encoding: [0x41,0xc9,A,0bAAAAAA10]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bgta- 2, target
-# CHECK: bgta- 0, target # encoding: [0x41,0xc1,A,0bAAAAAA10]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bgta- target
-# CHECK: bgtlr- 2 # encoding: [0x4d,0xc9,0x00,0x20]
- bgtlr- 2
-# CHECK: bgtlr- 0 # encoding: [0x4d,0xc1,0x00,0x20]
- bgtlr-
-# CHECK: bgtctr- 2 # encoding: [0x4d,0xc9,0x04,0x20]
- bgtctr- 2
-# CHECK: bgtctr- 0 # encoding: [0x4d,0xc1,0x04,0x20]
- bgtctr-
-# CHECK: bgtl- 2, target # encoding: [0x41,0xc9,A,0bAAAAAA01]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bgtl- 2, target
-# CHECK: bgtl- 0, target # encoding: [0x41,0xc1,A,0bAAAAAA01]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bgtl- target
-# CHECK: bgtla- 2, target # encoding: [0x41,0xc9,A,0bAAAAAA11]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bgtla- 2, target
-# CHECK: bgtla- 0, target # encoding: [0x41,0xc1,A,0bAAAAAA11]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bgtla- target
-# CHECK: bgtlrl- 2 # encoding: [0x4d,0xc9,0x00,0x21]
- bgtlrl- 2
-# CHECK: bgtlrl- 0 # encoding: [0x4d,0xc1,0x00,0x21]
- bgtlrl-
-# CHECK: bgtctrl- 2 # encoding: [0x4d,0xc9,0x04,0x21]
- bgtctrl- 2
-# CHECK: bgtctrl- 0 # encoding: [0x4d,0xc1,0x04,0x21]
- bgtctrl-
-
-# CHECK: bge 2, target # encoding: [0x40,0x88,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bnl 2, target
-# CHECK: bge 0, target # encoding: [0x40,0x80,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bnl target
-# CHECK: bgea 2, target # encoding: [0x40,0x88,A,0bAAAAAA10]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bnla 2, target
-# CHECK: bgea 0, target # encoding: [0x40,0x80,A,0bAAAAAA10]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bnla target
-# CHECK: bgelr 2 # encoding: [0x4c,0x88,0x00,0x20]
- bnllr 2
-# CHECK: bgelr 0 # encoding: [0x4c,0x80,0x00,0x20]
- bnllr
-# CHECK: bgectr 2 # encoding: [0x4c,0x88,0x04,0x20]
- bnlctr 2
-# CHECK: bgectr 0 # encoding: [0x4c,0x80,0x04,0x20]
- bnlctr
-# CHECK: bgel 2, target # encoding: [0x40,0x88,A,0bAAAAAA01]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bnll 2, target
-# CHECK: bgel 0, target # encoding: [0x40,0x80,A,0bAAAAAA01]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bnll target
-# CHECK: bgela 2, target # encoding: [0x40,0x88,A,0bAAAAAA11]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bnlla 2, target
-# CHECK: bgela 0, target # encoding: [0x40,0x80,A,0bAAAAAA11]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bnlla target
-# CHECK: bgelrl 2 # encoding: [0x4c,0x88,0x00,0x21]
- bnllrl 2
-# CHECK: bgelrl 0 # encoding: [0x4c,0x80,0x00,0x21]
- bnllrl
-# CHECK: bgectrl 2 # encoding: [0x4c,0x88,0x04,0x21]
- bnlctrl 2
-# CHECK: bgectrl 0 # encoding: [0x4c,0x80,0x04,0x21]
- bnlctrl
-
-# CHECK: bge+ 2, target # encoding: [0x40,0xe8,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bnl+ 2, target
-# CHECK: bge+ 0, target # encoding: [0x40,0xe0,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bnl+ target
-# CHECK: bgea+ 2, target # encoding: [0x40,0xe8,A,0bAAAAAA10]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bnla+ 2, target
-# CHECK: bgea+ 0, target # encoding: [0x40,0xe0,A,0bAAAAAA10]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bnla+ target
-# CHECK: bgelr+ 2 # encoding: [0x4c,0xe8,0x00,0x20]
- bnllr+ 2
-# CHECK: bgelr+ 0 # encoding: [0x4c,0xe0,0x00,0x20]
- bnllr+
-# CHECK: bgectr+ 2 # encoding: [0x4c,0xe8,0x04,0x20]
- bnlctr+ 2
-# CHECK: bgectr+ 0 # encoding: [0x4c,0xe0,0x04,0x20]
- bnlctr+
-# CHECK: bgel+ 2, target # encoding: [0x40,0xe8,A,0bAAAAAA01]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bnll+ 2, target
-# CHECK: bgel+ 0, target # encoding: [0x40,0xe0,A,0bAAAAAA01]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bnll+ target
-# CHECK: bgela+ 2, target # encoding: [0x40,0xe8,A,0bAAAAAA11]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bnlla+ 2, target
-# CHECK: bgela+ 0, target # encoding: [0x40,0xe0,A,0bAAAAAA11]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bnlla+ target
-# CHECK: bgelrl+ 2 # encoding: [0x4c,0xe8,0x00,0x21]
- bnllrl+ 2
-# CHECK: bgelrl+ 0 # encoding: [0x4c,0xe0,0x00,0x21]
- bnllrl+
-# CHECK: bgectrl+ 2 # encoding: [0x4c,0xe8,0x04,0x21]
- bnlctrl+ 2
-# CHECK: bgectrl+ 0 # encoding: [0x4c,0xe0,0x04,0x21]
- bnlctrl+
-
-# CHECK: bge- 2, target # encoding: [0x40,0xc8,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bnl- 2, target
-# CHECK: bge- 0, target # encoding: [0x40,0xc0,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bnl- target
-# CHECK: bgea- 2, target # encoding: [0x40,0xc8,A,0bAAAAAA10]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bnla- 2, target
-# CHECK: bgea- 0, target # encoding: [0x40,0xc0,A,0bAAAAAA10]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bnla- target
-# CHECK: bgelr- 2 # encoding: [0x4c,0xc8,0x00,0x20]
- bnllr- 2
-# CHECK: bgelr- 0 # encoding: [0x4c,0xc0,0x00,0x20]
- bnllr-
-# CHECK: bgectr- 2 # encoding: [0x4c,0xc8,0x04,0x20]
- bnlctr- 2
-# CHECK: bgectr- 0 # encoding: [0x4c,0xc0,0x04,0x20]
- bnlctr-
-# CHECK: bgel- 2, target # encoding: [0x40,0xc8,A,0bAAAAAA01]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bnll- 2, target
-# CHECK: bgel- 0, target # encoding: [0x40,0xc0,A,0bAAAAAA01]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bnll- target
-# CHECK: bgela- 2, target # encoding: [0x40,0xc8,A,0bAAAAAA11]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bnlla- 2, target
-# CHECK: bgela- 0, target # encoding: [0x40,0xc0,A,0bAAAAAA11]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bnlla- target
-# CHECK: bgelrl- 2 # encoding: [0x4c,0xc8,0x00,0x21]
- bnllrl- 2
-# CHECK: bgelrl- 0 # encoding: [0x4c,0xc0,0x00,0x21]
- bnllrl-
-# CHECK: bgectrl- 2 # encoding: [0x4c,0xc8,0x04,0x21]
- bnlctrl- 2
-# CHECK: bgectrl- 0 # encoding: [0x4c,0xc0,0x04,0x21]
- bnlctrl-
-
-# CHECK: bne 2, target # encoding: [0x40,0x8a,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bne 2, target
-# CHECK: bne 0, target # encoding: [0x40,0x82,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bne target
-# CHECK: bnea 2, target # encoding: [0x40,0x8a,A,0bAAAAAA10]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bnea 2, target
-# CHECK: bnea 0, target # encoding: [0x40,0x82,A,0bAAAAAA10]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bnea target
-# CHECK: bnelr 2 # encoding: [0x4c,0x8a,0x00,0x20]
- bnelr 2
-# CHECK: bnelr 0 # encoding: [0x4c,0x82,0x00,0x20]
- bnelr
-# CHECK: bnectr 2 # encoding: [0x4c,0x8a,0x04,0x20]
- bnectr 2
-# CHECK: bnectr 0 # encoding: [0x4c,0x82,0x04,0x20]
- bnectr
-# CHECK: bnel 2, target # encoding: [0x40,0x8a,A,0bAAAAAA01]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bnel 2, target
-# CHECK: bnel 0, target # encoding: [0x40,0x82,A,0bAAAAAA01]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bnel target
-# CHECK: bnela 2, target # encoding: [0x40,0x8a,A,0bAAAAAA11]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bnela 2, target
-# CHECK: bnela 0, target # encoding: [0x40,0x82,A,0bAAAAAA11]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bnela target
-# CHECK: bnelrl 2 # encoding: [0x4c,0x8a,0x00,0x21]
- bnelrl 2
-# CHECK: bnelrl 0 # encoding: [0x4c,0x82,0x00,0x21]
- bnelrl
-# CHECK: bnectrl 2 # encoding: [0x4c,0x8a,0x04,0x21]
- bnectrl 2
-# CHECK: bnectrl 0 # encoding: [0x4c,0x82,0x04,0x21]
- bnectrl
-
-# CHECK: bne+ 2, target # encoding: [0x40,0xea,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bne+ 2, target
-# CHECK: bne+ 0, target # encoding: [0x40,0xe2,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bne+ target
-# CHECK: bnea+ 2, target # encoding: [0x40,0xea,A,0bAAAAAA10]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bnea+ 2, target
-# CHECK: bnea+ 0, target # encoding: [0x40,0xe2,A,0bAAAAAA10]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bnea+ target
-# CHECK: bnelr+ 2 # encoding: [0x4c,0xea,0x00,0x20]
- bnelr+ 2
-# CHECK: bnelr+ 0 # encoding: [0x4c,0xe2,0x00,0x20]
- bnelr+
-# CHECK: bnectr+ 2 # encoding: [0x4c,0xea,0x04,0x20]
- bnectr+ 2
-# CHECK: bnectr+ 0 # encoding: [0x4c,0xe2,0x04,0x20]
- bnectr+
-# CHECK: bnel+ 2, target # encoding: [0x40,0xea,A,0bAAAAAA01]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bnel+ 2, target
-# CHECK: bnel+ 0, target # encoding: [0x40,0xe2,A,0bAAAAAA01]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bnel+ target
-# CHECK: bnela+ 2, target # encoding: [0x40,0xea,A,0bAAAAAA11]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bnela+ 2, target
-# CHECK: bnela+ 0, target # encoding: [0x40,0xe2,A,0bAAAAAA11]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bnela+ target
-# CHECK: bnelrl+ 2 # encoding: [0x4c,0xea,0x00,0x21]
- bnelrl+ 2
-# CHECK: bnelrl+ 0 # encoding: [0x4c,0xe2,0x00,0x21]
- bnelrl+
-# CHECK: bnectrl+ 2 # encoding: [0x4c,0xea,0x04,0x21]
- bnectrl+ 2
-# CHECK: bnectrl+ 0 # encoding: [0x4c,0xe2,0x04,0x21]
- bnectrl+
-
-# CHECK: bne- 2, target # encoding: [0x40,0xca,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bne- 2, target
-# CHECK: bne- 0, target # encoding: [0x40,0xc2,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bne- target
-# CHECK: bnea- 2, target # encoding: [0x40,0xca,A,0bAAAAAA10]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bnea- 2, target
-# CHECK: bnea- 0, target # encoding: [0x40,0xc2,A,0bAAAAAA10]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bnea- target
-# CHECK: bnelr- 2 # encoding: [0x4c,0xca,0x00,0x20]
- bnelr- 2
-# CHECK: bnelr- 0 # encoding: [0x4c,0xc2,0x00,0x20]
- bnelr-
-# CHECK: bnectr- 2 # encoding: [0x4c,0xca,0x04,0x20]
- bnectr- 2
-# CHECK: bnectr- 0 # encoding: [0x4c,0xc2,0x04,0x20]
- bnectr-
-# CHECK: bnel- 2, target # encoding: [0x40,0xca,A,0bAAAAAA01]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bnel- 2, target
-# CHECK: bnel- 0, target # encoding: [0x40,0xc2,A,0bAAAAAA01]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bnel- target
-# CHECK: bnela- 2, target # encoding: [0x40,0xca,A,0bAAAAAA11]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bnela- 2, target
-# CHECK: bnela- 0, target # encoding: [0x40,0xc2,A,0bAAAAAA11]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bnela- target
-# CHECK: bnelrl- 2 # encoding: [0x4c,0xca,0x00,0x21]
- bnelrl- 2
-# CHECK: bnelrl- 0 # encoding: [0x4c,0xc2,0x00,0x21]
- bnelrl-
-# CHECK: bnectrl- 2 # encoding: [0x4c,0xca,0x04,0x21]
- bnectrl- 2
-# CHECK: bnectrl- 0 # encoding: [0x4c,0xc2,0x04,0x21]
- bnectrl-
-
-# CHECK: ble 2, target # encoding: [0x40,0x89,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bng 2, target
-# CHECK: ble 0, target # encoding: [0x40,0x81,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bng target
-# CHECK: blea 2, target # encoding: [0x40,0x89,A,0bAAAAAA10]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bnga 2, target
-# CHECK: blea 0, target # encoding: [0x40,0x81,A,0bAAAAAA10]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bnga target
-# CHECK: blelr 2 # encoding: [0x4c,0x89,0x00,0x20]
- bnglr 2
-# CHECK: blelr 0 # encoding: [0x4c,0x81,0x00,0x20]
- bnglr
-# CHECK: blectr 2 # encoding: [0x4c,0x89,0x04,0x20]
- bngctr 2
-# CHECK: blectr 0 # encoding: [0x4c,0x81,0x04,0x20]
- bngctr
-# CHECK: blel 2, target # encoding: [0x40,0x89,A,0bAAAAAA01]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bngl 2, target
-# CHECK: blel 0, target # encoding: [0x40,0x81,A,0bAAAAAA01]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bngl target
-# CHECK: blela 2, target # encoding: [0x40,0x89,A,0bAAAAAA11]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bngla 2, target
-# CHECK: blela 0, target # encoding: [0x40,0x81,A,0bAAAAAA11]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bngla target
-# CHECK: blelrl 2 # encoding: [0x4c,0x89,0x00,0x21]
- bnglrl 2
-# CHECK: blelrl 0 # encoding: [0x4c,0x81,0x00,0x21]
- bnglrl
-# CHECK: blectrl 2 # encoding: [0x4c,0x89,0x04,0x21]
- bngctrl 2
-# CHECK: blectrl 0 # encoding: [0x4c,0x81,0x04,0x21]
- bngctrl
-
-# CHECK: ble+ 2, target # encoding: [0x40,0xe9,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bng+ 2, target
-# CHECK: ble+ 0, target # encoding: [0x40,0xe1,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bng+ target
-# CHECK: blea+ 2, target # encoding: [0x40,0xe9,A,0bAAAAAA10]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bnga+ 2, target
-# CHECK: blea+ 0, target # encoding: [0x40,0xe1,A,0bAAAAAA10]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bnga+ target
-# CHECK: blelr+ 2 # encoding: [0x4c,0xe9,0x00,0x20]
- bnglr+ 2
-# CHECK: blelr+ 0 # encoding: [0x4c,0xe1,0x00,0x20]
- bnglr+
-# CHECK: blectr+ 2 # encoding: [0x4c,0xe9,0x04,0x20]
- bngctr+ 2
-# CHECK: blectr+ 0 # encoding: [0x4c,0xe1,0x04,0x20]
- bngctr+
-# CHECK: blel+ 2, target # encoding: [0x40,0xe9,A,0bAAAAAA01]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bngl+ 2, target
-# CHECK: blel+ 0, target # encoding: [0x40,0xe1,A,0bAAAAAA01]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bngl+ target
-# CHECK: blela+ 2, target # encoding: [0x40,0xe9,A,0bAAAAAA11]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bngla+ 2, target
-# CHECK: blela+ 0, target # encoding: [0x40,0xe1,A,0bAAAAAA11]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bngla+ target
-# CHECK: blelrl+ 2 # encoding: [0x4c,0xe9,0x00,0x21]
- bnglrl+ 2
-# CHECK: blelrl+ 0 # encoding: [0x4c,0xe1,0x00,0x21]
- bnglrl+
-# CHECK: blectrl+ 2 # encoding: [0x4c,0xe9,0x04,0x21]
- bngctrl+ 2
-# CHECK: blectrl+ 0 # encoding: [0x4c,0xe1,0x04,0x21]
- bngctrl+
-
-# CHECK: ble- 2, target # encoding: [0x40,0xc9,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bng- 2, target
-# CHECK: ble- 0, target # encoding: [0x40,0xc1,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bng- target
-# CHECK: blea- 2, target # encoding: [0x40,0xc9,A,0bAAAAAA10]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bnga- 2, target
-# CHECK: blea- 0, target # encoding: [0x40,0xc1,A,0bAAAAAA10]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bnga- target
-# CHECK: blelr- 2 # encoding: [0x4c,0xc9,0x00,0x20]
- bnglr- 2
-# CHECK: blelr- 0 # encoding: [0x4c,0xc1,0x00,0x20]
- bnglr-
-# CHECK: blectr- 2 # encoding: [0x4c,0xc9,0x04,0x20]
- bngctr- 2
-# CHECK: blectr- 0 # encoding: [0x4c,0xc1,0x04,0x20]
- bngctr-
-# CHECK: blel- 2, target # encoding: [0x40,0xc9,A,0bAAAAAA01]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bngl- 2, target
-# CHECK: blel- 0, target # encoding: [0x40,0xc1,A,0bAAAAAA01]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bngl- target
-# CHECK: blela- 2, target # encoding: [0x40,0xc9,A,0bAAAAAA11]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bngla- 2, target
-# CHECK: blela- 0, target # encoding: [0x40,0xc1,A,0bAAAAAA11]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bngla- target
-# CHECK: blelrl- 2 # encoding: [0x4c,0xc9,0x00,0x21]
- bnglrl- 2
-# CHECK: blelrl- 0 # encoding: [0x4c,0xc1,0x00,0x21]
- bnglrl-
-# CHECK: blectrl- 2 # encoding: [0x4c,0xc9,0x04,0x21]
- bngctrl- 2
-# CHECK: blectrl- 0 # encoding: [0x4c,0xc1,0x04,0x21]
- bngctrl-
-
-# CHECK: bun 2, target # encoding: [0x41,0x8b,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bso 2, target
-# CHECK: bun 0, target # encoding: [0x41,0x83,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bso target
-# CHECK: buna 2, target # encoding: [0x41,0x8b,A,0bAAAAAA10]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bsoa 2, target
-# CHECK: buna 0, target # encoding: [0x41,0x83,A,0bAAAAAA10]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bsoa target
-# CHECK: bunlr 2 # encoding: [0x4d,0x8b,0x00,0x20]
- bsolr 2
-# CHECK: bunlr 0 # encoding: [0x4d,0x83,0x00,0x20]
- bsolr
-# CHECK: bunctr 2 # encoding: [0x4d,0x8b,0x04,0x20]
- bsoctr 2
-# CHECK: bunctr 0 # encoding: [0x4d,0x83,0x04,0x20]
- bsoctr
-# CHECK: bunl 2, target # encoding: [0x41,0x8b,A,0bAAAAAA01]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bsol 2, target
-# CHECK: bunl 0, target # encoding: [0x41,0x83,A,0bAAAAAA01]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bsol target
-# CHECK: bunla 2, target # encoding: [0x41,0x8b,A,0bAAAAAA11]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bsola 2, target
-# CHECK: bunla 0, target # encoding: [0x41,0x83,A,0bAAAAAA11]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bsola target
-# CHECK: bunlrl 2 # encoding: [0x4d,0x8b,0x00,0x21]
- bsolrl 2
-# CHECK: bunlrl 0 # encoding: [0x4d,0x83,0x00,0x21]
- bsolrl
-# CHECK: bunctrl 2 # encoding: [0x4d,0x8b,0x04,0x21]
- bsoctrl 2
-# CHECK: bunctrl 0 # encoding: [0x4d,0x83,0x04,0x21]
- bsoctrl
-
-# CHECK: bun+ 2, target # encoding: [0x41,0xeb,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bso+ 2, target
-# CHECK: bun+ 0, target # encoding: [0x41,0xe3,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bso+ target
-# CHECK: buna+ 2, target # encoding: [0x41,0xeb,A,0bAAAAAA10]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bsoa+ 2, target
-# CHECK: buna+ 0, target # encoding: [0x41,0xe3,A,0bAAAAAA10]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bsoa+ target
-# CHECK: bunlr+ 2 # encoding: [0x4d,0xeb,0x00,0x20]
- bsolr+ 2
-# CHECK: bunlr+ 0 # encoding: [0x4d,0xe3,0x00,0x20]
- bsolr+
-# CHECK: bunctr+ 2 # encoding: [0x4d,0xeb,0x04,0x20]
- bsoctr+ 2
-# CHECK: bunctr+ 0 # encoding: [0x4d,0xe3,0x04,0x20]
- bsoctr+
-# CHECK: bunl+ 2, target # encoding: [0x41,0xeb,A,0bAAAAAA01]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bsol+ 2, target
-# CHECK: bunl+ 0, target # encoding: [0x41,0xe3,A,0bAAAAAA01]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bsol+ target
-# CHECK: bunla+ 2, target # encoding: [0x41,0xeb,A,0bAAAAAA11]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bsola+ 2, target
-# CHECK: bunla+ 0, target # encoding: [0x41,0xe3,A,0bAAAAAA11]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bsola+ target
-# CHECK: bunlrl+ 2 # encoding: [0x4d,0xeb,0x00,0x21]
- bsolrl+ 2
-# CHECK: bunlrl+ 0 # encoding: [0x4d,0xe3,0x00,0x21]
- bsolrl+
-# CHECK: bunctrl+ 2 # encoding: [0x4d,0xeb,0x04,0x21]
- bsoctrl+ 2
-# CHECK: bunctrl+ 0 # encoding: [0x4d,0xe3,0x04,0x21]
- bsoctrl+
-
-# CHECK: bun- 2, target # encoding: [0x41,0xcb,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bso- 2, target
-# CHECK: bun- 0, target # encoding: [0x41,0xc3,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bso- target
-# CHECK: buna- 2, target # encoding: [0x41,0xcb,A,0bAAAAAA10]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bsoa- 2, target
-# CHECK: buna- 0, target # encoding: [0x41,0xc3,A,0bAAAAAA10]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bsoa- target
-# CHECK: bunlr- 2 # encoding: [0x4d,0xcb,0x00,0x20]
- bsolr- 2
-# CHECK: bunlr- 0 # encoding: [0x4d,0xc3,0x00,0x20]
- bsolr-
-# CHECK: bunctr- 2 # encoding: [0x4d,0xcb,0x04,0x20]
- bsoctr- 2
-# CHECK: bunctr- 0 # encoding: [0x4d,0xc3,0x04,0x20]
- bsoctr-
-# CHECK: bunl- 2, target # encoding: [0x41,0xcb,A,0bAAAAAA01]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bsol- 2, target
-# CHECK: bunl- 0, target # encoding: [0x41,0xc3,A,0bAAAAAA01]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bsol- target
-# CHECK: bunla- 2, target # encoding: [0x41,0xcb,A,0bAAAAAA11]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bsola- 2, target
-# CHECK: bunla- 0, target # encoding: [0x41,0xc3,A,0bAAAAAA11]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bsola- target
-# CHECK: bunlrl- 2 # encoding: [0x4d,0xcb,0x00,0x21]
- bsolrl- 2
-# CHECK: bunlrl- 0 # encoding: [0x4d,0xc3,0x00,0x21]
- bsolrl-
-# CHECK: bunctrl- 2 # encoding: [0x4d,0xcb,0x04,0x21]
- bsoctrl- 2
-# CHECK: bunctrl- 0 # encoding: [0x4d,0xc3,0x04,0x21]
- bsoctrl-
-
-# CHECK: bnu 2, target # encoding: [0x40,0x8b,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bns 2, target
-# CHECK: bnu 0, target # encoding: [0x40,0x83,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bns target
-# CHECK: bnua 2, target # encoding: [0x40,0x8b,A,0bAAAAAA10]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bnsa 2, target
-# CHECK: bnua 0, target # encoding: [0x40,0x83,A,0bAAAAAA10]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bnsa target
-# CHECK: bnulr 2 # encoding: [0x4c,0x8b,0x00,0x20]
- bnslr 2
-# CHECK: bnulr 0 # encoding: [0x4c,0x83,0x00,0x20]
- bnslr
-# CHECK: bnuctr 2 # encoding: [0x4c,0x8b,0x04,0x20]
- bnsctr 2
-# CHECK: bnuctr 0 # encoding: [0x4c,0x83,0x04,0x20]
- bnsctr
-# CHECK: bnul 2, target # encoding: [0x40,0x8b,A,0bAAAAAA01]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bnsl 2, target
-# CHECK: bnul 0, target # encoding: [0x40,0x83,A,0bAAAAAA01]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bnsl target
-# CHECK: bnula 2, target # encoding: [0x40,0x8b,A,0bAAAAAA11]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bnsla 2, target
-# CHECK: bnula 0, target # encoding: [0x40,0x83,A,0bAAAAAA11]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bnsla target
-# CHECK: bnulrl 2 # encoding: [0x4c,0x8b,0x00,0x21]
- bnslrl 2
-# CHECK: bnulrl 0 # encoding: [0x4c,0x83,0x00,0x21]
- bnslrl
-# CHECK: bnuctrl 2 # encoding: [0x4c,0x8b,0x04,0x21]
- bnsctrl 2
-# CHECK: bnuctrl 0 # encoding: [0x4c,0x83,0x04,0x21]
- bnsctrl
-
-# CHECK: bnu+ 2, target # encoding: [0x40,0xeb,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bns+ 2, target
-# CHECK: bnu+ 0, target # encoding: [0x40,0xe3,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bns+ target
-# CHECK: bnua+ 2, target # encoding: [0x40,0xeb,A,0bAAAAAA10]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bnsa+ 2, target
-# CHECK: bnua+ 0, target # encoding: [0x40,0xe3,A,0bAAAAAA10]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bnsa+ target
-# CHECK: bnulr+ 2 # encoding: [0x4c,0xeb,0x00,0x20]
- bnslr+ 2
-# CHECK: bnulr+ 0 # encoding: [0x4c,0xe3,0x00,0x20]
- bnslr+
-# CHECK: bnuctr+ 2 # encoding: [0x4c,0xeb,0x04,0x20]
- bnsctr+ 2
-# CHECK: bnuctr+ 0 # encoding: [0x4c,0xe3,0x04,0x20]
- bnsctr+
-# CHECK: bnul+ 2, target # encoding: [0x40,0xeb,A,0bAAAAAA01]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bnsl+ 2, target
-# CHECK: bnul+ 0, target # encoding: [0x40,0xe3,A,0bAAAAAA01]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bnsl+ target
-# CHECK: bnula+ 2, target # encoding: [0x40,0xeb,A,0bAAAAAA11]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bnsla+ 2, target
-# CHECK: bnula+ 0, target # encoding: [0x40,0xe3,A,0bAAAAAA11]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bnsla+ target
-# CHECK: bnulrl+ 2 # encoding: [0x4c,0xeb,0x00,0x21]
- bnslrl+ 2
-# CHECK: bnulrl+ 0 # encoding: [0x4c,0xe3,0x00,0x21]
- bnslrl+
-# CHECK: bnuctrl+ 2 # encoding: [0x4c,0xeb,0x04,0x21]
- bnsctrl+ 2
-# CHECK: bnuctrl+ 0 # encoding: [0x4c,0xe3,0x04,0x21]
- bnsctrl+
-
-# CHECK: bnu- 2, target # encoding: [0x40,0xcb,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bns- 2, target
-# CHECK: bnu- 0, target # encoding: [0x40,0xc3,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bns- target
-# CHECK: bnua- 2, target # encoding: [0x40,0xcb,A,0bAAAAAA10]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bnsa- 2, target
-# CHECK: bnua- 0, target # encoding: [0x40,0xc3,A,0bAAAAAA10]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bnsa- target
-# CHECK: bnulr- 2 # encoding: [0x4c,0xcb,0x00,0x20]
- bnslr- 2
-# CHECK: bnulr- 0 # encoding: [0x4c,0xc3,0x00,0x20]
- bnslr-
-# CHECK: bnuctr- 2 # encoding: [0x4c,0xcb,0x04,0x20]
- bnsctr- 2
-# CHECK: bnuctr- 0 # encoding: [0x4c,0xc3,0x04,0x20]
- bnsctr-
-# CHECK: bnul- 2, target # encoding: [0x40,0xcb,A,0bAAAAAA01]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bnsl- 2, target
-# CHECK: bnul- 0, target # encoding: [0x40,0xc3,A,0bAAAAAA01]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bnsl- target
-# CHECK: bnula- 2, target # encoding: [0x40,0xcb,A,0bAAAAAA11]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bnsla- 2, target
-# CHECK: bnula- 0, target # encoding: [0x40,0xc3,A,0bAAAAAA11]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bnsla- target
-# CHECK: bnulrl- 2 # encoding: [0x4c,0xcb,0x00,0x21]
- bnslrl- 2
-# CHECK: bnulrl- 0 # encoding: [0x4c,0xc3,0x00,0x21]
- bnslrl-
-# CHECK: bnuctrl- 2 # encoding: [0x4c,0xcb,0x04,0x21]
- bnsctrl- 2
-# CHECK: bnuctrl- 0 # encoding: [0x4c,0xc3,0x04,0x21]
- bnsctrl-
-
-# CHECK: bun 2, target # encoding: [0x41,0x8b,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bun 2, target
-# CHECK: bun 0, target # encoding: [0x41,0x83,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bun target
-# CHECK: buna 2, target # encoding: [0x41,0x8b,A,0bAAAAAA10]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- buna 2, target
-# CHECK: buna 0, target # encoding: [0x41,0x83,A,0bAAAAAA10]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- buna target
-# CHECK: bunlr 2 # encoding: [0x4d,0x8b,0x00,0x20]
- bunlr 2
-# CHECK: bunlr 0 # encoding: [0x4d,0x83,0x00,0x20]
- bunlr
-# CHECK: bunctr 2 # encoding: [0x4d,0x8b,0x04,0x20]
- bunctr 2
-# CHECK: bunctr 0 # encoding: [0x4d,0x83,0x04,0x20]
- bunctr
-# CHECK: bunl 2, target # encoding: [0x41,0x8b,A,0bAAAAAA01]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bunl 2, target
-# CHECK: bunl 0, target # encoding: [0x41,0x83,A,0bAAAAAA01]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bunl target
-# CHECK: bunla 2, target # encoding: [0x41,0x8b,A,0bAAAAAA11]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bunla 2, target
-# CHECK: bunla 0, target # encoding: [0x41,0x83,A,0bAAAAAA11]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bunla target
-# CHECK: bunlrl 2 # encoding: [0x4d,0x8b,0x00,0x21]
- bunlrl 2
-# CHECK: bunlrl 0 # encoding: [0x4d,0x83,0x00,0x21]
- bunlrl
-# CHECK: bunctrl 2 # encoding: [0x4d,0x8b,0x04,0x21]
- bunctrl 2
-# CHECK: bunctrl 0 # encoding: [0x4d,0x83,0x04,0x21]
- bunctrl
-
-# CHECK: bun+ 2, target # encoding: [0x41,0xeb,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bun+ 2, target
-# CHECK: bun+ 0, target # encoding: [0x41,0xe3,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bun+ target
-# CHECK: buna+ 2, target # encoding: [0x41,0xeb,A,0bAAAAAA10]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- buna+ 2, target
-# CHECK: buna+ 0, target # encoding: [0x41,0xe3,A,0bAAAAAA10]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- buna+ target
-# CHECK: bunlr+ 2 # encoding: [0x4d,0xeb,0x00,0x20]
- bunlr+ 2
-# CHECK: bunlr+ 0 # encoding: [0x4d,0xe3,0x00,0x20]
- bunlr+
-# CHECK: bunctr+ 2 # encoding: [0x4d,0xeb,0x04,0x20]
- bunctr+ 2
-# CHECK: bunctr+ 0 # encoding: [0x4d,0xe3,0x04,0x20]
- bunctr+
-# CHECK: bunl+ 2, target # encoding: [0x41,0xeb,A,0bAAAAAA01]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bunl+ 2, target
-# CHECK: bunl+ 0, target # encoding: [0x41,0xe3,A,0bAAAAAA01]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bunl+ target
-# CHECK: bunla+ 2, target # encoding: [0x41,0xeb,A,0bAAAAAA11]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bunla+ 2, target
-# CHECK: bunla+ 0, target # encoding: [0x41,0xe3,A,0bAAAAAA11]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bunla+ target
-# CHECK: bunlrl+ 2 # encoding: [0x4d,0xeb,0x00,0x21]
- bunlrl+ 2
-# CHECK: bunlrl+ 0 # encoding: [0x4d,0xe3,0x00,0x21]
- bunlrl+
-# CHECK: bunctrl+ 2 # encoding: [0x4d,0xeb,0x04,0x21]
- bunctrl+ 2
-# CHECK: bunctrl+ 0 # encoding: [0x4d,0xe3,0x04,0x21]
- bunctrl+
-
-# CHECK: bun- 2, target # encoding: [0x41,0xcb,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bun- 2, target
-# CHECK: bun- 0, target # encoding: [0x41,0xc3,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bun- target
-# CHECK: buna- 2, target # encoding: [0x41,0xcb,A,0bAAAAAA10]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- buna- 2, target
-# CHECK: buna- 0, target # encoding: [0x41,0xc3,A,0bAAAAAA10]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- buna- target
-# CHECK: bunlr- 2 # encoding: [0x4d,0xcb,0x00,0x20]
- bunlr- 2
-# CHECK: bunlr- 0 # encoding: [0x4d,0xc3,0x00,0x20]
- bunlr-
-# CHECK: bunctr- 2 # encoding: [0x4d,0xcb,0x04,0x20]
- bunctr- 2
-# CHECK: bunctr- 0 # encoding: [0x4d,0xc3,0x04,0x20]
- bunctr-
-# CHECK: bunl- 2, target # encoding: [0x41,0xcb,A,0bAAAAAA01]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bunl- 2, target
-# CHECK: bunl- 0, target # encoding: [0x41,0xc3,A,0bAAAAAA01]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bunl- target
-# CHECK: bunla- 2, target # encoding: [0x41,0xcb,A,0bAAAAAA11]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bunla- 2, target
-# CHECK: bunla- 0, target # encoding: [0x41,0xc3,A,0bAAAAAA11]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bunla- target
-# CHECK: bunlrl- 2 # encoding: [0x4d,0xcb,0x00,0x21]
- bunlrl- 2
-# CHECK: bunlrl- 0 # encoding: [0x4d,0xc3,0x00,0x21]
- bunlrl-
-# CHECK: bunctrl- 2 # encoding: [0x4d,0xcb,0x04,0x21]
- bunctrl- 2
-# CHECK: bunctrl- 0 # encoding: [0x4d,0xc3,0x04,0x21]
- bunctrl-
-
-# CHECK: bnu 2, target # encoding: [0x40,0x8b,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bnu 2, target
-# CHECK: bnu 0, target # encoding: [0x40,0x83,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bnu target
-# CHECK: bnua 2, target # encoding: [0x40,0x8b,A,0bAAAAAA10]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bnua 2, target
-# CHECK: bnua 0, target # encoding: [0x40,0x83,A,0bAAAAAA10]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bnua target
-# CHECK: bnulr 2 # encoding: [0x4c,0x8b,0x00,0x20]
- bnulr 2
-# CHECK: bnulr 0 # encoding: [0x4c,0x83,0x00,0x20]
- bnulr
-# CHECK: bnuctr 2 # encoding: [0x4c,0x8b,0x04,0x20]
- bnuctr 2
-# CHECK: bnuctr 0 # encoding: [0x4c,0x83,0x04,0x20]
- bnuctr
-# CHECK: bnul 2, target # encoding: [0x40,0x8b,A,0bAAAAAA01]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bnul 2, target
-# CHECK: bnul 0, target # encoding: [0x40,0x83,A,0bAAAAAA01]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bnul target
-# CHECK: bnula 2, target # encoding: [0x40,0x8b,A,0bAAAAAA11]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bnula 2, target
-# CHECK: bnula 0, target # encoding: [0x40,0x83,A,0bAAAAAA11]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bnula target
-# CHECK: bnulrl 2 # encoding: [0x4c,0x8b,0x00,0x21]
- bnulrl 2
-# CHECK: bnulrl 0 # encoding: [0x4c,0x83,0x00,0x21]
- bnulrl
-# CHECK: bnuctrl 2 # encoding: [0x4c,0x8b,0x04,0x21]
- bnuctrl 2
-# CHECK: bnuctrl 0 # encoding: [0x4c,0x83,0x04,0x21]
- bnuctrl
-
-# CHECK: bnu+ 2, target # encoding: [0x40,0xeb,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bnu+ 2, target
-# CHECK: bnu+ 0, target # encoding: [0x40,0xe3,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bnu+ target
-# CHECK: bnua+ 2, target # encoding: [0x40,0xeb,A,0bAAAAAA10]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bnua+ 2, target
-# CHECK: bnua+ 0, target # encoding: [0x40,0xe3,A,0bAAAAAA10]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bnua+ target
-# CHECK: bnulr+ 2 # encoding: [0x4c,0xeb,0x00,0x20]
- bnulr+ 2
-# CHECK: bnulr+ 0 # encoding: [0x4c,0xe3,0x00,0x20]
- bnulr+
-# CHECK: bnuctr+ 2 # encoding: [0x4c,0xeb,0x04,0x20]
- bnuctr+ 2
-# CHECK: bnuctr+ 0 # encoding: [0x4c,0xe3,0x04,0x20]
- bnuctr+
-# CHECK: bnul+ 2, target # encoding: [0x40,0xeb,A,0bAAAAAA01]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bnul+ 2, target
-# CHECK: bnul+ 0, target # encoding: [0x40,0xe3,A,0bAAAAAA01]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bnul+ target
-# CHECK: bnula+ 2, target # encoding: [0x40,0xeb,A,0bAAAAAA11]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bnula+ 2, target
-# CHECK: bnula+ 0, target # encoding: [0x40,0xe3,A,0bAAAAAA11]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bnula+ target
-# CHECK: bnulrl+ 2 # encoding: [0x4c,0xeb,0x00,0x21]
- bnulrl+ 2
-# CHECK: bnulrl+ 0 # encoding: [0x4c,0xe3,0x00,0x21]
- bnulrl+
-# CHECK: bnuctrl+ 2 # encoding: [0x4c,0xeb,0x04,0x21]
- bnuctrl+ 2
-# CHECK: bnuctrl+ 0 # encoding: [0x4c,0xe3,0x04,0x21]
- bnuctrl+
-
-# CHECK: bnu- 2, target # encoding: [0x40,0xcb,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bnu- 2, target
-# CHECK: bnu- 0, target # encoding: [0x40,0xc3,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bnu- target
-# CHECK: bnua- 2, target # encoding: [0x40,0xcb,A,0bAAAAAA10]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bnua- 2, target
-# CHECK: bnua- 0, target # encoding: [0x40,0xc3,A,0bAAAAAA10]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bnua- target
-# CHECK: bnulr- 2 # encoding: [0x4c,0xcb,0x00,0x20]
- bnulr- 2
-# CHECK: bnulr- 0 # encoding: [0x4c,0xc3,0x00,0x20]
- bnulr-
-# CHECK: bnuctr- 2 # encoding: [0x4c,0xcb,0x04,0x20]
- bnuctr- 2
-# CHECK: bnuctr- 0 # encoding: [0x4c,0xc3,0x04,0x20]
- bnuctr-
-# CHECK: bnul- 2, target # encoding: [0x40,0xcb,A,0bAAAAAA01]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bnul- 2, target
-# CHECK: bnul- 0, target # encoding: [0x40,0xc3,A,0bAAAAAA01]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bnul- target
-# CHECK: bnula- 2, target # encoding: [0x40,0xcb,A,0bAAAAAA11]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bnula- 2, target
-# CHECK: bnula- 0, target # encoding: [0x40,0xc3,A,0bAAAAAA11]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bnula- target
-# CHECK: bnulrl- 2 # encoding: [0x4c,0xcb,0x00,0x21]
- bnulrl- 2
-# CHECK: bnulrl- 0 # encoding: [0x4c,0xc3,0x00,0x21]
- bnulrl-
-# CHECK: bnuctrl- 2 # encoding: [0x4c,0xcb,0x04,0x21]
- bnuctrl- 2
-# CHECK: bnuctrl- 0 # encoding: [0x4c,0xc3,0x04,0x21]
- bnuctrl-
+# CHECK-BE: blr # encoding: [0x4e,0x80,0x00,0x20]
+# CHECK-LE: blr # encoding: [0x20,0x00,0x80,0x4e]
+ blr
+# CHECK-BE: bctr # encoding: [0x4e,0x80,0x04,0x20]
+# CHECK-LE: bctr # encoding: [0x20,0x04,0x80,0x4e]
+ bctr
+# CHECK-BE: blrl # encoding: [0x4e,0x80,0x00,0x21]
+# CHECK-LE: blrl # encoding: [0x21,0x00,0x80,0x4e]
+ blrl
+# CHECK-BE: bctrl # encoding: [0x4e,0x80,0x04,0x21]
+# CHECK-LE: bctrl # encoding: [0x21,0x04,0x80,0x4e]
+ bctrl
+
+# CHECK-BE: bc 12, 2, target # encoding: [0x41,0x82,A,0bAAAAAA00]
+# CHECK-LE: bc 12, 2, target # encoding: [0bAAAAAA00,A,0x82,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bt 2, target
+# CHECK-BE: bca 12, 2, target # encoding: [0x41,0x82,A,0bAAAAAA10]
+# CHECK-LE: bca 12, 2, target # encoding: [0bAAAAAA10,A,0x82,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bta 2, target
+# CHECK-BE: bclr 12, 2, 0 # encoding: [0x4d,0x82,0x00,0x20]
+# CHECK-LE: bclr 12, 2, 0 # encoding: [0x20,0x00,0x82,0x4d]
+ btlr 2
+# CHECK-BE: bcctr 12, 2, 0 # encoding: [0x4d,0x82,0x04,0x20]
+# CHECK-LE: bcctr 12, 2, 0 # encoding: [0x20,0x04,0x82,0x4d]
+ btctr 2
+# CHECK-BE: bcl 12, 2, target # encoding: [0x41,0x82,A,0bAAAAAA01]
+# CHECK-LE: bcl 12, 2, target # encoding: [0bAAAAAA01,A,0x82,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ btl 2, target
+# CHECK-BE: bcla 12, 2, target # encoding: [0x41,0x82,A,0bAAAAAA11]
+# CHECK-LE: bcla 12, 2, target # encoding: [0bAAAAAA11,A,0x82,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ btla 2, target
+# CHECK-BE: bclrl 12, 2, 0 # encoding: [0x4d,0x82,0x00,0x21]
+# CHECK-LE: bclrl 12, 2, 0 # encoding: [0x21,0x00,0x82,0x4d]
+ btlrl 2
+# CHECK-BE: bcctrl 12, 2, 0 # encoding: [0x4d,0x82,0x04,0x21]
+# CHECK-LE: bcctrl 12, 2, 0 # encoding: [0x21,0x04,0x82,0x4d]
+ btctrl 2
+
+# CHECK-BE: bc 15, 2, target # encoding: [0x41,0xe2,A,0bAAAAAA00]
+# CHECK-LE: bc 15, 2, target # encoding: [0bAAAAAA00,A,0xe2,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bt+ 2, target
+# CHECK-BE: bca 15, 2, target # encoding: [0x41,0xe2,A,0bAAAAAA10]
+# CHECK-LE: bca 15, 2, target # encoding: [0bAAAAAA10,A,0xe2,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bta+ 2, target
+# CHECK-BE: bclr 15, 2, 0 # encoding: [0x4d,0xe2,0x00,0x20]
+# CHECK-LE: bclr 15, 2, 0 # encoding: [0x20,0x00,0xe2,0x4d]
+ btlr+ 2
+# CHECK-BE: bcctr 15, 2, 0 # encoding: [0x4d,0xe2,0x04,0x20]
+# CHECK-LE: bcctr 15, 2, 0 # encoding: [0x20,0x04,0xe2,0x4d]
+ btctr+ 2
+# CHECK-BE: bcl 15, 2, target # encoding: [0x41,0xe2,A,0bAAAAAA01]
+# CHECK-LE: bcl 15, 2, target # encoding: [0bAAAAAA01,A,0xe2,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ btl+ 2, target
+# CHECK-BE: bcla 15, 2, target # encoding: [0x41,0xe2,A,0bAAAAAA11]
+# CHECK-LE: bcla 15, 2, target # encoding: [0bAAAAAA11,A,0xe2,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ btla+ 2, target
+# CHECK-BE: bclrl 15, 2, 0 # encoding: [0x4d,0xe2,0x00,0x21]
+# CHECK-LE: bclrl 15, 2, 0 # encoding: [0x21,0x00,0xe2,0x4d]
+ btlrl+ 2
+# CHECK-BE: bcctrl 15, 2, 0 # encoding: [0x4d,0xe2,0x04,0x21]
+# CHECK-LE: bcctrl 15, 2, 0 # encoding: [0x21,0x04,0xe2,0x4d]
+ btctrl+ 2
+
+# CHECK-BE: bc 14, 2, target # encoding: [0x41,0xc2,A,0bAAAAAA00]
+# CHECK-LE: bc 14, 2, target # encoding: [0bAAAAAA00,A,0xc2,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bt- 2, target
+# CHECK-BE: bca 14, 2, target # encoding: [0x41,0xc2,A,0bAAAAAA10]
+# CHECK-LE: bca 14, 2, target # encoding: [0bAAAAAA10,A,0xc2,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bta- 2, target
+# CHECK-BE: bclr 14, 2, 0 # encoding: [0x4d,0xc2,0x00,0x20]
+# CHECK-LE: bclr 14, 2, 0 # encoding: [0x20,0x00,0xc2,0x4d]
+ btlr- 2
+# CHECK-BE: bcctr 14, 2, 0 # encoding: [0x4d,0xc2,0x04,0x20]
+# CHECK-LE: bcctr 14, 2, 0 # encoding: [0x20,0x04,0xc2,0x4d]
+ btctr- 2
+# CHECK-BE: bcl 14, 2, target # encoding: [0x41,0xc2,A,0bAAAAAA01]
+# CHECK-LE: bcl 14, 2, target # encoding: [0bAAAAAA01,A,0xc2,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ btl- 2, target
+# CHECK-BE: bcla 14, 2, target # encoding: [0x41,0xc2,A,0bAAAAAA11]
+# CHECK-LE: bcla 14, 2, target # encoding: [0bAAAAAA11,A,0xc2,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ btla- 2, target
+# CHECK-BE: bclrl 14, 2, 0 # encoding: [0x4d,0xc2,0x00,0x21]
+# CHECK-LE: bclrl 14, 2, 0 # encoding: [0x21,0x00,0xc2,0x4d]
+ btlrl- 2
+# CHECK-BE: bcctrl 14, 2, 0 # encoding: [0x4d,0xc2,0x04,0x21]
+# CHECK-LE: bcctrl 14, 2, 0 # encoding: [0x21,0x04,0xc2,0x4d]
+ btctrl- 2
+
+# CHECK-BE: bc 4, 2, target # encoding: [0x40,0x82,A,0bAAAAAA00]
+# CHECK-LE: bc 4, 2, target # encoding: [0bAAAAAA00,A,0x82,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bf 2, target
+# CHECK-BE: bca 4, 2, target # encoding: [0x40,0x82,A,0bAAAAAA10]
+# CHECK-LE: bca 4, 2, target # encoding: [0bAAAAAA10,A,0x82,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bfa 2, target
+# CHECK-BE: bclr 4, 2, 0 # encoding: [0x4c,0x82,0x00,0x20]
+# CHECK-LE: bclr 4, 2, 0 # encoding: [0x20,0x00,0x82,0x4c]
+ bflr 2
+# CHECK-BE: bcctr 4, 2, 0 # encoding: [0x4c,0x82,0x04,0x20]
+# CHECK-LE: bcctr 4, 2, 0 # encoding: [0x20,0x04,0x82,0x4c]
+ bfctr 2
+# CHECK-BE: bcl 4, 2, target # encoding: [0x40,0x82,A,0bAAAAAA01]
+# CHECK-LE: bcl 4, 2, target # encoding: [0bAAAAAA01,A,0x82,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bfl 2, target
+# CHECK-BE: bcla 4, 2, target # encoding: [0x40,0x82,A,0bAAAAAA11]
+# CHECK-LE: bcla 4, 2, target # encoding: [0bAAAAAA11,A,0x82,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bfla 2, target
+# CHECK-BE: bclrl 4, 2, 0 # encoding: [0x4c,0x82,0x00,0x21]
+# CHECK-LE: bclrl 4, 2, 0 # encoding: [0x21,0x00,0x82,0x4c]
+ bflrl 2
+# CHECK-BE: bcctrl 4, 2, 0 # encoding: [0x4c,0x82,0x04,0x21]
+# CHECK-LE: bcctrl 4, 2, 0 # encoding: [0x21,0x04,0x82,0x4c]
+ bfctrl 2
+
+# CHECK-BE: bc 7, 2, target # encoding: [0x40,0xe2,A,0bAAAAAA00]
+# CHECK-LE: bc 7, 2, target # encoding: [0bAAAAAA00,A,0xe2,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bf+ 2, target
+# CHECK-BE: bca 7, 2, target # encoding: [0x40,0xe2,A,0bAAAAAA10]
+# CHECK-LE: bca 7, 2, target # encoding: [0bAAAAAA10,A,0xe2,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bfa+ 2, target
+# CHECK-BE: bclr 7, 2, 0 # encoding: [0x4c,0xe2,0x00,0x20]
+# CHECK-LE: bclr 7, 2, 0 # encoding: [0x20,0x00,0xe2,0x4c]
+ bflr+ 2
+# CHECK-BE: bcctr 7, 2, 0 # encoding: [0x4c,0xe2,0x04,0x20]
+# CHECK-LE: bcctr 7, 2, 0 # encoding: [0x20,0x04,0xe2,0x4c]
+ bfctr+ 2
+# CHECK-BE: bcl 7, 2, target # encoding: [0x40,0xe2,A,0bAAAAAA01]
+# CHECK-LE: bcl 7, 2, target # encoding: [0bAAAAAA01,A,0xe2,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bfl+ 2, target
+# CHECK-BE: bcla 7, 2, target # encoding: [0x40,0xe2,A,0bAAAAAA11]
+# CHECK-LE: bcla 7, 2, target # encoding: [0bAAAAAA11,A,0xe2,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bfla+ 2, target
+# CHECK-BE: bclrl 7, 2, 0 # encoding: [0x4c,0xe2,0x00,0x21]
+# CHECK-LE: bclrl 7, 2, 0 # encoding: [0x21,0x00,0xe2,0x4c]
+ bflrl+ 2
+# CHECK-BE: bcctrl 7, 2, 0 # encoding: [0x4c,0xe2,0x04,0x21]
+# CHECK-LE: bcctrl 7, 2, 0 # encoding: [0x21,0x04,0xe2,0x4c]
+ bfctrl+ 2
+
+# CHECK-BE: bc 6, 2, target # encoding: [0x40,0xc2,A,0bAAAAAA00]
+# CHECK-LE: bc 6, 2, target # encoding: [0bAAAAAA00,A,0xc2,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bf- 2, target
+# CHECK-BE: bca 6, 2, target # encoding: [0x40,0xc2,A,0bAAAAAA10]
+# CHECK-LE: bca 6, 2, target # encoding: [0bAAAAAA10,A,0xc2,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bfa- 2, target
+# CHECK-BE: bclr 6, 2, 0 # encoding: [0x4c,0xc2,0x00,0x20]
+# CHECK-LE: bclr 6, 2, 0 # encoding: [0x20,0x00,0xc2,0x4c]
+ bflr- 2
+# CHECK-BE: bcctr 6, 2, 0 # encoding: [0x4c,0xc2,0x04,0x20]
+# CHECK-LE: bcctr 6, 2, 0 # encoding: [0x20,0x04,0xc2,0x4c]
+ bfctr- 2
+# CHECK-BE: bcl 6, 2, target # encoding: [0x40,0xc2,A,0bAAAAAA01]
+# CHECK-LE: bcl 6, 2, target # encoding: [0bAAAAAA01,A,0xc2,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bfl- 2, target
+# CHECK-BE: bcla 6, 2, target # encoding: [0x40,0xc2,A,0bAAAAAA11]
+# CHECK-LE: bcla 6, 2, target # encoding: [0bAAAAAA11,A,0xc2,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bfla- 2, target
+# CHECK-BE: bclrl 6, 2, 0 # encoding: [0x4c,0xc2,0x00,0x21]
+# CHECK-LE: bclrl 6, 2, 0 # encoding: [0x21,0x00,0xc2,0x4c]
+ bflrl- 2
+# CHECK-BE: bcctrl 6, 2, 0 # encoding: [0x4c,0xc2,0x04,0x21]
+# CHECK-LE: bcctrl 6, 2, 0 # encoding: [0x21,0x04,0xc2,0x4c]
+ bfctrl- 2
+
+# CHECK-BE: bdnz target # encoding: [0x42,0x00,A,0bAAAAAA00]
+# CHECK-LE: bdnz target # encoding: [0bAAAAAA00,A,0x00,0x42]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bdnz target
+# CHECK-BE: bdnza target # encoding: [0x42,0x00,A,0bAAAAAA10]
+# CHECK-LE: bdnza target # encoding: [0bAAAAAA10,A,0x00,0x42]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bdnza target
+# CHECK-BE: bdnzlr # encoding: [0x4e,0x00,0x00,0x20]
+# CHECK-LE: bdnzlr # encoding: [0x20,0x00,0x00,0x4e]
+ bdnzlr
+# CHECK-BE: bdnzl target # encoding: [0x42,0x00,A,0bAAAAAA01]
+# CHECK-LE: bdnzl target # encoding: [0bAAAAAA01,A,0x00,0x42]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bdnzl target
+# CHECK-BE: bdnzla target # encoding: [0x42,0x00,A,0bAAAAAA11]
+# CHECK-LE: bdnzla target # encoding: [0bAAAAAA11,A,0x00,0x42]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bdnzla target
+# CHECK-BE: bdnzlrl # encoding: [0x4e,0x00,0x00,0x21]
+# CHECK-LE: bdnzlrl # encoding: [0x21,0x00,0x00,0x4e]
+ bdnzlrl
+
+# CHECK-BE: bdnz+ target # encoding: [0x43,0x20,A,0bAAAAAA00]
+# CHECK-LE: bdnz+ target # encoding: [0bAAAAAA00,A,0x20,0x43]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bdnz+ target
+# CHECK-BE: bdnza+ target # encoding: [0x43,0x20,A,0bAAAAAA10]
+# CHECK-LE: bdnza+ target # encoding: [0bAAAAAA10,A,0x20,0x43]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bdnza+ target
+# CHECK-BE: bdnzlr+ # encoding: [0x4f,0x20,0x00,0x20]
+# CHECK-LE: bdnzlr+ # encoding: [0x20,0x00,0x20,0x4f]
+ bdnzlr+
+# CHECK-BE: bdnzl+ target # encoding: [0x43,0x20,A,0bAAAAAA01]
+# CHECK-LE: bdnzl+ target # encoding: [0bAAAAAA01,A,0x20,0x43]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bdnzl+ target
+# CHECK-BE: bdnzla+ target # encoding: [0x43,0x20,A,0bAAAAAA11]
+# CHECK-LE: bdnzla+ target # encoding: [0bAAAAAA11,A,0x20,0x43]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bdnzla+ target
+# CHECK-BE: bdnzlrl+ # encoding: [0x4f,0x20,0x00,0x21]
+# CHECK-LE: bdnzlrl+ # encoding: [0x21,0x00,0x20,0x4f]
+ bdnzlrl+
+
+# CHECK-BE: bdnz- target # encoding: [0x43,0x00,A,0bAAAAAA00]
+# CHECK-LE: bdnz- target # encoding: [0bAAAAAA00,A,0x00,0x43]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bdnz- target
+# CHECK-BE: bdnza- target # encoding: [0x43,0x00,A,0bAAAAAA10]
+# CHECK-LE: bdnza- target # encoding: [0bAAAAAA10,A,0x00,0x43]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bdnza- target
+# CHECK-BE: bdnzlr- # encoding: [0x4f,0x00,0x00,0x20]
+# CHECK-LE: bdnzlr- # encoding: [0x20,0x00,0x00,0x4f]
+ bdnzlr-
+# CHECK-BE: bdnzl- target # encoding: [0x43,0x00,A,0bAAAAAA01]
+# CHECK-LE: bdnzl- target # encoding: [0bAAAAAA01,A,0x00,0x43]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bdnzl- target
+# CHECK-BE: bdnzla- target # encoding: [0x43,0x00,A,0bAAAAAA11]
+# CHECK-LE: bdnzla- target # encoding: [0bAAAAAA11,A,0x00,0x43]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bdnzla- target
+# CHECK-BE: bdnzlrl- # encoding: [0x4f,0x00,0x00,0x21]
+# CHECK-LE: bdnzlrl- # encoding: [0x21,0x00,0x00,0x4f]
+ bdnzlrl-
+
+# CHECK-BE: bc 8, 2, target # encoding: [0x41,0x02,A,0bAAAAAA00]
+# CHECK-LE: bc 8, 2, target # encoding: [0bAAAAAA00,A,0x02,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bdnzt 2, target
+# CHECK-BE: bca 8, 2, target # encoding: [0x41,0x02,A,0bAAAAAA10]
+# CHECK-LE: bca 8, 2, target # encoding: [0bAAAAAA10,A,0x02,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bdnzta 2, target
+# CHECK-BE: bclr 8, 2, 0 # encoding: [0x4d,0x02,0x00,0x20]
+# CHECK-LE: bclr 8, 2, 0 # encoding: [0x20,0x00,0x02,0x4d]
+ bdnztlr 2
+# CHECK-BE: bcl 8, 2, target # encoding: [0x41,0x02,A,0bAAAAAA01]
+# CHECK-LE: bcl 8, 2, target # encoding: [0bAAAAAA01,A,0x02,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bdnztl 2, target
+# CHECK-BE: bcla 8, 2, target # encoding: [0x41,0x02,A,0bAAAAAA11]
+# CHECK-LE: bcla 8, 2, target # encoding: [0bAAAAAA11,A,0x02,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bdnztla 2, target
+# CHECK-BE: bclrl 8, 2, 0 # encoding: [0x4d,0x02,0x00,0x21]
+# CHECK-LE: bclrl 8, 2, 0 # encoding: [0x21,0x00,0x02,0x4d]
+ bdnztlrl 2
+
+# CHECK-BE: bc 0, 2, target # encoding: [0x40,0x02,A,0bAAAAAA00]
+# CHECK-LE: bc 0, 2, target # encoding: [0bAAAAAA00,A,0x02,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bdnzf 2, target
+# CHECK-BE: bca 0, 2, target # encoding: [0x40,0x02,A,0bAAAAAA10]
+# CHECK-LE: bca 0, 2, target # encoding: [0bAAAAAA10,A,0x02,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bdnzfa 2, target
+# CHECK-BE: bclr 0, 2, 0 # encoding: [0x4c,0x02,0x00,0x20]
+# CHECK-LE: bclr 0, 2, 0 # encoding: [0x20,0x00,0x02,0x4c]
+ bdnzflr 2
+# CHECK-BE: bcl 0, 2, target # encoding: [0x40,0x02,A,0bAAAAAA01]
+# CHECK-LE: bcl 0, 2, target # encoding: [0bAAAAAA01,A,0x02,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bdnzfl 2, target
+# CHECK-BE: bcla 0, 2, target # encoding: [0x40,0x02,A,0bAAAAAA11]
+# CHECK-LE: bcla 0, 2, target # encoding: [0bAAAAAA11,A,0x02,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bdnzfla 2, target
+# CHECK-BE: bclrl 0, 2, 0 # encoding: [0x4c,0x02,0x00,0x21]
+# CHECK-LE: bclrl 0, 2, 0 # encoding: [0x21,0x00,0x02,0x4c]
+ bdnzflrl 2
+
+# CHECK-BE: bdz target # encoding: [0x42,0x40,A,0bAAAAAA00]
+# CHECK-LE: bdz target # encoding: [0bAAAAAA00,A,0x40,0x42]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bdz target
+# CHECK-BE: bdza target # encoding: [0x42,0x40,A,0bAAAAAA10]
+# CHECK-LE: bdza target # encoding: [0bAAAAAA10,A,0x40,0x42]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bdza target
+# CHECK-BE: bdzlr # encoding: [0x4e,0x40,0x00,0x20]
+# CHECK-LE: bdzlr # encoding: [0x20,0x00,0x40,0x4e]
+ bdzlr
+# CHECK-BE: bdzl target # encoding: [0x42,0x40,A,0bAAAAAA01]
+# CHECK-LE: bdzl target # encoding: [0bAAAAAA01,A,0x40,0x42]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bdzl target
+# CHECK-BE: bdzla target # encoding: [0x42,0x40,A,0bAAAAAA11]
+# CHECK-LE: bdzla target # encoding: [0bAAAAAA11,A,0x40,0x42]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bdzla target
+# CHECK-BE: bdzlrl # encoding: [0x4e,0x40,0x00,0x21]
+# CHECK-LE: bdzlrl # encoding: [0x21,0x00,0x40,0x4e]
+ bdzlrl
+
+# CHECK-BE: bdz+ target # encoding: [0x43,0x60,A,0bAAAAAA00]
+# CHECK-LE: bdz+ target # encoding: [0bAAAAAA00,A,0x60,0x43]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bdz+ target
+# CHECK-BE: bdza+ target # encoding: [0x43,0x60,A,0bAAAAAA10]
+# CHECK-LE: bdza+ target # encoding: [0bAAAAAA10,A,0x60,0x43]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bdza+ target
+# CHECK-BE: bdzlr+ # encoding: [0x4f,0x60,0x00,0x20]
+# CHECK-LE: bdzlr+ # encoding: [0x20,0x00,0x60,0x4f]
+ bdzlr+
+# CHECK-BE: bdzl+ target # encoding: [0x43,0x60,A,0bAAAAAA01]
+# CHECK-LE: bdzl+ target # encoding: [0bAAAAAA01,A,0x60,0x43]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bdzl+ target
+# CHECK-BE: bdzla+ target # encoding: [0x43,0x60,A,0bAAAAAA11]
+# CHECK-LE: bdzla+ target # encoding: [0bAAAAAA11,A,0x60,0x43]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bdzla+ target
+# CHECK-BE: bdzlrl+ # encoding: [0x4f,0x60,0x00,0x21]
+# CHECK-LE: bdzlrl+ # encoding: [0x21,0x00,0x60,0x4f]
+ bdzlrl+
+
+# CHECK-BE: bdz- target # encoding: [0x43,0x40,A,0bAAAAAA00]
+# CHECK-LE: bdz- target # encoding: [0bAAAAAA00,A,0x40,0x43]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bdz- target
+# CHECK-BE: bdza- target # encoding: [0x43,0x40,A,0bAAAAAA10]
+# CHECK-LE: bdza- target # encoding: [0bAAAAAA10,A,0x40,0x43]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bdza- target
+# CHECK-BE: bdzlr- # encoding: [0x4f,0x40,0x00,0x20]
+# CHECK-LE: bdzlr- # encoding: [0x20,0x00,0x40,0x4f]
+ bdzlr-
+# CHECK-BE: bdzl- target # encoding: [0x43,0x40,A,0bAAAAAA01]
+# CHECK-LE: bdzl- target # encoding: [0bAAAAAA01,A,0x40,0x43]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bdzl- target
+# CHECK-BE: bdzla- target # encoding: [0x43,0x40,A,0bAAAAAA11]
+# CHECK-LE: bdzla- target # encoding: [0bAAAAAA11,A,0x40,0x43]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bdzla- target
+# CHECK-BE: bdzlrl- # encoding: [0x4f,0x40,0x00,0x21]
+# CHECK-LE: bdzlrl- # encoding: [0x21,0x00,0x40,0x4f]
+ bdzlrl-
+
+# CHECK-BE: bc 10, 2, target # encoding: [0x41,0x42,A,0bAAAAAA00]
+# CHECK-LE: bc 10, 2, target # encoding: [0bAAAAAA00,A,0x42,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bdzt 2, target
+# CHECK-BE: bca 10, 2, target # encoding: [0x41,0x42,A,0bAAAAAA10]
+# CHECK-LE: bca 10, 2, target # encoding: [0bAAAAAA10,A,0x42,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bdzta 2, target
+# CHECK-BE: bclr 10, 2, 0 # encoding: [0x4d,0x42,0x00,0x20]
+# CHECK-LE: bclr 10, 2, 0 # encoding: [0x20,0x00,0x42,0x4d]
+ bdztlr 2
+# CHECK-BE: bcl 10, 2, target # encoding: [0x41,0x42,A,0bAAAAAA01]
+# CHECK-LE: bcl 10, 2, target # encoding: [0bAAAAAA01,A,0x42,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bdztl 2, target
+# CHECK-BE: bcla 10, 2, target # encoding: [0x41,0x42,A,0bAAAAAA11]
+# CHECK-LE: bcla 10, 2, target # encoding: [0bAAAAAA11,A,0x42,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bdztla 2, target
+# CHECK-BE: bclrl 10, 2, 0 # encoding: [0x4d,0x42,0x00,0x21]
+# CHECK-LE: bclrl 10, 2, 0 # encoding: [0x21,0x00,0x42,0x4d]
+ bdztlrl 2
+
+# CHECK-BE: bc 2, 2, target # encoding: [0x40,0x42,A,0bAAAAAA00]
+# CHECK-LE: bc 2, 2, target # encoding: [0bAAAAAA00,A,0x42,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bdzf 2, target
+# CHECK-BE: bca 2, 2, target # encoding: [0x40,0x42,A,0bAAAAAA10]
+# CHECK-LE: bca 2, 2, target # encoding: [0bAAAAAA10,A,0x42,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bdzfa 2, target
+# CHECK-BE: bclr 2, 2, 0 # encoding: [0x4c,0x42,0x00,0x20]
+# CHECK-LE: bclr 2, 2, 0 # encoding: [0x20,0x00,0x42,0x4c]
+ bdzflr 2
+# CHECK-BE: bcl 2, 2, target # encoding: [0x40,0x42,A,0bAAAAAA01]
+# CHECK-LE: bcl 2, 2, target # encoding: [0bAAAAAA01,A,0x42,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bdzfl 2, target
+# CHECK-BE: bcla 2, 2, target # encoding: [0x40,0x42,A,0bAAAAAA11]
+# CHECK-LE: bcla 2, 2, target # encoding: [0bAAAAAA11,A,0x42,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bdzfla 2, target
+# CHECK-BE: bclrl 2, 2, 0 # encoding: [0x4c,0x42,0x00,0x21]
+# CHECK-LE: bclrl 2, 2, 0 # encoding: [0x21,0x00,0x42,0x4c]
+ bdzflrl 2
+
+# CHECK-BE: blt 2, target # encoding: [0x41,0x88,A,0bAAAAAA00]
+# CHECK-LE: blt 2, target # encoding: [0bAAAAAA00,A,0x88,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ blt 2, target
+# CHECK-BE: blt 0, target # encoding: [0x41,0x80,A,0bAAAAAA00]
+# CHECK-LE: blt 0, target # encoding: [0bAAAAAA00,A,0x80,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ blt target
+# CHECK-BE: blta 2, target # encoding: [0x41,0x88,A,0bAAAAAA10]
+# CHECK-LE: blta 2, target # encoding: [0bAAAAAA10,A,0x88,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ blta 2, target
+# CHECK-BE: blta 0, target # encoding: [0x41,0x80,A,0bAAAAAA10]
+# CHECK-LE: blta 0, target # encoding: [0bAAAAAA10,A,0x80,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ blta target
+# CHECK-BE: bltlr 2 # encoding: [0x4d,0x88,0x00,0x20]
+# CHECK-LE: bltlr 2 # encoding: [0x20,0x00,0x88,0x4d]
+ bltlr 2
+# CHECK-BE: bltlr 0 # encoding: [0x4d,0x80,0x00,0x20]
+# CHECK-LE: bltlr 0 # encoding: [0x20,0x00,0x80,0x4d]
+ bltlr
+# CHECK-BE: bltctr 2 # encoding: [0x4d,0x88,0x04,0x20]
+# CHECK-LE: bltctr 2 # encoding: [0x20,0x04,0x88,0x4d]
+ bltctr 2
+# CHECK-BE: bltctr 0 # encoding: [0x4d,0x80,0x04,0x20]
+# CHECK-LE: bltctr 0 # encoding: [0x20,0x04,0x80,0x4d]
+ bltctr
+# CHECK-BE: bltl 2, target # encoding: [0x41,0x88,A,0bAAAAAA01]
+# CHECK-LE: bltl 2, target # encoding: [0bAAAAAA01,A,0x88,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bltl 2, target
+# CHECK-BE: bltl 0, target # encoding: [0x41,0x80,A,0bAAAAAA01]
+# CHECK-LE: bltl 0, target # encoding: [0bAAAAAA01,A,0x80,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bltl target
+# CHECK-BE: bltla 2, target # encoding: [0x41,0x88,A,0bAAAAAA11]
+# CHECK-LE: bltla 2, target # encoding: [0bAAAAAA11,A,0x88,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bltla 2, target
+# CHECK-BE: bltla 0, target # encoding: [0x41,0x80,A,0bAAAAAA11]
+# CHECK-LE: bltla 0, target # encoding: [0bAAAAAA11,A,0x80,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bltla target
+# CHECK-BE: bltlrl 2 # encoding: [0x4d,0x88,0x00,0x21]
+# CHECK-LE: bltlrl 2 # encoding: [0x21,0x00,0x88,0x4d]
+ bltlrl 2
+# CHECK-BE: bltlrl 0 # encoding: [0x4d,0x80,0x00,0x21]
+# CHECK-LE: bltlrl 0 # encoding: [0x21,0x00,0x80,0x4d]
+ bltlrl
+# CHECK-BE: bltctrl 2 # encoding: [0x4d,0x88,0x04,0x21]
+# CHECK-LE: bltctrl 2 # encoding: [0x21,0x04,0x88,0x4d]
+ bltctrl 2
+# CHECK-BE: bltctrl 0 # encoding: [0x4d,0x80,0x04,0x21]
+# CHECK-LE: bltctrl 0 # encoding: [0x21,0x04,0x80,0x4d]
+ bltctrl
+
+# CHECK-BE: blt+ 2, target # encoding: [0x41,0xe8,A,0bAAAAAA00]
+# CHECK-LE: blt+ 2, target # encoding: [0bAAAAAA00,A,0xe8,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ blt+ 2, target
+# CHECK-BE: blt+ 0, target # encoding: [0x41,0xe0,A,0bAAAAAA00]
+# CHECK-LE: blt+ 0, target # encoding: [0bAAAAAA00,A,0xe0,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ blt+ target
+# CHECK-BE: blta+ 2, target # encoding: [0x41,0xe8,A,0bAAAAAA10]
+# CHECK-LE: blta+ 2, target # encoding: [0bAAAAAA10,A,0xe8,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ blta+ 2, target
+# CHECK-BE: blta+ 0, target # encoding: [0x41,0xe0,A,0bAAAAAA10]
+# CHECK-LE: blta+ 0, target # encoding: [0bAAAAAA10,A,0xe0,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ blta+ target
+# CHECK-BE: bltlr+ 2 # encoding: [0x4d,0xe8,0x00,0x20]
+# CHECK-LE: bltlr+ 2 # encoding: [0x20,0x00,0xe8,0x4d]
+ bltlr+ 2
+# CHECK-BE: bltlr+ 0 # encoding: [0x4d,0xe0,0x00,0x20]
+# CHECK-LE: bltlr+ 0 # encoding: [0x20,0x00,0xe0,0x4d]
+ bltlr+
+# CHECK-BE: bltctr+ 2 # encoding: [0x4d,0xe8,0x04,0x20]
+# CHECK-LE: bltctr+ 2 # encoding: [0x20,0x04,0xe8,0x4d]
+ bltctr+ 2
+# CHECK-BE: bltctr+ 0 # encoding: [0x4d,0xe0,0x04,0x20]
+# CHECK-LE: bltctr+ 0 # encoding: [0x20,0x04,0xe0,0x4d]
+ bltctr+
+# CHECK-BE: bltl+ 2, target # encoding: [0x41,0xe8,A,0bAAAAAA01]
+# CHECK-LE: bltl+ 2, target # encoding: [0bAAAAAA01,A,0xe8,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bltl+ 2, target
+# CHECK-BE: bltl+ 0, target # encoding: [0x41,0xe0,A,0bAAAAAA01]
+# CHECK-LE: bltl+ 0, target # encoding: [0bAAAAAA01,A,0xe0,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bltl+ target
+# CHECK-BE: bltla+ 2, target # encoding: [0x41,0xe8,A,0bAAAAAA11]
+# CHECK-LE: bltla+ 2, target # encoding: [0bAAAAAA11,A,0xe8,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bltla+ 2, target
+# CHECK-BE: bltla+ 0, target # encoding: [0x41,0xe0,A,0bAAAAAA11]
+# CHECK-LE: bltla+ 0, target # encoding: [0bAAAAAA11,A,0xe0,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bltla+ target
+# CHECK-BE: bltlrl+ 2 # encoding: [0x4d,0xe8,0x00,0x21]
+# CHECK-LE: bltlrl+ 2 # encoding: [0x21,0x00,0xe8,0x4d]
+ bltlrl+ 2
+# CHECK-BE: bltlrl+ 0 # encoding: [0x4d,0xe0,0x00,0x21]
+# CHECK-LE: bltlrl+ 0 # encoding: [0x21,0x00,0xe0,0x4d]
+ bltlrl+
+# CHECK-BE: bltctrl+ 2 # encoding: [0x4d,0xe8,0x04,0x21]
+# CHECK-LE: bltctrl+ 2 # encoding: [0x21,0x04,0xe8,0x4d]
+ bltctrl+ 2
+# CHECK-BE: bltctrl+ 0 # encoding: [0x4d,0xe0,0x04,0x21]
+# CHECK-LE: bltctrl+ 0 # encoding: [0x21,0x04,0xe0,0x4d]
+ bltctrl+
+
+# CHECK-BE: blt- 2, target # encoding: [0x41,0xc8,A,0bAAAAAA00]
+# CHECK-LE: blt- 2, target # encoding: [0bAAAAAA00,A,0xc8,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ blt- 2, target
+# CHECK-BE: blt- 0, target # encoding: [0x41,0xc0,A,0bAAAAAA00]
+# CHECK-LE: blt- 0, target # encoding: [0bAAAAAA00,A,0xc0,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ blt- target
+# CHECK-BE: blta- 2, target # encoding: [0x41,0xc8,A,0bAAAAAA10]
+# CHECK-LE: blta- 2, target # encoding: [0bAAAAAA10,A,0xc8,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ blta- 2, target
+# CHECK-BE: blta- 0, target # encoding: [0x41,0xc0,A,0bAAAAAA10]
+# CHECK-LE: blta- 0, target # encoding: [0bAAAAAA10,A,0xc0,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ blta- target
+# CHECK-BE: bltlr- 2 # encoding: [0x4d,0xc8,0x00,0x20]
+# CHECK-LE: bltlr- 2 # encoding: [0x20,0x00,0xc8,0x4d]
+ bltlr- 2
+# CHECK-BE: bltlr- 0 # encoding: [0x4d,0xc0,0x00,0x20]
+# CHECK-LE: bltlr- 0 # encoding: [0x20,0x00,0xc0,0x4d]
+ bltlr-
+# CHECK-BE: bltctr- 2 # encoding: [0x4d,0xc8,0x04,0x20]
+# CHECK-LE: bltctr- 2 # encoding: [0x20,0x04,0xc8,0x4d]
+ bltctr- 2
+# CHECK-BE: bltctr- 0 # encoding: [0x4d,0xc0,0x04,0x20]
+# CHECK-LE: bltctr- 0 # encoding: [0x20,0x04,0xc0,0x4d]
+ bltctr-
+# CHECK-BE: bltl- 2, target # encoding: [0x41,0xc8,A,0bAAAAAA01]
+# CHECK-LE: bltl- 2, target # encoding: [0bAAAAAA01,A,0xc8,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bltl- 2, target
+# CHECK-BE: bltl- 0, target # encoding: [0x41,0xc0,A,0bAAAAAA01]
+# CHECK-LE: bltl- 0, target # encoding: [0bAAAAAA01,A,0xc0,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bltl- target
+# CHECK-BE: bltla- 2, target # encoding: [0x41,0xc8,A,0bAAAAAA11]
+# CHECK-LE: bltla- 2, target # encoding: [0bAAAAAA11,A,0xc8,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bltla- 2, target
+# CHECK-BE: bltla- 0, target # encoding: [0x41,0xc0,A,0bAAAAAA11]
+# CHECK-LE: bltla- 0, target # encoding: [0bAAAAAA11,A,0xc0,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bltla- target
+# CHECK-BE: bltlrl- 2 # encoding: [0x4d,0xc8,0x00,0x21]
+# CHECK-LE: bltlrl- 2 # encoding: [0x21,0x00,0xc8,0x4d]
+ bltlrl- 2
+# CHECK-BE: bltlrl- 0 # encoding: [0x4d,0xc0,0x00,0x21]
+# CHECK-LE: bltlrl- 0 # encoding: [0x21,0x00,0xc0,0x4d]
+ bltlrl-
+# CHECK-BE: bltctrl- 2 # encoding: [0x4d,0xc8,0x04,0x21]
+# CHECK-LE: bltctrl- 2 # encoding: [0x21,0x04,0xc8,0x4d]
+ bltctrl- 2
+# CHECK-BE: bltctrl- 0 # encoding: [0x4d,0xc0,0x04,0x21]
+# CHECK-LE: bltctrl- 0 # encoding: [0x21,0x04,0xc0,0x4d]
+ bltctrl-
+
+# CHECK-BE: ble 2, target # encoding: [0x40,0x89,A,0bAAAAAA00]
+# CHECK-LE: ble 2, target # encoding: [0bAAAAAA00,A,0x89,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ ble 2, target
+# CHECK-BE: ble 0, target # encoding: [0x40,0x81,A,0bAAAAAA00]
+# CHECK-LE: ble 0, target # encoding: [0bAAAAAA00,A,0x81,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ ble target
+# CHECK-BE: blea 2, target # encoding: [0x40,0x89,A,0bAAAAAA10]
+# CHECK-LE: blea 2, target # encoding: [0bAAAAAA10,A,0x89,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ blea 2, target
+# CHECK-BE: blea 0, target # encoding: [0x40,0x81,A,0bAAAAAA10]
+# CHECK-LE: blea 0, target # encoding: [0bAAAAAA10,A,0x81,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ blea target
+# CHECK-BE: blelr 2 # encoding: [0x4c,0x89,0x00,0x20]
+# CHECK-LE: blelr 2 # encoding: [0x20,0x00,0x89,0x4c]
+ blelr 2
+# CHECK-BE: blelr 0 # encoding: [0x4c,0x81,0x00,0x20]
+# CHECK-LE: blelr 0 # encoding: [0x20,0x00,0x81,0x4c]
+ blelr
+# CHECK-BE: blectr 2 # encoding: [0x4c,0x89,0x04,0x20]
+# CHECK-LE: blectr 2 # encoding: [0x20,0x04,0x89,0x4c]
+ blectr 2
+# CHECK-BE: blectr 0 # encoding: [0x4c,0x81,0x04,0x20]
+# CHECK-LE: blectr 0 # encoding: [0x20,0x04,0x81,0x4c]
+ blectr
+# CHECK-BE: blel 2, target # encoding: [0x40,0x89,A,0bAAAAAA01]
+# CHECK-LE: blel 2, target # encoding: [0bAAAAAA01,A,0x89,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ blel 2, target
+# CHECK-BE: blel 0, target # encoding: [0x40,0x81,A,0bAAAAAA01]
+# CHECK-LE: blel 0, target # encoding: [0bAAAAAA01,A,0x81,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ blel target
+# CHECK-BE: blela 2, target # encoding: [0x40,0x89,A,0bAAAAAA11]
+# CHECK-LE: blela 2, target # encoding: [0bAAAAAA11,A,0x89,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ blela 2, target
+# CHECK-BE: blela 0, target # encoding: [0x40,0x81,A,0bAAAAAA11]
+# CHECK-LE: blela 0, target # encoding: [0bAAAAAA11,A,0x81,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ blela target
+# CHECK-BE: blelrl 2 # encoding: [0x4c,0x89,0x00,0x21]
+# CHECK-LE: blelrl 2 # encoding: [0x21,0x00,0x89,0x4c]
+ blelrl 2
+# CHECK-BE: blelrl 0 # encoding: [0x4c,0x81,0x00,0x21]
+# CHECK-LE: blelrl 0 # encoding: [0x21,0x00,0x81,0x4c]
+ blelrl
+# CHECK-BE: blectrl 2 # encoding: [0x4c,0x89,0x04,0x21]
+# CHECK-LE: blectrl 2 # encoding: [0x21,0x04,0x89,0x4c]
+ blectrl 2
+# CHECK-BE: blectrl 0 # encoding: [0x4c,0x81,0x04,0x21]
+# CHECK-LE: blectrl 0 # encoding: [0x21,0x04,0x81,0x4c]
+ blectrl
+
+# CHECK-BE: ble+ 2, target # encoding: [0x40,0xe9,A,0bAAAAAA00]
+# CHECK-LE: ble+ 2, target # encoding: [0bAAAAAA00,A,0xe9,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ ble+ 2, target
+# CHECK-BE: ble+ 0, target # encoding: [0x40,0xe1,A,0bAAAAAA00]
+# CHECK-LE: ble+ 0, target # encoding: [0bAAAAAA00,A,0xe1,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ ble+ target
+# CHECK-BE: blea+ 2, target # encoding: [0x40,0xe9,A,0bAAAAAA10]
+# CHECK-LE: blea+ 2, target # encoding: [0bAAAAAA10,A,0xe9,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ blea+ 2, target
+# CHECK-BE: blea+ 0, target # encoding: [0x40,0xe1,A,0bAAAAAA10]
+# CHECK-LE: blea+ 0, target # encoding: [0bAAAAAA10,A,0xe1,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ blea+ target
+# CHECK-BE: blelr+ 2 # encoding: [0x4c,0xe9,0x00,0x20]
+# CHECK-LE: blelr+ 2 # encoding: [0x20,0x00,0xe9,0x4c]
+ blelr+ 2
+# CHECK-BE: blelr+ 0 # encoding: [0x4c,0xe1,0x00,0x20]
+# CHECK-LE: blelr+ 0 # encoding: [0x20,0x00,0xe1,0x4c]
+ blelr+
+# CHECK-BE: blectr+ 2 # encoding: [0x4c,0xe9,0x04,0x20]
+# CHECK-LE: blectr+ 2 # encoding: [0x20,0x04,0xe9,0x4c]
+ blectr+ 2
+# CHECK-BE: blectr+ 0 # encoding: [0x4c,0xe1,0x04,0x20]
+# CHECK-LE: blectr+ 0 # encoding: [0x20,0x04,0xe1,0x4c]
+ blectr+
+# CHECK-BE: blel+ 2, target # encoding: [0x40,0xe9,A,0bAAAAAA01]
+# CHECK-LE: blel+ 2, target # encoding: [0bAAAAAA01,A,0xe9,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ blel+ 2, target
+# CHECK-BE: blel+ 0, target # encoding: [0x40,0xe1,A,0bAAAAAA01]
+# CHECK-LE: blel+ 0, target # encoding: [0bAAAAAA01,A,0xe1,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ blel+ target
+# CHECK-BE: blela+ 2, target # encoding: [0x40,0xe9,A,0bAAAAAA11]
+# CHECK-LE: blela+ 2, target # encoding: [0bAAAAAA11,A,0xe9,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ blela+ 2, target
+# CHECK-BE: blela+ 0, target # encoding: [0x40,0xe1,A,0bAAAAAA11]
+# CHECK-LE: blela+ 0, target # encoding: [0bAAAAAA11,A,0xe1,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ blela+ target
+# CHECK-BE: blelrl+ 2 # encoding: [0x4c,0xe9,0x00,0x21]
+# CHECK-LE: blelrl+ 2 # encoding: [0x21,0x00,0xe9,0x4c]
+ blelrl+ 2
+# CHECK-BE: blelrl+ 0 # encoding: [0x4c,0xe1,0x00,0x21]
+# CHECK-LE: blelrl+ 0 # encoding: [0x21,0x00,0xe1,0x4c]
+ blelrl+
+# CHECK-BE: blectrl+ 2 # encoding: [0x4c,0xe9,0x04,0x21]
+# CHECK-LE: blectrl+ 2 # encoding: [0x21,0x04,0xe9,0x4c]
+ blectrl+ 2
+# CHECK-BE: blectrl+ 0 # encoding: [0x4c,0xe1,0x04,0x21]
+# CHECK-LE: blectrl+ 0 # encoding: [0x21,0x04,0xe1,0x4c]
+ blectrl+
+
+# CHECK-BE: ble- 2, target # encoding: [0x40,0xc9,A,0bAAAAAA00]
+# CHECK-LE: ble- 2, target # encoding: [0bAAAAAA00,A,0xc9,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ ble- 2, target
+# CHECK-BE: ble- 0, target # encoding: [0x40,0xc1,A,0bAAAAAA00]
+# CHECK-LE: ble- 0, target # encoding: [0bAAAAAA00,A,0xc1,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ ble- target
+# CHECK-BE: blea- 2, target # encoding: [0x40,0xc9,A,0bAAAAAA10]
+# CHECK-LE: blea- 2, target # encoding: [0bAAAAAA10,A,0xc9,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ blea- 2, target
+# CHECK-BE: blea- 0, target # encoding: [0x40,0xc1,A,0bAAAAAA10]
+# CHECK-LE: blea- 0, target # encoding: [0bAAAAAA10,A,0xc1,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ blea- target
+# CHECK-BE: blelr- 2 # encoding: [0x4c,0xc9,0x00,0x20]
+# CHECK-LE: blelr- 2 # encoding: [0x20,0x00,0xc9,0x4c]
+ blelr- 2
+# CHECK-BE: blelr- 0 # encoding: [0x4c,0xc1,0x00,0x20]
+# CHECK-LE: blelr- 0 # encoding: [0x20,0x00,0xc1,0x4c]
+ blelr-
+# CHECK-BE: blectr- 2 # encoding: [0x4c,0xc9,0x04,0x20]
+# CHECK-LE: blectr- 2 # encoding: [0x20,0x04,0xc9,0x4c]
+ blectr- 2
+# CHECK-BE: blectr- 0 # encoding: [0x4c,0xc1,0x04,0x20]
+# CHECK-LE: blectr- 0 # encoding: [0x20,0x04,0xc1,0x4c]
+ blectr-
+# CHECK-BE: blel- 2, target # encoding: [0x40,0xc9,A,0bAAAAAA01]
+# CHECK-LE: blel- 2, target # encoding: [0bAAAAAA01,A,0xc9,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ blel- 2, target
+# CHECK-BE: blel- 0, target # encoding: [0x40,0xc1,A,0bAAAAAA01]
+# CHECK-LE: blel- 0, target # encoding: [0bAAAAAA01,A,0xc1,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ blel- target
+# CHECK-BE: blela- 2, target # encoding: [0x40,0xc9,A,0bAAAAAA11]
+# CHECK-LE: blela- 2, target # encoding: [0bAAAAAA11,A,0xc9,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ blela- 2, target
+# CHECK-BE: blela- 0, target # encoding: [0x40,0xc1,A,0bAAAAAA11]
+# CHECK-LE: blela- 0, target # encoding: [0bAAAAAA11,A,0xc1,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ blela- target
+# CHECK-BE: blelrl- 2 # encoding: [0x4c,0xc9,0x00,0x21]
+# CHECK-LE: blelrl- 2 # encoding: [0x21,0x00,0xc9,0x4c]
+ blelrl- 2
+# CHECK-BE: blelrl- 0 # encoding: [0x4c,0xc1,0x00,0x21]
+# CHECK-LE: blelrl- 0 # encoding: [0x21,0x00,0xc1,0x4c]
+ blelrl-
+# CHECK-BE: blectrl- 2 # encoding: [0x4c,0xc9,0x04,0x21]
+# CHECK-LE: blectrl- 2 # encoding: [0x21,0x04,0xc9,0x4c]
+ blectrl- 2
+# CHECK-BE: blectrl- 0 # encoding: [0x4c,0xc1,0x04,0x21]
+# CHECK-LE: blectrl- 0 # encoding: [0x21,0x04,0xc1,0x4c]
+ blectrl-
+
+# CHECK-BE: beq 2, target # encoding: [0x41,0x8a,A,0bAAAAAA00]
+# CHECK-LE: beq 2, target # encoding: [0bAAAAAA00,A,0x8a,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ beq 2, target
+# CHECK-BE: beq 0, target # encoding: [0x41,0x82,A,0bAAAAAA00]
+# CHECK-LE: beq 0, target # encoding: [0bAAAAAA00,A,0x82,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ beq target
+# CHECK-BE: beqa 2, target # encoding: [0x41,0x8a,A,0bAAAAAA10]
+# CHECK-LE: beqa 2, target # encoding: [0bAAAAAA10,A,0x8a,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ beqa 2, target
+# CHECK-BE: beqa 0, target # encoding: [0x41,0x82,A,0bAAAAAA10]
+# CHECK-LE: beqa 0, target # encoding: [0bAAAAAA10,A,0x82,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ beqa target
+# CHECK-BE: beqlr 2 # encoding: [0x4d,0x8a,0x00,0x20]
+# CHECK-LE: beqlr 2 # encoding: [0x20,0x00,0x8a,0x4d]
+ beqlr 2
+# CHECK-BE: beqlr 0 # encoding: [0x4d,0x82,0x00,0x20]
+# CHECK-LE: beqlr 0 # encoding: [0x20,0x00,0x82,0x4d]
+ beqlr
+# CHECK-BE: beqctr 2 # encoding: [0x4d,0x8a,0x04,0x20]
+# CHECK-LE: beqctr 2 # encoding: [0x20,0x04,0x8a,0x4d]
+ beqctr 2
+# CHECK-BE: beqctr 0 # encoding: [0x4d,0x82,0x04,0x20]
+# CHECK-LE: beqctr 0 # encoding: [0x20,0x04,0x82,0x4d]
+ beqctr
+# CHECK-BE: beql 2, target # encoding: [0x41,0x8a,A,0bAAAAAA01]
+# CHECK-LE: beql 2, target # encoding: [0bAAAAAA01,A,0x8a,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ beql 2, target
+# CHECK-BE: beql 0, target # encoding: [0x41,0x82,A,0bAAAAAA01]
+# CHECK-LE: beql 0, target # encoding: [0bAAAAAA01,A,0x82,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ beql target
+# CHECK-BE: beqla 2, target # encoding: [0x41,0x8a,A,0bAAAAAA11]
+# CHECK-LE: beqla 2, target # encoding: [0bAAAAAA11,A,0x8a,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ beqla 2, target
+# CHECK-BE: beqla 0, target # encoding: [0x41,0x82,A,0bAAAAAA11]
+# CHECK-LE: beqla 0, target # encoding: [0bAAAAAA11,A,0x82,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ beqla target
+# CHECK-BE: beqlrl 2 # encoding: [0x4d,0x8a,0x00,0x21]
+# CHECK-LE: beqlrl 2 # encoding: [0x21,0x00,0x8a,0x4d]
+ beqlrl 2
+# CHECK-BE: beqlrl 0 # encoding: [0x4d,0x82,0x00,0x21]
+# CHECK-LE: beqlrl 0 # encoding: [0x21,0x00,0x82,0x4d]
+ beqlrl
+# CHECK-BE: beqctrl 2 # encoding: [0x4d,0x8a,0x04,0x21]
+# CHECK-LE: beqctrl 2 # encoding: [0x21,0x04,0x8a,0x4d]
+ beqctrl 2
+# CHECK-BE: beqctrl 0 # encoding: [0x4d,0x82,0x04,0x21]
+# CHECK-LE: beqctrl 0 # encoding: [0x21,0x04,0x82,0x4d]
+ beqctrl
+
+# CHECK-BE: beq+ 2, target # encoding: [0x41,0xea,A,0bAAAAAA00]
+# CHECK-LE: beq+ 2, target # encoding: [0bAAAAAA00,A,0xea,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ beq+ 2, target
+# CHECK-BE: beq+ 0, target # encoding: [0x41,0xe2,A,0bAAAAAA00]
+# CHECK-LE: beq+ 0, target # encoding: [0bAAAAAA00,A,0xe2,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ beq+ target
+# CHECK-BE: beqa+ 2, target # encoding: [0x41,0xea,A,0bAAAAAA10]
+# CHECK-LE: beqa+ 2, target # encoding: [0bAAAAAA10,A,0xea,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ beqa+ 2, target
+# CHECK-BE: beqa+ 0, target # encoding: [0x41,0xe2,A,0bAAAAAA10]
+# CHECK-LE: beqa+ 0, target # encoding: [0bAAAAAA10,A,0xe2,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ beqa+ target
+# CHECK-BE: beqlr+ 2 # encoding: [0x4d,0xea,0x00,0x20]
+# CHECK-LE: beqlr+ 2 # encoding: [0x20,0x00,0xea,0x4d]
+ beqlr+ 2
+# CHECK-BE: beqlr+ 0 # encoding: [0x4d,0xe2,0x00,0x20]
+# CHECK-LE: beqlr+ 0 # encoding: [0x20,0x00,0xe2,0x4d]
+ beqlr+
+# CHECK-BE: beqctr+ 2 # encoding: [0x4d,0xea,0x04,0x20]
+# CHECK-LE: beqctr+ 2 # encoding: [0x20,0x04,0xea,0x4d]
+ beqctr+ 2
+# CHECK-BE: beqctr+ 0 # encoding: [0x4d,0xe2,0x04,0x20]
+# CHECK-LE: beqctr+ 0 # encoding: [0x20,0x04,0xe2,0x4d]
+ beqctr+
+# CHECK-BE: beql+ 2, target # encoding: [0x41,0xea,A,0bAAAAAA01]
+# CHECK-LE: beql+ 2, target # encoding: [0bAAAAAA01,A,0xea,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ beql+ 2, target
+# CHECK-BE: beql+ 0, target # encoding: [0x41,0xe2,A,0bAAAAAA01]
+# CHECK-LE: beql+ 0, target # encoding: [0bAAAAAA01,A,0xe2,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ beql+ target
+# CHECK-BE: beqla+ 2, target # encoding: [0x41,0xea,A,0bAAAAAA11]
+# CHECK-LE: beqla+ 2, target # encoding: [0bAAAAAA11,A,0xea,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ beqla+ 2, target
+# CHECK-BE: beqla+ 0, target # encoding: [0x41,0xe2,A,0bAAAAAA11]
+# CHECK-LE: beqla+ 0, target # encoding: [0bAAAAAA11,A,0xe2,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ beqla+ target
+# CHECK-BE: beqlrl+ 2 # encoding: [0x4d,0xea,0x00,0x21]
+# CHECK-LE: beqlrl+ 2 # encoding: [0x21,0x00,0xea,0x4d]
+ beqlrl+ 2
+# CHECK-BE: beqlrl+ 0 # encoding: [0x4d,0xe2,0x00,0x21]
+# CHECK-LE: beqlrl+ 0 # encoding: [0x21,0x00,0xe2,0x4d]
+ beqlrl+
+# CHECK-BE: beqctrl+ 2 # encoding: [0x4d,0xea,0x04,0x21]
+# CHECK-LE: beqctrl+ 2 # encoding: [0x21,0x04,0xea,0x4d]
+ beqctrl+ 2
+# CHECK-BE: beqctrl+ 0 # encoding: [0x4d,0xe2,0x04,0x21]
+# CHECK-LE: beqctrl+ 0 # encoding: [0x21,0x04,0xe2,0x4d]
+ beqctrl+
+
+# CHECK-BE: beq- 2, target # encoding: [0x41,0xca,A,0bAAAAAA00]
+# CHECK-LE: beq- 2, target # encoding: [0bAAAAAA00,A,0xca,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ beq- 2, target
+# CHECK-BE: beq- 0, target # encoding: [0x41,0xc2,A,0bAAAAAA00]
+# CHECK-LE: beq- 0, target # encoding: [0bAAAAAA00,A,0xc2,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ beq- target
+# CHECK-BE: beqa- 2, target # encoding: [0x41,0xca,A,0bAAAAAA10]
+# CHECK-LE: beqa- 2, target # encoding: [0bAAAAAA10,A,0xca,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ beqa- 2, target
+# CHECK-BE: beqa- 0, target # encoding: [0x41,0xc2,A,0bAAAAAA10]
+# CHECK-LE: beqa- 0, target # encoding: [0bAAAAAA10,A,0xc2,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ beqa- target
+# CHECK-BE: beqlr- 2 # encoding: [0x4d,0xca,0x00,0x20]
+# CHECK-LE: beqlr- 2 # encoding: [0x20,0x00,0xca,0x4d]
+ beqlr- 2
+# CHECK-BE: beqlr- 0 # encoding: [0x4d,0xc2,0x00,0x20]
+# CHECK-LE: beqlr- 0 # encoding: [0x20,0x00,0xc2,0x4d]
+ beqlr-
+# CHECK-BE: beqctr- 2 # encoding: [0x4d,0xca,0x04,0x20]
+# CHECK-LE: beqctr- 2 # encoding: [0x20,0x04,0xca,0x4d]
+ beqctr- 2
+# CHECK-BE: beqctr- 0 # encoding: [0x4d,0xc2,0x04,0x20]
+# CHECK-LE: beqctr- 0 # encoding: [0x20,0x04,0xc2,0x4d]
+ beqctr-
+# CHECK-BE: beql- 2, target # encoding: [0x41,0xca,A,0bAAAAAA01]
+# CHECK-LE: beql- 2, target # encoding: [0bAAAAAA01,A,0xca,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ beql- 2, target
+# CHECK-BE: beql- 0, target # encoding: [0x41,0xc2,A,0bAAAAAA01]
+# CHECK-LE: beql- 0, target # encoding: [0bAAAAAA01,A,0xc2,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ beql- target
+# CHECK-BE: beqla- 2, target # encoding: [0x41,0xca,A,0bAAAAAA11]
+# CHECK-LE: beqla- 2, target # encoding: [0bAAAAAA11,A,0xca,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ beqla- 2, target
+# CHECK-BE: beqla- 0, target # encoding: [0x41,0xc2,A,0bAAAAAA11]
+# CHECK-LE: beqla- 0, target # encoding: [0bAAAAAA11,A,0xc2,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ beqla- target
+# CHECK-BE: beqlrl- 2 # encoding: [0x4d,0xca,0x00,0x21]
+# CHECK-LE: beqlrl- 2 # encoding: [0x21,0x00,0xca,0x4d]
+ beqlrl- 2
+# CHECK-BE: beqlrl- 0 # encoding: [0x4d,0xc2,0x00,0x21]
+# CHECK-LE: beqlrl- 0 # encoding: [0x21,0x00,0xc2,0x4d]
+ beqlrl-
+# CHECK-BE: beqctrl- 2 # encoding: [0x4d,0xca,0x04,0x21]
+# CHECK-LE: beqctrl- 2 # encoding: [0x21,0x04,0xca,0x4d]
+ beqctrl- 2
+# CHECK-BE: beqctrl- 0 # encoding: [0x4d,0xc2,0x04,0x21]
+# CHECK-LE: beqctrl- 0 # encoding: [0x21,0x04,0xc2,0x4d]
+ beqctrl-
+
+# CHECK-BE: bge 2, target # encoding: [0x40,0x88,A,0bAAAAAA00]
+# CHECK-LE: bge 2, target # encoding: [0bAAAAAA00,A,0x88,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bge 2, target
+# CHECK-BE: bge 0, target # encoding: [0x40,0x80,A,0bAAAAAA00]
+# CHECK-LE: bge 0, target # encoding: [0bAAAAAA00,A,0x80,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bge target
+# CHECK-BE: bgea 2, target # encoding: [0x40,0x88,A,0bAAAAAA10]
+# CHECK-LE: bgea 2, target # encoding: [0bAAAAAA10,A,0x88,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bgea 2, target
+# CHECK-BE: bgea 0, target # encoding: [0x40,0x80,A,0bAAAAAA10]
+# CHECK-LE: bgea 0, target # encoding: [0bAAAAAA10,A,0x80,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bgea target
+# CHECK-BE: bgelr 2 # encoding: [0x4c,0x88,0x00,0x20]
+# CHECK-LE: bgelr 2 # encoding: [0x20,0x00,0x88,0x4c]
+ bgelr 2
+# CHECK-BE: bgelr 0 # encoding: [0x4c,0x80,0x00,0x20]
+# CHECK-LE: bgelr 0 # encoding: [0x20,0x00,0x80,0x4c]
+ bgelr
+# CHECK-BE: bgectr 2 # encoding: [0x4c,0x88,0x04,0x20]
+# CHECK-LE: bgectr 2 # encoding: [0x20,0x04,0x88,0x4c]
+ bgectr 2
+# CHECK-BE: bgectr 0 # encoding: [0x4c,0x80,0x04,0x20]
+# CHECK-LE: bgectr 0 # encoding: [0x20,0x04,0x80,0x4c]
+ bgectr
+# CHECK-BE: bgel 2, target # encoding: [0x40,0x88,A,0bAAAAAA01]
+# CHECK-LE: bgel 2, target # encoding: [0bAAAAAA01,A,0x88,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bgel 2, target
+# CHECK-BE: bgel 0, target # encoding: [0x40,0x80,A,0bAAAAAA01]
+# CHECK-LE: bgel 0, target # encoding: [0bAAAAAA01,A,0x80,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bgel target
+# CHECK-BE: bgela 2, target # encoding: [0x40,0x88,A,0bAAAAAA11]
+# CHECK-LE: bgela 2, target # encoding: [0bAAAAAA11,A,0x88,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bgela 2, target
+# CHECK-BE: bgela 0, target # encoding: [0x40,0x80,A,0bAAAAAA11]
+# CHECK-LE: bgela 0, target # encoding: [0bAAAAAA11,A,0x80,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bgela target
+# CHECK-BE: bgelrl 2 # encoding: [0x4c,0x88,0x00,0x21]
+# CHECK-LE: bgelrl 2 # encoding: [0x21,0x00,0x88,0x4c]
+ bgelrl 2
+# CHECK-BE: bgelrl 0 # encoding: [0x4c,0x80,0x00,0x21]
+# CHECK-LE: bgelrl 0 # encoding: [0x21,0x00,0x80,0x4c]
+ bgelrl
+# CHECK-BE: bgectrl 2 # encoding: [0x4c,0x88,0x04,0x21]
+# CHECK-LE: bgectrl 2 # encoding: [0x21,0x04,0x88,0x4c]
+ bgectrl 2
+# CHECK-BE: bgectrl 0 # encoding: [0x4c,0x80,0x04,0x21]
+# CHECK-LE: bgectrl 0 # encoding: [0x21,0x04,0x80,0x4c]
+ bgectrl
+
+# CHECK-BE: bge+ 2, target # encoding: [0x40,0xe8,A,0bAAAAAA00]
+# CHECK-LE: bge+ 2, target # encoding: [0bAAAAAA00,A,0xe8,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bge+ 2, target
+# CHECK-BE: bge+ 0, target # encoding: [0x40,0xe0,A,0bAAAAAA00]
+# CHECK-LE: bge+ 0, target # encoding: [0bAAAAAA00,A,0xe0,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bge+ target
+# CHECK-BE: bgea+ 2, target # encoding: [0x40,0xe8,A,0bAAAAAA10]
+# CHECK-LE: bgea+ 2, target # encoding: [0bAAAAAA10,A,0xe8,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bgea+ 2, target
+# CHECK-BE: bgea+ 0, target # encoding: [0x40,0xe0,A,0bAAAAAA10]
+# CHECK-LE: bgea+ 0, target # encoding: [0bAAAAAA10,A,0xe0,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bgea+ target
+# CHECK-BE: bgelr+ 2 # encoding: [0x4c,0xe8,0x00,0x20]
+# CHECK-LE: bgelr+ 2 # encoding: [0x20,0x00,0xe8,0x4c]
+ bgelr+ 2
+# CHECK-BE: bgelr+ 0 # encoding: [0x4c,0xe0,0x00,0x20]
+# CHECK-LE: bgelr+ 0 # encoding: [0x20,0x00,0xe0,0x4c]
+ bgelr+
+# CHECK-BE: bgectr+ 2 # encoding: [0x4c,0xe8,0x04,0x20]
+# CHECK-LE: bgectr+ 2 # encoding: [0x20,0x04,0xe8,0x4c]
+ bgectr+ 2
+# CHECK-BE: bgectr+ 0 # encoding: [0x4c,0xe0,0x04,0x20]
+# CHECK-LE: bgectr+ 0 # encoding: [0x20,0x04,0xe0,0x4c]
+ bgectr+
+# CHECK-BE: bgel+ 2, target # encoding: [0x40,0xe8,A,0bAAAAAA01]
+# CHECK-LE: bgel+ 2, target # encoding: [0bAAAAAA01,A,0xe8,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bgel+ 2, target
+# CHECK-BE: bgel+ 0, target # encoding: [0x40,0xe0,A,0bAAAAAA01]
+# CHECK-LE: bgel+ 0, target # encoding: [0bAAAAAA01,A,0xe0,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bgel+ target
+# CHECK-BE: bgela+ 2, target # encoding: [0x40,0xe8,A,0bAAAAAA11]
+# CHECK-LE: bgela+ 2, target # encoding: [0bAAAAAA11,A,0xe8,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bgela+ 2, target
+# CHECK-BE: bgela+ 0, target # encoding: [0x40,0xe0,A,0bAAAAAA11]
+# CHECK-LE: bgela+ 0, target # encoding: [0bAAAAAA11,A,0xe0,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bgela+ target
+# CHECK-BE: bgelrl+ 2 # encoding: [0x4c,0xe8,0x00,0x21]
+# CHECK-LE: bgelrl+ 2 # encoding: [0x21,0x00,0xe8,0x4c]
+ bgelrl+ 2
+# CHECK-BE: bgelrl+ 0 # encoding: [0x4c,0xe0,0x00,0x21]
+# CHECK-LE: bgelrl+ 0 # encoding: [0x21,0x00,0xe0,0x4c]
+ bgelrl+
+# CHECK-BE: bgectrl+ 2 # encoding: [0x4c,0xe8,0x04,0x21]
+# CHECK-LE: bgectrl+ 2 # encoding: [0x21,0x04,0xe8,0x4c]
+ bgectrl+ 2
+# CHECK-BE: bgectrl+ 0 # encoding: [0x4c,0xe0,0x04,0x21]
+# CHECK-LE: bgectrl+ 0 # encoding: [0x21,0x04,0xe0,0x4c]
+ bgectrl+
+
+# CHECK-BE: bge- 2, target # encoding: [0x40,0xc8,A,0bAAAAAA00]
+# CHECK-LE: bge- 2, target # encoding: [0bAAAAAA00,A,0xc8,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bge- 2, target
+# CHECK-BE: bge- 0, target # encoding: [0x40,0xc0,A,0bAAAAAA00]
+# CHECK-LE: bge- 0, target # encoding: [0bAAAAAA00,A,0xc0,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bge- target
+# CHECK-BE: bgea- 2, target # encoding: [0x40,0xc8,A,0bAAAAAA10]
+# CHECK-LE: bgea- 2, target # encoding: [0bAAAAAA10,A,0xc8,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bgea- 2, target
+# CHECK-BE: bgea- 0, target # encoding: [0x40,0xc0,A,0bAAAAAA10]
+# CHECK-LE: bgea- 0, target # encoding: [0bAAAAAA10,A,0xc0,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bgea- target
+# CHECK-BE: bgelr- 2 # encoding: [0x4c,0xc8,0x00,0x20]
+# CHECK-LE: bgelr- 2 # encoding: [0x20,0x00,0xc8,0x4c]
+ bgelr- 2
+# CHECK-BE: bgelr- 0 # encoding: [0x4c,0xc0,0x00,0x20]
+# CHECK-LE: bgelr- 0 # encoding: [0x20,0x00,0xc0,0x4c]
+ bgelr-
+# CHECK-BE: bgectr- 2 # encoding: [0x4c,0xc8,0x04,0x20]
+# CHECK-LE: bgectr- 2 # encoding: [0x20,0x04,0xc8,0x4c]
+ bgectr- 2
+# CHECK-BE: bgectr- 0 # encoding: [0x4c,0xc0,0x04,0x20]
+# CHECK-LE: bgectr- 0 # encoding: [0x20,0x04,0xc0,0x4c]
+ bgectr-
+# CHECK-BE: bgel- 2, target # encoding: [0x40,0xc8,A,0bAAAAAA01]
+# CHECK-LE: bgel- 2, target # encoding: [0bAAAAAA01,A,0xc8,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bgel- 2, target
+# CHECK-BE: bgel- 0, target # encoding: [0x40,0xc0,A,0bAAAAAA01]
+# CHECK-LE: bgel- 0, target # encoding: [0bAAAAAA01,A,0xc0,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bgel- target
+# CHECK-BE: bgela- 2, target # encoding: [0x40,0xc8,A,0bAAAAAA11]
+# CHECK-LE: bgela- 2, target # encoding: [0bAAAAAA11,A,0xc8,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bgela- 2, target
+# CHECK-BE: bgela- 0, target # encoding: [0x40,0xc0,A,0bAAAAAA11]
+# CHECK-LE: bgela- 0, target # encoding: [0bAAAAAA11,A,0xc0,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bgela- target
+# CHECK-BE: bgelrl- 2 # encoding: [0x4c,0xc8,0x00,0x21]
+# CHECK-LE: bgelrl- 2 # encoding: [0x21,0x00,0xc8,0x4c]
+ bgelrl- 2
+# CHECK-BE: bgelrl- 0 # encoding: [0x4c,0xc0,0x00,0x21]
+# CHECK-LE: bgelrl- 0 # encoding: [0x21,0x00,0xc0,0x4c]
+ bgelrl-
+# CHECK-BE: bgectrl- 2 # encoding: [0x4c,0xc8,0x04,0x21]
+# CHECK-LE: bgectrl- 2 # encoding: [0x21,0x04,0xc8,0x4c]
+ bgectrl- 2
+# CHECK-BE: bgectrl- 0 # encoding: [0x4c,0xc0,0x04,0x21]
+# CHECK-LE: bgectrl- 0 # encoding: [0x21,0x04,0xc0,0x4c]
+ bgectrl-
+
+# CHECK-BE: bgt 2, target # encoding: [0x41,0x89,A,0bAAAAAA00]
+# CHECK-LE: bgt 2, target # encoding: [0bAAAAAA00,A,0x89,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bgt 2, target
+# CHECK-BE: bgt 0, target # encoding: [0x41,0x81,A,0bAAAAAA00]
+# CHECK-LE: bgt 0, target # encoding: [0bAAAAAA00,A,0x81,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bgt target
+# CHECK-BE: bgta 2, target # encoding: [0x41,0x89,A,0bAAAAAA10]
+# CHECK-LE: bgta 2, target # encoding: [0bAAAAAA10,A,0x89,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bgta 2, target
+# CHECK-BE: bgta 0, target # encoding: [0x41,0x81,A,0bAAAAAA10]
+# CHECK-LE: bgta 0, target # encoding: [0bAAAAAA10,A,0x81,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bgta target
+# CHECK-BE: bgtlr 2 # encoding: [0x4d,0x89,0x00,0x20]
+# CHECK-LE: bgtlr 2 # encoding: [0x20,0x00,0x89,0x4d]
+ bgtlr 2
+# CHECK-BE: bgtlr 0 # encoding: [0x4d,0x81,0x00,0x20]
+# CHECK-LE: bgtlr 0 # encoding: [0x20,0x00,0x81,0x4d]
+ bgtlr
+# CHECK-BE: bgtctr 2 # encoding: [0x4d,0x89,0x04,0x20]
+# CHECK-LE: bgtctr 2 # encoding: [0x20,0x04,0x89,0x4d]
+ bgtctr 2
+# CHECK-BE: bgtctr 0 # encoding: [0x4d,0x81,0x04,0x20]
+# CHECK-LE: bgtctr 0 # encoding: [0x20,0x04,0x81,0x4d]
+ bgtctr
+# CHECK-BE: bgtl 2, target # encoding: [0x41,0x89,A,0bAAAAAA01]
+# CHECK-LE: bgtl 2, target # encoding: [0bAAAAAA01,A,0x89,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bgtl 2, target
+# CHECK-BE: bgtl 0, target # encoding: [0x41,0x81,A,0bAAAAAA01]
+# CHECK-LE: bgtl 0, target # encoding: [0bAAAAAA01,A,0x81,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bgtl target
+# CHECK-BE: bgtla 2, target # encoding: [0x41,0x89,A,0bAAAAAA11]
+# CHECK-LE: bgtla 2, target # encoding: [0bAAAAAA11,A,0x89,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bgtla 2, target
+# CHECK-BE: bgtla 0, target # encoding: [0x41,0x81,A,0bAAAAAA11]
+# CHECK-LE: bgtla 0, target # encoding: [0bAAAAAA11,A,0x81,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bgtla target
+# CHECK-BE: bgtlrl 2 # encoding: [0x4d,0x89,0x00,0x21]
+# CHECK-LE: bgtlrl 2 # encoding: [0x21,0x00,0x89,0x4d]
+ bgtlrl 2
+# CHECK-BE: bgtlrl 0 # encoding: [0x4d,0x81,0x00,0x21]
+# CHECK-LE: bgtlrl 0 # encoding: [0x21,0x00,0x81,0x4d]
+ bgtlrl
+# CHECK-BE: bgtctrl 2 # encoding: [0x4d,0x89,0x04,0x21]
+# CHECK-LE: bgtctrl 2 # encoding: [0x21,0x04,0x89,0x4d]
+ bgtctrl 2
+# CHECK-BE: bgtctrl 0 # encoding: [0x4d,0x81,0x04,0x21]
+# CHECK-LE: bgtctrl 0 # encoding: [0x21,0x04,0x81,0x4d]
+ bgtctrl
+
+# CHECK-BE: bgt+ 2, target # encoding: [0x41,0xe9,A,0bAAAAAA00]
+# CHECK-LE: bgt+ 2, target # encoding: [0bAAAAAA00,A,0xe9,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bgt+ 2, target
+# CHECK-BE: bgt+ 0, target # encoding: [0x41,0xe1,A,0bAAAAAA00]
+# CHECK-LE: bgt+ 0, target # encoding: [0bAAAAAA00,A,0xe1,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bgt+ target
+# CHECK-BE: bgta+ 2, target # encoding: [0x41,0xe9,A,0bAAAAAA10]
+# CHECK-LE: bgta+ 2, target # encoding: [0bAAAAAA10,A,0xe9,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bgta+ 2, target
+# CHECK-BE: bgta+ 0, target # encoding: [0x41,0xe1,A,0bAAAAAA10]
+# CHECK-LE: bgta+ 0, target # encoding: [0bAAAAAA10,A,0xe1,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bgta+ target
+# CHECK-BE: bgtlr+ 2 # encoding: [0x4d,0xe9,0x00,0x20]
+# CHECK-LE: bgtlr+ 2 # encoding: [0x20,0x00,0xe9,0x4d]
+ bgtlr+ 2
+# CHECK-BE: bgtlr+ 0 # encoding: [0x4d,0xe1,0x00,0x20]
+# CHECK-LE: bgtlr+ 0 # encoding: [0x20,0x00,0xe1,0x4d]
+ bgtlr+
+# CHECK-BE: bgtctr+ 2 # encoding: [0x4d,0xe9,0x04,0x20]
+# CHECK-LE: bgtctr+ 2 # encoding: [0x20,0x04,0xe9,0x4d]
+ bgtctr+ 2
+# CHECK-BE: bgtctr+ 0 # encoding: [0x4d,0xe1,0x04,0x20]
+# CHECK-LE: bgtctr+ 0 # encoding: [0x20,0x04,0xe1,0x4d]
+ bgtctr+
+# CHECK-BE: bgtl+ 2, target # encoding: [0x41,0xe9,A,0bAAAAAA01]
+# CHECK-LE: bgtl+ 2, target # encoding: [0bAAAAAA01,A,0xe9,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bgtl+ 2, target
+# CHECK-BE: bgtl+ 0, target # encoding: [0x41,0xe1,A,0bAAAAAA01]
+# CHECK-LE: bgtl+ 0, target # encoding: [0bAAAAAA01,A,0xe1,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bgtl+ target
+# CHECK-BE: bgtla+ 2, target # encoding: [0x41,0xe9,A,0bAAAAAA11]
+# CHECK-LE: bgtla+ 2, target # encoding: [0bAAAAAA11,A,0xe9,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bgtla+ 2, target
+# CHECK-BE: bgtla+ 0, target # encoding: [0x41,0xe1,A,0bAAAAAA11]
+# CHECK-LE: bgtla+ 0, target # encoding: [0bAAAAAA11,A,0xe1,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bgtla+ target
+# CHECK-BE: bgtlrl+ 2 # encoding: [0x4d,0xe9,0x00,0x21]
+# CHECK-LE: bgtlrl+ 2 # encoding: [0x21,0x00,0xe9,0x4d]
+ bgtlrl+ 2
+# CHECK-BE: bgtlrl+ 0 # encoding: [0x4d,0xe1,0x00,0x21]
+# CHECK-LE: bgtlrl+ 0 # encoding: [0x21,0x00,0xe1,0x4d]
+ bgtlrl+
+# CHECK-BE: bgtctrl+ 2 # encoding: [0x4d,0xe9,0x04,0x21]
+# CHECK-LE: bgtctrl+ 2 # encoding: [0x21,0x04,0xe9,0x4d]
+ bgtctrl+ 2
+# CHECK-BE: bgtctrl+ 0 # encoding: [0x4d,0xe1,0x04,0x21]
+# CHECK-LE: bgtctrl+ 0 # encoding: [0x21,0x04,0xe1,0x4d]
+ bgtctrl+
+
+# CHECK-BE: bgt- 2, target # encoding: [0x41,0xc9,A,0bAAAAAA00]
+# CHECK-LE: bgt- 2, target # encoding: [0bAAAAAA00,A,0xc9,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bgt- 2, target
+# CHECK-BE: bgt- 0, target # encoding: [0x41,0xc1,A,0bAAAAAA00]
+# CHECK-LE: bgt- 0, target # encoding: [0bAAAAAA00,A,0xc1,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bgt- target
+# CHECK-BE: bgta- 2, target # encoding: [0x41,0xc9,A,0bAAAAAA10]
+# CHECK-LE: bgta- 2, target # encoding: [0bAAAAAA10,A,0xc9,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bgta- 2, target
+# CHECK-BE: bgta- 0, target # encoding: [0x41,0xc1,A,0bAAAAAA10]
+# CHECK-LE: bgta- 0, target # encoding: [0bAAAAAA10,A,0xc1,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bgta- target
+# CHECK-BE: bgtlr- 2 # encoding: [0x4d,0xc9,0x00,0x20]
+# CHECK-LE: bgtlr- 2 # encoding: [0x20,0x00,0xc9,0x4d]
+ bgtlr- 2
+# CHECK-BE: bgtlr- 0 # encoding: [0x4d,0xc1,0x00,0x20]
+# CHECK-LE: bgtlr- 0 # encoding: [0x20,0x00,0xc1,0x4d]
+ bgtlr-
+# CHECK-BE: bgtctr- 2 # encoding: [0x4d,0xc9,0x04,0x20]
+# CHECK-LE: bgtctr- 2 # encoding: [0x20,0x04,0xc9,0x4d]
+ bgtctr- 2
+# CHECK-BE: bgtctr- 0 # encoding: [0x4d,0xc1,0x04,0x20]
+# CHECK-LE: bgtctr- 0 # encoding: [0x20,0x04,0xc1,0x4d]
+ bgtctr-
+# CHECK-BE: bgtl- 2, target # encoding: [0x41,0xc9,A,0bAAAAAA01]
+# CHECK-LE: bgtl- 2, target # encoding: [0bAAAAAA01,A,0xc9,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bgtl- 2, target
+# CHECK-BE: bgtl- 0, target # encoding: [0x41,0xc1,A,0bAAAAAA01]
+# CHECK-LE: bgtl- 0, target # encoding: [0bAAAAAA01,A,0xc1,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bgtl- target
+# CHECK-BE: bgtla- 2, target # encoding: [0x41,0xc9,A,0bAAAAAA11]
+# CHECK-LE: bgtla- 2, target # encoding: [0bAAAAAA11,A,0xc9,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bgtla- 2, target
+# CHECK-BE: bgtla- 0, target # encoding: [0x41,0xc1,A,0bAAAAAA11]
+# CHECK-LE: bgtla- 0, target # encoding: [0bAAAAAA11,A,0xc1,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bgtla- target
+# CHECK-BE: bgtlrl- 2 # encoding: [0x4d,0xc9,0x00,0x21]
+# CHECK-LE: bgtlrl- 2 # encoding: [0x21,0x00,0xc9,0x4d]
+ bgtlrl- 2
+# CHECK-BE: bgtlrl- 0 # encoding: [0x4d,0xc1,0x00,0x21]
+# CHECK-LE: bgtlrl- 0 # encoding: [0x21,0x00,0xc1,0x4d]
+ bgtlrl-
+# CHECK-BE: bgtctrl- 2 # encoding: [0x4d,0xc9,0x04,0x21]
+# CHECK-LE: bgtctrl- 2 # encoding: [0x21,0x04,0xc9,0x4d]
+ bgtctrl- 2
+# CHECK-BE: bgtctrl- 0 # encoding: [0x4d,0xc1,0x04,0x21]
+# CHECK-LE: bgtctrl- 0 # encoding: [0x21,0x04,0xc1,0x4d]
+ bgtctrl-
+
+# CHECK-BE: bge 2, target # encoding: [0x40,0x88,A,0bAAAAAA00]
+# CHECK-LE: bge 2, target # encoding: [0bAAAAAA00,A,0x88,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bnl 2, target
+# CHECK-BE: bge 0, target # encoding: [0x40,0x80,A,0bAAAAAA00]
+# CHECK-LE: bge 0, target # encoding: [0bAAAAAA00,A,0x80,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bnl target
+# CHECK-BE: bgea 2, target # encoding: [0x40,0x88,A,0bAAAAAA10]
+# CHECK-LE: bgea 2, target # encoding: [0bAAAAAA10,A,0x88,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bnla 2, target
+# CHECK-BE: bgea 0, target # encoding: [0x40,0x80,A,0bAAAAAA10]
+# CHECK-LE: bgea 0, target # encoding: [0bAAAAAA10,A,0x80,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bnla target
+# CHECK-BE: bgelr 2 # encoding: [0x4c,0x88,0x00,0x20]
+# CHECK-LE: bgelr 2 # encoding: [0x20,0x00,0x88,0x4c]
+ bnllr 2
+# CHECK-BE: bgelr 0 # encoding: [0x4c,0x80,0x00,0x20]
+# CHECK-LE: bgelr 0 # encoding: [0x20,0x00,0x80,0x4c]
+ bnllr
+# CHECK-BE: bgectr 2 # encoding: [0x4c,0x88,0x04,0x20]
+# CHECK-LE: bgectr 2 # encoding: [0x20,0x04,0x88,0x4c]
+ bnlctr 2
+# CHECK-BE: bgectr 0 # encoding: [0x4c,0x80,0x04,0x20]
+# CHECK-LE: bgectr 0 # encoding: [0x20,0x04,0x80,0x4c]
+ bnlctr
+# CHECK-BE: bgel 2, target # encoding: [0x40,0x88,A,0bAAAAAA01]
+# CHECK-LE: bgel 2, target # encoding: [0bAAAAAA01,A,0x88,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bnll 2, target
+# CHECK-BE: bgel 0, target # encoding: [0x40,0x80,A,0bAAAAAA01]
+# CHECK-LE: bgel 0, target # encoding: [0bAAAAAA01,A,0x80,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bnll target
+# CHECK-BE: bgela 2, target # encoding: [0x40,0x88,A,0bAAAAAA11]
+# CHECK-LE: bgela 2, target # encoding: [0bAAAAAA11,A,0x88,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bnlla 2, target
+# CHECK-BE: bgela 0, target # encoding: [0x40,0x80,A,0bAAAAAA11]
+# CHECK-LE: bgela 0, target # encoding: [0bAAAAAA11,A,0x80,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bnlla target
+# CHECK-BE: bgelrl 2 # encoding: [0x4c,0x88,0x00,0x21]
+# CHECK-LE: bgelrl 2 # encoding: [0x21,0x00,0x88,0x4c]
+ bnllrl 2
+# CHECK-BE: bgelrl 0 # encoding: [0x4c,0x80,0x00,0x21]
+# CHECK-LE: bgelrl 0 # encoding: [0x21,0x00,0x80,0x4c]
+ bnllrl
+# CHECK-BE: bgectrl 2 # encoding: [0x4c,0x88,0x04,0x21]
+# CHECK-LE: bgectrl 2 # encoding: [0x21,0x04,0x88,0x4c]
+ bnlctrl 2
+# CHECK-BE: bgectrl 0 # encoding: [0x4c,0x80,0x04,0x21]
+# CHECK-LE: bgectrl 0 # encoding: [0x21,0x04,0x80,0x4c]
+ bnlctrl
+
+# CHECK-BE: bge+ 2, target # encoding: [0x40,0xe8,A,0bAAAAAA00]
+# CHECK-LE: bge+ 2, target # encoding: [0bAAAAAA00,A,0xe8,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bnl+ 2, target
+# CHECK-BE: bge+ 0, target # encoding: [0x40,0xe0,A,0bAAAAAA00]
+# CHECK-LE: bge+ 0, target # encoding: [0bAAAAAA00,A,0xe0,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bnl+ target
+# CHECK-BE: bgea+ 2, target # encoding: [0x40,0xe8,A,0bAAAAAA10]
+# CHECK-LE: bgea+ 2, target # encoding: [0bAAAAAA10,A,0xe8,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bnla+ 2, target
+# CHECK-BE: bgea+ 0, target # encoding: [0x40,0xe0,A,0bAAAAAA10]
+# CHECK-LE: bgea+ 0, target # encoding: [0bAAAAAA10,A,0xe0,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bnla+ target
+# CHECK-BE: bgelr+ 2 # encoding: [0x4c,0xe8,0x00,0x20]
+# CHECK-LE: bgelr+ 2 # encoding: [0x20,0x00,0xe8,0x4c]
+ bnllr+ 2
+# CHECK-BE: bgelr+ 0 # encoding: [0x4c,0xe0,0x00,0x20]
+# CHECK-LE: bgelr+ 0 # encoding: [0x20,0x00,0xe0,0x4c]
+ bnllr+
+# CHECK-BE: bgectr+ 2 # encoding: [0x4c,0xe8,0x04,0x20]
+# CHECK-LE: bgectr+ 2 # encoding: [0x20,0x04,0xe8,0x4c]
+ bnlctr+ 2
+# CHECK-BE: bgectr+ 0 # encoding: [0x4c,0xe0,0x04,0x20]
+# CHECK-LE: bgectr+ 0 # encoding: [0x20,0x04,0xe0,0x4c]
+ bnlctr+
+# CHECK-BE: bgel+ 2, target # encoding: [0x40,0xe8,A,0bAAAAAA01]
+# CHECK-LE: bgel+ 2, target # encoding: [0bAAAAAA01,A,0xe8,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bnll+ 2, target
+# CHECK-BE: bgel+ 0, target # encoding: [0x40,0xe0,A,0bAAAAAA01]
+# CHECK-LE: bgel+ 0, target # encoding: [0bAAAAAA01,A,0xe0,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bnll+ target
+# CHECK-BE: bgela+ 2, target # encoding: [0x40,0xe8,A,0bAAAAAA11]
+# CHECK-LE: bgela+ 2, target # encoding: [0bAAAAAA11,A,0xe8,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bnlla+ 2, target
+# CHECK-BE: bgela+ 0, target # encoding: [0x40,0xe0,A,0bAAAAAA11]
+# CHECK-LE: bgela+ 0, target # encoding: [0bAAAAAA11,A,0xe0,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bnlla+ target
+# CHECK-BE: bgelrl+ 2 # encoding: [0x4c,0xe8,0x00,0x21]
+# CHECK-LE: bgelrl+ 2 # encoding: [0x21,0x00,0xe8,0x4c]
+ bnllrl+ 2
+# CHECK-BE: bgelrl+ 0 # encoding: [0x4c,0xe0,0x00,0x21]
+# CHECK-LE: bgelrl+ 0 # encoding: [0x21,0x00,0xe0,0x4c]
+ bnllrl+
+# CHECK-BE: bgectrl+ 2 # encoding: [0x4c,0xe8,0x04,0x21]
+# CHECK-LE: bgectrl+ 2 # encoding: [0x21,0x04,0xe8,0x4c]
+ bnlctrl+ 2
+# CHECK-BE: bgectrl+ 0 # encoding: [0x4c,0xe0,0x04,0x21]
+# CHECK-LE: bgectrl+ 0 # encoding: [0x21,0x04,0xe0,0x4c]
+ bnlctrl+
+
+# CHECK-BE: bge- 2, target # encoding: [0x40,0xc8,A,0bAAAAAA00]
+# CHECK-LE: bge- 2, target # encoding: [0bAAAAAA00,A,0xc8,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bnl- 2, target
+# CHECK-BE: bge- 0, target # encoding: [0x40,0xc0,A,0bAAAAAA00]
+# CHECK-LE: bge- 0, target # encoding: [0bAAAAAA00,A,0xc0,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bnl- target
+# CHECK-BE: bgea- 2, target # encoding: [0x40,0xc8,A,0bAAAAAA10]
+# CHECK-LE: bgea- 2, target # encoding: [0bAAAAAA10,A,0xc8,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bnla- 2, target
+# CHECK-BE: bgea- 0, target # encoding: [0x40,0xc0,A,0bAAAAAA10]
+# CHECK-LE: bgea- 0, target # encoding: [0bAAAAAA10,A,0xc0,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bnla- target
+# CHECK-BE: bgelr- 2 # encoding: [0x4c,0xc8,0x00,0x20]
+# CHECK-LE: bgelr- 2 # encoding: [0x20,0x00,0xc8,0x4c]
+ bnllr- 2
+# CHECK-BE: bgelr- 0 # encoding: [0x4c,0xc0,0x00,0x20]
+# CHECK-LE: bgelr- 0 # encoding: [0x20,0x00,0xc0,0x4c]
+ bnllr-
+# CHECK-BE: bgectr- 2 # encoding: [0x4c,0xc8,0x04,0x20]
+# CHECK-LE: bgectr- 2 # encoding: [0x20,0x04,0xc8,0x4c]
+ bnlctr- 2
+# CHECK-BE: bgectr- 0 # encoding: [0x4c,0xc0,0x04,0x20]
+# CHECK-LE: bgectr- 0 # encoding: [0x20,0x04,0xc0,0x4c]
+ bnlctr-
+# CHECK-BE: bgel- 2, target # encoding: [0x40,0xc8,A,0bAAAAAA01]
+# CHECK-LE: bgel- 2, target # encoding: [0bAAAAAA01,A,0xc8,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bnll- 2, target
+# CHECK-BE: bgel- 0, target # encoding: [0x40,0xc0,A,0bAAAAAA01]
+# CHECK-LE: bgel- 0, target # encoding: [0bAAAAAA01,A,0xc0,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bnll- target
+# CHECK-BE: bgela- 2, target # encoding: [0x40,0xc8,A,0bAAAAAA11]
+# CHECK-LE: bgela- 2, target # encoding: [0bAAAAAA11,A,0xc8,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bnlla- 2, target
+# CHECK-BE: bgela- 0, target # encoding: [0x40,0xc0,A,0bAAAAAA11]
+# CHECK-LE: bgela- 0, target # encoding: [0bAAAAAA11,A,0xc0,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bnlla- target
+# CHECK-BE: bgelrl- 2 # encoding: [0x4c,0xc8,0x00,0x21]
+# CHECK-LE: bgelrl- 2 # encoding: [0x21,0x00,0xc8,0x4c]
+ bnllrl- 2
+# CHECK-BE: bgelrl- 0 # encoding: [0x4c,0xc0,0x00,0x21]
+# CHECK-LE: bgelrl- 0 # encoding: [0x21,0x00,0xc0,0x4c]
+ bnllrl-
+# CHECK-BE: bgectrl- 2 # encoding: [0x4c,0xc8,0x04,0x21]
+# CHECK-LE: bgectrl- 2 # encoding: [0x21,0x04,0xc8,0x4c]
+ bnlctrl- 2
+# CHECK-BE: bgectrl- 0 # encoding: [0x4c,0xc0,0x04,0x21]
+# CHECK-LE: bgectrl- 0 # encoding: [0x21,0x04,0xc0,0x4c]
+ bnlctrl-
+
+# CHECK-BE: bne 2, target # encoding: [0x40,0x8a,A,0bAAAAAA00]
+# CHECK-LE: bne 2, target # encoding: [0bAAAAAA00,A,0x8a,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bne 2, target
+# CHECK-BE: bne 0, target # encoding: [0x40,0x82,A,0bAAAAAA00]
+# CHECK-LE: bne 0, target # encoding: [0bAAAAAA00,A,0x82,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bne target
+# CHECK-BE: bnea 2, target # encoding: [0x40,0x8a,A,0bAAAAAA10]
+# CHECK-LE: bnea 2, target # encoding: [0bAAAAAA10,A,0x8a,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bnea 2, target
+# CHECK-BE: bnea 0, target # encoding: [0x40,0x82,A,0bAAAAAA10]
+# CHECK-LE: bnea 0, target # encoding: [0bAAAAAA10,A,0x82,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bnea target
+# CHECK-BE: bnelr 2 # encoding: [0x4c,0x8a,0x00,0x20]
+# CHECK-LE: bnelr 2 # encoding: [0x20,0x00,0x8a,0x4c]
+ bnelr 2
+# CHECK-BE: bnelr 0 # encoding: [0x4c,0x82,0x00,0x20]
+# CHECK-LE: bnelr 0 # encoding: [0x20,0x00,0x82,0x4c]
+ bnelr
+# CHECK-BE: bnectr 2 # encoding: [0x4c,0x8a,0x04,0x20]
+# CHECK-LE: bnectr 2 # encoding: [0x20,0x04,0x8a,0x4c]
+ bnectr 2
+# CHECK-BE: bnectr 0 # encoding: [0x4c,0x82,0x04,0x20]
+# CHECK-LE: bnectr 0 # encoding: [0x20,0x04,0x82,0x4c]
+ bnectr
+# CHECK-BE: bnel 2, target # encoding: [0x40,0x8a,A,0bAAAAAA01]
+# CHECK-LE: bnel 2, target # encoding: [0bAAAAAA01,A,0x8a,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bnel 2, target
+# CHECK-BE: bnel 0, target # encoding: [0x40,0x82,A,0bAAAAAA01]
+# CHECK-LE: bnel 0, target # encoding: [0bAAAAAA01,A,0x82,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bnel target
+# CHECK-BE: bnela 2, target # encoding: [0x40,0x8a,A,0bAAAAAA11]
+# CHECK-LE: bnela 2, target # encoding: [0bAAAAAA11,A,0x8a,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bnela 2, target
+# CHECK-BE: bnela 0, target # encoding: [0x40,0x82,A,0bAAAAAA11]
+# CHECK-LE: bnela 0, target # encoding: [0bAAAAAA11,A,0x82,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bnela target
+# CHECK-BE: bnelrl 2 # encoding: [0x4c,0x8a,0x00,0x21]
+# CHECK-LE: bnelrl 2 # encoding: [0x21,0x00,0x8a,0x4c]
+ bnelrl 2
+# CHECK-BE: bnelrl 0 # encoding: [0x4c,0x82,0x00,0x21]
+# CHECK-LE: bnelrl 0 # encoding: [0x21,0x00,0x82,0x4c]
+ bnelrl
+# CHECK-BE: bnectrl 2 # encoding: [0x4c,0x8a,0x04,0x21]
+# CHECK-LE: bnectrl 2 # encoding: [0x21,0x04,0x8a,0x4c]
+ bnectrl 2
+# CHECK-BE: bnectrl 0 # encoding: [0x4c,0x82,0x04,0x21]
+# CHECK-LE: bnectrl 0 # encoding: [0x21,0x04,0x82,0x4c]
+ bnectrl
+
+# CHECK-BE: bne+ 2, target # encoding: [0x40,0xea,A,0bAAAAAA00]
+# CHECK-LE: bne+ 2, target # encoding: [0bAAAAAA00,A,0xea,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bne+ 2, target
+# CHECK-BE: bne+ 0, target # encoding: [0x40,0xe2,A,0bAAAAAA00]
+# CHECK-LE: bne+ 0, target # encoding: [0bAAAAAA00,A,0xe2,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bne+ target
+# CHECK-BE: bnea+ 2, target # encoding: [0x40,0xea,A,0bAAAAAA10]
+# CHECK-LE: bnea+ 2, target # encoding: [0bAAAAAA10,A,0xea,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bnea+ 2, target
+# CHECK-BE: bnea+ 0, target # encoding: [0x40,0xe2,A,0bAAAAAA10]
+# CHECK-LE: bnea+ 0, target # encoding: [0bAAAAAA10,A,0xe2,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bnea+ target
+# CHECK-BE: bnelr+ 2 # encoding: [0x4c,0xea,0x00,0x20]
+# CHECK-LE: bnelr+ 2 # encoding: [0x20,0x00,0xea,0x4c]
+ bnelr+ 2
+# CHECK-BE: bnelr+ 0 # encoding: [0x4c,0xe2,0x00,0x20]
+# CHECK-LE: bnelr+ 0 # encoding: [0x20,0x00,0xe2,0x4c]
+ bnelr+
+# CHECK-BE: bnectr+ 2 # encoding: [0x4c,0xea,0x04,0x20]
+# CHECK-LE: bnectr+ 2 # encoding: [0x20,0x04,0xea,0x4c]
+ bnectr+ 2
+# CHECK-BE: bnectr+ 0 # encoding: [0x4c,0xe2,0x04,0x20]
+# CHECK-LE: bnectr+ 0 # encoding: [0x20,0x04,0xe2,0x4c]
+ bnectr+
+# CHECK-BE: bnel+ 2, target # encoding: [0x40,0xea,A,0bAAAAAA01]
+# CHECK-LE: bnel+ 2, target # encoding: [0bAAAAAA01,A,0xea,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bnel+ 2, target
+# CHECK-BE: bnel+ 0, target # encoding: [0x40,0xe2,A,0bAAAAAA01]
+# CHECK-LE: bnel+ 0, target # encoding: [0bAAAAAA01,A,0xe2,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bnel+ target
+# CHECK-BE: bnela+ 2, target # encoding: [0x40,0xea,A,0bAAAAAA11]
+# CHECK-LE: bnela+ 2, target # encoding: [0bAAAAAA11,A,0xea,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bnela+ 2, target
+# CHECK-BE: bnela+ 0, target # encoding: [0x40,0xe2,A,0bAAAAAA11]
+# CHECK-LE: bnela+ 0, target # encoding: [0bAAAAAA11,A,0xe2,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bnela+ target
+# CHECK-BE: bnelrl+ 2 # encoding: [0x4c,0xea,0x00,0x21]
+# CHECK-LE: bnelrl+ 2 # encoding: [0x21,0x00,0xea,0x4c]
+ bnelrl+ 2
+# CHECK-BE: bnelrl+ 0 # encoding: [0x4c,0xe2,0x00,0x21]
+# CHECK-LE: bnelrl+ 0 # encoding: [0x21,0x00,0xe2,0x4c]
+ bnelrl+
+# CHECK-BE: bnectrl+ 2 # encoding: [0x4c,0xea,0x04,0x21]
+# CHECK-LE: bnectrl+ 2 # encoding: [0x21,0x04,0xea,0x4c]
+ bnectrl+ 2
+# CHECK-BE: bnectrl+ 0 # encoding: [0x4c,0xe2,0x04,0x21]
+# CHECK-LE: bnectrl+ 0 # encoding: [0x21,0x04,0xe2,0x4c]
+ bnectrl+
+
+# CHECK-BE: bne- 2, target # encoding: [0x40,0xca,A,0bAAAAAA00]
+# CHECK-LE: bne- 2, target # encoding: [0bAAAAAA00,A,0xca,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bne- 2, target
+# CHECK-BE: bne- 0, target # encoding: [0x40,0xc2,A,0bAAAAAA00]
+# CHECK-LE: bne- 0, target # encoding: [0bAAAAAA00,A,0xc2,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bne- target
+# CHECK-BE: bnea- 2, target # encoding: [0x40,0xca,A,0bAAAAAA10]
+# CHECK-LE: bnea- 2, target # encoding: [0bAAAAAA10,A,0xca,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bnea- 2, target
+# CHECK-BE: bnea- 0, target # encoding: [0x40,0xc2,A,0bAAAAAA10]
+# CHECK-LE: bnea- 0, target # encoding: [0bAAAAAA10,A,0xc2,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bnea- target
+# CHECK-BE: bnelr- 2 # encoding: [0x4c,0xca,0x00,0x20]
+# CHECK-LE: bnelr- 2 # encoding: [0x20,0x00,0xca,0x4c]
+ bnelr- 2
+# CHECK-BE: bnelr- 0 # encoding: [0x4c,0xc2,0x00,0x20]
+# CHECK-LE: bnelr- 0 # encoding: [0x20,0x00,0xc2,0x4c]
+ bnelr-
+# CHECK-BE: bnectr- 2 # encoding: [0x4c,0xca,0x04,0x20]
+# CHECK-LE: bnectr- 2 # encoding: [0x20,0x04,0xca,0x4c]
+ bnectr- 2
+# CHECK-BE: bnectr- 0 # encoding: [0x4c,0xc2,0x04,0x20]
+# CHECK-LE: bnectr- 0 # encoding: [0x20,0x04,0xc2,0x4c]
+ bnectr-
+# CHECK-BE: bnel- 2, target # encoding: [0x40,0xca,A,0bAAAAAA01]
+# CHECK-LE: bnel- 2, target # encoding: [0bAAAAAA01,A,0xca,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bnel- 2, target
+# CHECK-BE: bnel- 0, target # encoding: [0x40,0xc2,A,0bAAAAAA01]
+# CHECK-LE: bnel- 0, target # encoding: [0bAAAAAA01,A,0xc2,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bnel- target
+# CHECK-BE: bnela- 2, target # encoding: [0x40,0xca,A,0bAAAAAA11]
+# CHECK-LE: bnela- 2, target # encoding: [0bAAAAAA11,A,0xca,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bnela- 2, target
+# CHECK-BE: bnela- 0, target # encoding: [0x40,0xc2,A,0bAAAAAA11]
+# CHECK-LE: bnela- 0, target # encoding: [0bAAAAAA11,A,0xc2,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bnela- target
+# CHECK-BE: bnelrl- 2 # encoding: [0x4c,0xca,0x00,0x21]
+# CHECK-LE: bnelrl- 2 # encoding: [0x21,0x00,0xca,0x4c]
+ bnelrl- 2
+# CHECK-BE: bnelrl- 0 # encoding: [0x4c,0xc2,0x00,0x21]
+# CHECK-LE: bnelrl- 0 # encoding: [0x21,0x00,0xc2,0x4c]
+ bnelrl-
+# CHECK-BE: bnectrl- 2 # encoding: [0x4c,0xca,0x04,0x21]
+# CHECK-LE: bnectrl- 2 # encoding: [0x21,0x04,0xca,0x4c]
+ bnectrl- 2
+# CHECK-BE: bnectrl- 0 # encoding: [0x4c,0xc2,0x04,0x21]
+# CHECK-LE: bnectrl- 0 # encoding: [0x21,0x04,0xc2,0x4c]
+ bnectrl-
+
+# CHECK-BE: ble 2, target # encoding: [0x40,0x89,A,0bAAAAAA00]
+# CHECK-LE: ble 2, target # encoding: [0bAAAAAA00,A,0x89,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bng 2, target
+# CHECK-BE: ble 0, target # encoding: [0x40,0x81,A,0bAAAAAA00]
+# CHECK-LE: ble 0, target # encoding: [0bAAAAAA00,A,0x81,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bng target
+# CHECK-BE: blea 2, target # encoding: [0x40,0x89,A,0bAAAAAA10]
+# CHECK-LE: blea 2, target # encoding: [0bAAAAAA10,A,0x89,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bnga 2, target
+# CHECK-BE: blea 0, target # encoding: [0x40,0x81,A,0bAAAAAA10]
+# CHECK-LE: blea 0, target # encoding: [0bAAAAAA10,A,0x81,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bnga target
+# CHECK-BE: blelr 2 # encoding: [0x4c,0x89,0x00,0x20]
+# CHECK-LE: blelr 2 # encoding: [0x20,0x00,0x89,0x4c]
+ bnglr 2
+# CHECK-BE: blelr 0 # encoding: [0x4c,0x81,0x00,0x20]
+# CHECK-LE: blelr 0 # encoding: [0x20,0x00,0x81,0x4c]
+ bnglr
+# CHECK-BE: blectr 2 # encoding: [0x4c,0x89,0x04,0x20]
+# CHECK-LE: blectr 2 # encoding: [0x20,0x04,0x89,0x4c]
+ bngctr 2
+# CHECK-BE: blectr 0 # encoding: [0x4c,0x81,0x04,0x20]
+# CHECK-LE: blectr 0 # encoding: [0x20,0x04,0x81,0x4c]
+ bngctr
+# CHECK-BE: blel 2, target # encoding: [0x40,0x89,A,0bAAAAAA01]
+# CHECK-LE: blel 2, target # encoding: [0bAAAAAA01,A,0x89,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bngl 2, target
+# CHECK-BE: blel 0, target # encoding: [0x40,0x81,A,0bAAAAAA01]
+# CHECK-LE: blel 0, target # encoding: [0bAAAAAA01,A,0x81,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bngl target
+# CHECK-BE: blela 2, target # encoding: [0x40,0x89,A,0bAAAAAA11]
+# CHECK-LE: blela 2, target # encoding: [0bAAAAAA11,A,0x89,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bngla 2, target
+# CHECK-BE: blela 0, target # encoding: [0x40,0x81,A,0bAAAAAA11]
+# CHECK-LE: blela 0, target # encoding: [0bAAAAAA11,A,0x81,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bngla target
+# CHECK-BE: blelrl 2 # encoding: [0x4c,0x89,0x00,0x21]
+# CHECK-LE: blelrl 2 # encoding: [0x21,0x00,0x89,0x4c]
+ bnglrl 2
+# CHECK-BE: blelrl 0 # encoding: [0x4c,0x81,0x00,0x21]
+# CHECK-LE: blelrl 0 # encoding: [0x21,0x00,0x81,0x4c]
+ bnglrl
+# CHECK-BE: blectrl 2 # encoding: [0x4c,0x89,0x04,0x21]
+# CHECK-LE: blectrl 2 # encoding: [0x21,0x04,0x89,0x4c]
+ bngctrl 2
+# CHECK-BE: blectrl 0 # encoding: [0x4c,0x81,0x04,0x21]
+# CHECK-LE: blectrl 0 # encoding: [0x21,0x04,0x81,0x4c]
+ bngctrl
+
+# CHECK-BE: ble+ 2, target # encoding: [0x40,0xe9,A,0bAAAAAA00]
+# CHECK-LE: ble+ 2, target # encoding: [0bAAAAAA00,A,0xe9,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bng+ 2, target
+# CHECK-BE: ble+ 0, target # encoding: [0x40,0xe1,A,0bAAAAAA00]
+# CHECK-LE: ble+ 0, target # encoding: [0bAAAAAA00,A,0xe1,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bng+ target
+# CHECK-BE: blea+ 2, target # encoding: [0x40,0xe9,A,0bAAAAAA10]
+# CHECK-LE: blea+ 2, target # encoding: [0bAAAAAA10,A,0xe9,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bnga+ 2, target
+# CHECK-BE: blea+ 0, target # encoding: [0x40,0xe1,A,0bAAAAAA10]
+# CHECK-LE: blea+ 0, target # encoding: [0bAAAAAA10,A,0xe1,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bnga+ target
+# CHECK-BE: blelr+ 2 # encoding: [0x4c,0xe9,0x00,0x20]
+# CHECK-LE: blelr+ 2 # encoding: [0x20,0x00,0xe9,0x4c]
+ bnglr+ 2
+# CHECK-BE: blelr+ 0 # encoding: [0x4c,0xe1,0x00,0x20]
+# CHECK-LE: blelr+ 0 # encoding: [0x20,0x00,0xe1,0x4c]
+ bnglr+
+# CHECK-BE: blectr+ 2 # encoding: [0x4c,0xe9,0x04,0x20]
+# CHECK-LE: blectr+ 2 # encoding: [0x20,0x04,0xe9,0x4c]
+ bngctr+ 2
+# CHECK-BE: blectr+ 0 # encoding: [0x4c,0xe1,0x04,0x20]
+# CHECK-LE: blectr+ 0 # encoding: [0x20,0x04,0xe1,0x4c]
+ bngctr+
+# CHECK-BE: blel+ 2, target # encoding: [0x40,0xe9,A,0bAAAAAA01]
+# CHECK-LE: blel+ 2, target # encoding: [0bAAAAAA01,A,0xe9,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bngl+ 2, target
+# CHECK-BE: blel+ 0, target # encoding: [0x40,0xe1,A,0bAAAAAA01]
+# CHECK-LE: blel+ 0, target # encoding: [0bAAAAAA01,A,0xe1,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bngl+ target
+# CHECK-BE: blela+ 2, target # encoding: [0x40,0xe9,A,0bAAAAAA11]
+# CHECK-LE: blela+ 2, target # encoding: [0bAAAAAA11,A,0xe9,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bngla+ 2, target
+# CHECK-BE: blela+ 0, target # encoding: [0x40,0xe1,A,0bAAAAAA11]
+# CHECK-LE: blela+ 0, target # encoding: [0bAAAAAA11,A,0xe1,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bngla+ target
+# CHECK-BE: blelrl+ 2 # encoding: [0x4c,0xe9,0x00,0x21]
+# CHECK-LE: blelrl+ 2 # encoding: [0x21,0x00,0xe9,0x4c]
+ bnglrl+ 2
+# CHECK-BE: blelrl+ 0 # encoding: [0x4c,0xe1,0x00,0x21]
+# CHECK-LE: blelrl+ 0 # encoding: [0x21,0x00,0xe1,0x4c]
+ bnglrl+
+# CHECK-BE: blectrl+ 2 # encoding: [0x4c,0xe9,0x04,0x21]
+# CHECK-LE: blectrl+ 2 # encoding: [0x21,0x04,0xe9,0x4c]
+ bngctrl+ 2
+# CHECK-BE: blectrl+ 0 # encoding: [0x4c,0xe1,0x04,0x21]
+# CHECK-LE: blectrl+ 0 # encoding: [0x21,0x04,0xe1,0x4c]
+ bngctrl+
+
+# CHECK-BE: ble- 2, target # encoding: [0x40,0xc9,A,0bAAAAAA00]
+# CHECK-LE: ble- 2, target # encoding: [0bAAAAAA00,A,0xc9,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bng- 2, target
+# CHECK-BE: ble- 0, target # encoding: [0x40,0xc1,A,0bAAAAAA00]
+# CHECK-LE: ble- 0, target # encoding: [0bAAAAAA00,A,0xc1,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bng- target
+# CHECK-BE: blea- 2, target # encoding: [0x40,0xc9,A,0bAAAAAA10]
+# CHECK-LE: blea- 2, target # encoding: [0bAAAAAA10,A,0xc9,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bnga- 2, target
+# CHECK-BE: blea- 0, target # encoding: [0x40,0xc1,A,0bAAAAAA10]
+# CHECK-LE: blea- 0, target # encoding: [0bAAAAAA10,A,0xc1,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bnga- target
+# CHECK-BE: blelr- 2 # encoding: [0x4c,0xc9,0x00,0x20]
+# CHECK-LE: blelr- 2 # encoding: [0x20,0x00,0xc9,0x4c]
+ bnglr- 2
+# CHECK-BE: blelr- 0 # encoding: [0x4c,0xc1,0x00,0x20]
+# CHECK-LE: blelr- 0 # encoding: [0x20,0x00,0xc1,0x4c]
+ bnglr-
+# CHECK-BE: blectr- 2 # encoding: [0x4c,0xc9,0x04,0x20]
+# CHECK-LE: blectr- 2 # encoding: [0x20,0x04,0xc9,0x4c]
+ bngctr- 2
+# CHECK-BE: blectr- 0 # encoding: [0x4c,0xc1,0x04,0x20]
+# CHECK-LE: blectr- 0 # encoding: [0x20,0x04,0xc1,0x4c]
+ bngctr-
+# CHECK-BE: blel- 2, target # encoding: [0x40,0xc9,A,0bAAAAAA01]
+# CHECK-LE: blel- 2, target # encoding: [0bAAAAAA01,A,0xc9,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bngl- 2, target
+# CHECK-BE: blel- 0, target # encoding: [0x40,0xc1,A,0bAAAAAA01]
+# CHECK-LE: blel- 0, target # encoding: [0bAAAAAA01,A,0xc1,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bngl- target
+# CHECK-BE: blela- 2, target # encoding: [0x40,0xc9,A,0bAAAAAA11]
+# CHECK-LE: blela- 2, target # encoding: [0bAAAAAA11,A,0xc9,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bngla- 2, target
+# CHECK-BE: blela- 0, target # encoding: [0x40,0xc1,A,0bAAAAAA11]
+# CHECK-LE: blela- 0, target # encoding: [0bAAAAAA11,A,0xc1,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bngla- target
+# CHECK-BE: blelrl- 2 # encoding: [0x4c,0xc9,0x00,0x21]
+# CHECK-LE: blelrl- 2 # encoding: [0x21,0x00,0xc9,0x4c]
+ bnglrl- 2
+# CHECK-BE: blelrl- 0 # encoding: [0x4c,0xc1,0x00,0x21]
+# CHECK-LE: blelrl- 0 # encoding: [0x21,0x00,0xc1,0x4c]
+ bnglrl-
+# CHECK-BE: blectrl- 2 # encoding: [0x4c,0xc9,0x04,0x21]
+# CHECK-LE: blectrl- 2 # encoding: [0x21,0x04,0xc9,0x4c]
+ bngctrl- 2
+# CHECK-BE: blectrl- 0 # encoding: [0x4c,0xc1,0x04,0x21]
+# CHECK-LE: blectrl- 0 # encoding: [0x21,0x04,0xc1,0x4c]
+ bngctrl-
+
+# CHECK-BE: bun 2, target # encoding: [0x41,0x8b,A,0bAAAAAA00]
+# CHECK-LE: bun 2, target # encoding: [0bAAAAAA00,A,0x8b,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bso 2, target
+# CHECK-BE: bun 0, target # encoding: [0x41,0x83,A,0bAAAAAA00]
+# CHECK-LE: bun 0, target # encoding: [0bAAAAAA00,A,0x83,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bso target
+# CHECK-BE: buna 2, target # encoding: [0x41,0x8b,A,0bAAAAAA10]
+# CHECK-LE: buna 2, target # encoding: [0bAAAAAA10,A,0x8b,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bsoa 2, target
+# CHECK-BE: buna 0, target # encoding: [0x41,0x83,A,0bAAAAAA10]
+# CHECK-LE: buna 0, target # encoding: [0bAAAAAA10,A,0x83,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bsoa target
+# CHECK-BE: bunlr 2 # encoding: [0x4d,0x8b,0x00,0x20]
+# CHECK-LE: bunlr 2 # encoding: [0x20,0x00,0x8b,0x4d]
+ bsolr 2
+# CHECK-BE: bunlr 0 # encoding: [0x4d,0x83,0x00,0x20]
+# CHECK-LE: bunlr 0 # encoding: [0x20,0x00,0x83,0x4d]
+ bsolr
+# CHECK-BE: bunctr 2 # encoding: [0x4d,0x8b,0x04,0x20]
+# CHECK-LE: bunctr 2 # encoding: [0x20,0x04,0x8b,0x4d]
+ bsoctr 2
+# CHECK-BE: bunctr 0 # encoding: [0x4d,0x83,0x04,0x20]
+# CHECK-LE: bunctr 0 # encoding: [0x20,0x04,0x83,0x4d]
+ bsoctr
+# CHECK-BE: bunl 2, target # encoding: [0x41,0x8b,A,0bAAAAAA01]
+# CHECK-LE: bunl 2, target # encoding: [0bAAAAAA01,A,0x8b,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bsol 2, target
+# CHECK-BE: bunl 0, target # encoding: [0x41,0x83,A,0bAAAAAA01]
+# CHECK-LE: bunl 0, target # encoding: [0bAAAAAA01,A,0x83,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bsol target
+# CHECK-BE: bunla 2, target # encoding: [0x41,0x8b,A,0bAAAAAA11]
+# CHECK-LE: bunla 2, target # encoding: [0bAAAAAA11,A,0x8b,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bsola 2, target
+# CHECK-BE: bunla 0, target # encoding: [0x41,0x83,A,0bAAAAAA11]
+# CHECK-LE: bunla 0, target # encoding: [0bAAAAAA11,A,0x83,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bsola target
+# CHECK-BE: bunlrl 2 # encoding: [0x4d,0x8b,0x00,0x21]
+# CHECK-LE: bunlrl 2 # encoding: [0x21,0x00,0x8b,0x4d]
+ bsolrl 2
+# CHECK-BE: bunlrl 0 # encoding: [0x4d,0x83,0x00,0x21]
+# CHECK-LE: bunlrl 0 # encoding: [0x21,0x00,0x83,0x4d]
+ bsolrl
+# CHECK-BE: bunctrl 2 # encoding: [0x4d,0x8b,0x04,0x21]
+# CHECK-LE: bunctrl 2 # encoding: [0x21,0x04,0x8b,0x4d]
+ bsoctrl 2
+# CHECK-BE: bunctrl 0 # encoding: [0x4d,0x83,0x04,0x21]
+# CHECK-LE: bunctrl 0 # encoding: [0x21,0x04,0x83,0x4d]
+ bsoctrl
+
+# CHECK-BE: bun+ 2, target # encoding: [0x41,0xeb,A,0bAAAAAA00]
+# CHECK-LE: bun+ 2, target # encoding: [0bAAAAAA00,A,0xeb,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bso+ 2, target
+# CHECK-BE: bun+ 0, target # encoding: [0x41,0xe3,A,0bAAAAAA00]
+# CHECK-LE: bun+ 0, target # encoding: [0bAAAAAA00,A,0xe3,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bso+ target
+# CHECK-BE: buna+ 2, target # encoding: [0x41,0xeb,A,0bAAAAAA10]
+# CHECK-LE: buna+ 2, target # encoding: [0bAAAAAA10,A,0xeb,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bsoa+ 2, target
+# CHECK-BE: buna+ 0, target # encoding: [0x41,0xe3,A,0bAAAAAA10]
+# CHECK-LE: buna+ 0, target # encoding: [0bAAAAAA10,A,0xe3,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bsoa+ target
+# CHECK-BE: bunlr+ 2 # encoding: [0x4d,0xeb,0x00,0x20]
+# CHECK-LE: bunlr+ 2 # encoding: [0x20,0x00,0xeb,0x4d]
+ bsolr+ 2
+# CHECK-BE: bunlr+ 0 # encoding: [0x4d,0xe3,0x00,0x20]
+# CHECK-LE: bunlr+ 0 # encoding: [0x20,0x00,0xe3,0x4d]
+ bsolr+
+# CHECK-BE: bunctr+ 2 # encoding: [0x4d,0xeb,0x04,0x20]
+# CHECK-LE: bunctr+ 2 # encoding: [0x20,0x04,0xeb,0x4d]
+ bsoctr+ 2
+# CHECK-BE: bunctr+ 0 # encoding: [0x4d,0xe3,0x04,0x20]
+# CHECK-LE: bunctr+ 0 # encoding: [0x20,0x04,0xe3,0x4d]
+ bsoctr+
+# CHECK-BE: bunl+ 2, target # encoding: [0x41,0xeb,A,0bAAAAAA01]
+# CHECK-LE: bunl+ 2, target # encoding: [0bAAAAAA01,A,0xeb,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bsol+ 2, target
+# CHECK-BE: bunl+ 0, target # encoding: [0x41,0xe3,A,0bAAAAAA01]
+# CHECK-LE: bunl+ 0, target # encoding: [0bAAAAAA01,A,0xe3,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bsol+ target
+# CHECK-BE: bunla+ 2, target # encoding: [0x41,0xeb,A,0bAAAAAA11]
+# CHECK-LE: bunla+ 2, target # encoding: [0bAAAAAA11,A,0xeb,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bsola+ 2, target
+# CHECK-BE: bunla+ 0, target # encoding: [0x41,0xe3,A,0bAAAAAA11]
+# CHECK-LE: bunla+ 0, target # encoding: [0bAAAAAA11,A,0xe3,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bsola+ target
+# CHECK-BE: bunlrl+ 2 # encoding: [0x4d,0xeb,0x00,0x21]
+# CHECK-LE: bunlrl+ 2 # encoding: [0x21,0x00,0xeb,0x4d]
+ bsolrl+ 2
+# CHECK-BE: bunlrl+ 0 # encoding: [0x4d,0xe3,0x00,0x21]
+# CHECK-LE: bunlrl+ 0 # encoding: [0x21,0x00,0xe3,0x4d]
+ bsolrl+
+# CHECK-BE: bunctrl+ 2 # encoding: [0x4d,0xeb,0x04,0x21]
+# CHECK-LE: bunctrl+ 2 # encoding: [0x21,0x04,0xeb,0x4d]
+ bsoctrl+ 2
+# CHECK-BE: bunctrl+ 0 # encoding: [0x4d,0xe3,0x04,0x21]
+# CHECK-LE: bunctrl+ 0 # encoding: [0x21,0x04,0xe3,0x4d]
+ bsoctrl+
+
+# CHECK-BE: bun- 2, target # encoding: [0x41,0xcb,A,0bAAAAAA00]
+# CHECK-LE: bun- 2, target # encoding: [0bAAAAAA00,A,0xcb,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bso- 2, target
+# CHECK-BE: bun- 0, target # encoding: [0x41,0xc3,A,0bAAAAAA00]
+# CHECK-LE: bun- 0, target # encoding: [0bAAAAAA00,A,0xc3,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bso- target
+# CHECK-BE: buna- 2, target # encoding: [0x41,0xcb,A,0bAAAAAA10]
+# CHECK-LE: buna- 2, target # encoding: [0bAAAAAA10,A,0xcb,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bsoa- 2, target
+# CHECK-BE: buna- 0, target # encoding: [0x41,0xc3,A,0bAAAAAA10]
+# CHECK-LE: buna- 0, target # encoding: [0bAAAAAA10,A,0xc3,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bsoa- target
+# CHECK-BE: bunlr- 2 # encoding: [0x4d,0xcb,0x00,0x20]
+# CHECK-LE: bunlr- 2 # encoding: [0x20,0x00,0xcb,0x4d]
+ bsolr- 2
+# CHECK-BE: bunlr- 0 # encoding: [0x4d,0xc3,0x00,0x20]
+# CHECK-LE: bunlr- 0 # encoding: [0x20,0x00,0xc3,0x4d]
+ bsolr-
+# CHECK-BE: bunctr- 2 # encoding: [0x4d,0xcb,0x04,0x20]
+# CHECK-LE: bunctr- 2 # encoding: [0x20,0x04,0xcb,0x4d]
+ bsoctr- 2
+# CHECK-BE: bunctr- 0 # encoding: [0x4d,0xc3,0x04,0x20]
+# CHECK-LE: bunctr- 0 # encoding: [0x20,0x04,0xc3,0x4d]
+ bsoctr-
+# CHECK-BE: bunl- 2, target # encoding: [0x41,0xcb,A,0bAAAAAA01]
+# CHECK-LE: bunl- 2, target # encoding: [0bAAAAAA01,A,0xcb,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bsol- 2, target
+# CHECK-BE: bunl- 0, target # encoding: [0x41,0xc3,A,0bAAAAAA01]
+# CHECK-LE: bunl- 0, target # encoding: [0bAAAAAA01,A,0xc3,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bsol- target
+# CHECK-BE: bunla- 2, target # encoding: [0x41,0xcb,A,0bAAAAAA11]
+# CHECK-LE: bunla- 2, target # encoding: [0bAAAAAA11,A,0xcb,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bsola- 2, target
+# CHECK-BE: bunla- 0, target # encoding: [0x41,0xc3,A,0bAAAAAA11]
+# CHECK-LE: bunla- 0, target # encoding: [0bAAAAAA11,A,0xc3,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bsola- target
+# CHECK-BE: bunlrl- 2 # encoding: [0x4d,0xcb,0x00,0x21]
+# CHECK-LE: bunlrl- 2 # encoding: [0x21,0x00,0xcb,0x4d]
+ bsolrl- 2
+# CHECK-BE: bunlrl- 0 # encoding: [0x4d,0xc3,0x00,0x21]
+# CHECK-LE: bunlrl- 0 # encoding: [0x21,0x00,0xc3,0x4d]
+ bsolrl-
+# CHECK-BE: bunctrl- 2 # encoding: [0x4d,0xcb,0x04,0x21]
+# CHECK-LE: bunctrl- 2 # encoding: [0x21,0x04,0xcb,0x4d]
+ bsoctrl- 2
+# CHECK-BE: bunctrl- 0 # encoding: [0x4d,0xc3,0x04,0x21]
+# CHECK-LE: bunctrl- 0 # encoding: [0x21,0x04,0xc3,0x4d]
+ bsoctrl-
+
+# CHECK-BE: bnu 2, target # encoding: [0x40,0x8b,A,0bAAAAAA00]
+# CHECK-LE: bnu 2, target # encoding: [0bAAAAAA00,A,0x8b,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bns 2, target
+# CHECK-BE: bnu 0, target # encoding: [0x40,0x83,A,0bAAAAAA00]
+# CHECK-LE: bnu 0, target # encoding: [0bAAAAAA00,A,0x83,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bns target
+# CHECK-BE: bnua 2, target # encoding: [0x40,0x8b,A,0bAAAAAA10]
+# CHECK-LE: bnua 2, target # encoding: [0bAAAAAA10,A,0x8b,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bnsa 2, target
+# CHECK-BE: bnua 0, target # encoding: [0x40,0x83,A,0bAAAAAA10]
+# CHECK-LE: bnua 0, target # encoding: [0bAAAAAA10,A,0x83,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bnsa target
+# CHECK-BE: bnulr 2 # encoding: [0x4c,0x8b,0x00,0x20]
+# CHECK-LE: bnulr 2 # encoding: [0x20,0x00,0x8b,0x4c]
+ bnslr 2
+# CHECK-BE: bnulr 0 # encoding: [0x4c,0x83,0x00,0x20]
+# CHECK-LE: bnulr 0 # encoding: [0x20,0x00,0x83,0x4c]
+ bnslr
+# CHECK-BE: bnuctr 2 # encoding: [0x4c,0x8b,0x04,0x20]
+# CHECK-LE: bnuctr 2 # encoding: [0x20,0x04,0x8b,0x4c]
+ bnsctr 2
+# CHECK-BE: bnuctr 0 # encoding: [0x4c,0x83,0x04,0x20]
+# CHECK-LE: bnuctr 0 # encoding: [0x20,0x04,0x83,0x4c]
+ bnsctr
+# CHECK-BE: bnul 2, target # encoding: [0x40,0x8b,A,0bAAAAAA01]
+# CHECK-LE: bnul 2, target # encoding: [0bAAAAAA01,A,0x8b,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bnsl 2, target
+# CHECK-BE: bnul 0, target # encoding: [0x40,0x83,A,0bAAAAAA01]
+# CHECK-LE: bnul 0, target # encoding: [0bAAAAAA01,A,0x83,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bnsl target
+# CHECK-BE: bnula 2, target # encoding: [0x40,0x8b,A,0bAAAAAA11]
+# CHECK-LE: bnula 2, target # encoding: [0bAAAAAA11,A,0x8b,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bnsla 2, target
+# CHECK-BE: bnula 0, target # encoding: [0x40,0x83,A,0bAAAAAA11]
+# CHECK-LE: bnula 0, target # encoding: [0bAAAAAA11,A,0x83,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bnsla target
+# CHECK-BE: bnulrl 2 # encoding: [0x4c,0x8b,0x00,0x21]
+# CHECK-LE: bnulrl 2 # encoding: [0x21,0x00,0x8b,0x4c]
+ bnslrl 2
+# CHECK-BE: bnulrl 0 # encoding: [0x4c,0x83,0x00,0x21]
+# CHECK-LE: bnulrl 0 # encoding: [0x21,0x00,0x83,0x4c]
+ bnslrl
+# CHECK-BE: bnuctrl 2 # encoding: [0x4c,0x8b,0x04,0x21]
+# CHECK-LE: bnuctrl 2 # encoding: [0x21,0x04,0x8b,0x4c]
+ bnsctrl 2
+# CHECK-BE: bnuctrl 0 # encoding: [0x4c,0x83,0x04,0x21]
+# CHECK-LE: bnuctrl 0 # encoding: [0x21,0x04,0x83,0x4c]
+ bnsctrl
+
+# CHECK-BE: bnu+ 2, target # encoding: [0x40,0xeb,A,0bAAAAAA00]
+# CHECK-LE: bnu+ 2, target # encoding: [0bAAAAAA00,A,0xeb,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bns+ 2, target
+# CHECK-BE: bnu+ 0, target # encoding: [0x40,0xe3,A,0bAAAAAA00]
+# CHECK-LE: bnu+ 0, target # encoding: [0bAAAAAA00,A,0xe3,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bns+ target
+# CHECK-BE: bnua+ 2, target # encoding: [0x40,0xeb,A,0bAAAAAA10]
+# CHECK-LE: bnua+ 2, target # encoding: [0bAAAAAA10,A,0xeb,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bnsa+ 2, target
+# CHECK-BE: bnua+ 0, target # encoding: [0x40,0xe3,A,0bAAAAAA10]
+# CHECK-LE: bnua+ 0, target # encoding: [0bAAAAAA10,A,0xe3,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bnsa+ target
+# CHECK-BE: bnulr+ 2 # encoding: [0x4c,0xeb,0x00,0x20]
+# CHECK-LE: bnulr+ 2 # encoding: [0x20,0x00,0xeb,0x4c]
+ bnslr+ 2
+# CHECK-BE: bnulr+ 0 # encoding: [0x4c,0xe3,0x00,0x20]
+# CHECK-LE: bnulr+ 0 # encoding: [0x20,0x00,0xe3,0x4c]
+ bnslr+
+# CHECK-BE: bnuctr+ 2 # encoding: [0x4c,0xeb,0x04,0x20]
+# CHECK-LE: bnuctr+ 2 # encoding: [0x20,0x04,0xeb,0x4c]
+ bnsctr+ 2
+# CHECK-BE: bnuctr+ 0 # encoding: [0x4c,0xe3,0x04,0x20]
+# CHECK-LE: bnuctr+ 0 # encoding: [0x20,0x04,0xe3,0x4c]
+ bnsctr+
+# CHECK-BE: bnul+ 2, target # encoding: [0x40,0xeb,A,0bAAAAAA01]
+# CHECK-LE: bnul+ 2, target # encoding: [0bAAAAAA01,A,0xeb,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bnsl+ 2, target
+# CHECK-BE: bnul+ 0, target # encoding: [0x40,0xe3,A,0bAAAAAA01]
+# CHECK-LE: bnul+ 0, target # encoding: [0bAAAAAA01,A,0xe3,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bnsl+ target
+# CHECK-BE: bnula+ 2, target # encoding: [0x40,0xeb,A,0bAAAAAA11]
+# CHECK-LE: bnula+ 2, target # encoding: [0bAAAAAA11,A,0xeb,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bnsla+ 2, target
+# CHECK-BE: bnula+ 0, target # encoding: [0x40,0xe3,A,0bAAAAAA11]
+# CHECK-LE: bnula+ 0, target # encoding: [0bAAAAAA11,A,0xe3,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bnsla+ target
+# CHECK-BE: bnulrl+ 2 # encoding: [0x4c,0xeb,0x00,0x21]
+# CHECK-LE: bnulrl+ 2 # encoding: [0x21,0x00,0xeb,0x4c]
+ bnslrl+ 2
+# CHECK-BE: bnulrl+ 0 # encoding: [0x4c,0xe3,0x00,0x21]
+# CHECK-LE: bnulrl+ 0 # encoding: [0x21,0x00,0xe3,0x4c]
+ bnslrl+
+# CHECK-BE: bnuctrl+ 2 # encoding: [0x4c,0xeb,0x04,0x21]
+# CHECK-LE: bnuctrl+ 2 # encoding: [0x21,0x04,0xeb,0x4c]
+ bnsctrl+ 2
+# CHECK-BE: bnuctrl+ 0 # encoding: [0x4c,0xe3,0x04,0x21]
+# CHECK-LE: bnuctrl+ 0 # encoding: [0x21,0x04,0xe3,0x4c]
+ bnsctrl+
+
+# CHECK-BE: bnu- 2, target # encoding: [0x40,0xcb,A,0bAAAAAA00]
+# CHECK-LE: bnu- 2, target # encoding: [0bAAAAAA00,A,0xcb,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bns- 2, target
+# CHECK-BE: bnu- 0, target # encoding: [0x40,0xc3,A,0bAAAAAA00]
+# CHECK-LE: bnu- 0, target # encoding: [0bAAAAAA00,A,0xc3,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bns- target
+# CHECK-BE: bnua- 2, target # encoding: [0x40,0xcb,A,0bAAAAAA10]
+# CHECK-LE: bnua- 2, target # encoding: [0bAAAAAA10,A,0xcb,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bnsa- 2, target
+# CHECK-BE: bnua- 0, target # encoding: [0x40,0xc3,A,0bAAAAAA10]
+# CHECK-LE: bnua- 0, target # encoding: [0bAAAAAA10,A,0xc3,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bnsa- target
+# CHECK-BE: bnulr- 2 # encoding: [0x4c,0xcb,0x00,0x20]
+# CHECK-LE: bnulr- 2 # encoding: [0x20,0x00,0xcb,0x4c]
+ bnslr- 2
+# CHECK-BE: bnulr- 0 # encoding: [0x4c,0xc3,0x00,0x20]
+# CHECK-LE: bnulr- 0 # encoding: [0x20,0x00,0xc3,0x4c]
+ bnslr-
+# CHECK-BE: bnuctr- 2 # encoding: [0x4c,0xcb,0x04,0x20]
+# CHECK-LE: bnuctr- 2 # encoding: [0x20,0x04,0xcb,0x4c]
+ bnsctr- 2
+# CHECK-BE: bnuctr- 0 # encoding: [0x4c,0xc3,0x04,0x20]
+# CHECK-LE: bnuctr- 0 # encoding: [0x20,0x04,0xc3,0x4c]
+ bnsctr-
+# CHECK-BE: bnul- 2, target # encoding: [0x40,0xcb,A,0bAAAAAA01]
+# CHECK-LE: bnul- 2, target # encoding: [0bAAAAAA01,A,0xcb,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bnsl- 2, target
+# CHECK-BE: bnul- 0, target # encoding: [0x40,0xc3,A,0bAAAAAA01]
+# CHECK-LE: bnul- 0, target # encoding: [0bAAAAAA01,A,0xc3,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bnsl- target
+# CHECK-BE: bnula- 2, target # encoding: [0x40,0xcb,A,0bAAAAAA11]
+# CHECK-LE: bnula- 2, target # encoding: [0bAAAAAA11,A,0xcb,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bnsla- 2, target
+# CHECK-BE: bnula- 0, target # encoding: [0x40,0xc3,A,0bAAAAAA11]
+# CHECK-LE: bnula- 0, target # encoding: [0bAAAAAA11,A,0xc3,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bnsla- target
+# CHECK-BE: bnulrl- 2 # encoding: [0x4c,0xcb,0x00,0x21]
+# CHECK-LE: bnulrl- 2 # encoding: [0x21,0x00,0xcb,0x4c]
+ bnslrl- 2
+# CHECK-BE: bnulrl- 0 # encoding: [0x4c,0xc3,0x00,0x21]
+# CHECK-LE: bnulrl- 0 # encoding: [0x21,0x00,0xc3,0x4c]
+ bnslrl-
+# CHECK-BE: bnuctrl- 2 # encoding: [0x4c,0xcb,0x04,0x21]
+# CHECK-LE: bnuctrl- 2 # encoding: [0x21,0x04,0xcb,0x4c]
+ bnsctrl- 2
+# CHECK-BE: bnuctrl- 0 # encoding: [0x4c,0xc3,0x04,0x21]
+# CHECK-LE: bnuctrl- 0 # encoding: [0x21,0x04,0xc3,0x4c]
+ bnsctrl-
+
+# CHECK-BE: bun 2, target # encoding: [0x41,0x8b,A,0bAAAAAA00]
+# CHECK-LE: bun 2, target # encoding: [0bAAAAAA00,A,0x8b,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bun 2, target
+# CHECK-BE: bun 0, target # encoding: [0x41,0x83,A,0bAAAAAA00]
+# CHECK-LE: bun 0, target # encoding: [0bAAAAAA00,A,0x83,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bun target
+# CHECK-BE: buna 2, target # encoding: [0x41,0x8b,A,0bAAAAAA10]
+# CHECK-LE: buna 2, target # encoding: [0bAAAAAA10,A,0x8b,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ buna 2, target
+# CHECK-BE: buna 0, target # encoding: [0x41,0x83,A,0bAAAAAA10]
+# CHECK-LE: buna 0, target # encoding: [0bAAAAAA10,A,0x83,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ buna target
+# CHECK-BE: bunlr 2 # encoding: [0x4d,0x8b,0x00,0x20]
+# CHECK-LE: bunlr 2 # encoding: [0x20,0x00,0x8b,0x4d]
+ bunlr 2
+# CHECK-BE: bunlr 0 # encoding: [0x4d,0x83,0x00,0x20]
+# CHECK-LE: bunlr 0 # encoding: [0x20,0x00,0x83,0x4d]
+ bunlr
+# CHECK-BE: bunctr 2 # encoding: [0x4d,0x8b,0x04,0x20]
+# CHECK-LE: bunctr 2 # encoding: [0x20,0x04,0x8b,0x4d]
+ bunctr 2
+# CHECK-BE: bunctr 0 # encoding: [0x4d,0x83,0x04,0x20]
+# CHECK-LE: bunctr 0 # encoding: [0x20,0x04,0x83,0x4d]
+ bunctr
+# CHECK-BE: bunl 2, target # encoding: [0x41,0x8b,A,0bAAAAAA01]
+# CHECK-LE: bunl 2, target # encoding: [0bAAAAAA01,A,0x8b,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bunl 2, target
+# CHECK-BE: bunl 0, target # encoding: [0x41,0x83,A,0bAAAAAA01]
+# CHECK-LE: bunl 0, target # encoding: [0bAAAAAA01,A,0x83,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bunl target
+# CHECK-BE: bunla 2, target # encoding: [0x41,0x8b,A,0bAAAAAA11]
+# CHECK-LE: bunla 2, target # encoding: [0bAAAAAA11,A,0x8b,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bunla 2, target
+# CHECK-BE: bunla 0, target # encoding: [0x41,0x83,A,0bAAAAAA11]
+# CHECK-LE: bunla 0, target # encoding: [0bAAAAAA11,A,0x83,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bunla target
+# CHECK-BE: bunlrl 2 # encoding: [0x4d,0x8b,0x00,0x21]
+# CHECK-LE: bunlrl 2 # encoding: [0x21,0x00,0x8b,0x4d]
+ bunlrl 2
+# CHECK-BE: bunlrl 0 # encoding: [0x4d,0x83,0x00,0x21]
+# CHECK-LE: bunlrl 0 # encoding: [0x21,0x00,0x83,0x4d]
+ bunlrl
+# CHECK-BE: bunctrl 2 # encoding: [0x4d,0x8b,0x04,0x21]
+# CHECK-LE: bunctrl 2 # encoding: [0x21,0x04,0x8b,0x4d]
+ bunctrl 2
+# CHECK-BE: bunctrl 0 # encoding: [0x4d,0x83,0x04,0x21]
+# CHECK-LE: bunctrl 0 # encoding: [0x21,0x04,0x83,0x4d]
+ bunctrl
+
+# CHECK-BE: bun+ 2, target # encoding: [0x41,0xeb,A,0bAAAAAA00]
+# CHECK-LE: bun+ 2, target # encoding: [0bAAAAAA00,A,0xeb,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bun+ 2, target
+# CHECK-BE: bun+ 0, target # encoding: [0x41,0xe3,A,0bAAAAAA00]
+# CHECK-LE: bun+ 0, target # encoding: [0bAAAAAA00,A,0xe3,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bun+ target
+# CHECK-BE: buna+ 2, target # encoding: [0x41,0xeb,A,0bAAAAAA10]
+# CHECK-LE: buna+ 2, target # encoding: [0bAAAAAA10,A,0xeb,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ buna+ 2, target
+# CHECK-BE: buna+ 0, target # encoding: [0x41,0xe3,A,0bAAAAAA10]
+# CHECK-LE: buna+ 0, target # encoding: [0bAAAAAA10,A,0xe3,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ buna+ target
+# CHECK-BE: bunlr+ 2 # encoding: [0x4d,0xeb,0x00,0x20]
+# CHECK-LE: bunlr+ 2 # encoding: [0x20,0x00,0xeb,0x4d]
+ bunlr+ 2
+# CHECK-BE: bunlr+ 0 # encoding: [0x4d,0xe3,0x00,0x20]
+# CHECK-LE: bunlr+ 0 # encoding: [0x20,0x00,0xe3,0x4d]
+ bunlr+
+# CHECK-BE: bunctr+ 2 # encoding: [0x4d,0xeb,0x04,0x20]
+# CHECK-LE: bunctr+ 2 # encoding: [0x20,0x04,0xeb,0x4d]
+ bunctr+ 2
+# CHECK-BE: bunctr+ 0 # encoding: [0x4d,0xe3,0x04,0x20]
+# CHECK-LE: bunctr+ 0 # encoding: [0x20,0x04,0xe3,0x4d]
+ bunctr+
+# CHECK-BE: bunl+ 2, target # encoding: [0x41,0xeb,A,0bAAAAAA01]
+# CHECK-LE: bunl+ 2, target # encoding: [0bAAAAAA01,A,0xeb,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bunl+ 2, target
+# CHECK-BE: bunl+ 0, target # encoding: [0x41,0xe3,A,0bAAAAAA01]
+# CHECK-LE: bunl+ 0, target # encoding: [0bAAAAAA01,A,0xe3,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bunl+ target
+# CHECK-BE: bunla+ 2, target # encoding: [0x41,0xeb,A,0bAAAAAA11]
+# CHECK-LE: bunla+ 2, target # encoding: [0bAAAAAA11,A,0xeb,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bunla+ 2, target
+# CHECK-BE: bunla+ 0, target # encoding: [0x41,0xe3,A,0bAAAAAA11]
+# CHECK-LE: bunla+ 0, target # encoding: [0bAAAAAA11,A,0xe3,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bunla+ target
+# CHECK-BE: bunlrl+ 2 # encoding: [0x4d,0xeb,0x00,0x21]
+# CHECK-LE: bunlrl+ 2 # encoding: [0x21,0x00,0xeb,0x4d]
+ bunlrl+ 2
+# CHECK-BE: bunlrl+ 0 # encoding: [0x4d,0xe3,0x00,0x21]
+# CHECK-LE: bunlrl+ 0 # encoding: [0x21,0x00,0xe3,0x4d]
+ bunlrl+
+# CHECK-BE: bunctrl+ 2 # encoding: [0x4d,0xeb,0x04,0x21]
+# CHECK-LE: bunctrl+ 2 # encoding: [0x21,0x04,0xeb,0x4d]
+ bunctrl+ 2
+# CHECK-BE: bunctrl+ 0 # encoding: [0x4d,0xe3,0x04,0x21]
+# CHECK-LE: bunctrl+ 0 # encoding: [0x21,0x04,0xe3,0x4d]
+ bunctrl+
+
+# CHECK-BE: bun- 2, target # encoding: [0x41,0xcb,A,0bAAAAAA00]
+# CHECK-LE: bun- 2, target # encoding: [0bAAAAAA00,A,0xcb,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bun- 2, target
+# CHECK-BE: bun- 0, target # encoding: [0x41,0xc3,A,0bAAAAAA00]
+# CHECK-LE: bun- 0, target # encoding: [0bAAAAAA00,A,0xc3,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bun- target
+# CHECK-BE: buna- 2, target # encoding: [0x41,0xcb,A,0bAAAAAA10]
+# CHECK-LE: buna- 2, target # encoding: [0bAAAAAA10,A,0xcb,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ buna- 2, target
+# CHECK-BE: buna- 0, target # encoding: [0x41,0xc3,A,0bAAAAAA10]
+# CHECK-LE: buna- 0, target # encoding: [0bAAAAAA10,A,0xc3,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ buna- target
+# CHECK-BE: bunlr- 2 # encoding: [0x4d,0xcb,0x00,0x20]
+# CHECK-LE: bunlr- 2 # encoding: [0x20,0x00,0xcb,0x4d]
+ bunlr- 2
+# CHECK-BE: bunlr- 0 # encoding: [0x4d,0xc3,0x00,0x20]
+# CHECK-LE: bunlr- 0 # encoding: [0x20,0x00,0xc3,0x4d]
+ bunlr-
+# CHECK-BE: bunctr- 2 # encoding: [0x4d,0xcb,0x04,0x20]
+# CHECK-LE: bunctr- 2 # encoding: [0x20,0x04,0xcb,0x4d]
+ bunctr- 2
+# CHECK-BE: bunctr- 0 # encoding: [0x4d,0xc3,0x04,0x20]
+# CHECK-LE: bunctr- 0 # encoding: [0x20,0x04,0xc3,0x4d]
+ bunctr-
+# CHECK-BE: bunl- 2, target # encoding: [0x41,0xcb,A,0bAAAAAA01]
+# CHECK-LE: bunl- 2, target # encoding: [0bAAAAAA01,A,0xcb,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bunl- 2, target
+# CHECK-BE: bunl- 0, target # encoding: [0x41,0xc3,A,0bAAAAAA01]
+# CHECK-LE: bunl- 0, target # encoding: [0bAAAAAA01,A,0xc3,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bunl- target
+# CHECK-BE: bunla- 2, target # encoding: [0x41,0xcb,A,0bAAAAAA11]
+# CHECK-LE: bunla- 2, target # encoding: [0bAAAAAA11,A,0xcb,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bunla- 2, target
+# CHECK-BE: bunla- 0, target # encoding: [0x41,0xc3,A,0bAAAAAA11]
+# CHECK-LE: bunla- 0, target # encoding: [0bAAAAAA11,A,0xc3,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bunla- target
+# CHECK-BE: bunlrl- 2 # encoding: [0x4d,0xcb,0x00,0x21]
+# CHECK-LE: bunlrl- 2 # encoding: [0x21,0x00,0xcb,0x4d]
+ bunlrl- 2
+# CHECK-BE: bunlrl- 0 # encoding: [0x4d,0xc3,0x00,0x21]
+# CHECK-LE: bunlrl- 0 # encoding: [0x21,0x00,0xc3,0x4d]
+ bunlrl-
+# CHECK-BE: bunctrl- 2 # encoding: [0x4d,0xcb,0x04,0x21]
+# CHECK-LE: bunctrl- 2 # encoding: [0x21,0x04,0xcb,0x4d]
+ bunctrl- 2
+# CHECK-BE: bunctrl- 0 # encoding: [0x4d,0xc3,0x04,0x21]
+# CHECK-LE: bunctrl- 0 # encoding: [0x21,0x04,0xc3,0x4d]
+ bunctrl-
+
+# CHECK-BE: bnu 2, target # encoding: [0x40,0x8b,A,0bAAAAAA00]
+# CHECK-LE: bnu 2, target # encoding: [0bAAAAAA00,A,0x8b,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bnu 2, target
+# CHECK-BE: bnu 0, target # encoding: [0x40,0x83,A,0bAAAAAA00]
+# CHECK-LE: bnu 0, target # encoding: [0bAAAAAA00,A,0x83,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bnu target
+# CHECK-BE: bnua 2, target # encoding: [0x40,0x8b,A,0bAAAAAA10]
+# CHECK-LE: bnua 2, target # encoding: [0bAAAAAA10,A,0x8b,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bnua 2, target
+# CHECK-BE: bnua 0, target # encoding: [0x40,0x83,A,0bAAAAAA10]
+# CHECK-LE: bnua 0, target # encoding: [0bAAAAAA10,A,0x83,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bnua target
+# CHECK-BE: bnulr 2 # encoding: [0x4c,0x8b,0x00,0x20]
+# CHECK-LE: bnulr 2 # encoding: [0x20,0x00,0x8b,0x4c]
+ bnulr 2
+# CHECK-BE: bnulr 0 # encoding: [0x4c,0x83,0x00,0x20]
+# CHECK-LE: bnulr 0 # encoding: [0x20,0x00,0x83,0x4c]
+ bnulr
+# CHECK-BE: bnuctr 2 # encoding: [0x4c,0x8b,0x04,0x20]
+# CHECK-LE: bnuctr 2 # encoding: [0x20,0x04,0x8b,0x4c]
+ bnuctr 2
+# CHECK-BE: bnuctr 0 # encoding: [0x4c,0x83,0x04,0x20]
+# CHECK-LE: bnuctr 0 # encoding: [0x20,0x04,0x83,0x4c]
+ bnuctr
+# CHECK-BE: bnul 2, target # encoding: [0x40,0x8b,A,0bAAAAAA01]
+# CHECK-LE: bnul 2, target # encoding: [0bAAAAAA01,A,0x8b,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bnul 2, target
+# CHECK-BE: bnul 0, target # encoding: [0x40,0x83,A,0bAAAAAA01]
+# CHECK-LE: bnul 0, target # encoding: [0bAAAAAA01,A,0x83,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bnul target
+# CHECK-BE: bnula 2, target # encoding: [0x40,0x8b,A,0bAAAAAA11]
+# CHECK-LE: bnula 2, target # encoding: [0bAAAAAA11,A,0x8b,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bnula 2, target
+# CHECK-BE: bnula 0, target # encoding: [0x40,0x83,A,0bAAAAAA11]
+# CHECK-LE: bnula 0, target # encoding: [0bAAAAAA11,A,0x83,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bnula target
+# CHECK-BE: bnulrl 2 # encoding: [0x4c,0x8b,0x00,0x21]
+# CHECK-LE: bnulrl 2 # encoding: [0x21,0x00,0x8b,0x4c]
+ bnulrl 2
+# CHECK-BE: bnulrl 0 # encoding: [0x4c,0x83,0x00,0x21]
+# CHECK-LE: bnulrl 0 # encoding: [0x21,0x00,0x83,0x4c]
+ bnulrl
+# CHECK-BE: bnuctrl 2 # encoding: [0x4c,0x8b,0x04,0x21]
+# CHECK-LE: bnuctrl 2 # encoding: [0x21,0x04,0x8b,0x4c]
+ bnuctrl 2
+# CHECK-BE: bnuctrl 0 # encoding: [0x4c,0x83,0x04,0x21]
+# CHECK-LE: bnuctrl 0 # encoding: [0x21,0x04,0x83,0x4c]
+ bnuctrl
+
+# CHECK-BE: bnu+ 2, target # encoding: [0x40,0xeb,A,0bAAAAAA00]
+# CHECK-LE: bnu+ 2, target # encoding: [0bAAAAAA00,A,0xeb,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bnu+ 2, target
+# CHECK-BE: bnu+ 0, target # encoding: [0x40,0xe3,A,0bAAAAAA00]
+# CHECK-LE: bnu+ 0, target # encoding: [0bAAAAAA00,A,0xe3,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bnu+ target
+# CHECK-BE: bnua+ 2, target # encoding: [0x40,0xeb,A,0bAAAAAA10]
+# CHECK-LE: bnua+ 2, target # encoding: [0bAAAAAA10,A,0xeb,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bnua+ 2, target
+# CHECK-BE: bnua+ 0, target # encoding: [0x40,0xe3,A,0bAAAAAA10]
+# CHECK-LE: bnua+ 0, target # encoding: [0bAAAAAA10,A,0xe3,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bnua+ target
+# CHECK-BE: bnulr+ 2 # encoding: [0x4c,0xeb,0x00,0x20]
+# CHECK-LE: bnulr+ 2 # encoding: [0x20,0x00,0xeb,0x4c]
+ bnulr+ 2
+# CHECK-BE: bnulr+ 0 # encoding: [0x4c,0xe3,0x00,0x20]
+# CHECK-LE: bnulr+ 0 # encoding: [0x20,0x00,0xe3,0x4c]
+ bnulr+
+# CHECK-BE: bnuctr+ 2 # encoding: [0x4c,0xeb,0x04,0x20]
+# CHECK-LE: bnuctr+ 2 # encoding: [0x20,0x04,0xeb,0x4c]
+ bnuctr+ 2
+# CHECK-BE: bnuctr+ 0 # encoding: [0x4c,0xe3,0x04,0x20]
+# CHECK-LE: bnuctr+ 0 # encoding: [0x20,0x04,0xe3,0x4c]
+ bnuctr+
+# CHECK-BE: bnul+ 2, target # encoding: [0x40,0xeb,A,0bAAAAAA01]
+# CHECK-LE: bnul+ 2, target # encoding: [0bAAAAAA01,A,0xeb,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bnul+ 2, target
+# CHECK-BE: bnul+ 0, target # encoding: [0x40,0xe3,A,0bAAAAAA01]
+# CHECK-LE: bnul+ 0, target # encoding: [0bAAAAAA01,A,0xe3,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bnul+ target
+# CHECK-BE: bnula+ 2, target # encoding: [0x40,0xeb,A,0bAAAAAA11]
+# CHECK-LE: bnula+ 2, target # encoding: [0bAAAAAA11,A,0xeb,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bnula+ 2, target
+# CHECK-BE: bnula+ 0, target # encoding: [0x40,0xe3,A,0bAAAAAA11]
+# CHECK-LE: bnula+ 0, target # encoding: [0bAAAAAA11,A,0xe3,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bnula+ target
+# CHECK-BE: bnulrl+ 2 # encoding: [0x4c,0xeb,0x00,0x21]
+# CHECK-LE: bnulrl+ 2 # encoding: [0x21,0x00,0xeb,0x4c]
+ bnulrl+ 2
+# CHECK-BE: bnulrl+ 0 # encoding: [0x4c,0xe3,0x00,0x21]
+# CHECK-LE: bnulrl+ 0 # encoding: [0x21,0x00,0xe3,0x4c]
+ bnulrl+
+# CHECK-BE: bnuctrl+ 2 # encoding: [0x4c,0xeb,0x04,0x21]
+# CHECK-LE: bnuctrl+ 2 # encoding: [0x21,0x04,0xeb,0x4c]
+ bnuctrl+ 2
+# CHECK-BE: bnuctrl+ 0 # encoding: [0x4c,0xe3,0x04,0x21]
+# CHECK-LE: bnuctrl+ 0 # encoding: [0x21,0x04,0xe3,0x4c]
+ bnuctrl+
+
+# CHECK-BE: bnu- 2, target # encoding: [0x40,0xcb,A,0bAAAAAA00]
+# CHECK-LE: bnu- 2, target # encoding: [0bAAAAAA00,A,0xcb,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bnu- 2, target
+# CHECK-BE: bnu- 0, target # encoding: [0x40,0xc3,A,0bAAAAAA00]
+# CHECK-LE: bnu- 0, target # encoding: [0bAAAAAA00,A,0xc3,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bnu- target
+# CHECK-BE: bnua- 2, target # encoding: [0x40,0xcb,A,0bAAAAAA10]
+# CHECK-LE: bnua- 2, target # encoding: [0bAAAAAA10,A,0xcb,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bnua- 2, target
+# CHECK-BE: bnua- 0, target # encoding: [0x40,0xc3,A,0bAAAAAA10]
+# CHECK-LE: bnua- 0, target # encoding: [0bAAAAAA10,A,0xc3,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bnua- target
+# CHECK-BE: bnulr- 2 # encoding: [0x4c,0xcb,0x00,0x20]
+# CHECK-LE: bnulr- 2 # encoding: [0x20,0x00,0xcb,0x4c]
+ bnulr- 2
+# CHECK-BE: bnulr- 0 # encoding: [0x4c,0xc3,0x00,0x20]
+# CHECK-LE: bnulr- 0 # encoding: [0x20,0x00,0xc3,0x4c]
+ bnulr-
+# CHECK-BE: bnuctr- 2 # encoding: [0x4c,0xcb,0x04,0x20]
+# CHECK-LE: bnuctr- 2 # encoding: [0x20,0x04,0xcb,0x4c]
+ bnuctr- 2
+# CHECK-BE: bnuctr- 0 # encoding: [0x4c,0xc3,0x04,0x20]
+# CHECK-LE: bnuctr- 0 # encoding: [0x20,0x04,0xc3,0x4c]
+ bnuctr-
+# CHECK-BE: bnul- 2, target # encoding: [0x40,0xcb,A,0bAAAAAA01]
+# CHECK-LE: bnul- 2, target # encoding: [0bAAAAAA01,A,0xcb,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bnul- 2, target
+# CHECK-BE: bnul- 0, target # encoding: [0x40,0xc3,A,0bAAAAAA01]
+# CHECK-LE: bnul- 0, target # encoding: [0bAAAAAA01,A,0xc3,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bnul- target
+# CHECK-BE: bnula- 2, target # encoding: [0x40,0xcb,A,0bAAAAAA11]
+# CHECK-LE: bnula- 2, target # encoding: [0bAAAAAA11,A,0xcb,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bnula- 2, target
+# CHECK-BE: bnula- 0, target # encoding: [0x40,0xc3,A,0bAAAAAA11]
+# CHECK-LE: bnula- 0, target # encoding: [0bAAAAAA11,A,0xc3,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bnula- target
+# CHECK-BE: bnulrl- 2 # encoding: [0x4c,0xcb,0x00,0x21]
+# CHECK-LE: bnulrl- 2 # encoding: [0x21,0x00,0xcb,0x4c]
+ bnulrl- 2
+# CHECK-BE: bnulrl- 0 # encoding: [0x4c,0xc3,0x00,0x21]
+# CHECK-LE: bnulrl- 0 # encoding: [0x21,0x00,0xc3,0x4c]
+ bnulrl-
+# CHECK-BE: bnuctrl- 2 # encoding: [0x4c,0xcb,0x04,0x21]
+# CHECK-LE: bnuctrl- 2 # encoding: [0x21,0x04,0xcb,0x4c]
+ bnuctrl- 2
+# CHECK-BE: bnuctrl- 0 # encoding: [0x4c,0xc3,0x04,0x21]
+# CHECK-LE: bnuctrl- 0 # encoding: [0x21,0x04,0xc3,0x4c]
+ bnuctrl-
# Condition register logical mnemonics
-# CHECK: creqv 2, 2, 2 # encoding: [0x4c,0x42,0x12,0x42]
- crset 2
-# CHECK: crxor 2, 2, 2 # encoding: [0x4c,0x42,0x11,0x82]
- crclr 2
-# CHECK: cror 2, 3, 3 # encoding: [0x4c,0x43,0x1b,0x82]
- crmove 2, 3
-# CHECK: crnor 2, 3, 3 # encoding: [0x4c,0x43,0x18,0x42]
- crnot 2, 3
+# CHECK-BE: creqv 2, 2, 2 # encoding: [0x4c,0x42,0x12,0x42]
+# CHECK-LE: creqv 2, 2, 2 # encoding: [0x42,0x12,0x42,0x4c]
+ crset 2
+# CHECK-BE: crxor 2, 2, 2 # encoding: [0x4c,0x42,0x11,0x82]
+# CHECK-LE: crxor 2, 2, 2 # encoding: [0x82,0x11,0x42,0x4c]
+ crclr 2
+# CHECK-BE: cror 2, 3, 3 # encoding: [0x4c,0x43,0x1b,0x82]
+# CHECK-LE: cror 2, 3, 3 # encoding: [0x82,0x1b,0x43,0x4c]
+ crmove 2, 3
+# CHECK-BE: crnor 2, 3, 3 # encoding: [0x4c,0x43,0x18,0x42]
+# CHECK-LE: crnor 2, 3, 3 # encoding: [0x42,0x18,0x43,0x4c]
+ crnot 2, 3
# Subtract mnemonics
-# CHECK: addi 2, 3, -128 # encoding: [0x38,0x43,0xff,0x80]
- subi 2, 3, 128
-# CHECK: addis 2, 3, -128 # encoding: [0x3c,0x43,0xff,0x80]
- subis 2, 3, 128
-# CHECK: addic 2, 3, -128 # encoding: [0x30,0x43,0xff,0x80]
- subic 2, 3, 128
-# CHECK: addic. 2, 3, -128 # encoding: [0x34,0x43,0xff,0x80]
- subic. 2, 3, 128
-
-# CHECK: subf 2, 4, 3 # encoding: [0x7c,0x44,0x18,0x50]
- sub 2, 3, 4
-# CHECK: subf. 2, 4, 3 # encoding: [0x7c,0x44,0x18,0x51]
- sub. 2, 3, 4
-# CHECK: subfc 2, 4, 3 # encoding: [0x7c,0x44,0x18,0x10]
- subc 2, 3, 4
-# CHECK: subfc. 2, 4, 3 # encoding: [0x7c,0x44,0x18,0x11]
- subc. 2, 3, 4
+# CHECK-BE: addi 2, 3, -128 # encoding: [0x38,0x43,0xff,0x80]
+# CHECK-LE: addi 2, 3, -128 # encoding: [0x80,0xff,0x43,0x38]
+ subi 2, 3, 128
+# CHECK-BE: addis 2, 3, -128 # encoding: [0x3c,0x43,0xff,0x80]
+# CHECK-LE: addis 2, 3, -128 # encoding: [0x80,0xff,0x43,0x3c]
+ subis 2, 3, 128
+# CHECK-BE: addic 2, 3, -128 # encoding: [0x30,0x43,0xff,0x80]
+# CHECK-LE: addic 2, 3, -128 # encoding: [0x80,0xff,0x43,0x30]
+ subic 2, 3, 128
+# CHECK-BE: addic. 2, 3, -128 # encoding: [0x34,0x43,0xff,0x80]
+# CHECK-LE: addic. 2, 3, -128 # encoding: [0x80,0xff,0x43,0x34]
+ subic. 2, 3, 128
+
+# CHECK-BE: subf 2, 4, 3 # encoding: [0x7c,0x44,0x18,0x50]
+# CHECK-LE: subf 2, 4, 3 # encoding: [0x50,0x18,0x44,0x7c]
+ sub 2, 3, 4
+# CHECK-BE: subf. 2, 4, 3 # encoding: [0x7c,0x44,0x18,0x51]
+# CHECK-LE: subf. 2, 4, 3 # encoding: [0x51,0x18,0x44,0x7c]
+ sub. 2, 3, 4
+# CHECK-BE: subfc 2, 4, 3 # encoding: [0x7c,0x44,0x18,0x10]
+# CHECK-LE: subfc 2, 4, 3 # encoding: [0x10,0x18,0x44,0x7c]
+ subc 2, 3, 4
+# CHECK-BE: subfc. 2, 4, 3 # encoding: [0x7c,0x44,0x18,0x11]
+# CHECK-LE: subfc. 2, 4, 3 # encoding: [0x11,0x18,0x44,0x7c]
+ subc. 2, 3, 4
# Compare mnemonics
-# CHECK: cmpdi 2, 3, 128 # encoding: [0x2d,0x23,0x00,0x80]
- cmpdi 2, 3, 128
-# CHECK: cmpdi 0, 3, 128 # encoding: [0x2c,0x23,0x00,0x80]
- cmpdi 3, 128
-# CHECK: cmpd 2, 3, 4 # encoding: [0x7d,0x23,0x20,0x00]
- cmpd 2, 3, 4
-# CHECK: cmpd 0, 3, 4 # encoding: [0x7c,0x23,0x20,0x00]
- cmpd 3, 4
-# CHECK: cmpldi 2, 3, 128 # encoding: [0x29,0x23,0x00,0x80]
- cmpldi 2, 3, 128
-# CHECK: cmpldi 0, 3, 128 # encoding: [0x28,0x23,0x00,0x80]
- cmpldi 3, 128
-# CHECK: cmpld 2, 3, 4 # encoding: [0x7d,0x23,0x20,0x40]
- cmpld 2, 3, 4
-# CHECK: cmpld 0, 3, 4 # encoding: [0x7c,0x23,0x20,0x40]
- cmpld 3, 4
-
-# CHECK: cmpwi 2, 3, 128 # encoding: [0x2d,0x03,0x00,0x80]
- cmpwi 2, 3, 128
-# CHECK: cmpwi 0, 3, 128 # encoding: [0x2c,0x03,0x00,0x80]
- cmpwi 3, 128
-# CHECK: cmpw 2, 3, 4 # encoding: [0x7d,0x03,0x20,0x00]
- cmpw 2, 3, 4
-# CHECK: cmpw 0, 3, 4 # encoding: [0x7c,0x03,0x20,0x00]
- cmpw 3, 4
-# CHECK: cmplwi 2, 3, 128 # encoding: [0x29,0x03,0x00,0x80]
- cmplwi 2, 3, 128
-# CHECK: cmplwi 0, 3, 128 # encoding: [0x28,0x03,0x00,0x80]
- cmplwi 3, 128
-# CHECK: cmplw 2, 3, 4 # encoding: [0x7d,0x03,0x20,0x40]
- cmplw 2, 3, 4
-# CHECK: cmplw 0, 3, 4 # encoding: [0x7c,0x03,0x20,0x40]
- cmplw 3, 4
+# CHECK-BE: cmpdi 2, 3, 128 # encoding: [0x2d,0x23,0x00,0x80]
+# CHECK-LE: cmpdi 2, 3, 128 # encoding: [0x80,0x00,0x23,0x2d]
+ cmpdi 2, 3, 128
+# CHECK-BE: cmpdi 0, 3, 128 # encoding: [0x2c,0x23,0x00,0x80]
+# CHECK-LE: cmpdi 0, 3, 128 # encoding: [0x80,0x00,0x23,0x2c]
+ cmpdi 3, 128
+# CHECK-BE: cmpd 2, 3, 4 # encoding: [0x7d,0x23,0x20,0x00]
+# CHECK-LE: cmpd 2, 3, 4 # encoding: [0x00,0x20,0x23,0x7d]
+ cmpd 2, 3, 4
+# CHECK-BE: cmpd 0, 3, 4 # encoding: [0x7c,0x23,0x20,0x00]
+# CHECK-LE: cmpd 0, 3, 4 # encoding: [0x00,0x20,0x23,0x7c]
+ cmpd 3, 4
+# CHECK-BE: cmpldi 2, 3, 128 # encoding: [0x29,0x23,0x00,0x80]
+# CHECK-LE: cmpldi 2, 3, 128 # encoding: [0x80,0x00,0x23,0x29]
+ cmpldi 2, 3, 128
+# CHECK-BE: cmpldi 0, 3, 128 # encoding: [0x28,0x23,0x00,0x80]
+# CHECK-LE: cmpldi 0, 3, 128 # encoding: [0x80,0x00,0x23,0x28]
+ cmpldi 3, 128
+# CHECK-BE: cmpld 2, 3, 4 # encoding: [0x7d,0x23,0x20,0x40]
+# CHECK-LE: cmpld 2, 3, 4 # encoding: [0x40,0x20,0x23,0x7d]
+ cmpld 2, 3, 4
+# CHECK-BE: cmpld 0, 3, 4 # encoding: [0x7c,0x23,0x20,0x40]
+# CHECK-LE: cmpld 0, 3, 4 # encoding: [0x40,0x20,0x23,0x7c]
+ cmpld 3, 4
+
+# CHECK-BE: cmpwi 2, 3, 128 # encoding: [0x2d,0x03,0x00,0x80]
+# CHECK-LE: cmpwi 2, 3, 128 # encoding: [0x80,0x00,0x03,0x2d]
+ cmpwi 2, 3, 128
+# CHECK-BE: cmpwi 0, 3, 128 # encoding: [0x2c,0x03,0x00,0x80]
+# CHECK-LE: cmpwi 0, 3, 128 # encoding: [0x80,0x00,0x03,0x2c]
+ cmpwi 3, 128
+# CHECK-BE: cmpw 2, 3, 4 # encoding: [0x7d,0x03,0x20,0x00]
+# CHECK-LE: cmpw 2, 3, 4 # encoding: [0x00,0x20,0x03,0x7d]
+ cmpw 2, 3, 4
+# CHECK-BE: cmpw 0, 3, 4 # encoding: [0x7c,0x03,0x20,0x00]
+# CHECK-LE: cmpw 0, 3, 4 # encoding: [0x00,0x20,0x03,0x7c]
+ cmpw 3, 4
+# CHECK-BE: cmplwi 2, 3, 128 # encoding: [0x29,0x03,0x00,0x80]
+# CHECK-LE: cmplwi 2, 3, 128 # encoding: [0x80,0x00,0x03,0x29]
+ cmplwi 2, 3, 128
+# CHECK-BE: cmplwi 0, 3, 128 # encoding: [0x28,0x03,0x00,0x80]
+# CHECK-LE: cmplwi 0, 3, 128 # encoding: [0x80,0x00,0x03,0x28]
+ cmplwi 3, 128
+# CHECK-BE: cmplw 2, 3, 4 # encoding: [0x7d,0x03,0x20,0x40]
+# CHECK-LE: cmplw 2, 3, 4 # encoding: [0x40,0x20,0x03,0x7d]
+ cmplw 2, 3, 4
+# CHECK-BE: cmplw 0, 3, 4 # encoding: [0x7c,0x03,0x20,0x40]
+# CHECK-LE: cmplw 0, 3, 4 # encoding: [0x40,0x20,0x03,0x7c]
+ cmplw 3, 4
# Trap mnemonics
-# CHECK: twi 16, 3, 4 # encoding: [0x0e,0x03,0x00,0x04]
- twlti 3, 4
-# CHECK: tw 16, 3, 4 # encoding: [0x7e,0x03,0x20,0x08]
- twlt 3, 4
-# CHECK: tdi 16, 3, 4 # encoding: [0x0a,0x03,0x00,0x04]
- tdlti 3, 4
-# CHECK: td 16, 3, 4 # encoding: [0x7e,0x03,0x20,0x88]
- tdlt 3, 4
-
-# CHECK: twi 20, 3, 4 # encoding: [0x0e,0x83,0x00,0x04]
- twlei 3, 4
-# CHECK: tw 20, 3, 4 # encoding: [0x7e,0x83,0x20,0x08]
- twle 3, 4
-# CHECK: tdi 20, 3, 4 # encoding: [0x0a,0x83,0x00,0x04]
- tdlei 3, 4
-# CHECK: td 20, 3, 4 # encoding: [0x7e,0x83,0x20,0x88]
- tdle 3, 4
-
-# CHECK: twi 4, 3, 4 # encoding: [0x0c,0x83,0x00,0x04]
- tweqi 3, 4
-# CHECK: tw 4, 3, 4 # encoding: [0x7c,0x83,0x20,0x08]
- tweq 3, 4
-# CHECK: tdi 4, 3, 4 # encoding: [0x08,0x83,0x00,0x04]
- tdeqi 3, 4
-# CHECK: td 4, 3, 4 # encoding: [0x7c,0x83,0x20,0x88]
- tdeq 3, 4
-
-# CHECK: twi 12, 3, 4 # encoding: [0x0d,0x83,0x00,0x04]
- twgei 3, 4
-# CHECK: tw 12, 3, 4 # encoding: [0x7d,0x83,0x20,0x08]
- twge 3, 4
-# CHECK: tdi 12, 3, 4 # encoding: [0x09,0x83,0x00,0x04]
- tdgei 3, 4
-# CHECK: td 12, 3, 4 # encoding: [0x7d,0x83,0x20,0x88]
- tdge 3, 4
-
-# CHECK: twi 8, 3, 4 # encoding: [0x0d,0x03,0x00,0x04]
- twgti 3, 4
-# CHECK: tw 8, 3, 4 # encoding: [0x7d,0x03,0x20,0x08]
- twgt 3, 4
-# CHECK: tdi 8, 3, 4 # encoding: [0x09,0x03,0x00,0x04]
- tdgti 3, 4
-# CHECK: td 8, 3, 4 # encoding: [0x7d,0x03,0x20,0x88]
- tdgt 3, 4
-
-# CHECK: twi 12, 3, 4 # encoding: [0x0d,0x83,0x00,0x04]
- twnli 3, 4
-# CHECK: tw 12, 3, 4 # encoding: [0x7d,0x83,0x20,0x08]
- twnl 3, 4
-# CHECK: tdi 12, 3, 4 # encoding: [0x09,0x83,0x00,0x04]
- tdnli 3, 4
-# CHECK: td 12, 3, 4 # encoding: [0x7d,0x83,0x20,0x88]
- tdnl 3, 4
-
-# CHECK: twi 24, 3, 4 # encoding: [0x0f,0x03,0x00,0x04]
- twnei 3, 4
-# CHECK: tw 24, 3, 4 # encoding: [0x7f,0x03,0x20,0x08]
- twne 3, 4
-# CHECK: tdi 24, 3, 4 # encoding: [0x0b,0x03,0x00,0x04]
- tdnei 3, 4
-# CHECK: td 24, 3, 4 # encoding: [0x7f,0x03,0x20,0x88]
- tdne 3, 4
-
-# CHECK: twi 20, 3, 4 # encoding: [0x0e,0x83,0x00,0x04]
- twngi 3, 4
-# CHECK: tw 20, 3, 4 # encoding: [0x7e,0x83,0x20,0x08]
- twng 3, 4
-# CHECK: tdi 20, 3, 4 # encoding: [0x0a,0x83,0x00,0x04]
- tdngi 3, 4
-# CHECK: td 20, 3, 4 # encoding: [0x7e,0x83,0x20,0x88]
- tdng 3, 4
-
-# CHECK: twi 2, 3, 4 # encoding: [0x0c,0x43,0x00,0x04]
- twllti 3, 4
-# CHECK: tw 2, 3, 4 # encoding: [0x7c,0x43,0x20,0x08]
- twllt 3, 4
-# CHECK: tdi 2, 3, 4 # encoding: [0x08,0x43,0x00,0x04]
- tdllti 3, 4
-# CHECK: td 2, 3, 4 # encoding: [0x7c,0x43,0x20,0x88]
- tdllt 3, 4
-
-# CHECK: twi 6, 3, 4 # encoding: [0x0c,0xc3,0x00,0x04]
- twllei 3, 4
-# CHECK: tw 6, 3, 4 # encoding: [0x7c,0xc3,0x20,0x08]
- twlle 3, 4
-# CHECK: tdi 6, 3, 4 # encoding: [0x08,0xc3,0x00,0x04]
- tdllei 3, 4
-# CHECK: td 6, 3, 4 # encoding: [0x7c,0xc3,0x20,0x88]
- tdlle 3, 4
-
-# CHECK: twi 5, 3, 4 # encoding: [0x0c,0xa3,0x00,0x04]
- twlgei 3, 4
-# CHECK: tw 5, 3, 4 # encoding: [0x7c,0xa3,0x20,0x08]
- twlge 3, 4
-# CHECK: tdi 5, 3, 4 # encoding: [0x08,0xa3,0x00,0x04]
- tdlgei 3, 4
-# CHECK: td 5, 3, 4 # encoding: [0x7c,0xa3,0x20,0x88]
- tdlge 3, 4
-
-# CHECK: twi 1, 3, 4 # encoding: [0x0c,0x23,0x00,0x04]
- twlgti 3, 4
-# CHECK: tw 1, 3, 4 # encoding: [0x7c,0x23,0x20,0x08]
- twlgt 3, 4
-# CHECK: tdi 1, 3, 4 # encoding: [0x08,0x23,0x00,0x04]
- tdlgti 3, 4
-# CHECK: td 1, 3, 4 # encoding: [0x7c,0x23,0x20,0x88]
- tdlgt 3, 4
-
-# CHECK: twi 5, 3, 4 # encoding: [0x0c,0xa3,0x00,0x04]
- twlnli 3, 4
-# CHECK: tw 5, 3, 4 # encoding: [0x7c,0xa3,0x20,0x08]
- twlnl 3, 4
-# CHECK: tdi 5, 3, 4 # encoding: [0x08,0xa3,0x00,0x04]
- tdlnli 3, 4
-# CHECK: td 5, 3, 4 # encoding: [0x7c,0xa3,0x20,0x88]
- tdlnl 3, 4
-
-# CHECK: twi 6, 3, 4 # encoding: [0x0c,0xc3,0x00,0x04]
- twlngi 3, 4
-# CHECK: tw 6, 3, 4 # encoding: [0x7c,0xc3,0x20,0x08]
- twlng 3, 4
-# CHECK: tdi 6, 3, 4 # encoding: [0x08,0xc3,0x00,0x04]
- tdlngi 3, 4
-# CHECK: td 6, 3, 4 # encoding: [0x7c,0xc3,0x20,0x88]
- tdlng 3, 4
-
-# CHECK: twi 31, 3, 4 # encoding: [0x0f,0xe3,0x00,0x04]
- twui 3, 4
-# CHECK: tw 31, 3, 4 # encoding: [0x7f,0xe3,0x20,0x08]
- twu 3, 4
-# CHECK: tdi 31, 3, 4 # encoding: [0x0b,0xe3,0x00,0x04]
- tdui 3, 4
-# CHECK: td 31, 3, 4 # encoding: [0x7f,0xe3,0x20,0x88]
- tdu 3, 4
-
-# CHECK: trap # encoding: [0x7f,0xe0,0x00,0x08]
- trap
+# CHECK-BE: twi 16, 3, 4 # encoding: [0x0e,0x03,0x00,0x04]
+# CHECK-LE: twi 16, 3, 4 # encoding: [0x04,0x00,0x03,0x0e]
+ twlti 3, 4
+# CHECK-BE: tw 16, 3, 4 # encoding: [0x7e,0x03,0x20,0x08]
+# CHECK-LE: tw 16, 3, 4 # encoding: [0x08,0x20,0x03,0x7e]
+ twlt 3, 4
+# CHECK-BE: tdi 16, 3, 4 # encoding: [0x0a,0x03,0x00,0x04]
+# CHECK-LE: tdi 16, 3, 4 # encoding: [0x04,0x00,0x03,0x0a]
+ tdlti 3, 4
+# CHECK-BE: td 16, 3, 4 # encoding: [0x7e,0x03,0x20,0x88]
+# CHECK-LE: td 16, 3, 4 # encoding: [0x88,0x20,0x03,0x7e]
+ tdlt 3, 4
+
+# CHECK-BE: twi 20, 3, 4 # encoding: [0x0e,0x83,0x00,0x04]
+# CHECK-LE: twi 20, 3, 4 # encoding: [0x04,0x00,0x83,0x0e]
+ twlei 3, 4
+# CHECK-BE: tw 20, 3, 4 # encoding: [0x7e,0x83,0x20,0x08]
+# CHECK-LE: tw 20, 3, 4 # encoding: [0x08,0x20,0x83,0x7e]
+ twle 3, 4
+# CHECK-BE: tdi 20, 3, 4 # encoding: [0x0a,0x83,0x00,0x04]
+# CHECK-LE: tdi 20, 3, 4 # encoding: [0x04,0x00,0x83,0x0a]
+ tdlei 3, 4
+# CHECK-BE: td 20, 3, 4 # encoding: [0x7e,0x83,0x20,0x88]
+# CHECK-LE: td 20, 3, 4 # encoding: [0x88,0x20,0x83,0x7e]
+ tdle 3, 4
+
+# CHECK-BE: twi 4, 3, 4 # encoding: [0x0c,0x83,0x00,0x04]
+# CHECK-LE: twi 4, 3, 4 # encoding: [0x04,0x00,0x83,0x0c]
+ tweqi 3, 4
+# CHECK-BE: tw 4, 3, 4 # encoding: [0x7c,0x83,0x20,0x08]
+# CHECK-LE: tw 4, 3, 4 # encoding: [0x08,0x20,0x83,0x7c]
+ tweq 3, 4
+# CHECK-BE: tdi 4, 3, 4 # encoding: [0x08,0x83,0x00,0x04]
+# CHECK-LE: tdi 4, 3, 4 # encoding: [0x04,0x00,0x83,0x08]
+ tdeqi 3, 4
+# CHECK-BE: td 4, 3, 4 # encoding: [0x7c,0x83,0x20,0x88]
+# CHECK-LE: td 4, 3, 4 # encoding: [0x88,0x20,0x83,0x7c]
+ tdeq 3, 4
+
+# CHECK-BE: twi 12, 3, 4 # encoding: [0x0d,0x83,0x00,0x04]
+# CHECK-LE: twi 12, 3, 4 # encoding: [0x04,0x00,0x83,0x0d]
+ twgei 3, 4
+# CHECK-BE: tw 12, 3, 4 # encoding: [0x7d,0x83,0x20,0x08]
+# CHECK-LE: tw 12, 3, 4 # encoding: [0x08,0x20,0x83,0x7d]
+ twge 3, 4
+# CHECK-BE: tdi 12, 3, 4 # encoding: [0x09,0x83,0x00,0x04]
+# CHECK-LE: tdi 12, 3, 4 # encoding: [0x04,0x00,0x83,0x09]
+ tdgei 3, 4
+# CHECK-BE: td 12, 3, 4 # encoding: [0x7d,0x83,0x20,0x88]
+# CHECK-LE: td 12, 3, 4 # encoding: [0x88,0x20,0x83,0x7d]
+ tdge 3, 4
+
+# CHECK-BE: twi 8, 3, 4 # encoding: [0x0d,0x03,0x00,0x04]
+# CHECK-LE: twi 8, 3, 4 # encoding: [0x04,0x00,0x03,0x0d]
+ twgti 3, 4
+# CHECK-BE: tw 8, 3, 4 # encoding: [0x7d,0x03,0x20,0x08]
+# CHECK-LE: tw 8, 3, 4 # encoding: [0x08,0x20,0x03,0x7d]
+ twgt 3, 4
+# CHECK-BE: tdi 8, 3, 4 # encoding: [0x09,0x03,0x00,0x04]
+# CHECK-LE: tdi 8, 3, 4 # encoding: [0x04,0x00,0x03,0x09]
+ tdgti 3, 4
+# CHECK-BE: td 8, 3, 4 # encoding: [0x7d,0x03,0x20,0x88]
+# CHECK-LE: td 8, 3, 4 # encoding: [0x88,0x20,0x03,0x7d]
+ tdgt 3, 4
+
+# CHECK-BE: twi 12, 3, 4 # encoding: [0x0d,0x83,0x00,0x04]
+# CHECK-LE: twi 12, 3, 4 # encoding: [0x04,0x00,0x83,0x0d]
+ twnli 3, 4
+# CHECK-BE: tw 12, 3, 4 # encoding: [0x7d,0x83,0x20,0x08]
+# CHECK-LE: tw 12, 3, 4 # encoding: [0x08,0x20,0x83,0x7d]
+ twnl 3, 4
+# CHECK-BE: tdi 12, 3, 4 # encoding: [0x09,0x83,0x00,0x04]
+# CHECK-LE: tdi 12, 3, 4 # encoding: [0x04,0x00,0x83,0x09]
+ tdnli 3, 4
+# CHECK-BE: td 12, 3, 4 # encoding: [0x7d,0x83,0x20,0x88]
+# CHECK-LE: td 12, 3, 4 # encoding: [0x88,0x20,0x83,0x7d]
+ tdnl 3, 4
+
+# CHECK-BE: twi 24, 3, 4 # encoding: [0x0f,0x03,0x00,0x04]
+# CHECK-LE: twi 24, 3, 4 # encoding: [0x04,0x00,0x03,0x0f]
+ twnei 3, 4
+# CHECK-BE: tw 24, 3, 4 # encoding: [0x7f,0x03,0x20,0x08]
+# CHECK-LE: tw 24, 3, 4 # encoding: [0x08,0x20,0x03,0x7f]
+ twne 3, 4
+# CHECK-BE: tdi 24, 3, 4 # encoding: [0x0b,0x03,0x00,0x04]
+# CHECK-LE: tdi 24, 3, 4 # encoding: [0x04,0x00,0x03,0x0b]
+ tdnei 3, 4
+# CHECK-BE: td 24, 3, 4 # encoding: [0x7f,0x03,0x20,0x88]
+# CHECK-LE: td 24, 3, 4 # encoding: [0x88,0x20,0x03,0x7f]
+ tdne 3, 4
+
+# CHECK-BE: twi 20, 3, 4 # encoding: [0x0e,0x83,0x00,0x04]
+# CHECK-LE: twi 20, 3, 4 # encoding: [0x04,0x00,0x83,0x0e]
+ twngi 3, 4
+# CHECK-BE: tw 20, 3, 4 # encoding: [0x7e,0x83,0x20,0x08]
+# CHECK-LE: tw 20, 3, 4 # encoding: [0x08,0x20,0x83,0x7e]
+ twng 3, 4
+# CHECK-BE: tdi 20, 3, 4 # encoding: [0x0a,0x83,0x00,0x04]
+# CHECK-LE: tdi 20, 3, 4 # encoding: [0x04,0x00,0x83,0x0a]
+ tdngi 3, 4
+# CHECK-BE: td 20, 3, 4 # encoding: [0x7e,0x83,0x20,0x88]
+# CHECK-LE: td 20, 3, 4 # encoding: [0x88,0x20,0x83,0x7e]
+ tdng 3, 4
+
+# CHECK-BE: twi 2, 3, 4 # encoding: [0x0c,0x43,0x00,0x04]
+# CHECK-LE: twi 2, 3, 4 # encoding: [0x04,0x00,0x43,0x0c]
+ twllti 3, 4
+# CHECK-BE: tw 2, 3, 4 # encoding: [0x7c,0x43,0x20,0x08]
+# CHECK-LE: tw 2, 3, 4 # encoding: [0x08,0x20,0x43,0x7c]
+ twllt 3, 4
+# CHECK-BE: tdi 2, 3, 4 # encoding: [0x08,0x43,0x00,0x04]
+# CHECK-LE: tdi 2, 3, 4 # encoding: [0x04,0x00,0x43,0x08]
+ tdllti 3, 4
+# CHECK-BE: td 2, 3, 4 # encoding: [0x7c,0x43,0x20,0x88]
+# CHECK-LE: td 2, 3, 4 # encoding: [0x88,0x20,0x43,0x7c]
+ tdllt 3, 4
+
+# CHECK-BE: twi 6, 3, 4 # encoding: [0x0c,0xc3,0x00,0x04]
+# CHECK-LE: twi 6, 3, 4 # encoding: [0x04,0x00,0xc3,0x0c]
+ twllei 3, 4
+# CHECK-BE: tw 6, 3, 4 # encoding: [0x7c,0xc3,0x20,0x08]
+# CHECK-LE: tw 6, 3, 4 # encoding: [0x08,0x20,0xc3,0x7c]
+ twlle 3, 4
+# CHECK-BE: tdi 6, 3, 4 # encoding: [0x08,0xc3,0x00,0x04]
+# CHECK-LE: tdi 6, 3, 4 # encoding: [0x04,0x00,0xc3,0x08]
+ tdllei 3, 4
+# CHECK-BE: td 6, 3, 4 # encoding: [0x7c,0xc3,0x20,0x88]
+# CHECK-LE: td 6, 3, 4 # encoding: [0x88,0x20,0xc3,0x7c]
+ tdlle 3, 4
+
+# CHECK-BE: twi 5, 3, 4 # encoding: [0x0c,0xa3,0x00,0x04]
+# CHECK-LE: twi 5, 3, 4 # encoding: [0x04,0x00,0xa3,0x0c]
+ twlgei 3, 4
+# CHECK-BE: tw 5, 3, 4 # encoding: [0x7c,0xa3,0x20,0x08]
+# CHECK-LE: tw 5, 3, 4 # encoding: [0x08,0x20,0xa3,0x7c]
+ twlge 3, 4
+# CHECK-BE: tdi 5, 3, 4 # encoding: [0x08,0xa3,0x00,0x04]
+# CHECK-LE: tdi 5, 3, 4 # encoding: [0x04,0x00,0xa3,0x08]
+ tdlgei 3, 4
+# CHECK-BE: td 5, 3, 4 # encoding: [0x7c,0xa3,0x20,0x88]
+# CHECK-LE: td 5, 3, 4 # encoding: [0x88,0x20,0xa3,0x7c]
+ tdlge 3, 4
+
+# CHECK-BE: twi 1, 3, 4 # encoding: [0x0c,0x23,0x00,0x04]
+# CHECK-LE: twi 1, 3, 4 # encoding: [0x04,0x00,0x23,0x0c]
+ twlgti 3, 4
+# CHECK-BE: tw 1, 3, 4 # encoding: [0x7c,0x23,0x20,0x08]
+# CHECK-LE: tw 1, 3, 4 # encoding: [0x08,0x20,0x23,0x7c]
+ twlgt 3, 4
+# CHECK-BE: tdi 1, 3, 4 # encoding: [0x08,0x23,0x00,0x04]
+# CHECK-LE: tdi 1, 3, 4 # encoding: [0x04,0x00,0x23,0x08]
+ tdlgti 3, 4
+# CHECK-BE: td 1, 3, 4 # encoding: [0x7c,0x23,0x20,0x88]
+# CHECK-LE: td 1, 3, 4 # encoding: [0x88,0x20,0x23,0x7c]
+ tdlgt 3, 4
+
+# CHECK-BE: twi 5, 3, 4 # encoding: [0x0c,0xa3,0x00,0x04]
+# CHECK-LE: twi 5, 3, 4 # encoding: [0x04,0x00,0xa3,0x0c]
+ twlnli 3, 4
+# CHECK-BE: tw 5, 3, 4 # encoding: [0x7c,0xa3,0x20,0x08]
+# CHECK-LE: tw 5, 3, 4 # encoding: [0x08,0x20,0xa3,0x7c]
+ twlnl 3, 4
+# CHECK-BE: tdi 5, 3, 4 # encoding: [0x08,0xa3,0x00,0x04]
+# CHECK-LE: tdi 5, 3, 4 # encoding: [0x04,0x00,0xa3,0x08]
+ tdlnli 3, 4
+# CHECK-BE: td 5, 3, 4 # encoding: [0x7c,0xa3,0x20,0x88]
+# CHECK-LE: td 5, 3, 4 # encoding: [0x88,0x20,0xa3,0x7c]
+ tdlnl 3, 4
+
+# CHECK-BE: twi 6, 3, 4 # encoding: [0x0c,0xc3,0x00,0x04]
+# CHECK-LE: twi 6, 3, 4 # encoding: [0x04,0x00,0xc3,0x0c]
+ twlngi 3, 4
+# CHECK-BE: tw 6, 3, 4 # encoding: [0x7c,0xc3,0x20,0x08]
+# CHECK-LE: tw 6, 3, 4 # encoding: [0x08,0x20,0xc3,0x7c]
+ twlng 3, 4
+# CHECK-BE: tdi 6, 3, 4 # encoding: [0x08,0xc3,0x00,0x04]
+# CHECK-LE: tdi 6, 3, 4 # encoding: [0x04,0x00,0xc3,0x08]
+ tdlngi 3, 4
+# CHECK-BE: td 6, 3, 4 # encoding: [0x7c,0xc3,0x20,0x88]
+# CHECK-LE: td 6, 3, 4 # encoding: [0x88,0x20,0xc3,0x7c]
+ tdlng 3, 4
+
+# CHECK-BE: twi 31, 3, 4 # encoding: [0x0f,0xe3,0x00,0x04]
+# CHECK-LE: twi 31, 3, 4 # encoding: [0x04,0x00,0xe3,0x0f]
+ twui 3, 4
+# CHECK-BE: tw 31, 3, 4 # encoding: [0x7f,0xe3,0x20,0x08]
+# CHECK-LE: tw 31, 3, 4 # encoding: [0x08,0x20,0xe3,0x7f]
+ twu 3, 4
+# CHECK-BE: tdi 31, 3, 4 # encoding: [0x0b,0xe3,0x00,0x04]
+# CHECK-LE: tdi 31, 3, 4 # encoding: [0x04,0x00,0xe3,0x0b]
+ tdui 3, 4
+# CHECK-BE: td 31, 3, 4 # encoding: [0x7f,0xe3,0x20,0x88]
+# CHECK-LE: td 31, 3, 4 # encoding: [0x88,0x20,0xe3,0x7f]
+ tdu 3, 4
+
+# CHECK-BE: trap # encoding: [0x7f,0xe0,0x00,0x08]
+# CHECK-LE: trap # encoding: [0x08,0x00,0xe0,0x7f]
+ trap
# Rotate and shift mnemonics
-# CHECK: rldicr 2, 3, 5, 3 # encoding: [0x78,0x62,0x28,0xc4]
- extldi 2, 3, 4, 5
-# CHECK: rldicr. 2, 3, 5, 3 # encoding: [0x78,0x62,0x28,0xc5]
- extldi. 2, 3, 4, 5
-# CHECK: rldicl 2, 3, 9, 60 # encoding: [0x78,0x62,0x4f,0x20]
- extrdi 2, 3, 4, 5
-# CHECK: rldicl. 2, 3, 9, 60 # encoding: [0x78,0x62,0x4f,0x21]
- extrdi. 2, 3, 4, 5
-# CHECK: rldimi 2, 3, 55, 5 # encoding: [0x78,0x62,0xb9,0x4e]
- insrdi 2, 3, 4, 5
-# CHECK: rldimi. 2, 3, 55, 5 # encoding: [0x78,0x62,0xb9,0x4f]
- insrdi. 2, 3, 4, 5
-# CHECK: rldicl 2, 3, 4, 0 # encoding: [0x78,0x62,0x20,0x00]
- rotldi 2, 3, 4
-# CHECK: rldicl. 2, 3, 4, 0 # encoding: [0x78,0x62,0x20,0x01]
- rotldi. 2, 3, 4
-# CHECK: rldicl 2, 3, 60, 0 # encoding: [0x78,0x62,0xe0,0x02]
- rotrdi 2, 3, 4
-# CHECK: rldicl. 2, 3, 60, 0 # encoding: [0x78,0x62,0xe0,0x03]
- rotrdi. 2, 3, 4
-# CHECK: rldcl 2, 3, 4, 0 # encoding: [0x78,0x62,0x20,0x10]
- rotld 2, 3, 4
-# CHECK: rldcl. 2, 3, 4, 0 # encoding: [0x78,0x62,0x20,0x11]
- rotld. 2, 3, 4
-# CHECK: sldi 2, 3, 4 # encoding: [0x78,0x62,0x26,0xe4]
- sldi 2, 3, 4
-# CHECK: rldicr. 2, 3, 4, 59 # encoding: [0x78,0x62,0x26,0xe5]
- sldi. 2, 3, 4
-# CHECK: rldicl 2, 3, 60, 4 # encoding: [0x78,0x62,0xe1,0x02]
- srdi 2, 3, 4
-# CHECK: rldicl. 2, 3, 60, 4 # encoding: [0x78,0x62,0xe1,0x03]
- srdi. 2, 3, 4
-# CHECK: rldicl 2, 3, 0, 4 # encoding: [0x78,0x62,0x01,0x00]
- clrldi 2, 3, 4
-# CHECK: rldicl. 2, 3, 0, 4 # encoding: [0x78,0x62,0x01,0x01]
- clrldi. 2, 3, 4
-# CHECK: rldicr 2, 3, 0, 59 # encoding: [0x78,0x62,0x06,0xe4]
- clrrdi 2, 3, 4
-# CHECK: rldicr. 2, 3, 0, 59 # encoding: [0x78,0x62,0x06,0xe5]
- clrrdi. 2, 3, 4
-# CHECK: rldic 2, 3, 4, 1 # encoding: [0x78,0x62,0x20,0x48]
- clrlsldi 2, 3, 5, 4
-# CHECK: rldic. 2, 3, 4, 1 # encoding: [0x78,0x62,0x20,0x49]
- clrlsldi. 2, 3, 5, 4
-
-# CHECK: rlwinm 2, 3, 5, 0, 3 # encoding: [0x54,0x62,0x28,0x06]
- extlwi 2, 3, 4, 5
-# CHECK: rlwinm. 2, 3, 5, 0, 3 # encoding: [0x54,0x62,0x28,0x07]
- extlwi. 2, 3, 4, 5
-# CHECK: rlwinm 2, 3, 9, 28, 31 # encoding: [0x54,0x62,0x4f,0x3e]
- extrwi 2, 3, 4, 5
-# CHECK: rlwinm. 2, 3, 9, 28, 31 # encoding: [0x54,0x62,0x4f,0x3f]
- extrwi. 2, 3, 4, 5
-# CHECK: rlwimi 2, 3, 27, 5, 8 # encoding: [0x50,0x62,0xd9,0x50]
- inslwi 2, 3, 4, 5
-# CHECK: rlwimi. 2, 3, 27, 5, 8 # encoding: [0x50,0x62,0xd9,0x51]
- inslwi. 2, 3, 4, 5
-# CHECK: rlwimi 2, 3, 23, 5, 8 # encoding: [0x50,0x62,0xb9,0x50]
- insrwi 2, 3, 4, 5
-# CHECK: rlwimi. 2, 3, 23, 5, 8 # encoding: [0x50,0x62,0xb9,0x51]
- insrwi. 2, 3, 4, 5
-# CHECK: rlwinm 2, 3, 4, 0, 31 # encoding: [0x54,0x62,0x20,0x3e]
- rotlwi 2, 3, 4
-# CHECK: rlwinm. 2, 3, 4, 0, 31 # encoding: [0x54,0x62,0x20,0x3f]
- rotlwi. 2, 3, 4
-# CHECK: rlwinm 2, 3, 28, 0, 31 # encoding: [0x54,0x62,0xe0,0x3e]
- rotrwi 2, 3, 4
-# CHECK: rlwinm. 2, 3, 28, 0, 31 # encoding: [0x54,0x62,0xe0,0x3f]
- rotrwi. 2, 3, 4
-# CHECK: rlwnm 2, 3, 4, 0, 31 # encoding: [0x5c,0x62,0x20,0x3e]
- rotlw 2, 3, 4
-# CHECK: rlwnm. 2, 3, 4, 0, 31 # encoding: [0x5c,0x62,0x20,0x3f]
- rotlw. 2, 3, 4
-# CHECK: slwi 2, 3, 4 # encoding: [0x54,0x62,0x20,0x36]
- slwi 2, 3, 4
-# CHECK: rlwinm. 2, 3, 4, 0, 27 # encoding: [0x54,0x62,0x20,0x37]
- slwi. 2, 3, 4
-# CHECK: srwi 2, 3, 4 # encoding: [0x54,0x62,0xe1,0x3e]
- srwi 2, 3, 4
-# CHECK: rlwinm. 2, 3, 28, 4, 31 # encoding: [0x54,0x62,0xe1,0x3f]
- srwi. 2, 3, 4
-# CHECK: rlwinm 2, 3, 0, 4, 31 # encoding: [0x54,0x62,0x01,0x3e]
- clrlwi 2, 3, 4
-# CHECK: rlwinm. 2, 3, 0, 4, 31 # encoding: [0x54,0x62,0x01,0x3f]
- clrlwi. 2, 3, 4
-# CHECK: rlwinm 2, 3, 0, 0, 27 # encoding: [0x54,0x62,0x00,0x36]
- clrrwi 2, 3, 4
-# CHECK: rlwinm. 2, 3, 0, 0, 27 # encoding: [0x54,0x62,0x00,0x37]
- clrrwi. 2, 3, 4
-# CHECK: rlwinm 2, 3, 4, 1, 27 # encoding: [0x54,0x62,0x20,0x76]
- clrlslwi 2, 3, 5, 4
-# CHECK: rlwinm. 2, 3, 4, 1, 27 # encoding: [0x54,0x62,0x20,0x77]
- clrlslwi. 2, 3, 5, 4
+# CHECK-BE: rldicr 2, 3, 5, 3 # encoding: [0x78,0x62,0x28,0xc4]
+# CHECK-LE: rldicr 2, 3, 5, 3 # encoding: [0xc4,0x28,0x62,0x78]
+ extldi 2, 3, 4, 5
+# CHECK-BE: rldicr. 2, 3, 5, 3 # encoding: [0x78,0x62,0x28,0xc5]
+# CHECK-LE: rldicr. 2, 3, 5, 3 # encoding: [0xc5,0x28,0x62,0x78]
+ extldi. 2, 3, 4, 5
+# CHECK-BE: rldicl 2, 3, 9, 60 # encoding: [0x78,0x62,0x4f,0x20]
+# CHECK-LE: rldicl 2, 3, 9, 60 # encoding: [0x20,0x4f,0x62,0x78]
+ extrdi 2, 3, 4, 5
+# CHECK-BE: rldicl. 2, 3, 9, 60 # encoding: [0x78,0x62,0x4f,0x21]
+# CHECK-LE: rldicl. 2, 3, 9, 60 # encoding: [0x21,0x4f,0x62,0x78]
+ extrdi. 2, 3, 4, 5
+# CHECK-BE: rldimi 2, 3, 55, 5 # encoding: [0x78,0x62,0xb9,0x4e]
+# CHECK-LE: rldimi 2, 3, 55, 5 # encoding: [0x4e,0xb9,0x62,0x78]
+ insrdi 2, 3, 4, 5
+# CHECK-BE: rldimi. 2, 3, 55, 5 # encoding: [0x78,0x62,0xb9,0x4f]
+# CHECK-LE: rldimi. 2, 3, 55, 5 # encoding: [0x4f,0xb9,0x62,0x78]
+ insrdi. 2, 3, 4, 5
+# CHECK-BE: rldicl 2, 3, 4, 0 # encoding: [0x78,0x62,0x20,0x00]
+# CHECK-LE: rldicl 2, 3, 4, 0 # encoding: [0x00,0x20,0x62,0x78]
+ rotldi 2, 3, 4
+# CHECK-BE: rldicl. 2, 3, 4, 0 # encoding: [0x78,0x62,0x20,0x01]
+# CHECK-LE: rldicl. 2, 3, 4, 0 # encoding: [0x01,0x20,0x62,0x78]
+ rotldi. 2, 3, 4
+# CHECK-BE: rldicl 2, 3, 60, 0 # encoding: [0x78,0x62,0xe0,0x02]
+# CHECK-LE: rldicl 2, 3, 60, 0 # encoding: [0x02,0xe0,0x62,0x78]
+ rotrdi 2, 3, 4
+# CHECK-BE: rldicl. 2, 3, 60, 0 # encoding: [0x78,0x62,0xe0,0x03]
+# CHECK-LE: rldicl. 2, 3, 60, 0 # encoding: [0x03,0xe0,0x62,0x78]
+ rotrdi. 2, 3, 4
+# CHECK-BE: rldcl 2, 3, 4, 0 # encoding: [0x78,0x62,0x20,0x10]
+# CHECK-LE: rldcl 2, 3, 4, 0 # encoding: [0x10,0x20,0x62,0x78]
+ rotld 2, 3, 4
+# CHECK-BE: rldcl. 2, 3, 4, 0 # encoding: [0x78,0x62,0x20,0x11]
+# CHECK-LE: rldcl. 2, 3, 4, 0 # encoding: [0x11,0x20,0x62,0x78]
+ rotld. 2, 3, 4
+# CHECK-BE: sldi 2, 3, 4 # encoding: [0x78,0x62,0x26,0xe4]
+# CHECK-LE: sldi 2, 3, 4 # encoding: [0xe4,0x26,0x62,0x78]
+ sldi 2, 3, 4
+# CHECK-BE: rldicr. 2, 3, 4, 59 # encoding: [0x78,0x62,0x26,0xe5]
+# CHECK-LE: rldicr. 2, 3, 4, 59 # encoding: [0xe5,0x26,0x62,0x78]
+ sldi. 2, 3, 4
+# CHECK-BE: rldicl 2, 3, 60, 4 # encoding: [0x78,0x62,0xe1,0x02]
+# CHECK-LE: rldicl 2, 3, 60, 4 # encoding: [0x02,0xe1,0x62,0x78]
+ srdi 2, 3, 4
+# CHECK-BE: rldicl. 2, 3, 60, 4 # encoding: [0x78,0x62,0xe1,0x03]
+# CHECK-LE: rldicl. 2, 3, 60, 4 # encoding: [0x03,0xe1,0x62,0x78]
+ srdi. 2, 3, 4
+# CHECK-BE: rldicl 2, 3, 0, 4 # encoding: [0x78,0x62,0x01,0x00]
+# CHECK-LE: rldicl 2, 3, 0, 4 # encoding: [0x00,0x01,0x62,0x78]
+ clrldi 2, 3, 4
+# CHECK-BE: rldicl. 2, 3, 0, 4 # encoding: [0x78,0x62,0x01,0x01]
+# CHECK-LE: rldicl. 2, 3, 0, 4 # encoding: [0x01,0x01,0x62,0x78]
+ clrldi. 2, 3, 4
+# CHECK-BE: rldicr 2, 3, 0, 59 # encoding: [0x78,0x62,0x06,0xe4]
+# CHECK-LE: rldicr 2, 3, 0, 59 # encoding: [0xe4,0x06,0x62,0x78]
+ clrrdi 2, 3, 4
+# CHECK-BE: rldicr. 2, 3, 0, 59 # encoding: [0x78,0x62,0x06,0xe5]
+# CHECK-LE: rldicr. 2, 3, 0, 59 # encoding: [0xe5,0x06,0x62,0x78]
+ clrrdi. 2, 3, 4
+# CHECK-BE: rldic 2, 3, 4, 1 # encoding: [0x78,0x62,0x20,0x48]
+# CHECK-LE: rldic 2, 3, 4, 1 # encoding: [0x48,0x20,0x62,0x78]
+ clrlsldi 2, 3, 5, 4
+# CHECK-BE: rldic. 2, 3, 4, 1 # encoding: [0x78,0x62,0x20,0x49]
+# CHECK-LE: rldic. 2, 3, 4, 1 # encoding: [0x49,0x20,0x62,0x78]
+ clrlsldi. 2, 3, 5, 4
+
+# CHECK-BE: rlwinm 2, 3, 5, 0, 3 # encoding: [0x54,0x62,0x28,0x06]
+# CHECK-LE: rlwinm 2, 3, 5, 0, 3 # encoding: [0x06,0x28,0x62,0x54]
+ extlwi 2, 3, 4, 5
+# CHECK-BE: rlwinm. 2, 3, 5, 0, 3 # encoding: [0x54,0x62,0x28,0x07]
+# CHECK-LE: rlwinm. 2, 3, 5, 0, 3 # encoding: [0x07,0x28,0x62,0x54]
+ extlwi. 2, 3, 4, 5
+# CHECK-BE: rlwinm 2, 3, 9, 28, 31 # encoding: [0x54,0x62,0x4f,0x3e]
+# CHECK-LE: rlwinm 2, 3, 9, 28, 31 # encoding: [0x3e,0x4f,0x62,0x54]
+ extrwi 2, 3, 4, 5
+# CHECK-BE: rlwinm. 2, 3, 9, 28, 31 # encoding: [0x54,0x62,0x4f,0x3f]
+# CHECK-LE: rlwinm. 2, 3, 9, 28, 31 # encoding: [0x3f,0x4f,0x62,0x54]
+ extrwi. 2, 3, 4, 5
+# CHECK-BE: rlwimi 2, 3, 27, 5, 8 # encoding: [0x50,0x62,0xd9,0x50]
+# CHECK-LE: rlwimi 2, 3, 27, 5, 8 # encoding: [0x50,0xd9,0x62,0x50]
+ inslwi 2, 3, 4, 5
+# CHECK-BE: rlwimi. 2, 3, 27, 5, 8 # encoding: [0x50,0x62,0xd9,0x51]
+# CHECK-LE: rlwimi. 2, 3, 27, 5, 8 # encoding: [0x51,0xd9,0x62,0x50]
+ inslwi. 2, 3, 4, 5
+# CHECK-BE: rlwimi 2, 3, 23, 5, 8 # encoding: [0x50,0x62,0xb9,0x50]
+# CHECK-LE: rlwimi 2, 3, 23, 5, 8 # encoding: [0x50,0xb9,0x62,0x50]
+ insrwi 2, 3, 4, 5
+# CHECK-BE: rlwimi. 2, 3, 23, 5, 8 # encoding: [0x50,0x62,0xb9,0x51]
+# CHECK-LE: rlwimi. 2, 3, 23, 5, 8 # encoding: [0x51,0xb9,0x62,0x50]
+ insrwi. 2, 3, 4, 5
+# CHECK-BE: rlwinm 2, 3, 4, 0, 31 # encoding: [0x54,0x62,0x20,0x3e]
+# CHECK-LE: rlwinm 2, 3, 4, 0, 31 # encoding: [0x3e,0x20,0x62,0x54]
+ rotlwi 2, 3, 4
+# CHECK-BE: rlwinm. 2, 3, 4, 0, 31 # encoding: [0x54,0x62,0x20,0x3f]
+# CHECK-LE: rlwinm. 2, 3, 4, 0, 31 # encoding: [0x3f,0x20,0x62,0x54]
+ rotlwi. 2, 3, 4
+# CHECK-BE: rlwinm 2, 3, 28, 0, 31 # encoding: [0x54,0x62,0xe0,0x3e]
+# CHECK-LE: rlwinm 2, 3, 28, 0, 31 # encoding: [0x3e,0xe0,0x62,0x54]
+ rotrwi 2, 3, 4
+# CHECK-BE: rlwinm. 2, 3, 28, 0, 31 # encoding: [0x54,0x62,0xe0,0x3f]
+# CHECK-LE: rlwinm. 2, 3, 28, 0, 31 # encoding: [0x3f,0xe0,0x62,0x54]
+ rotrwi. 2, 3, 4
+# CHECK-BE: rlwnm 2, 3, 4, 0, 31 # encoding: [0x5c,0x62,0x20,0x3e]
+# CHECK-LE: rlwnm 2, 3, 4, 0, 31 # encoding: [0x3e,0x20,0x62,0x5c]
+ rotlw 2, 3, 4
+# CHECK-BE: rlwnm. 2, 3, 4, 0, 31 # encoding: [0x5c,0x62,0x20,0x3f]
+# CHECK-LE: rlwnm. 2, 3, 4, 0, 31 # encoding: [0x3f,0x20,0x62,0x5c]
+ rotlw. 2, 3, 4
+# CHECK-BE: slwi 2, 3, 4 # encoding: [0x54,0x62,0x20,0x36]
+# CHECK-LE: slwi 2, 3, 4 # encoding: [0x36,0x20,0x62,0x54]
+ slwi 2, 3, 4
+# CHECK-BE: rlwinm. 2, 3, 4, 0, 27 # encoding: [0x54,0x62,0x20,0x37]
+# CHECK-LE: rlwinm. 2, 3, 4, 0, 27 # encoding: [0x37,0x20,0x62,0x54]
+ slwi. 2, 3, 4
+# CHECK-BE: srwi 2, 3, 4 # encoding: [0x54,0x62,0xe1,0x3e]
+# CHECK-LE: srwi 2, 3, 4 # encoding: [0x3e,0xe1,0x62,0x54]
+ srwi 2, 3, 4
+# CHECK-BE: rlwinm. 2, 3, 28, 4, 31 # encoding: [0x54,0x62,0xe1,0x3f]
+# CHECK-LE: rlwinm. 2, 3, 28, 4, 31 # encoding: [0x3f,0xe1,0x62,0x54]
+ srwi. 2, 3, 4
+# CHECK-BE: rlwinm 2, 3, 0, 4, 31 # encoding: [0x54,0x62,0x01,0x3e]
+# CHECK-LE: rlwinm 2, 3, 0, 4, 31 # encoding: [0x3e,0x01,0x62,0x54]
+ clrlwi 2, 3, 4
+# CHECK-BE: rlwinm. 2, 3, 0, 4, 31 # encoding: [0x54,0x62,0x01,0x3f]
+# CHECK-LE: rlwinm. 2, 3, 0, 4, 31 # encoding: [0x3f,0x01,0x62,0x54]
+ clrlwi. 2, 3, 4
+# CHECK-BE: rlwinm 2, 3, 0, 0, 27 # encoding: [0x54,0x62,0x00,0x36]
+# CHECK-LE: rlwinm 2, 3, 0, 0, 27 # encoding: [0x36,0x00,0x62,0x54]
+ clrrwi 2, 3, 4
+# CHECK-BE: rlwinm. 2, 3, 0, 0, 27 # encoding: [0x54,0x62,0x00,0x37]
+# CHECK-LE: rlwinm. 2, 3, 0, 0, 27 # encoding: [0x37,0x00,0x62,0x54]
+ clrrwi. 2, 3, 4
+# CHECK-BE: rlwinm 2, 3, 4, 1, 27 # encoding: [0x54,0x62,0x20,0x76]
+# CHECK-LE: rlwinm 2, 3, 4, 1, 27 # encoding: [0x76,0x20,0x62,0x54]
+ clrlslwi 2, 3, 5, 4
+# CHECK-BE: rlwinm. 2, 3, 4, 1, 27 # encoding: [0x54,0x62,0x20,0x77]
+# CHECK-LE: rlwinm. 2, 3, 4, 1, 27 # encoding: [0x77,0x20,0x62,0x54]
+ clrlslwi. 2, 3, 5, 4
# Move to/from special purpose register mnemonics
-# CHECK: mtspr 1, 2 # encoding: [0x7c,0x41,0x03,0xa6]
- mtxer 2
-# CHECK: mfspr 2, 1 # encoding: [0x7c,0x41,0x02,0xa6]
- mfxer 2
-# CHECK: mtlr 2 # encoding: [0x7c,0x48,0x03,0xa6]
- mtlr 2
-# CHECK: mflr 2 # encoding: [0x7c,0x48,0x02,0xa6]
- mflr 2
-# CHECK: mtctr 2 # encoding: [0x7c,0x49,0x03,0xa6]
- mtctr 2
-# CHECK: mfctr 2 # encoding: [0x7c,0x49,0x02,0xa6]
- mfctr 2
+# CHECK-BE: mtspr 1, 2 # encoding: [0x7c,0x41,0x03,0xa6]
+# CHECK-LE: mtspr 1, 2 # encoding: [0xa6,0x03,0x41,0x7c]
+ mtxer 2
+# CHECK-BE: mfspr 2, 1 # encoding: [0x7c,0x41,0x02,0xa6]
+# CHECK-LE: mfspr 2, 1 # encoding: [0xa6,0x02,0x41,0x7c]
+ mfxer 2
+# CHECK-BE: mtlr 2 # encoding: [0x7c,0x48,0x03,0xa6]
+# CHECK-LE: mtlr 2 # encoding: [0xa6,0x03,0x48,0x7c]
+ mtlr 2
+# CHECK-BE: mflr 2 # encoding: [0x7c,0x48,0x02,0xa6]
+# CHECK-LE: mflr 2 # encoding: [0xa6,0x02,0x48,0x7c]
+ mflr 2
+# CHECK-BE: mtctr 2 # encoding: [0x7c,0x49,0x03,0xa6]
+# CHECK-LE: mtctr 2 # encoding: [0xa6,0x03,0x49,0x7c]
+ mtctr 2
+# CHECK-BE: mfctr 2 # encoding: [0x7c,0x49,0x02,0xa6]
+# CHECK-LE: mfctr 2 # encoding: [0xa6,0x02,0x49,0x7c]
+ mfctr 2
# Miscellaneous mnemonics
-# CHECK: nop # encoding: [0x60,0x00,0x00,0x00]
- nop
-# CHECK: xori 0, 0, 0 # encoding: [0x68,0x00,0x00,0x00]
- xnop
-# CHECK: li 2, 128 # encoding: [0x38,0x40,0x00,0x80]
- li 2, 128
-# CHECK: lis 2, 128 # encoding: [0x3c,0x40,0x00,0x80]
- lis 2, 128
-# CHECK: la 2, 128(4)
- la 2, 128(4)
-# CHECK: mr 2, 3 # encoding: [0x7c,0x62,0x1b,0x78]
- mr 2, 3
-# CHECK: or. 2, 3, 3 # encoding: [0x7c,0x62,0x1b,0x79]
- mr. 2, 3
-# CHECK: nor 2, 3, 3 # encoding: [0x7c,0x62,0x18,0xf8]
- not 2, 3
-# CHECK: nor. 2, 3, 3 # encoding: [0x7c,0x62,0x18,0xf9]
- not. 2, 3
-# CHECK: mtcrf 255, 2 # encoding: [0x7c,0x4f,0xf1,0x20]
- mtcr 2
+# CHECK-BE: nop # encoding: [0x60,0x00,0x00,0x00]
+# CHECK-LE: nop # encoding: [0x00,0x00,0x00,0x60]
+ nop
+# CHECK-BE: xori 0, 0, 0 # encoding: [0x68,0x00,0x00,0x00]
+# CHECK-LE: xori 0, 0, 0 # encoding: [0x00,0x00,0x00,0x68]
+ xnop
+# CHECK-BE: li 2, 128 # encoding: [0x38,0x40,0x00,0x80]
+# CHECK-LE: li 2, 128 # encoding: [0x80,0x00,0x40,0x38]
+ li 2, 128
+# CHECK-BE: lis 2, 128 # encoding: [0x3c,0x40,0x00,0x80]
+# CHECK-LE: lis 2, 128 # encoding: [0x80,0x00,0x40,0x3c]
+ lis 2, 128
+# CHECK-BE: la 2, 128(4)
+# CHECK-LE: la 2, 128(4)
+ la 2, 128(4)
+# CHECK-BE: mr 2, 3 # encoding: [0x7c,0x62,0x1b,0x78]
+# CHECK-LE: mr 2, 3 # encoding: [0x78,0x1b,0x62,0x7c]
+ mr 2, 3
+# CHECK-BE: or. 2, 3, 3 # encoding: [0x7c,0x62,0x1b,0x79]
+# CHECK-LE: or. 2, 3, 3 # encoding: [0x79,0x1b,0x62,0x7c]
+ mr. 2, 3
+# CHECK-BE: nor 2, 3, 3 # encoding: [0x7c,0x62,0x18,0xf8]
+# CHECK-LE: nor 2, 3, 3 # encoding: [0xf8,0x18,0x62,0x7c]
+ not 2, 3
+# CHECK-BE: nor. 2, 3, 3 # encoding: [0x7c,0x62,0x18,0xf9]
+# CHECK-LE: nor. 2, 3, 3 # encoding: [0xf9,0x18,0x62,0x7c]
+ not. 2, 3
+# CHECK-BE: mtcrf 255, 2 # encoding: [0x7c,0x4f,0xf1,0x20]
+# CHECK-LE: mtcrf 255, 2 # encoding: [0x20,0xf1,0x4f,0x7c]
+ mtcr 2
diff --git a/test/MC/PowerPC/ppc64-encoding-fp.s b/test/MC/PowerPC/ppc64-encoding-fp.s
index f9bdee1..c19f9b3 100644
--- a/test/MC/PowerPC/ppc64-encoding-fp.s
+++ b/test/MC/PowerPC/ppc64-encoding-fp.s
@@ -1,269 +1,379 @@
-# RUN: llvm-mc -triple powerpc64-unknown-unknown --show-encoding %s | FileCheck %s
+# RUN: llvm-mc -triple powerpc64-unknown-unknown --show-encoding %s | FileCheck -check-prefix=CHECK-BE %s
+# RUN: llvm-mc -triple powerpc64le-unknown-unknown --show-encoding %s | FileCheck -check-prefix=CHECK-LE %s
# Floating-point facility
# Floating-point load instructions
-# CHECK: lfs 2, 128(4) # encoding: [0xc0,0x44,0x00,0x80]
- lfs 2, 128(4)
-# CHECK: lfsx 2, 3, 4 # encoding: [0x7c,0x43,0x24,0x2e]
- lfsx 2, 3, 4
-# CHECK: lfsu 2, 128(4) # encoding: [0xc4,0x44,0x00,0x80]
- lfsu 2, 128(4)
-# CHECK: lfsux 2, 3, 4 # encoding: [0x7c,0x43,0x24,0x6e]
- lfsux 2, 3, 4
-# CHECK: lfd 2, 128(4) # encoding: [0xc8,0x44,0x00,0x80]
- lfd 2, 128(4)
-# CHECK: lfdx 2, 3, 4 # encoding: [0x7c,0x43,0x24,0xae]
- lfdx 2, 3, 4
-# CHECK: lfdu 2, 128(4) # encoding: [0xcc,0x44,0x00,0x80]
- lfdu 2, 128(4)
-# CHECK: lfdux 2, 3, 4 # encoding: [0x7c,0x43,0x24,0xee]
- lfdux 2, 3, 4
-# CHECK: lfiwax 2, 3, 4 # encoding: [0x7c,0x43,0x26,0xae]
- lfiwax 2, 3, 4
-# CHECK: lfiwzx 2, 3, 4 # encoding: [0x7c,0x43,0x26,0xee]
- lfiwzx 2, 3, 4
+# CHECK-BE: lfs 2, 128(4) # encoding: [0xc0,0x44,0x00,0x80]
+# CHECK-LE: lfs 2, 128(4) # encoding: [0x80,0x00,0x44,0xc0]
+ lfs 2, 128(4)
+# CHECK-BE: lfsx 2, 3, 4 # encoding: [0x7c,0x43,0x24,0x2e]
+# CHECK-LE: lfsx 2, 3, 4 # encoding: [0x2e,0x24,0x43,0x7c]
+ lfsx 2, 3, 4
+# CHECK-BE: lfsu 2, 128(4) # encoding: [0xc4,0x44,0x00,0x80]
+# CHECK-LE: lfsu 2, 128(4) # encoding: [0x80,0x00,0x44,0xc4]
+ lfsu 2, 128(4)
+# CHECK-BE: lfsux 2, 3, 4 # encoding: [0x7c,0x43,0x24,0x6e]
+# CHECK-LE: lfsux 2, 3, 4 # encoding: [0x6e,0x24,0x43,0x7c]
+ lfsux 2, 3, 4
+# CHECK-BE: lfd 2, 128(4) # encoding: [0xc8,0x44,0x00,0x80]
+# CHECK-LE: lfd 2, 128(4) # encoding: [0x80,0x00,0x44,0xc8]
+ lfd 2, 128(4)
+# CHECK-BE: lfdx 2, 3, 4 # encoding: [0x7c,0x43,0x24,0xae]
+# CHECK-LE: lfdx 2, 3, 4 # encoding: [0xae,0x24,0x43,0x7c]
+ lfdx 2, 3, 4
+# CHECK-BE: lfdu 2, 128(4) # encoding: [0xcc,0x44,0x00,0x80]
+# CHECK-LE: lfdu 2, 128(4) # encoding: [0x80,0x00,0x44,0xcc]
+ lfdu 2, 128(4)
+# CHECK-BE: lfdux 2, 3, 4 # encoding: [0x7c,0x43,0x24,0xee]
+# CHECK-LE: lfdux 2, 3, 4 # encoding: [0xee,0x24,0x43,0x7c]
+ lfdux 2, 3, 4
+# CHECK-BE: lfiwax 2, 3, 4 # encoding: [0x7c,0x43,0x26,0xae]
+# CHECK-LE: lfiwax 2, 3, 4 # encoding: [0xae,0x26,0x43,0x7c]
+ lfiwax 2, 3, 4
+# CHECK-BE: lfiwzx 2, 3, 4 # encoding: [0x7c,0x43,0x26,0xee]
+# CHECK-LE: lfiwzx 2, 3, 4 # encoding: [0xee,0x26,0x43,0x7c]
+ lfiwzx 2, 3, 4
# Floating-point store instructions
-# CHECK: stfs 2, 128(4) # encoding: [0xd0,0x44,0x00,0x80]
- stfs 2, 128(4)
-# CHECK: stfsx 2, 3, 4 # encoding: [0x7c,0x43,0x25,0x2e]
- stfsx 2, 3, 4
-# CHECK: stfsu 2, 128(4) # encoding: [0xd4,0x44,0x00,0x80]
- stfsu 2, 128(4)
-# CHECK: stfsux 2, 3, 4 # encoding: [0x7c,0x43,0x25,0x6e]
- stfsux 2, 3, 4
-# CHECK: stfd 2, 128(4) # encoding: [0xd8,0x44,0x00,0x80]
- stfd 2, 128(4)
-# CHECK: stfdx 2, 3, 4 # encoding: [0x7c,0x43,0x25,0xae]
- stfdx 2, 3, 4
-# CHECK: stfdu 2, 128(4) # encoding: [0xdc,0x44,0x00,0x80]
- stfdu 2, 128(4)
-# CHECK: stfdux 2, 3, 4 # encoding: [0x7c,0x43,0x25,0xee]
- stfdux 2, 3, 4
-# CHECK: stfiwx 2, 3, 4 # encoding: [0x7c,0x43,0x27,0xae]
- stfiwx 2, 3, 4
+# CHECK-BE: stfs 2, 128(4) # encoding: [0xd0,0x44,0x00,0x80]
+# CHECK-LE: stfs 2, 128(4) # encoding: [0x80,0x00,0x44,0xd0]
+ stfs 2, 128(4)
+# CHECK-BE: stfsx 2, 3, 4 # encoding: [0x7c,0x43,0x25,0x2e]
+# CHECK-LE: stfsx 2, 3, 4 # encoding: [0x2e,0x25,0x43,0x7c]
+ stfsx 2, 3, 4
+# CHECK-BE: stfsu 2, 128(4) # encoding: [0xd4,0x44,0x00,0x80]
+# CHECK-LE: stfsu 2, 128(4) # encoding: [0x80,0x00,0x44,0xd4]
+ stfsu 2, 128(4)
+# CHECK-BE: stfsux 2, 3, 4 # encoding: [0x7c,0x43,0x25,0x6e]
+# CHECK-LE: stfsux 2, 3, 4 # encoding: [0x6e,0x25,0x43,0x7c]
+ stfsux 2, 3, 4
+# CHECK-BE: stfd 2, 128(4) # encoding: [0xd8,0x44,0x00,0x80]
+# CHECK-LE: stfd 2, 128(4) # encoding: [0x80,0x00,0x44,0xd8]
+ stfd 2, 128(4)
+# CHECK-BE: stfdx 2, 3, 4 # encoding: [0x7c,0x43,0x25,0xae]
+# CHECK-LE: stfdx 2, 3, 4 # encoding: [0xae,0x25,0x43,0x7c]
+ stfdx 2, 3, 4
+# CHECK-BE: stfdu 2, 128(4) # encoding: [0xdc,0x44,0x00,0x80]
+# CHECK-LE: stfdu 2, 128(4) # encoding: [0x80,0x00,0x44,0xdc]
+ stfdu 2, 128(4)
+# CHECK-BE: stfdux 2, 3, 4 # encoding: [0x7c,0x43,0x25,0xee]
+# CHECK-LE: stfdux 2, 3, 4 # encoding: [0xee,0x25,0x43,0x7c]
+ stfdux 2, 3, 4
+# CHECK-BE: stfiwx 2, 3, 4 # encoding: [0x7c,0x43,0x27,0xae]
+# CHECK-LE: stfiwx 2, 3, 4 # encoding: [0xae,0x27,0x43,0x7c]
+ stfiwx 2, 3, 4
# Floating-point move instructions
-# CHECK: fmr 2, 3 # encoding: [0xfc,0x40,0x18,0x90]
- fmr 2, 3
-# CHECK: fmr. 2, 3 # encoding: [0xfc,0x40,0x18,0x91]
- fmr. 2, 3
-# CHECK: fneg 2, 3 # encoding: [0xfc,0x40,0x18,0x50]
- fneg 2, 3
-# CHECK: fneg. 2, 3 # encoding: [0xfc,0x40,0x18,0x51]
- fneg. 2, 3
-# CHECK: fabs 2, 3 # encoding: [0xfc,0x40,0x1a,0x10]
- fabs 2, 3
-# CHECK: fabs. 2, 3 # encoding: [0xfc,0x40,0x1a,0x11]
- fabs. 2, 3
-# CHECK: fnabs 2, 3 # encoding: [0xfc,0x40,0x19,0x10]
- fnabs 2, 3
-# CHECK: fnabs. 2, 3 # encoding: [0xfc,0x40,0x19,0x11]
- fnabs. 2, 3
-# CHECK: fcpsgn 2, 3, 4 # encoding: [0xfc,0x43,0x20,0x10]
- fcpsgn 2, 3, 4
-# CHECK: fcpsgn. 2, 3, 4 # encoding: [0xfc,0x43,0x20,0x11]
- fcpsgn. 2, 3, 4
+# CHECK-BE: fmr 2, 3 # encoding: [0xfc,0x40,0x18,0x90]
+# CHECK-LE: fmr 2, 3 # encoding: [0x90,0x18,0x40,0xfc]
+ fmr 2, 3
+# CHECK-BE: fmr. 2, 3 # encoding: [0xfc,0x40,0x18,0x91]
+# CHECK-LE: fmr. 2, 3 # encoding: [0x91,0x18,0x40,0xfc]
+ fmr. 2, 3
+# CHECK-BE: fneg 2, 3 # encoding: [0xfc,0x40,0x18,0x50]
+# CHECK-LE: fneg 2, 3 # encoding: [0x50,0x18,0x40,0xfc]
+ fneg 2, 3
+# CHECK-BE: fneg. 2, 3 # encoding: [0xfc,0x40,0x18,0x51]
+# CHECK-LE: fneg. 2, 3 # encoding: [0x51,0x18,0x40,0xfc]
+ fneg. 2, 3
+# CHECK-BE: fabs 2, 3 # encoding: [0xfc,0x40,0x1a,0x10]
+# CHECK-LE: fabs 2, 3 # encoding: [0x10,0x1a,0x40,0xfc]
+ fabs 2, 3
+# CHECK-BE: fabs. 2, 3 # encoding: [0xfc,0x40,0x1a,0x11]
+# CHECK-LE: fabs. 2, 3 # encoding: [0x11,0x1a,0x40,0xfc]
+ fabs. 2, 3
+# CHECK-BE: fnabs 2, 3 # encoding: [0xfc,0x40,0x19,0x10]
+# CHECK-LE: fnabs 2, 3 # encoding: [0x10,0x19,0x40,0xfc]
+ fnabs 2, 3
+# CHECK-BE: fnabs. 2, 3 # encoding: [0xfc,0x40,0x19,0x11]
+# CHECK-LE: fnabs. 2, 3 # encoding: [0x11,0x19,0x40,0xfc]
+ fnabs. 2, 3
+# CHECK-BE: fcpsgn 2, 3, 4 # encoding: [0xfc,0x43,0x20,0x10]
+# CHECK-LE: fcpsgn 2, 3, 4 # encoding: [0x10,0x20,0x43,0xfc]
+ fcpsgn 2, 3, 4
+# CHECK-BE: fcpsgn. 2, 3, 4 # encoding: [0xfc,0x43,0x20,0x11]
+# CHECK-LE: fcpsgn. 2, 3, 4 # encoding: [0x11,0x20,0x43,0xfc]
+ fcpsgn. 2, 3, 4
# Floating-point arithmetic instructions
-# CHECK: fadd 2, 3, 4 # encoding: [0xfc,0x43,0x20,0x2a]
- fadd 2, 3, 4
-# CHECK: fadd. 2, 3, 4 # encoding: [0xfc,0x43,0x20,0x2b]
- fadd. 2, 3, 4
-# CHECK: fadds 2, 3, 4 # encoding: [0xec,0x43,0x20,0x2a]
- fadds 2, 3, 4
-# CHECK: fadds. 2, 3, 4 # encoding: [0xec,0x43,0x20,0x2b]
- fadds. 2, 3, 4
-# CHECK: fsub 2, 3, 4 # encoding: [0xfc,0x43,0x20,0x28]
- fsub 2, 3, 4
-# CHECK: fsub. 2, 3, 4 # encoding: [0xfc,0x43,0x20,0x29]
- fsub. 2, 3, 4
-# CHECK: fsubs 2, 3, 4 # encoding: [0xec,0x43,0x20,0x28]
- fsubs 2, 3, 4
-# CHECK: fsubs. 2, 3, 4 # encoding: [0xec,0x43,0x20,0x29]
- fsubs. 2, 3, 4
+# CHECK-BE: fadd 2, 3, 4 # encoding: [0xfc,0x43,0x20,0x2a]
+# CHECK-LE: fadd 2, 3, 4 # encoding: [0x2a,0x20,0x43,0xfc]
+ fadd 2, 3, 4
+# CHECK-BE: fadd. 2, 3, 4 # encoding: [0xfc,0x43,0x20,0x2b]
+# CHECK-LE: fadd. 2, 3, 4 # encoding: [0x2b,0x20,0x43,0xfc]
+ fadd. 2, 3, 4
+# CHECK-BE: fadds 2, 3, 4 # encoding: [0xec,0x43,0x20,0x2a]
+# CHECK-LE: fadds 2, 3, 4 # encoding: [0x2a,0x20,0x43,0xec]
+ fadds 2, 3, 4
+# CHECK-BE: fadds. 2, 3, 4 # encoding: [0xec,0x43,0x20,0x2b]
+# CHECK-LE: fadds. 2, 3, 4 # encoding: [0x2b,0x20,0x43,0xec]
+ fadds. 2, 3, 4
+# CHECK-BE: fsub 2, 3, 4 # encoding: [0xfc,0x43,0x20,0x28]
+# CHECK-LE: fsub 2, 3, 4 # encoding: [0x28,0x20,0x43,0xfc]
+ fsub 2, 3, 4
+# CHECK-BE: fsub. 2, 3, 4 # encoding: [0xfc,0x43,0x20,0x29]
+# CHECK-LE: fsub. 2, 3, 4 # encoding: [0x29,0x20,0x43,0xfc]
+ fsub. 2, 3, 4
+# CHECK-BE: fsubs 2, 3, 4 # encoding: [0xec,0x43,0x20,0x28]
+# CHECK-LE: fsubs 2, 3, 4 # encoding: [0x28,0x20,0x43,0xec]
+ fsubs 2, 3, 4
+# CHECK-BE: fsubs. 2, 3, 4 # encoding: [0xec,0x43,0x20,0x29]
+# CHECK-LE: fsubs. 2, 3, 4 # encoding: [0x29,0x20,0x43,0xec]
+ fsubs. 2, 3, 4
-# CHECK: fmul 2, 3, 4 # encoding: [0xfc,0x43,0x01,0x32]
- fmul 2, 3, 4
-# CHECK: fmul. 2, 3, 4 # encoding: [0xfc,0x43,0x01,0x33]
- fmul. 2, 3, 4
-# CHECK: fmuls 2, 3, 4 # encoding: [0xec,0x43,0x01,0x32]
- fmuls 2, 3, 4
-# CHECK: fmuls. 2, 3, 4 # encoding: [0xec,0x43,0x01,0x33]
- fmuls. 2, 3, 4
-# CHECK: fdiv 2, 3, 4 # encoding: [0xfc,0x43,0x20,0x24]
- fdiv 2, 3, 4
-# CHECK: fdiv. 2, 3, 4 # encoding: [0xfc,0x43,0x20,0x25]
- fdiv. 2, 3, 4
-# CHECK: fdivs 2, 3, 4 # encoding: [0xec,0x43,0x20,0x24]
- fdivs 2, 3, 4
-# CHECK: fdivs. 2, 3, 4 # encoding: [0xec,0x43,0x20,0x25]
- fdivs. 2, 3, 4
-# CHECK: fsqrt 2, 3 # encoding: [0xfc,0x40,0x18,0x2c]
- fsqrt 2, 3
-# CHECK: fsqrt. 2, 3 # encoding: [0xfc,0x40,0x18,0x2d]
- fsqrt. 2, 3
-# CHECK: fsqrts 2, 3 # encoding: [0xec,0x40,0x18,0x2c]
- fsqrts 2, 3
-# CHECK: fsqrts. 2, 3 # encoding: [0xec,0x40,0x18,0x2d]
- fsqrts. 2, 3
+# CHECK-BE: fmul 2, 3, 4 # encoding: [0xfc,0x43,0x01,0x32]
+# CHECK-LE: fmul 2, 3, 4 # encoding: [0x32,0x01,0x43,0xfc]
+ fmul 2, 3, 4
+# CHECK-BE: fmul. 2, 3, 4 # encoding: [0xfc,0x43,0x01,0x33]
+# CHECK-LE: fmul. 2, 3, 4 # encoding: [0x33,0x01,0x43,0xfc]
+ fmul. 2, 3, 4
+# CHECK-BE: fmuls 2, 3, 4 # encoding: [0xec,0x43,0x01,0x32]
+# CHECK-LE: fmuls 2, 3, 4 # encoding: [0x32,0x01,0x43,0xec]
+ fmuls 2, 3, 4
+# CHECK-BE: fmuls. 2, 3, 4 # encoding: [0xec,0x43,0x01,0x33]
+# CHECK-LE: fmuls. 2, 3, 4 # encoding: [0x33,0x01,0x43,0xec]
+ fmuls. 2, 3, 4
+# CHECK-BE: fdiv 2, 3, 4 # encoding: [0xfc,0x43,0x20,0x24]
+# CHECK-LE: fdiv 2, 3, 4 # encoding: [0x24,0x20,0x43,0xfc]
+ fdiv 2, 3, 4
+# CHECK-BE: fdiv. 2, 3, 4 # encoding: [0xfc,0x43,0x20,0x25]
+# CHECK-LE: fdiv. 2, 3, 4 # encoding: [0x25,0x20,0x43,0xfc]
+ fdiv. 2, 3, 4
+# CHECK-BE: fdivs 2, 3, 4 # encoding: [0xec,0x43,0x20,0x24]
+# CHECK-LE: fdivs 2, 3, 4 # encoding: [0x24,0x20,0x43,0xec]
+ fdivs 2, 3, 4
+# CHECK-BE: fdivs. 2, 3, 4 # encoding: [0xec,0x43,0x20,0x25]
+# CHECK-LE: fdivs. 2, 3, 4 # encoding: [0x25,0x20,0x43,0xec]
+ fdivs. 2, 3, 4
+# CHECK-BE: fsqrt 2, 3 # encoding: [0xfc,0x40,0x18,0x2c]
+# CHECK-LE: fsqrt 2, 3 # encoding: [0x2c,0x18,0x40,0xfc]
+ fsqrt 2, 3
+# CHECK-BE: fsqrt. 2, 3 # encoding: [0xfc,0x40,0x18,0x2d]
+# CHECK-LE: fsqrt. 2, 3 # encoding: [0x2d,0x18,0x40,0xfc]
+ fsqrt. 2, 3
+# CHECK-BE: fsqrts 2, 3 # encoding: [0xec,0x40,0x18,0x2c]
+# CHECK-LE: fsqrts 2, 3 # encoding: [0x2c,0x18,0x40,0xec]
+ fsqrts 2, 3
+# CHECK-BE: fsqrts. 2, 3 # encoding: [0xec,0x40,0x18,0x2d]
+# CHECK-LE: fsqrts. 2, 3 # encoding: [0x2d,0x18,0x40,0xec]
+ fsqrts. 2, 3
-# CHECK: fre 2, 3 # encoding: [0xfc,0x40,0x18,0x30]
- fre 2, 3
-# CHECK: fre. 2, 3 # encoding: [0xfc,0x40,0x18,0x31]
- fre. 2, 3
-# CHECK: fres 2, 3 # encoding: [0xec,0x40,0x18,0x30]
- fres 2, 3
-# CHECK: fres. 2, 3 # encoding: [0xec,0x40,0x18,0x31]
- fres. 2, 3
-# CHECK: frsqrte 2, 3 # encoding: [0xfc,0x40,0x18,0x34]
- frsqrte 2, 3
-# CHECK: frsqrte. 2, 3 # encoding: [0xfc,0x40,0x18,0x35]
- frsqrte. 2, 3
-# CHECK: frsqrtes 2, 3 # encoding: [0xec,0x40,0x18,0x34]
- frsqrtes 2, 3
-# CHECK: frsqrtes. 2, 3 # encoding: [0xec,0x40,0x18,0x35]
- frsqrtes. 2, 3
-# FIXME: ftdiv 2, 3, 4
-# FIXME: ftsqrt 2, 3, 4
+# CHECK-BE: fre 2, 3 # encoding: [0xfc,0x40,0x18,0x30]
+# CHECK-LE: fre 2, 3 # encoding: [0x30,0x18,0x40,0xfc]
+ fre 2, 3
+# CHECK-BE: fre. 2, 3 # encoding: [0xfc,0x40,0x18,0x31]
+# CHECK-LE: fre. 2, 3 # encoding: [0x31,0x18,0x40,0xfc]
+ fre. 2, 3
+# CHECK-BE: fres 2, 3 # encoding: [0xec,0x40,0x18,0x30]
+# CHECK-LE: fres 2, 3 # encoding: [0x30,0x18,0x40,0xec]
+ fres 2, 3
+# CHECK-BE: fres. 2, 3 # encoding: [0xec,0x40,0x18,0x31]
+# CHECK-LE: fres. 2, 3 # encoding: [0x31,0x18,0x40,0xec]
+ fres. 2, 3
+# CHECK-BE: frsqrte 2, 3 # encoding: [0xfc,0x40,0x18,0x34]
+# CHECK-LE: frsqrte 2, 3 # encoding: [0x34,0x18,0x40,0xfc]
+ frsqrte 2, 3
+# CHECK-BE: frsqrte. 2, 3 # encoding: [0xfc,0x40,0x18,0x35]
+# CHECK-LE: frsqrte. 2, 3 # encoding: [0x35,0x18,0x40,0xfc]
+ frsqrte. 2, 3
+# CHECK-BE: frsqrtes 2, 3 # encoding: [0xec,0x40,0x18,0x34]
+# CHECK-LE: frsqrtes 2, 3 # encoding: [0x34,0x18,0x40,0xec]
+ frsqrtes 2, 3
+# CHECK-BE: frsqrtes. 2, 3 # encoding: [0xec,0x40,0x18,0x35]
+# CHECK-LE: frsqrtes. 2, 3 # encoding: [0x35,0x18,0x40,0xec]
+ frsqrtes. 2, 3
+# FIXME: ftdiv 2, 3, 4
+# FIXME: ftsqrt 2, 3, 4
-# CHECK: fmadd 2, 3, 4, 5 # encoding: [0xfc,0x43,0x29,0x3a]
- fmadd 2, 3, 4, 5
-# CHECK: fmadd. 2, 3, 4, 5 # encoding: [0xfc,0x43,0x29,0x3b]
- fmadd. 2, 3, 4, 5
-# CHECK: fmadds 2, 3, 4, 5 # encoding: [0xec,0x43,0x29,0x3a]
- fmadds 2, 3, 4, 5
-# CHECK: fmadds. 2, 3, 4, 5 # encoding: [0xec,0x43,0x29,0x3b]
- fmadds. 2, 3, 4, 5
-# CHECK: fmsub 2, 3, 4, 5 # encoding: [0xfc,0x43,0x29,0x38]
- fmsub 2, 3, 4, 5
-# CHECK: fmsub. 2, 3, 4, 5 # encoding: [0xfc,0x43,0x29,0x39]
- fmsub. 2, 3, 4, 5
-# CHECK: fmsubs 2, 3, 4, 5 # encoding: [0xec,0x43,0x29,0x38]
- fmsubs 2, 3, 4, 5
-# CHECK: fmsubs. 2, 3, 4, 5 # encoding: [0xec,0x43,0x29,0x39]
- fmsubs. 2, 3, 4, 5
-# CHECK: fnmadd 2, 3, 4, 5 # encoding: [0xfc,0x43,0x29,0x3e]
- fnmadd 2, 3, 4, 5
-# CHECK: fnmadd. 2, 3, 4, 5 # encoding: [0xfc,0x43,0x29,0x3f]
- fnmadd. 2, 3, 4, 5
-# CHECK: fnmadds 2, 3, 4, 5 # encoding: [0xec,0x43,0x29,0x3e]
- fnmadds 2, 3, 4, 5
-# CHECK: fnmadds. 2, 3, 4, 5 # encoding: [0xec,0x43,0x29,0x3f]
- fnmadds. 2, 3, 4, 5
-# CHECK: fnmsub 2, 3, 4, 5 # encoding: [0xfc,0x43,0x29,0x3c]
- fnmsub 2, 3, 4, 5
-# CHECK: fnmsub. 2, 3, 4, 5 # encoding: [0xfc,0x43,0x29,0x3d]
- fnmsub. 2, 3, 4, 5
-# CHECK: fnmsubs 2, 3, 4, 5 # encoding: [0xec,0x43,0x29,0x3c]
- fnmsubs 2, 3, 4, 5
-# CHECK: fnmsubs. 2, 3, 4, 5 # encoding: [0xec,0x43,0x29,0x3d]
- fnmsubs. 2, 3, 4, 5
+# CHECK-BE: fmadd 2, 3, 4, 5 # encoding: [0xfc,0x43,0x29,0x3a]
+# CHECK-LE: fmadd 2, 3, 4, 5 # encoding: [0x3a,0x29,0x43,0xfc]
+ fmadd 2, 3, 4, 5
+# CHECK-BE: fmadd. 2, 3, 4, 5 # encoding: [0xfc,0x43,0x29,0x3b]
+# CHECK-LE: fmadd. 2, 3, 4, 5 # encoding: [0x3b,0x29,0x43,0xfc]
+ fmadd. 2, 3, 4, 5
+# CHECK-BE: fmadds 2, 3, 4, 5 # encoding: [0xec,0x43,0x29,0x3a]
+# CHECK-LE: fmadds 2, 3, 4, 5 # encoding: [0x3a,0x29,0x43,0xec]
+ fmadds 2, 3, 4, 5
+# CHECK-BE: fmadds. 2, 3, 4, 5 # encoding: [0xec,0x43,0x29,0x3b]
+# CHECK-LE: fmadds. 2, 3, 4, 5 # encoding: [0x3b,0x29,0x43,0xec]
+ fmadds. 2, 3, 4, 5
+# CHECK-BE: fmsub 2, 3, 4, 5 # encoding: [0xfc,0x43,0x29,0x38]
+# CHECK-LE: fmsub 2, 3, 4, 5 # encoding: [0x38,0x29,0x43,0xfc]
+ fmsub 2, 3, 4, 5
+# CHECK-BE: fmsub. 2, 3, 4, 5 # encoding: [0xfc,0x43,0x29,0x39]
+# CHECK-LE: fmsub. 2, 3, 4, 5 # encoding: [0x39,0x29,0x43,0xfc]
+ fmsub. 2, 3, 4, 5
+# CHECK-BE: fmsubs 2, 3, 4, 5 # encoding: [0xec,0x43,0x29,0x38]
+# CHECK-LE: fmsubs 2, 3, 4, 5 # encoding: [0x38,0x29,0x43,0xec]
+ fmsubs 2, 3, 4, 5
+# CHECK-BE: fmsubs. 2, 3, 4, 5 # encoding: [0xec,0x43,0x29,0x39]
+# CHECK-LE: fmsubs. 2, 3, 4, 5 # encoding: [0x39,0x29,0x43,0xec]
+ fmsubs. 2, 3, 4, 5
+# CHECK-BE: fnmadd 2, 3, 4, 5 # encoding: [0xfc,0x43,0x29,0x3e]
+# CHECK-LE: fnmadd 2, 3, 4, 5 # encoding: [0x3e,0x29,0x43,0xfc]
+ fnmadd 2, 3, 4, 5
+# CHECK-BE: fnmadd. 2, 3, 4, 5 # encoding: [0xfc,0x43,0x29,0x3f]
+# CHECK-LE: fnmadd. 2, 3, 4, 5 # encoding: [0x3f,0x29,0x43,0xfc]
+ fnmadd. 2, 3, 4, 5
+# CHECK-BE: fnmadds 2, 3, 4, 5 # encoding: [0xec,0x43,0x29,0x3e]
+# CHECK-LE: fnmadds 2, 3, 4, 5 # encoding: [0x3e,0x29,0x43,0xec]
+ fnmadds 2, 3, 4, 5
+# CHECK-BE: fnmadds. 2, 3, 4, 5 # encoding: [0xec,0x43,0x29,0x3f]
+# CHECK-LE: fnmadds. 2, 3, 4, 5 # encoding: [0x3f,0x29,0x43,0xec]
+ fnmadds. 2, 3, 4, 5
+# CHECK-BE: fnmsub 2, 3, 4, 5 # encoding: [0xfc,0x43,0x29,0x3c]
+# CHECK-LE: fnmsub 2, 3, 4, 5 # encoding: [0x3c,0x29,0x43,0xfc]
+ fnmsub 2, 3, 4, 5
+# CHECK-BE: fnmsub. 2, 3, 4, 5 # encoding: [0xfc,0x43,0x29,0x3d]
+# CHECK-LE: fnmsub. 2, 3, 4, 5 # encoding: [0x3d,0x29,0x43,0xfc]
+ fnmsub. 2, 3, 4, 5
+# CHECK-BE: fnmsubs 2, 3, 4, 5 # encoding: [0xec,0x43,0x29,0x3c]
+# CHECK-LE: fnmsubs 2, 3, 4, 5 # encoding: [0x3c,0x29,0x43,0xec]
+ fnmsubs 2, 3, 4, 5
+# CHECK-BE: fnmsubs. 2, 3, 4, 5 # encoding: [0xec,0x43,0x29,0x3d]
+# CHECK-LE: fnmsubs. 2, 3, 4, 5 # encoding: [0x3d,0x29,0x43,0xec]
+ fnmsubs. 2, 3, 4, 5
# Floating-point rounding and conversion instructions
-# CHECK: frsp 2, 3 # encoding: [0xfc,0x40,0x18,0x18]
- frsp 2, 3
-# CHECK: frsp. 2, 3 # encoding: [0xfc,0x40,0x18,0x19]
- frsp. 2, 3
+# CHECK-BE: frsp 2, 3 # encoding: [0xfc,0x40,0x18,0x18]
+# CHECK-LE: frsp 2, 3 # encoding: [0x18,0x18,0x40,0xfc]
+ frsp 2, 3
+# CHECK-BE: frsp. 2, 3 # encoding: [0xfc,0x40,0x18,0x19]
+# CHECK-LE: frsp. 2, 3 # encoding: [0x19,0x18,0x40,0xfc]
+ frsp. 2, 3
-# CHECK: fctid 2, 3 # encoding: [0xfc,0x40,0x1e,0x5c]
- fctid 2, 3
-# CHECK: fctid. 2, 3 # encoding: [0xfc,0x40,0x1e,0x5d]
- fctid. 2, 3
-# CHECK: fctidz 2, 3 # encoding: [0xfc,0x40,0x1e,0x5e]
- fctidz 2, 3
-# CHECK: fctidz. 2, 3 # encoding: [0xfc,0x40,0x1e,0x5f]
- fctidz. 2, 3
-# FIXME: fctidu 2, 3
-# FIXME: fctidu. 2, 3
-# CHECK: fctiduz 2, 3 # encoding: [0xfc,0x40,0x1f,0x5e]
- fctiduz 2, 3
-# CHECK: fctiduz. 2, 3 # encoding: [0xfc,0x40,0x1f,0x5f]
- fctiduz. 2, 3
-# CHECK: fctiw 2, 3 # encoding: [0xfc,0x40,0x18,0x1c]
- fctiw 2, 3
-# CHECK: fctiw. 2, 3 # encoding: [0xfc,0x40,0x18,0x1d]
- fctiw. 2, 3
-# CHECK: fctiwz 2, 3 # encoding: [0xfc,0x40,0x18,0x1e]
- fctiwz 2, 3
-# CHECK: fctiwz. 2, 3 # encoding: [0xfc,0x40,0x18,0x1f]
- fctiwz. 2, 3
-# FIXME: fctiwu 2, 3
-# FIXME: fctiwu. 2, 3
-# CHECK: fctiwuz 2, 3 # encoding: [0xfc,0x40,0x19,0x1e]
- fctiwuz 2, 3
-# CHECK: fctiwuz. 2, 3 # encoding: [0xfc,0x40,0x19,0x1f]
- fctiwuz. 2, 3
-# CHECK: fcfid 2, 3 # encoding: [0xfc,0x40,0x1e,0x9c]
- fcfid 2, 3
-# CHECK: fcfid. 2, 3 # encoding: [0xfc,0x40,0x1e,0x9d]
- fcfid. 2, 3
-# CHECK: fcfidu 2, 3 # encoding: [0xfc,0x40,0x1f,0x9c]
- fcfidu 2, 3
-# CHECK: fcfidu. 2, 3 # encoding: [0xfc,0x40,0x1f,0x9d]
- fcfidu. 2, 3
-# CHECK: fcfids 2, 3 # encoding: [0xec,0x40,0x1e,0x9c]
- fcfids 2, 3
-# CHECK: fcfids. 2, 3 # encoding: [0xec,0x40,0x1e,0x9d]
- fcfids. 2, 3
-# CHECK: fcfidus 2, 3 # encoding: [0xec,0x40,0x1f,0x9c]
- fcfidus 2, 3
-# CHECK: fcfidus. 2, 3 # encoding: [0xec,0x40,0x1f,0x9d]
- fcfidus. 2, 3
-# CHECK: frin 2, 3 # encoding: [0xfc,0x40,0x1b,0x10]
- frin 2, 3
-# CHECK: frin. 2, 3 # encoding: [0xfc,0x40,0x1b,0x11]
- frin. 2, 3
-# CHECK: frip 2, 3 # encoding: [0xfc,0x40,0x1b,0x90]
- frip 2, 3
-# CHECK: frip. 2, 3 # encoding: [0xfc,0x40,0x1b,0x91]
- frip. 2, 3
-# CHECK: friz 2, 3 # encoding: [0xfc,0x40,0x1b,0x50]
- friz 2, 3
-# CHECK: friz. 2, 3 # encoding: [0xfc,0x40,0x1b,0x51]
- friz. 2, 3
-# CHECK: frim 2, 3 # encoding: [0xfc,0x40,0x1b,0xd0]
- frim 2, 3
-# CHECK: frim. 2, 3 # encoding: [0xfc,0x40,0x1b,0xd1]
- frim. 2, 3
+# CHECK-BE: fctid 2, 3 # encoding: [0xfc,0x40,0x1e,0x5c]
+# CHECK-LE: fctid 2, 3 # encoding: [0x5c,0x1e,0x40,0xfc]
+ fctid 2, 3
+# CHECK-BE: fctid. 2, 3 # encoding: [0xfc,0x40,0x1e,0x5d]
+# CHECK-LE: fctid. 2, 3 # encoding: [0x5d,0x1e,0x40,0xfc]
+ fctid. 2, 3
+# CHECK-BE: fctidz 2, 3 # encoding: [0xfc,0x40,0x1e,0x5e]
+# CHECK-LE: fctidz 2, 3 # encoding: [0x5e,0x1e,0x40,0xfc]
+ fctidz 2, 3
+# CHECK-BE: fctidz. 2, 3 # encoding: [0xfc,0x40,0x1e,0x5f]
+# CHECK-LE: fctidz. 2, 3 # encoding: [0x5f,0x1e,0x40,0xfc]
+ fctidz. 2, 3
+# FIXME: fctidu 2, 3
+# FIXME: fctidu. 2, 3
+# CHECK-BE: fctiduz 2, 3 # encoding: [0xfc,0x40,0x1f,0x5e]
+# CHECK-LE: fctiduz 2, 3 # encoding: [0x5e,0x1f,0x40,0xfc]
+ fctiduz 2, 3
+# CHECK-BE: fctiduz. 2, 3 # encoding: [0xfc,0x40,0x1f,0x5f]
+# CHECK-LE: fctiduz. 2, 3 # encoding: [0x5f,0x1f,0x40,0xfc]
+ fctiduz. 2, 3
+# CHECK-BE: fctiw 2, 3 # encoding: [0xfc,0x40,0x18,0x1c]
+# CHECK-LE: fctiw 2, 3 # encoding: [0x1c,0x18,0x40,0xfc]
+ fctiw 2, 3
+# CHECK-BE: fctiw. 2, 3 # encoding: [0xfc,0x40,0x18,0x1d]
+# CHECK-LE: fctiw. 2, 3 # encoding: [0x1d,0x18,0x40,0xfc]
+ fctiw. 2, 3
+# CHECK-BE: fctiwz 2, 3 # encoding: [0xfc,0x40,0x18,0x1e]
+# CHECK-LE: fctiwz 2, 3 # encoding: [0x1e,0x18,0x40,0xfc]
+ fctiwz 2, 3
+# CHECK-BE: fctiwz. 2, 3 # encoding: [0xfc,0x40,0x18,0x1f]
+# CHECK-LE: fctiwz. 2, 3 # encoding: [0x1f,0x18,0x40,0xfc]
+ fctiwz. 2, 3
+# FIXME: fctiwu 2, 3
+# FIXME: fctiwu. 2, 3
+# CHECK-BE: fctiwuz 2, 3 # encoding: [0xfc,0x40,0x19,0x1e]
+# CHECK-LE: fctiwuz 2, 3 # encoding: [0x1e,0x19,0x40,0xfc]
+ fctiwuz 2, 3
+# CHECK-BE: fctiwuz. 2, 3 # encoding: [0xfc,0x40,0x19,0x1f]
+# CHECK-LE: fctiwuz. 2, 3 # encoding: [0x1f,0x19,0x40,0xfc]
+ fctiwuz. 2, 3
+# CHECK-BE: fcfid 2, 3 # encoding: [0xfc,0x40,0x1e,0x9c]
+# CHECK-LE: fcfid 2, 3 # encoding: [0x9c,0x1e,0x40,0xfc]
+ fcfid 2, 3
+# CHECK-BE: fcfid. 2, 3 # encoding: [0xfc,0x40,0x1e,0x9d]
+# CHECK-LE: fcfid. 2, 3 # encoding: [0x9d,0x1e,0x40,0xfc]
+ fcfid. 2, 3
+# CHECK-BE: fcfidu 2, 3 # encoding: [0xfc,0x40,0x1f,0x9c]
+# CHECK-LE: fcfidu 2, 3 # encoding: [0x9c,0x1f,0x40,0xfc]
+ fcfidu 2, 3
+# CHECK-BE: fcfidu. 2, 3 # encoding: [0xfc,0x40,0x1f,0x9d]
+# CHECK-LE: fcfidu. 2, 3 # encoding: [0x9d,0x1f,0x40,0xfc]
+ fcfidu. 2, 3
+# CHECK-BE: fcfids 2, 3 # encoding: [0xec,0x40,0x1e,0x9c]
+# CHECK-LE: fcfids 2, 3 # encoding: [0x9c,0x1e,0x40,0xec]
+ fcfids 2, 3
+# CHECK-BE: fcfids. 2, 3 # encoding: [0xec,0x40,0x1e,0x9d]
+# CHECK-LE: fcfids. 2, 3 # encoding: [0x9d,0x1e,0x40,0xec]
+ fcfids. 2, 3
+# CHECK-BE: fcfidus 2, 3 # encoding: [0xec,0x40,0x1f,0x9c]
+# CHECK-LE: fcfidus 2, 3 # encoding: [0x9c,0x1f,0x40,0xec]
+ fcfidus 2, 3
+# CHECK-BE: fcfidus. 2, 3 # encoding: [0xec,0x40,0x1f,0x9d]
+# CHECK-LE: fcfidus. 2, 3 # encoding: [0x9d,0x1f,0x40,0xec]
+ fcfidus. 2, 3
+# CHECK-BE: frin 2, 3 # encoding: [0xfc,0x40,0x1b,0x10]
+# CHECK-LE: frin 2, 3 # encoding: [0x10,0x1b,0x40,0xfc]
+ frin 2, 3
+# CHECK-BE: frin. 2, 3 # encoding: [0xfc,0x40,0x1b,0x11]
+# CHECK-LE: frin. 2, 3 # encoding: [0x11,0x1b,0x40,0xfc]
+ frin. 2, 3
+# CHECK-BE: frip 2, 3 # encoding: [0xfc,0x40,0x1b,0x90]
+# CHECK-LE: frip 2, 3 # encoding: [0x90,0x1b,0x40,0xfc]
+ frip 2, 3
+# CHECK-BE: frip. 2, 3 # encoding: [0xfc,0x40,0x1b,0x91]
+# CHECK-LE: frip. 2, 3 # encoding: [0x91,0x1b,0x40,0xfc]
+ frip. 2, 3
+# CHECK-BE: friz 2, 3 # encoding: [0xfc,0x40,0x1b,0x50]
+# CHECK-LE: friz 2, 3 # encoding: [0x50,0x1b,0x40,0xfc]
+ friz 2, 3
+# CHECK-BE: friz. 2, 3 # encoding: [0xfc,0x40,0x1b,0x51]
+# CHECK-LE: friz. 2, 3 # encoding: [0x51,0x1b,0x40,0xfc]
+ friz. 2, 3
+# CHECK-BE: frim 2, 3 # encoding: [0xfc,0x40,0x1b,0xd0]
+# CHECK-LE: frim 2, 3 # encoding: [0xd0,0x1b,0x40,0xfc]
+ frim 2, 3
+# CHECK-BE: frim. 2, 3 # encoding: [0xfc,0x40,0x1b,0xd1]
+# CHECK-LE: frim. 2, 3 # encoding: [0xd1,0x1b,0x40,0xfc]
+ frim. 2, 3
# Floating-point compare instructions
-# CHECK: fcmpu 2, 3, 4 # encoding: [0xfd,0x03,0x20,0x00]
- fcmpu 2, 3, 4
-# FIXME: fcmpo 2, 3, 4
+# CHECK-BE: fcmpu 2, 3, 4 # encoding: [0xfd,0x03,0x20,0x00]
+# CHECK-LE: fcmpu 2, 3, 4 # encoding: [0x00,0x20,0x03,0xfd]
+ fcmpu 2, 3, 4
+# FIXME: fcmpo 2, 3, 4
# Floating-point select instruction
-# CHECK: fsel 2, 3, 4, 5 # encoding: [0xfc,0x43,0x29,0x2e]
- fsel 2, 3, 4, 5
-# CHECK: fsel. 2, 3, 4, 5 # encoding: [0xfc,0x43,0x29,0x2f]
- fsel. 2, 3, 4, 5
+# CHECK-BE: fsel 2, 3, 4, 5 # encoding: [0xfc,0x43,0x29,0x2e]
+# CHECK-LE: fsel 2, 3, 4, 5 # encoding: [0x2e,0x29,0x43,0xfc]
+ fsel 2, 3, 4, 5
+# CHECK-BE: fsel. 2, 3, 4, 5 # encoding: [0xfc,0x43,0x29,0x2f]
+# CHECK-LE: fsel. 2, 3, 4, 5 # encoding: [0x2f,0x29,0x43,0xfc]
+ fsel. 2, 3, 4, 5
# Floating-point status and control register instructions
-# CHECK: mffs 2 # encoding: [0xfc,0x40,0x04,0x8e]
- mffs 2
-# FIXME: mffs. 2
+# CHECK-BE: mffs 2 # encoding: [0xfc,0x40,0x04,0x8e]
+# CHECK-LE: mffs 2 # encoding: [0x8e,0x04,0x40,0xfc]
+ mffs 2
+# FIXME: mffs. 2
-# FIXME: mcrfs 2, 3
+# FIXME: mcrfs 2, 3
-# FIXME: mtfsfi 2, 3, 1
-# FIXME: mtfsfi. 2, 3, 1
-# FIXME: mtfsf 2, 3, 1, 1
-# FIXME: mtfsf. 2, 3, 1, 1
+# FIXME: mtfsfi 2, 3, 1
+# FIXME: mtfsfi. 2, 3, 1
+# FIXME: mtfsf 2, 3, 1, 1
+# FIXME: mtfsf. 2, 3, 1, 1
-# CHECK: mtfsb0 31 # encoding: [0xff,0xe0,0x00,0x8c]
- mtfsb0 31
-# FIXME: mtfsb0. 31
-# CHECK: mtfsb1 31 # encoding: [0xff,0xe0,0x00,0x4c]
- mtfsb1 31
-# FIXME: mtfsb1. 31
+# CHECK-BE: mtfsb0 31 # encoding: [0xff,0xe0,0x00,0x8c]
+# CHECK-LE: mtfsb0 31 # encoding: [0x8c,0x00,0xe0,0xff]
+ mtfsb0 31
+# FIXME: mtfsb0. 31
+# CHECK-BE: mtfsb1 31 # encoding: [0xff,0xe0,0x00,0x4c]
+# CHECK-LE: mtfsb1 31 # encoding: [0x4c,0x00,0xe0,0xff]
+ mtfsb1 31
+# FIXME: mtfsb1. 31
diff --git a/test/MC/PowerPC/ppc64-encoding-vmx.s b/test/MC/PowerPC/ppc64-encoding-vmx.s
index 0154076..3d2df84 100644
--- a/test/MC/PowerPC/ppc64-encoding-vmx.s
+++ b/test/MC/PowerPC/ppc64-encoding-vmx.s
@@ -1,384 +1,554 @@
-# RUN: llvm-mc -triple powerpc64-unknown-unknown --show-encoding %s | FileCheck %s
+# RUN: llvm-mc -triple powerpc64-unknown-unknown --show-encoding %s | FileCheck -check-prefix=CHECK-BE %s
+# RUN: llvm-mc -triple powerpc64le-unknown-unknown --show-encoding %s | FileCheck -check-prefix=CHECK-LE %s
# Vector facility
# Vector storage access instructions
-# CHECK: lvebx 2, 3, 4 # encoding: [0x7c,0x43,0x20,0x0e]
- lvebx 2, 3, 4
-# CHECK: lvehx 2, 3, 4 # encoding: [0x7c,0x43,0x20,0x4e]
- lvehx 2, 3, 4
-# CHECK: lvewx 2, 3, 4 # encoding: [0x7c,0x43,0x20,0x8e]
- lvewx 2, 3, 4
-# CHECK: lvx 2, 3, 4 # encoding: [0x7c,0x43,0x20,0xce]
- lvx 2, 3, 4
-# CHECK: lvxl 2, 3, 4 # encoding: [0x7c,0x43,0x22,0xce]
- lvxl 2, 3, 4
-# CHECK: stvebx 2, 3, 4 # encoding: [0x7c,0x43,0x21,0x0e]
- stvebx 2, 3, 4
-# CHECK: stvehx 2, 3, 4 # encoding: [0x7c,0x43,0x21,0x4e]
- stvehx 2, 3, 4
-# CHECK: stvewx 2, 3, 4 # encoding: [0x7c,0x43,0x21,0x8e]
- stvewx 2, 3, 4
-# CHECK: stvx 2, 3, 4 # encoding: [0x7c,0x43,0x21,0xce]
- stvx 2, 3, 4
-# CHECK: stvxl 2, 3, 4 # encoding: [0x7c,0x43,0x23,0xce]
- stvxl 2, 3, 4
-# CHECK: lvsl 2, 3, 4 # encoding: [0x7c,0x43,0x20,0x0c]
- lvsl 2, 3, 4
-# CHECK: lvsr 2, 3, 4 # encoding: [0x7c,0x43,0x20,0x4c]
- lvsr 2, 3, 4
+# CHECK-BE: lvebx 2, 3, 4 # encoding: [0x7c,0x43,0x20,0x0e]
+# CHECK-LE: lvebx 2, 3, 4 # encoding: [0x0e,0x20,0x43,0x7c]
+ lvebx 2, 3, 4
+# CHECK-BE: lvehx 2, 3, 4 # encoding: [0x7c,0x43,0x20,0x4e]
+# CHECK-LE: lvehx 2, 3, 4 # encoding: [0x4e,0x20,0x43,0x7c]
+ lvehx 2, 3, 4
+# CHECK-BE: lvewx 2, 3, 4 # encoding: [0x7c,0x43,0x20,0x8e]
+# CHECK-LE: lvewx 2, 3, 4 # encoding: [0x8e,0x20,0x43,0x7c]
+ lvewx 2, 3, 4
+# CHECK-BE: lvx 2, 3, 4 # encoding: [0x7c,0x43,0x20,0xce]
+# CHECK-LE: lvx 2, 3, 4 # encoding: [0xce,0x20,0x43,0x7c]
+ lvx 2, 3, 4
+# CHECK-BE: lvxl 2, 3, 4 # encoding: [0x7c,0x43,0x22,0xce]
+# CHECK-LE: lvxl 2, 3, 4 # encoding: [0xce,0x22,0x43,0x7c]
+ lvxl 2, 3, 4
+# CHECK-BE: stvebx 2, 3, 4 # encoding: [0x7c,0x43,0x21,0x0e]
+# CHECK-LE: stvebx 2, 3, 4 # encoding: [0x0e,0x21,0x43,0x7c]
+ stvebx 2, 3, 4
+# CHECK-BE: stvehx 2, 3, 4 # encoding: [0x7c,0x43,0x21,0x4e]
+# CHECK-LE: stvehx 2, 3, 4 # encoding: [0x4e,0x21,0x43,0x7c]
+ stvehx 2, 3, 4
+# CHECK-BE: stvewx 2, 3, 4 # encoding: [0x7c,0x43,0x21,0x8e]
+# CHECK-LE: stvewx 2, 3, 4 # encoding: [0x8e,0x21,0x43,0x7c]
+ stvewx 2, 3, 4
+# CHECK-BE: stvx 2, 3, 4 # encoding: [0x7c,0x43,0x21,0xce]
+# CHECK-LE: stvx 2, 3, 4 # encoding: [0xce,0x21,0x43,0x7c]
+ stvx 2, 3, 4
+# CHECK-BE: stvxl 2, 3, 4 # encoding: [0x7c,0x43,0x23,0xce]
+# CHECK-LE: stvxl 2, 3, 4 # encoding: [0xce,0x23,0x43,0x7c]
+ stvxl 2, 3, 4
+# CHECK-BE: lvsl 2, 3, 4 # encoding: [0x7c,0x43,0x20,0x0c]
+# CHECK-LE: lvsl 2, 3, 4 # encoding: [0x0c,0x20,0x43,0x7c]
+ lvsl 2, 3, 4
+# CHECK-BE: lvsr 2, 3, 4 # encoding: [0x7c,0x43,0x20,0x4c]
+# CHECK-LE: lvsr 2, 3, 4 # encoding: [0x4c,0x20,0x43,0x7c]
+ lvsr 2, 3, 4
# Vector permute and formatting instructions
-# CHECK: vpkpx 2, 3, 4 # encoding: [0x10,0x43,0x23,0x0e]
- vpkpx 2, 3, 4
-# CHECK: vpkshss 2, 3, 4 # encoding: [0x10,0x43,0x21,0x8e]
- vpkshss 2, 3, 4
-# CHECK: vpkshus 2, 3, 4 # encoding: [0x10,0x43,0x21,0x0e]
- vpkshus 2, 3, 4
-# CHECK: vpkswss 2, 3, 4 # encoding: [0x10,0x43,0x21,0xce]
- vpkswss 2, 3, 4
-# CHECK: vpkswus 2, 3, 4 # encoding: [0x10,0x43,0x21,0x4e]
- vpkswus 2, 3, 4
-# CHECK: vpkuhum 2, 3, 4 # encoding: [0x10,0x43,0x20,0x0e]
- vpkuhum 2, 3, 4
-# CHECK: vpkuhus 2, 3, 4 # encoding: [0x10,0x43,0x20,0x8e]
- vpkuhus 2, 3, 4
-# CHECK: vpkuwum 2, 3, 4 # encoding: [0x10,0x43,0x20,0x4e]
- vpkuwum 2, 3, 4
-# CHECK: vpkuwus 2, 3, 4 # encoding: [0x10,0x43,0x20,0xce]
- vpkuwus 2, 3, 4
-
-# CHECK: vupkhpx 2, 3 # encoding: [0x10,0x40,0x1b,0x4e]
- vupkhpx 2, 3
-# CHECK: vupkhsb 2, 3 # encoding: [0x10,0x40,0x1a,0x0e]
- vupkhsb 2, 3
-# CHECK: vupkhsh 2, 3 # encoding: [0x10,0x40,0x1a,0x4e]
- vupkhsh 2, 3
-# CHECK: vupklpx 2, 3 # encoding: [0x10,0x40,0x1b,0xce]
- vupklpx 2, 3
-# CHECK: vupklsb 2, 3 # encoding: [0x10,0x40,0x1a,0x8e]
- vupklsb 2, 3
-# CHECK: vupklsh 2, 3 # encoding: [0x10,0x40,0x1a,0xce]
- vupklsh 2, 3
-
-# CHECK: vmrghb 2, 3, 4 # encoding: [0x10,0x43,0x20,0x0c]
- vmrghb 2, 3, 4
-# CHECK: vmrghh 2, 3, 4 # encoding: [0x10,0x43,0x20,0x4c]
- vmrghh 2, 3, 4
-# CHECK: vmrghw 2, 3, 4 # encoding: [0x10,0x43,0x20,0x8c]
- vmrghw 2, 3, 4
-# CHECK: vmrglb 2, 3, 4 # encoding: [0x10,0x43,0x21,0x0c]
- vmrglb 2, 3, 4
-# CHECK: vmrglh 2, 3, 4 # encoding: [0x10,0x43,0x21,0x4c]
- vmrglh 2, 3, 4
-# CHECK: vmrglw 2, 3, 4 # encoding: [0x10,0x43,0x21,0x8c]
- vmrglw 2, 3, 4
-
-# CHECK: vspltb 2, 3, 1 # encoding: [0x10,0x41,0x1a,0x0c]
- vspltb 2, 3, 1
-# CHECK: vsplth 2, 3, 1 # encoding: [0x10,0x41,0x1a,0x4c]
- vsplth 2, 3, 1
-# CHECK: vspltw 2, 3, 1 # encoding: [0x10,0x41,0x1a,0x8c]
- vspltw 2, 3, 1
-# CHECK: vspltisb 2, 3 # encoding: [0x10,0x43,0x03,0x0c]
- vspltisb 2, 3
-# CHECK: vspltish 2, 3 # encoding: [0x10,0x43,0x03,0x4c]
- vspltish 2, 3
-# CHECK: vspltisw 2, 3 # encoding: [0x10,0x43,0x03,0x8c]
- vspltisw 2, 3
-
-# CHECK: vperm 2, 3, 4, 5 # encoding: [0x10,0x43,0x21,0x6b]
- vperm 2, 3, 4, 5
-# CHECK: vsel 2, 3, 4, 5 # encoding: [0x10,0x43,0x21,0x6a]
- vsel 2, 3, 4, 5
-
-# CHECK: vsl 2, 3, 4 # encoding: [0x10,0x43,0x21,0xc4]
- vsl 2, 3, 4
-# CHECK: vsldoi 2, 3, 4, 5 # encoding: [0x10,0x43,0x21,0x6c]
- vsldoi 2, 3, 4, 5
-# CHECK: vslo 2, 3, 4 # encoding: [0x10,0x43,0x24,0x0c]
- vslo 2, 3, 4
-# CHECK: vsr 2, 3, 4 # encoding: [0x10,0x43,0x22,0xc4]
- vsr 2, 3, 4
-# CHECK: vsro 2, 3, 4 # encoding: [0x10,0x43,0x24,0x4c]
- vsro 2, 3, 4
+# CHECK-BE: vpkpx 2, 3, 4 # encoding: [0x10,0x43,0x23,0x0e]
+# CHECK-LE: vpkpx 2, 3, 4 # encoding: [0x0e,0x23,0x43,0x10]
+ vpkpx 2, 3, 4
+# CHECK-BE: vpkshss 2, 3, 4 # encoding: [0x10,0x43,0x21,0x8e]
+# CHECK-LE: vpkshss 2, 3, 4 # encoding: [0x8e,0x21,0x43,0x10]
+ vpkshss 2, 3, 4
+# CHECK-BE: vpkshus 2, 3, 4 # encoding: [0x10,0x43,0x21,0x0e]
+# CHECK-LE: vpkshus 2, 3, 4 # encoding: [0x0e,0x21,0x43,0x10]
+ vpkshus 2, 3, 4
+# CHECK-BE: vpkswss 2, 3, 4 # encoding: [0x10,0x43,0x21,0xce]
+# CHECK-LE: vpkswss 2, 3, 4 # encoding: [0xce,0x21,0x43,0x10]
+ vpkswss 2, 3, 4
+# CHECK-BE: vpkswus 2, 3, 4 # encoding: [0x10,0x43,0x21,0x4e]
+# CHECK-LE: vpkswus 2, 3, 4 # encoding: [0x4e,0x21,0x43,0x10]
+ vpkswus 2, 3, 4
+# CHECK-BE: vpkuhum 2, 3, 4 # encoding: [0x10,0x43,0x20,0x0e]
+# CHECK-LE: vpkuhum 2, 3, 4 # encoding: [0x0e,0x20,0x43,0x10]
+ vpkuhum 2, 3, 4
+# CHECK-BE: vpkuhus 2, 3, 4 # encoding: [0x10,0x43,0x20,0x8e]
+# CHECK-LE: vpkuhus 2, 3, 4 # encoding: [0x8e,0x20,0x43,0x10]
+ vpkuhus 2, 3, 4
+# CHECK-BE: vpkuwum 2, 3, 4 # encoding: [0x10,0x43,0x20,0x4e]
+# CHECK-LE: vpkuwum 2, 3, 4 # encoding: [0x4e,0x20,0x43,0x10]
+ vpkuwum 2, 3, 4
+# CHECK-BE: vpkuwus 2, 3, 4 # encoding: [0x10,0x43,0x20,0xce]
+# CHECK-LE: vpkuwus 2, 3, 4 # encoding: [0xce,0x20,0x43,0x10]
+ vpkuwus 2, 3, 4
+
+# CHECK-BE: vupkhpx 2, 3 # encoding: [0x10,0x40,0x1b,0x4e]
+# CHECK-LE: vupkhpx 2, 3 # encoding: [0x4e,0x1b,0x40,0x10]
+ vupkhpx 2, 3
+# CHECK-BE: vupkhsb 2, 3 # encoding: [0x10,0x40,0x1a,0x0e]
+# CHECK-LE: vupkhsb 2, 3 # encoding: [0x0e,0x1a,0x40,0x10]
+ vupkhsb 2, 3
+# CHECK-BE: vupkhsh 2, 3 # encoding: [0x10,0x40,0x1a,0x4e]
+# CHECK-LE: vupkhsh 2, 3 # encoding: [0x4e,0x1a,0x40,0x10]
+ vupkhsh 2, 3
+# CHECK-BE: vupklpx 2, 3 # encoding: [0x10,0x40,0x1b,0xce]
+# CHECK-LE: vupklpx 2, 3 # encoding: [0xce,0x1b,0x40,0x10]
+ vupklpx 2, 3
+# CHECK-BE: vupklsb 2, 3 # encoding: [0x10,0x40,0x1a,0x8e]
+# CHECK-LE: vupklsb 2, 3 # encoding: [0x8e,0x1a,0x40,0x10]
+ vupklsb 2, 3
+# CHECK-BE: vupklsh 2, 3 # encoding: [0x10,0x40,0x1a,0xce]
+# CHECK-LE: vupklsh 2, 3 # encoding: [0xce,0x1a,0x40,0x10]
+ vupklsh 2, 3
+
+# CHECK-BE: vmrghb 2, 3, 4 # encoding: [0x10,0x43,0x20,0x0c]
+# CHECK-LE: vmrghb 2, 3, 4 # encoding: [0x0c,0x20,0x43,0x10]
+ vmrghb 2, 3, 4
+# CHECK-BE: vmrghh 2, 3, 4 # encoding: [0x10,0x43,0x20,0x4c]
+# CHECK-LE: vmrghh 2, 3, 4 # encoding: [0x4c,0x20,0x43,0x10]
+ vmrghh 2, 3, 4
+# CHECK-BE: vmrghw 2, 3, 4 # encoding: [0x10,0x43,0x20,0x8c]
+# CHECK-LE: vmrghw 2, 3, 4 # encoding: [0x8c,0x20,0x43,0x10]
+ vmrghw 2, 3, 4
+# CHECK-BE: vmrglb 2, 3, 4 # encoding: [0x10,0x43,0x21,0x0c]
+# CHECK-LE: vmrglb 2, 3, 4 # encoding: [0x0c,0x21,0x43,0x10]
+ vmrglb 2, 3, 4
+# CHECK-BE: vmrglh 2, 3, 4 # encoding: [0x10,0x43,0x21,0x4c]
+# CHECK-LE: vmrglh 2, 3, 4 # encoding: [0x4c,0x21,0x43,0x10]
+ vmrglh 2, 3, 4
+# CHECK-BE: vmrglw 2, 3, 4 # encoding: [0x10,0x43,0x21,0x8c]
+# CHECK-LE: vmrglw 2, 3, 4 # encoding: [0x8c,0x21,0x43,0x10]
+ vmrglw 2, 3, 4
+
+# CHECK-BE: vspltb 2, 3, 1 # encoding: [0x10,0x41,0x1a,0x0c]
+# CHECK-LE: vspltb 2, 3, 1 # encoding: [0x0c,0x1a,0x41,0x10]
+ vspltb 2, 3, 1
+# CHECK-BE: vsplth 2, 3, 1 # encoding: [0x10,0x41,0x1a,0x4c]
+# CHECK-LE: vsplth 2, 3, 1 # encoding: [0x4c,0x1a,0x41,0x10]
+ vsplth 2, 3, 1
+# CHECK-BE: vspltw 2, 3, 1 # encoding: [0x10,0x41,0x1a,0x8c]
+# CHECK-LE: vspltw 2, 3, 1 # encoding: [0x8c,0x1a,0x41,0x10]
+ vspltw 2, 3, 1
+# CHECK-BE: vspltisb 2, 3 # encoding: [0x10,0x43,0x03,0x0c]
+# CHECK-LE: vspltisb 2, 3 # encoding: [0x0c,0x03,0x43,0x10]
+ vspltisb 2, 3
+# CHECK-BE: vspltish 2, 3 # encoding: [0x10,0x43,0x03,0x4c]
+# CHECK-LE: vspltish 2, 3 # encoding: [0x4c,0x03,0x43,0x10]
+ vspltish 2, 3
+# CHECK-BE: vspltisw 2, 3 # encoding: [0x10,0x43,0x03,0x8c]
+# CHECK-LE: vspltisw 2, 3 # encoding: [0x8c,0x03,0x43,0x10]
+ vspltisw 2, 3
+
+# CHECK-BE: vperm 2, 3, 4, 5 # encoding: [0x10,0x43,0x21,0x6b]
+# CHECK-LE: vperm 2, 3, 4, 5 # encoding: [0x6b,0x21,0x43,0x10]
+ vperm 2, 3, 4, 5
+# CHECK-BE: vsel 2, 3, 4, 5 # encoding: [0x10,0x43,0x21,0x6a]
+# CHECK-LE: vsel 2, 3, 4, 5 # encoding: [0x6a,0x21,0x43,0x10]
+ vsel 2, 3, 4, 5
+
+# CHECK-BE: vsl 2, 3, 4 # encoding: [0x10,0x43,0x21,0xc4]
+# CHECK-LE: vsl 2, 3, 4 # encoding: [0xc4,0x21,0x43,0x10]
+ vsl 2, 3, 4
+# CHECK-BE: vsldoi 2, 3, 4, 5 # encoding: [0x10,0x43,0x21,0x6c]
+# CHECK-LE: vsldoi 2, 3, 4, 5 # encoding: [0x6c,0x21,0x43,0x10]
+ vsldoi 2, 3, 4, 5
+# CHECK-BE: vslo 2, 3, 4 # encoding: [0x10,0x43,0x24,0x0c]
+# CHECK-LE: vslo 2, 3, 4 # encoding: [0x0c,0x24,0x43,0x10]
+ vslo 2, 3, 4
+# CHECK-BE: vsr 2, 3, 4 # encoding: [0x10,0x43,0x22,0xc4]
+# CHECK-LE: vsr 2, 3, 4 # encoding: [0xc4,0x22,0x43,0x10]
+ vsr 2, 3, 4
+# CHECK-BE: vsro 2, 3, 4 # encoding: [0x10,0x43,0x24,0x4c]
+# CHECK-LE: vsro 2, 3, 4 # encoding: [0x4c,0x24,0x43,0x10]
+ vsro 2, 3, 4
# Vector integer arithmetic instructions
-# CHECK: vaddcuw 2, 3, 4 # encoding: [0x10,0x43,0x21,0x80]
- vaddcuw 2, 3, 4
-# CHECK: vaddsbs 2, 3, 4 # encoding: [0x10,0x43,0x23,0x00]
- vaddsbs 2, 3, 4
-# CHECK: vaddshs 2, 3, 4 # encoding: [0x10,0x43,0x23,0x40]
- vaddshs 2, 3, 4
-# CHECK: vaddsws 2, 3, 4 # encoding: [0x10,0x43,0x23,0x80]
- vaddsws 2, 3, 4
-# CHECK: vaddubm 2, 3, 4 # encoding: [0x10,0x43,0x20,0x00]
- vaddubm 2, 3, 4
-# CHECK: vadduhm 2, 3, 4 # encoding: [0x10,0x43,0x20,0x40]
- vadduhm 2, 3, 4
-# CHECK: vadduwm 2, 3, 4 # encoding: [0x10,0x43,0x20,0x80]
- vadduwm 2, 3, 4
-# CHECK: vaddubs 2, 3, 4 # encoding: [0x10,0x43,0x22,0x00]
- vaddubs 2, 3, 4
-# CHECK: vadduhs 2, 3, 4 # encoding: [0x10,0x43,0x22,0x40]
- vadduhs 2, 3, 4
-# CHECK: vadduws 2, 3, 4 # encoding: [0x10,0x43,0x22,0x80]
- vadduws 2, 3, 4
-
-# CHECK: vsubcuw 2, 3, 4 # encoding: [0x10,0x43,0x25,0x80]
- vsubcuw 2, 3, 4
-# CHECK: vsubsbs 2, 3, 4 # encoding: [0x10,0x43,0x27,0x00]
- vsubsbs 2, 3, 4
-# CHECK: vsubshs 2, 3, 4 # encoding: [0x10,0x43,0x27,0x40]
- vsubshs 2, 3, 4
-# CHECK: vsubsws 2, 3, 4 # encoding: [0x10,0x43,0x27,0x80]
- vsubsws 2, 3, 4
-# CHECK: vsububm 2, 3, 4 # encoding: [0x10,0x43,0x24,0x00]
- vsububm 2, 3, 4
-# CHECK: vsubuhm 2, 3, 4 # encoding: [0x10,0x43,0x24,0x40]
- vsubuhm 2, 3, 4
-# CHECK: vsubuwm 2, 3, 4 # encoding: [0x10,0x43,0x24,0x80]
- vsubuwm 2, 3, 4
-# CHECK: vsububs 2, 3, 4 # encoding: [0x10,0x43,0x26,0x00]
- vsububs 2, 3, 4
-# CHECK: vsubuhs 2, 3, 4 # encoding: [0x10,0x43,0x26,0x40]
- vsubuhs 2, 3, 4
-# CHECK: vsubuws 2, 3, 4 # encoding: [0x10,0x43,0x26,0x80]
- vsubuws 2, 3, 4
-
-# CHECK: vmulesb 2, 3, 4 # encoding: [0x10,0x43,0x23,0x08]
- vmulesb 2, 3, 4
-# CHECK: vmulesh 2, 3, 4 # encoding: [0x10,0x43,0x23,0x48]
- vmulesh 2, 3, 4
-# CHECK: vmuleub 2, 3, 4 # encoding: [0x10,0x43,0x22,0x08]
- vmuleub 2, 3, 4
-# CHECK: vmuleuh 2, 3, 4 # encoding: [0x10,0x43,0x22,0x48]
- vmuleuh 2, 3, 4
-# CHECK: vmulosb 2, 3, 4 # encoding: [0x10,0x43,0x21,0x08]
- vmulosb 2, 3, 4
-# CHECK: vmulosh 2, 3, 4 # encoding: [0x10,0x43,0x21,0x48]
- vmulosh 2, 3, 4
-# CHECK: vmuloub 2, 3, 4 # encoding: [0x10,0x43,0x20,0x08]
- vmuloub 2, 3, 4
-# CHECK: vmulouh 2, 3, 4 # encoding: [0x10,0x43,0x20,0x48]
- vmulouh 2, 3, 4
-
-# CHECK: vmhaddshs 2, 3, 4, 5 # encoding: [0x10,0x43,0x21,0x60]
- vmhaddshs 2, 3, 4, 5
-# CHECK: vmhraddshs 2, 3, 4, 5 # encoding: [0x10,0x43,0x21,0x61]
- vmhraddshs 2, 3, 4, 5
-# CHECK: vmladduhm 2, 3, 4, 5 # encoding: [0x10,0x43,0x21,0x62]
- vmladduhm 2, 3, 4, 5
-# CHECK: vmsumubm 2, 3, 4, 5 # encoding: [0x10,0x43,0x21,0x64]
- vmsumubm 2, 3, 4, 5
-# CHECK: vmsummbm 2, 3, 4, 5 # encoding: [0x10,0x43,0x21,0x65]
- vmsummbm 2, 3, 4, 5
-# CHECK: vmsumshm 2, 3, 4, 5 # encoding: [0x10,0x43,0x21,0x68]
- vmsumshm 2, 3, 4, 5
-# CHECK: vmsumshs 2, 3, 4, 5 # encoding: [0x10,0x43,0x21,0x69]
- vmsumshs 2, 3, 4, 5
-# CHECK: vmsumuhm 2, 3, 4, 5 # encoding: [0x10,0x43,0x21,0x66]
- vmsumuhm 2, 3, 4, 5
-# CHECK: vmsumuhs 2, 3, 4, 5 # encoding: [0x10,0x43,0x21,0x67]
- vmsumuhs 2, 3, 4, 5
-
-# CHECK: vsumsws 2, 3, 4 # encoding: [0x10,0x43,0x27,0x88]
- vsumsws 2, 3, 4
-# CHECK: vsum2sws 2, 3, 4 # encoding: [0x10,0x43,0x26,0x88]
- vsum2sws 2, 3, 4
-# CHECK: vsum4sbs 2, 3, 4 # encoding: [0x10,0x43,0x27,0x08]
- vsum4sbs 2, 3, 4
-# CHECK: vsum4shs 2, 3, 4 # encoding: [0x10,0x43,0x26,0x48]
- vsum4shs 2, 3, 4
-# CHECK: vsum4ubs 2, 3, 4 # encoding: [0x10,0x43,0x26,0x08]
- vsum4ubs 2, 3, 4
-
-# CHECK: vavgsb 2, 3, 4 # encoding: [0x10,0x43,0x25,0x02]
- vavgsb 2, 3, 4
-# CHECK: vavgsh 2, 3, 4 # encoding: [0x10,0x43,0x25,0x42]
- vavgsh 2, 3, 4
-# CHECK: vavgsw 2, 3, 4 # encoding: [0x10,0x43,0x25,0x82]
- vavgsw 2, 3, 4
-# CHECK: vavgub 2, 3, 4 # encoding: [0x10,0x43,0x24,0x02]
- vavgub 2, 3, 4
-# CHECK: vavguh 2, 3, 4 # encoding: [0x10,0x43,0x24,0x42]
- vavguh 2, 3, 4
-# CHECK: vavguw 2, 3, 4 # encoding: [0x10,0x43,0x24,0x82]
- vavguw 2, 3, 4
-
-# CHECK: vmaxsb 2, 3, 4 # encoding: [0x10,0x43,0x21,0x02]
- vmaxsb 2, 3, 4
-# CHECK: vmaxsh 2, 3, 4 # encoding: [0x10,0x43,0x21,0x42]
- vmaxsh 2, 3, 4
-# CHECK: vmaxsw 2, 3, 4 # encoding: [0x10,0x43,0x21,0x82]
- vmaxsw 2, 3, 4
-# CHECK: vmaxub 2, 3, 4 # encoding: [0x10,0x43,0x20,0x02]
- vmaxub 2, 3, 4
-# CHECK: vmaxuh 2, 3, 4 # encoding: [0x10,0x43,0x20,0x42]
- vmaxuh 2, 3, 4
-# CHECK: vmaxuw 2, 3, 4 # encoding: [0x10,0x43,0x20,0x82]
- vmaxuw 2, 3, 4
-
-# CHECK: vminsb 2, 3, 4 # encoding: [0x10,0x43,0x23,0x02]
- vminsb 2, 3, 4
-# CHECK: vminsh 2, 3, 4 # encoding: [0x10,0x43,0x23,0x42]
- vminsh 2, 3, 4
-# CHECK: vminsw 2, 3, 4 # encoding: [0x10,0x43,0x23,0x82]
- vminsw 2, 3, 4
-# CHECK: vminub 2, 3, 4 # encoding: [0x10,0x43,0x22,0x02]
- vminub 2, 3, 4
-# CHECK: vminuh 2, 3, 4 # encoding: [0x10,0x43,0x22,0x42]
- vminuh 2, 3, 4
-# CHECK: vminuw 2, 3, 4 # encoding: [0x10,0x43,0x22,0x82]
- vminuw 2, 3, 4
+# CHECK-BE: vaddcuw 2, 3, 4 # encoding: [0x10,0x43,0x21,0x80]
+# CHECK-LE: vaddcuw 2, 3, 4 # encoding: [0x80,0x21,0x43,0x10]
+ vaddcuw 2, 3, 4
+# CHECK-BE: vaddsbs 2, 3, 4 # encoding: [0x10,0x43,0x23,0x00]
+# CHECK-LE: vaddsbs 2, 3, 4 # encoding: [0x00,0x23,0x43,0x10]
+ vaddsbs 2, 3, 4
+# CHECK-BE: vaddshs 2, 3, 4 # encoding: [0x10,0x43,0x23,0x40]
+# CHECK-LE: vaddshs 2, 3, 4 # encoding: [0x40,0x23,0x43,0x10]
+ vaddshs 2, 3, 4
+# CHECK-BE: vaddsws 2, 3, 4 # encoding: [0x10,0x43,0x23,0x80]
+# CHECK-LE: vaddsws 2, 3, 4 # encoding: [0x80,0x23,0x43,0x10]
+ vaddsws 2, 3, 4
+# CHECK-BE: vaddubm 2, 3, 4 # encoding: [0x10,0x43,0x20,0x00]
+# CHECK-LE: vaddubm 2, 3, 4 # encoding: [0x00,0x20,0x43,0x10]
+ vaddubm 2, 3, 4
+# CHECK-BE: vadduhm 2, 3, 4 # encoding: [0x10,0x43,0x20,0x40]
+# CHECK-LE: vadduhm 2, 3, 4 # encoding: [0x40,0x20,0x43,0x10]
+ vadduhm 2, 3, 4
+# CHECK-BE: vadduwm 2, 3, 4 # encoding: [0x10,0x43,0x20,0x80]
+# CHECK-LE: vadduwm 2, 3, 4 # encoding: [0x80,0x20,0x43,0x10]
+ vadduwm 2, 3, 4
+# CHECK-BE: vaddubs 2, 3, 4 # encoding: [0x10,0x43,0x22,0x00]
+# CHECK-LE: vaddubs 2, 3, 4 # encoding: [0x00,0x22,0x43,0x10]
+ vaddubs 2, 3, 4
+# CHECK-BE: vadduhs 2, 3, 4 # encoding: [0x10,0x43,0x22,0x40]
+# CHECK-LE: vadduhs 2, 3, 4 # encoding: [0x40,0x22,0x43,0x10]
+ vadduhs 2, 3, 4
+# CHECK-BE: vadduws 2, 3, 4 # encoding: [0x10,0x43,0x22,0x80]
+# CHECK-LE: vadduws 2, 3, 4 # encoding: [0x80,0x22,0x43,0x10]
+ vadduws 2, 3, 4
+
+# CHECK-BE: vsubcuw 2, 3, 4 # encoding: [0x10,0x43,0x25,0x80]
+# CHECK-LE: vsubcuw 2, 3, 4 # encoding: [0x80,0x25,0x43,0x10]
+ vsubcuw 2, 3, 4
+# CHECK-BE: vsubsbs 2, 3, 4 # encoding: [0x10,0x43,0x27,0x00]
+# CHECK-LE: vsubsbs 2, 3, 4 # encoding: [0x00,0x27,0x43,0x10]
+ vsubsbs 2, 3, 4
+# CHECK-BE: vsubshs 2, 3, 4 # encoding: [0x10,0x43,0x27,0x40]
+# CHECK-LE: vsubshs 2, 3, 4 # encoding: [0x40,0x27,0x43,0x10]
+ vsubshs 2, 3, 4
+# CHECK-BE: vsubsws 2, 3, 4 # encoding: [0x10,0x43,0x27,0x80]
+# CHECK-LE: vsubsws 2, 3, 4 # encoding: [0x80,0x27,0x43,0x10]
+ vsubsws 2, 3, 4
+# CHECK-BE: vsububm 2, 3, 4 # encoding: [0x10,0x43,0x24,0x00]
+# CHECK-LE: vsububm 2, 3, 4 # encoding: [0x00,0x24,0x43,0x10]
+ vsububm 2, 3, 4
+# CHECK-BE: vsubuhm 2, 3, 4 # encoding: [0x10,0x43,0x24,0x40]
+# CHECK-LE: vsubuhm 2, 3, 4 # encoding: [0x40,0x24,0x43,0x10]
+ vsubuhm 2, 3, 4
+# CHECK-BE: vsubuwm 2, 3, 4 # encoding: [0x10,0x43,0x24,0x80]
+# CHECK-LE: vsubuwm 2, 3, 4 # encoding: [0x80,0x24,0x43,0x10]
+ vsubuwm 2, 3, 4
+# CHECK-BE: vsububs 2, 3, 4 # encoding: [0x10,0x43,0x26,0x00]
+# CHECK-LE: vsububs 2, 3, 4 # encoding: [0x00,0x26,0x43,0x10]
+ vsububs 2, 3, 4
+# CHECK-BE: vsubuhs 2, 3, 4 # encoding: [0x10,0x43,0x26,0x40]
+# CHECK-LE: vsubuhs 2, 3, 4 # encoding: [0x40,0x26,0x43,0x10]
+ vsubuhs 2, 3, 4
+# CHECK-BE: vsubuws 2, 3, 4 # encoding: [0x10,0x43,0x26,0x80]
+# CHECK-LE: vsubuws 2, 3, 4 # encoding: [0x80,0x26,0x43,0x10]
+ vsubuws 2, 3, 4
+
+# CHECK-BE: vmulesb 2, 3, 4 # encoding: [0x10,0x43,0x23,0x08]
+# CHECK-LE: vmulesb 2, 3, 4 # encoding: [0x08,0x23,0x43,0x10]
+ vmulesb 2, 3, 4
+# CHECK-BE: vmulesh 2, 3, 4 # encoding: [0x10,0x43,0x23,0x48]
+# CHECK-LE: vmulesh 2, 3, 4 # encoding: [0x48,0x23,0x43,0x10]
+ vmulesh 2, 3, 4
+# CHECK-BE: vmuleub 2, 3, 4 # encoding: [0x10,0x43,0x22,0x08]
+# CHECK-LE: vmuleub 2, 3, 4 # encoding: [0x08,0x22,0x43,0x10]
+ vmuleub 2, 3, 4
+# CHECK-BE: vmuleuh 2, 3, 4 # encoding: [0x10,0x43,0x22,0x48]
+# CHECK-LE: vmuleuh 2, 3, 4 # encoding: [0x48,0x22,0x43,0x10]
+ vmuleuh 2, 3, 4
+# CHECK-BE: vmulosb 2, 3, 4 # encoding: [0x10,0x43,0x21,0x08]
+# CHECK-LE: vmulosb 2, 3, 4 # encoding: [0x08,0x21,0x43,0x10]
+ vmulosb 2, 3, 4
+# CHECK-BE: vmulosh 2, 3, 4 # encoding: [0x10,0x43,0x21,0x48]
+# CHECK-LE: vmulosh 2, 3, 4 # encoding: [0x48,0x21,0x43,0x10]
+ vmulosh 2, 3, 4
+# CHECK-BE: vmuloub 2, 3, 4 # encoding: [0x10,0x43,0x20,0x08]
+# CHECK-LE: vmuloub 2, 3, 4 # encoding: [0x08,0x20,0x43,0x10]
+ vmuloub 2, 3, 4
+# CHECK-BE: vmulouh 2, 3, 4 # encoding: [0x10,0x43,0x20,0x48]
+# CHECK-LE: vmulouh 2, 3, 4 # encoding: [0x48,0x20,0x43,0x10]
+ vmulouh 2, 3, 4
+
+# CHECK-BE: vmhaddshs 2, 3, 4, 5 # encoding: [0x10,0x43,0x21,0x60]
+# CHECK-LE: vmhaddshs 2, 3, 4, 5 # encoding: [0x60,0x21,0x43,0x10]
+ vmhaddshs 2, 3, 4, 5
+# CHECK-BE: vmhraddshs 2, 3, 4, 5 # encoding: [0x10,0x43,0x21,0x61]
+# CHECK-LE: vmhraddshs 2, 3, 4, 5 # encoding: [0x61,0x21,0x43,0x10]
+ vmhraddshs 2, 3, 4, 5
+# CHECK-BE: vmladduhm 2, 3, 4, 5 # encoding: [0x10,0x43,0x21,0x62]
+# CHECK-LE: vmladduhm 2, 3, 4, 5 # encoding: [0x62,0x21,0x43,0x10]
+ vmladduhm 2, 3, 4, 5
+# CHECK-BE: vmsumubm 2, 3, 4, 5 # encoding: [0x10,0x43,0x21,0x64]
+# CHECK-LE: vmsumubm 2, 3, 4, 5 # encoding: [0x64,0x21,0x43,0x10]
+ vmsumubm 2, 3, 4, 5
+# CHECK-BE: vmsummbm 2, 3, 4, 5 # encoding: [0x10,0x43,0x21,0x65]
+# CHECK-LE: vmsummbm 2, 3, 4, 5 # encoding: [0x65,0x21,0x43,0x10]
+ vmsummbm 2, 3, 4, 5
+# CHECK-BE: vmsumshm 2, 3, 4, 5 # encoding: [0x10,0x43,0x21,0x68]
+# CHECK-LE: vmsumshm 2, 3, 4, 5 # encoding: [0x68,0x21,0x43,0x10]
+ vmsumshm 2, 3, 4, 5
+# CHECK-BE: vmsumshs 2, 3, 4, 5 # encoding: [0x10,0x43,0x21,0x69]
+# CHECK-LE: vmsumshs 2, 3, 4, 5 # encoding: [0x69,0x21,0x43,0x10]
+ vmsumshs 2, 3, 4, 5
+# CHECK-BE: vmsumuhm 2, 3, 4, 5 # encoding: [0x10,0x43,0x21,0x66]
+# CHECK-LE: vmsumuhm 2, 3, 4, 5 # encoding: [0x66,0x21,0x43,0x10]
+ vmsumuhm 2, 3, 4, 5
+# CHECK-BE: vmsumuhs 2, 3, 4, 5 # encoding: [0x10,0x43,0x21,0x67]
+# CHECK-LE: vmsumuhs 2, 3, 4, 5 # encoding: [0x67,0x21,0x43,0x10]
+ vmsumuhs 2, 3, 4, 5
+
+# CHECK-BE: vsumsws 2, 3, 4 # encoding: [0x10,0x43,0x27,0x88]
+# CHECK-LE: vsumsws 2, 3, 4 # encoding: [0x88,0x27,0x43,0x10]
+ vsumsws 2, 3, 4
+# CHECK-BE: vsum2sws 2, 3, 4 # encoding: [0x10,0x43,0x26,0x88]
+# CHECK-LE: vsum2sws 2, 3, 4 # encoding: [0x88,0x26,0x43,0x10]
+ vsum2sws 2, 3, 4
+# CHECK-BE: vsum4sbs 2, 3, 4 # encoding: [0x10,0x43,0x27,0x08]
+# CHECK-LE: vsum4sbs 2, 3, 4 # encoding: [0x08,0x27,0x43,0x10]
+ vsum4sbs 2, 3, 4
+# CHECK-BE: vsum4shs 2, 3, 4 # encoding: [0x10,0x43,0x26,0x48]
+# CHECK-LE: vsum4shs 2, 3, 4 # encoding: [0x48,0x26,0x43,0x10]
+ vsum4shs 2, 3, 4
+# CHECK-BE: vsum4ubs 2, 3, 4 # encoding: [0x10,0x43,0x26,0x08]
+# CHECK-LE: vsum4ubs 2, 3, 4 # encoding: [0x08,0x26,0x43,0x10]
+ vsum4ubs 2, 3, 4
+
+# CHECK-BE: vavgsb 2, 3, 4 # encoding: [0x10,0x43,0x25,0x02]
+# CHECK-LE: vavgsb 2, 3, 4 # encoding: [0x02,0x25,0x43,0x10]
+ vavgsb 2, 3, 4
+# CHECK-BE: vavgsh 2, 3, 4 # encoding: [0x10,0x43,0x25,0x42]
+# CHECK-LE: vavgsh 2, 3, 4 # encoding: [0x42,0x25,0x43,0x10]
+ vavgsh 2, 3, 4
+# CHECK-BE: vavgsw 2, 3, 4 # encoding: [0x10,0x43,0x25,0x82]
+# CHECK-LE: vavgsw 2, 3, 4 # encoding: [0x82,0x25,0x43,0x10]
+ vavgsw 2, 3, 4
+# CHECK-BE: vavgub 2, 3, 4 # encoding: [0x10,0x43,0x24,0x02]
+# CHECK-LE: vavgub 2, 3, 4 # encoding: [0x02,0x24,0x43,0x10]
+ vavgub 2, 3, 4
+# CHECK-BE: vavguh 2, 3, 4 # encoding: [0x10,0x43,0x24,0x42]
+# CHECK-LE: vavguh 2, 3, 4 # encoding: [0x42,0x24,0x43,0x10]
+ vavguh 2, 3, 4
+# CHECK-BE: vavguw 2, 3, 4 # encoding: [0x10,0x43,0x24,0x82]
+# CHECK-LE: vavguw 2, 3, 4 # encoding: [0x82,0x24,0x43,0x10]
+ vavguw 2, 3, 4
+
+# CHECK-BE: vmaxsb 2, 3, 4 # encoding: [0x10,0x43,0x21,0x02]
+# CHECK-LE: vmaxsb 2, 3, 4 # encoding: [0x02,0x21,0x43,0x10]
+ vmaxsb 2, 3, 4
+# CHECK-BE: vmaxsh 2, 3, 4 # encoding: [0x10,0x43,0x21,0x42]
+# CHECK-LE: vmaxsh 2, 3, 4 # encoding: [0x42,0x21,0x43,0x10]
+ vmaxsh 2, 3, 4
+# CHECK-BE: vmaxsw 2, 3, 4 # encoding: [0x10,0x43,0x21,0x82]
+# CHECK-LE: vmaxsw 2, 3, 4 # encoding: [0x82,0x21,0x43,0x10]
+ vmaxsw 2, 3, 4
+# CHECK-BE: vmaxub 2, 3, 4 # encoding: [0x10,0x43,0x20,0x02]
+# CHECK-LE: vmaxub 2, 3, 4 # encoding: [0x02,0x20,0x43,0x10]
+ vmaxub 2, 3, 4
+# CHECK-BE: vmaxuh 2, 3, 4 # encoding: [0x10,0x43,0x20,0x42]
+# CHECK-LE: vmaxuh 2, 3, 4 # encoding: [0x42,0x20,0x43,0x10]
+ vmaxuh 2, 3, 4
+# CHECK-BE: vmaxuw 2, 3, 4 # encoding: [0x10,0x43,0x20,0x82]
+# CHECK-LE: vmaxuw 2, 3, 4 # encoding: [0x82,0x20,0x43,0x10]
+ vmaxuw 2, 3, 4
+
+# CHECK-BE: vminsb 2, 3, 4 # encoding: [0x10,0x43,0x23,0x02]
+# CHECK-LE: vminsb 2, 3, 4 # encoding: [0x02,0x23,0x43,0x10]
+ vminsb 2, 3, 4
+# CHECK-BE: vminsh 2, 3, 4 # encoding: [0x10,0x43,0x23,0x42]
+# CHECK-LE: vminsh 2, 3, 4 # encoding: [0x42,0x23,0x43,0x10]
+ vminsh 2, 3, 4
+# CHECK-BE: vminsw 2, 3, 4 # encoding: [0x10,0x43,0x23,0x82]
+# CHECK-LE: vminsw 2, 3, 4 # encoding: [0x82,0x23,0x43,0x10]
+ vminsw 2, 3, 4
+# CHECK-BE: vminub 2, 3, 4 # encoding: [0x10,0x43,0x22,0x02]
+# CHECK-LE: vminub 2, 3, 4 # encoding: [0x02,0x22,0x43,0x10]
+ vminub 2, 3, 4
+# CHECK-BE: vminuh 2, 3, 4 # encoding: [0x10,0x43,0x22,0x42]
+# CHECK-LE: vminuh 2, 3, 4 # encoding: [0x42,0x22,0x43,0x10]
+ vminuh 2, 3, 4
+# CHECK-BE: vminuw 2, 3, 4 # encoding: [0x10,0x43,0x22,0x82]
+# CHECK-LE: vminuw 2, 3, 4 # encoding: [0x82,0x22,0x43,0x10]
+ vminuw 2, 3, 4
# Vector integer compare instructions
-# CHECK: vcmpequb 2, 3, 4 # encoding: [0x10,0x43,0x20,0x06]
- vcmpequb 2, 3, 4
-# CHECK: vcmpequb. 2, 3, 4 # encoding: [0x10,0x43,0x24,0x06]
- vcmpequb. 2, 3, 4
-# CHECK: vcmpequh 2, 3, 4 # encoding: [0x10,0x43,0x20,0x46]
- vcmpequh 2, 3, 4
-# CHECK: vcmpequh. 2, 3, 4 # encoding: [0x10,0x43,0x24,0x46]
- vcmpequh. 2, 3, 4
-# CHECK: vcmpequw 2, 3, 4 # encoding: [0x10,0x43,0x20,0x86]
- vcmpequw 2, 3, 4
-# CHECK: vcmpequw. 2, 3, 4 # encoding: [0x10,0x43,0x24,0x86]
- vcmpequw. 2, 3, 4
-# CHECK: vcmpgtsb 2, 3, 4 # encoding: [0x10,0x43,0x23,0x06]
- vcmpgtsb 2, 3, 4
-# CHECK: vcmpgtsb. 2, 3, 4 # encoding: [0x10,0x43,0x27,0x06]
- vcmpgtsb. 2, 3, 4
-# CHECK: vcmpgtsh 2, 3, 4 # encoding: [0x10,0x43,0x23,0x46]
- vcmpgtsh 2, 3, 4
-# CHECK: vcmpgtsh. 2, 3, 4 # encoding: [0x10,0x43,0x27,0x46]
- vcmpgtsh. 2, 3, 4
-# CHECK: vcmpgtsw 2, 3, 4 # encoding: [0x10,0x43,0x23,0x86]
- vcmpgtsw 2, 3, 4
-# CHECK: vcmpgtsw. 2, 3, 4 # encoding: [0x10,0x43,0x27,0x86]
- vcmpgtsw. 2, 3, 4
-# CHECK: vcmpgtub 2, 3, 4 # encoding: [0x10,0x43,0x22,0x06]
- vcmpgtub 2, 3, 4
-# CHECK: vcmpgtub. 2, 3, 4 # encoding: [0x10,0x43,0x26,0x06]
- vcmpgtub. 2, 3, 4
-# CHECK: vcmpgtuh 2, 3, 4 # encoding: [0x10,0x43,0x22,0x46]
- vcmpgtuh 2, 3, 4
-# CHECK: vcmpgtuh. 2, 3, 4 # encoding: [0x10,0x43,0x26,0x46]
- vcmpgtuh. 2, 3, 4
-# CHECK: vcmpgtuw 2, 3, 4 # encoding: [0x10,0x43,0x22,0x86]
- vcmpgtuw 2, 3, 4
-# CHECK: vcmpgtuw. 2, 3, 4 # encoding: [0x10,0x43,0x26,0x86]
- vcmpgtuw. 2, 3, 4
+# CHECK-BE: vcmpequb 2, 3, 4 # encoding: [0x10,0x43,0x20,0x06]
+# CHECK-LE: vcmpequb 2, 3, 4 # encoding: [0x06,0x20,0x43,0x10]
+ vcmpequb 2, 3, 4
+# CHECK-BE: vcmpequb. 2, 3, 4 # encoding: [0x10,0x43,0x24,0x06]
+# CHECK-LE: vcmpequb. 2, 3, 4 # encoding: [0x06,0x24,0x43,0x10]
+ vcmpequb. 2, 3, 4
+# CHECK-BE: vcmpequh 2, 3, 4 # encoding: [0x10,0x43,0x20,0x46]
+# CHECK-LE: vcmpequh 2, 3, 4 # encoding: [0x46,0x20,0x43,0x10]
+ vcmpequh 2, 3, 4
+# CHECK-BE: vcmpequh. 2, 3, 4 # encoding: [0x10,0x43,0x24,0x46]
+# CHECK-LE: vcmpequh. 2, 3, 4 # encoding: [0x46,0x24,0x43,0x10]
+ vcmpequh. 2, 3, 4
+# CHECK-BE: vcmpequw 2, 3, 4 # encoding: [0x10,0x43,0x20,0x86]
+# CHECK-LE: vcmpequw 2, 3, 4 # encoding: [0x86,0x20,0x43,0x10]
+ vcmpequw 2, 3, 4
+# CHECK-BE: vcmpequw. 2, 3, 4 # encoding: [0x10,0x43,0x24,0x86]
+# CHECK-LE: vcmpequw. 2, 3, 4 # encoding: [0x86,0x24,0x43,0x10]
+ vcmpequw. 2, 3, 4
+# CHECK-BE: vcmpgtsb 2, 3, 4 # encoding: [0x10,0x43,0x23,0x06]
+# CHECK-LE: vcmpgtsb 2, 3, 4 # encoding: [0x06,0x23,0x43,0x10]
+ vcmpgtsb 2, 3, 4
+# CHECK-BE: vcmpgtsb. 2, 3, 4 # encoding: [0x10,0x43,0x27,0x06]
+# CHECK-LE: vcmpgtsb. 2, 3, 4 # encoding: [0x06,0x27,0x43,0x10]
+ vcmpgtsb. 2, 3, 4
+# CHECK-BE: vcmpgtsh 2, 3, 4 # encoding: [0x10,0x43,0x23,0x46]
+# CHECK-LE: vcmpgtsh 2, 3, 4 # encoding: [0x46,0x23,0x43,0x10]
+ vcmpgtsh 2, 3, 4
+# CHECK-BE: vcmpgtsh. 2, 3, 4 # encoding: [0x10,0x43,0x27,0x46]
+# CHECK-LE: vcmpgtsh. 2, 3, 4 # encoding: [0x46,0x27,0x43,0x10]
+ vcmpgtsh. 2, 3, 4
+# CHECK-BE: vcmpgtsw 2, 3, 4 # encoding: [0x10,0x43,0x23,0x86]
+# CHECK-LE: vcmpgtsw 2, 3, 4 # encoding: [0x86,0x23,0x43,0x10]
+ vcmpgtsw 2, 3, 4
+# CHECK-BE: vcmpgtsw. 2, 3, 4 # encoding: [0x10,0x43,0x27,0x86]
+# CHECK-LE: vcmpgtsw. 2, 3, 4 # encoding: [0x86,0x27,0x43,0x10]
+ vcmpgtsw. 2, 3, 4
+# CHECK-BE: vcmpgtub 2, 3, 4 # encoding: [0x10,0x43,0x22,0x06]
+# CHECK-LE: vcmpgtub 2, 3, 4 # encoding: [0x06,0x22,0x43,0x10]
+ vcmpgtub 2, 3, 4
+# CHECK-BE: vcmpgtub. 2, 3, 4 # encoding: [0x10,0x43,0x26,0x06]
+# CHECK-LE: vcmpgtub. 2, 3, 4 # encoding: [0x06,0x26,0x43,0x10]
+ vcmpgtub. 2, 3, 4
+# CHECK-BE: vcmpgtuh 2, 3, 4 # encoding: [0x10,0x43,0x22,0x46]
+# CHECK-LE: vcmpgtuh 2, 3, 4 # encoding: [0x46,0x22,0x43,0x10]
+ vcmpgtuh 2, 3, 4
+# CHECK-BE: vcmpgtuh. 2, 3, 4 # encoding: [0x10,0x43,0x26,0x46]
+# CHECK-LE: vcmpgtuh. 2, 3, 4 # encoding: [0x46,0x26,0x43,0x10]
+ vcmpgtuh. 2, 3, 4
+# CHECK-BE: vcmpgtuw 2, 3, 4 # encoding: [0x10,0x43,0x22,0x86]
+# CHECK-LE: vcmpgtuw 2, 3, 4 # encoding: [0x86,0x22,0x43,0x10]
+ vcmpgtuw 2, 3, 4
+# CHECK-BE: vcmpgtuw. 2, 3, 4 # encoding: [0x10,0x43,0x26,0x86]
+# CHECK-LE: vcmpgtuw. 2, 3, 4 # encoding: [0x86,0x26,0x43,0x10]
+ vcmpgtuw. 2, 3, 4
# Vector integer logical instructions
-# CHECK: vand 2, 3, 4 # encoding: [0x10,0x43,0x24,0x04]
- vand 2, 3, 4
-# CHECK: vandc 2, 3, 4 # encoding: [0x10,0x43,0x24,0x44]
- vandc 2, 3, 4
-# CHECK: vnor 2, 3, 4 # encoding: [0x10,0x43,0x25,0x04]
- vnor 2, 3, 4
-# CHECK: vor 2, 3, 4 # encoding: [0x10,0x43,0x24,0x84]
- vor 2, 3, 4
-# CHECK: vxor 2, 3, 4 # encoding: [0x10,0x43,0x24,0xc4]
- vxor 2, 3, 4
+# CHECK-BE: vand 2, 3, 4 # encoding: [0x10,0x43,0x24,0x04]
+# CHECK-LE: vand 2, 3, 4 # encoding: [0x04,0x24,0x43,0x10]
+ vand 2, 3, 4
+# CHECK-BE: vandc 2, 3, 4 # encoding: [0x10,0x43,0x24,0x44]
+# CHECK-LE: vandc 2, 3, 4 # encoding: [0x44,0x24,0x43,0x10]
+ vandc 2, 3, 4
+# CHECK-BE: vnor 2, 3, 4 # encoding: [0x10,0x43,0x25,0x04]
+# CHECK-LE: vnor 2, 3, 4 # encoding: [0x04,0x25,0x43,0x10]
+ vnor 2, 3, 4
+# CHECK-BE: vor 2, 3, 4 # encoding: [0x10,0x43,0x24,0x84]
+# CHECK-LE: vor 2, 3, 4 # encoding: [0x84,0x24,0x43,0x10]
+ vor 2, 3, 4
+# CHECK-BE: vxor 2, 3, 4 # encoding: [0x10,0x43,0x24,0xc4]
+# CHECK-LE: vxor 2, 3, 4 # encoding: [0xc4,0x24,0x43,0x10]
+ vxor 2, 3, 4
# Vector integer rotate and shift instructions
-# CHECK: vrlb 2, 3, 4 # encoding: [0x10,0x43,0x20,0x04]
- vrlb 2, 3, 4
-# CHECK: vrlh 2, 3, 4 # encoding: [0x10,0x43,0x20,0x44]
- vrlh 2, 3, 4
-# CHECK: vrlw 2, 3, 4 # encoding: [0x10,0x43,0x20,0x84]
- vrlw 2, 3, 4
-
-# CHECK: vslb 2, 3, 4 # encoding: [0x10,0x43,0x21,0x04]
- vslb 2, 3, 4
-# CHECK: vslh 2, 3, 4 # encoding: [0x10,0x43,0x21,0x44]
- vslh 2, 3, 4
-# CHECK: vslw 2, 3, 4 # encoding: [0x10,0x43,0x21,0x84]
- vslw 2, 3, 4
-# CHECK: vsrb 2, 3, 4 # encoding: [0x10,0x43,0x22,0x04]
- vsrb 2, 3, 4
-# CHECK: vsrh 2, 3, 4 # encoding: [0x10,0x43,0x22,0x44]
- vsrh 2, 3, 4
-# CHECK: vsrw 2, 3, 4 # encoding: [0x10,0x43,0x22,0x84]
- vsrw 2, 3, 4
-# CHECK: vsrab 2, 3, 4 # encoding: [0x10,0x43,0x23,0x04]
- vsrab 2, 3, 4
-# CHECK: vsrah 2, 3, 4 # encoding: [0x10,0x43,0x23,0x44]
- vsrah 2, 3, 4
-# CHECK: vsraw 2, 3, 4 # encoding: [0x10,0x43,0x23,0x84]
- vsraw 2, 3, 4
+# CHECK-BE: vrlb 2, 3, 4 # encoding: [0x10,0x43,0x20,0x04]
+# CHECK-LE: vrlb 2, 3, 4 # encoding: [0x04,0x20,0x43,0x10]
+ vrlb 2, 3, 4
+# CHECK-BE: vrlh 2, 3, 4 # encoding: [0x10,0x43,0x20,0x44]
+# CHECK-LE: vrlh 2, 3, 4 # encoding: [0x44,0x20,0x43,0x10]
+ vrlh 2, 3, 4
+# CHECK-BE: vrlw 2, 3, 4 # encoding: [0x10,0x43,0x20,0x84]
+# CHECK-LE: vrlw 2, 3, 4 # encoding: [0x84,0x20,0x43,0x10]
+ vrlw 2, 3, 4
+
+# CHECK-BE: vslb 2, 3, 4 # encoding: [0x10,0x43,0x21,0x04]
+# CHECK-LE: vslb 2, 3, 4 # encoding: [0x04,0x21,0x43,0x10]
+ vslb 2, 3, 4
+# CHECK-BE: vslh 2, 3, 4 # encoding: [0x10,0x43,0x21,0x44]
+# CHECK-LE: vslh 2, 3, 4 # encoding: [0x44,0x21,0x43,0x10]
+ vslh 2, 3, 4
+# CHECK-BE: vslw 2, 3, 4 # encoding: [0x10,0x43,0x21,0x84]
+# CHECK-LE: vslw 2, 3, 4 # encoding: [0x84,0x21,0x43,0x10]
+ vslw 2, 3, 4
+# CHECK-BE: vsrb 2, 3, 4 # encoding: [0x10,0x43,0x22,0x04]
+# CHECK-LE: vsrb 2, 3, 4 # encoding: [0x04,0x22,0x43,0x10]
+ vsrb 2, 3, 4
+# CHECK-BE: vsrh 2, 3, 4 # encoding: [0x10,0x43,0x22,0x44]
+# CHECK-LE: vsrh 2, 3, 4 # encoding: [0x44,0x22,0x43,0x10]
+ vsrh 2, 3, 4
+# CHECK-BE: vsrw 2, 3, 4 # encoding: [0x10,0x43,0x22,0x84]
+# CHECK-LE: vsrw 2, 3, 4 # encoding: [0x84,0x22,0x43,0x10]
+ vsrw 2, 3, 4
+# CHECK-BE: vsrab 2, 3, 4 # encoding: [0x10,0x43,0x23,0x04]
+# CHECK-LE: vsrab 2, 3, 4 # encoding: [0x04,0x23,0x43,0x10]
+ vsrab 2, 3, 4
+# CHECK-BE: vsrah 2, 3, 4 # encoding: [0x10,0x43,0x23,0x44]
+# CHECK-LE: vsrah 2, 3, 4 # encoding: [0x44,0x23,0x43,0x10]
+ vsrah 2, 3, 4
+# CHECK-BE: vsraw 2, 3, 4 # encoding: [0x10,0x43,0x23,0x84]
+# CHECK-LE: vsraw 2, 3, 4 # encoding: [0x84,0x23,0x43,0x10]
+ vsraw 2, 3, 4
# Vector floating-point instructions
-# CHECK: vaddfp 2, 3, 4 # encoding: [0x10,0x43,0x20,0x0a]
- vaddfp 2, 3, 4
-# CHECK: vsubfp 2, 3, 4 # encoding: [0x10,0x43,0x20,0x4a]
- vsubfp 2, 3, 4
-# CHECK: vmaddfp 2, 3, 4, 5 # encoding: [0x10,0x43,0x29,0x2e]
- vmaddfp 2, 3, 4, 5
-# CHECK: vnmsubfp 2, 3, 4, 5 # encoding: [0x10,0x43,0x29,0x2f]
- vnmsubfp 2, 3, 4, 5
-
-# CHECK: vmaxfp 2, 3, 4 # encoding: [0x10,0x43,0x24,0x0a]
- vmaxfp 2, 3, 4
-# CHECK: vminfp 2, 3, 4 # encoding: [0x10,0x43,0x24,0x4a]
- vminfp 2, 3, 4
-
-# CHECK: vctsxs 2, 3, 4 # encoding: [0x10,0x44,0x1b,0xca]
- vctsxs 2, 3, 4
-# CHECK: vctuxs 2, 3, 4 # encoding: [0x10,0x44,0x1b,0x8a]
- vctuxs 2, 3, 4
-# CHECK: vcfsx 2, 3, 4 # encoding: [0x10,0x44,0x1b,0x4a]
- vcfsx 2, 3, 4
-# CHECK: vcfux 2, 3, 4 # encoding: [0x10,0x44,0x1b,0x0a]
- vcfux 2, 3, 4
-# CHECK: vrfim 2, 3 # encoding: [0x10,0x40,0x1a,0xca]
- vrfim 2, 3
-# CHECK: vrfin 2, 3 # encoding: [0x10,0x40,0x1a,0x0a]
- vrfin 2, 3
-# CHECK: vrfip 2, 3 # encoding: [0x10,0x40,0x1a,0x8a]
- vrfip 2, 3
-# CHECK: vrfiz 2, 3 # encoding: [0x10,0x40,0x1a,0x4a]
- vrfiz 2, 3
-
-# CHECK: vcmpbfp 2, 3, 4 # encoding: [0x10,0x43,0x23,0xc6]
- vcmpbfp 2, 3, 4
-# CHECK: vcmpbfp. 2, 3, 4 # encoding: [0x10,0x43,0x27,0xc6]
- vcmpbfp. 2, 3, 4
-# CHECK: vcmpeqfp 2, 3, 4 # encoding: [0x10,0x43,0x20,0xc6]
- vcmpeqfp 2, 3, 4
-# CHECK: vcmpeqfp. 2, 3, 4 # encoding: [0x10,0x43,0x24,0xc6]
- vcmpeqfp. 2, 3, 4
-# CHECK: vcmpgefp 2, 3, 4 # encoding: [0x10,0x43,0x21,0xc6]
- vcmpgefp 2, 3, 4
-# CHECK: vcmpgefp. 2, 3, 4 # encoding: [0x10,0x43,0x25,0xc6]
- vcmpgefp. 2, 3, 4
-# CHECK: vcmpgtfp 2, 3, 4 # encoding: [0x10,0x43,0x22,0xc6]
- vcmpgtfp 2, 3, 4
-# CHECK: vcmpgtfp. 2, 3, 4 # encoding: [0x10,0x43,0x26,0xc6]
- vcmpgtfp. 2, 3, 4
-
-# CHECK: vexptefp 2, 3 # encoding: [0x10,0x40,0x19,0x8a]
- vexptefp 2, 3
-# CHECK: vlogefp 2, 3 # encoding: [0x10,0x40,0x19,0xca]
- vlogefp 2, 3
-# CHECK: vrefp 2, 3 # encoding: [0x10,0x40,0x19,0x0a]
- vrefp 2, 3
-# CHECK: vrsqrtefp 2, 3 # encoding: [0x10,0x40,0x19,0x4a]
- vrsqrtefp 2, 3
+# CHECK-BE: vaddfp 2, 3, 4 # encoding: [0x10,0x43,0x20,0x0a]
+# CHECK-LE: vaddfp 2, 3, 4 # encoding: [0x0a,0x20,0x43,0x10]
+ vaddfp 2, 3, 4
+# CHECK-BE: vsubfp 2, 3, 4 # encoding: [0x10,0x43,0x20,0x4a]
+# CHECK-LE: vsubfp 2, 3, 4 # encoding: [0x4a,0x20,0x43,0x10]
+ vsubfp 2, 3, 4
+# CHECK-BE: vmaddfp 2, 3, 4, 5 # encoding: [0x10,0x43,0x29,0x2e]
+# CHECK-LE: vmaddfp 2, 3, 4, 5 # encoding: [0x2e,0x29,0x43,0x10]
+ vmaddfp 2, 3, 4, 5
+# CHECK-BE: vnmsubfp 2, 3, 4, 5 # encoding: [0x10,0x43,0x29,0x2f]
+# CHECK-LE: vnmsubfp 2, 3, 4, 5 # encoding: [0x2f,0x29,0x43,0x10]
+ vnmsubfp 2, 3, 4, 5
+
+# CHECK-BE: vmaxfp 2, 3, 4 # encoding: [0x10,0x43,0x24,0x0a]
+# CHECK-LE: vmaxfp 2, 3, 4 # encoding: [0x0a,0x24,0x43,0x10]
+ vmaxfp 2, 3, 4
+# CHECK-BE: vminfp 2, 3, 4 # encoding: [0x10,0x43,0x24,0x4a]
+# CHECK-LE: vminfp 2, 3, 4 # encoding: [0x4a,0x24,0x43,0x10]
+ vminfp 2, 3, 4
+
+# CHECK-BE: vctsxs 2, 3, 4 # encoding: [0x10,0x44,0x1b,0xca]
+# CHECK-LE: vctsxs 2, 3, 4 # encoding: [0xca,0x1b,0x44,0x10]
+ vctsxs 2, 3, 4
+# CHECK-BE: vctuxs 2, 3, 4 # encoding: [0x10,0x44,0x1b,0x8a]
+# CHECK-LE: vctuxs 2, 3, 4 # encoding: [0x8a,0x1b,0x44,0x10]
+ vctuxs 2, 3, 4
+# CHECK-BE: vcfsx 2, 3, 4 # encoding: [0x10,0x44,0x1b,0x4a]
+# CHECK-LE: vcfsx 2, 3, 4 # encoding: [0x4a,0x1b,0x44,0x10]
+ vcfsx 2, 3, 4
+# CHECK-BE: vcfux 2, 3, 4 # encoding: [0x10,0x44,0x1b,0x0a]
+# CHECK-LE: vcfux 2, 3, 4 # encoding: [0x0a,0x1b,0x44,0x10]
+ vcfux 2, 3, 4
+# CHECK-BE: vrfim 2, 3 # encoding: [0x10,0x40,0x1a,0xca]
+# CHECK-LE: vrfim 2, 3 # encoding: [0xca,0x1a,0x40,0x10]
+ vrfim 2, 3
+# CHECK-BE: vrfin 2, 3 # encoding: [0x10,0x40,0x1a,0x0a]
+# CHECK-LE: vrfin 2, 3 # encoding: [0x0a,0x1a,0x40,0x10]
+ vrfin 2, 3
+# CHECK-BE: vrfip 2, 3 # encoding: [0x10,0x40,0x1a,0x8a]
+# CHECK-LE: vrfip 2, 3 # encoding: [0x8a,0x1a,0x40,0x10]
+ vrfip 2, 3
+# CHECK-BE: vrfiz 2, 3 # encoding: [0x10,0x40,0x1a,0x4a]
+# CHECK-LE: vrfiz 2, 3 # encoding: [0x4a,0x1a,0x40,0x10]
+ vrfiz 2, 3
+
+# CHECK-BE: vcmpbfp 2, 3, 4 # encoding: [0x10,0x43,0x23,0xc6]
+# CHECK-LE: vcmpbfp 2, 3, 4 # encoding: [0xc6,0x23,0x43,0x10]
+ vcmpbfp 2, 3, 4
+# CHECK-BE: vcmpbfp. 2, 3, 4 # encoding: [0x10,0x43,0x27,0xc6]
+# CHECK-LE: vcmpbfp. 2, 3, 4 # encoding: [0xc6,0x27,0x43,0x10]
+ vcmpbfp. 2, 3, 4
+# CHECK-BE: vcmpeqfp 2, 3, 4 # encoding: [0x10,0x43,0x20,0xc6]
+# CHECK-LE: vcmpeqfp 2, 3, 4 # encoding: [0xc6,0x20,0x43,0x10]
+ vcmpeqfp 2, 3, 4
+# CHECK-BE: vcmpeqfp. 2, 3, 4 # encoding: [0x10,0x43,0x24,0xc6]
+# CHECK-LE: vcmpeqfp. 2, 3, 4 # encoding: [0xc6,0x24,0x43,0x10]
+ vcmpeqfp. 2, 3, 4
+# CHECK-BE: vcmpgefp 2, 3, 4 # encoding: [0x10,0x43,0x21,0xc6]
+# CHECK-LE: vcmpgefp 2, 3, 4 # encoding: [0xc6,0x21,0x43,0x10]
+ vcmpgefp 2, 3, 4
+# CHECK-BE: vcmpgefp. 2, 3, 4 # encoding: [0x10,0x43,0x25,0xc6]
+# CHECK-LE: vcmpgefp. 2, 3, 4 # encoding: [0xc6,0x25,0x43,0x10]
+ vcmpgefp. 2, 3, 4
+# CHECK-BE: vcmpgtfp 2, 3, 4 # encoding: [0x10,0x43,0x22,0xc6]
+# CHECK-LE: vcmpgtfp 2, 3, 4 # encoding: [0xc6,0x22,0x43,0x10]
+ vcmpgtfp 2, 3, 4
+# CHECK-BE: vcmpgtfp. 2, 3, 4 # encoding: [0x10,0x43,0x26,0xc6]
+# CHECK-LE: vcmpgtfp. 2, 3, 4 # encoding: [0xc6,0x26,0x43,0x10]
+ vcmpgtfp. 2, 3, 4
+
+# CHECK-BE: vexptefp 2, 3 # encoding: [0x10,0x40,0x19,0x8a]
+# CHECK-LE: vexptefp 2, 3 # encoding: [0x8a,0x19,0x40,0x10]
+ vexptefp 2, 3
+# CHECK-BE: vlogefp 2, 3 # encoding: [0x10,0x40,0x19,0xca]
+# CHECK-LE: vlogefp 2, 3 # encoding: [0xca,0x19,0x40,0x10]
+ vlogefp 2, 3
+# CHECK-BE: vrefp 2, 3 # encoding: [0x10,0x40,0x19,0x0a]
+# CHECK-LE: vrefp 2, 3 # encoding: [0x0a,0x19,0x40,0x10]
+ vrefp 2, 3
+# CHECK-BE: vrsqrtefp 2, 3 # encoding: [0x10,0x40,0x19,0x4a]
+# CHECK-LE: vrsqrtefp 2, 3 # encoding: [0x4a,0x19,0x40,0x10]
+ vrsqrtefp 2, 3
# Vector status and control register instructions
-# CHECK: mtvscr 2 # encoding: [0x10,0x00,0x16,0x44]
- mtvscr 2
-# CHECK: mfvscr 2 # encoding: [0x10,0x40,0x06,0x04]
- mfvscr 2
+# CHECK-BE: mtvscr 2 # encoding: [0x10,0x00,0x16,0x44]
+# CHECK-LE: mtvscr 2 # encoding: [0x44,0x16,0x00,0x10]
+ mtvscr 2
+# CHECK-BE: mfvscr 2 # encoding: [0x10,0x40,0x06,0x04]
+# CHECK-LE: mfvscr 2 # encoding: [0x04,0x06,0x40,0x10]
+ mfvscr 2
diff --git a/test/MC/PowerPC/ppc64-encoding.s b/test/MC/PowerPC/ppc64-encoding.s
index d82d86f..4c3530d 100644
--- a/test/MC/PowerPC/ppc64-encoding.s
+++ b/test/MC/PowerPC/ppc64-encoding.s
@@ -1,551 +1,769 @@
-# RUN: llvm-mc -triple powerpc64-unknown-unknown --show-encoding %s | FileCheck %s
+# RUN: llvm-mc -triple powerpc64-unknown-unknown --show-encoding %s | FileCheck -check-prefix=CHECK-BE %s
+# RUN: llvm-mc -triple powerpc64le-unknown-unknown --show-encoding %s | FileCheck -check-prefix=CHECK-LE %s
# Branch facility
# Branch instructions
-# CHECK: b target # encoding: [0b010010AA,A,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_br24
- b target
-# CHECK: ba target # encoding: [0b010010AA,A,A,0bAAAAAA10]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_br24abs
- ba target
-# CHECK: bl target # encoding: [0b010010AA,A,A,0bAAAAAA01]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_br24
- bl target
-# CHECK: bla target # encoding: [0b010010AA,A,A,0bAAAAAA11]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_br24abs
- bla target
-
-# CHECK: bc 4, 10, target # encoding: [0x40,0x8a,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bc 4, 10, target
-# CHECK: bca 4, 10, target # encoding: [0x40,0x8a,A,0bAAAAAA10]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bca 4, 10, target
-# CHECK: bcl 4, 10, target # encoding: [0x40,0x8a,A,0bAAAAAA01]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
- bcl 4, 10, target
-# CHECK: bcla 4, 10, target # encoding: [0x40,0x8a,A,0bAAAAAA11]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
- bcla 4, 10, target
-
-# CHECK: bclr 4, 10, 3 # encoding: [0x4c,0x8a,0x18,0x20]
- bclr 4, 10, 3
-# CHECK: bclr 4, 10, 0 # encoding: [0x4c,0x8a,0x00,0x20]
- bclr 4, 10
-# CHECK: bclrl 4, 10, 3 # encoding: [0x4c,0x8a,0x18,0x21]
- bclrl 4, 10, 3
-# CHECK: bclrl 4, 10, 0 # encoding: [0x4c,0x8a,0x00,0x21]
- bclrl 4, 10
-# CHECK: bcctr 4, 10, 3 # encoding: [0x4c,0x8a,0x1c,0x20]
- bcctr 4, 10, 3
-# CHECK: bcctr 4, 10, 0 # encoding: [0x4c,0x8a,0x04,0x20]
- bcctr 4, 10
-# CHECK: bcctrl 4, 10, 3 # encoding: [0x4c,0x8a,0x1c,0x21]
- bcctrl 4, 10, 3
-# CHECK: bcctrl 4, 10, 0 # encoding: [0x4c,0x8a,0x04,0x21]
- bcctrl 4, 10
+# CHECK-BE: b target # encoding: [0b010010AA,A,A,0bAAAAAA00]
+# CHECK-LE: b target # encoding: [0bAAAAAA00,A,A,0b010010AA]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_br24
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_br24
+ b target
+# CHECK-BE: ba target # encoding: [0b010010AA,A,A,0bAAAAAA10]
+# CHECK-LE: ba target # encoding: [0bAAAAAA10,A,A,0b010010AA]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_br24abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_br24abs
+ ba target
+# CHECK-BE: bl target # encoding: [0b010010AA,A,A,0bAAAAAA01]
+# CHECK-LE: bl target # encoding: [0bAAAAAA01,A,A,0b010010AA]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_br24
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_br24
+ bl target
+# CHECK-BE: bla target # encoding: [0b010010AA,A,A,0bAAAAAA11]
+# CHECK-LE: bla target # encoding: [0bAAAAAA11,A,A,0b010010AA]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_br24abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_br24abs
+ bla target
+
+# CHECK-BE: bc 4, 10, target # encoding: [0x40,0x8a,A,0bAAAAAA00]
+# CHECK-LE: bc 4, 10, target # encoding: [0bAAAAAA00,A,0x8a,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bc 4, 10, target
+# CHECK-BE: bca 4, 10, target # encoding: [0x40,0x8a,A,0bAAAAAA10]
+# CHECK-LE: bca 4, 10, target # encoding: [0bAAAAAA10,A,0x8a,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bca 4, 10, target
+# CHECK-BE: bcl 4, 10, target # encoding: [0x40,0x8a,A,0bAAAAAA01]
+# CHECK-LE: bcl 4, 10, target # encoding: [0bAAAAAA01,A,0x8a,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+ bcl 4, 10, target
+# CHECK-BE: bcla 4, 10, target # encoding: [0x40,0x8a,A,0bAAAAAA11]
+# CHECK-LE: bcla 4, 10, target # encoding: [0bAAAAAA11,A,0x8a,0x40]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+ bcla 4, 10, target
+
+# CHECK-BE: bclr 4, 10, 3 # encoding: [0x4c,0x8a,0x18,0x20]
+# CHECK-LE: bclr 4, 10, 3 # encoding: [0x20,0x18,0x8a,0x4c]
+ bclr 4, 10, 3
+# CHECK-BE: bclr 4, 10, 0 # encoding: [0x4c,0x8a,0x00,0x20]
+# CHECK-LE: bclr 4, 10, 0 # encoding: [0x20,0x00,0x8a,0x4c]
+ bclr 4, 10
+# CHECK-BE: bclrl 4, 10, 3 # encoding: [0x4c,0x8a,0x18,0x21]
+# CHECK-LE: bclrl 4, 10, 3 # encoding: [0x21,0x18,0x8a,0x4c]
+ bclrl 4, 10, 3
+# CHECK-BE: bclrl 4, 10, 0 # encoding: [0x4c,0x8a,0x00,0x21]
+# CHECK-LE: bclrl 4, 10, 0 # encoding: [0x21,0x00,0x8a,0x4c]
+ bclrl 4, 10
+# CHECK-BE: bcctr 4, 10, 3 # encoding: [0x4c,0x8a,0x1c,0x20]
+# CHECK-LE: bcctr 4, 10, 3 # encoding: [0x20,0x1c,0x8a,0x4c]
+ bcctr 4, 10, 3
+# CHECK-BE: bcctr 4, 10, 0 # encoding: [0x4c,0x8a,0x04,0x20]
+# CHECK-LE: bcctr 4, 10, 0 # encoding: [0x20,0x04,0x8a,0x4c]
+ bcctr 4, 10
+# CHECK-BE: bcctrl 4, 10, 3 # encoding: [0x4c,0x8a,0x1c,0x21]
+# CHECK-LE: bcctrl 4, 10, 3 # encoding: [0x21,0x1c,0x8a,0x4c]
+ bcctrl 4, 10, 3
+# CHECK-BE: bcctrl 4, 10, 0 # encoding: [0x4c,0x8a,0x04,0x21]
+# CHECK-LE: bcctrl 4, 10, 0 # encoding: [0x21,0x04,0x8a,0x4c]
+ bcctrl 4, 10
# Condition register instructions
-# CHECK: crand 2, 3, 4 # encoding: [0x4c,0x43,0x22,0x02]
- crand 2, 3, 4
-# CHECK: crnand 2, 3, 4 # encoding: [0x4c,0x43,0x21,0xc2]
- crnand 2, 3, 4
-# CHECK: cror 2, 3, 4 # encoding: [0x4c,0x43,0x23,0x82]
- cror 2, 3, 4
-# CHECK: crxor 2, 3, 4 # encoding: [0x4c,0x43,0x21,0x82]
- crxor 2, 3, 4
-# CHECK: crnor 2, 3, 4 # encoding: [0x4c,0x43,0x20,0x42]
- crnor 2, 3, 4
-# CHECK: creqv 2, 3, 4 # encoding: [0x4c,0x43,0x22,0x42]
- creqv 2, 3, 4
-# CHECK: crandc 2, 3, 4 # encoding: [0x4c,0x43,0x21,0x02]
- crandc 2, 3, 4
-# CHECK: crorc 2, 3, 4 # encoding: [0x4c,0x43,0x23,0x42]
- crorc 2, 3, 4
-# CHECK: mcrf 2, 3 # encoding: [0x4d,0x0c,0x00,0x00]
- mcrf 2, 3
+# CHECK-BE: crand 2, 3, 4 # encoding: [0x4c,0x43,0x22,0x02]
+# CHECK-LE: crand 2, 3, 4 # encoding: [0x02,0x22,0x43,0x4c]
+ crand 2, 3, 4
+# CHECK-BE: crnand 2, 3, 4 # encoding: [0x4c,0x43,0x21,0xc2]
+# CHECK-LE: crnand 2, 3, 4 # encoding: [0xc2,0x21,0x43,0x4c]
+ crnand 2, 3, 4
+# CHECK-BE: cror 2, 3, 4 # encoding: [0x4c,0x43,0x23,0x82]
+# CHECK-LE: cror 2, 3, 4 # encoding: [0x82,0x23,0x43,0x4c]
+ cror 2, 3, 4
+# CHECK-BE: crxor 2, 3, 4 # encoding: [0x4c,0x43,0x21,0x82]
+# CHECK-LE: crxor 2, 3, 4 # encoding: [0x82,0x21,0x43,0x4c]
+ crxor 2, 3, 4
+# CHECK-BE: crnor 2, 3, 4 # encoding: [0x4c,0x43,0x20,0x42]
+# CHECK-LE: crnor 2, 3, 4 # encoding: [0x42,0x20,0x43,0x4c]
+ crnor 2, 3, 4
+# CHECK-BE: creqv 2, 3, 4 # encoding: [0x4c,0x43,0x22,0x42]
+# CHECK-LE: creqv 2, 3, 4 # encoding: [0x42,0x22,0x43,0x4c]
+ creqv 2, 3, 4
+# CHECK-BE: crandc 2, 3, 4 # encoding: [0x4c,0x43,0x21,0x02]
+# CHECK-LE: crandc 2, 3, 4 # encoding: [0x02,0x21,0x43,0x4c]
+ crandc 2, 3, 4
+# CHECK-BE: crorc 2, 3, 4 # encoding: [0x4c,0x43,0x23,0x42]
+# CHECK-LE: crorc 2, 3, 4 # encoding: [0x42,0x23,0x43,0x4c]
+ crorc 2, 3, 4
+# CHECK-BE: mcrf 2, 3 # encoding: [0x4d,0x0c,0x00,0x00]
+# CHECK-LE: mcrf 2, 3 # encoding: [0x00,0x00,0x0c,0x4d]
+ mcrf 2, 3
# System call instruction
-# CHECK: sc 1 # encoding: [0x44,0x00,0x00,0x22]
- sc 1
-# CHECK: sc 0 # encoding: [0x44,0x00,0x00,0x02]
- sc
+# CHECK-BE: sc 1 # encoding: [0x44,0x00,0x00,0x22]
+# CHECK-LE: sc 1 # encoding: [0x22,0x00,0x00,0x44]
+ sc 1
+# CHECK-BE: sc 0 # encoding: [0x44,0x00,0x00,0x02]
+# CHECK-LE: sc 0 # encoding: [0x02,0x00,0x00,0x44]
+ sc
# Fixed-point facility
# Fixed-point load instructions
-# CHECK: lbz 2, 128(4) # encoding: [0x88,0x44,0x00,0x80]
- lbz 2, 128(4)
-# CHECK: lbzx 2, 3, 4 # encoding: [0x7c,0x43,0x20,0xae]
- lbzx 2, 3, 4
-# CHECK: lbzu 2, 128(4) # encoding: [0x8c,0x44,0x00,0x80]
- lbzu 2, 128(4)
-# CHECK: lbzux 2, 3, 4 # encoding: [0x7c,0x43,0x20,0xee]
- lbzux 2, 3, 4
-# CHECK: lhz 2, 128(4) # encoding: [0xa0,0x44,0x00,0x80]
- lhz 2, 128(4)
-# CHECK: lhzx 2, 3, 4 # encoding: [0x7c,0x43,0x22,0x2e]
- lhzx 2, 3, 4
-# CHECK: lhzu 2, 128(4) # encoding: [0xa4,0x44,0x00,0x80]
- lhzu 2, 128(4)
-# CHECK: lhzux 2, 3, 4 # encoding: [0x7c,0x43,0x22,0x6e]
- lhzux 2, 3, 4
-# CHECK: lha 2, 128(4) # encoding: [0xa8,0x44,0x00,0x80]
- lha 2, 128(4)
-# CHECK: lhax 2, 3, 4 # encoding: [0x7c,0x43,0x22,0xae]
- lhax 2, 3, 4
-# CHECK: lhau 2, 128(4) # encoding: [0xac,0x44,0x00,0x80]
- lhau 2, 128(4)
-# CHECK: lhaux 2, 3, 4 # encoding: [0x7c,0x43,0x22,0xee]
- lhaux 2, 3, 4
-# CHECK: lwz 2, 128(4) # encoding: [0x80,0x44,0x00,0x80]
- lwz 2, 128(4)
-# CHECK: lwzx 2, 3, 4 # encoding: [0x7c,0x43,0x20,0x2e]
- lwzx 2, 3, 4
-# CHECK: lwzu 2, 128(4) # encoding: [0x84,0x44,0x00,0x80]
- lwzu 2, 128(4)
-# CHECK: lwzux 2, 3, 4 # encoding: [0x7c,0x43,0x20,0x6e]
- lwzux 2, 3, 4
-# CHECK: lwa 2, 128(4) # encoding: [0xe8,0x44,0x00,0x82]
- lwa 2, 128(4)
-# CHECK: lwax 2, 3, 4 # encoding: [0x7c,0x43,0x22,0xaa]
- lwax 2, 3, 4
-# CHECK: lwaux 2, 3, 4 # encoding: [0x7c,0x43,0x22,0xea]
- lwaux 2, 3, 4
-# CHECK: ld 2, 128(4) # encoding: [0xe8,0x44,0x00,0x80]
- ld 2, 128(4)
-# CHECK: ldx 2, 3, 4 # encoding: [0x7c,0x43,0x20,0x2a]
- ldx 2, 3, 4
-# CHECK: ldu 2, 128(4) # encoding: [0xe8,0x44,0x00,0x81]
- ldu 2, 128(4)
-# CHECK: ldux 2, 3, 4 # encoding: [0x7c,0x43,0x20,0x6a]
- ldux 2, 3, 4
+# CHECK-BE: lbz 2, 128(4) # encoding: [0x88,0x44,0x00,0x80]
+# CHECK-LE: lbz 2, 128(4) # encoding: [0x80,0x00,0x44,0x88]
+ lbz 2, 128(4)
+# CHECK-BE: lbzx 2, 3, 4 # encoding: [0x7c,0x43,0x20,0xae]
+# CHECK-LE: lbzx 2, 3, 4 # encoding: [0xae,0x20,0x43,0x7c]
+ lbzx 2, 3, 4
+# CHECK-BE: lbzu 2, 128(4) # encoding: [0x8c,0x44,0x00,0x80]
+# CHECK-LE: lbzu 2, 128(4) # encoding: [0x80,0x00,0x44,0x8c]
+ lbzu 2, 128(4)
+# CHECK-BE: lbzux 2, 3, 4 # encoding: [0x7c,0x43,0x20,0xee]
+# CHECK-LE: lbzux 2, 3, 4 # encoding: [0xee,0x20,0x43,0x7c]
+ lbzux 2, 3, 4
+# CHECK-BE: lhz 2, 128(4) # encoding: [0xa0,0x44,0x00,0x80]
+# CHECK-LE: lhz 2, 128(4) # encoding: [0x80,0x00,0x44,0xa0]
+ lhz 2, 128(4)
+# CHECK-BE: lhzx 2, 3, 4 # encoding: [0x7c,0x43,0x22,0x2e]
+# CHECK-LE: lhzx 2, 3, 4 # encoding: [0x2e,0x22,0x43,0x7c]
+ lhzx 2, 3, 4
+# CHECK-BE: lhzu 2, 128(4) # encoding: [0xa4,0x44,0x00,0x80]
+# CHECK-LE: lhzu 2, 128(4) # encoding: [0x80,0x00,0x44,0xa4]
+ lhzu 2, 128(4)
+# CHECK-BE: lhzux 2, 3, 4 # encoding: [0x7c,0x43,0x22,0x6e]
+# CHECK-LE: lhzux 2, 3, 4 # encoding: [0x6e,0x22,0x43,0x7c]
+ lhzux 2, 3, 4
+# CHECK-BE: lha 2, 128(4) # encoding: [0xa8,0x44,0x00,0x80]
+# CHECK-LE: lha 2, 128(4) # encoding: [0x80,0x00,0x44,0xa8]
+ lha 2, 128(4)
+# CHECK-BE: lhax 2, 3, 4 # encoding: [0x7c,0x43,0x22,0xae]
+# CHECK-LE: lhax 2, 3, 4 # encoding: [0xae,0x22,0x43,0x7c]
+ lhax 2, 3, 4
+# CHECK-BE: lhau 2, 128(4) # encoding: [0xac,0x44,0x00,0x80]
+# CHECK-LE: lhau 2, 128(4) # encoding: [0x80,0x00,0x44,0xac]
+ lhau 2, 128(4)
+# CHECK-BE: lhaux 2, 3, 4 # encoding: [0x7c,0x43,0x22,0xee]
+# CHECK-LE: lhaux 2, 3, 4 # encoding: [0xee,0x22,0x43,0x7c]
+ lhaux 2, 3, 4
+# CHECK-BE: lwz 2, 128(4) # encoding: [0x80,0x44,0x00,0x80]
+# CHECK-LE: lwz 2, 128(4) # encoding: [0x80,0x00,0x44,0x80]
+ lwz 2, 128(4)
+# CHECK-BE: lwzx 2, 3, 4 # encoding: [0x7c,0x43,0x20,0x2e]
+# CHECK-LE: lwzx 2, 3, 4 # encoding: [0x2e,0x20,0x43,0x7c]
+ lwzx 2, 3, 4
+# CHECK-BE: lwzu 2, 128(4) # encoding: [0x84,0x44,0x00,0x80]
+# CHECK-LE: lwzu 2, 128(4) # encoding: [0x80,0x00,0x44,0x84]
+ lwzu 2, 128(4)
+# CHECK-BE: lwzux 2, 3, 4 # encoding: [0x7c,0x43,0x20,0x6e]
+# CHECK-LE: lwzux 2, 3, 4 # encoding: [0x6e,0x20,0x43,0x7c]
+ lwzux 2, 3, 4
+# CHECK-BE: lwa 2, 128(4) # encoding: [0xe8,0x44,0x00,0x82]
+# CHECK-LE: lwa 2, 128(4) # encoding: [0x82,0x00,0x44,0xe8]
+ lwa 2, 128(4)
+# CHECK-BE: lwax 2, 3, 4 # encoding: [0x7c,0x43,0x22,0xaa]
+# CHECK-LE: lwax 2, 3, 4 # encoding: [0xaa,0x22,0x43,0x7c]
+ lwax 2, 3, 4
+# CHECK-BE: lwaux 2, 3, 4 # encoding: [0x7c,0x43,0x22,0xea]
+# CHECK-LE: lwaux 2, 3, 4 # encoding: [0xea,0x22,0x43,0x7c]
+ lwaux 2, 3, 4
+# CHECK-BE: ld 2, 128(4) # encoding: [0xe8,0x44,0x00,0x80]
+# CHECK-LE: ld 2, 128(4) # encoding: [0x80,0x00,0x44,0xe8]
+ ld 2, 128(4)
+# CHECK-BE: ldx 2, 3, 4 # encoding: [0x7c,0x43,0x20,0x2a]
+# CHECK-LE: ldx 2, 3, 4 # encoding: [0x2a,0x20,0x43,0x7c]
+ ldx 2, 3, 4
+# CHECK-BE: ldu 2, 128(4) # encoding: [0xe8,0x44,0x00,0x81]
+# CHECK-LE: ldu 2, 128(4) # encoding: [0x81,0x00,0x44,0xe8]
+ ldu 2, 128(4)
+# CHECK-BE: ldux 2, 3, 4 # encoding: [0x7c,0x43,0x20,0x6a]
+# CHECK-LE: ldux 2, 3, 4 # encoding: [0x6a,0x20,0x43,0x7c]
+ ldux 2, 3, 4
# Fixed-point store instructions
-# CHECK: stb 2, 128(4) # encoding: [0x98,0x44,0x00,0x80]
- stb 2, 128(4)
-# CHECK: stbx 2, 3, 4 # encoding: [0x7c,0x43,0x21,0xae]
- stbx 2, 3, 4
-# CHECK: stbu 2, 128(4) # encoding: [0x9c,0x44,0x00,0x80]
- stbu 2, 128(4)
-# CHECK: stbux 2, 3, 4 # encoding: [0x7c,0x43,0x21,0xee]
- stbux 2, 3, 4
-# CHECK: sth 2, 128(4) # encoding: [0xb0,0x44,0x00,0x80]
- sth 2, 128(4)
-# CHECK: sthx 2, 3, 4 # encoding: [0x7c,0x43,0x23,0x2e]
- sthx 2, 3, 4
-# CHECK: sthu 2, 128(4) # encoding: [0xb4,0x44,0x00,0x80]
- sthu 2, 128(4)
-# CHECK: sthux 2, 3, 4 # encoding: [0x7c,0x43,0x23,0x6e]
- sthux 2, 3, 4
-# CHECK: stw 2, 128(4) # encoding: [0x90,0x44,0x00,0x80]
- stw 2, 128(4)
-# CHECK: stwx 2, 3, 4 # encoding: [0x7c,0x43,0x21,0x2e]
- stwx 2, 3, 4
-# CHECK: stwu 2, 128(4) # encoding: [0x94,0x44,0x00,0x80]
- stwu 2, 128(4)
-# CHECK: stwux 2, 3, 4 # encoding: [0x7c,0x43,0x21,0x6e]
- stwux 2, 3, 4
-# CHECK: std 2, 128(4) # encoding: [0xf8,0x44,0x00,0x80]
- std 2, 128(4)
-# CHECK: stdx 2, 3, 4 # encoding: [0x7c,0x43,0x21,0x2a]
- stdx 2, 3, 4
-# CHECK: stdu 2, 128(4) # encoding: [0xf8,0x44,0x00,0x81]
- stdu 2, 128(4)
-# CHECK: stdux 2, 3, 4 # encoding: [0x7c,0x43,0x21,0x6a]
- stdux 2, 3, 4
+# CHECK-BE: stb 2, 128(4) # encoding: [0x98,0x44,0x00,0x80]
+# CHECK-LE: stb 2, 128(4) # encoding: [0x80,0x00,0x44,0x98]
+ stb 2, 128(4)
+# CHECK-BE: stbx 2, 3, 4 # encoding: [0x7c,0x43,0x21,0xae]
+# CHECK-LE: stbx 2, 3, 4 # encoding: [0xae,0x21,0x43,0x7c]
+ stbx 2, 3, 4
+# CHECK-BE: stbu 2, 128(4) # encoding: [0x9c,0x44,0x00,0x80]
+# CHECK-LE: stbu 2, 128(4) # encoding: [0x80,0x00,0x44,0x9c]
+ stbu 2, 128(4)
+# CHECK-BE: stbux 2, 3, 4 # encoding: [0x7c,0x43,0x21,0xee]
+# CHECK-LE: stbux 2, 3, 4 # encoding: [0xee,0x21,0x43,0x7c]
+ stbux 2, 3, 4
+# CHECK-BE: sth 2, 128(4) # encoding: [0xb0,0x44,0x00,0x80]
+# CHECK-LE: sth 2, 128(4) # encoding: [0x80,0x00,0x44,0xb0]
+ sth 2, 128(4)
+# CHECK-BE: sthx 2, 3, 4 # encoding: [0x7c,0x43,0x23,0x2e]
+# CHECK-LE: sthx 2, 3, 4 # encoding: [0x2e,0x23,0x43,0x7c]
+ sthx 2, 3, 4
+# CHECK-BE: sthu 2, 128(4) # encoding: [0xb4,0x44,0x00,0x80]
+# CHECK-LE: sthu 2, 128(4) # encoding: [0x80,0x00,0x44,0xb4]
+ sthu 2, 128(4)
+# CHECK-BE: sthux 2, 3, 4 # encoding: [0x7c,0x43,0x23,0x6e]
+# CHECK-LE: sthux 2, 3, 4 # encoding: [0x6e,0x23,0x43,0x7c]
+ sthux 2, 3, 4
+# CHECK-BE: stw 2, 128(4) # encoding: [0x90,0x44,0x00,0x80]
+# CHECK-LE: stw 2, 128(4) # encoding: [0x80,0x00,0x44,0x90]
+ stw 2, 128(4)
+# CHECK-BE: stwx 2, 3, 4 # encoding: [0x7c,0x43,0x21,0x2e]
+# CHECK-LE: stwx 2, 3, 4 # encoding: [0x2e,0x21,0x43,0x7c]
+ stwx 2, 3, 4
+# CHECK-BE: stwu 2, 128(4) # encoding: [0x94,0x44,0x00,0x80]
+# CHECK-LE: stwu 2, 128(4) # encoding: [0x80,0x00,0x44,0x94]
+ stwu 2, 128(4)
+# CHECK-BE: stwux 2, 3, 4 # encoding: [0x7c,0x43,0x21,0x6e]
+# CHECK-LE: stwux 2, 3, 4 # encoding: [0x6e,0x21,0x43,0x7c]
+ stwux 2, 3, 4
+# CHECK-BE: std 2, 128(4) # encoding: [0xf8,0x44,0x00,0x80]
+# CHECK-LE: std 2, 128(4) # encoding: [0x80,0x00,0x44,0xf8]
+ std 2, 128(4)
+# CHECK-BE: stdx 2, 3, 4 # encoding: [0x7c,0x43,0x21,0x2a]
+# CHECK-LE: stdx 2, 3, 4 # encoding: [0x2a,0x21,0x43,0x7c]
+ stdx 2, 3, 4
+# CHECK-BE: stdu 2, 128(4) # encoding: [0xf8,0x44,0x00,0x81]
+# CHECK-LE: stdu 2, 128(4) # encoding: [0x81,0x00,0x44,0xf8]
+ stdu 2, 128(4)
+# CHECK-BE: stdux 2, 3, 4 # encoding: [0x7c,0x43,0x21,0x6a]
+# CHECK-LE: stdux 2, 3, 4 # encoding: [0x6a,0x21,0x43,0x7c]
+ stdux 2, 3, 4
# Fixed-point load and store with byte reversal instructions
-# CHECK: lhbrx 2, 3, 4 # encoding: [0x7c,0x43,0x26,0x2c]
- lhbrx 2, 3, 4
-# CHECK: sthbrx 2, 3, 4 # encoding: [0x7c,0x43,0x27,0x2c]
- sthbrx 2, 3, 4
-# CHECK: lwbrx 2, 3, 4 # encoding: [0x7c,0x43,0x24,0x2c]
- lwbrx 2, 3, 4
-# CHECK: stwbrx 2, 3, 4 # encoding: [0x7c,0x43,0x25,0x2c]
- stwbrx 2, 3, 4
-# CHECK: ldbrx 2, 3, 4 # encoding: [0x7c,0x43,0x24,0x28]
- ldbrx 2, 3, 4
-# CHECK: stdbrx 2, 3, 4 # encoding: [0x7c,0x43,0x25,0x28]
- stdbrx 2, 3, 4
+# CHECK-BE: lhbrx 2, 3, 4 # encoding: [0x7c,0x43,0x26,0x2c]
+# CHECK-LE: lhbrx 2, 3, 4 # encoding: [0x2c,0x26,0x43,0x7c]
+ lhbrx 2, 3, 4
+# CHECK-BE: sthbrx 2, 3, 4 # encoding: [0x7c,0x43,0x27,0x2c]
+# CHECK-LE: sthbrx 2, 3, 4 # encoding: [0x2c,0x27,0x43,0x7c]
+ sthbrx 2, 3, 4
+# CHECK-BE: lwbrx 2, 3, 4 # encoding: [0x7c,0x43,0x24,0x2c]
+# CHECK-LE: lwbrx 2, 3, 4 # encoding: [0x2c,0x24,0x43,0x7c]
+ lwbrx 2, 3, 4
+# CHECK-BE: stwbrx 2, 3, 4 # encoding: [0x7c,0x43,0x25,0x2c]
+# CHECK-LE: stwbrx 2, 3, 4 # encoding: [0x2c,0x25,0x43,0x7c]
+ stwbrx 2, 3, 4
+# CHECK-BE: ldbrx 2, 3, 4 # encoding: [0x7c,0x43,0x24,0x28]
+# CHECK-LE: ldbrx 2, 3, 4 # encoding: [0x28,0x24,0x43,0x7c]
+ ldbrx 2, 3, 4
+# CHECK-BE: stdbrx 2, 3, 4 # encoding: [0x7c,0x43,0x25,0x28]
+# CHECK-LE: stdbrx 2, 3, 4 # encoding: [0x28,0x25,0x43,0x7c]
+ stdbrx 2, 3, 4
# Fixed-point load and store multiple instructions
-# CHECK: lmw 2, 128(1) # encoding: [0xb8,0x41,0x00,0x80]
- lmw 2, 128(1)
-# CHECK: stmw 2, 128(1) # encoding: [0xbc,0x41,0x00,0x80]
- stmw 2, 128(1)
+# CHECK-BE: lmw 2, 128(1) # encoding: [0xb8,0x41,0x00,0x80]
+# CHECK-LE: lmw 2, 128(1) # encoding: [0x80,0x00,0x41,0xb8]
+ lmw 2, 128(1)
+# CHECK-BE: stmw 2, 128(1) # encoding: [0xbc,0x41,0x00,0x80]
+# CHECK-LE: stmw 2, 128(1) # encoding: [0x80,0x00,0x41,0xbc]
+ stmw 2, 128(1)
# FIXME: Fixed-point move assist instructions
# Fixed-point arithmetic instructions
-# CHECK: addi 2, 3, 128 # encoding: [0x38,0x43,0x00,0x80]
- addi 2, 3, 128
-# CHECK: addis 2, 3, 128 # encoding: [0x3c,0x43,0x00,0x80]
- addis 2, 3, 128
-# CHECK: add 2, 3, 4 # encoding: [0x7c,0x43,0x22,0x14]
- add 2, 3, 4
-# CHECK: add. 2, 3, 4 # encoding: [0x7c,0x43,0x22,0x15]
- add. 2, 3, 4
-# FIXME: addo 2, 3, 4
-# FIXME: addo. 2, 3, 4
-# CHECK: subf 2, 3, 4 # encoding: [0x7c,0x43,0x20,0x50]
- subf 2, 3, 4
-# CHECK: subf. 2, 3, 4 # encoding: [0x7c,0x43,0x20,0x51]
- subf. 2, 3, 4
-# FIXME: subfo 2, 3, 4
-# FIXME: subfo. 2, 3, 4
-# CHECK: addic 2, 3, 128 # encoding: [0x30,0x43,0x00,0x80]
- addic 2, 3, 128
-# CHECK: addic. 2, 3, 128 # encoding: [0x34,0x43,0x00,0x80]
- addic. 2, 3, 128
-# CHECK: subfic 2, 3, 4 # encoding: [0x20,0x43,0x00,0x04]
- subfic 2, 3, 4
-
-# CHECK: addc 2, 3, 4 # encoding: [0x7c,0x43,0x20,0x14]
- addc 2, 3, 4
-# CHECK: addc. 2, 3, 4 # encoding: [0x7c,0x43,0x20,0x15]
- addc. 2, 3, 4
-# FIXME: addco 2, 3, 4
-# FIXME: addco. 2, 3, 4
-# CHECK: subfc 2, 3, 4 # encoding: [0x7c,0x43,0x20,0x10]
- subfc 2, 3, 4
-# CHECK: subfc 2, 3, 4 # encoding: [0x7c,0x43,0x20,0x10]
- subfc 2, 3, 4
-# FIXME: subfco 2, 3, 4
-# FIXME: subfco. 2, 3, 4
-
-# CHECK: adde 2, 3, 4 # encoding: [0x7c,0x43,0x21,0x14]
- adde 2, 3, 4
-# CHECK: adde. 2, 3, 4 # encoding: [0x7c,0x43,0x21,0x15]
- adde. 2, 3, 4
-# FIXME: addeo 2, 3, 4
-# FIXME: addeo. 2, 3, 4
-# CHECK: subfe 2, 3, 4 # encoding: [0x7c,0x43,0x21,0x10]
- subfe 2, 3, 4
-# CHECK: subfe. 2, 3, 4 # encoding: [0x7c,0x43,0x21,0x11]
- subfe. 2, 3, 4
-# FIXME: subfeo 2, 3, 4
-# FIXME: subfeo. 2, 3, 4
-
-# CHECK: addme 2, 3 # encoding: [0x7c,0x43,0x01,0xd4]
- addme 2, 3
-# CHECK: addme. 2, 3 # encoding: [0x7c,0x43,0x01,0xd5]
- addme. 2, 3
-# FIXME: addmeo 2, 3
-# FIXME: addmeo. 2, 3
-# CHECK: subfme 2, 3 # encoding: [0x7c,0x43,0x01,0xd0]
- subfme 2, 3
-# CHECK: subfme. 2, 3 # encoding: [0x7c,0x43,0x01,0xd1]
- subfme. 2, 3
-# FIXME: subfmeo 2, 3
-# FIXME: subfmeo. 2, 3
-
-# CHECK: addze 2, 3 # encoding: [0x7c,0x43,0x01,0x94]
- addze 2, 3
-# CHECK: addze. 2, 3 # encoding: [0x7c,0x43,0x01,0x95]
- addze. 2, 3
-# FIXME: addzeo 2, 3
-# FIXME: addzeo. 2, 3
-# CHECK: subfze 2, 3 # encoding: [0x7c,0x43,0x01,0x90]
- subfze 2, 3
-# CHECK: subfze. 2, 3 # encoding: [0x7c,0x43,0x01,0x91]
- subfze. 2, 3
-# FIXME: subfzeo 2, 3
-# FIXME: subfzeo. 2, 3
-
-# CHECK: neg 2, 3 # encoding: [0x7c,0x43,0x00,0xd0]
- neg 2, 3
-# CHECK: neg. 2, 3 # encoding: [0x7c,0x43,0x00,0xd1]
- neg. 2, 3
-# FIXME: nego 2, 3
-# FIXME: nego. 2, 3
-
-# CHECK: mulli 2, 3, 128 # encoding: [0x1c,0x43,0x00,0x80]
- mulli 2, 3, 128
-# CHECK: mulhw 2, 3, 4 # encoding: [0x7c,0x43,0x20,0x96]
- mulhw 2, 3, 4
-# CHECK: mulhw. 2, 3, 4 # encoding: [0x7c,0x43,0x20,0x97]
- mulhw. 2, 3, 4
-# CHECK: mullw 2, 3, 4 # encoding: [0x7c,0x43,0x21,0xd6]
- mullw 2, 3, 4
-# CHECK: mullw. 2, 3, 4 # encoding: [0x7c,0x43,0x21,0xd7]
- mullw. 2, 3, 4
-# FIXME: mullwo 2, 3, 4
-# FIXME: mullwo. 2, 3, 4
-# CHECK: mulhwu 2, 3, 4 # encoding: [0x7c,0x43,0x20,0x16]
- mulhwu 2, 3, 4
-# CHECK: mulhwu. 2, 3, 4 # encoding: [0x7c,0x43,0x20,0x17]
- mulhwu. 2, 3, 4
-
-# CHECK: divw 2, 3, 4 # encoding: [0x7c,0x43,0x23,0xd6]
- divw 2, 3, 4
-# CHECK: divw. 2, 3, 4 # encoding: [0x7c,0x43,0x23,0xd7]
- divw. 2, 3, 4
-# FIXME: divwo 2, 3, 4
-# FIXME: divwo. 2, 3, 4
-# CHECK: divwu 2, 3, 4 # encoding: [0x7c,0x43,0x23,0x96]
- divwu 2, 3, 4
-# CHECK: divwu. 2, 3, 4 # encoding: [0x7c,0x43,0x23,0x97]
- divwu. 2, 3, 4
-# FIXME: divwuo 2, 3, 4
-# FIXME: divwuo. 2, 3, 4
-# FIXME: divwe 2, 3, 4
-# FIXME: divwe. 2, 3, 4
-# FIXME: divweo 2, 3, 4
-# FIXME: divweo. 2, 3, 4
-# FIXME: divweu 2, 3, 4
-# FIXME: divweu. 2, 3, 4
-# FIXME: divweuo 2, 3, 4
-# FIXME: divweuo. 2, 3, 4
-
-# CHECK: mulld 2, 3, 4 # encoding: [0x7c,0x43,0x21,0xd2]
- mulld 2, 3, 4
-# CHECK: mulld. 2, 3, 4 # encoding: [0x7c,0x43,0x21,0xd3]
- mulld. 2, 3, 4
-# FIXME: mulldo 2, 3, 4
-# FIXME: mulldo. 2, 3, 4
-# CHECK: mulhd 2, 3, 4 # encoding: [0x7c,0x43,0x20,0x92]
- mulhd 2, 3, 4
-# CHECK: mulhd. 2, 3, 4 # encoding: [0x7c,0x43,0x20,0x93]
- mulhd. 2, 3, 4
-# CHECK: mulhdu 2, 3, 4 # encoding: [0x7c,0x43,0x20,0x12]
- mulhdu 2, 3, 4
-# CHECK: mulhdu. 2, 3, 4 # encoding: [0x7c,0x43,0x20,0x13]
- mulhdu. 2, 3, 4
-
-# CHECK: divd 2, 3, 4 # encoding: [0x7c,0x43,0x23,0xd2]
- divd 2, 3, 4
-# CHECK: divd. 2, 3, 4 # encoding: [0x7c,0x43,0x23,0xd3]
- divd. 2, 3, 4
-# FIXME: divdo 2, 3, 4
-# FIXME: divdo. 2, 3, 4
-# CHECK: divdu 2, 3, 4 # encoding: [0x7c,0x43,0x23,0x92]
- divdu 2, 3, 4
-# CHECK: divdu. 2, 3, 4 # encoding: [0x7c,0x43,0x23,0x93]
- divdu. 2, 3, 4
-# FIXME: divduo 2, 3, 4
-# FIXME: divduo. 2, 3, 4
-# FIXME: divde 2, 3, 4
-# FIXME: divde. 2, 3, 4
-# FIXME: divdeo 2, 3, 4
-# FIXME: divdeo. 2, 3, 4
-# FIXME: divdeu 2, 3, 4
-# FIXME: divdeu. 2, 3, 4
-# FIXME: divdeuo 2, 3, 4
-# FIXME: divdeuo. 2, 3, 4
+# CHECK-BE: addi 2, 3, 128 # encoding: [0x38,0x43,0x00,0x80]
+# CHECK-LE: addi 2, 3, 128 # encoding: [0x80,0x00,0x43,0x38]
+ addi 2, 3, 128
+# CHECK-BE: addis 2, 3, 128 # encoding: [0x3c,0x43,0x00,0x80]
+# CHECK-LE: addis 2, 3, 128 # encoding: [0x80,0x00,0x43,0x3c]
+ addis 2, 3, 128
+# CHECK-BE: add 2, 3, 4 # encoding: [0x7c,0x43,0x22,0x14]
+# CHECK-LE: add 2, 3, 4 # encoding: [0x14,0x22,0x43,0x7c]
+ add 2, 3, 4
+# CHECK-BE: add. 2, 3, 4 # encoding: [0x7c,0x43,0x22,0x15]
+# CHECK-LE: add. 2, 3, 4 # encoding: [0x15,0x22,0x43,0x7c]
+ add. 2, 3, 4
+# FIXME: addo 2, 3, 4
+# FIXME: addo. 2, 3, 4
+# CHECK-BE: subf 2, 3, 4 # encoding: [0x7c,0x43,0x20,0x50]
+# CHECK-LE: subf 2, 3, 4 # encoding: [0x50,0x20,0x43,0x7c]
+ subf 2, 3, 4
+# CHECK-BE: subf. 2, 3, 4 # encoding: [0x7c,0x43,0x20,0x51]
+# CHECK-LE: subf. 2, 3, 4 # encoding: [0x51,0x20,0x43,0x7c]
+ subf. 2, 3, 4
+# FIXME: subfo 2, 3, 4
+# FIXME: subfo. 2, 3, 4
+# CHECK-BE: addic 2, 3, 128 # encoding: [0x30,0x43,0x00,0x80]
+# CHECK-LE: addic 2, 3, 128 # encoding: [0x80,0x00,0x43,0x30]
+ addic 2, 3, 128
+# CHECK-BE: addic. 2, 3, 128 # encoding: [0x34,0x43,0x00,0x80]
+# CHECK-LE: addic. 2, 3, 128 # encoding: [0x80,0x00,0x43,0x34]
+ addic. 2, 3, 128
+# CHECK-BE: subfic 2, 3, 4 # encoding: [0x20,0x43,0x00,0x04]
+# CHECK-LE: subfic 2, 3, 4 # encoding: [0x04,0x00,0x43,0x20]
+ subfic 2, 3, 4
+
+# CHECK-BE: addc 2, 3, 4 # encoding: [0x7c,0x43,0x20,0x14]
+# CHECK-LE: addc 2, 3, 4 # encoding: [0x14,0x20,0x43,0x7c]
+ addc 2, 3, 4
+# CHECK-BE: addc. 2, 3, 4 # encoding: [0x7c,0x43,0x20,0x15]
+# CHECK-LE: addc. 2, 3, 4 # encoding: [0x15,0x20,0x43,0x7c]
+ addc. 2, 3, 4
+# FIXME: addco 2, 3, 4
+# FIXME: addco. 2, 3, 4
+# CHECK-BE: subfc 2, 3, 4 # encoding: [0x7c,0x43,0x20,0x10]
+# CHECK-LE: subfc 2, 3, 4 # encoding: [0x10,0x20,0x43,0x7c]
+ subfc 2, 3, 4
+# CHECK-BE: subfc 2, 3, 4 # encoding: [0x7c,0x43,0x20,0x10]
+# CHECK-LE: subfc 2, 3, 4 # encoding: [0x10,0x20,0x43,0x7c]
+ subfc 2, 3, 4
+# FIXME: subfco 2, 3, 4
+# FIXME: subfco. 2, 3, 4
+
+# CHECK-BE: adde 2, 3, 4 # encoding: [0x7c,0x43,0x21,0x14]
+# CHECK-LE: adde 2, 3, 4 # encoding: [0x14,0x21,0x43,0x7c]
+ adde 2, 3, 4
+# CHECK-BE: adde. 2, 3, 4 # encoding: [0x7c,0x43,0x21,0x15]
+# CHECK-LE: adde. 2, 3, 4 # encoding: [0x15,0x21,0x43,0x7c]
+ adde. 2, 3, 4
+# FIXME: addeo 2, 3, 4
+# FIXME: addeo. 2, 3, 4
+# CHECK-BE: subfe 2, 3, 4 # encoding: [0x7c,0x43,0x21,0x10]
+# CHECK-LE: subfe 2, 3, 4 # encoding: [0x10,0x21,0x43,0x7c]
+ subfe 2, 3, 4
+# CHECK-BE: subfe. 2, 3, 4 # encoding: [0x7c,0x43,0x21,0x11]
+# CHECK-LE: subfe. 2, 3, 4 # encoding: [0x11,0x21,0x43,0x7c]
+ subfe. 2, 3, 4
+# FIXME: subfeo 2, 3, 4
+# FIXME: subfeo. 2, 3, 4
+
+# CHECK-BE: addme 2, 3 # encoding: [0x7c,0x43,0x01,0xd4]
+# CHECK-LE: addme 2, 3 # encoding: [0xd4,0x01,0x43,0x7c]
+ addme 2, 3
+# CHECK-BE: addme. 2, 3 # encoding: [0x7c,0x43,0x01,0xd5]
+# CHECK-LE: addme. 2, 3 # encoding: [0xd5,0x01,0x43,0x7c]
+ addme. 2, 3
+# FIXME: addmeo 2, 3
+# FIXME: addmeo. 2, 3
+# CHECK-BE: subfme 2, 3 # encoding: [0x7c,0x43,0x01,0xd0]
+# CHECK-LE: subfme 2, 3 # encoding: [0xd0,0x01,0x43,0x7c]
+ subfme 2, 3
+# CHECK-BE: subfme. 2, 3 # encoding: [0x7c,0x43,0x01,0xd1]
+# CHECK-LE: subfme. 2, 3 # encoding: [0xd1,0x01,0x43,0x7c]
+ subfme. 2, 3
+# FIXME: subfmeo 2, 3
+# FIXME: subfmeo. 2, 3
+
+# CHECK-BE: addze 2, 3 # encoding: [0x7c,0x43,0x01,0x94]
+# CHECK-LE: addze 2, 3 # encoding: [0x94,0x01,0x43,0x7c]
+ addze 2, 3
+# CHECK-BE: addze. 2, 3 # encoding: [0x7c,0x43,0x01,0x95]
+# CHECK-LE: addze. 2, 3 # encoding: [0x95,0x01,0x43,0x7c]
+ addze. 2, 3
+# FIXME: addzeo 2, 3
+# FIXME: addzeo. 2, 3
+# CHECK-BE: subfze 2, 3 # encoding: [0x7c,0x43,0x01,0x90]
+# CHECK-LE: subfze 2, 3 # encoding: [0x90,0x01,0x43,0x7c]
+ subfze 2, 3
+# CHECK-BE: subfze. 2, 3 # encoding: [0x7c,0x43,0x01,0x91]
+# CHECK-LE: subfze. 2, 3 # encoding: [0x91,0x01,0x43,0x7c]
+ subfze. 2, 3
+# FIXME: subfzeo 2, 3
+# FIXME: subfzeo. 2, 3
+
+# CHECK-BE: neg 2, 3 # encoding: [0x7c,0x43,0x00,0xd0]
+# CHECK-LE: neg 2, 3 # encoding: [0xd0,0x00,0x43,0x7c]
+ neg 2, 3
+# CHECK-BE: neg. 2, 3 # encoding: [0x7c,0x43,0x00,0xd1]
+# CHECK-LE: neg. 2, 3 # encoding: [0xd1,0x00,0x43,0x7c]
+ neg. 2, 3
+# FIXME: nego 2, 3
+# FIXME: nego. 2, 3
+
+# CHECK-BE: mulli 2, 3, 128 # encoding: [0x1c,0x43,0x00,0x80]
+# CHECK-LE: mulli 2, 3, 128 # encoding: [0x80,0x00,0x43,0x1c]
+ mulli 2, 3, 128
+# CHECK-BE: mulhw 2, 3, 4 # encoding: [0x7c,0x43,0x20,0x96]
+# CHECK-LE: mulhw 2, 3, 4 # encoding: [0x96,0x20,0x43,0x7c]
+ mulhw 2, 3, 4
+# CHECK-BE: mulhw. 2, 3, 4 # encoding: [0x7c,0x43,0x20,0x97]
+# CHECK-LE: mulhw. 2, 3, 4 # encoding: [0x97,0x20,0x43,0x7c]
+ mulhw. 2, 3, 4
+# CHECK-BE: mullw 2, 3, 4 # encoding: [0x7c,0x43,0x21,0xd6]
+# CHECK-LE: mullw 2, 3, 4 # encoding: [0xd6,0x21,0x43,0x7c]
+ mullw 2, 3, 4
+# CHECK-BE: mullw. 2, 3, 4 # encoding: [0x7c,0x43,0x21,0xd7]
+# CHECK-LE: mullw. 2, 3, 4 # encoding: [0xd7,0x21,0x43,0x7c]
+ mullw. 2, 3, 4
+# FIXME: mullwo 2, 3, 4
+# FIXME: mullwo. 2, 3, 4
+# CHECK-BE: mulhwu 2, 3, 4 # encoding: [0x7c,0x43,0x20,0x16]
+# CHECK-LE: mulhwu 2, 3, 4 # encoding: [0x16,0x20,0x43,0x7c]
+ mulhwu 2, 3, 4
+# CHECK-BE: mulhwu. 2, 3, 4 # encoding: [0x7c,0x43,0x20,0x17]
+# CHECK-LE: mulhwu. 2, 3, 4 # encoding: [0x17,0x20,0x43,0x7c]
+ mulhwu. 2, 3, 4
+
+# CHECK-BE: divw 2, 3, 4 # encoding: [0x7c,0x43,0x23,0xd6]
+# CHECK-LE: divw 2, 3, 4 # encoding: [0xd6,0x23,0x43,0x7c]
+ divw 2, 3, 4
+# CHECK-BE: divw. 2, 3, 4 # encoding: [0x7c,0x43,0x23,0xd7]
+# CHECK-LE: divw. 2, 3, 4 # encoding: [0xd7,0x23,0x43,0x7c]
+ divw. 2, 3, 4
+# FIXME: divwo 2, 3, 4
+# FIXME: divwo. 2, 3, 4
+# CHECK-BE: divwu 2, 3, 4 # encoding: [0x7c,0x43,0x23,0x96]
+# CHECK-LE: divwu 2, 3, 4 # encoding: [0x96,0x23,0x43,0x7c]
+ divwu 2, 3, 4
+# CHECK-BE: divwu. 2, 3, 4 # encoding: [0x7c,0x43,0x23,0x97]
+# CHECK-LE: divwu. 2, 3, 4 # encoding: [0x97,0x23,0x43,0x7c]
+ divwu. 2, 3, 4
+# FIXME: divwuo 2, 3, 4
+# FIXME: divwuo. 2, 3, 4
+# FIXME: divwe 2, 3, 4
+# FIXME: divwe. 2, 3, 4
+# FIXME: divweo 2, 3, 4
+# FIXME: divweo. 2, 3, 4
+# FIXME: divweu 2, 3, 4
+# FIXME: divweu. 2, 3, 4
+# FIXME: divweuo 2, 3, 4
+# FIXME: divweuo. 2, 3, 4
+
+# CHECK-BE: mulld 2, 3, 4 # encoding: [0x7c,0x43,0x21,0xd2]
+# CHECK-LE: mulld 2, 3, 4 # encoding: [0xd2,0x21,0x43,0x7c]
+ mulld 2, 3, 4
+# CHECK-BE: mulld. 2, 3, 4 # encoding: [0x7c,0x43,0x21,0xd3]
+# CHECK-LE: mulld. 2, 3, 4 # encoding: [0xd3,0x21,0x43,0x7c]
+ mulld. 2, 3, 4
+# FIXME: mulldo 2, 3, 4
+# FIXME: mulldo. 2, 3, 4
+# CHECK-BE: mulhd 2, 3, 4 # encoding: [0x7c,0x43,0x20,0x92]
+# CHECK-LE: mulhd 2, 3, 4 # encoding: [0x92,0x20,0x43,0x7c]
+ mulhd 2, 3, 4
+# CHECK-BE: mulhd. 2, 3, 4 # encoding: [0x7c,0x43,0x20,0x93]
+# CHECK-LE: mulhd. 2, 3, 4 # encoding: [0x93,0x20,0x43,0x7c]
+ mulhd. 2, 3, 4
+# CHECK-BE: mulhdu 2, 3, 4 # encoding: [0x7c,0x43,0x20,0x12]
+# CHECK-LE: mulhdu 2, 3, 4 # encoding: [0x12,0x20,0x43,0x7c]
+ mulhdu 2, 3, 4
+# CHECK-BE: mulhdu. 2, 3, 4 # encoding: [0x7c,0x43,0x20,0x13]
+# CHECK-LE: mulhdu. 2, 3, 4 # encoding: [0x13,0x20,0x43,0x7c]
+ mulhdu. 2, 3, 4
+
+# CHECK-BE: divd 2, 3, 4 # encoding: [0x7c,0x43,0x23,0xd2]
+# CHECK-LE: divd 2, 3, 4 # encoding: [0xd2,0x23,0x43,0x7c]
+ divd 2, 3, 4
+# CHECK-BE: divd. 2, 3, 4 # encoding: [0x7c,0x43,0x23,0xd3]
+# CHECK-LE: divd. 2, 3, 4 # encoding: [0xd3,0x23,0x43,0x7c]
+ divd. 2, 3, 4
+# FIXME: divdo 2, 3, 4
+# FIXME: divdo. 2, 3, 4
+# CHECK-BE: divdu 2, 3, 4 # encoding: [0x7c,0x43,0x23,0x92]
+# CHECK-LE: divdu 2, 3, 4 # encoding: [0x92,0x23,0x43,0x7c]
+ divdu 2, 3, 4
+# CHECK-BE: divdu. 2, 3, 4 # encoding: [0x7c,0x43,0x23,0x93]
+# CHECK-LE: divdu. 2, 3, 4 # encoding: [0x93,0x23,0x43,0x7c]
+ divdu. 2, 3, 4
+# FIXME: divduo 2, 3, 4
+# FIXME: divduo. 2, 3, 4
+# FIXME: divde 2, 3, 4
+# FIXME: divde. 2, 3, 4
+# FIXME: divdeo 2, 3, 4
+# FIXME: divdeo. 2, 3, 4
+# FIXME: divdeu 2, 3, 4
+# FIXME: divdeu. 2, 3, 4
+# FIXME: divdeuo 2, 3, 4
+# FIXME: divdeuo. 2, 3, 4
# Fixed-point compare instructions
-# CHECK: cmpdi 2, 3, 128 # encoding: [0x2d,0x23,0x00,0x80]
- cmpi 2, 1, 3, 128
-# CHECK: cmpd 2, 3, 4 # encoding: [0x7d,0x23,0x20,0x00]
- cmp 2, 1, 3, 4
-# CHECK: cmpldi 2, 3, 128 # encoding: [0x29,0x23,0x00,0x80]
- cmpli 2, 1, 3, 128
-# CHECK: cmpld 2, 3, 4 # encoding: [0x7d,0x23,0x20,0x40]
- cmpl 2, 1, 3, 4
-
-# CHECK: cmpwi 2, 3, 128 # encoding: [0x2d,0x03,0x00,0x80]
- cmpi 2, 0, 3, 128
-# CHECK: cmpw 2, 3, 4 # encoding: [0x7d,0x03,0x20,0x00]
- cmp 2, 0, 3, 4
-# CHECK: cmplwi 2, 3, 128 # encoding: [0x29,0x03,0x00,0x80]
- cmpli 2, 0, 3, 128
-# CHECK: cmplw 2, 3, 4 # encoding: [0x7d,0x03,0x20,0x40]
- cmpl 2, 0, 3, 4
+# CHECK-BE: cmpdi 2, 3, 128 # encoding: [0x2d,0x23,0x00,0x80]
+# CHECK-LE: cmpdi 2, 3, 128 # encoding: [0x80,0x00,0x23,0x2d]
+ cmpi 2, 1, 3, 128
+# CHECK-BE: cmpd 2, 3, 4 # encoding: [0x7d,0x23,0x20,0x00]
+# CHECK-LE: cmpd 2, 3, 4 # encoding: [0x00,0x20,0x23,0x7d]
+ cmp 2, 1, 3, 4
+# CHECK-BE: cmpldi 2, 3, 128 # encoding: [0x29,0x23,0x00,0x80]
+# CHECK-LE: cmpldi 2, 3, 128 # encoding: [0x80,0x00,0x23,0x29]
+ cmpli 2, 1, 3, 128
+# CHECK-BE: cmpld 2, 3, 4 # encoding: [0x7d,0x23,0x20,0x40]
+# CHECK-LE: cmpld 2, 3, 4 # encoding: [0x40,0x20,0x23,0x7d]
+ cmpl 2, 1, 3, 4
+
+# CHECK-BE: cmpwi 2, 3, 128 # encoding: [0x2d,0x03,0x00,0x80]
+# CHECK-LE: cmpwi 2, 3, 128 # encoding: [0x80,0x00,0x03,0x2d]
+ cmpi 2, 0, 3, 128
+# CHECK-BE: cmpw 2, 3, 4 # encoding: [0x7d,0x03,0x20,0x00]
+# CHECK-LE: cmpw 2, 3, 4 # encoding: [0x00,0x20,0x03,0x7d]
+ cmp 2, 0, 3, 4
+# CHECK-BE: cmplwi 2, 3, 128 # encoding: [0x29,0x03,0x00,0x80]
+# CHECK-LE: cmplwi 2, 3, 128 # encoding: [0x80,0x00,0x03,0x29]
+ cmpli 2, 0, 3, 128
+# CHECK-BE: cmplw 2, 3, 4 # encoding: [0x7d,0x03,0x20,0x40]
+# CHECK-LE: cmplw 2, 3, 4 # encoding: [0x40,0x20,0x03,0x7d]
+ cmpl 2, 0, 3, 4
# Fixed-point trap instructions
-# CHECK: twi 2, 3, 4 # encoding: [0x0c,0x43,0x00,0x04]
- twi 2, 3, 4
-# CHECK: tw 2, 3, 4 # encoding: [0x7c,0x43,0x20,0x08]
- tw 2, 3, 4
-# CHECK: tdi 2, 3, 4 # encoding: [0x08,0x43,0x00,0x04]
- tdi 2, 3, 4
-# CHECK: td 2, 3, 4 # encoding: [0x7c,0x43,0x20,0x88]
- td 2, 3, 4
+# CHECK-BE: twi 2, 3, 4 # encoding: [0x0c,0x43,0x00,0x04]
+# CHECK-LE: twi 2, 3, 4 # encoding: [0x04,0x00,0x43,0x0c]
+ twi 2, 3, 4
+# CHECK-BE: tw 2, 3, 4 # encoding: [0x7c,0x43,0x20,0x08]
+# CHECK-LE: tw 2, 3, 4 # encoding: [0x08,0x20,0x43,0x7c]
+ tw 2, 3, 4
+# CHECK-BE: tdi 2, 3, 4 # encoding: [0x08,0x43,0x00,0x04]
+# CHECK-LE: tdi 2, 3, 4 # encoding: [0x04,0x00,0x43,0x08]
+ tdi 2, 3, 4
+# CHECK-BE: td 2, 3, 4 # encoding: [0x7c,0x43,0x20,0x88]
+# CHECK-LE: td 2, 3, 4 # encoding: [0x88,0x20,0x43,0x7c]
+ td 2, 3, 4
# Fixed-point select
-# CHECK: isel 2, 3, 4, 5 # encoding: [0x7c,0x43,0x21,0x5e]
- isel 2, 3, 4, 5
+# CHECK-BE: isel 2, 3, 4, 5 # encoding: [0x7c,0x43,0x21,0x5e]
+# CHECK-LE: isel 2, 3, 4, 5 # encoding: [0x5e,0x21,0x43,0x7c]
+ isel 2, 3, 4, 5
# Fixed-point logical instructions
-# CHECK: andi. 2, 3, 128 # encoding: [0x70,0x62,0x00,0x80]
- andi. 2, 3, 128
-# CHECK: andis. 2, 3, 128 # encoding: [0x74,0x62,0x00,0x80]
- andis. 2, 3, 128
-# CHECK: ori 2, 3, 128 # encoding: [0x60,0x62,0x00,0x80]
- ori 2, 3, 128
-# CHECK: oris 2, 3, 128 # encoding: [0x64,0x62,0x00,0x80]
- oris 2, 3, 128
-# CHECK: xori 2, 3, 128 # encoding: [0x68,0x62,0x00,0x80]
- xori 2, 3, 128
-# CHECK: xoris 2, 3, 128 # encoding: [0x6c,0x62,0x00,0x80]
- xoris 2, 3, 128
-# CHECK: and 2, 3, 4 # encoding: [0x7c,0x62,0x20,0x38]
- and 2, 3, 4
-# CHECK: and. 2, 3, 4 # encoding: [0x7c,0x62,0x20,0x39]
- and. 2, 3, 4
-# CHECK: xor 2, 3, 4 # encoding: [0x7c,0x62,0x22,0x78]
- xor 2, 3, 4
-# CHECK: xor. 2, 3, 4 # encoding: [0x7c,0x62,0x22,0x79]
- xor. 2, 3, 4
-# CHECK: nand 2, 3, 4 # encoding: [0x7c,0x62,0x23,0xb8]
- nand 2, 3, 4
-# CHECK: nand. 2, 3, 4 # encoding: [0x7c,0x62,0x23,0xb9]
- nand. 2, 3, 4
-# CHECK: or 2, 3, 4 # encoding: [0x7c,0x62,0x23,0x78]
- or 2, 3, 4
-# CHECK: or. 2, 3, 4 # encoding: [0x7c,0x62,0x23,0x79]
- or. 2, 3, 4
-# CHECK: nor 2, 3, 4 # encoding: [0x7c,0x62,0x20,0xf8]
- nor 2, 3, 4
-# CHECK: nor. 2, 3, 4 # encoding: [0x7c,0x62,0x20,0xf9]
- nor. 2, 3, 4
-# CHECK: eqv 2, 3, 4 # encoding: [0x7c,0x62,0x22,0x38]
- eqv 2, 3, 4
-# CHECK: eqv. 2, 3, 4 # encoding: [0x7c,0x62,0x22,0x39]
- eqv. 2, 3, 4
-# CHECK: andc 2, 3, 4 # encoding: [0x7c,0x62,0x20,0x78]
- andc 2, 3, 4
-# CHECK: andc. 2, 3, 4 # encoding: [0x7c,0x62,0x20,0x79]
- andc. 2, 3, 4
-# CHECK: orc 2, 3, 4 # encoding: [0x7c,0x62,0x23,0x38]
- orc 2, 3, 4
-# CHECK: orc. 2, 3, 4 # encoding: [0x7c,0x62,0x23,0x39]
- orc. 2, 3, 4
-
-# CHECK: extsb 2, 3 # encoding: [0x7c,0x62,0x07,0x74]
- extsb 2, 3
-# CHECK: extsb. 2, 3 # encoding: [0x7c,0x62,0x07,0x75]
- extsb. 2, 3
-# CHECK: extsh 2, 3 # encoding: [0x7c,0x62,0x07,0x34]
- extsh 2, 3
-# CHECK: extsh. 2, 3 # encoding: [0x7c,0x62,0x07,0x35]
- extsh. 2, 3
-
-# CHECK: cntlzw 2, 3 # encoding: [0x7c,0x62,0x00,0x34]
- cntlzw 2, 3
-# CHECK: cntlzw. 2, 3 # encoding: [0x7c,0x62,0x00,0x35]
- cntlzw. 2, 3
-# FIXME: cmpb 2, 3, 4
-# FIXME: popcntb 2, 3
-# CHECK: popcntw 2, 3 # encoding: [0x7c,0x62,0x02,0xf4]
- popcntw 2, 3
-# FIXME: prtyd 2, 3
-# FIXME: prtyw 2, 3
-
-# CHECK: extsw 2, 3 # encoding: [0x7c,0x62,0x07,0xb4]
- extsw 2, 3
-# CHECK: extsw. 2, 3 # encoding: [0x7c,0x62,0x07,0xb5]
- extsw. 2, 3
-
-# CHECK: cntlzd 2, 3 # encoding: [0x7c,0x62,0x00,0x74]
- cntlzd 2, 3
-# CHECK: cntlzd. 2, 3 # encoding: [0x7c,0x62,0x00,0x75]
- cntlzd. 2, 3
-# CHECK: popcntd 2, 3 # encoding: [0x7c,0x62,0x03,0xf4]
- popcntd 2, 3
-# FIXME: bpermd 2, 3, 4
+# CHECK-BE: andi. 2, 3, 128 # encoding: [0x70,0x62,0x00,0x80]
+# CHECK-LE: andi. 2, 3, 128 # encoding: [0x80,0x00,0x62,0x70]
+ andi. 2, 3, 128
+# CHECK-BE: andis. 2, 3, 128 # encoding: [0x74,0x62,0x00,0x80]
+# CHECK-LE: andis. 2, 3, 128 # encoding: [0x80,0x00,0x62,0x74]
+ andis. 2, 3, 128
+# CHECK-BE: ori 2, 3, 128 # encoding: [0x60,0x62,0x00,0x80]
+# CHECK-LE: ori 2, 3, 128 # encoding: [0x80,0x00,0x62,0x60]
+ ori 2, 3, 128
+# CHECK-BE: oris 2, 3, 128 # encoding: [0x64,0x62,0x00,0x80]
+# CHECK-LE: oris 2, 3, 128 # encoding: [0x80,0x00,0x62,0x64]
+ oris 2, 3, 128
+# CHECK-BE: xori 2, 3, 128 # encoding: [0x68,0x62,0x00,0x80]
+# CHECK-LE: xori 2, 3, 128 # encoding: [0x80,0x00,0x62,0x68]
+ xori 2, 3, 128
+# CHECK-BE: xoris 2, 3, 128 # encoding: [0x6c,0x62,0x00,0x80]
+# CHECK-LE: xoris 2, 3, 128 # encoding: [0x80,0x00,0x62,0x6c]
+ xoris 2, 3, 128
+# CHECK-BE: and 2, 3, 4 # encoding: [0x7c,0x62,0x20,0x38]
+# CHECK-LE: and 2, 3, 4 # encoding: [0x38,0x20,0x62,0x7c]
+ and 2, 3, 4
+# CHECK-BE: and. 2, 3, 4 # encoding: [0x7c,0x62,0x20,0x39]
+# CHECK-LE: and. 2, 3, 4 # encoding: [0x39,0x20,0x62,0x7c]
+ and. 2, 3, 4
+# CHECK-BE: xor 2, 3, 4 # encoding: [0x7c,0x62,0x22,0x78]
+# CHECK-LE: xor 2, 3, 4 # encoding: [0x78,0x22,0x62,0x7c]
+ xor 2, 3, 4
+# CHECK-BE: xor. 2, 3, 4 # encoding: [0x7c,0x62,0x22,0x79]
+# CHECK-LE: xor. 2, 3, 4 # encoding: [0x79,0x22,0x62,0x7c]
+ xor. 2, 3, 4
+# CHECK-BE: nand 2, 3, 4 # encoding: [0x7c,0x62,0x23,0xb8]
+# CHECK-LE: nand 2, 3, 4 # encoding: [0xb8,0x23,0x62,0x7c]
+ nand 2, 3, 4
+# CHECK-BE: nand. 2, 3, 4 # encoding: [0x7c,0x62,0x23,0xb9]
+# CHECK-LE: nand. 2, 3, 4 # encoding: [0xb9,0x23,0x62,0x7c]
+ nand. 2, 3, 4
+# CHECK-BE: or 2, 3, 4 # encoding: [0x7c,0x62,0x23,0x78]
+# CHECK-LE: or 2, 3, 4 # encoding: [0x78,0x23,0x62,0x7c]
+ or 2, 3, 4
+# CHECK-BE: or. 2, 3, 4 # encoding: [0x7c,0x62,0x23,0x79]
+# CHECK-LE: or. 2, 3, 4 # encoding: [0x79,0x23,0x62,0x7c]
+ or. 2, 3, 4
+# CHECK-BE: nor 2, 3, 4 # encoding: [0x7c,0x62,0x20,0xf8]
+# CHECK-LE: nor 2, 3, 4 # encoding: [0xf8,0x20,0x62,0x7c]
+ nor 2, 3, 4
+# CHECK-BE: nor. 2, 3, 4 # encoding: [0x7c,0x62,0x20,0xf9]
+# CHECK-LE: nor. 2, 3, 4 # encoding: [0xf9,0x20,0x62,0x7c]
+ nor. 2, 3, 4
+# CHECK-BE: eqv 2, 3, 4 # encoding: [0x7c,0x62,0x22,0x38]
+# CHECK-LE: eqv 2, 3, 4 # encoding: [0x38,0x22,0x62,0x7c]
+ eqv 2, 3, 4
+# CHECK-BE: eqv. 2, 3, 4 # encoding: [0x7c,0x62,0x22,0x39]
+# CHECK-LE: eqv. 2, 3, 4 # encoding: [0x39,0x22,0x62,0x7c]
+ eqv. 2, 3, 4
+# CHECK-BE: andc 2, 3, 4 # encoding: [0x7c,0x62,0x20,0x78]
+# CHECK-LE: andc 2, 3, 4 # encoding: [0x78,0x20,0x62,0x7c]
+ andc 2, 3, 4
+# CHECK-BE: andc. 2, 3, 4 # encoding: [0x7c,0x62,0x20,0x79]
+# CHECK-LE: andc. 2, 3, 4 # encoding: [0x79,0x20,0x62,0x7c]
+ andc. 2, 3, 4
+# CHECK-BE: orc 2, 3, 4 # encoding: [0x7c,0x62,0x23,0x38]
+# CHECK-LE: orc 2, 3, 4 # encoding: [0x38,0x23,0x62,0x7c]
+ orc 2, 3, 4
+# CHECK-BE: orc. 2, 3, 4 # encoding: [0x7c,0x62,0x23,0x39]
+# CHECK-LE: orc. 2, 3, 4 # encoding: [0x39,0x23,0x62,0x7c]
+ orc. 2, 3, 4
+
+# CHECK-BE: extsb 2, 3 # encoding: [0x7c,0x62,0x07,0x74]
+# CHECK-LE: extsb 2, 3 # encoding: [0x74,0x07,0x62,0x7c]
+ extsb 2, 3
+# CHECK-BE: extsb. 2, 3 # encoding: [0x7c,0x62,0x07,0x75]
+# CHECK-LE: extsb. 2, 3 # encoding: [0x75,0x07,0x62,0x7c]
+ extsb. 2, 3
+# CHECK-BE: extsh 2, 3 # encoding: [0x7c,0x62,0x07,0x34]
+# CHECK-LE: extsh 2, 3 # encoding: [0x34,0x07,0x62,0x7c]
+ extsh 2, 3
+# CHECK-BE: extsh. 2, 3 # encoding: [0x7c,0x62,0x07,0x35]
+# CHECK-LE: extsh. 2, 3 # encoding: [0x35,0x07,0x62,0x7c]
+ extsh. 2, 3
+
+# CHECK-BE: cntlzw 2, 3 # encoding: [0x7c,0x62,0x00,0x34]
+# CHECK-LE: cntlzw 2, 3 # encoding: [0x34,0x00,0x62,0x7c]
+ cntlzw 2, 3
+# CHECK-BE: cntlzw. 2, 3 # encoding: [0x7c,0x62,0x00,0x35]
+# CHECK-LE: cntlzw. 2, 3 # encoding: [0x35,0x00,0x62,0x7c]
+ cntlzw. 2, 3
+# FIXME: cmpb 2, 3, 4
+# FIXME: popcntb 2, 3
+# CHECK-BE: popcntw 2, 3 # encoding: [0x7c,0x62,0x02,0xf4]
+# CHECK-LE: popcntw 2, 3 # encoding: [0xf4,0x02,0x62,0x7c]
+ popcntw 2, 3
+# FIXME: prtyd 2, 3
+# FIXME: prtyw 2, 3
+
+# CHECK-BE: extsw 2, 3 # encoding: [0x7c,0x62,0x07,0xb4]
+# CHECK-LE: extsw 2, 3 # encoding: [0xb4,0x07,0x62,0x7c]
+ extsw 2, 3
+# CHECK-BE: extsw. 2, 3 # encoding: [0x7c,0x62,0x07,0xb5]
+# CHECK-LE: extsw. 2, 3 # encoding: [0xb5,0x07,0x62,0x7c]
+ extsw. 2, 3
+
+# CHECK-BE: cntlzd 2, 3 # encoding: [0x7c,0x62,0x00,0x74]
+# CHECK-LE: cntlzd 2, 3 # encoding: [0x74,0x00,0x62,0x7c]
+ cntlzd 2, 3
+# CHECK-BE: cntlzd. 2, 3 # encoding: [0x7c,0x62,0x00,0x75]
+# CHECK-LE: cntlzd. 2, 3 # encoding: [0x75,0x00,0x62,0x7c]
+ cntlzd. 2, 3
+# CHECK-BE: popcntd 2, 3 # encoding: [0x7c,0x62,0x03,0xf4]
+# CHECK-LE: popcntd 2, 3 # encoding: [0xf4,0x03,0x62,0x7c]
+ popcntd 2, 3
+# FIXME: bpermd 2, 3, 4
# Fixed-point rotate and shift instructions
-# CHECK: rlwinm 2, 3, 4, 5, 6 # encoding: [0x54,0x62,0x21,0x4c]
- rlwinm 2, 3, 4, 5, 6
-# CHECK: rlwinm. 2, 3, 4, 5, 6 # encoding: [0x54,0x62,0x21,0x4d]
- rlwinm. 2, 3, 4, 5, 6
-# CHECK: rlwnm 2, 3, 4, 5, 6 # encoding: [0x5c,0x62,0x21,0x4c]
- rlwnm 2, 3, 4, 5, 6
-# CHECK: rlwnm. 2, 3, 4, 5, 6 # encoding: [0x5c,0x62,0x21,0x4d]
- rlwnm. 2, 3, 4, 5, 6
-# CHECK: rlwimi 2, 3, 4, 5, 6 # encoding: [0x50,0x62,0x21,0x4c]
- rlwimi 2, 3, 4, 5, 6
-# CHECK: rlwimi. 2, 3, 4, 5, 6 # encoding: [0x50,0x62,0x21,0x4d]
- rlwimi. 2, 3, 4, 5, 6
-# CHECK: rldicl 2, 3, 4, 5 # encoding: [0x78,0x62,0x21,0x40]
- rldicl 2, 3, 4, 5
-# CHECK: rldicl. 2, 3, 4, 5 # encoding: [0x78,0x62,0x21,0x41]
- rldicl. 2, 3, 4, 5
-# CHECK: rldicr 2, 3, 4, 5 # encoding: [0x78,0x62,0x21,0x44]
- rldicr 2, 3, 4, 5
-# CHECK: rldicr. 2, 3, 4, 5 # encoding: [0x78,0x62,0x21,0x45]
- rldicr. 2, 3, 4, 5
-# CHECK: rldic 2, 3, 4, 5 # encoding: [0x78,0x62,0x21,0x48]
- rldic 2, 3, 4, 5
-# CHECK: rldic. 2, 3, 4, 5 # encoding: [0x78,0x62,0x21,0x49]
- rldic. 2, 3, 4, 5
-# CHECK: rldcl 2, 3, 4, 5 # encoding: [0x78,0x62,0x21,0x50]
- rldcl 2, 3, 4, 5
-# CHECK: rldcl. 2, 3, 4, 5 # encoding: [0x78,0x62,0x21,0x51]
- rldcl. 2, 3, 4, 5
-# CHECK: rldcr 2, 3, 4, 5 # encoding: [0x78,0x62,0x21,0x52]
- rldcr 2, 3, 4, 5
-# CHECK: rldcr. 2, 3, 4, 5 # encoding: [0x78,0x62,0x21,0x53]
- rldcr. 2, 3, 4, 5
-# CHECK: rldimi 2, 3, 4, 5 # encoding: [0x78,0x62,0x21,0x4c]
- rldimi 2, 3, 4, 5
-# CHECK: rldimi. 2, 3, 4, 5 # encoding: [0x78,0x62,0x21,0x4d]
- rldimi. 2, 3, 4, 5
-
-# CHECK: slw 2, 3, 4 # encoding: [0x7c,0x62,0x20,0x30]
- slw 2, 3, 4
-# CHECK: slw. 2, 3, 4 # encoding: [0x7c,0x62,0x20,0x31]
- slw. 2, 3, 4
-# CHECK: srw 2, 3, 4 # encoding: [0x7c,0x62,0x24,0x30]
- srw 2, 3, 4
-# CHECK: srw. 2, 3, 4 # encoding: [0x7c,0x62,0x24,0x31]
- srw. 2, 3, 4
-# CHECK: srawi 2, 3, 4 # encoding: [0x7c,0x62,0x26,0x70]
- srawi 2, 3, 4
-# CHECK: srawi. 2, 3, 4 # encoding: [0x7c,0x62,0x26,0x71]
- srawi. 2, 3, 4
-# CHECK: sraw 2, 3, 4 # encoding: [0x7c,0x62,0x26,0x30]
- sraw 2, 3, 4
-# CHECK: sraw. 2, 3, 4 # encoding: [0x7c,0x62,0x26,0x31]
- sraw. 2, 3, 4
-# CHECK: sld 2, 3, 4 # encoding: [0x7c,0x62,0x20,0x36]
- sld 2, 3, 4
-# CHECK: sld. 2, 3, 4 # encoding: [0x7c,0x62,0x20,0x37]
- sld. 2, 3, 4
-# CHECK: srd 2, 3, 4 # encoding: [0x7c,0x62,0x24,0x36]
- srd 2, 3, 4
-# CHECK: srd. 2, 3, 4 # encoding: [0x7c,0x62,0x24,0x37]
- srd. 2, 3, 4
-# CHECK: sradi 2, 3, 4 # encoding: [0x7c,0x62,0x26,0x74]
- sradi 2, 3, 4
-# CHECK: sradi. 2, 3, 4 # encoding: [0x7c,0x62,0x26,0x75]
- sradi. 2, 3, 4
-# CHECK: srad 2, 3, 4 # encoding: [0x7c,0x62,0x26,0x34]
- srad 2, 3, 4
-# CHECK: srad. 2, 3, 4 # encoding: [0x7c,0x62,0x26,0x35]
- srad. 2, 3, 4
+# CHECK-BE: rlwinm 2, 3, 4, 5, 6 # encoding: [0x54,0x62,0x21,0x4c]
+# CHECK-LE: rlwinm 2, 3, 4, 5, 6 # encoding: [0x4c,0x21,0x62,0x54]
+ rlwinm 2, 3, 4, 5, 6
+# CHECK-BE: rlwinm. 2, 3, 4, 5, 6 # encoding: [0x54,0x62,0x21,0x4d]
+# CHECK-LE: rlwinm. 2, 3, 4, 5, 6 # encoding: [0x4d,0x21,0x62,0x54]
+ rlwinm. 2, 3, 4, 5, 6
+# CHECK-BE: rlwnm 2, 3, 4, 5, 6 # encoding: [0x5c,0x62,0x21,0x4c]
+# CHECK-LE: rlwnm 2, 3, 4, 5, 6 # encoding: [0x4c,0x21,0x62,0x5c]
+ rlwnm 2, 3, 4, 5, 6
+# CHECK-BE: rlwnm. 2, 3, 4, 5, 6 # encoding: [0x5c,0x62,0x21,0x4d]
+# CHECK-LE: rlwnm. 2, 3, 4, 5, 6 # encoding: [0x4d,0x21,0x62,0x5c]
+ rlwnm. 2, 3, 4, 5, 6
+# CHECK-BE: rlwimi 2, 3, 4, 5, 6 # encoding: [0x50,0x62,0x21,0x4c]
+# CHECK-LE: rlwimi 2, 3, 4, 5, 6 # encoding: [0x4c,0x21,0x62,0x50]
+ rlwimi 2, 3, 4, 5, 6
+# CHECK-BE: rlwimi. 2, 3, 4, 5, 6 # encoding: [0x50,0x62,0x21,0x4d]
+# CHECK-LE: rlwimi. 2, 3, 4, 5, 6 # encoding: [0x4d,0x21,0x62,0x50]
+ rlwimi. 2, 3, 4, 5, 6
+# CHECK-BE: rldicl 2, 3, 4, 5 # encoding: [0x78,0x62,0x21,0x40]
+# CHECK-LE: rldicl 2, 3, 4, 5 # encoding: [0x40,0x21,0x62,0x78]
+ rldicl 2, 3, 4, 5
+# CHECK-BE: rldicl. 2, 3, 4, 5 # encoding: [0x78,0x62,0x21,0x41]
+# CHECK-LE: rldicl. 2, 3, 4, 5 # encoding: [0x41,0x21,0x62,0x78]
+ rldicl. 2, 3, 4, 5
+# CHECK-BE: rldicr 2, 3, 4, 5 # encoding: [0x78,0x62,0x21,0x44]
+# CHECK-LE: rldicr 2, 3, 4, 5 # encoding: [0x44,0x21,0x62,0x78]
+ rldicr 2, 3, 4, 5
+# CHECK-BE: rldicr. 2, 3, 4, 5 # encoding: [0x78,0x62,0x21,0x45]
+# CHECK-LE: rldicr. 2, 3, 4, 5 # encoding: [0x45,0x21,0x62,0x78]
+ rldicr. 2, 3, 4, 5
+# CHECK-BE: rldic 2, 3, 4, 5 # encoding: [0x78,0x62,0x21,0x48]
+# CHECK-LE: rldic 2, 3, 4, 5 # encoding: [0x48,0x21,0x62,0x78]
+ rldic 2, 3, 4, 5
+# CHECK-BE: rldic. 2, 3, 4, 5 # encoding: [0x78,0x62,0x21,0x49]
+# CHECK-LE: rldic. 2, 3, 4, 5 # encoding: [0x49,0x21,0x62,0x78]
+ rldic. 2, 3, 4, 5
+# CHECK-BE: rldcl 2, 3, 4, 5 # encoding: [0x78,0x62,0x21,0x50]
+# CHECK-LE: rldcl 2, 3, 4, 5 # encoding: [0x50,0x21,0x62,0x78]
+ rldcl 2, 3, 4, 5
+# CHECK-BE: rldcl. 2, 3, 4, 5 # encoding: [0x78,0x62,0x21,0x51]
+# CHECK-LE: rldcl. 2, 3, 4, 5 # encoding: [0x51,0x21,0x62,0x78]
+ rldcl. 2, 3, 4, 5
+# CHECK-BE: rldcr 2, 3, 4, 5 # encoding: [0x78,0x62,0x21,0x52]
+# CHECK-LE: rldcr 2, 3, 4, 5 # encoding: [0x52,0x21,0x62,0x78]
+ rldcr 2, 3, 4, 5
+# CHECK-BE: rldcr. 2, 3, 4, 5 # encoding: [0x78,0x62,0x21,0x53]
+# CHECK-LE: rldcr. 2, 3, 4, 5 # encoding: [0x53,0x21,0x62,0x78]
+ rldcr. 2, 3, 4, 5
+# CHECK-BE: rldimi 2, 3, 4, 5 # encoding: [0x78,0x62,0x21,0x4c]
+# CHECK-LE: rldimi 2, 3, 4, 5 # encoding: [0x4c,0x21,0x62,0x78]
+ rldimi 2, 3, 4, 5
+# CHECK-BE: rldimi. 2, 3, 4, 5 # encoding: [0x78,0x62,0x21,0x4d]
+# CHECK-LE: rldimi. 2, 3, 4, 5 # encoding: [0x4d,0x21,0x62,0x78]
+ rldimi. 2, 3, 4, 5
+
+# CHECK-BE: slw 2, 3, 4 # encoding: [0x7c,0x62,0x20,0x30]
+# CHECK-LE: slw 2, 3, 4 # encoding: [0x30,0x20,0x62,0x7c]
+ slw 2, 3, 4
+# CHECK-BE: slw. 2, 3, 4 # encoding: [0x7c,0x62,0x20,0x31]
+# CHECK-LE: slw. 2, 3, 4 # encoding: [0x31,0x20,0x62,0x7c]
+ slw. 2, 3, 4
+# CHECK-BE: srw 2, 3, 4 # encoding: [0x7c,0x62,0x24,0x30]
+# CHECK-LE: srw 2, 3, 4 # encoding: [0x30,0x24,0x62,0x7c]
+ srw 2, 3, 4
+# CHECK-BE: srw. 2, 3, 4 # encoding: [0x7c,0x62,0x24,0x31]
+# CHECK-LE: srw. 2, 3, 4 # encoding: [0x31,0x24,0x62,0x7c]
+ srw. 2, 3, 4
+# CHECK-BE: srawi 2, 3, 4 # encoding: [0x7c,0x62,0x26,0x70]
+# CHECK-LE: srawi 2, 3, 4 # encoding: [0x70,0x26,0x62,0x7c]
+ srawi 2, 3, 4
+# CHECK-BE: srawi. 2, 3, 4 # encoding: [0x7c,0x62,0x26,0x71]
+# CHECK-LE: srawi. 2, 3, 4 # encoding: [0x71,0x26,0x62,0x7c]
+ srawi. 2, 3, 4
+# CHECK-BE: sraw 2, 3, 4 # encoding: [0x7c,0x62,0x26,0x30]
+# CHECK-LE: sraw 2, 3, 4 # encoding: [0x30,0x26,0x62,0x7c]
+ sraw 2, 3, 4
+# CHECK-BE: sraw. 2, 3, 4 # encoding: [0x7c,0x62,0x26,0x31]
+# CHECK-LE: sraw. 2, 3, 4 # encoding: [0x31,0x26,0x62,0x7c]
+ sraw. 2, 3, 4
+# CHECK-BE: sld 2, 3, 4 # encoding: [0x7c,0x62,0x20,0x36]
+# CHECK-LE: sld 2, 3, 4 # encoding: [0x36,0x20,0x62,0x7c]
+ sld 2, 3, 4
+# CHECK-BE: sld. 2, 3, 4 # encoding: [0x7c,0x62,0x20,0x37]
+# CHECK-LE: sld. 2, 3, 4 # encoding: [0x37,0x20,0x62,0x7c]
+ sld. 2, 3, 4
+# CHECK-BE: srd 2, 3, 4 # encoding: [0x7c,0x62,0x24,0x36]
+# CHECK-LE: srd 2, 3, 4 # encoding: [0x36,0x24,0x62,0x7c]
+ srd 2, 3, 4
+# CHECK-BE: srd. 2, 3, 4 # encoding: [0x7c,0x62,0x24,0x37]
+# CHECK-LE: srd. 2, 3, 4 # encoding: [0x37,0x24,0x62,0x7c]
+ srd. 2, 3, 4
+# CHECK-BE: sradi 2, 3, 4 # encoding: [0x7c,0x62,0x26,0x74]
+# CHECK-LE: sradi 2, 3, 4 # encoding: [0x74,0x26,0x62,0x7c]
+ sradi 2, 3, 4
+# CHECK-BE: sradi. 2, 3, 4 # encoding: [0x7c,0x62,0x26,0x75]
+# CHECK-LE: sradi. 2, 3, 4 # encoding: [0x75,0x26,0x62,0x7c]
+ sradi. 2, 3, 4
+# CHECK-BE: srad 2, 3, 4 # encoding: [0x7c,0x62,0x26,0x34]
+# CHECK-LE: srad 2, 3, 4 # encoding: [0x34,0x26,0x62,0x7c]
+ srad 2, 3, 4
+# CHECK-BE: srad. 2, 3, 4 # encoding: [0x7c,0x62,0x26,0x35]
+# CHECK-LE: srad. 2, 3, 4 # encoding: [0x35,0x26,0x62,0x7c]
+ srad. 2, 3, 4
# FIXME: BCD assist instructions
# Move to/from system register instructions
-# CHECK: mtspr 600, 2 # encoding: [0x7c,0x58,0x93,0xa6]
- mtspr 600, 2
-# CHECK: mfspr 2, 600 # encoding: [0x7c,0x58,0x92,0xa6]
- mfspr 2, 600
-# CHECK: mtcrf 123, 2 # encoding: [0x7c,0x47,0xb1,0x20]
- mtcrf 123, 2
-# CHECK: mfcr 2 # encoding: [0x7c,0x40,0x00,0x26]
- mfcr 2
-# CHECK: mtocrf 16, 2 # encoding: [0x7c,0x51,0x01,0x20]
- mtocrf 16, 2
-# CHECK: mfocrf 16, 8 # encoding: [0x7e,0x10,0x80,0x26]
- mfocrf 16, 8
+# CHECK-BE: mtspr 600, 2 # encoding: [0x7c,0x58,0x93,0xa6]
+# CHECK-LE: mtspr 600, 2 # encoding: [0xa6,0x93,0x58,0x7c]
+ mtspr 600, 2
+# CHECK-BE: mfspr 2, 600 # encoding: [0x7c,0x58,0x92,0xa6]
+# CHECK-LE: mfspr 2, 600 # encoding: [0xa6,0x92,0x58,0x7c]
+ mfspr 2, 600
+# CHECK-BE: mtcrf 123, 2 # encoding: [0x7c,0x47,0xb1,0x20]
+# CHECK-LE: mtcrf 123, 2 # encoding: [0x20,0xb1,0x47,0x7c]
+ mtcrf 123, 2
+# CHECK-BE: mfcr 2 # encoding: [0x7c,0x40,0x00,0x26]
+# CHECK-LE: mfcr 2 # encoding: [0x26,0x00,0x40,0x7c]
+ mfcr 2
+# CHECK-BE: mtocrf 16, 2 # encoding: [0x7c,0x51,0x01,0x20]
+# CHECK-LE: mtocrf 16, 2 # encoding: [0x20,0x01,0x51,0x7c]
+ mtocrf 16, 2
+# CHECK-BE: mfocrf 16, 8 # encoding: [0x7e,0x10,0x80,0x26]
+# CHECK-LE: mfocrf 16, 8 # encoding: [0x26,0x80,0x10,0x7e]
+ mfocrf 16, 8
diff --git a/test/MC/PowerPC/ppc64-errors.s b/test/MC/PowerPC/ppc64-errors.s
index 53197ba..ef5d9e8 100644
--- a/test/MC/PowerPC/ppc64-errors.s
+++ b/test/MC/PowerPC/ppc64-errors.s
@@ -1,6 +1,8 @@
# RUN: not llvm-mc -triple powerpc64-unknown-unknown < %s 2> %t
# RUN: FileCheck < %t %s
+# RUN: not llvm-mc -triple powerpc64le-unknown-unknown < %s 2> %t
+# RUN: FileCheck < %t %s
# Register operands
diff --git a/test/MC/PowerPC/ppc64-fixup-apply.s b/test/MC/PowerPC/ppc64-fixup-apply.s
index ba141e4..1693405 100644
--- a/test/MC/PowerPC/ppc64-fixup-apply.s
+++ b/test/MC/PowerPC/ppc64-fixup-apply.s
@@ -1,6 +1,8 @@
# RUN: llvm-mc -triple powerpc64-unknown-unknown -filetype=obj %s | \
-# RUN: llvm-readobj -s -sd | FileCheck %s
+# RUN: llvm-readobj -s -sd | FileCheck -check-prefix=CHECK -check-prefix=CHECK-BE %s
+# RUN: llvm-mc -triple powerpc64le-unknown-unknown -filetype=obj %s | \
+# RUN: llvm-readobj -s -sd | FileCheck -check-prefix=CHECK -check-prefix=CHECK-LE %s
# This checks that fixups that can be resolved within the same
# object file are applied correctly.
@@ -72,10 +74,14 @@ addis 1, 1, target7@highesta
# CHECK-NEXT: AddressAlignment: 4
# CHECK-NEXT: EntrySize: 0
# CHECK-NEXT: SectionData (
-# CHECK-NEXT: 0000: 38211234 3C211234 38215678 3C211234
-# CHECK-NEXT: 0010: 38214444 3C211111 38218001 3C211001
-# CHECK-NEXT: 0020: 38210008 3C210000 38214321 3C214321
-# CHECK-NEXT: 0030: 3821FFFF 3C211234 38210000 3C211235
+# CHECK-BE-NEXT: 0000: 38211234 3C211234 38215678 3C211234
+# CHECK-LE-NEXT: 0000: 34122138 3412213C 78562138 3412213C
+# CHECK-BE-NEXT: 0010: 38214444 3C211111 38218001 3C211001
+# CHECK-LE-NEXT: 0010: 44442138 1111213C 01802138 0110213C
+# CHECK-BE-NEXT: 0020: 38210008 3C210000 38214321 3C214321
+# CHECK-LE-NEXT: 0020: 08002138 0000213C 21432138 2143213C
+# CHECK-BE-NEXT: 0030: 3821FFFF 3C211234 38210000 3C211235
+# CHECK-LE-NEXT: 0030: FFFF2138 3412213C 00002138 3512213C
# CHECK-NEXT: )
# CHECK-NEXT: }
@@ -94,7 +100,8 @@ addis 1, 1, target7@highesta
# CHECK-NEXT: AddressAlignment: 4
# CHECK-NEXT: EntrySize: 0
# CHECK-NEXT: SectionData (
-# CHECK-NEXT: 0000: 12345678 9ABCDEF0 87654321 BEEF42
+# CHECK-BE-NEXT: 0000: 12345678 9ABCDEF0 87654321 BEEF42
+# CHECK-LE-NEXT: 0000: F0DEBC9A 78563412 21436587 EFBE42
# CHECK-NEXT: )
# CHECK-NEXT: }
diff --git a/test/MC/PowerPC/ppc64-fixup-explicit.s b/test/MC/PowerPC/ppc64-fixup-explicit.s
index 7c56fe8..e0720ab 100644
--- a/test/MC/PowerPC/ppc64-fixup-explicit.s
+++ b/test/MC/PowerPC/ppc64-fixup-explicit.s
@@ -1,46 +1,70 @@
-# RUN: llvm-mc -triple powerpc64-unknown-unknown --show-encoding %s | FileCheck %s
+# RUN: llvm-mc -triple powerpc64-unknown-unknown --show-encoding %s | FileCheck -check-prefix=CHECK-BE %s
+# RUN: llvm-mc -triple powerpc64le-unknown-unknown --show-encoding %s | FileCheck -check-prefix=CHECK-LE %s
# RUN: llvm-mc -triple powerpc64-unknown-unknown -filetype=obj %s | \
-# RUN: llvm-readobj -r | FileCheck %s -check-prefix=CHECK-REL
+# RUN: llvm-readobj -r | FileCheck %s -check-prefix=CHECK-BE-REL
+# RUN: llvm-mc -triple powerpc64le-unknown-unknown -filetype=obj %s | \
+# RUN: llvm-readobj -r | FileCheck %s -check-prefix=CHECK-LE-REL
# GOT references must result in explicit relocations
# even if the target symbol is local.
target:
-# CHECK: addi 4, 3, target@GOT # encoding: [0x38,0x83,A,A]
-# CHECK-NEXT: # fixup A - offset: 2, value: target@GOT, kind: fixup_ppc_half16
-# CHECK-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_GOT16 target 0x0
- addi 4, 3, target@got
-
-# CHECK: ld 1, target@GOT(2) # encoding: [0xe8,0x22,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 2, value: target@GOT, kind: fixup_ppc_half16ds
-# CHECK-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_GOT16_DS target 0x0
- ld 1, target@got(2)
-
-# CHECK: addis 3, 2, target@got@ha # encoding: [0x3c,0x62,A,A]
-# CHECK-NEXT: # fixup A - offset: 2, value: target@got@ha, kind: fixup_ppc_half16
-# CHECK-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_GOT16_HA target 0x0
- addis 3, 2, target@got@ha
-
-# CHECK: addi 4, 3, target@got@l # encoding: [0x38,0x83,A,A]
-# CHECK-NEXT: # fixup A - offset: 2, value: target@got@l, kind: fixup_ppc_half16
-# CHECK-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_GOT16_LO target 0x0
- addi 4, 3, target@got@l
-
-# CHECK: addis 3, 2, target@got@h # encoding: [0x3c,0x62,A,A]
-# CHECK-NEXT: # fixup A - offset: 2, value: target@got@h, kind: fixup_ppc_half16
-# CHECK-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_GOT16_HI target 0x0
- addis 3, 2, target@got@h
-
-# CHECK: lwz 1, target@got@l(3) # encoding: [0x80,0x23,A,A]
-# CHECK-NEXT: # fixup A - offset: 2, value: target@got@l, kind: fixup_ppc_half16
-# CHECK-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_GOT16_LO target 0x0
- lwz 1, target@got@l(3)
-
-# CHECK: ld 1, target@got@l(3) # encoding: [0xe8,0x23,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 2, value: target@got@l, kind: fixup_ppc_half16ds
-# CHECK-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_GOT16_LO_DS target 0x0
- ld 1, target@got@l(3)
+# CHECK-BE: addi 4, 3, target@GOT # encoding: [0x38,0x83,A,A]
+# CHECK-LE: addi 4, 3, target@GOT # encoding: [A,A,0x83,0x38]
+# CHECK-BE-NEXT: # fixup A - offset: 2, value: target@GOT, kind: fixup_ppc_half16
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target@GOT, kind: fixup_ppc_half16
+# CHECK-BE-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_GOT16 target 0x0
+# CHECK-LE-REL: 0x{{[0-9A-F]*[048C]}} R_PPC64_GOT16 target 0x0
+ addi 4, 3, target@got
+
+# CHECK-BE: ld 1, target@GOT(2) # encoding: [0xe8,0x22,A,0bAAAAAA00]
+# CHECK-LE: ld 1, target@GOT(2) # encoding: [0bAAAAAA00,A,0x22,0xe8]
+# CHECK-BE-NEXT: # fixup A - offset: 2, value: target@GOT, kind: fixup_ppc_half16ds
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target@GOT, kind: fixup_ppc_half16ds
+# CHECK-BE-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_GOT16_DS target 0x0
+# CHECK-LE-REL: 0x{{[0-9A-F]*[048C]}} R_PPC64_GOT16_DS target 0x0
+ ld 1, target@got(2)
+
+# CHECK-BE: addis 3, 2, target@got@ha # encoding: [0x3c,0x62,A,A]
+# CHECK-LE: addis 3, 2, target@got@ha # encoding: [A,A,0x62,0x3c]
+# CHECK-BE-NEXT: # fixup A - offset: 2, value: target@got@ha, kind: fixup_ppc_half16
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target@got@ha, kind: fixup_ppc_half16
+# CHECK-BE-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_GOT16_HA target 0x0
+# CHECK-LE-REL: 0x{{[0-9A-F]*[048C]}} R_PPC64_GOT16_HA target 0x0
+ addis 3, 2, target@got@ha
+
+# CHECK-BE: addi 4, 3, target@got@l # encoding: [0x38,0x83,A,A]
+# CHECK-LE: addi 4, 3, target@got@l # encoding: [A,A,0x83,0x38]
+# CHECK-BE-NEXT: # fixup A - offset: 2, value: target@got@l, kind: fixup_ppc_half16
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target@got@l, kind: fixup_ppc_half16
+# CHECK-BE-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_GOT16_LO target 0x0
+# CHECK-LE-REL: 0x{{[0-9A-F]*[048C]}} R_PPC64_GOT16_LO target 0x0
+ addi 4, 3, target@got@l
+
+# CHECK-BE: addis 3, 2, target@got@h # encoding: [0x3c,0x62,A,A]
+# CHECK-LE: addis 3, 2, target@got@h # encoding: [A,A,0x62,0x3c]
+# CHECK-BE-NEXT: # fixup A - offset: 2, value: target@got@h, kind: fixup_ppc_half16
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target@got@h, kind: fixup_ppc_half16
+# CHECK-BE-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_GOT16_HI target 0x0
+# CHECK-LE-REL: 0x{{[0-9A-F]*[048C]}} R_PPC64_GOT16_HI target 0x0
+ addis 3, 2, target@got@h
+
+# CHECK-BE: lwz 1, target@got@l(3) # encoding: [0x80,0x23,A,A]
+# CHECK-LE: lwz 1, target@got@l(3) # encoding: [A,A,0x23,0x80]
+# CHECK-BE-NEXT: # fixup A - offset: 2, value: target@got@l, kind: fixup_ppc_half16
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target@got@l, kind: fixup_ppc_half16
+# CHECK-BE-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_GOT16_LO target 0x0
+# CHECK-LE-REL: 0x{{[0-9A-F]*[048C]}} R_PPC64_GOT16_LO target 0x0
+ lwz 1, target@got@l(3)
+
+# CHECK-BE: ld 1, target@got@l(3) # encoding: [0xe8,0x23,A,0bAAAAAA00]
+# CHECK-LE: ld 1, target@got@l(3) # encoding: [0bAAAAAA00,A,0x23,0xe8]
+# CHECK-BE-NEXT: # fixup A - offset: 2, value: target@got@l, kind: fixup_ppc_half16ds
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target@got@l, kind: fixup_ppc_half16ds
+# CHECK-BE-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_GOT16_LO_DS target 0x0
+# CHECK-LE-REL: 0x{{[0-9A-F]*[048C]}} R_PPC64_GOT16_LO_DS target 0x0
+ ld 1, target@got@l(3)
diff --git a/test/MC/PowerPC/ppc64-fixups.s b/test/MC/PowerPC/ppc64-fixups.s
index a075066..d3769f5 100644
--- a/test/MC/PowerPC/ppc64-fixups.s
+++ b/test/MC/PowerPC/ppc64-fixups.s
@@ -1,448 +1,713 @@
-# RUN: llvm-mc -triple powerpc64-unknown-unknown --show-encoding %s | FileCheck %s
+# RUN: llvm-mc -triple powerpc64-unknown-unknown --show-encoding %s | FileCheck -check-prefix=CHECK-BE %s
+# RUN: llvm-mc -triple powerpc64le-unknown-unknown --show-encoding %s | FileCheck -check-prefix=CHECK-LE %s
# RUN: llvm-mc -triple powerpc64-unknown-unknown -filetype=obj %s | \
-# RUN: llvm-readobj -r | FileCheck %s -check-prefix=CHECK-REL
-
-# CHECK: b target # encoding: [0b010010AA,A,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_br24
-# CHECK-REL: 0x{{[0-9A-F]*[048C]}} R_PPC64_REL24 target 0x0
- b target
-
-# CHECK: ba target # encoding: [0b010010AA,A,A,0bAAAAAA10]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_br24abs
-# CHECK-REL: 0x{{[0-9A-F]*[048C]}} R_PPC64_ADDR24 target 0x0
- ba target
-
-# CHECK: beq 0, target # encoding: [0x41,0x82,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
-# CHECK-REL: 0x{{[0-9A-F]*[048C]}} R_PPC64_REL14 target 0x0
- beq target
-
-# CHECK: beqa 0, target # encoding: [0x41,0x82,A,0bAAAAAA10]
-# CHECK-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
-# CHECK-REL: 0x{{[0-9A-F]*[048C]}} R_PPC64_ADDR14 target 0x0
- beqa target
-
-
-# CHECK: li 3, target@l # encoding: [0x38,0x60,A,A]
-# CHECK-NEXT: # fixup A - offset: 2, value: target@l, kind: fixup_ppc_half16
-# CHECK-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_ADDR16_LO target 0x0
- li 3, target@l
-
-# CHECK: addis 3, 3, target@ha # encoding: [0x3c,0x63,A,A]
-# CHECK-NEXT: # fixup A - offset: 2, value: target@ha, kind: fixup_ppc_half16
-# CHECK-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_ADDR16_HA target 0x0
- addis 3, 3, target@ha
-
-# CHECK: lis 3, target@ha # encoding: [0x3c,0x60,A,A]
-# CHECK-NEXT: # fixup A - offset: 2, value: target@ha, kind: fixup_ppc_half16
-# CHECK-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_ADDR16_HA target 0x0
- lis 3, target@ha
-
-# CHECK: addi 4, 3, target@l # encoding: [0x38,0x83,A,A]
-# CHECK-NEXT: # fixup A - offset: 2, value: target@l, kind: fixup_ppc_half16
-# CHECK-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_ADDR16_LO target 0x0
- addi 4, 3, target@l
-
-# CHECK: li 3, target@ha # encoding: [0x38,0x60,A,A]
-# CHECK-NEXT: # fixup A - offset: 2, value: target@ha, kind: fixup_ppc_half16
-# CHECK-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_ADDR16_HA target 0x0
- li 3, target@ha
-
-# CHECK: lis 3, target@l # encoding: [0x3c,0x60,A,A]
-# CHECK-NEXT: # fixup A - offset: 2, value: target@l, kind: fixup_ppc_half16
-# CHECK-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_ADDR16_LO target 0x0
- lis 3, target@l
-
-# CHECK: li 3, target@h # encoding: [0x38,0x60,A,A]
-# CHECK-NEXT: # fixup A - offset: 2, value: target@h, kind: fixup_ppc_half16
-# CHECK-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_ADDR16_HI target 0x0
- li 3, target@h
-
-# CHECK: lis 3, target@h # encoding: [0x3c,0x60,A,A]
-# CHECK-NEXT: # fixup A - offset: 2, value: target@h, kind: fixup_ppc_half16
-# CHECK-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_ADDR16_HI target 0x0
- lis 3, target@h
-
-# CHECK: li 3, target@higher # encoding: [0x38,0x60,A,A]
-# CHECK-NEXT: # fixup A - offset: 2, value: target@higher, kind: fixup_ppc_half16
-# CHECK-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_ADDR16_HIGHER target 0x0
- li 3, target@higher
-
-# CHECK: lis 3, target@highest # encoding: [0x3c,0x60,A,A]
-# CHECK-NEXT: # fixup A - offset: 2, value: target@highest, kind: fixup_ppc_half16
-# CHECK-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_ADDR16_HIGHEST target 0x0
- lis 3, target@highest
-
-# CHECK: li 3, target@highera # encoding: [0x38,0x60,A,A]
-# CHECK-NEXT: # fixup A - offset: 2, value: target@highera, kind: fixup_ppc_half16
-# CHECK-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_ADDR16_HIGHERA target 0x0
- li 3, target@highera
-
-# CHECK: lis 3, target@highesta # encoding: [0x3c,0x60,A,A]
-# CHECK-NEXT: # fixup A - offset: 2, value: target@highesta, kind: fixup_ppc_half16
-# CHECK-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_ADDR16_HIGHESTA target 0x0
- lis 3, target@highesta
-
-# CHECK: lwz 1, target@l(3) # encoding: [0x80,0x23,A,A]
-# CHECK-NEXT: # fixup A - offset: 2, value: target@l, kind: fixup_ppc_half16
-# CHECK-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_ADDR16_LO target 0x0
- lwz 1, target@l(3)
-
-# CHECK: lwz 1, target(3) # encoding: [0x80,0x23,A,A]
-# CHECK-NEXT: # fixup A - offset: 2, value: target, kind: fixup_ppc_half16
-# CHECK-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_ADDR16 target 0x0
- lwz 1, target(3)
-
-# CHECK: ld 1, target@l(3) # encoding: [0xe8,0x23,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 2, value: target@l, kind: fixup_ppc_half16ds
-# CHECK-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_ADDR16_LO_DS target 0x0
- ld 1, target@l(3)
-
-# CHECK: ld 1, target(3) # encoding: [0xe8,0x23,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 2, value: target, kind: fixup_ppc_half16ds
-# CHECK-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_ADDR16_DS target 0x0
- ld 1, target(3)
+# RUN: llvm-readobj -r | FileCheck %s -check-prefix=CHECK-BE-REL
+# RUN: llvm-mc -triple powerpc64le-unknown-unknown -filetype=obj %s | \
+# RUN: llvm-readobj -r | FileCheck %s -check-prefix=CHECK-LE-REL
+
+# CHECK-BE: b target # encoding: [0b010010AA,A,A,0bAAAAAA00]
+# CHECK-LE: b target # encoding: [0bAAAAAA00,A,A,0b010010AA]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_br24
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_br24
+# CHECK-BE-REL: 0x{{[0-9A-F]*[048C]}} R_PPC64_REL24 target 0x0
+# CHECK-LE-REL: 0x{{[0-9A-F]*[048C]}} R_PPC64_REL24 target 0x0
+ b target
+
+# CHECK-BE: ba target # encoding: [0b010010AA,A,A,0bAAAAAA10]
+# CHECK-LE: ba target # encoding: [0bAAAAAA10,A,A,0b010010AA]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_br24abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_br24abs
+# CHECK-BE-REL: 0x{{[0-9A-F]*[048C]}} R_PPC64_ADDR24 target 0x0
+# CHECK-LE-REL: 0x{{[0-9A-F]*[048C]}} R_PPC64_ADDR24 target 0x0
+ ba target
+
+# CHECK-BE: beq 0, target # encoding: [0x41,0x82,A,0bAAAAAA00]
+# CHECK-LE: beq 0, target # encoding: [0bAAAAAA00,A,0x82,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14
+# CHECK-BE-REL: 0x{{[0-9A-F]*[048C]}} R_PPC64_REL14 target 0x0
+# CHECK-LE-REL: 0x{{[0-9A-F]*[048C]}} R_PPC64_REL14 target 0x0
+ beq target
+
+# CHECK-BE: beqa 0, target # encoding: [0x41,0x82,A,0bAAAAAA10]
+# CHECK-LE: beqa 0, target # encoding: [0bAAAAAA10,A,0x82,0x41]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_brcond14abs
+# CHECK-BE-REL: 0x{{[0-9A-F]*[048C]}} R_PPC64_ADDR14 target 0x0
+# CHECK-LE-REL: 0x{{[0-9A-F]*[048C]}} R_PPC64_ADDR14 target 0x0
+ beqa target
+
+
+# CHECK-BE: li 3, target@l # encoding: [0x38,0x60,A,A]
+# CHECK-LE: li 3, target@l # encoding: [A,A,0x60,0x38]
+# CHECK-BE-NEXT: # fixup A - offset: 2, value: target@l, kind: fixup_ppc_half16
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target@l, kind: fixup_ppc_half16
+# CHECK-BE-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_ADDR16_LO target 0x0
+# CHECK-LE-REL: 0x{{[0-9A-F]*[048C]}} R_PPC64_ADDR16_LO target 0x0
+ li 3, target@l
+
+# CHECK-BE: addis 3, 3, target@ha # encoding: [0x3c,0x63,A,A]
+# CHECK-LE: addis 3, 3, target@ha # encoding: [A,A,0x63,0x3c]
+# CHECK-BE-NEXT: # fixup A - offset: 2, value: target@ha, kind: fixup_ppc_half16
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target@ha, kind: fixup_ppc_half16
+# CHECK-BE-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_ADDR16_HA target 0x0
+# CHECK-LE-REL: 0x{{[0-9A-F]*[048C]}} R_PPC64_ADDR16_HA target 0x0
+ addis 3, 3, target@ha
+
+# CHECK-BE: lis 3, target@ha # encoding: [0x3c,0x60,A,A]
+# CHECK-LE: lis 3, target@ha # encoding: [A,A,0x60,0x3c]
+# CHECK-BE-NEXT: # fixup A - offset: 2, value: target@ha, kind: fixup_ppc_half16
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target@ha, kind: fixup_ppc_half16
+# CHECK-BE-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_ADDR16_HA target 0x0
+# CHECK-LE-REL: 0x{{[0-9A-F]*[048C]}} R_PPC64_ADDR16_HA target 0x0
+ lis 3, target@ha
+
+# CHECK-BE: addi 4, 3, target@l # encoding: [0x38,0x83,A,A]
+# CHECK-LE: addi 4, 3, target@l # encoding: [A,A,0x83,0x38]
+# CHECK-BE-NEXT: # fixup A - offset: 2, value: target@l, kind: fixup_ppc_half16
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target@l, kind: fixup_ppc_half16
+# CHECK-BE-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_ADDR16_LO target 0x0
+# CHECK-LE-REL: 0x{{[0-9A-F]*[048C]}} R_PPC64_ADDR16_LO target 0x0
+ addi 4, 3, target@l
+
+# CHECK-BE: li 3, target@ha # encoding: [0x38,0x60,A,A]
+# CHECK-LE: li 3, target@ha # encoding: [A,A,0x60,0x38]
+# CHECK-BE-NEXT: # fixup A - offset: 2, value: target@ha, kind: fixup_ppc_half16
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target@ha, kind: fixup_ppc_half16
+# CHECK-BE-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_ADDR16_HA target 0x0
+# CHECK-LE-REL: 0x{{[0-9A-F]*[048C]}} R_PPC64_ADDR16_HA target 0x0
+ li 3, target@ha
+
+# CHECK-BE: lis 3, target@l # encoding: [0x3c,0x60,A,A]
+# CHECK-LE: lis 3, target@l # encoding: [A,A,0x60,0x3c]
+# CHECK-BE-NEXT: # fixup A - offset: 2, value: target@l, kind: fixup_ppc_half16
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target@l, kind: fixup_ppc_half16
+# CHECK-BE-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_ADDR16_LO target 0x0
+# CHECK-LE-REL: 0x{{[0-9A-F]*[048C]}} R_PPC64_ADDR16_LO target 0x0
+ lis 3, target@l
+
+# CHECK-BE: li 3, target@h # encoding: [0x38,0x60,A,A]
+# CHECK-LE: li 3, target@h # encoding: [A,A,0x60,0x38]
+# CHECK-BE-NEXT: # fixup A - offset: 2, value: target@h, kind: fixup_ppc_half16
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target@h, kind: fixup_ppc_half16
+# CHECK-BE-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_ADDR16_HI target 0x0
+# CHECK-LE-REL: 0x{{[0-9A-F]*[048C]}} R_PPC64_ADDR16_HI target 0x0
+ li 3, target@h
+
+# CHECK-BE: lis 3, target@h # encoding: [0x3c,0x60,A,A]
+# CHECK-LE: lis 3, target@h # encoding: [A,A,0x60,0x3c]
+# CHECK-BE-NEXT: # fixup A - offset: 2, value: target@h, kind: fixup_ppc_half16
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target@h, kind: fixup_ppc_half16
+# CHECK-BE-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_ADDR16_HI target 0x0
+# CHECK-LE-REL: 0x{{[0-9A-F]*[048C]}} R_PPC64_ADDR16_HI target 0x0
+ lis 3, target@h
+
+# CHECK-BE: li 3, target@higher # encoding: [0x38,0x60,A,A]
+# CHECK-LE: li 3, target@higher # encoding: [A,A,0x60,0x38]
+# CHECK-BE-NEXT: # fixup A - offset: 2, value: target@higher, kind: fixup_ppc_half16
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target@higher, kind: fixup_ppc_half16
+# CHECK-BE-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_ADDR16_HIGHER target 0x0
+# CHECK-LE-REL: 0x{{[0-9A-F]*[048C]}} R_PPC64_ADDR16_HIGHER target 0x0
+ li 3, target@higher
+
+# CHECK-BE: lis 3, target@highest # encoding: [0x3c,0x60,A,A]
+# CHECK-LE: lis 3, target@highest # encoding: [A,A,0x60,0x3c]
+# CHECK-BE-NEXT: # fixup A - offset: 2, value: target@highest, kind: fixup_ppc_half16
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target@highest, kind: fixup_ppc_half16
+# CHECK-BE-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_ADDR16_HIGHEST target 0x0
+# CHECK-LE-REL: 0x{{[0-9A-F]*[048C]}} R_PPC64_ADDR16_HIGHEST target 0x0
+ lis 3, target@highest
+
+# CHECK-BE: li 3, target@highera # encoding: [0x38,0x60,A,A]
+# CHECK-LE: li 3, target@highera # encoding: [A,A,0x60,0x38]
+# CHECK-BE-NEXT: # fixup A - offset: 2, value: target@highera, kind: fixup_ppc_half16
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target@highera, kind: fixup_ppc_half16
+# CHECK-BE-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_ADDR16_HIGHERA target 0x0
+# CHECK-LE-REL: 0x{{[0-9A-F]*[048C]}} R_PPC64_ADDR16_HIGHERA target 0x0
+ li 3, target@highera
+
+# CHECK-BE: lis 3, target@highesta # encoding: [0x3c,0x60,A,A]
+# CHECK-LE: lis 3, target@highesta # encoding: [A,A,0x60,0x3c]
+# CHECK-BE-NEXT: # fixup A - offset: 2, value: target@highesta, kind: fixup_ppc_half16
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target@highesta, kind: fixup_ppc_half16
+# CHECK-BE-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_ADDR16_HIGHESTA target 0x0
+# CHECK-LE-REL: 0x{{[0-9A-F]*[048C]}} R_PPC64_ADDR16_HIGHESTA target 0x0
+ lis 3, target@highesta
+
+# CHECK-BE: lwz 1, target@l(3) # encoding: [0x80,0x23,A,A]
+# CHECK-LE: lwz 1, target@l(3) # encoding: [A,A,0x23,0x80]
+# CHECK-BE-NEXT: # fixup A - offset: 2, value: target@l, kind: fixup_ppc_half16
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target@l, kind: fixup_ppc_half16
+# CHECK-BE-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_ADDR16_LO target 0x0
+# CHECK-LE-REL: 0x{{[0-9A-F]*[048C]}} R_PPC64_ADDR16_LO target 0x0
+ lwz 1, target@l(3)
+
+# CHECK-BE: lwz 1, target(3) # encoding: [0x80,0x23,A,A]
+# CHECK-LE: lwz 1, target(3) # encoding: [A,A,0x23,0x80]
+# CHECK-BE-NEXT: # fixup A - offset: 2, value: target, kind: fixup_ppc_half16
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_half16
+# CHECK-BE-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_ADDR16 target 0x0
+# CHECK-LE-REL: 0x{{[0-9A-F]*[048C]}} R_PPC64_ADDR16 target 0x0
+ lwz 1, target(3)
+
+# CHECK-BE: ld 1, target@l(3) # encoding: [0xe8,0x23,A,0bAAAAAA00]
+# CHECK-LE: ld 1, target@l(3) # encoding: [0bAAAAAA00,A,0x23,0xe8]
+# CHECK-BE-NEXT: # fixup A - offset: 2, value: target@l, kind: fixup_ppc_half16ds
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target@l, kind: fixup_ppc_half16ds
+# CHECK-BE-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_ADDR16_LO_DS target 0x0
+# CHECK-LE-REL: 0x{{[0-9A-F]*[048C]}} R_PPC64_ADDR16_LO_DS target 0x0
+ ld 1, target@l(3)
+
+# CHECK-BE: ld 1, target(3) # encoding: [0xe8,0x23,A,0bAAAAAA00]
+# CHECK-LE: ld 1, target(3) # encoding: [0bAAAAAA00,A,0x23,0xe8]
+# CHECK-BE-NEXT: # fixup A - offset: 2, value: target, kind: fixup_ppc_half16ds
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target, kind: fixup_ppc_half16ds
+# CHECK-BE-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_ADDR16_DS target 0x0
+# CHECK-LE-REL: 0x{{[0-9A-F]*[048C]}} R_PPC64_ADDR16_DS target 0x0
+ ld 1, target(3)
base:
-# CHECK: lwz 1, target-base(3) # encoding: [0x80,0x23,A,A]
-# CHECK-NEXT: # fixup A - offset: 2, value: target-base, kind: fixup_ppc_half16
-# CHECK-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_REL16 target 0x2
- lwz 1, target-base(3)
-
-# CHECK: li 3, target-base@h # encoding: [0x38,0x60,A,A]
-# CHECK-NEXT: # fixup A - offset: 2, value: target-base@h, kind: fixup_ppc_half16
-# CHECK-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_REL16_HI target 0x6
- li 3, target-base@h
-
-# CHECK: li 3, target-base@l # encoding: [0x38,0x60,A,A]
-# CHECK-NEXT: # fixup A - offset: 2, value: target-base@l, kind: fixup_ppc_half16
-# CHECK-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_REL16_LO target 0xA
- li 3, target-base@l
-
-# CHECK: li 3, target-base@ha # encoding: [0x38,0x60,A,A]
-# CHECK-NEXT: # fixup A - offset: 2, value: target-base@ha, kind: fixup_ppc_half16
-# CHECK-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_REL16_HA target 0xE
- li 3, target-base@ha
-
-# CHECK: ori 3, 3, target@l # encoding: [0x60,0x63,A,A]
-# CHECK-NEXT: # fixup A - offset: 2, value: target@l, kind: fixup_ppc_half16
-# CHECK-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_ADDR16_LO target 0x0
- ori 3, 3, target@l
-
-# CHECK: oris 3, 3, target@h # encoding: [0x64,0x63,A,A]
-# CHECK-NEXT: # fixup A - offset: 2, value: target@h, kind: fixup_ppc_half16
-# CHECK-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_ADDR16_HI target 0x0
- oris 3, 3, target@h
-
-# CHECK: ld 1, target@toc(2) # encoding: [0xe8,0x22,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 2, value: target@toc, kind: fixup_ppc_half16ds
-# CHECK-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_TOC16_DS target 0x0
- ld 1, target@toc(2)
-
-# CHECK: addis 3, 2, target@toc@ha # encoding: [0x3c,0x62,A,A]
-# CHECK-NEXT: # fixup A - offset: 2, value: target@toc@ha, kind: fixup_ppc_half16
-# CHECK-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_TOC16_HA target 0x0
- addis 3, 2, target@toc@ha
-
-# CHECK: addi 4, 3, target@toc@l # encoding: [0x38,0x83,A,A]
-# CHECK-NEXT: # fixup A - offset: 2, value: target@toc@l, kind: fixup_ppc_half16
-# CHECK-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_TOC16_LO target 0x0
- addi 4, 3, target@toc@l
-
-# CHECK: addis 3, 2, target@toc@h # encoding: [0x3c,0x62,A,A]
-# CHECK-NEXT: # fixup A - offset: 2, value: target@toc@h, kind: fixup_ppc_half16
-# CHECK-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_TOC16_HI target 0x0
- addis 3, 2, target@toc@h
-
-# CHECK: lwz 1, target@toc@l(3) # encoding: [0x80,0x23,A,A]
-# CHECK-NEXT: # fixup A - offset: 2, value: target@toc@l, kind: fixup_ppc_half16
-# CHECK-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_TOC16_LO target 0x0
- lwz 1, target@toc@l(3)
-
-# CHECK: ld 1, target@toc@l(3) # encoding: [0xe8,0x23,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 2, value: target@toc@l, kind: fixup_ppc_half16ds
-# CHECK-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_TOC16_LO_DS target 0x0
- ld 1, target@toc@l(3)
-
-# CHECK: addi 4, 3, target@GOT # encoding: [0x38,0x83,A,A]
-# CHECK-NEXT: # fixup A - offset: 2, value: target@GOT, kind: fixup_ppc_half16
-# CHECK-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_GOT16 target 0x0
- addi 4, 3, target@got
-
-# CHECK: ld 1, target@GOT(2) # encoding: [0xe8,0x22,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 2, value: target@GOT, kind: fixup_ppc_half16ds
-# CHECK-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_GOT16_DS target 0x0
- ld 1, target@got(2)
-
-# CHECK: addis 3, 2, target@got@ha # encoding: [0x3c,0x62,A,A]
-# CHECK-NEXT: # fixup A - offset: 2, value: target@got@ha, kind: fixup_ppc_half16
-# CHECK-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_GOT16_HA target 0x0
- addis 3, 2, target@got@ha
-
-# CHECK: addi 4, 3, target@got@l # encoding: [0x38,0x83,A,A]
-# CHECK-NEXT: # fixup A - offset: 2, value: target@got@l, kind: fixup_ppc_half16
-# CHECK-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_GOT16_LO target 0x0
- addi 4, 3, target@got@l
-
-# CHECK: addis 3, 2, target@got@h # encoding: [0x3c,0x62,A,A]
-# CHECK-NEXT: # fixup A - offset: 2, value: target@got@h, kind: fixup_ppc_half16
-# CHECK-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_GOT16_HI target 0x0
- addis 3, 2, target@got@h
-
-# CHECK: lwz 1, target@got@l(3) # encoding: [0x80,0x23,A,A]
-# CHECK-NEXT: # fixup A - offset: 2, value: target@got@l, kind: fixup_ppc_half16
-# CHECK-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_GOT16_LO target 0x0
- lwz 1, target@got@l(3)
-
-# CHECK: ld 1, target@got@l(3) # encoding: [0xe8,0x23,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 2, value: target@got@l, kind: fixup_ppc_half16ds
-# CHECK-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_GOT16_LO_DS target 0x0
- ld 1, target@got@l(3)
-
-
-# CHECK: addis 3, 2, target@tprel@ha # encoding: [0x3c,0x62,A,A]
-# CHECK-NEXT: # fixup A - offset: 2, value: target@tprel@ha, kind: fixup_ppc_half16
-# CHECK-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_TPREL16_HA target 0x0
- addis 3, 2, target@tprel@ha
-
-# CHECK: addi 3, 3, target@tprel@l # encoding: [0x38,0x63,A,A]
-# CHECK-NEXT: # fixup A - offset: 2, value: target@tprel@l, kind: fixup_ppc_half16
-# CHECK-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_TPREL16_LO target 0x0
- addi 3, 3, target@tprel@l
-
-# CHECK: addi 3, 3, target@tprel # encoding: [0x38,0x63,A,A]
-# CHECK-NEXT: # fixup A - offset: 2, value: target@tprel, kind: fixup_ppc_half16
-# CHECK-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_TPREL16 target 0x0
- addi 3, 3, target@tprel
-
-# CHECK: addi 3, 3, target@tprel@h # encoding: [0x38,0x63,A,A]
-# CHECK-NEXT: # fixup A - offset: 2, value: target@tprel@h, kind: fixup_ppc_half16
-# CHECK-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_TPREL16_HI target 0x0
- addi 3, 3, target@tprel@h
-
-# CHECK: addi 3, 3, target@tprel@higher # encoding: [0x38,0x63,A,A]
-# CHECK-NEXT: # fixup A - offset: 2, value: target@tprel@higher, kind: fixup_ppc_half16
-# CHECK-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_TPREL16_HIGHER target 0x0
- addi 3, 3, target@tprel@higher
-
-# CHECK: addis 3, 2, target@tprel@highest # encoding: [0x3c,0x62,A,A]
-# CHECK-NEXT: # fixup A - offset: 2, value: target@tprel@highest, kind: fixup_ppc_half16
-# CHECK-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_TPREL16_HIGHEST target 0x0
- addis 3, 2, target@tprel@highest
-
-# CHECK: addi 3, 3, target@tprel@highera # encoding: [0x38,0x63,A,A]
-# CHECK-NEXT: # fixup A - offset: 2, value: target@tprel@highera, kind: fixup_ppc_half16
-# CHECK-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_TPREL16_HIGHERA target 0x0
- addi 3, 3, target@tprel@highera
-
-# CHECK: addis 3, 2, target@tprel@highesta # encoding: [0x3c,0x62,A,A]
-# CHECK-NEXT: # fixup A - offset: 2, value: target@tprel@highesta, kind: fixup_ppc_half16
-# CHECK-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_TPREL16_HIGHESTA target 0x0
- addis 3, 2, target@tprel@highesta
-
-# CHECK: ld 1, target@tprel@l(3) # encoding: [0xe8,0x23,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 2, value: target@tprel@l, kind: fixup_ppc_half16ds
-# CHECK-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_TPREL16_LO_DS target 0x0
- ld 1, target@tprel@l(3)
-
-# CHECK: ld 1, target@tprel(3) # encoding: [0xe8,0x23,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 2, value: target@tprel, kind: fixup_ppc_half16ds
-# CHECK-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_TPREL16_DS target 0x0
- ld 1, target@tprel(3)
-
-# CHECK: addis 3, 2, target@dtprel@ha # encoding: [0x3c,0x62,A,A]
-# CHECK-NEXT: # fixup A - offset: 2, value: target@dtprel@ha, kind: fixup_ppc_half16
-# CHECK-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_DTPREL16_HA target 0x0
- addis 3, 2, target@dtprel@ha
-
-# CHECK: addi 3, 3, target@dtprel@l # encoding: [0x38,0x63,A,A]
-# CHECK-NEXT: # fixup A - offset: 2, value: target@dtprel@l, kind: fixup_ppc_half16
-# CHECK-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_DTPREL16_LO target 0x0
- addi 3, 3, target@dtprel@l
-
-# CHECK: addi 3, 3, target@dtprel # encoding: [0x38,0x63,A,A]
-# CHECK-NEXT: # fixup A - offset: 2, value: target@dtprel, kind: fixup_ppc_half16
-# CHECK-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_DTPREL16 target 0x0
- addi 3, 3, target@dtprel
-
-# CHECK: addi 3, 3, target@dtprel@h # encoding: [0x38,0x63,A,A]
-# CHECK-NEXT: # fixup A - offset: 2, value: target@dtprel@h, kind: fixup_ppc_half16
-# CHECK-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_DTPREL16_HI target 0x0
- addi 3, 3, target@dtprel@h
-
-# CHECK: addi 3, 3, target@dtprel@higher # encoding: [0x38,0x63,A,A]
-# CHECK-NEXT: # fixup A - offset: 2, value: target@dtprel@higher, kind: fixup_ppc_half16
-# CHECK-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_DTPREL16_HIGHER target 0x0
- addi 3, 3, target@dtprel@higher
-
-# CHECK: addis 3, 2, target@dtprel@highest # encoding: [0x3c,0x62,A,A]
-# CHECK-NEXT: # fixup A - offset: 2, value: target@dtprel@highest, kind: fixup_ppc_half16
-# CHECK-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_DTPREL16_HIGHEST target 0x0
- addis 3, 2, target@dtprel@highest
-
-# CHECK: addi 3, 3, target@dtprel@highera # encoding: [0x38,0x63,A,A]
-# CHECK-NEXT: # fixup A - offset: 2, value: target@dtprel@highera, kind: fixup_ppc_half16
-# CHECK-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_DTPREL16_HIGHERA target 0x0
- addi 3, 3, target@dtprel@highera
-
-# CHECK: addis 3, 2, target@dtprel@highesta # encoding: [0x3c,0x62,A,A]
-# CHECK-NEXT: # fixup A - offset: 2, value: target@dtprel@highesta, kind: fixup_ppc_half16
-# CHECK-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_DTPREL16_HIGHESTA target 0x0
- addis 3, 2, target@dtprel@highesta
-
-# CHECK: ld 1, target@dtprel@l(3) # encoding: [0xe8,0x23,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 2, value: target@dtprel@l, kind: fixup_ppc_half16ds
-# CHECK-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_DTPREL16_LO_DS target 0x0
- ld 1, target@dtprel@l(3)
-
-# CHECK: ld 1, target@dtprel(3) # encoding: [0xe8,0x23,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 2, value: target@dtprel, kind: fixup_ppc_half16ds
-# CHECK-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_DTPREL16_DS target 0x0
- ld 1, target@dtprel(3)
-
-
-# CHECK: addis 3, 2, target@got@tprel@ha # encoding: [0x3c,0x62,A,A]
-# CHECK-NEXT: # fixup A - offset: 2, value: target@got@tprel@ha, kind: fixup_ppc_half16
-# CHECK-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_GOT_TPREL16_HA target 0x0
- addis 3, 2, target@got@tprel@ha
-
-# CHECK: ld 1, target@got@tprel@l(3) # encoding: [0xe8,0x23,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 2, value: target@got@tprel@l, kind: fixup_ppc_half16ds
-# CHECK-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_GOT_TPREL16_LO_DS target 0x0
- ld 1, target@got@tprel@l(3)
-
-# CHECK: addis 3, 2, target@got@tprel@h # encoding: [0x3c,0x62,A,A]
-# CHECK-NEXT: # fixup A - offset: 2, value: target@got@tprel@h, kind: fixup_ppc_half16
-# CHECK-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_GOT_TPREL16_HI target 0x0
- addis 3, 2, target@got@tprel@h
-
-# CHECK: addis 3, 2, target@got@tprel@l # encoding: [0x3c,0x62,A,A]
-# CHECK-NEXT: # fixup A - offset: 2, value: target@got@tprel@l, kind: fixup_ppc_half16
-# CHECK-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_GOT_TPREL16_LO_DS target 0x0
- addis 3, 2, target@got@tprel@l
-
-# CHECK: addis 3, 2, target@got@tprel # encoding: [0x3c,0x62,A,A]
-# CHECK-NEXT: # fixup A - offset: 2, value: target@got@tprel, kind: fixup_ppc_half16
-# CHECK-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_GOT_TPREL16_DS target 0x0
- addis 3, 2, target@got@tprel
-
-# CHECK: ld 1, target@got@tprel(3) # encoding: [0xe8,0x23,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 2, value: target@got@tprel, kind: fixup_ppc_half16ds
-# CHECK-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_GOT_TPREL16_DS target 0x0
- ld 1, target@got@tprel(3)
-
-# CHECK: addis 3, 2, target@got@dtprel@ha # encoding: [0x3c,0x62,A,A]
-# CHECK-NEXT: # fixup A - offset: 2, value: target@got@dtprel@ha, kind: fixup_ppc_half16
-# CHECK-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_GOT_DTPREL16_HA target 0x0
- addis 3, 2, target@got@dtprel@ha
-
-# CHECK: ld 1, target@got@dtprel@l(3) # encoding: [0xe8,0x23,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 2, value: target@got@dtprel@l, kind: fixup_ppc_half16ds
-# CHECK-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_GOT_DTPREL16_LO_DS target 0x0
- ld 1, target@got@dtprel@l(3)
-
-# CHECK: addis 3, 2, target@got@dtprel@h # encoding: [0x3c,0x62,A,A]
-# CHECK-NEXT: # fixup A - offset: 2, value: target@got@dtprel@h, kind: fixup_ppc_half16
-# CHECK-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_GOT_DTPREL16_HI target 0x0
- addis 3, 2, target@got@dtprel@h
-
-# CHECK: addis 3, 2, target@got@dtprel@l # encoding: [0x3c,0x62,A,A]
-# CHECK-NEXT: # fixup A - offset: 2, value: target@got@dtprel@l, kind: fixup_ppc_half16
-# CHECK-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_GOT_DTPREL16_LO_DS target 0x0
- addis 3, 2, target@got@dtprel@l
-
-# CHECK: addis 3, 2, target@got@dtprel # encoding: [0x3c,0x62,A,A]
-# CHECK-NEXT: # fixup A - offset: 2, value: target@got@dtprel, kind: fixup_ppc_half16
-# CHECK-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_GOT_DTPREL16_DS target 0x0
- addis 3, 2, target@got@dtprel
-
-# CHECK: ld 1, target@got@dtprel(3) # encoding: [0xe8,0x23,A,0bAAAAAA00]
-# CHECK-NEXT: # fixup A - offset: 2, value: target@got@dtprel, kind: fixup_ppc_half16ds
-# CHECK-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_GOT_DTPREL16_DS target 0x0
- ld 1, target@got@dtprel(3)
-
-# CHECK: addis 3, 2, target@got@tlsgd@ha # encoding: [0x3c,0x62,A,A]
-# CHECK-NEXT: # fixup A - offset: 2, value: target@got@tlsgd@ha, kind: fixup_ppc_half16
-# CHECK-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_GOT_TLSGD16_HA target 0x0
- addis 3, 2, target@got@tlsgd@ha
-
-# CHECK: addi 3, 3, target@got@tlsgd@l # encoding: [0x38,0x63,A,A]
-# CHECK-NEXT: # fixup A - offset: 2, value: target@got@tlsgd@l, kind: fixup_ppc_half16
-# CHECK-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_GOT_TLSGD16_LO target 0x0
- addi 3, 3, target@got@tlsgd@l
-
-# CHECK: addi 3, 3, target@got@tlsgd@h # encoding: [0x38,0x63,A,A]
-# CHECK-NEXT: # fixup A - offset: 2, value: target@got@tlsgd@h, kind: fixup_ppc_half16
-# CHECK-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_GOT_TLSGD16_HI target 0x0
- addi 3, 3, target@got@tlsgd@h
-
-# CHECK: addi 3, 3, target@got@tlsgd # encoding: [0x38,0x63,A,A]
-# CHECK-NEXT: # fixup A - offset: 2, value: target@got@tlsgd, kind: fixup_ppc_half16
-# CHECK-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_GOT_TLSGD16 target 0x0
- addi 3, 3, target@got@tlsgd
-
-
-# CHECK: addis 3, 2, target@got@tlsld@ha # encoding: [0x3c,0x62,A,A]
-# CHECK-NEXT: # fixup A - offset: 2, value: target@got@tlsld@ha, kind: fixup_ppc_half16
-# CHECK-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_GOT_TLSLD16_HA target 0x0
- addis 3, 2, target@got@tlsld@ha
-
-# CHECK: addi 3, 3, target@got@tlsld@l # encoding: [0x38,0x63,A,A]
-# CHECK-NEXT: # fixup A - offset: 2, value: target@got@tlsld@l, kind: fixup_ppc_half16
-# CHECK-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_GOT_TLSLD16_LO target 0x0
- addi 3, 3, target@got@tlsld@l
-
-# CHECK: addi 3, 3, target@got@tlsld@h # encoding: [0x38,0x63,A,A]
-# CHECK-NEXT: # fixup A - offset: 2, value: target@got@tlsld@h, kind: fixup_ppc_half16
-# CHECK-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_GOT_TLSLD16_HI target 0x0
- addi 3, 3, target@got@tlsld@h
-
-# CHECK: addi 3, 3, target@got@tlsld # encoding: [0x38,0x63,A,A]
-# CHECK-NEXT: # fixup A - offset: 2, value: target@got@tlsld, kind: fixup_ppc_half16
-# CHECK-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_GOT_TLSLD16 target 0x0
- addi 3, 3, target@got@tlsld
-
-# CHECK: bl __tls_get_addr(target@tlsgd) # encoding: [0b010010BB,B,B,0bBBBBBB01]
-# CHECK-NEXT: # fixup A - offset: 0, value: target@tlsgd, kind: fixup_ppc_nofixup
-# CHECK-NEXT: # fixup B - offset: 0, value: __tls_get_addr, kind: fixup_ppc_br24
-# CHECK-REL: 0x{{[0-9A-F]*[048C]}} R_PPC64_TLSGD target 0x0
-# CHECK-REL-NEXT: 0x{{[0-9A-F]*[048C]}} R_PPC64_REL24 __tls_get_addr 0x0
- bl __tls_get_addr(target@tlsgd)
-
-# CHECK: bl __tls_get_addr(target@tlsld) # encoding: [0b010010BB,B,B,0bBBBBBB01]
-# CHECK-NEXT: # fixup A - offset: 0, value: target@tlsld, kind: fixup_ppc_nofixup
-# CHECK-NEXT: # fixup B - offset: 0, value: __tls_get_addr, kind: fixup_ppc_br24
-# CHECK-REL: 0x{{[0-9A-F]*[048C]}} R_PPC64_TLSLD target 0x0
-# CHECK-REL-NEXT: 0x{{[0-9A-F]*[048C]}} R_PPC64_REL24 __tls_get_addr 0x0
- bl __tls_get_addr(target@tlsld)
-
-# CHECK: add 3, 4, target@tls # encoding: [0x7c,0x64,0x6a,0x14]
-# CHECK-NEXT: # fixup A - offset: 0, value: target@tls, kind: fixup_ppc_nofixup
-# CHECK-REL: 0x{{[0-9A-F]*[048C]}} R_PPC64_TLS target 0x0
- add 3, 4, target@tls
-
+# CHECK-BE: lwz 1, target-base(3) # encoding: [0x80,0x23,A,A]
+# CHECK-LE: lwz 1, target-base(3) # encoding: [A,A,0x23,0x80]
+# CHECK-BE-NEXT: # fixup A - offset: 2, value: target-base, kind: fixup_ppc_half16
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target-base, kind: fixup_ppc_half16
+# CHECK-BE-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_REL16 target 0x2
+# CHECK-LE-REL: 0x{{[0-9A-F]*[048C]}} R_PPC64_REL16 target 0x0
+ lwz 1, target-base(3)
+
+# CHECK-BE: li 3, target-base@h # encoding: [0x38,0x60,A,A]
+# CHECK-LE: li 3, target-base@h # encoding: [A,A,0x60,0x38]
+# CHECK-BE-NEXT: # fixup A - offset: 2, value: target-base@h, kind: fixup_ppc_half16
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target-base@h, kind: fixup_ppc_half16
+# CHECK-BE-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_REL16_HI target 0x6
+# CHECK-LE-REL: 0x{{[0-9A-F]*[048C]}} R_PPC64_REL16_HI target 0x4
+ li 3, target-base@h
+
+# CHECK-BE: li 3, target-base@l # encoding: [0x38,0x60,A,A]
+# CHECK-LE: li 3, target-base@l # encoding: [A,A,0x60,0x38]
+# CHECK-BE-NEXT: # fixup A - offset: 2, value: target-base@l, kind: fixup_ppc_half16
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target-base@l, kind: fixup_ppc_half16
+# CHECK-BE-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_REL16_LO target 0xA
+# CHECK-LE-REL: 0x{{[0-9A-F]*[048C]}} R_PPC64_REL16_LO target 0x8
+ li 3, target-base@l
+
+# CHECK-BE: li 3, target-base@ha # encoding: [0x38,0x60,A,A]
+# CHECK-LE: li 3, target-base@ha # encoding: [A,A,0x60,0x38]
+# CHECK-BE-NEXT: # fixup A - offset: 2, value: target-base@ha, kind: fixup_ppc_half16
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target-base@ha, kind: fixup_ppc_half16
+# CHECK-BE-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_REL16_HA target 0xE
+# CHECK-LE-REL: 0x{{[0-9A-F]*[048C]}} R_PPC64_REL16_HA target 0xC
+ li 3, target-base@ha
+
+# CHECK-BE: ori 3, 3, target@l # encoding: [0x60,0x63,A,A]
+# CHECK-LE: ori 3, 3, target@l # encoding: [A,A,0x63,0x60]
+# CHECK-BE-NEXT: # fixup A - offset: 2, value: target@l, kind: fixup_ppc_half16
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target@l, kind: fixup_ppc_half16
+# CHECK-BE-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_ADDR16_LO target 0x0
+# CHECK-LE-REL: 0x{{[0-9A-F]*[048C]}} R_PPC64_ADDR16_LO target 0x0
+ ori 3, 3, target@l
+
+# CHECK-BE: oris 3, 3, target@h # encoding: [0x64,0x63,A,A]
+# CHECK-LE: oris 3, 3, target@h # encoding: [A,A,0x63,0x64]
+# CHECK-BE-NEXT: # fixup A - offset: 2, value: target@h, kind: fixup_ppc_half16
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target@h, kind: fixup_ppc_half16
+# CHECK-BE-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_ADDR16_HI target 0x0
+# CHECK-LE-REL: 0x{{[0-9A-F]*[048C]}} R_PPC64_ADDR16_HI target 0x0
+ oris 3, 3, target@h
+
+# CHECK-BE: ld 1, target@toc(2) # encoding: [0xe8,0x22,A,0bAAAAAA00]
+# CHECK-LE: ld 1, target@toc(2) # encoding: [0bAAAAAA00,A,0x22,0xe8]
+# CHECK-BE-NEXT: # fixup A - offset: 2, value: target@toc, kind: fixup_ppc_half16ds
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target@toc, kind: fixup_ppc_half16ds
+# CHECK-BE-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_TOC16_DS target 0x0
+# CHECK-LE-REL: 0x{{[0-9A-F]*[048C]}} R_PPC64_TOC16_DS target 0x0
+ ld 1, target@toc(2)
+
+# CHECK-BE: addis 3, 2, target@toc@ha # encoding: [0x3c,0x62,A,A]
+# CHECK-LE: addis 3, 2, target@toc@ha # encoding: [A,A,0x62,0x3c]
+# CHECK-BE-NEXT: # fixup A - offset: 2, value: target@toc@ha, kind: fixup_ppc_half16
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target@toc@ha, kind: fixup_ppc_half16
+# CHECK-BE-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_TOC16_HA target 0x0
+# CHECK-LE-REL: 0x{{[0-9A-F]*[048C]}} R_PPC64_TOC16_HA target 0x0
+ addis 3, 2, target@toc@ha
+
+# CHECK-BE: addi 4, 3, target@toc@l # encoding: [0x38,0x83,A,A]
+# CHECK-LE: addi 4, 3, target@toc@l # encoding: [A,A,0x83,0x38]
+# CHECK-BE-NEXT: # fixup A - offset: 2, value: target@toc@l, kind: fixup_ppc_half16
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target@toc@l, kind: fixup_ppc_half16
+# CHECK-BE-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_TOC16_LO target 0x0
+# CHECK-LE-REL: 0x{{[0-9A-F]*[048C]}} R_PPC64_TOC16_LO target 0x0
+ addi 4, 3, target@toc@l
+
+# CHECK-BE: addis 3, 2, target@toc@h # encoding: [0x3c,0x62,A,A]
+# CHECK-LE: addis 3, 2, target@toc@h # encoding: [A,A,0x62,0x3c]
+# CHECK-BE-NEXT: # fixup A - offset: 2, value: target@toc@h, kind: fixup_ppc_half16
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target@toc@h, kind: fixup_ppc_half16
+# CHECK-BE-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_TOC16_HI target 0x0
+# CHECK-LE-REL: 0x{{[0-9A-F]*[048C]}} R_PPC64_TOC16_HI target 0x0
+ addis 3, 2, target@toc@h
+
+# CHECK-BE: lwz 1, target@toc@l(3) # encoding: [0x80,0x23,A,A]
+# CHECK-LE: lwz 1, target@toc@l(3) # encoding: [A,A,0x23,0x80]
+# CHECK-BE-NEXT: # fixup A - offset: 2, value: target@toc@l, kind: fixup_ppc_half16
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target@toc@l, kind: fixup_ppc_half16
+# CHECK-BE-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_TOC16_LO target 0x0
+# CHECK-LE-REL: 0x{{[0-9A-F]*[048C]}} R_PPC64_TOC16_LO target 0x0
+ lwz 1, target@toc@l(3)
+
+# CHECK-BE: ld 1, target@toc@l(3) # encoding: [0xe8,0x23,A,0bAAAAAA00]
+# CHECK-LE: ld 1, target@toc@l(3) # encoding: [0bAAAAAA00,A,0x23,0xe8]
+# CHECK-BE-NEXT: # fixup A - offset: 2, value: target@toc@l, kind: fixup_ppc_half16ds
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target@toc@l, kind: fixup_ppc_half16ds
+# CHECK-BE-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_TOC16_LO_DS target 0x0
+# CHECK-LE-REL: 0x{{[0-9A-F]*[048C]}} R_PPC64_TOC16_LO_DS target 0x0
+ ld 1, target@toc@l(3)
+
+# CHECK-BE: addi 4, 3, target@GOT # encoding: [0x38,0x83,A,A]
+# CHECK-LE: addi 4, 3, target@GOT # encoding: [A,A,0x83,0x38]
+# CHECK-BE-NEXT: # fixup A - offset: 2, value: target@GOT, kind: fixup_ppc_half16
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target@GOT, kind: fixup_ppc_half16
+# CHECK-BE-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_GOT16 target 0x0
+# CHECK-LE-REL: 0x{{[0-9A-F]*[048C]}} R_PPC64_GOT16 target 0x0
+ addi 4, 3, target@got
+
+# CHECK-BE: ld 1, target@GOT(2) # encoding: [0xe8,0x22,A,0bAAAAAA00]
+# CHECK-LE: ld 1, target@GOT(2) # encoding: [0bAAAAAA00,A,0x22,0xe8]
+# CHECK-BE-NEXT: # fixup A - offset: 2, value: target@GOT, kind: fixup_ppc_half16ds
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target@GOT, kind: fixup_ppc_half16ds
+# CHECK-BE-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_GOT16_DS target 0x0
+# CHECK-LE-REL: 0x{{[0-9A-F]*[048C]}} R_PPC64_GOT16_DS target 0x0
+ ld 1, target@got(2)
+
+# CHECK-BE: addis 3, 2, target@got@ha # encoding: [0x3c,0x62,A,A]
+# CHECK-LE: addis 3, 2, target@got@ha # encoding: [A,A,0x62,0x3c]
+# CHECK-BE-NEXT: # fixup A - offset: 2, value: target@got@ha, kind: fixup_ppc_half16
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target@got@ha, kind: fixup_ppc_half16
+# CHECK-BE-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_GOT16_HA target 0x0
+# CHECK-LE-REL: 0x{{[0-9A-F]*[048C]}} R_PPC64_GOT16_HA target 0x0
+ addis 3, 2, target@got@ha
+
+# CHECK-BE: addi 4, 3, target@got@l # encoding: [0x38,0x83,A,A]
+# CHECK-LE: addi 4, 3, target@got@l # encoding: [A,A,0x83,0x38]
+# CHECK-BE-NEXT: # fixup A - offset: 2, value: target@got@l, kind: fixup_ppc_half16
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target@got@l, kind: fixup_ppc_half16
+# CHECK-BE-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_GOT16_LO target 0x0
+# CHECK-LE-REL: 0x{{[0-9A-F]*[048C]}} R_PPC64_GOT16_LO target 0x0
+ addi 4, 3, target@got@l
+
+# CHECK-BE: addis 3, 2, target@got@h # encoding: [0x3c,0x62,A,A]
+# CHECK-LE: addis 3, 2, target@got@h # encoding: [A,A,0x62,0x3c]
+# CHECK-BE-NEXT: # fixup A - offset: 2, value: target@got@h, kind: fixup_ppc_half16
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target@got@h, kind: fixup_ppc_half16
+# CHECK-BE-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_GOT16_HI target 0x0
+# CHECK-LE-REL: 0x{{[0-9A-F]*[048C]}} R_PPC64_GOT16_HI target 0x0
+ addis 3, 2, target@got@h
+
+# CHECK-BE: lwz 1, target@got@l(3) # encoding: [0x80,0x23,A,A]
+# CHECK-LE: lwz 1, target@got@l(3) # encoding: [A,A,0x23,0x80]
+# CHECK-BE-NEXT: # fixup A - offset: 2, value: target@got@l, kind: fixup_ppc_half16
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target@got@l, kind: fixup_ppc_half16
+# CHECK-BE-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_GOT16_LO target 0x0
+# CHECK-LE-REL: 0x{{[0-9A-F]*[048C]}} R_PPC64_GOT16_LO target 0x0
+ lwz 1, target@got@l(3)
+
+# CHECK-BE: ld 1, target@got@l(3) # encoding: [0xe8,0x23,A,0bAAAAAA00]
+# CHECK-LE: ld 1, target@got@l(3) # encoding: [0bAAAAAA00,A,0x23,0xe8]
+# CHECK-BE-NEXT: # fixup A - offset: 2, value: target@got@l, kind: fixup_ppc_half16ds
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target@got@l, kind: fixup_ppc_half16ds
+# CHECK-BE-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_GOT16_LO_DS target 0x0
+# CHECK-LE-REL: 0x{{[0-9A-F]*[048C]}} R_PPC64_GOT16_LO_DS target 0x0
+ ld 1, target@got@l(3)
+
+
+# CHECK-BE: addis 3, 2, target@tprel@ha # encoding: [0x3c,0x62,A,A]
+# CHECK-LE: addis 3, 2, target@tprel@ha # encoding: [A,A,0x62,0x3c]
+# CHECK-BE-NEXT: # fixup A - offset: 2, value: target@tprel@ha, kind: fixup_ppc_half16
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target@tprel@ha, kind: fixup_ppc_half16
+# CHECK-BE-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_TPREL16_HA target 0x0
+# CHECK-LE-REL: 0x{{[0-9A-F]*[048C]}} R_PPC64_TPREL16_HA target 0x0
+ addis 3, 2, target@tprel@ha
+
+# CHECK-BE: addi 3, 3, target@tprel@l # encoding: [0x38,0x63,A,A]
+# CHECK-LE: addi 3, 3, target@tprel@l # encoding: [A,A,0x63,0x38]
+# CHECK-BE-NEXT: # fixup A - offset: 2, value: target@tprel@l, kind: fixup_ppc_half16
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target@tprel@l, kind: fixup_ppc_half16
+# CHECK-BE-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_TPREL16_LO target 0x0
+# CHECK-LE-REL: 0x{{[0-9A-F]*[048C]}} R_PPC64_TPREL16_LO target 0x0
+ addi 3, 3, target@tprel@l
+
+# CHECK-BE: addi 3, 3, target@tprel # encoding: [0x38,0x63,A,A]
+# CHECK-LE: addi 3, 3, target@tprel # encoding: [A,A,0x63,0x38]
+# CHECK-BE-NEXT: # fixup A - offset: 2, value: target@tprel, kind: fixup_ppc_half16
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target@tprel, kind: fixup_ppc_half16
+# CHECK-BE-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_TPREL16 target 0x0
+# CHECK-LE-REL: 0x{{[0-9A-F]*[048C]}} R_PPC64_TPREL16 target 0x0
+ addi 3, 3, target@tprel
+
+# CHECK-BE: addi 3, 3, target@tprel@h # encoding: [0x38,0x63,A,A]
+# CHECK-LE: addi 3, 3, target@tprel@h # encoding: [A,A,0x63,0x38]
+# CHECK-BE-NEXT: # fixup A - offset: 2, value: target@tprel@h, kind: fixup_ppc_half16
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target@tprel@h, kind: fixup_ppc_half16
+# CHECK-BE-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_TPREL16_HI target 0x0
+# CHECK-LE-REL: 0x{{[0-9A-F]*[048C]}} R_PPC64_TPREL16_HI target 0x0
+ addi 3, 3, target@tprel@h
+
+# CHECK-BE: addi 3, 3, target@tprel@higher # encoding: [0x38,0x63,A,A]
+# CHECK-LE: addi 3, 3, target@tprel@higher # encoding: [A,A,0x63,0x38]
+# CHECK-BE-NEXT: # fixup A - offset: 2, value: target@tprel@higher, kind: fixup_ppc_half16
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target@tprel@higher, kind: fixup_ppc_half16
+# CHECK-BE-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_TPREL16_HIGHER target 0x0
+# CHECK-LE-REL: 0x{{[0-9A-F]*[048C]}} R_PPC64_TPREL16_HIGHER target 0x0
+ addi 3, 3, target@tprel@higher
+
+# CHECK-BE: addis 3, 2, target@tprel@highest # encoding: [0x3c,0x62,A,A]
+# CHECK-LE: addis 3, 2, target@tprel@highest # encoding: [A,A,0x62,0x3c]
+# CHECK-BE-NEXT: # fixup A - offset: 2, value: target@tprel@highest, kind: fixup_ppc_half16
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target@tprel@highest, kind: fixup_ppc_half16
+# CHECK-BE-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_TPREL16_HIGHEST target 0x0
+# CHECK-LE-REL: 0x{{[0-9A-F]*[048C]}} R_PPC64_TPREL16_HIGHEST target 0x0
+ addis 3, 2, target@tprel@highest
+
+# CHECK-BE: addi 3, 3, target@tprel@highera # encoding: [0x38,0x63,A,A]
+# CHECK-LE: addi 3, 3, target@tprel@highera # encoding: [A,A,0x63,0x38]
+# CHECK-BE-NEXT: # fixup A - offset: 2, value: target@tprel@highera, kind: fixup_ppc_half16
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target@tprel@highera, kind: fixup_ppc_half16
+# CHECK-BE-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_TPREL16_HIGHERA target 0x0
+# CHECK-LE-REL: 0x{{[0-9A-F]*[048C]}} R_PPC64_TPREL16_HIGHERA target 0x0
+ addi 3, 3, target@tprel@highera
+
+# CHECK-BE: addis 3, 2, target@tprel@highesta # encoding: [0x3c,0x62,A,A]
+# CHECK-LE: addis 3, 2, target@tprel@highesta # encoding: [A,A,0x62,0x3c]
+# CHECK-BE-NEXT: # fixup A - offset: 2, value: target@tprel@highesta, kind: fixup_ppc_half16
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target@tprel@highesta, kind: fixup_ppc_half16
+# CHECK-BE-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_TPREL16_HIGHESTA target 0x0
+# CHECK-LE-REL: 0x{{[0-9A-F]*[048C]}} R_PPC64_TPREL16_HIGHESTA target 0x0
+ addis 3, 2, target@tprel@highesta
+
+# CHECK-BE: ld 1, target@tprel@l(3) # encoding: [0xe8,0x23,A,0bAAAAAA00]
+# CHECK-LE: ld 1, target@tprel@l(3) # encoding: [0bAAAAAA00,A,0x23,0xe8]
+# CHECK-BE-NEXT: # fixup A - offset: 2, value: target@tprel@l, kind: fixup_ppc_half16ds
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target@tprel@l, kind: fixup_ppc_half16ds
+# CHECK-BE-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_TPREL16_LO_DS target 0x0
+# CHECK-LE-REL: 0x{{[0-9A-F]*[048C]}} R_PPC64_TPREL16_LO_DS target 0x0
+ ld 1, target@tprel@l(3)
+
+# CHECK-BE: ld 1, target@tprel(3) # encoding: [0xe8,0x23,A,0bAAAAAA00]
+# CHECK-LE: ld 1, target@tprel(3) # encoding: [0bAAAAAA00,A,0x23,0xe8]
+# CHECK-BE-NEXT: # fixup A - offset: 2, value: target@tprel, kind: fixup_ppc_half16ds
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target@tprel, kind: fixup_ppc_half16ds
+# CHECK-BE-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_TPREL16_DS target 0x0
+# CHECK-LE-REL: 0x{{[0-9A-F]*[048C]}} R_PPC64_TPREL16_DS target 0x0
+ ld 1, target@tprel(3)
+
+# CHECK-BE: addis 3, 2, target@dtprel@ha # encoding: [0x3c,0x62,A,A]
+# CHECK-LE: addis 3, 2, target@dtprel@ha # encoding: [A,A,0x62,0x3c]
+# CHECK-BE-NEXT: # fixup A - offset: 2, value: target@dtprel@ha, kind: fixup_ppc_half16
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target@dtprel@ha, kind: fixup_ppc_half16
+# CHECK-BE-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_DTPREL16_HA target 0x0
+# CHECK-LE-REL: 0x{{[0-9A-F]*[048C]}} R_PPC64_DTPREL16_HA target 0x0
+ addis 3, 2, target@dtprel@ha
+
+# CHECK-BE: addi 3, 3, target@dtprel@l # encoding: [0x38,0x63,A,A]
+# CHECK-LE: addi 3, 3, target@dtprel@l # encoding: [A,A,0x63,0x38]
+# CHECK-BE-NEXT: # fixup A - offset: 2, value: target@dtprel@l, kind: fixup_ppc_half16
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target@dtprel@l, kind: fixup_ppc_half16
+# CHECK-BE-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_DTPREL16_LO target 0x0
+# CHECK-LE-REL: 0x{{[0-9A-F]*[048C]}} R_PPC64_DTPREL16_LO target 0x0
+ addi 3, 3, target@dtprel@l
+
+# CHECK-BE: addi 3, 3, target@dtprel # encoding: [0x38,0x63,A,A]
+# CHECK-LE: addi 3, 3, target@dtprel # encoding: [A,A,0x63,0x38]
+# CHECK-BE-NEXT: # fixup A - offset: 2, value: target@dtprel, kind: fixup_ppc_half16
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target@dtprel, kind: fixup_ppc_half16
+# CHECK-BE-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_DTPREL16 target 0x0
+# CHECK-LE-REL: 0x{{[0-9A-F]*[048C]}} R_PPC64_DTPREL16 target 0x0
+ addi 3, 3, target@dtprel
+
+# CHECK-BE: addi 3, 3, target@dtprel@h # encoding: [0x38,0x63,A,A]
+# CHECK-LE: addi 3, 3, target@dtprel@h # encoding: [A,A,0x63,0x38]
+# CHECK-BE-NEXT: # fixup A - offset: 2, value: target@dtprel@h, kind: fixup_ppc_half16
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target@dtprel@h, kind: fixup_ppc_half16
+# CHECK-BE-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_DTPREL16_HI target 0x0
+# CHECK-LE-REL: 0x{{[0-9A-F]*[048C]}} R_PPC64_DTPREL16_HI target 0x0
+ addi 3, 3, target@dtprel@h
+
+# CHECK-BE: addi 3, 3, target@dtprel@higher # encoding: [0x38,0x63,A,A]
+# CHECK-LE: addi 3, 3, target@dtprel@higher # encoding: [A,A,0x63,0x38]
+# CHECK-BE-NEXT: # fixup A - offset: 2, value: target@dtprel@higher, kind: fixup_ppc_half16
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target@dtprel@higher, kind: fixup_ppc_half16
+# CHECK-BE-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_DTPREL16_HIGHER target 0x0
+# CHECK-LE-REL: 0x{{[0-9A-F]*[048C]}} R_PPC64_DTPREL16_HIGHER target 0x0
+ addi 3, 3, target@dtprel@higher
+
+# CHECK-BE: addis 3, 2, target@dtprel@highest # encoding: [0x3c,0x62,A,A]
+# CHECK-LE: addis 3, 2, target@dtprel@highest # encoding: [A,A,0x62,0x3c]
+# CHECK-BE-NEXT: # fixup A - offset: 2, value: target@dtprel@highest, kind: fixup_ppc_half16
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target@dtprel@highest, kind: fixup_ppc_half16
+# CHECK-BE-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_DTPREL16_HIGHEST target 0x0
+# CHECK-LE-REL: 0x{{[0-9A-F]*[048C]}} R_PPC64_DTPREL16_HIGHEST target 0x0
+ addis 3, 2, target@dtprel@highest
+
+# CHECK-BE: addi 3, 3, target@dtprel@highera # encoding: [0x38,0x63,A,A]
+# CHECK-LE: addi 3, 3, target@dtprel@highera # encoding: [A,A,0x63,0x38]
+# CHECK-BE-NEXT: # fixup A - offset: 2, value: target@dtprel@highera, kind: fixup_ppc_half16
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target@dtprel@highera, kind: fixup_ppc_half16
+# CHECK-BE-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_DTPREL16_HIGHERA target 0x0
+# CHECK-LE-REL: 0x{{[0-9A-F]*[048C]}} R_PPC64_DTPREL16_HIGHERA target 0x0
+ addi 3, 3, target@dtprel@highera
+
+# CHECK-BE: addis 3, 2, target@dtprel@highesta # encoding: [0x3c,0x62,A,A]
+# CHECK-LE: addis 3, 2, target@dtprel@highesta # encoding: [A,A,0x62,0x3c]
+# CHECK-BE-NEXT: # fixup A - offset: 2, value: target@dtprel@highesta, kind: fixup_ppc_half16
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target@dtprel@highesta, kind: fixup_ppc_half16
+# CHECK-BE-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_DTPREL16_HIGHESTA target 0x0
+# CHECK-LE-REL: 0x{{[0-9A-F]*[048C]}} R_PPC64_DTPREL16_HIGHESTA target 0x0
+ addis 3, 2, target@dtprel@highesta
+
+# CHECK-BE: ld 1, target@dtprel@l(3) # encoding: [0xe8,0x23,A,0bAAAAAA00]
+# CHECK-LE: ld 1, target@dtprel@l(3) # encoding: [0bAAAAAA00,A,0x23,0xe8]
+# CHECK-BE-NEXT: # fixup A - offset: 2, value: target@dtprel@l, kind: fixup_ppc_half16ds
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target@dtprel@l, kind: fixup_ppc_half16ds
+# CHECK-BE-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_DTPREL16_LO_DS target 0x0
+# CHECK-LE-REL: 0x{{[0-9A-F]*[048C]}} R_PPC64_DTPREL16_LO_DS target 0x0
+ ld 1, target@dtprel@l(3)
+
+# CHECK-BE: ld 1, target@dtprel(3) # encoding: [0xe8,0x23,A,0bAAAAAA00]
+# CHECK-LE: ld 1, target@dtprel(3) # encoding: [0bAAAAAA00,A,0x23,0xe8]
+# CHECK-BE-NEXT: # fixup A - offset: 2, value: target@dtprel, kind: fixup_ppc_half16ds
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target@dtprel, kind: fixup_ppc_half16ds
+# CHECK-BE-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_DTPREL16_DS target 0x0
+# CHECK-LE-REL: 0x{{[0-9A-F]*[048C]}} R_PPC64_DTPREL16_DS target 0x0
+ ld 1, target@dtprel(3)
+
+
+# CHECK-BE: addis 3, 2, target@got@tprel@ha # encoding: [0x3c,0x62,A,A]
+# CHECK-LE: addis 3, 2, target@got@tprel@ha # encoding: [A,A,0x62,0x3c]
+# CHECK-BE-NEXT: # fixup A - offset: 2, value: target@got@tprel@ha, kind: fixup_ppc_half16
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target@got@tprel@ha, kind: fixup_ppc_half16
+# CHECK-BE-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_GOT_TPREL16_HA target 0x0
+# CHECK-LE-REL: 0x{{[0-9A-F]*[048C]}} R_PPC64_GOT_TPREL16_HA target 0x0
+ addis 3, 2, target@got@tprel@ha
+
+# CHECK-BE: ld 1, target@got@tprel@l(3) # encoding: [0xe8,0x23,A,0bAAAAAA00]
+# CHECK-LE: ld 1, target@got@tprel@l(3) # encoding: [0bAAAAAA00,A,0x23,0xe8]
+# CHECK-BE-NEXT: # fixup A - offset: 2, value: target@got@tprel@l, kind: fixup_ppc_half16ds
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target@got@tprel@l, kind: fixup_ppc_half16ds
+# CHECK-BE-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_GOT_TPREL16_LO_DS target 0x0
+# CHECK-LE-REL: 0x{{[0-9A-F]*[048C]}} R_PPC64_GOT_TPREL16_LO_DS target 0x0
+ ld 1, target@got@tprel@l(3)
+
+# CHECK-BE: addis 3, 2, target@got@tprel@h # encoding: [0x3c,0x62,A,A]
+# CHECK-LE: addis 3, 2, target@got@tprel@h # encoding: [A,A,0x62,0x3c]
+# CHECK-BE-NEXT: # fixup A - offset: 2, value: target@got@tprel@h, kind: fixup_ppc_half16
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target@got@tprel@h, kind: fixup_ppc_half16
+# CHECK-BE-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_GOT_TPREL16_HI target 0x0
+# CHECK-LE-REL: 0x{{[0-9A-F]*[048C]}} R_PPC64_GOT_TPREL16_HI target 0x0
+ addis 3, 2, target@got@tprel@h
+
+# CHECK-BE: addis 3, 2, target@got@tprel@l # encoding: [0x3c,0x62,A,A]
+# CHECK-LE: addis 3, 2, target@got@tprel@l # encoding: [A,A,0x62,0x3c]
+# CHECK-BE-NEXT: # fixup A - offset: 2, value: target@got@tprel@l, kind: fixup_ppc_half16
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target@got@tprel@l, kind: fixup_ppc_half16
+# CHECK-BE-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_GOT_TPREL16_LO_DS target 0x0
+# CHECK-LE-REL: 0x{{[0-9A-F]*[048C]}} R_PPC64_GOT_TPREL16_LO_DS target 0x0
+ addis 3, 2, target@got@tprel@l
+
+# CHECK-BE: addis 3, 2, target@got@tprel # encoding: [0x3c,0x62,A,A]
+# CHECK-LE: addis 3, 2, target@got@tprel # encoding: [A,A,0x62,0x3c]
+# CHECK-BE-NEXT: # fixup A - offset: 2, value: target@got@tprel, kind: fixup_ppc_half16
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target@got@tprel, kind: fixup_ppc_half16
+# CHECK-BE-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_GOT_TPREL16_DS target 0x0
+# CHECK-LE-REL: 0x{{[0-9A-F]*[048C]}} R_PPC64_GOT_TPREL16_DS target 0x0
+ addis 3, 2, target@got@tprel
+
+# CHECK-BE: ld 1, target@got@tprel(3) # encoding: [0xe8,0x23,A,0bAAAAAA00]
+# CHECK-LE: ld 1, target@got@tprel(3) # encoding: [0bAAAAAA00,A,0x23,0xe8]
+# CHECK-BE-NEXT: # fixup A - offset: 2, value: target@got@tprel, kind: fixup_ppc_half16ds
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target@got@tprel, kind: fixup_ppc_half16ds
+# CHECK-BE-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_GOT_TPREL16_DS target 0x0
+# CHECK-LE-REL: 0x{{[0-9A-F]*[048C]}} R_PPC64_GOT_TPREL16_DS target 0x0
+ ld 1, target@got@tprel(3)
+
+# CHECK-BE: addis 3, 2, target@got@dtprel@ha # encoding: [0x3c,0x62,A,A]
+# CHECK-LE: addis 3, 2, target@got@dtprel@ha # encoding: [A,A,0x62,0x3c]
+# CHECK-BE-NEXT: # fixup A - offset: 2, value: target@got@dtprel@ha, kind: fixup_ppc_half16
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target@got@dtprel@ha, kind: fixup_ppc_half16
+# CHECK-BE-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_GOT_DTPREL16_HA target 0x0
+# CHECK-LE-REL: 0x{{[0-9A-F]*[048C]}} R_PPC64_GOT_DTPREL16_HA target 0x0
+ addis 3, 2, target@got@dtprel@ha
+
+# CHECK-BE: ld 1, target@got@dtprel@l(3) # encoding: [0xe8,0x23,A,0bAAAAAA00]
+# CHECK-LE: ld 1, target@got@dtprel@l(3) # encoding: [0bAAAAAA00,A,0x23,0xe8]
+# CHECK-BE-NEXT: # fixup A - offset: 2, value: target@got@dtprel@l, kind: fixup_ppc_half16ds
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target@got@dtprel@l, kind: fixup_ppc_half16ds
+# CHECK-BE-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_GOT_DTPREL16_LO_DS target 0x0
+# CHECK-LE-REL: 0x{{[0-9A-F]*[048C]}} R_PPC64_GOT_DTPREL16_LO_DS target 0x0
+ ld 1, target@got@dtprel@l(3)
+
+# CHECK-BE: addis 3, 2, target@got@dtprel@h # encoding: [0x3c,0x62,A,A]
+# CHECK-LE: addis 3, 2, target@got@dtprel@h # encoding: [A,A,0x62,0x3c]
+# CHECK-BE-NEXT: # fixup A - offset: 2, value: target@got@dtprel@h, kind: fixup_ppc_half16
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target@got@dtprel@h, kind: fixup_ppc_half16
+# CHECK-BE-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_GOT_DTPREL16_HI target 0x0
+# CHECK-LE-REL: 0x{{[0-9A-F]*[048C]}} R_PPC64_GOT_DTPREL16_HI target 0x0
+ addis 3, 2, target@got@dtprel@h
+
+# CHECK-BE: addis 3, 2, target@got@dtprel@l # encoding: [0x3c,0x62,A,A]
+# CHECK-LE: addis 3, 2, target@got@dtprel@l # encoding: [A,A,0x62,0x3c]
+# CHECK-BE-NEXT: # fixup A - offset: 2, value: target@got@dtprel@l, kind: fixup_ppc_half16
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target@got@dtprel@l, kind: fixup_ppc_half16
+# CHECK-BE-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_GOT_DTPREL16_LO_DS target 0x0
+# CHECK-LE-REL: 0x{{[0-9A-F]*[048C]}} R_PPC64_GOT_DTPREL16_LO_DS target 0x0
+ addis 3, 2, target@got@dtprel@l
+
+# CHECK-BE: addis 3, 2, target@got@dtprel # encoding: [0x3c,0x62,A,A]
+# CHECK-LE: addis 3, 2, target@got@dtprel # encoding: [A,A,0x62,0x3c]
+# CHECK-BE-NEXT: # fixup A - offset: 2, value: target@got@dtprel, kind: fixup_ppc_half16
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target@got@dtprel, kind: fixup_ppc_half16
+# CHECK-BE-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_GOT_DTPREL16_DS target 0x0
+# CHECK-LE-REL: 0x{{[0-9A-F]*[048C]}} R_PPC64_GOT_DTPREL16_DS target 0x0
+ addis 3, 2, target@got@dtprel
+
+# CHECK-BE: ld 1, target@got@dtprel(3) # encoding: [0xe8,0x23,A,0bAAAAAA00]
+# CHECK-LE: ld 1, target@got@dtprel(3) # encoding: [0bAAAAAA00,A,0x23,0xe8]
+# CHECK-BE-NEXT: # fixup A - offset: 2, value: target@got@dtprel, kind: fixup_ppc_half16ds
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target@got@dtprel, kind: fixup_ppc_half16ds
+# CHECK-BE-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_GOT_DTPREL16_DS target 0x0
+# CHECK-LE-REL: 0x{{[0-9A-F]*[048C]}} R_PPC64_GOT_DTPREL16_DS target 0x0
+ ld 1, target@got@dtprel(3)
+
+# CHECK-BE: addis 3, 2, target@got@tlsgd@ha # encoding: [0x3c,0x62,A,A]
+# CHECK-LE: addis 3, 2, target@got@tlsgd@ha # encoding: [A,A,0x62,0x3c]
+# CHECK-BE-NEXT: # fixup A - offset: 2, value: target@got@tlsgd@ha, kind: fixup_ppc_half16
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target@got@tlsgd@ha, kind: fixup_ppc_half16
+# CHECK-BE-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_GOT_TLSGD16_HA target 0x0
+# CHECK-LE-REL: 0x{{[0-9A-F]*[048C]}} R_PPC64_GOT_TLSGD16_HA target 0x0
+ addis 3, 2, target@got@tlsgd@ha
+
+# CHECK-BE: addi 3, 3, target@got@tlsgd@l # encoding: [0x38,0x63,A,A]
+# CHECK-LE: addi 3, 3, target@got@tlsgd@l # encoding: [A,A,0x63,0x38]
+# CHECK-BE-NEXT: # fixup A - offset: 2, value: target@got@tlsgd@l, kind: fixup_ppc_half16
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target@got@tlsgd@l, kind: fixup_ppc_half16
+# CHECK-BE-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_GOT_TLSGD16_LO target 0x0
+# CHECK-LE-REL: 0x{{[0-9A-F]*[048C]}} R_PPC64_GOT_TLSGD16_LO target 0x0
+ addi 3, 3, target@got@tlsgd@l
+
+# CHECK-BE: addi 3, 3, target@got@tlsgd@h # encoding: [0x38,0x63,A,A]
+# CHECK-LE: addi 3, 3, target@got@tlsgd@h # encoding: [A,A,0x63,0x38]
+# CHECK-BE-NEXT: # fixup A - offset: 2, value: target@got@tlsgd@h, kind: fixup_ppc_half16
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target@got@tlsgd@h, kind: fixup_ppc_half16
+# CHECK-BE-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_GOT_TLSGD16_HI target 0x0
+# CHECK-LE-REL: 0x{{[0-9A-F]*[048C]}} R_PPC64_GOT_TLSGD16_HI target 0x0
+ addi 3, 3, target@got@tlsgd@h
+
+# CHECK-BE: addi 3, 3, target@got@tlsgd # encoding: [0x38,0x63,A,A]
+# CHECK-LE: addi 3, 3, target@got@tlsgd # encoding: [A,A,0x63,0x38]
+# CHECK-BE-NEXT: # fixup A - offset: 2, value: target@got@tlsgd, kind: fixup_ppc_half16
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target@got@tlsgd, kind: fixup_ppc_half16
+# CHECK-BE-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_GOT_TLSGD16 target 0x0
+# CHECK-LE-REL: 0x{{[0-9A-F]*[048C]}} R_PPC64_GOT_TLSGD16 target 0x0
+ addi 3, 3, target@got@tlsgd
+
+
+# CHECK-BE: addis 3, 2, target@got@tlsld@ha # encoding: [0x3c,0x62,A,A]
+# CHECK-LE: addis 3, 2, target@got@tlsld@ha # encoding: [A,A,0x62,0x3c]
+# CHECK-BE-NEXT: # fixup A - offset: 2, value: target@got@tlsld@ha, kind: fixup_ppc_half16
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target@got@tlsld@ha, kind: fixup_ppc_half16
+# CHECK-BE-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_GOT_TLSLD16_HA target 0x0
+# CHECK-LE-REL: 0x{{[0-9A-F]*[048C]}} R_PPC64_GOT_TLSLD16_HA target 0x0
+ addis 3, 2, target@got@tlsld@ha
+
+# CHECK-BE: addi 3, 3, target@got@tlsld@l # encoding: [0x38,0x63,A,A]
+# CHECK-LE: addi 3, 3, target@got@tlsld@l # encoding: [A,A,0x63,0x38]
+# CHECK-BE-NEXT: # fixup A - offset: 2, value: target@got@tlsld@l, kind: fixup_ppc_half16
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target@got@tlsld@l, kind: fixup_ppc_half16
+# CHECK-BE-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_GOT_TLSLD16_LO target 0x0
+# CHECK-LE-REL: 0x{{[0-9A-F]*[048C]}} R_PPC64_GOT_TLSLD16_LO target 0x0
+ addi 3, 3, target@got@tlsld@l
+
+# CHECK-BE: addi 3, 3, target@got@tlsld@h # encoding: [0x38,0x63,A,A]
+# CHECK-LE: addi 3, 3, target@got@tlsld@h # encoding: [A,A,0x63,0x38]
+# CHECK-BE-NEXT: # fixup A - offset: 2, value: target@got@tlsld@h, kind: fixup_ppc_half16
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target@got@tlsld@h, kind: fixup_ppc_half16
+# CHECK-BE-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_GOT_TLSLD16_HI target 0x0
+# CHECK-LE-REL: 0x{{[0-9A-F]*[048C]}} R_PPC64_GOT_TLSLD16_HI target 0x0
+ addi 3, 3, target@got@tlsld@h
+
+# CHECK-BE: addi 3, 3, target@got@tlsld # encoding: [0x38,0x63,A,A]
+# CHECK-LE: addi 3, 3, target@got@tlsld # encoding: [A,A,0x63,0x38]
+# CHECK-BE-NEXT: # fixup A - offset: 2, value: target@got@tlsld, kind: fixup_ppc_half16
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target@got@tlsld, kind: fixup_ppc_half16
+# CHECK-BE-REL: 0x{{[0-9A-F]*[26AE]}} R_PPC64_GOT_TLSLD16 target 0x0
+# CHECK-LE-REL: 0x{{[0-9A-F]*[048C]}} R_PPC64_GOT_TLSLD16 target 0x0
+ addi 3, 3, target@got@tlsld
+
+# CHECK-BE: bl __tls_get_addr(target@tlsgd) # encoding: [0b010010BB,B,B,0bBBBBBB01]
+# CHECK-LE: bl __tls_get_addr(target@tlsgd) # encoding: [0bBBBBBB01,B,B,0b010010BB]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target@tlsgd, kind: fixup_ppc_nofixup
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target@tlsgd, kind: fixup_ppc_nofixup
+# CHECK-BE-NEXT: # fixup B - offset: 0, value: __tls_get_addr, kind: fixup_ppc_br24
+# CHECK-LE-NEXT: # fixup B - offset: 0, value: __tls_get_addr, kind: fixup_ppc_br24
+# CHECK-BE-REL: 0x{{[0-9A-F]*[048C]}} R_PPC64_TLSGD target 0x0
+# CHECK-LE-REL: 0x{{[0-9A-F]*[048C]}} R_PPC64_TLSGD target 0x0
+# CHECK-BE-REL-NEXT: 0x{{[0-9A-F]*[048C]}} R_PPC64_REL24 __tls_get_addr 0x0
+# CHECK-LE-REL-NEXT: 0x{{[0-9A-F]*[048C]}} R_PPC64_REL24 __tls_get_addr 0x0
+ bl __tls_get_addr(target@tlsgd)
+
+# CHECK-BE: bl __tls_get_addr(target@tlsld) # encoding: [0b010010BB,B,B,0bBBBBBB01]
+# CHECK-LE: bl __tls_get_addr(target@tlsld) # encoding: [0bBBBBBB01,B,B,0b010010BB]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target@tlsld, kind: fixup_ppc_nofixup
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target@tlsld, kind: fixup_ppc_nofixup
+# CHECK-BE-NEXT: # fixup B - offset: 0, value: __tls_get_addr, kind: fixup_ppc_br24
+# CHECK-LE-NEXT: # fixup B - offset: 0, value: __tls_get_addr, kind: fixup_ppc_br24
+# CHECK-BE-REL: 0x{{[0-9A-F]*[048C]}} R_PPC64_TLSLD target 0x0
+# CHECK-LE-REL: 0x{{[0-9A-F]*[048C]}} R_PPC64_TLSLD target 0x0
+# CHECK-BE-REL-NEXT: 0x{{[0-9A-F]*[048C]}} R_PPC64_REL24 __tls_get_addr 0x0
+# CHECK-LE-REL-NEXT: 0x{{[0-9A-F]*[048C]}} R_PPC64_REL24 __tls_get_addr 0x0
+ bl __tls_get_addr(target@tlsld)
+
+# CHECK-BE: add 3, 4, target@tls # encoding: [0x7c,0x64,0x6a,0x14]
+# CHECK-LE: add 3, 4, target@tls # encoding: [0x14,0x6a,0x64,0x7c]
+# CHECK-BE-NEXT: # fixup A - offset: 0, value: target@tls, kind: fixup_ppc_nofixup
+# CHECK-LE-NEXT: # fixup A - offset: 0, value: target@tls, kind: fixup_ppc_nofixup
+# CHECK-BE-REL: 0x{{[0-9A-F]*[048C]}} R_PPC64_TLS target 0x0
+# CHECK-LE-REL: 0x{{[0-9A-F]*[048C]}} R_PPC64_TLS target 0x0
+ add 3, 4, target@tls
+
+# Verify that fixups on constants are resolved at assemble time
+
+# CHECK-BE: ori 1, 2, 65535 # encoding: [0x60,0x41,0xff,0xff]
+# CHECK-LE: ori 1, 2, 65535 # encoding: [0xff,0xff,0x41,0x60]
+ ori 1, 2, 131071@l
+# CHECK-BE: ori 1, 2, 1 # encoding: [0x60,0x41,0x00,0x01]
+# CHECK-LE: ori 1, 2, 1 # encoding: [0x01,0x00,0x41,0x60]
+ ori 1, 2, 131071@h
+# CHECK-BE: ori 1, 2, 2 # encoding: [0x60,0x41,0x00,0x02]
+# CHECK-LE: ori 1, 2, 2 # encoding: [0x02,0x00,0x41,0x60]
+ ori 1, 2, 131071@ha
# Data relocs
# llvm-mc does not show any "encoding" string for data, so we just check the relocs
-# CHECK-REL: .rela.data
+# CHECK-BE-REL: .rela.data
+# CHECK-LE-REL: .rela.data
.data
-# CHECK-REL: 0x{{[0-9A-F]*[08]}} R_PPC64_TOC - 0x0
+# CHECK-BE-REL: 0x{{[0-9A-F]*[08]}} R_PPC64_TOC - 0x0
+# CHECK-LE-REL: 0x{{[0-9A-F]*[08]}} R_PPC64_TOC - 0x0
.quad .TOC.@tocbase
-# CHECK-REL: 0x{{[0-9A-F]*[08]}} R_PPC64_DTPMOD64 target 0x0
+# CHECK-BE-REL: 0x{{[0-9A-F]*[08]}} R_PPC64_DTPMOD64 target 0x0
+# CHECK-LE-REL: 0x{{[0-9A-F]*[08]}} R_PPC64_DTPMOD64 target 0x0
.quad target@dtpmod
-# CHECK-REL: 0x{{[0-9A-F]*[08]}} R_PPC64_TPREL64 target 0x0
+# CHECK-BE-REL: 0x{{[0-9A-F]*[08]}} R_PPC64_TPREL64 target 0x0
+# CHECK-LE-REL: 0x{{[0-9A-F]*[08]}} R_PPC64_TPREL64 target 0x0
.quad target@tprel
-# CHECK-REL: 0x{{[0-9A-F]*[08]}} R_PPC64_DTPREL64 target 0x0
+# CHECK-BE-REL: 0x{{[0-9A-F]*[08]}} R_PPC64_DTPREL64 target 0x0
+# CHECK-LE-REL: 0x{{[0-9A-F]*[08]}} R_PPC64_DTPREL64 target 0x0
.quad target@dtprel
-# Constant fixup
- ori 1, 2, 131071@l
-# CHECK: ori 1, 2, 131071@l # encoding: [0x60,0x41,A,A]
-# CHECK-NEXT: # fixup A - offset: 2, value: 131071@l, kind: fixup_ppc_half16
diff --git a/test/MC/PowerPC/ppc64-initial-cfa.s b/test/MC/PowerPC/ppc64-initial-cfa.s
index f976ae9..b890b30 100644
--- a/test/MC/PowerPC/ppc64-initial-cfa.s
+++ b/test/MC/PowerPC/ppc64-initial-cfa.s
@@ -1,7 +1,11 @@
# RUN: llvm-mc -triple=powerpc64-unknown-linux-gnu -filetype=obj -relocation-model=static %s | \
-# RUN: llvm-readobj -s -sr -sd | FileCheck %s -check-prefix=STATIC
+# RUN: llvm-readobj -s -sr -sd | FileCheck %s -check-prefix=STATIC -check-prefix=STATIC-BE
# RUN: llvm-mc -triple=powerpc64-unknown-linux-gnu -filetype=obj -relocation-model=pic %s | \
-# RUN: llvm-readobj -s -sr -sd | FileCheck %s -check-prefix=PIC
+# RUN: llvm-readobj -s -sr -sd | FileCheck %s -check-prefix=PIC -check-prefix=PIC-BE
+# RUN: llvm-mc -triple=powerpc64le-unknown-linux-gnu -filetype=obj -relocation-model=static %s | \
+# RUN: llvm-readobj -s -sr -sd | FileCheck %s -check-prefix=STATIC -check-prefix=STATIC-LE
+# RUN: llvm-mc -triple=powerpc64le-unknown-linux-gnu -filetype=obj -relocation-model=pic %s | \
+# RUN: llvm-readobj -s -sr -sd | FileCheck %s -check-prefix=PIC -check-prefix=PIC-LE
.cfi_startproc
nop
@@ -23,9 +27,12 @@
# STATIC-NEXT: Relocations [
# STATIC-NEXT: ]
# STATIC-NEXT: SectionData (
-# STATIC-NEXT: 0000: 00000010 00000000 017A5200 04784101
-# STATIC-NEXT: 0010: 1B0C0100 00000010 00000018 00000000
-# STATIC-NEXT: 0020: 00000004 00000000
+# STATIC-BE-NEXT: 0000: 00000010 00000000 017A5200 04784101
+# STATIC-LE-NEXT: 0000: 10000000 00000000 017A5200 04784101
+# STATIC-BE-NEXT: 0010: 1B0C0100 00000010 00000018 00000000
+# STATIC-LE-NEXT: 0010: 1B0C0100 10000000 18000000 00000000
+# STATIC-BE-NEXT: 0020: 00000004 00000000
+# STATIC-LE-NEXT: 0020: 04000000 00000000
# STATIC-NEXT: )
# STATIC-NEXT: }
@@ -61,9 +68,12 @@
# PIC-NEXT: Relocations [
# PIC-NEXT: ]
# PIC-NEXT: SectionData (
-# PIC-NEXT: 0000: 00000010 00000000 017A5200 04784101
-# PIC-NEXT: 0010: 1B0C0100 00000010 00000018 00000000
-# PIC-NEXT: 0020: 00000004 00000000
+# PIC-BE-NEXT: 0000: 00000010 00000000 017A5200 04784101
+# PIC-LE-NEXT: 0000: 10000000 00000000 017A5200 04784101
+# PIC-BE-NEXT: 0010: 1B0C0100 00000010 00000018 00000000
+# PIC-LE-NEXT: 0010: 1B0C0100 10000000 18000000 00000000
+# PIC-BE-NEXT: 0020: 00000004 00000000
+# PIC-LE-NEXT: 0020: 04000000 00000000
# PIC-NEXT: )
# PIC-NEXT: }
diff --git a/test/MC/PowerPC/ppc64-operands.s b/test/MC/PowerPC/ppc64-operands.s
index fc1cbeb..392b3b7 100644
--- a/test/MC/PowerPC/ppc64-operands.s
+++ b/test/MC/PowerPC/ppc64-operands.s
@@ -1,115 +1,158 @@
-# RUN: llvm-mc -triple powerpc64-unknown-unknown --show-encoding %s | FileCheck %s
+# RUN: llvm-mc -triple powerpc64-unknown-unknown --show-encoding %s | FileCheck -check-prefix=CHECK-BE %s
+# RUN: llvm-mc -triple powerpc64le-unknown-unknown --show-encoding %s | FileCheck -check-prefix=CHECK-LE %s
# Register operands
-# CHECK: add 1, 2, 3 # encoding: [0x7c,0x22,0x1a,0x14]
- add 1, 2, 3
+# CHECK-BE: add 1, 2, 3 # encoding: [0x7c,0x22,0x1a,0x14]
+# CHECK-LE: add 1, 2, 3 # encoding: [0x14,0x1a,0x22,0x7c]
+ add 1, 2, 3
-# CHECK: add 1, 2, 3 # encoding: [0x7c,0x22,0x1a,0x14]
- add %r1, %r2, %r3
+# CHECK-BE: add 1, 2, 3 # encoding: [0x7c,0x22,0x1a,0x14]
+# CHECK-LE: add 1, 2, 3 # encoding: [0x14,0x1a,0x22,0x7c]
+ add %r1, %r2, %r3
-# CHECK: add 0, 0, 0 # encoding: [0x7c,0x00,0x02,0x14]
- add 0, 0, 0
+# CHECK-BE: add 0, 0, 0 # encoding: [0x7c,0x00,0x02,0x14]
+# CHECK-LE: add 0, 0, 0 # encoding: [0x14,0x02,0x00,0x7c]
+ add 0, 0, 0
-# CHECK: add 31, 31, 31 # encoding: [0x7f,0xff,0xfa,0x14]
- add 31, 31, 31
+# CHECK-BE: add 31, 31, 31 # encoding: [0x7f,0xff,0xfa,0x14]
+# CHECK-LE: add 31, 31, 31 # encoding: [0x14,0xfa,0xff,0x7f]
+ add 31, 31, 31
-# CHECK: addi 1, 0, 0 # encoding: [0x38,0x20,0x00,0x00]
- addi 1, 0, 0
+# CHECK-BE: addi 1, 0, 0 # encoding: [0x38,0x20,0x00,0x00]
+# CHECK-LE: addi 1, 0, 0 # encoding: [0x00,0x00,0x20,0x38]
+ addi 1, 0, 0
-# CHECK: addi 1, 0, 0 # encoding: [0x38,0x20,0x00,0x00]
- addi 1, %r0, 0
+# CHECK-BE: addi 1, 0, 0 # encoding: [0x38,0x20,0x00,0x00]
+# CHECK-LE: addi 1, 0, 0 # encoding: [0x00,0x00,0x20,0x38]
+ addi 1, %r0, 0
# Signed 16-bit immediate operands
-# CHECK: addi 1, 2, 0 # encoding: [0x38,0x22,0x00,0x00]
- addi 1, 2, 0
+# CHECK-BE: addi 1, 2, 0 # encoding: [0x38,0x22,0x00,0x00]
+# CHECK-LE: addi 1, 2, 0 # encoding: [0x00,0x00,0x22,0x38]
+ addi 1, 2, 0
-# CHECK: addi 1, 0, -32768 # encoding: [0x38,0x20,0x80,0x00]
- addi 1, 0, -32768
+# CHECK-BE: addi 1, 0, -32768 # encoding: [0x38,0x20,0x80,0x00]
+# CHECK-LE: addi 1, 0, -32768 # encoding: [0x00,0x80,0x20,0x38]
+ addi 1, 0, -32768
-# CHECK: addi 1, 0, 32767 # encoding: [0x38,0x20,0x7f,0xff]
- addi 1, 0, 32767
+# CHECK-BE: addi 1, 0, 32767 # encoding: [0x38,0x20,0x7f,0xff]
+# CHECK-LE: addi 1, 0, 32767 # encoding: [0xff,0x7f,0x20,0x38]
+ addi 1, 0, 32767
# Unsigned 16-bit immediate operands
-# CHECK: ori 1, 2, 0 # encoding: [0x60,0x41,0x00,0x00]
- ori 1, 2, 0
+# CHECK-BE: ori 1, 2, 0 # encoding: [0x60,0x41,0x00,0x00]
+# CHECK-LE: ori 1, 2, 0 # encoding: [0x00,0x00,0x41,0x60]
+ ori 1, 2, 0
-# CHECK: ori 1, 2, 65535 # encoding: [0x60,0x41,0xff,0xff]
- ori 1, 2, 65535
+# CHECK-BE: ori 1, 2, 65535 # encoding: [0x60,0x41,0xff,0xff]
+# CHECK-LE: ori 1, 2, 65535 # encoding: [0xff,0xff,0x41,0x60]
+ ori 1, 2, 65535
# Signed 16-bit immediate operands (extended range for addis)
-# CHECK: addis 1, 0, 0 # encoding: [0x3c,0x20,0x00,0x00]
- addis 1, 0, -65536
+# CHECK-BE: addis 1, 0, 0 # encoding: [0x3c,0x20,0x00,0x00]
+# CHECK-LE: addis 1, 0, 0 # encoding: [0x00,0x00,0x20,0x3c]
+ addis 1, 0, -65536
-# CHECK: addis 1, 0, -1 # encoding: [0x3c,0x20,0xff,0xff]
- addis 1, 0, 65535
+# CHECK-BE: addis 1, 0, -1 # encoding: [0x3c,0x20,0xff,0xff]
+# CHECK-LE: addis 1, 0, -1 # encoding: [0xff,0xff,0x20,0x3c]
+ addis 1, 0, 65535
# D-Form memory operands
-# CHECK: lwz 1, 0(0) # encoding: [0x80,0x20,0x00,0x00]
- lwz 1, 0(0)
+# CHECK-BE: lwz 1, 0(0) # encoding: [0x80,0x20,0x00,0x00]
+# CHECK-LE: lwz 1, 0(0) # encoding: [0x00,0x00,0x20,0x80]
+ lwz 1, 0(0)
-# CHECK: lwz 1, 0(0) # encoding: [0x80,0x20,0x00,0x00]
- lwz 1, 0(%r0)
+# CHECK-BE: lwz 1, 0(0) # encoding: [0x80,0x20,0x00,0x00]
+# CHECK-LE: lwz 1, 0(0) # encoding: [0x00,0x00,0x20,0x80]
+ lwz 1, 0(%r0)
-# CHECK: lwz 1, 0(31) # encoding: [0x80,0x3f,0x00,0x00]
- lwz 1, 0(31)
+# CHECK-BE: lwz 1, 0(31) # encoding: [0x80,0x3f,0x00,0x00]
+# CHECK-LE: lwz 1, 0(31) # encoding: [0x00,0x00,0x3f,0x80]
+ lwz 1, 0(31)
-# CHECK: lwz 1, 0(31) # encoding: [0x80,0x3f,0x00,0x00]
- lwz 1, 0(%r31)
+# CHECK-BE: lwz 1, 0(31) # encoding: [0x80,0x3f,0x00,0x00]
+# CHECK-LE: lwz 1, 0(31) # encoding: [0x00,0x00,0x3f,0x80]
+ lwz 1, 0(%r31)
-# CHECK: lwz 1, -32768(2) # encoding: [0x80,0x22,0x80,0x00]
- lwz 1, -32768(2)
+# CHECK-BE: lwz 1, -32768(2) # encoding: [0x80,0x22,0x80,0x00]
+# CHECK-LE: lwz 1, -32768(2) # encoding: [0x00,0x80,0x22,0x80]
+ lwz 1, -32768(2)
-# CHECK: lwz 1, 32767(2) # encoding: [0x80,0x22,0x7f,0xff]
- lwz 1, 32767(2)
+# CHECK-BE: lwz 1, 32767(2) # encoding: [0x80,0x22,0x7f,0xff]
+# CHECK-LE: lwz 1, 32767(2) # encoding: [0xff,0x7f,0x22,0x80]
+ lwz 1, 32767(2)
-# CHECK: ld 1, 0(0) # encoding: [0xe8,0x20,0x00,0x00]
- ld 1, 0(0)
+# CHECK-BE: ld 1, 0(0) # encoding: [0xe8,0x20,0x00,0x00]
+# CHECK-LE: ld 1, 0(0) # encoding: [0x00,0x00,0x20,0xe8]
+ ld 1, 0(0)
-# CHECK: ld 1, 0(0) # encoding: [0xe8,0x20,0x00,0x00]
- ld 1, 0(%r0)
+# CHECK-BE: ld 1, 0(0) # encoding: [0xe8,0x20,0x00,0x00]
+# CHECK-LE: ld 1, 0(0) # encoding: [0x00,0x00,0x20,0xe8]
+ ld 1, 0(%r0)
-# CHECK: ld 1, 0(31) # encoding: [0xe8,0x3f,0x00,0x00]
- ld 1, 0(31)
+# CHECK-BE: ld 1, 0(31) # encoding: [0xe8,0x3f,0x00,0x00]
+# CHECK-LE: ld 1, 0(31) # encoding: [0x00,0x00,0x3f,0xe8]
+ ld 1, 0(31)
-# CHECK: ld 1, 0(31) # encoding: [0xe8,0x3f,0x00,0x00]
- ld 1, 0(%r31)
+# CHECK-BE: ld 1, 0(31) # encoding: [0xe8,0x3f,0x00,0x00]
+# CHECK-LE: ld 1, 0(31) # encoding: [0x00,0x00,0x3f,0xe8]
+ ld 1, 0(%r31)
-# CHECK: ld 1, -32768(2) # encoding: [0xe8,0x22,0x80,0x00]
- ld 1, -32768(2)
+# CHECK-BE: ld 1, -32768(2) # encoding: [0xe8,0x22,0x80,0x00]
+# CHECK-LE: ld 1, -32768(2) # encoding: [0x00,0x80,0x22,0xe8]
+ ld 1, -32768(2)
-# CHECK: ld 1, 32764(2) # encoding: [0xe8,0x22,0x7f,0xfc]
- ld 1, 32764(2)
+# CHECK-BE: ld 1, 32764(2) # encoding: [0xe8,0x22,0x7f,0xfc]
+# CHECK-LE: ld 1, 32764(2) # encoding: [0xfc,0x7f,0x22,0xe8]
+ ld 1, 32764(2)
-# CHECK: ld 1, 4(2) # encoding: [0xe8,0x22,0x00,0x04]
- ld 1, 4(2)
+# CHECK-BE: ld 1, 4(2) # encoding: [0xe8,0x22,0x00,0x04]
+# CHECK-LE: ld 1, 4(2) # encoding: [0x04,0x00,0x22,0xe8]
+ ld 1, 4(2)
-# CHECK: ld 1, -4(2) # encoding: [0xe8,0x22,0xff,0xfc]
- ld 1, -4(2)
+# CHECK-BE: ld 1, -4(2) # encoding: [0xe8,0x22,0xff,0xfc]
+# CHECK-LE: ld 1, -4(2) # encoding: [0xfc,0xff,0x22,0xe8]
+ ld 1, -4(2)
# Immediate branch operands
-# CHECK: b .+1024 # encoding: [0x48,0x00,0x04,0x00]
- b 1024
+# CHECK-BE: b .+1024 # encoding: [0x48,0x00,0x04,0x00]
+# CHECK-LE: b .+1024 # encoding: [0x00,0x04,0x00,0x48]
+ b 1024
-# CHECK: ba 1024 # encoding: [0x48,0x00,0x04,0x02]
- ba 1024
+# CHECK-BE: ba 1024 # encoding: [0x48,0x00,0x04,0x02]
+# CHECK-LE: ba 1024 # encoding: [0x02,0x04,0x00,0x48]
+ ba 1024
-# CHECK: beq 0, .+1024 # encoding: [0x41,0x82,0x04,0x00]
- beq 1024
+# CHECK-BE: beq 0, .+1024 # encoding: [0x41,0x82,0x04,0x00]
+# CHECK-LE: beq 0, .+1024 # encoding: [0x00,0x04,0x82,0x41]
+ beq 1024
-# CHECK: beqa 0, 1024 # encoding: [0x41,0x82,0x04,0x02]
- beqa 1024
+# CHECK-BE: beqa 0, 1024 # encoding: [0x41,0x82,0x04,0x02]
+# CHECK-LE: beqa 0, 1024 # encoding: [0x02,0x04,0x82,0x41]
+ beqa 1024
-# CHECK: # encoding: [0x42,0x9f,A,0bAAAAAA01]
- bcl 20, 31, $+4
+# CHECK-BE: # encoding: [0x42,0x9f,A,0bAAAAAA01]
+# CHECK-LE: # encoding: [0bAAAAAA01,A,0x9f,0x42]
+ bcl 20, 31, $+4
+
+# CHECK-BE: # encoding: [0x42,0x00,A,0bAAAAAA00]
+# CHECK-LE: # encoding: [0bAAAAAA00,A,0x00,0x42]
+ bdnz $-8
+
+# CHECK-BE: andi. 0, 3, 32767 # encoding: [0x70,0x60,0x7f,0xff]
+# CHECK-LE: andi. 0, 3, 32767 # encoding: [0xff,0x7f,0x60,0x70]
+ andi. %r0,%r3,~0x8000@l
+
+# CHECK-BE: andi. 0, 3, 0 # encoding: [0x70,0x60,0x00,0x00]
+# CHECK-LE: andi. 0, 3, 0 # encoding: [0x00,0x00,0x60,0x70]
+ andi. %r0,%r3,!0x8000@l
-# CHECK: # encoding: [0x42,0x00,A,0bAAAAAA00]
- bdnz $-8
diff --git a/test/MC/PowerPC/ppc64-regs.s b/test/MC/PowerPC/ppc64-regs.s
index 02b1fc5..fb1775c 100644
--- a/test/MC/PowerPC/ppc64-regs.s
+++ b/test/MC/PowerPC/ppc64-regs.s
@@ -1,4 +1,5 @@
# RUN: llvm-mc -triple powerpc64-unknown-unknown --show-encoding %s | FileCheck %s
+# RUN: llvm-mc -triple powerpc64le-unknown-unknown --show-encoding %s | FileCheck %s
#CHECK: .cfi_startproc
#CHECK: .cfi_offset r0, 0
diff --git a/test/MC/PowerPC/vsx.s b/test/MC/PowerPC/vsx.s
new file mode 100644
index 0000000..d292dda
--- /dev/null
+++ b/test/MC/PowerPC/vsx.s
@@ -0,0 +1,447 @@
+# RUN: llvm-mc -triple powerpc64-unknown-linux-gnu --show-encoding %s | FileCheck -check-prefix=CHECK-BE %s
+# RUN: llvm-mc -triple powerpc64le-unknown-linux-gnu --show-encoding %s | FileCheck -check-prefix=CHECK-LE %s
+
+# CHECK-BE: lxsdx 7, 5, 31 # encoding: [0x7c,0xe5,0xfc,0x98]
+# CHECK-LE: lxsdx 7, 5, 31 # encoding: [0x98,0xfc,0xe5,0x7c]
+ lxsdx 7, 5, 31
+# CHECK-BE: lxvd2x 7, 5, 31 # encoding: [0x7c,0xe5,0xfe,0x98]
+# CHECK-LE: lxvd2x 7, 5, 31 # encoding: [0x98,0xfe,0xe5,0x7c]
+ lxvd2x 7, 5, 31
+# CHECK-BE: lxvdsx 7, 5, 31 # encoding: [0x7c,0xe5,0xfa,0x98]
+# CHECK-LE: lxvdsx 7, 5, 31 # encoding: [0x98,0xfa,0xe5,0x7c]
+ lxvdsx 7, 5, 31
+# CHECK-BE: lxvw4x 7, 5, 31 # encoding: [0x7c,0xe5,0xfe,0x18]
+# CHECK-LE: lxvw4x 7, 5, 31 # encoding: [0x18,0xfe,0xe5,0x7c]
+ lxvw4x 7, 5, 31
+# CHECK-BE: stxsdx 8, 5, 31 # encoding: [0x7d,0x05,0xfd,0x98]
+# CHECK-LE: stxsdx 8, 5, 31 # encoding: [0x98,0xfd,0x05,0x7d]
+ stxsdx 8, 5, 31
+# CHECK-BE: stxvd2x 8, 5, 31 # encoding: [0x7d,0x05,0xff,0x98]
+# CHECK-LE: stxvd2x 8, 5, 31 # encoding: [0x98,0xff,0x05,0x7d]
+ stxvd2x 8, 5, 31
+# CHECK-BE: stxvw4x 8, 5, 31 # encoding: [0x7d,0x05,0xff,0x18]
+# CHECK-LE: stxvw4x 8, 5, 31 # encoding: [0x18,0xff,0x05,0x7d]
+ stxvw4x 8, 5, 31
+# CHECK-BE: xsabsdp 7, 27 # encoding: [0xf0,0xe0,0xdd,0x64]
+# CHECK-LE: xsabsdp 7, 27 # encoding: [0x64,0xdd,0xe0,0xf0]
+ xsabsdp 7, 27
+# CHECK-BE: xsadddp 7, 63, 27 # encoding: [0xf0,0xff,0xd9,0x04]
+# CHECK-LE: xsadddp 7, 63, 27 # encoding: [0x04,0xd9,0xff,0xf0]
+ xsadddp 7, 63, 27
+# CHECK-BE: xscmpodp 6, 63, 27 # encoding: [0xf3,0x1f,0xd9,0x5c]
+# CHECK-LE: xscmpodp 6, 63, 27 # encoding: [0x5c,0xd9,0x1f,0xf3]
+ xscmpodp 6, 63, 27
+# CHECK-BE: xscmpudp 6, 63, 27 # encoding: [0xf3,0x1f,0xd9,0x1c]
+# CHECK-LE: xscmpudp 6, 63, 27 # encoding: [0x1c,0xd9,0x1f,0xf3]
+ xscmpudp 6, 63, 27
+# CHECK-BE: xscpsgndp 7, 63, 27 # encoding: [0xf0,0xff,0xdd,0x84]
+# CHECK-LE: xscpsgndp 7, 63, 27 # encoding: [0x84,0xdd,0xff,0xf0]
+ xscpsgndp 7, 63, 27
+# CHECK-BE: xscvdpsp 7, 27 # encoding: [0xf0,0xe0,0xdc,0x24]
+# CHECK-LE: xscvdpsp 7, 27 # encoding: [0x24,0xdc,0xe0,0xf0]
+ xscvdpsp 7, 27
+# CHECK-BE: xscvdpsxds 7, 27 # encoding: [0xf0,0xe0,0xdd,0x60]
+# CHECK-LE: xscvdpsxds 7, 27 # encoding: [0x60,0xdd,0xe0,0xf0]
+ xscvdpsxds 7, 27
+# CHECK-BE: xscvdpsxws 7, 27 # encoding: [0xf0,0xe0,0xd9,0x60]
+# CHECK-LE: xscvdpsxws 7, 27 # encoding: [0x60,0xd9,0xe0,0xf0]
+ xscvdpsxws 7, 27
+# CHECK-BE: xscvdpuxds 7, 27 # encoding: [0xf0,0xe0,0xdd,0x20]
+# CHECK-LE: xscvdpuxds 7, 27 # encoding: [0x20,0xdd,0xe0,0xf0]
+ xscvdpuxds 7, 27
+# CHECK-BE: xscvdpuxws 7, 27 # encoding: [0xf0,0xe0,0xd9,0x20]
+# CHECK-LE: xscvdpuxws 7, 27 # encoding: [0x20,0xd9,0xe0,0xf0]
+ xscvdpuxws 7, 27
+# CHECK-BE: xscvspdp 7, 27 # encoding: [0xf0,0xe0,0xdd,0x24]
+# CHECK-LE: xscvspdp 7, 27 # encoding: [0x24,0xdd,0xe0,0xf0]
+ xscvspdp 7, 27
+# CHECK-BE: xscvsxddp 7, 27 # encoding: [0xf0,0xe0,0xdd,0xe0]
+# CHECK-LE: xscvsxddp 7, 27 # encoding: [0xe0,0xdd,0xe0,0xf0]
+ xscvsxddp 7, 27
+# CHECK-BE: xscvuxddp 7, 27 # encoding: [0xf0,0xe0,0xdd,0xa0]
+# CHECK-LE: xscvuxddp 7, 27 # encoding: [0xa0,0xdd,0xe0,0xf0]
+ xscvuxddp 7, 27
+# CHECK-BE: xsdivdp 7, 63, 27 # encoding: [0xf0,0xff,0xd9,0xc4]
+# CHECK-LE: xsdivdp 7, 63, 27 # encoding: [0xc4,0xd9,0xff,0xf0]
+ xsdivdp 7, 63, 27
+# CHECK-BE: xsmaddadp 7, 63, 27 # encoding: [0xf0,0xff,0xd9,0x0c]
+# CHECK-LE: xsmaddadp 7, 63, 27 # encoding: [0x0c,0xd9,0xff,0xf0]
+ xsmaddadp 7, 63, 27
+# CHECK-BE: xsmaddmdp 7, 63, 27 # encoding: [0xf0,0xff,0xd9,0x4c]
+# CHECK-LE: xsmaddmdp 7, 63, 27 # encoding: [0x4c,0xd9,0xff,0xf0]
+ xsmaddmdp 7, 63, 27
+# CHECK-BE: xsmaxdp 7, 63, 27 # encoding: [0xf0,0xff,0xdd,0x04]
+# CHECK-LE: xsmaxdp 7, 63, 27 # encoding: [0x04,0xdd,0xff,0xf0]
+ xsmaxdp 7, 63, 27
+# CHECK-BE: xsmindp 7, 63, 27 # encoding: [0xf0,0xff,0xdd,0x44]
+# CHECK-LE: xsmindp 7, 63, 27 # encoding: [0x44,0xdd,0xff,0xf0]
+ xsmindp 7, 63, 27
+# CHECK-BE: xsmsubadp 7, 63, 27 # encoding: [0xf0,0xff,0xd9,0x8c]
+# CHECK-LE: xsmsubadp 7, 63, 27 # encoding: [0x8c,0xd9,0xff,0xf0]
+ xsmsubadp 7, 63, 27
+# CHECK-BE: xsmsubmdp 7, 63, 27 # encoding: [0xf0,0xff,0xd9,0xcc]
+# CHECK-LE: xsmsubmdp 7, 63, 27 # encoding: [0xcc,0xd9,0xff,0xf0]
+ xsmsubmdp 7, 63, 27
+# CHECK-BE: xsmuldp 7, 63, 27 # encoding: [0xf0,0xff,0xd9,0x84]
+# CHECK-LE: xsmuldp 7, 63, 27 # encoding: [0x84,0xd9,0xff,0xf0]
+ xsmuldp 7, 63, 27
+# CHECK-BE: xsnabsdp 7, 27 # encoding: [0xf0,0xe0,0xdd,0xa4]
+# CHECK-LE: xsnabsdp 7, 27 # encoding: [0xa4,0xdd,0xe0,0xf0]
+ xsnabsdp 7, 27
+# CHECK-BE: xsnegdp 7, 27 # encoding: [0xf0,0xe0,0xdd,0xe4]
+# CHECK-LE: xsnegdp 7, 27 # encoding: [0xe4,0xdd,0xe0,0xf0]
+ xsnegdp 7, 27
+# CHECK-BE: xsnmaddadp 7, 63, 27 # encoding: [0xf0,0xff,0xdd,0x0c]
+# CHECK-LE: xsnmaddadp 7, 63, 27 # encoding: [0x0c,0xdd,0xff,0xf0]
+ xsnmaddadp 7, 63, 27
+# CHECK-BE: xsnmaddmdp 7, 63, 27 # encoding: [0xf0,0xff,0xdd,0x4c]
+# CHECK-LE: xsnmaddmdp 7, 63, 27 # encoding: [0x4c,0xdd,0xff,0xf0]
+ xsnmaddmdp 7, 63, 27
+# CHECK-BE: xsnmsubadp 7, 63, 27 # encoding: [0xf0,0xff,0xdd,0x8c]
+# CHECK-LE: xsnmsubadp 7, 63, 27 # encoding: [0x8c,0xdd,0xff,0xf0]
+ xsnmsubadp 7, 63, 27
+# CHECK-BE: xsnmsubmdp 7, 63, 27 # encoding: [0xf0,0xff,0xdd,0xcc]
+# CHECK-LE: xsnmsubmdp 7, 63, 27 # encoding: [0xcc,0xdd,0xff,0xf0]
+ xsnmsubmdp 7, 63, 27
+# CHECK-BE: xsrdpi 7, 27 # encoding: [0xf0,0xe0,0xd9,0x24]
+# CHECK-LE: xsrdpi 7, 27 # encoding: [0x24,0xd9,0xe0,0xf0]
+ xsrdpi 7, 27
+# CHECK-BE: xsrdpic 7, 27 # encoding: [0xf0,0xe0,0xd9,0xac]
+# CHECK-LE: xsrdpic 7, 27 # encoding: [0xac,0xd9,0xe0,0xf0]
+ xsrdpic 7, 27
+# CHECK-BE: xsrdpim 7, 27 # encoding: [0xf0,0xe0,0xd9,0xe4]
+# CHECK-LE: xsrdpim 7, 27 # encoding: [0xe4,0xd9,0xe0,0xf0]
+ xsrdpim 7, 27
+# CHECK-BE: xsrdpip 7, 27 # encoding: [0xf0,0xe0,0xd9,0xa4]
+# CHECK-LE: xsrdpip 7, 27 # encoding: [0xa4,0xd9,0xe0,0xf0]
+ xsrdpip 7, 27
+# CHECK-BE: xsrdpiz 7, 27 # encoding: [0xf0,0xe0,0xd9,0x64]
+# CHECK-LE: xsrdpiz 7, 27 # encoding: [0x64,0xd9,0xe0,0xf0]
+ xsrdpiz 7, 27
+# CHECK-BE: xsredp 7, 27 # encoding: [0xf0,0xe0,0xd9,0x68]
+# CHECK-LE: xsredp 7, 27 # encoding: [0x68,0xd9,0xe0,0xf0]
+ xsredp 7, 27
+# CHECK-BE: xsrsqrtedp 7, 27 # encoding: [0xf0,0xe0,0xd9,0x28]
+# CHECK-LE: xsrsqrtedp 7, 27 # encoding: [0x28,0xd9,0xe0,0xf0]
+ xsrsqrtedp 7, 27
+# CHECK-BE: xssqrtdp 7, 27 # encoding: [0xf0,0xe0,0xd9,0x2c]
+# CHECK-LE: xssqrtdp 7, 27 # encoding: [0x2c,0xd9,0xe0,0xf0]
+ xssqrtdp 7, 27
+# CHECK-BE: xssubdp 7, 63, 27 # encoding: [0xf0,0xff,0xd9,0x44]
+# CHECK-LE: xssubdp 7, 63, 27 # encoding: [0x44,0xd9,0xff,0xf0]
+ xssubdp 7, 63, 27
+# CHECK-BE: xstdivdp 6, 63, 27 # encoding: [0xf3,0x1f,0xd9,0xec]
+# CHECK-LE: xstdivdp 6, 63, 27 # encoding: [0xec,0xd9,0x1f,0xf3]
+ xstdivdp 6, 63, 27
+# CHECK-BE: xstsqrtdp 6, 27 # encoding: [0xf3,0x00,0xd9,0xa8]
+# CHECK-LE: xstsqrtdp 6, 27 # encoding: [0xa8,0xd9,0x00,0xf3]
+ xstsqrtdp 6, 27
+# CHECK-BE: xvabsdp 7, 27 # encoding: [0xf0,0xe0,0xdf,0x64]
+# CHECK-LE: xvabsdp 7, 27 # encoding: [0x64,0xdf,0xe0,0xf0]
+ xvabsdp 7, 27
+# CHECK-BE: xvabssp 7, 27 # encoding: [0xf0,0xe0,0xde,0x64]
+# CHECK-LE: xvabssp 7, 27 # encoding: [0x64,0xde,0xe0,0xf0]
+ xvabssp 7, 27
+# CHECK-BE: xvadddp 7, 63, 27 # encoding: [0xf0,0xff,0xdb,0x04]
+# CHECK-LE: xvadddp 7, 63, 27 # encoding: [0x04,0xdb,0xff,0xf0]
+ xvadddp 7, 63, 27
+# CHECK-BE: xvaddsp 7, 63, 27 # encoding: [0xf0,0xff,0xda,0x04]
+# CHECK-LE: xvaddsp 7, 63, 27 # encoding: [0x04,0xda,0xff,0xf0]
+ xvaddsp 7, 63, 27
+# CHECK-BE: xvcmpeqdp 7, 63, 27 # encoding: [0xf0,0xff,0xdb,0x1c]
+# CHECK-LE: xvcmpeqdp 7, 63, 27 # encoding: [0x1c,0xdb,0xff,0xf0]
+ xvcmpeqdp 7, 63, 27
+# CHECK-BE: xvcmpeqdp. 7, 63, 27 # encoding: [0xf0,0xff,0xdf,0x1c]
+# CHECK-LE: xvcmpeqdp. 7, 63, 27 # encoding: [0x1c,0xdf,0xff,0xf0]
+ xvcmpeqdp. 7, 63, 27
+# CHECK-BE: xvcmpeqsp 7, 63, 27 # encoding: [0xf0,0xff,0xda,0x1c]
+# CHECK-LE: xvcmpeqsp 7, 63, 27 # encoding: [0x1c,0xda,0xff,0xf0]
+ xvcmpeqsp 7, 63, 27
+# CHECK-BE: xvcmpeqsp. 7, 63, 27 # encoding: [0xf0,0xff,0xde,0x1c]
+# CHECK-LE: xvcmpeqsp. 7, 63, 27 # encoding: [0x1c,0xde,0xff,0xf0]
+ xvcmpeqsp. 7, 63, 27
+# CHECK-BE: xvcmpgedp 7, 63, 27 # encoding: [0xf0,0xff,0xdb,0x9c]
+# CHECK-LE: xvcmpgedp 7, 63, 27 # encoding: [0x9c,0xdb,0xff,0xf0]
+ xvcmpgedp 7, 63, 27
+# CHECK-BE: xvcmpgedp. 7, 63, 27 # encoding: [0xf0,0xff,0xdf,0x9c]
+# CHECK-LE: xvcmpgedp. 7, 63, 27 # encoding: [0x9c,0xdf,0xff,0xf0]
+ xvcmpgedp. 7, 63, 27
+# CHECK-BE: xvcmpgesp 7, 63, 27 # encoding: [0xf0,0xff,0xda,0x9c]
+# CHECK-LE: xvcmpgesp 7, 63, 27 # encoding: [0x9c,0xda,0xff,0xf0]
+ xvcmpgesp 7, 63, 27
+# CHECK-BE: xvcmpgesp. 7, 63, 27 # encoding: [0xf0,0xff,0xde,0x9c]
+# CHECK-LE: xvcmpgesp. 7, 63, 27 # encoding: [0x9c,0xde,0xff,0xf0]
+ xvcmpgesp. 7, 63, 27
+# CHECK-BE: xvcmpgtdp 7, 63, 27 # encoding: [0xf0,0xff,0xdb,0x5c]
+# CHECK-LE: xvcmpgtdp 7, 63, 27 # encoding: [0x5c,0xdb,0xff,0xf0]
+ xvcmpgtdp 7, 63, 27
+# CHECK-BE: xvcmpgtdp. 7, 63, 27 # encoding: [0xf0,0xff,0xdf,0x5c]
+# CHECK-LE: xvcmpgtdp. 7, 63, 27 # encoding: [0x5c,0xdf,0xff,0xf0]
+ xvcmpgtdp. 7, 63, 27
+# CHECK-BE: xvcmpgtsp 7, 63, 27 # encoding: [0xf0,0xff,0xda,0x5c]
+# CHECK-LE: xvcmpgtsp 7, 63, 27 # encoding: [0x5c,0xda,0xff,0xf0]
+ xvcmpgtsp 7, 63, 27
+# CHECK-BE: xvcmpgtsp. 7, 63, 27 # encoding: [0xf0,0xff,0xde,0x5c]
+# CHECK-LE: xvcmpgtsp. 7, 63, 27 # encoding: [0x5c,0xde,0xff,0xf0]
+ xvcmpgtsp. 7, 63, 27
+# CHECK-BE: xvcpsgndp 7, 63, 27 # encoding: [0xf0,0xff,0xdf,0x84]
+# CHECK-LE: xvcpsgndp 7, 63, 27 # encoding: [0x84,0xdf,0xff,0xf0]
+ xvcpsgndp 7, 63, 27
+# CHECK-BE: xvcpsgnsp 7, 63, 27 # encoding: [0xf0,0xff,0xde,0x84]
+# CHECK-LE: xvcpsgnsp 7, 63, 27 # encoding: [0x84,0xde,0xff,0xf0]
+ xvcpsgnsp 7, 63, 27
+# CHECK-BE: xvcvdpsp 7, 27 # encoding: [0xf0,0xe0,0xde,0x24]
+# CHECK-LE: xvcvdpsp 7, 27 # encoding: [0x24,0xde,0xe0,0xf0]
+ xvcvdpsp 7, 27
+# CHECK-BE: xvcvdpsxds 7, 27 # encoding: [0xf0,0xe0,0xdf,0x60]
+# CHECK-LE: xvcvdpsxds 7, 27 # encoding: [0x60,0xdf,0xe0,0xf0]
+ xvcvdpsxds 7, 27
+# CHECK-BE: xvcvdpsxws 7, 27 # encoding: [0xf0,0xe0,0xdb,0x60]
+# CHECK-LE: xvcvdpsxws 7, 27 # encoding: [0x60,0xdb,0xe0,0xf0]
+ xvcvdpsxws 7, 27
+# CHECK-BE: xvcvdpuxds 7, 27 # encoding: [0xf0,0xe0,0xdf,0x20]
+# CHECK-LE: xvcvdpuxds 7, 27 # encoding: [0x20,0xdf,0xe0,0xf0]
+ xvcvdpuxds 7, 27
+# CHECK-BE: xvcvdpuxws 7, 27 # encoding: [0xf0,0xe0,0xdb,0x20]
+# CHECK-LE: xvcvdpuxws 7, 27 # encoding: [0x20,0xdb,0xe0,0xf0]
+ xvcvdpuxws 7, 27
+# CHECK-BE: xvcvspdp 7, 27 # encoding: [0xf0,0xe0,0xdf,0x24]
+# CHECK-LE: xvcvspdp 7, 27 # encoding: [0x24,0xdf,0xe0,0xf0]
+ xvcvspdp 7, 27
+# CHECK-BE: xvcvspsxds 7, 27 # encoding: [0xf0,0xe0,0xde,0x60]
+# CHECK-LE: xvcvspsxds 7, 27 # encoding: [0x60,0xde,0xe0,0xf0]
+ xvcvspsxds 7, 27
+# CHECK-BE: xvcvspsxws 7, 27 # encoding: [0xf0,0xe0,0xda,0x60]
+# CHECK-LE: xvcvspsxws 7, 27 # encoding: [0x60,0xda,0xe0,0xf0]
+ xvcvspsxws 7, 27
+# CHECK-BE: xvcvspuxds 7, 27 # encoding: [0xf0,0xe0,0xde,0x20]
+# CHECK-LE: xvcvspuxds 7, 27 # encoding: [0x20,0xde,0xe0,0xf0]
+ xvcvspuxds 7, 27
+# CHECK-BE: xvcvspuxws 7, 27 # encoding: [0xf0,0xe0,0xda,0x20]
+# CHECK-LE: xvcvspuxws 7, 27 # encoding: [0x20,0xda,0xe0,0xf0]
+ xvcvspuxws 7, 27
+# CHECK-BE: xvcvsxddp 7, 27 # encoding: [0xf0,0xe0,0xdf,0xe0]
+# CHECK-LE: xvcvsxddp 7, 27 # encoding: [0xe0,0xdf,0xe0,0xf0]
+ xvcvsxddp 7, 27
+# CHECK-BE: xvcvsxdsp 7, 27 # encoding: [0xf0,0xe0,0xde,0xe0]
+# CHECK-LE: xvcvsxdsp 7, 27 # encoding: [0xe0,0xde,0xe0,0xf0]
+ xvcvsxdsp 7, 27
+# CHECK-BE: xvcvsxwdp 7, 27 # encoding: [0xf0,0xe0,0xdb,0xe0]
+# CHECK-LE: xvcvsxwdp 7, 27 # encoding: [0xe0,0xdb,0xe0,0xf0]
+ xvcvsxwdp 7, 27
+# CHECK-BE: xvcvsxwsp 7, 27 # encoding: [0xf0,0xe0,0xda,0xe0]
+# CHECK-LE: xvcvsxwsp 7, 27 # encoding: [0xe0,0xda,0xe0,0xf0]
+ xvcvsxwsp 7, 27
+# CHECK-BE: xvcvuxddp 7, 27 # encoding: [0xf0,0xe0,0xdf,0xa0]
+# CHECK-LE: xvcvuxddp 7, 27 # encoding: [0xa0,0xdf,0xe0,0xf0]
+ xvcvuxddp 7, 27
+# CHECK-BE: xvcvuxdsp 7, 27 # encoding: [0xf0,0xe0,0xde,0xa0]
+# CHECK-LE: xvcvuxdsp 7, 27 # encoding: [0xa0,0xde,0xe0,0xf0]
+ xvcvuxdsp 7, 27
+# CHECK-BE: xvcvuxwdp 7, 27 # encoding: [0xf0,0xe0,0xdb,0xa0]
+# CHECK-LE: xvcvuxwdp 7, 27 # encoding: [0xa0,0xdb,0xe0,0xf0]
+ xvcvuxwdp 7, 27
+# CHECK-BE: xvcvuxwsp 7, 27 # encoding: [0xf0,0xe0,0xda,0xa0]
+# CHECK-LE: xvcvuxwsp 7, 27 # encoding: [0xa0,0xda,0xe0,0xf0]
+ xvcvuxwsp 7, 27
+# CHECK-BE: xvdivdp 7, 63, 27 # encoding: [0xf0,0xff,0xdb,0xc4]
+# CHECK-LE: xvdivdp 7, 63, 27 # encoding: [0xc4,0xdb,0xff,0xf0]
+ xvdivdp 7, 63, 27
+# CHECK-BE: xvdivsp 7, 63, 27 # encoding: [0xf0,0xff,0xda,0xc4]
+# CHECK-LE: xvdivsp 7, 63, 27 # encoding: [0xc4,0xda,0xff,0xf0]
+ xvdivsp 7, 63, 27
+# CHECK-BE: xvmaddadp 7, 63, 27 # encoding: [0xf0,0xff,0xdb,0x0c]
+# CHECK-LE: xvmaddadp 7, 63, 27 # encoding: [0x0c,0xdb,0xff,0xf0]
+ xvmaddadp 7, 63, 27
+# CHECK-BE: xvmaddasp 7, 63, 27 # encoding: [0xf0,0xff,0xda,0x0c]
+# CHECK-LE: xvmaddasp 7, 63, 27 # encoding: [0x0c,0xda,0xff,0xf0]
+ xvmaddasp 7, 63, 27
+# CHECK-BE: xvmaddmdp 7, 63, 27 # encoding: [0xf0,0xff,0xdb,0x4c]
+# CHECK-LE: xvmaddmdp 7, 63, 27 # encoding: [0x4c,0xdb,0xff,0xf0]
+ xvmaddmdp 7, 63, 27
+# CHECK-BE: xvmaddmsp 7, 63, 27 # encoding: [0xf0,0xff,0xda,0x4c]
+# CHECK-LE: xvmaddmsp 7, 63, 27 # encoding: [0x4c,0xda,0xff,0xf0]
+ xvmaddmsp 7, 63, 27
+# CHECK-BE: xvmaxdp 7, 63, 27 # encoding: [0xf0,0xff,0xdf,0x04]
+# CHECK-LE: xvmaxdp 7, 63, 27 # encoding: [0x04,0xdf,0xff,0xf0]
+ xvmaxdp 7, 63, 27
+# CHECK-BE: xvmaxsp 7, 63, 27 # encoding: [0xf0,0xff,0xde,0x04]
+# CHECK-LE: xvmaxsp 7, 63, 27 # encoding: [0x04,0xde,0xff,0xf0]
+ xvmaxsp 7, 63, 27
+# CHECK-BE: xvmindp 7, 63, 27 # encoding: [0xf0,0xff,0xdf,0x44]
+# CHECK-LE: xvmindp 7, 63, 27 # encoding: [0x44,0xdf,0xff,0xf0]
+ xvmindp 7, 63, 27
+# CHECK-BE: xvminsp 7, 63, 27 # encoding: [0xf0,0xff,0xde,0x44]
+# CHECK-LE: xvminsp 7, 63, 27 # encoding: [0x44,0xde,0xff,0xf0]
+ xvminsp 7, 63, 27
+# CHECK-BE: xvcpsgndp 7, 63, 63 # encoding: [0xf0,0xff,0xff,0x86]
+# CHECK-LE: xvcpsgndp 7, 63, 63 # encoding: [0x86,0xff,0xff,0xf0]
+ xvmovdp 7, 63
+# CHECK-BE: xvcpsgnsp 7, 63, 63 # encoding: [0xf0,0xff,0xfe,0x86]
+# CHECK-LE: xvcpsgnsp 7, 63, 63 # encoding: [0x86,0xfe,0xff,0xf0]
+ xvmovsp 7, 63
+# CHECK-BE: xvmsubadp 7, 63, 27 # encoding: [0xf0,0xff,0xdb,0x8c]
+# CHECK-LE: xvmsubadp 7, 63, 27 # encoding: [0x8c,0xdb,0xff,0xf0]
+ xvmsubadp 7, 63, 27
+# CHECK-BE: xvmsubasp 7, 63, 27 # encoding: [0xf0,0xff,0xda,0x8c]
+# CHECK-LE: xvmsubasp 7, 63, 27 # encoding: [0x8c,0xda,0xff,0xf0]
+ xvmsubasp 7, 63, 27
+# CHECK-BE: xvmsubmdp 7, 63, 27 # encoding: [0xf0,0xff,0xdb,0xcc]
+# CHECK-LE: xvmsubmdp 7, 63, 27 # encoding: [0xcc,0xdb,0xff,0xf0]
+ xvmsubmdp 7, 63, 27
+# CHECK-BE: xvmsubmsp 7, 63, 27 # encoding: [0xf0,0xff,0xda,0xcc]
+# CHECK-LE: xvmsubmsp 7, 63, 27 # encoding: [0xcc,0xda,0xff,0xf0]
+ xvmsubmsp 7, 63, 27
+# CHECK-BE: xvmuldp 7, 63, 27 # encoding: [0xf0,0xff,0xdb,0x84]
+# CHECK-LE: xvmuldp 7, 63, 27 # encoding: [0x84,0xdb,0xff,0xf0]
+ xvmuldp 7, 63, 27
+# CHECK-BE: xvmulsp 7, 63, 27 # encoding: [0xf0,0xff,0xda,0x84]
+# CHECK-LE: xvmulsp 7, 63, 27 # encoding: [0x84,0xda,0xff,0xf0]
+ xvmulsp 7, 63, 27
+# CHECK-BE: xvnabsdp 7, 27 # encoding: [0xf0,0xe0,0xdf,0xa4]
+# CHECK-LE: xvnabsdp 7, 27 # encoding: [0xa4,0xdf,0xe0,0xf0]
+ xvnabsdp 7, 27
+# CHECK-BE: xvnabssp 7, 27 # encoding: [0xf0,0xe0,0xde,0xa4]
+# CHECK-LE: xvnabssp 7, 27 # encoding: [0xa4,0xde,0xe0,0xf0]
+ xvnabssp 7, 27
+# CHECK-BE: xvnegdp 7, 27 # encoding: [0xf0,0xe0,0xdf,0xe4]
+# CHECK-LE: xvnegdp 7, 27 # encoding: [0xe4,0xdf,0xe0,0xf0]
+ xvnegdp 7, 27
+# CHECK-BE: xvnegsp 7, 27 # encoding: [0xf0,0xe0,0xde,0xe4]
+# CHECK-LE: xvnegsp 7, 27 # encoding: [0xe4,0xde,0xe0,0xf0]
+ xvnegsp 7, 27
+# CHECK-BE: xvnmaddadp 7, 63, 27 # encoding: [0xf0,0xff,0xdf,0x0c]
+# CHECK-LE: xvnmaddadp 7, 63, 27 # encoding: [0x0c,0xdf,0xff,0xf0]
+ xvnmaddadp 7, 63, 27
+# CHECK-BE: xvnmaddasp 7, 63, 27 # encoding: [0xf0,0xff,0xde,0x0c]
+# CHECK-LE: xvnmaddasp 7, 63, 27 # encoding: [0x0c,0xde,0xff,0xf0]
+ xvnmaddasp 7, 63, 27
+# CHECK-BE: xvnmaddmdp 7, 63, 27 # encoding: [0xf0,0xff,0xdf,0x4c]
+# CHECK-LE: xvnmaddmdp 7, 63, 27 # encoding: [0x4c,0xdf,0xff,0xf0]
+ xvnmaddmdp 7, 63, 27
+# CHECK-BE: xvnmaddmsp 7, 63, 27 # encoding: [0xf0,0xff,0xde,0x4c]
+# CHECK-LE: xvnmaddmsp 7, 63, 27 # encoding: [0x4c,0xde,0xff,0xf0]
+ xvnmaddmsp 7, 63, 27
+# CHECK-BE: xvnmsubadp 7, 63, 27 # encoding: [0xf0,0xff,0xdf,0x8c]
+# CHECK-LE: xvnmsubadp 7, 63, 27 # encoding: [0x8c,0xdf,0xff,0xf0]
+ xvnmsubadp 7, 63, 27
+# CHECK-BE: xvnmsubasp 7, 63, 27 # encoding: [0xf0,0xff,0xde,0x8c]
+# CHECK-LE: xvnmsubasp 7, 63, 27 # encoding: [0x8c,0xde,0xff,0xf0]
+ xvnmsubasp 7, 63, 27
+# CHECK-BE: xvnmsubmdp 7, 63, 27 # encoding: [0xf0,0xff,0xdf,0xcc]
+# CHECK-LE: xvnmsubmdp 7, 63, 27 # encoding: [0xcc,0xdf,0xff,0xf0]
+ xvnmsubmdp 7, 63, 27
+# CHECK-BE: xvnmsubmsp 7, 63, 27 # encoding: [0xf0,0xff,0xde,0xcc]
+# CHECK-LE: xvnmsubmsp 7, 63, 27 # encoding: [0xcc,0xde,0xff,0xf0]
+ xvnmsubmsp 7, 63, 27
+# CHECK-BE: xvrdpi 7, 27 # encoding: [0xf0,0xe0,0xdb,0x24]
+# CHECK-LE: xvrdpi 7, 27 # encoding: [0x24,0xdb,0xe0,0xf0]
+ xvrdpi 7, 27
+# CHECK-BE: xvrdpic 7, 27 # encoding: [0xf0,0xe0,0xdb,0xac]
+# CHECK-LE: xvrdpic 7, 27 # encoding: [0xac,0xdb,0xe0,0xf0]
+ xvrdpic 7, 27
+# CHECK-BE: xvrdpim 7, 27 # encoding: [0xf0,0xe0,0xdb,0xe4]
+# CHECK-LE: xvrdpim 7, 27 # encoding: [0xe4,0xdb,0xe0,0xf0]
+ xvrdpim 7, 27
+# CHECK-BE: xvrdpip 7, 27 # encoding: [0xf0,0xe0,0xdb,0xa4]
+# CHECK-LE: xvrdpip 7, 27 # encoding: [0xa4,0xdb,0xe0,0xf0]
+ xvrdpip 7, 27
+# CHECK-BE: xvrdpiz 7, 27 # encoding: [0xf0,0xe0,0xdb,0x64]
+# CHECK-LE: xvrdpiz 7, 27 # encoding: [0x64,0xdb,0xe0,0xf0]
+ xvrdpiz 7, 27
+# CHECK-BE: xvredp 7, 27 # encoding: [0xf0,0xe0,0xdb,0x68]
+# CHECK-LE: xvredp 7, 27 # encoding: [0x68,0xdb,0xe0,0xf0]
+ xvredp 7, 27
+# CHECK-BE: xvresp 7, 27 # encoding: [0xf0,0xe0,0xda,0x68]
+# CHECK-LE: xvresp 7, 27 # encoding: [0x68,0xda,0xe0,0xf0]
+ xvresp 7, 27
+# CHECK-BE: xvrspi 7, 27 # encoding: [0xf0,0xe0,0xda,0x24]
+# CHECK-LE: xvrspi 7, 27 # encoding: [0x24,0xda,0xe0,0xf0]
+ xvrspi 7, 27
+# CHECK-BE: xvrspic 7, 27 # encoding: [0xf0,0xe0,0xda,0xac]
+# CHECK-LE: xvrspic 7, 27 # encoding: [0xac,0xda,0xe0,0xf0]
+ xvrspic 7, 27
+# CHECK-BE: xvrspim 7, 27 # encoding: [0xf0,0xe0,0xda,0xe4]
+# CHECK-LE: xvrspim 7, 27 # encoding: [0xe4,0xda,0xe0,0xf0]
+ xvrspim 7, 27
+# CHECK-BE: xvrspip 7, 27 # encoding: [0xf0,0xe0,0xda,0xa4]
+# CHECK-LE: xvrspip 7, 27 # encoding: [0xa4,0xda,0xe0,0xf0]
+ xvrspip 7, 27
+# CHECK-BE: xvrspiz 7, 27 # encoding: [0xf0,0xe0,0xda,0x64]
+# CHECK-LE: xvrspiz 7, 27 # encoding: [0x64,0xda,0xe0,0xf0]
+ xvrspiz 7, 27
+# CHECK-BE: xvrsqrtedp 7, 27 # encoding: [0xf0,0xe0,0xdb,0x28]
+# CHECK-LE: xvrsqrtedp 7, 27 # encoding: [0x28,0xdb,0xe0,0xf0]
+ xvrsqrtedp 7, 27
+# CHECK-BE: xvrsqrtesp 7, 27 # encoding: [0xf0,0xe0,0xda,0x28]
+# CHECK-LE: xvrsqrtesp 7, 27 # encoding: [0x28,0xda,0xe0,0xf0]
+ xvrsqrtesp 7, 27
+# CHECK-BE: xvsqrtdp 7, 27 # encoding: [0xf0,0xe0,0xdb,0x2c]
+# CHECK-LE: xvsqrtdp 7, 27 # encoding: [0x2c,0xdb,0xe0,0xf0]
+ xvsqrtdp 7, 27
+# CHECK-BE: xvsqrtsp 7, 27 # encoding: [0xf0,0xe0,0xda,0x2c]
+# CHECK-LE: xvsqrtsp 7, 27 # encoding: [0x2c,0xda,0xe0,0xf0]
+ xvsqrtsp 7, 27
+# CHECK-BE: xvsubdp 7, 63, 27 # encoding: [0xf0,0xff,0xdb,0x44]
+# CHECK-LE: xvsubdp 7, 63, 27 # encoding: [0x44,0xdb,0xff,0xf0]
+ xvsubdp 7, 63, 27
+# CHECK-BE: xvsubsp 7, 63, 27 # encoding: [0xf0,0xff,0xda,0x44]
+# CHECK-LE: xvsubsp 7, 63, 27 # encoding: [0x44,0xda,0xff,0xf0]
+ xvsubsp 7, 63, 27
+# CHECK-BE: xvtdivdp 6, 63, 27 # encoding: [0xf3,0x1f,0xdb,0xec]
+# CHECK-LE: xvtdivdp 6, 63, 27 # encoding: [0xec,0xdb,0x1f,0xf3]
+ xvtdivdp 6, 63, 27
+# CHECK-BE: xvtdivsp 6, 63, 27 # encoding: [0xf3,0x1f,0xda,0xec]
+# CHECK-LE: xvtdivsp 6, 63, 27 # encoding: [0xec,0xda,0x1f,0xf3]
+ xvtdivsp 6, 63, 27
+# CHECK-BE: xvtsqrtdp 6, 27 # encoding: [0xf3,0x00,0xdb,0xa8]
+# CHECK-LE: xvtsqrtdp 6, 27 # encoding: [0xa8,0xdb,0x00,0xf3]
+ xvtsqrtdp 6, 27
+# CHECK-BE: xvtsqrtsp 6, 27 # encoding: [0xf3,0x00,0xda,0xa8]
+# CHECK-LE: xvtsqrtsp 6, 27 # encoding: [0xa8,0xda,0x00,0xf3]
+ xvtsqrtsp 6, 27
+# CHECK-BE: xxland 7, 63, 27 # encoding: [0xf0,0xff,0xdc,0x14]
+# CHECK-LE: xxland 7, 63, 27 # encoding: [0x14,0xdc,0xff,0xf0]
+ xxland 7, 63, 27
+# CHECK-BE: xxlandc 7, 63, 27 # encoding: [0xf0,0xff,0xdc,0x54]
+# CHECK-LE: xxlandc 7, 63, 27 # encoding: [0x54,0xdc,0xff,0xf0]
+ xxlandc 7, 63, 27
+# CHECK-BE: xxlnor 7, 63, 27 # encoding: [0xf0,0xff,0xdd,0x14]
+# CHECK-LE: xxlnor 7, 63, 27 # encoding: [0x14,0xdd,0xff,0xf0]
+ xxlnor 7, 63, 27
+# CHECK-BE: xxlor 7, 63, 27 # encoding: [0xf0,0xff,0xdc,0x94]
+# CHECK-LE: xxlor 7, 63, 27 # encoding: [0x94,0xdc,0xff,0xf0]
+ xxlor 7, 63, 27
+# CHECK-BE: xxlxor 7, 63, 27 # encoding: [0xf0,0xff,0xdc,0xd4]
+# CHECK-LE: xxlxor 7, 63, 27 # encoding: [0xd4,0xdc,0xff,0xf0]
+ xxlxor 7, 63, 27
+# CHECK-BE: xxpermdi 7, 63, 27, 0 # encoding: [0xf0,0xff,0xd8,0x54]
+# CHECK-LE: xxpermdi 7, 63, 27, 0 # encoding: [0x54,0xd8,0xff,0xf0]
+ xxmrghd 7, 63, 27
+# CHECK-BE: xxmrghw 7, 63, 27 # encoding: [0xf0,0xff,0xd8,0x94]
+# CHECK-LE: xxmrghw 7, 63, 27 # encoding: [0x94,0xd8,0xff,0xf0]
+ xxmrghw 7, 63, 27
+# CHECK-BE: xxpermdi 7, 63, 27, 3 # encoding: [0xf0,0xff,0xdb,0x54]
+# CHECK-LE: xxpermdi 7, 63, 27, 3 # encoding: [0x54,0xdb,0xff,0xf0]
+ xxmrgld 7, 63, 27
+# CHECK-BE: xxmrglw 7, 63, 27 # encoding: [0xf0,0xff,0xd9,0x94]
+# CHECK-LE: xxmrglw 7, 63, 27 # encoding: [0x94,0xd9,0xff,0xf0]
+ xxmrglw 7, 63, 27
+# CHECK-BE: xxpermdi 7, 63, 27, 2 # encoding: [0xf0,0xff,0xda,0x54]
+# CHECK-LE: xxpermdi 7, 63, 27, 2 # encoding: [0x54,0xda,0xff,0xf0]
+ xxpermdi 7, 63, 27, 2
+# CHECK-BE: xxsel 7, 63, 27, 14 # encoding: [0xf0,0xff,0xdb,0xb4]
+# CHECK-LE: xxsel 7, 63, 27, 14 # encoding: [0xb4,0xdb,0xff,0xf0]
+ xxsel 7, 63, 27, 14
+# CHECK-BE: xxsldwi 7, 63, 27, 1 # encoding: [0xf0,0xff,0xd9,0x14]
+# CHECK-LE: xxsldwi 7, 63, 27, 1 # encoding: [0x14,0xd9,0xff,0xf0]
+ xxsldwi 7, 63, 27, 1
+# CHECK-BE: xxpermdi 7, 63, 63, 3 # encoding: [0xf0,0xff,0xfb,0x56]
+# CHECK-LE: xxpermdi 7, 63, 63, 3 # encoding: [0x56,0xfb,0xff,0xf0]
+ xxspltd 7, 63, 1
+# CHECK-BE: xxspltw 7, 27, 3 # encoding: [0xf0,0xe3,0xda,0x90]
+# CHECK-LE: xxspltw 7, 27, 3 # encoding: [0x90,0xda,0xe3,0xf0]
+ xxspltw 7, 27, 3
+# CHECK-BE: xxpermdi 7, 63, 63, 2 # encoding: [0xf0,0xff,0xfa,0x56]
+# CHECK-LE: xxpermdi 7, 63, 63, 2 # encoding: [0x56,0xfa,0xff,0xf0]
+ xxswapd 7, 63