~pali/+junk/llvm-toolchain-3.7

« back to all changes in this revision

Viewing changes to test/CodeGen/X86/pr2849.ll

  • Committer: Package Import Robot
  • Author(s): Sylvestre Ledru
  • Date: 2015-07-15 17:51:08 UTC
  • Revision ID: package-import@ubuntu.com-20150715175108-l8mynwovkx4zx697
Tags: upstream-3.7~+rc2
ImportĀ upstreamĀ versionĀ 3.7~+rc2

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
; RUN: llc < %s
 
2
; PR2849
 
3
 
 
4
target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128"
 
5
target triple = "x86_64-unknown-linux-gnu"
 
6
        %struct.BaseBoundPtrs = type { i8*, i8* }
 
7
        %struct.HashEntry = type { %struct.BaseBoundPtrs }
 
8
        %struct.NODE = type { i8, i8, %struct.anon }
 
9
        %struct.anon = type { %struct.xlist }
 
10
        %struct.xlist = type { %struct.NODE*, %struct.NODE* }
 
11
        %struct.xvect = type { %struct.NODE** }
 
12
@hash_table_begin = external global %struct.HashEntry*
 
13
 
 
14
define void @obshow() {
 
15
entry:
 
16
        %tmp = load %struct.HashEntry*, %struct.HashEntry** @hash_table_begin, align 8
 
17
        br i1 false, label %xlygetvalue.exit, label %xlygetvalue.exit
 
18
 
 
19
xlygetvalue.exit:
 
20
        %storemerge.in.i = phi %struct.NODE** [ null, %entry ], [ null, %entry ]
 
21
        %storemerge.i = load %struct.NODE*, %struct.NODE** %storemerge.in.i
 
22
        %tmp1 = ptrtoint %struct.NODE** %storemerge.in.i to i64
 
23
        %tmp2 = lshr i64 %tmp1, 3
 
24
        %tmp3 = and i64 %tmp2, 2147483647
 
25
        %tmp4 = getelementptr %struct.HashEntry, %struct.HashEntry* %tmp, i64 %tmp3, i32 0, i32 1
 
26
        %tmp7 = load i8*, i8** %tmp4, align 8
 
27
        %tmp8 = getelementptr %struct.NODE, %struct.NODE* %storemerge.i, i64 0, i32 2
 
28
        %tmp9 = bitcast %struct.anon* %tmp8 to %struct.NODE***
 
29
        %tmp11 = load %struct.NODE**, %struct.NODE*** %tmp9, align 8
 
30
        %tmp12 = ptrtoint %struct.NODE** %tmp11 to i64
 
31
        %tmp13 = lshr i64 %tmp12, 3
 
32
        %tmp14 = and i64 %tmp13, 2147483647
 
33
        %tmp15 = getelementptr %struct.HashEntry, %struct.HashEntry* %tmp, i64 %tmp14, i32 0, i32 1
 
34
        call fastcc void @xlprint(i8** %tmp4, i8* %tmp7, i8** %tmp15)
 
35
        ret void
 
36
}
 
37
 
 
38
declare fastcc void @xlprint(i8**, i8*, i8**)