Home
last modified time | relevance | path

Searched refs:i128 (Results 1 – 25 of 279) sorted by relevance

12345678910>>...12

/external/llvm/test/CodeGen/SystemZ/
Dint-sub-05.ll6 declare i128 *@foo()
9 define void @f1(i128 *%ptr, i64 %high, i64 %low) {
14 %a = load i128 , i128 *%ptr
15 %highx = zext i64 %high to i128
16 %lowx = zext i64 %low to i128
17 %bhigh = shl i128 %highx, 64
18 %b = or i128 %bhigh, %lowx
19 %sub = sub i128 %a, %b
20 store i128 %sub, i128 *%ptr
30 %bptr = inttoptr i64 %addr to i128 *
[all …]
Dint-add-08.ll6 declare i128 *@foo()
9 define void @f1(i128 *%ptr) {
14 %value = load i128 , i128 *%ptr
15 %add = add i128 %value, %value
16 store i128 %add, i128 *%ptr
22 define void @f2(i128 *%aptr, i64 %addr) {
27 %bptr = inttoptr i64 %addr to i128 *
28 %a = load volatile i128 , i128 *%aptr
29 %b = load i128 , i128 *%bptr
30 %add = add i128 %a, %b
[all …]
Dint-add-10.ll7 define void @f1(i128 *%aptr, i32 %b) {
12 %a = load i128 , i128 *%aptr
13 %xor = xor i128 %a, 127
14 %bext = zext i32 %b to i128
15 %add = add i128 %xor, %bext
16 store i128 %add, i128 *%aptr
21 define void @f2(i128 *%aptr, i64 %b) {
26 %a = load i128 , i128 *%aptr
27 %xor = xor i128 %a, 127
29 %bext = zext i32 %trunc to i128
[all …]
Dint-sub-06.ll7 define void @f1(i128 *%aptr, i32 %b) {
12 %a = load i128 , i128 *%aptr
13 %xor = xor i128 %a, 127
14 %bext = zext i32 %b to i128
15 %sub = sub i128 %xor, %bext
16 store i128 %sub, i128 *%aptr
21 define void @f2(i128 *%aptr, i64 %b) {
26 %a = load i128 , i128 *%aptr
27 %xor = xor i128 %a, 127
29 %bext = zext i32 %trunc to i128
[all …]
Dint-add-09.ll7 define void @f1(i128 *%aptr) {
12 %a = load i128 , i128 *%aptr
13 %xor = xor i128 %a, 128
14 %add = add i128 %xor, 1
15 store i128 %add, i128 *%aptr
20 define void @f2(i128 *%aptr) {
25 %a = load i128 , i128 *%aptr
26 %xor = xor i128 %a, 128
27 %add = add i128 %xor, 4294967295
28 store i128 %add, i128 *%aptr
[all …]
Dint-mul-08.ll1 ; Test high-part i64->i128 multiplications.
13 %ax = zext i64 %a to i128
14 %bx = zext i64 %b to i128
15 %mulx = mul i128 %ax, %bx
16 %highx = lshr i128 %mulx, 64
17 %high = trunc i128 %highx to i64
33 %ax = sext i64 %a to i128
34 %bx = sext i64 %b to i128
35 %mulx = mul i128 %ax, %bx
36 %highx = lshr i128 %mulx, 64
[all …]
Dint-add-16.ll13 %x = bitcast <2 x i64> %x2 to i128
15 %y = bitcast <2 x i64> %y2 to i128
16 %add = add i128 %x, %y
17 %addv = bitcast i128 %add to <2 x i64>
25 define void @f2(i64 %a, i64 %b, i128 *%ptr) {
32 %x = bitcast <2 x i64> %x2 to i128
33 %add = add i128 %x, 1
34 store i128 %add, i128 *%ptr
39 define void @f3(i64 %a, i64 %b, i128 *%ptr) {
46 %x = bitcast <2 x i64> %x2 to i128
[all …]
/external/llvm/test/CodeGen/Generic/
Di128-addsub.ll5 %tmp1 = zext i64 %AL to i128 ; <i128> [#uses=1]
6 %tmp23 = zext i64 %AH to i128 ; <i128> [#uses=1]
7 %tmp4 = shl i128 %tmp23, 64 ; <i128> [#uses=1]
8 %tmp5 = or i128 %tmp4, %tmp1 ; <i128> [#uses=1]
9 %tmp67 = zext i64 %BL to i128 ; <i128> [#uses=1]
10 %tmp89 = zext i64 %BH to i128 ; <i128> [#uses=1]
11 %tmp11 = shl i128 %tmp89, 64 ; <i128> [#uses=1]
12 %tmp12 = or i128 %tmp11, %tmp67 ; <i128> [#uses=1]
13 %tmp15 = add i128 %tmp12, %tmp5 ; <i128> [#uses=2]
14 %tmp1617 = trunc i128 %tmp15 to i64 ; <i64> [#uses=1]
[all …]
/external/llvm/test/CodeGen/X86/
Dcmpxchg-i128-i1.ll3 define i1 @try_cmpxchg(i128* %addr, i128 %desired, i128 %new) {
9 %pair = cmpxchg i128* %addr, i128 %desired, i128 %new seq_cst seq_cst
10 %success = extractvalue { i128, i1 } %pair, 1
14 define void @cmpxchg_flow(i128* %addr, i128 %desired, i128 %new) {
20 %pair = cmpxchg i128* %addr, i128 %desired, i128 %new seq_cst seq_cst
21 %success = extractvalue { i128, i1 } %pair, 1
34 define i1 @cmpxchg_arithcmp(i128* %addr, i128 %desired, i128 %new) {
39 %pair = cmpxchg i128* %addr, i128 %desired, i128 %new seq_cst seq_cst
40 %oldval = extractvalue { i128, i1 } %pair, 0
41 %success = icmp sge i128 %oldval, %desired
[all …]
Dmuloti.ll3 %1 = type { i128, i1 }
8 %tmp16 = zext i64 %a.coerce0 to i128
9 %tmp11 = zext i64 %a.coerce1 to i128
10 %tmp12 = shl nuw i128 %tmp11, 64
11 %ins14 = or i128 %tmp12, %tmp16
12 %tmp6 = zext i64 %b.coerce0 to i128
13 %tmp3 = zext i64 %b.coerce1 to i128
14 %tmp4 = shl nuw i128 %tmp3, 64
15 %ins = or i128 %tmp4, %tmp6
16 %0 = tail call %1 @llvm.smul.with.overflow.i128(i128 %ins14, i128 %ins)
[all …]
Datomic128.ll3 @var = global i128 0
5 define i128 @val_compare_and_swap(i128* %p, i128 %oldval, i128 %newval) {
13 %pair = cmpxchg i128* %p, i128 %oldval, i128 %newval acquire acquire
14 %val = extractvalue { i128, i1 } %pair, 0
15 ret i128 %val
18 define void @fetch_and_nand(i128* %p, i128 %bits) {
38 %val = atomicrmw nand i128* %p, i128 %bits release
39 store i128 %val, i128* @var, align 16
43 define void @fetch_and_or(i128* %p, i128 %bits) {
62 %val = atomicrmw or i128* %p, i128 %bits seq_cst
[all …]
Dnocx16.ll2 define void @test(i128* %a) nounwind {
5 %0 = cmpxchg i128* %a, i128 1, i128 1 seq_cst seq_cst
7 %1 = atomicrmw xchg i128* %a, i128 1 seq_cst
9 %2 = atomicrmw add i128* %a, i128 1 seq_cst
11 %3 = atomicrmw sub i128* %a, i128 1 seq_cst
13 %4 = atomicrmw and i128* %a, i128 1 seq_cst
15 %5 = atomicrmw nand i128* %a, i128 1 seq_cst
17 %6 = atomicrmw or i128* %a, i128 1 seq_cst
19 %7 = atomicrmw xor i128* %a, i128 1 seq_cst
D2009-03-09-APIntCrash.ll10 %srcval18 = load i128, i128* null, align 8 ; <i128> [#uses=1]
11 %tmp15 = lshr i128 %srcval18, 64 ; <i128> [#uses=1]
12 %tmp9 = mul i128 %tmp15, 18446744073709551616000 ; <i128> [#uses=1]
16 %retval.0 = phi i128 [ %tmp9, %if.then ], [ undef, %entry ] ; <i128> [#uses=0]
20 define i128 @test(i128 %arg) nounwind {
21 %A = shl i128 1, 92
22 %B = sub i128 0, %A
23 %C = mul i128 %arg, %B
24 ret i128 %C ;; should codegen to neg(shift)
Di128-sdiv.ll5 define i128 @test1(i128 %x) {
8 %tmp = sdiv i128 %x, 73786976294838206464
9 ret i128 %tmp
12 define i128 @test2(i128 %x) {
15 %tmp = sdiv i128 %x, -73786976294838206464
16 ret i128 %tmp
19 define i128 @test3(i128 %x) {
22 %tmp = sdiv i128 %x, -73786976294838206467
23 ret i128 %tmp
/external/llvm/test/CodeGen/AArch64/
Darm64-atomic-128.ll3 @var = global i128 0
5 define i128 @val_compare_and_swap(i128* %p, i128 %oldval, i128 %newval) {
16 %pair = cmpxchg i128* %p, i128 %oldval, i128 %newval acquire acquire
17 %val = extractvalue { i128, i1 } %pair, 0
18 ret i128 %val
21 define void @fetch_and_nand(i128* %p, i128 %bits) {
33 %val = atomicrmw nand i128* %p, i128 %bits release
34 store i128 %val, i128* @var, align 16
38 define void @fetch_and_or(i128* %p, i128 %bits) {
48 %val = atomicrmw or i128* %p, i128 %bits seq_cst
[all …]
Dadc.ll4 define i128 @test_simple(i128 %a, i128 %b, i128 %c) {
7 %valadd = add i128 %a, %b
13 %valsub = sub i128 %valadd, %c
19 ret i128 %valsub
23 define i128 @test_imm(i128 %a) {
26 %val = add i128 %a, 12
32 ret i128 %val
36 define i128 @test_shifted(i128 %a, i128 %b) {
39 %rhs = shl i128 %b, 45
41 %val = add i128 %a, %rhs
[all …]
/external/llvm/test/CodeGen/PowerPC/
Dctrloop-sh.ll2 target datalayout = "E-m:e-p:32:32-i128:64-n32"
6 define void @foo1(i128* %a, i128* readonly %b, i128* readonly %c) #0 {
12 %0 = load i128, i128* %b, align 16
13 %1 = load i128, i128* %c, align 16
14 %shl = shl i128 %0, %1
15 store i128 %shl, i128* %a, align 16
28 define void @foo2(i128* %a, i128* readonly %b, i128* readonly %c) #0 {
34 %0 = load i128, i128* %b, align 16
35 %1 = load i128, i128* %c, align 16
36 %shl = ashr i128 %0, %1
[all …]
Dreturn-val-i128.ll3 define i128 @__fixsfdi(float %a) {
6 %retval = alloca i128, align 16 ; <i128*> [#uses=2]
7 %tmp = alloca i128, align 16 ; <i128*> [#uses=3]
18 %tmp6 = call i128 @__fixunssfDI( float %tmp5 ) nounwind ; <i128> [#uses=1]
19 %tmp7 = sub i128 0, %tmp6 ; <i128> [#uses=1]
20 store i128 %tmp7, i128* %tmp, align 16
24 %tmp10 = call i128 @__fixunssfDI( float %tmp9 ) nounwind ; <i128> [#uses=1]
25 store i128 %tmp10, i128* %tmp, align 16
28 %tmp12 = load i128, i128* %tmp, align 16 ; <i128> [#uses=1]
29 store i128 %tmp12, i128* %retval, align 16
[all …]
Dshift128.ll3 define i128 @foo_lshr(i128 %x, i128 %y) {
4 %r = lshr i128 %x, %y
5 ret i128 %r
7 define i128 @foo_ashr(i128 %x, i128 %y) {
8 %r = ashr i128 %x, %y
9 ret i128 %r
11 define i128 @foo_shl(i128 %x, i128 %y) {
12 %r = shl i128 %x, %y
13 ret i128 %r
/external/llvm/test/CodeGen/NVPTX/
Dshift-parts.ll4 define void @shift_parts_left_128(i128* %val, i128* %amtptr) {
15 %amt = load i128, i128* %amtptr
16 %a = load i128, i128* %val
17 %val0 = shl i128 %a, %amt
18 store i128 %val0, i128* %val
23 define void @shift_parts_right_128(i128* %val, i128* %amtptr) {
33 %amt = load i128, i128* %amtptr
34 %a = load i128, i128* %val
35 %val0 = ashr i128 %a, %amt
36 store i128 %val0, i128* %val
/external/llvm/test/Instrumentation/ThreadSanitizer/
Dunaligned.ll47 define i128 @test_unaligned_read16(i128* %a) sanitize_thread {
49 %tmp1 = load i128, i128* %a, align 1
50 ret i128 %tmp1
53 ; CHECK-LABEL: define i128 @test_unaligned_read16(i128* %a)
55 ; CHECK-NEXT: %1 = bitcast i128* %a to i8*
57 ; CHECK-NEXT: %tmp1 = load i128, i128* %a, align 1
59 ; CHECK: ret i128
61 define i128 @test_aligned_read16(i128* %a) sanitize_thread {
63 %tmp1 = load i128, i128* %a, align 8
64 ret i128 %tmp1
[all …]
Datomic.ll1541 define i128 @atomic128_load_unordered(i128* %a) nounwind uwtable {
1543 %0 = load atomic i128, i128* %a unordered, align 16
1544 ret i128 %0
1547 ; CHECK: call i128 @__tsan_atomic128_load(i128* %a, i32 0)
1549 define i128 @atomic128_load_monotonic(i128* %a) nounwind uwtable {
1551 %0 = load atomic i128, i128* %a monotonic, align 16
1552 ret i128 %0
1555 ; CHECK: call i128 @__tsan_atomic128_load(i128* %a, i32 0)
1557 define i128 @atomic128_load_acquire(i128* %a) nounwind uwtable {
1559 %0 = load atomic i128, i128* %a acquire, align 16
[all …]
/external/llvm/test/Transforms/InstCombine/
Dsdiv-2.ll7 %iftmp.13.0 = select i1 %0, i128 0, i128 200000000 ; <i128> [#uses=2]
8 %1 = sdiv i128 %iftmp.13.0, 10 ; <i128> [#uses=1]
12 %v.0 = phi i128 [ 0, %entry ], [ %6, %bb8 ] ; <i128> [#uses=2]
13 %2 = icmp sgt i128 %v.0, %1 ; <i1> [#uses=1]
17 %3 = mul i128 %v.0, 10 ; <i128> [#uses=2]
18 %4 = sub i128 %iftmp.13.0, 0 ; <i128> [#uses=1]
19 %5 = icmp slt i128 %4, %3 ; <i1> [#uses=1]
23 %6 = add i128 0, %3 ; <i128> [#uses=1]
/external/llvm/test/Transforms/LoopStrengthReduce/
Dpr2537.ll9 %y.0 = phi i128 [ 0, %entry ], [ %add, %dobody ]
10 %x.0 = phi i128 [ 0, %entry ], [ %add2, %dobody ]
11 %add = add i128 %y.0, shl (i128 1, i128 64)
12 %add2 = add i128 %x.0, shl (i128 1, i128 48)
13 call void @b( i128 %add )
14 %cmp = icmp ult i128 %add2, shl (i128 1, i128 64)
21 declare void @b(i128 %add)
/external/llvm/test/Instrumentation/BoundsChecking/
Dsimple.ll78 %1 = alloca i128
80 %2 = load i128, i128* %1, align 4
86 %1 = alloca i128, i64 %x
89 %2 = load i128, i128* %1, align 4
95 %1 = alloca i128
96 %2 = alloca i128
97 %3 = select i1 undef, i128* %1, i128* %2
99 %4 = load i128, i128* %3, align 4
104 define void @f9(i128* %arg) nounwind {
105 %1 = alloca i128
[all …]

12345678910>>...12