[ARM] More MVE compare vector splat combines for ANDs
[llvm-complete.git] / test / CodeGen / ARM / static-addr-hoisting.ll
blob683d607936b85b38ddc1e284c20913f09c032e9b
1 ; RUN: llc -mtriple=thumbv7-apple-ios %s -o -  | FileCheck %s
3 define void @multiple_store() {
4 ; CHECK-LABEL: multiple_store:
5 ; CHECK: movw r[[BASE1:[0-9]+]], #16960
6 ; CHECK: movs [[VAL:r[0-9]+]], #42
7 ; CHECK: movt r[[BASE1]], #15
9 ; CHECK-DAG: str [[VAL]], [r[[BASE1]]]
10 ; CHECK-DAG: str [[VAL]], [r[[BASE1]], #24]
11 ; CHECK-DAG: str.w [[VAL]], [r[[BASE1]], #42]
13 ; CHECK: movw r[[BASE2:[0-9]+]], #20394
14 ; CHECK: movt r[[BASE2]], #18
16 ; CHECK: str [[VAL]], [r[[BASE2]]]
17   store i32 42, i32* inttoptr(i32 1000000 to i32*)
18   store i32 42, i32* inttoptr(i32 1000024 to i32*)
19   store i32 42, i32* inttoptr(i32 1000042 to i32*)
20   store i32 42, i32* inttoptr(i32 1200042 to i32*)
21   ret void