Files
clang-p2996/llvm/test/CodeGen/PowerPC/ldst-16-byte-asm.mir
Kai Luo 1c450c3d7e [PowerPC] Export 16 byte load-store instructions
Export `lq`, `stq`, `lqarx` and `stqcx.` in preparation for implementing 16-byte lock free atomic operations on AIX.
Add a new register class `g8prc` for these instructions, since these instructions require even-odd register pair.

Reviewed By: nemanjai, jsji, #powerpc

Differential Revision: https://reviews.llvm.org/D103010
2021-06-15 01:56:10 +00:00

24 lines
554 B
YAML

# RUN: llc -simplify-mir -verify-machineinstrs -mtriple=powerpc64-ibm-aix-xcoff \
# RUN: %s -o - | FileCheck %s
---
name: foo
alignment: 8
tracksRegLiveness: true
body: |
bb.0.entry:
liveins: $x3, $x4, $x30, $x31
; CHECK-LABEL: .foo
; CHECK: lq 2, 128(4)
; CHECK: lqarx 28, 30, 31
; CHECK: stqcx. 28, 30, 31
; CHECK: stq 2, 128(4)
$g8p1 = LQ 128, $x4
$g8p14 = LQARX $x30, $x31
STQCX $g8p14, $x30, $x31, implicit-def $cr0
STQ $g8p1, 128, $x4
$x3 = COPY $x31
BLR8 implicit $lr8, implicit undef $rm, implicit $x3
...