Home | History | Annotate | Download | only in glsl_tests
      1 ; RUN: ./amdgcn_glslc %s | FileCheck -check-prefix=GCN -check-prefix=FUNC %s
      2 
      3 ; FUNC-LABEL: {{^}}@bfi_i32:
      4 ; GCN: main
      5 ; GCN: v_interp_mov
      6 ; GCN: v_interp_mov
      7 ; GCN: v_interp_mov
      8 ; GCN: v_interp_mov
      9 ; GCN-NEXT: v_bfm_b32
     10 ; GCN-NEXT: v_lshlrev_b32
     11 ; GCN-NEXT: v_bfi_b32
     12 ; GCN-NEXT: epilog
     13 
     14 #shader fs bfi_i32
     15 #version 400
     16 flat in ivec4 v;
     17 out ivec4 o;
     18 void main() {
     19     o.x = bitfieldInsert(v.x, v.y, v.z, v.w);
     20 }
     21 
     22 
     23 ; FUNC-LABEL: {{^}}@bfi_u32:
     24 ; GCN: main
     25 ; GCN: v_interp_mov
     26 ; GCN: v_interp_mov
     27 ; GCN: v_interp_mov
     28 ; GCN: v_interp_mov
     29 ; GCN-NEXT: v_bfm_b32
     30 ; GCN-NEXT: v_lshlrev_b32
     31 ; GCN-NEXT: v_bfi_b32
     32 ; GCN-NEXT: epilog
     33 
     34 #shader fs bfi_u32
     35 #version 400
     36 flat in uvec4 v;
     37 out uvec4 o;
     38 void main() {
     39     o.x = bitfieldInsert(v.x, v.y, int(v.z), int(v.w));
     40 }
     41