/external/llvm/test/Assembler/ |
D | 2007-12-11-AddressSpaces.ll | 1 ; RUN: llvm-as < %s | llvm-dis | grep "addrspace(33)" | count 7 2 ; RUN: llvm-as < %s | llvm-dis | grep "addrspace(42)" | count 2 3 ; RUN: llvm-as < %s | llvm-dis | grep "addrspace(66)" | count 2 4 ; RUN: llvm-as < %s | llvm-dis | grep "addrspace(11)" | count 6 5 ; RUN: llvm-as < %s | llvm-dis | grep "addrspace(22)" | count 5 8 %struct.mystruct = type { i32, i32 addrspace(33)*, i32, i32 addrspace(33)* } 9 @input = weak addrspace(42) global %struct.mystruct zeroinitializer ; <%struct.mystruct addrspac… 10 @output = addrspace(66) global %struct.mystruct zeroinitializer ; <%struct.mystruct addrspace(66)… 11 @y = external addrspace(33) global i32 addrspace(11)* addrspace(22)* ; <i32 addrspace(11)* addrsp… 15 …addrspace(33)*, i32 addrspace(33)* addrspace(42)* getelementptr (%struct.mystruct, %struct.mystruc… [all …]
|
/external/llvm/test/Transforms/InstCombine/ |
D | constant-fold-address-space-pointer.ll | 4 @g = addrspace(3) global i32 89 6 @const_zero_i8_as1 = addrspace(1) constant i8 0 7 @const_zero_i32_as1 = addrspace(1) constant i32 0 9 @const_zero_i8_as2 = addrspace(2) constant i8 0 10 @const_zero_i32_as2 = addrspace(2) constant i32 0 12 @const_zero_i8_as3 = addrspace(3) constant i8 0 13 @const_zero_i32_as3 = addrspace(3) constant i32 0 17 define i32 addrspace(3)* @test_constant_fold_inttoptr_as_pointer_same_size() { 19 ; CHECK-NEXT: ret i32 addrspace(3)* @const_zero_i32_as3 20 %x = ptrtoint i32 addrspace(3)* @const_zero_i32_as3 to i32 [all …]
|
D | addrspacecast.ll | 7 declare void @llvm.memcpy.p0i8.p1i8.i32(i8*, i8 addrspace(1)*, i32, i32, i1) nounwind 8 declare void @llvm.memcpy.p0i8.p2i8.i32(i8*, i8 addrspace(2)*, i32, i32, i1) nounwind 11 define i32* @combine_redundant_addrspacecast(i32 addrspace(1)* %x) nounwind { 13 ; CHECK: addrspacecast i32 addrspace(1)* %x to i32* 15 %y = addrspacecast i32 addrspace(1)* %x to i32 addrspace(3)* 16 %z = addrspacecast i32 addrspace(3)* %y to i32* 20 define <4 x i32*> @combine_redundant_addrspacecast_vector(<4 x i32 addrspace(1)*> %x) nounwind { 22 ; CHECK: addrspacecast <4 x i32 addrspace(1)*> %x to <4 x i32*> 24 %y = addrspacecast <4 x i32 addrspace(1)*> %x to <4 x i32 addrspace(3)*> 25 %z = addrspacecast <4 x i32 addrspace(3)*> %y to <4 x i32*> [all …]
|
D | multi-size-address-space-pointer.ll | 5 define i32 @test_as0(i32 addrspace(0)* %a) { 8 %arrayidx = getelementptr i32, i32 addrspace(0)* %a, i64 1 9 %y = load i32, i32 addrspace(0)* %arrayidx, align 4 13 define i32 @test_as1(i32 addrspace(1)* %a) { 15 ; CHECK: %arrayidx = getelementptr i32, i32 addrspace(1)* %a, i64 1 16 %arrayidx = getelementptr i32, i32 addrspace(1)* %a, i32 1 17 %y = load i32, i32 addrspace(1)* %arrayidx, align 4 21 define i32 @test_as2(i32 addrspace(2)* %a) { 23 ; CHECK: %arrayidx = getelementptr i32, i32 addrspace(2)* %a, i8 1 24 %arrayidx = getelementptr i32, i32 addrspace(2)* %a, i32 1 [all …]
|
/external/llvm/test/Other/ |
D | constant-fold-gep-address-spaces.ll | 10 ; PLAIN: @G8 = global i8 addrspace(1)* getelementptr (i8, i8 addrspace(1)* inttoptr (i32 1 to i8 ad… 11 @G8 = global i8 addrspace(1)* getelementptr (i8, i8 addrspace(1)* inttoptr (i32 1 to i8 addrspace(1… 12 ; PLAIN: @G1 = global i1 addrspace(2)* getelementptr (i1, i1 addrspace(2)* inttoptr (i8 1 to i1 add… 13 @G1 = global i1 addrspace(2)* getelementptr (i1, i1 addrspace(2)* inttoptr (i8 1 to i1 addrspace(2)… 14 ; PLAIN: @F8 = global i8 addrspace(1)* getelementptr (i8, i8 addrspace(1)* inttoptr (i32 1 to i8 ad… 15 @F8 = global i8 addrspace(1)* getelementptr (i8, i8 addrspace(1)* inttoptr (i32 1 to i8 addrspace(1… 16 ; PLAIN: @F1 = global i1 addrspace(2)* getelementptr (i1, i1 addrspace(2)* inttoptr (i8 1 to i1 add… 17 @F1 = global i1 addrspace(2)* getelementptr (i1, i1 addrspace(2)* inttoptr (i8 1 to i1 addrspace(2)… 18 ; PLAIN: @H8 = global i8 addrspace(1)* getelementptr (i8, i8 addrspace(1)* null, i32 -1) 19 @H8 = global i8 addrspace(1)* getelementptr (i8, i8 addrspace(1)* inttoptr (i32 0 to i8 addrspace(1… [all …]
|
/external/llvm/test/CodeGen/R600/ |
D | global_atomics.ll | 5 define void @atomic_add_i32_offset(i32 addrspace(1)* %out, i32 %in) { 7 %gep = getelementptr i32, i32 addrspace(1)* %out, i32 4 8 %0 = atomicrmw volatile add i32 addrspace(1)* %gep, i32 %in seq_cst 15 define void @atomic_add_i32_ret_offset(i32 addrspace(1)* %out, i32 addrspace(1)* %out2, i32 %in) { 17 %gep = getelementptr i32, i32 addrspace(1)* %out, i32 4 18 %0 = atomicrmw volatile add i32 addrspace(1)* %gep, i32 %in seq_cst 19 store i32 %0, i32 addrspace(1)* %out2 25 define void @atomic_add_i32_addr64_offset(i32 addrspace(1)* %out, i32 %in, i64 %index) { 27 %ptr = getelementptr i32, i32 addrspace(1)* %out, i64 %index 28 %gep = getelementptr i32, i32 addrspace(1)* %ptr, i32 4 [all …]
|
D | si-triv-disjoint-mem-access.ll | 8 @stored_lds_ptr = addrspace(3) global i32 addrspace(3)* undef, align 4 9 @stored_constant_ptr = addrspace(3) global i32 addrspace(2)* undef, align 8 10 @stored_global_ptr = addrspace(3) global i32 addrspace(1)* undef, align 8 16 define void @reorder_local_load_global_store_local_load(i32 addrspace(1)* %out, i32 addrspace(1)* %… 17 %ptr0 = load i32 addrspace(3)*, i32 addrspace(3)* addrspace(3)* @stored_lds_ptr, align 4 19 %ptr1 = getelementptr inbounds i32, i32 addrspace(3)* %ptr0, i32 1 20 %ptr2 = getelementptr inbounds i32, i32 addrspace(3)* %ptr0, i32 2 22 %tmp1 = load i32, i32 addrspace(3)* %ptr1, align 4 23 store i32 99, i32 addrspace(1)* %gptr, align 4 24 %tmp2 = load i32, i32 addrspace(3)* %ptr2, align 4 [all …]
|
D | local-atomics64.ll | 7 define void @lds_atomic_xchg_ret_i64(i64 addrspace(1)* %out, i64 addrspace(3)* %ptr) nounwind { 8 %result = atomicrmw xchg i64 addrspace(3)* %ptr, i64 4 seq_cst 9 store i64 %result, i64 addrspace(1)* %out, align 8 16 define void @lds_atomic_xchg_ret_i64_offset(i64 addrspace(1)* %out, i64 addrspace(3)* %ptr) nounwin… 17 %gep = getelementptr i64, i64 addrspace(3)* %ptr, i32 4 18 %result = atomicrmw xchg i64 addrspace(3)* %gep, i64 4 seq_cst 19 store i64 %result, i64 addrspace(1)* %out, align 8 26 define void @lds_atomic_add_ret_i64(i64 addrspace(1)* %out, i64 addrspace(3)* %ptr) nounwind { 27 %result = atomicrmw add i64 addrspace(3)* %ptr, i64 4 seq_cst 28 store i64 %result, i64 addrspace(1)* %out, align 8 [all …]
|
D | srem.ll | 5 define void @srem_i32(i32 addrspace(1)* %out, i32 addrspace(1)* %in) { 6 %den_ptr = getelementptr i32, i32 addrspace(1)* %in, i32 1 7 %num = load i32, i32 addrspace(1) * %in 8 %den = load i32, i32 addrspace(1) * %den_ptr 10 store i32 %result, i32 addrspace(1)* %out 14 define void @srem_i32_4(i32 addrspace(1)* %out, i32 addrspace(1)* %in) { 15 %num = load i32, i32 addrspace(1) * %in 17 store i32 %result, i32 addrspace(1)* %out 27 define void @srem_i32_7(i32 addrspace(1)* %out, i32 addrspace(1)* %in) { 28 %num = load i32, i32 addrspace(1) * %in [all …]
|
D | local-atomics.ll | 14 define void @lds_atomic_xchg_ret_i32(i32 addrspace(1)* %out, i32 addrspace(3)* %ptr) nounwind { 15 %result = atomicrmw xchg i32 addrspace(3)* %ptr, i32 4 seq_cst 16 store i32 %result, i32 addrspace(1)* %out, align 4 24 define void @lds_atomic_xchg_ret_i32_offset(i32 addrspace(1)* %out, i32 addrspace(3)* %ptr) nounwin… 25 %gep = getelementptr i32, i32 addrspace(3)* %ptr, i32 4 26 %result = atomicrmw xchg i32 addrspace(3)* %gep, i32 4 seq_cst 27 store i32 %result, i32 addrspace(1)* %out, align 4 40 define void @lds_atomic_add_ret_i32(i32 addrspace(1)* %out, i32 addrspace(3)* %ptr) nounwind { 41 %result = atomicrmw add i32 addrspace(3)* %ptr, i32 4 seq_cst 42 store i32 %result, i32 addrspace(1)* %out, align 4 [all …]
|
D | commute-compares.ll | 11 define void @commute_eq_64_i32(i32 addrspace(1)* %out, i32 addrspace(1)* %in) #1 { 13 %gep.in = getelementptr i32, i32 addrspace(1)* %in, i32 %tid 14 %gep.out = getelementptr i32, i32 addrspace(1)* %out, i32 %tid 15 %val = load i32, i32 addrspace(1)* %gep.in 18 store i32 %ext, i32 addrspace(1)* %gep.out 24 define void @commute_ne_64_i32(i32 addrspace(1)* %out, i32 addrspace(1)* %in) #1 { 26 %gep.in = getelementptr i32, i32 addrspace(1)* %in, i32 %tid 27 %gep.out = getelementptr i32, i32 addrspace(1)* %out, i32 %tid 28 %val = load i32, i32 addrspace(1)* %gep.in 31 store i32 %ext, i32 addrspace(1)* %gep.out [all …]
|
D | global-extload-i16.ll | 10 define void @zextload_global_i16_to_i32(i32 addrspace(1)* %out, i16 addrspace(1)* %in) nounwind { 11 %a = load i16, i16 addrspace(1)* %in 13 store i32 %ext, i32 addrspace(1)* %out 21 define void @sextload_global_i16_to_i32(i32 addrspace(1)* %out, i16 addrspace(1)* %in) nounwind { 22 %a = load i16, i16 addrspace(1)* %in 24 store i32 %ext, i32 addrspace(1)* %out 31 define void @zextload_global_v1i16_to_v1i32(<1 x i32> addrspace(1)* %out, <1 x i16> addrspace(1)* n… 32 %load = load <1 x i16>, <1 x i16> addrspace(1)* %in 34 store <1 x i32> %ext, <1 x i32> addrspace(1)* %out 41 define void @sextload_global_v1i16_to_v1i32(<1 x i32> addrspace(1)* %out, <1 x i16> addrspace(1)* n… [all …]
|
D | global-extload-i8.ll | 9 define void @zextload_global_i8_to_i32(i32 addrspace(1)* %out, i8 addrspace(1)* %in) nounwind { 10 %a = load i8, i8 addrspace(1)* %in 12 store i32 %ext, i32 addrspace(1)* %out 20 define void @sextload_global_i8_to_i32(i32 addrspace(1)* %out, i8 addrspace(1)* %in) nounwind { 21 %a = load i8, i8 addrspace(1)* %in 23 store i32 %ext, i32 addrspace(1)* %out 29 define void @zextload_global_v1i8_to_v1i32(<1 x i32> addrspace(1)* %out, <1 x i8> addrspace(1)* noc… 30 %load = load <1 x i8>, <1 x i8> addrspace(1)* %in 32 store <1 x i32> %ext, <1 x i32> addrspace(1)* %out 38 define void @sextload_global_v1i8_to_v1i32(<1 x i32> addrspace(1)* %out, <1 x i8> addrspace(1)* noc… [all …]
|
D | global-extload-i1.ll | 10 define void @zextload_global_i1_to_i32(i32 addrspace(1)* %out, i1 addrspace(1)* %in) nounwind { 11 %a = load i1, i1 addrspace(1)* %in 13 store i32 %ext, i32 addrspace(1)* %out 22 define void @sextload_global_i1_to_i32(i32 addrspace(1)* %out, i1 addrspace(1)* %in) nounwind { 23 %a = load i1, i1 addrspace(1)* %in 25 store i32 %ext, i32 addrspace(1)* %out 31 define void @zextload_global_v1i1_to_v1i32(<1 x i32> addrspace(1)* %out, <1 x i1> addrspace(1)* noc… 32 %load = load <1 x i1>, <1 x i1> addrspace(1)* %in 34 store <1 x i32> %ext, <1 x i32> addrspace(1)* %out 40 define void @sextload_global_v1i1_to_v1i32(<1 x i32> addrspace(1)* %out, <1 x i1> addrspace(1)* noc… [all …]
|
D | flat-address-space.ll | 13 define void @branch_use_flat_i32(i32 addrspace(1)* noalias %out, i32 addrspace(1)* %gptr, i32 addrs… 19 %flat_local = addrspacecast i32 addrspace(3)* %lptr to i32 addrspace(4)* 23 %flat_global = addrspacecast i32 addrspace(1)* %gptr to i32 addrspace(4)* 27 %fptr = phi i32 addrspace(4)* [ %flat_local, %local ], [ %flat_global, %global ] 28 store i32 %x, i32 addrspace(4)* %fptr, align 4 29 ; %val = load i32, i32 addrspace(4)* %fptr, align 4 30 ; store i32 %val, i32 addrspace(1)* %out, align 4 44 define void @store_flat_i32(i32 addrspace(1)* %gptr, i32 %x) #0 { 45 %fptr = addrspacecast i32 addrspace(1)* %gptr to i32 addrspace(4)* 46 store i32 %x, i32 addrspace(4)* %fptr, align 4 [all …]
|
D | ds_write2.ll | 3 @lds = addrspace(3) global [512 x float] undef, align 4 4 @lds.f64 = addrspace(3) global [512 x double] undef, align 8 12 define void @simple_write2_one_val_f32(float addrspace(1)* %C, float addrspace(1)* %in) #0 { 14 %in.gep = getelementptr float, float addrspace(1)* %in, i32 %x.i 15 %val = load float, float addrspace(1)* %in.gep, align 4 16 …%arrayidx0 = getelementptr inbounds [512 x float], [512 x float] addrspace(3)* @lds, i32 0, i32 %x… 17 store float %val, float addrspace(3)* %arrayidx0, align 4 19 …%arrayidx1 = getelementptr inbounds [512 x float], [512 x float] addrspace(3)* @lds, i32 0, i32 %a… 20 store float %val, float addrspace(3)* %arrayidx1, align 4 30 define void @simple_write2_two_val_f32(float addrspace(1)* %C, float addrspace(1)* %in) #0 { [all …]
|
D | and.ll | 12 define void @test2(<2 x i32> addrspace(1)* %out, <2 x i32> addrspace(1)* %in) { 13 %b_ptr = getelementptr <2 x i32>, <2 x i32> addrspace(1)* %in, i32 1 14 %a = load <2 x i32>, <2 x i32> addrspace(1) * %in 15 %b = load <2 x i32>, <2 x i32> addrspace(1) * %b_ptr 17 store <2 x i32> %result, <2 x i32> addrspace(1)* %out 32 define void @test4(<4 x i32> addrspace(1)* %out, <4 x i32> addrspace(1)* %in) { 33 %b_ptr = getelementptr <4 x i32>, <4 x i32> addrspace(1)* %in, i32 1 34 %a = load <4 x i32>, <4 x i32> addrspace(1) * %in 35 %b = load <4 x i32>, <4 x i32> addrspace(1) * %b_ptr 37 store <4 x i32> %result, <4 x i32> addrspace(1)* %out [all …]
|
D | min3.ll | 7 …ine void @v_test_imin3_slt_i32(i32 addrspace(1)* %out, i32 addrspace(1)* %aptr, i32 addrspace(1)* … 9 %gep0 = getelementptr i32, i32 addrspace(1)* %aptr, i32 %tid 10 %gep1 = getelementptr i32, i32 addrspace(1)* %bptr, i32 %tid 11 %gep2 = getelementptr i32, i32 addrspace(1)* %cptr, i32 %tid 12 %outgep = getelementptr i32, i32 addrspace(1)* %out, i32 %tid 13 %a = load i32, i32 addrspace(1)* %gep0, align 4 14 %b = load i32, i32 addrspace(1)* %gep1, align 4 15 %c = load i32, i32 addrspace(1)* %gep2, align 4 20 store i32 %i1, i32 addrspace(1)* %outgep, align 4 26 …ine void @v_test_umin3_ult_i32(i32 addrspace(1)* %out, i32 addrspace(1)* %aptr, i32 addrspace(1)* … [all …]
|
D | unhandled-loop-condition-assertion.ll | 10 define void @branch_true(i8 addrspace(1)* nocapture %main, i32 %main_stride) #0 { 21 %main.addr.011 = phi i8 addrspace(1)* [ %main, %for.body.lr.ph ], [ %add.ptr6, %for.body ] 22 %0 = bitcast i8 addrspace(1)* %main.addr.011 to i32 addrspace(1)* 23 %1 = load i32, i32 addrspace(1)* %0, align 4 24 %add.ptr = getelementptr inbounds i8, i8 addrspace(1)* %main.addr.011, i32 %main_stride 25 %2 = bitcast i8 addrspace(1)* %add.ptr to i32 addrspace(1)* 26 %3 = load i32, i32 addrspace(1)* %2, align 4 27 %add.ptr1 = getelementptr inbounds i8, i8 addrspace(1)* %main.addr.011, i32 %add.ptr.sum 28 %4 = bitcast i8 addrspace(1)* %add.ptr1 to i32 addrspace(1)* 29 %5 = load i32, i32 addrspace(1)* %4, align 4 [all …]
|
D | fmuladd.ll | 11 define void @fmuladd_f32(float addrspace(1)* %out, float addrspace(1)* %in1, 12 float addrspace(1)* %in2, float addrspace(1)* %in3) { 13 %r0 = load float, float addrspace(1)* %in1 14 %r1 = load float, float addrspace(1)* %in2 15 %r2 = load float, float addrspace(1)* %in3 17 store float %r3, float addrspace(1)* %out 24 define void @fmuladd_f64(double addrspace(1)* %out, double addrspace(1)* %in1, 25 double addrspace(1)* %in2, double addrspace(1)* %in3) { 26 %r0 = load double, double addrspace(1)* %in1 27 %r1 = load double, double addrspace(1)* %in2 [all …]
|
D | shl_add_ptr.ll | 12 @lds0 = addrspace(3) global [512 x float] undef, align 4 13 @lds1 = addrspace(3) global [512 x float] undef, align 4 22 define void @load_shl_base_lds_0(float addrspace(1)* %out, i32 addrspace(1)* %add_use) #0 { 25 …%arrayidx0 = getelementptr inbounds [512 x float], [512 x float] addrspace(3)* @lds0, i32 0, i32 %… 26 %val0 = load float, float addrspace(3)* %arrayidx0, align 4 27 store i32 %idx.0, i32 addrspace(1)* %add_use, align 4 28 store float %val0, float addrspace(1)* %out 42 define void @load_shl_base_lds_1(float addrspace(1)* %out, i32 addrspace(1)* %add_use) #0 { 45 …%arrayidx0 = getelementptr inbounds [512 x float], [512 x float] addrspace(3)* @lds0, i32 0, i32 %… 46 %val0 = load float, float addrspace(3)* %arrayidx0, align 4 [all …]
|
D | load.ll | 15 define void @load_i8(i32 addrspace(1)* %out, i8 addrspace(1)* %in) { 16 %1 = load i8, i8 addrspace(1)* %in 18 store i32 %2, i32 addrspace(1)* %out 29 define void @load_i8_sext(i32 addrspace(1)* %out, i8 addrspace(1)* %in) { 31 %0 = load i8, i8 addrspace(1)* %in 33 store i32 %1, i32 addrspace(1)* %out 42 define void @load_v2i8(<2 x i32> addrspace(1)* %out, <2 x i8> addrspace(1)* %in) { 44 %0 = load <2 x i8>, <2 x i8> addrspace(1)* %in 46 store <2 x i32> %1, <2 x i32> addrspace(1)* %out 63 define void @load_v2i8_sext(<2 x i32> addrspace(1)* %out, <2 x i8> addrspace(1)* %in) { [all …]
|
D | min.ll | 7 define void @v_test_imin_sle_i32(i32 addrspace(1)* %out, i32 addrspace(1)* %aptr, i32 addrspace(1)*… 9 %gep0 = getelementptr i32, i32 addrspace(1)* %aptr, i32 %tid 10 %gep1 = getelementptr i32, i32 addrspace(1)* %bptr, i32 %tid 11 %outgep = getelementptr i32, i32 addrspace(1)* %out, i32 %tid 12 %a = load i32, i32 addrspace(1)* %gep0, align 4 13 %b = load i32, i32 addrspace(1)* %gep1, align 4 16 store i32 %val, i32 addrspace(1)* %outgep, align 4 22 define void @s_test_imin_sle_i32(i32 addrspace(1)* %out, i32 %a, i32 %b) nounwind { 25 store i32 %val, i32 addrspace(1)* %out, align 4 31 define void @v_test_imin_slt_i32(i32 addrspace(1)* %out, i32 addrspace(1)* %aptr, i32 addrspace(1)*… [all …]
|
D | fcmp64.ll | 6 define void @flt_f64(i32 addrspace(1)* %out, double addrspace(1)* %in1, 7 double addrspace(1)* %in2) { 8 %r0 = load double, double addrspace(1)* %in1 9 %r1 = load double, double addrspace(1)* %in2 12 store i32 %r3, i32 addrspace(1)* %out 18 define void @fle_f64(i32 addrspace(1)* %out, double addrspace(1)* %in1, 19 double addrspace(1)* %in2) { 20 %r0 = load double, double addrspace(1)* %in1 21 %r1 = load double, double addrspace(1)* %in2 24 store i32 %r3, i32 addrspace(1)* %out [all …]
|
/external/llvm/test/CodeGen/XCore/ |
D | resources.ll | 3 declare i8 addrspace(1)* @llvm.xcore.getr.p1i8(i32 %type) 4 declare void @llvm.xcore.freer.p1i8(i8 addrspace(1)* %r) 5 declare i32 @llvm.xcore.in.p1i8(i8 addrspace(1)* %r) 6 declare i32 @llvm.xcore.int.p1i8(i8 addrspace(1)* %r) 7 declare i32 @llvm.xcore.inct.p1i8(i8 addrspace(1)* %r) 8 declare void @llvm.xcore.out.p1i8(i8 addrspace(1)* %r, i32 %value) 9 declare void @llvm.xcore.outt.p1i8(i8 addrspace(1)* %r, i32 %value) 10 declare void @llvm.xcore.outct.p1i8(i8 addrspace(1)* %r, i32 %value) 11 declare void @llvm.xcore.chkct.p1i8(i8 addrspace(1)* %r, i32 %value) 12 declare i32 @llvm.xcore.testct.p1i8(i8 addrspace(1)* %r) [all …]
|