1*5a556d55SMatt Arsenault; RUN: llc -mtriple=amdgcn-amd-amdpal -mcpu=gfx950 -verify-machineinstrs < %s | FileCheck -check-prefix=PAL %s 2*5a556d55SMatt Arsenault 3*5a556d55SMatt Arsenault; GFX950supports upto 160 KB configurable LDS memory. 4*5a556d55SMatt Arsenault; This test checks the min and max size of LDS that can be allocated. 5*5a556d55SMatt Arsenault 6*5a556d55SMatt Arsenault; PAL: .shader_functions: 7*5a556d55SMatt Arsenault; PAL: test_lds_array_i32: 8*5a556d55SMatt Arsenault; PAL: .lds_size: 0x28000 9*5a556d55SMatt Arsenault; PAL: test_lds_i32: 10*5a556d55SMatt Arsenault; PAL: .lds_size: 0x4 11*5a556d55SMatt Arsenault 12*5a556d55SMatt Arsenault 13*5a556d55SMatt Arsenault@lds.i32 = addrspace(3) global i32 poison 14*5a556d55SMatt Arsenault@lds.array.i32 = addrspace(3) global [40959 x i32] poison 15*5a556d55SMatt Arsenault 16*5a556d55SMatt Arsenaultdefine amdgpu_gfx void @test_lds_i32(i32 %val) { 17*5a556d55SMatt Arsenault store i32 %val, ptr addrspace(3) @lds.i32 18*5a556d55SMatt Arsenault ret void 19*5a556d55SMatt Arsenault} 20*5a556d55SMatt Arsenault 21*5a556d55SMatt Arsenaultdefine amdgpu_gfx void @test_lds_array_i32() { 22*5a556d55SMatt Arsenault %gep = getelementptr inbounds [40959 x i32], ptr addrspace(3) @lds.array.i32, i32 0, i32 20 23*5a556d55SMatt Arsenault %val = load i32, ptr addrspace(3) %gep 24*5a556d55SMatt Arsenault store i32 %val, ptr addrspace(3) @lds.i32 25*5a556d55SMatt Arsenault ret void 26*5a556d55SMatt Arsenault}