blob: 1561bebaad16ac06508e74ac2acf69b07a8f14d9 [file] [log] [blame]
Vikram S. Advebd6161d2003-05-28 13:54:41 +00001;; Date: May 28, 2003.
2;; From: test/Programs/MultiSource/McCat-05-eks/QRfact.c
3;; Function: Matrix QRiterate(Matrix A, Matrix U)
4;;
5;; Error: llc produces an invalid register <NULL VALUE> for the
6;; phi argument %tmp.213 produced by fcmpd:
7;;
8;; LLC Output:
9;;
10;; !****** Outputing Function: QRiterate_1 ******
11;;
12;; .section ".text"
13;; .align 4
14;; .global QRiterate_1
15;; .type QRiterate_1, 2
16;; QRiterate_1:
17;; .L_QRiterate_1_LL_0:
18;; save %o6, -192, %o6
19;; brgz %i0, .L_QRiterate_1_LL_1
20;; add %g0, %g0, %o0
21;; ba .L_QRiterate_1_LL_2
22;; nop
23;;
24;; .L_QRiterate_1_LL_1:
25;; sethi %lm(LLVMGlobal__2), %o1
26;; sethi %hh(LLVMGlobal__2), %o0
27;; or %o0, %hm(LLVMGlobal__2), %o0
28;; sllx %o0, 32, %o0
29;; or %o1, %o0, %o1
30;; or %o1, %lo(LLVMGlobal__2), %o1
31;; ldd [%o1+0], %f32
32;; fcmpd %fcc0, %f2, %f32
33;; ba .L_QRiterate_1_LL_2
34;; add <NULL VALUE>, %g0, %o0
35;;
36;; .L_QRiterate_1_LL_2:
37;; brnz %o0, .L_QRiterate_1_LL_1
38;; nop
39;; ba .L_QRiterate_1_LL_3
40;; nop
41;;
42;; .L_QRiterate_1_LL_3:
43;; jmpl %i7+8, %g0
44;; restore %g0, 0, %g0
45;;
46;; .EndOf_QRiterate_1:
47;; .size QRiterate_1, .EndOf_QRiterate_1-QRiterate_1
48;;
49
50
51target endian = big
52target pointersize = 64
53
54implementation ; Functions:
55
56internal void %QRiterate(int %p.1, double %tmp.212) {
57entry: ; No predecessors!
58 %tmp.184 = setgt int %p.1, 0 ; <bool> [#uses=1]
59 br bool %tmp.184, label %shortcirc_next.1, label %shortcirc_done.1
60
61shortcirc_next.1: ; preds = %entry
62 %tmp.213 = setne double %tmp.212, 0.000000e+00
63 br label %shortcirc_done.1
64
65shortcirc_done.1: ; preds = %entry, %shortcirc_next.1
66 %val.1 = phi bool [ false, %entry ], [ %tmp.213, %shortcirc_next.1 ]
67 br bool %val.1, label %shortcirc_next.1, label %exit.1
68
69exit.1:
70 ret void
71}