Home | History | Annotate | Download | only in NVPTX
      1 ; RUN: llc < %s -march=nvptx -mcpu=sm_20 | FileCheck %s --check-prefix=PTX32
      2 ; RUN: llc < %s -march=nvptx64 -mcpu=sm_20 | FileCheck %s --check-prefix=PTX64
      3 
      4 ; Ensure we access the local stack properly
      5 
      6 ; PTX32:        mov.u32         %r{{[0-9]+}}, __local_depot{{[0-9]+}};
      7 ; PTX32:        cvta.local.u32  %SP, %r{{[0-9]+}};
      8 ; PTX32:        ld.param.u32    %r{{[0-9]+}}, [foo_param_0];
      9 ; PTX32:        st.u32  [%SP+0], %r{{[0-9]+}};
     10 ; PTX64:        mov.u64         %rl{{[0-9]+}}, __local_depot{{[0-9]+}};
     11 ; PTX64:        cvta.local.u64  %SP, %rl{{[0-9]+}};
     12 ; PTX64:        ld.param.u32    %r{{[0-9]+}}, [foo_param_0];
     13 ; PTX64:        st.u32  [%SP+0], %r{{[0-9]+}};
     14 define void @foo(i32 %a) {
     15   %local = alloca i32, align 4
     16   store i32 %a, i32* %local
     17   ret void
     18 }
     19