xref: /llvm-project/llvm/test/CodeGen/DirectX/omit-bitcast-insert.ll (revision ab7518050183162f09724ef8682a580cc68709bc)
1; RUN: llc --filetype=asm %s -o - | FileCheck %s
2target triple = "dxil-unknown-shadermodel6.7-library"
3
4define i64 @test(ptr %p) #0 {
5  %v = load i64, ptr %p
6  ret i64 %v
7}
8
9; CHECK: define i64 @test(ptr %p) #0 {
10; CHECK-NEXT: %v = load i64, ptr %p, align 8
11; CHECK-NEXT: ret i64 %v
12
13define i64 @test2(ptr %p) #0 {
14  store i64 0, ptr %p
15  %v = load i64, ptr %p
16  ret i64 %v
17}
18
19; CHECK: define i64 @test2(ptr %p) #0 {
20; CHECK-NEXT: store i64 0, ptr %p
21; CHECK-NEXT: %v = load i64, ptr %p, align 8
22; CHECK-NEXT: ret i64 %v
23
24define i32 @test3(ptr %0) #0 {
25  %2 = getelementptr i32, ptr %0, i32 4
26  %3 = load i32, ptr %2
27  ret i32 %3
28}
29
30attributes #0 = { convergent norecurse nounwind "hlsl.export"}
31
32; CHECK: define i32 @test3(ptr %0) #0 {
33; CHECK-NEXT: %2 = getelementptr i32, ptr %0, i32 4
34; CHECK-NEXT: %3 = load i32, ptr %2
35