28 lines
763 B
Plaintext
28 lines
763 B
Plaintext
|
# RUN: llc -mtriple=aarch64 -run-pass=aarch64-ldst-opt %s -verify-machineinstrs -o - | FileCheck %s
|
||
|
--- |
|
||
|
@g = common dso_local global i32 0, align 4
|
||
|
|
||
|
define i32 @test() {
|
||
|
entry:
|
||
|
store i32 0, i32* @g, align 4
|
||
|
%0 = load i32, i32* undef, align 4
|
||
|
ret i32 %0
|
||
|
}
|
||
|
|
||
|
...
|
||
|
---
|
||
|
# Don't crash when there's no immediate operand for store.
|
||
|
# CHECK-LABEL: name: test
|
||
|
# CHECK: STRWui $wzr
|
||
|
# CHECK: LDRWui
|
||
|
name: test
|
||
|
tracksRegLiveness: true
|
||
|
body: |
|
||
|
bb.0.entry:
|
||
|
renamable $x8 = ADRP target-flags(aarch64-page) @g
|
||
|
STRWui $wzr, killed renamable $x8, target-flags(aarch64-pageoff, aarch64-nc) @g :: (store 4 into @g)
|
||
|
renamable $w0 = LDRWui undef renamable $x8, 0 :: (load 4 from `i32* undef`)
|
||
|
RET_ReallyLR implicit $w0
|
||
|
|
||
|
...
|