aboutsummaryrefslogtreecommitdiff
path: root/llvm/test/CodeGen/DirectX/issue-145408-gep-struct-fix.ll
blob: e6d4c1ee936a909c4a0c62d42d8c8c1c7f72a3ce (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
; NOTE: Assertions have been autogenerated by utils/update_test_checks.py UTC_ARGS: --version 5
; RUN: opt -S -dxil-data-scalarization -mtriple=dxil-pc-shadermodel6.3-library %s | FileCheck %s

%struct.RawStruct8D = type { [8 x i32] }

define void @test_no_transform_of_struct()  {
; CHECK-LABEL: define void @test_no_transform_of_struct() {
; CHECK-NEXT:  [[ENTRY:.*:]]
; CHECK-NEXT:    [[OUTPUTSIZESLOCAL_I:%.*]] = alloca [[STRUCT_RAWSTRUCT8D:%.*]], align 4
; CHECK-NEXT:    [[ARRAYINIT_ELEMENT13_I76:%.*]] = getelementptr inbounds nuw [1 x %struct.RawStruct8D], ptr [[OUTPUTSIZESLOCAL_I]], i32 0, i32 0
; CHECK-NEXT:    [[ARRAYINIT_ELEMENT13_I76_I1:%.*]] = getelementptr inbounds nuw [8 x i32], ptr [[ARRAYINIT_ELEMENT13_I76]], i32 0, i32 1
; CHECK-NEXT:    ret void
;
entry:
  %outputSizesLocal.i = alloca %struct.RawStruct8D, align 4
  %arrayinit.element13.i76 = getelementptr inbounds nuw [1 x %struct.RawStruct8D], ptr %outputSizesLocal.i, i32 0, i32 0
  %arrayinit.element13.i76.i1 = getelementptr inbounds nuw [8 x i32], ptr %arrayinit.element13.i76, i32 0, i32 1
  ret void
}