~louis/ubuntu/trusty/clamav/lp799623_fix_logrotate

« back to all changes in this revision

Viewing changes to libclamav/c++/llvm/test/CodeGen/X86/2008-02-08-LoadFoldingBug.ll

  • Committer: Bazaar Package Importer
  • Author(s): Scott Kitterman
  • Date: 2010-03-12 11:30:04 UTC
  • mfrom: (0.41.1 upstream)
  • Revision ID: james.westby@ubuntu.com-20100312113004-b0fop4bkycszdd0z
Tags: 0.96~rc1+dfsg-0ubuntu1
* New upstream RC - FFE (LP: #537636):
  - Add OfficialDatabaseOnly option to clamav-base.postinst.in
  - Add LocalSocketGroup option to clamav-base.postinst.in
  - Add LocalSocketMode option to clamav-base.postinst.in
  - Add CrossFilesystems option to clamav-base.postinst.in
  - Add ClamukoScannerCount option to clamav-base.postinst.in
  - Add BytecodeSecurity opiton to clamav-base.postinst.in
  - Add DetectionStatsHostID option to clamav-freshclam.postinst.in
  - Add Bytecode option to clamav-freshclam.postinst.in
  - Add MilterSocketGroup option to clamav-milter.postinst.in
  - Add MilterSocketMode option to clamav-milter.postinst.in
  - Add ReportHostname option to clamav-milter.postinst.in
  - Bump libclamav SO version to 6.1.0 in libclamav6.install
  - Drop clamdmon from clamav.examples (no longer shipped by upstream)
  - Drop libclamav.a from libclamav-dev.install (not built by upstream)
  - Update SO version for lintian override for libclamav6
  - Add new Bytecode Testing Tool, usr/bin/clambc, to clamav.install
  - Add build-depends on python and python-setuptools for new test suite
  - Update debian/copyright for the embedded copy of llvm (using the system
    llvm is not currently feasible)

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
; RUN: llc < %s -march=x86 -mattr=+sse2 | grep andpd | not grep esp
 
2
 
 
3
declare double @llvm.sqrt.f64(double) nounwind readnone 
 
4
 
 
5
declare fastcc void @ApplyGivens(double**, double, double, i32, i32, i32, i32) nounwind 
 
6
 
 
7
declare double @fabs(double)
 
8
 
 
9
define void @main_bb114_2E_outer_2E_i_bb3_2E_i27(double** %tmp12.sub.i.i, [51 x double*]* %tmp12.i.i.i, i32 %i.0.reg2mem.0.ph.i, i32 %tmp11688.i, i32 %tmp19.i, i32 %tmp24.i, [51 x double*]* %tmp12.i.i) {
 
10
newFuncRoot:
 
11
        br label %bb3.i27
 
12
 
 
13
bb111.i77.bb121.i_crit_edge.exitStub:           ; preds = %bb111.i77
 
14
        ret void
 
15
 
 
16
bb3.i27:                ; preds = %bb111.i77.bb3.i27_crit_edge, %newFuncRoot
 
17
        %indvar94.i = phi i32 [ 0, %newFuncRoot ], [ %tmp113.i76, %bb111.i77.bb3.i27_crit_edge ]                ; <i32> [#uses=6]
 
18
        %tmp6.i20 = getelementptr [51 x double*]* %tmp12.i.i, i32 0, i32 %indvar94.i            ; <double**> [#uses=1]
 
19
        %tmp7.i21 = load double** %tmp6.i20, align 4            ; <double*> [#uses=2]
 
20
        %tmp10.i = add i32 %indvar94.i, %i.0.reg2mem.0.ph.i             ; <i32> [#uses=5]
 
21
        %tmp11.i22 = getelementptr double* %tmp7.i21, i32 %tmp10.i              ; <double*> [#uses=1]
 
22
        %tmp12.i23 = load double* %tmp11.i22, align 8           ; <double> [#uses=4]
 
23
        %tmp20.i24 = add i32 %tmp19.i, %indvar94.i              ; <i32> [#uses=3]
 
24
        %tmp21.i = getelementptr double* %tmp7.i21, i32 %tmp20.i24              ; <double*> [#uses=1]
 
25
        %tmp22.i25 = load double* %tmp21.i, align 8             ; <double> [#uses=3]
 
26
        %tmp1.i.i26 = fcmp oeq double %tmp12.i23, 0.000000e+00          ; <i1> [#uses=1]
 
27
        br i1 %tmp1.i.i26, label %bb3.i27.Givens.exit.i49_crit_edge, label %bb5.i.i31
 
28
 
 
29
bb5.i.i31:              ; preds = %bb3.i27
 
30
        %tmp7.i.i28 = call double @fabs( double %tmp12.i23 ) nounwind           ; <double> [#uses=1]
 
31
        %tmp9.i.i29 = call double @fabs( double %tmp22.i25 ) nounwind           ; <double> [#uses=1]
 
32
        %tmp10.i.i30 = fcmp ogt double %tmp7.i.i28, %tmp9.i.i29         ; <i1> [#uses=1]
 
33
        br i1 %tmp10.i.i30, label %bb13.i.i37, label %bb30.i.i43
 
34
 
 
35
bb13.i.i37:             ; preds = %bb5.i.i31
 
36
        %tmp15.i.i32 = fsub double -0.000000e+00, %tmp22.i25            ; <double> [#uses=1]
 
37
        %tmp17.i.i33 = fdiv double %tmp15.i.i32, %tmp12.i23             ; <double> [#uses=3]
 
38
        %tmp20.i4.i = fmul double %tmp17.i.i33, %tmp17.i.i33            ; <double> [#uses=1]
 
39
        %tmp21.i.i34 = fadd double %tmp20.i4.i, 1.000000e+00            ; <double> [#uses=1]
 
40
        %tmp22.i.i35 = call double @llvm.sqrt.f64( double %tmp21.i.i34 ) nounwind               ; <double> [#uses=1]
 
41
        %tmp23.i5.i = fdiv double 1.000000e+00, %tmp22.i.i35            ; <double> [#uses=2]
 
42
        %tmp28.i.i36 = fmul double %tmp23.i5.i, %tmp17.i.i33            ; <double> [#uses=1]
 
43
        br label %Givens.exit.i49
 
44
 
 
45
bb30.i.i43:             ; preds = %bb5.i.i31
 
46
        %tmp32.i.i38 = fsub double -0.000000e+00, %tmp12.i23            ; <double> [#uses=1]
 
47
        %tmp34.i.i39 = fdiv double %tmp32.i.i38, %tmp22.i25             ; <double> [#uses=3]
 
48
        %tmp37.i6.i = fmul double %tmp34.i.i39, %tmp34.i.i39            ; <double> [#uses=1]
 
49
        %tmp38.i.i40 = fadd double %tmp37.i6.i, 1.000000e+00            ; <double> [#uses=1]
 
50
        %tmp39.i7.i = call double @llvm.sqrt.f64( double %tmp38.i.i40 ) nounwind                ; <double> [#uses=1]
 
51
        %tmp40.i.i41 = fdiv double 1.000000e+00, %tmp39.i7.i            ; <double> [#uses=2]
 
52
        %tmp45.i.i42 = fmul double %tmp40.i.i41, %tmp34.i.i39           ; <double> [#uses=1]
 
53
        br label %Givens.exit.i49
 
54
 
 
55
Givens.exit.i49:                ; preds = %bb3.i27.Givens.exit.i49_crit_edge, %bb30.i.i43, %bb13.i.i37
 
56
        %s.0.i44 = phi double [ %tmp45.i.i42, %bb30.i.i43 ], [ %tmp23.i5.i, %bb13.i.i37 ], [ 0.000000e+00, %bb3.i27.Givens.exit.i49_crit_edge ]         ; <double> [#uses=2]
 
57
        %c.0.i45 = phi double [ %tmp40.i.i41, %bb30.i.i43 ], [ %tmp28.i.i36, %bb13.i.i37 ], [ 1.000000e+00, %bb3.i27.Givens.exit.i49_crit_edge ]                ; <double> [#uses=2]
 
58
        %tmp26.i46 = add i32 %tmp24.i, %indvar94.i              ; <i32> [#uses=2]
 
59
        %tmp27.i47 = icmp slt i32 %tmp26.i46, 51                ; <i1> [#uses=1]
 
60
        %min.i48 = select i1 %tmp27.i47, i32 %tmp26.i46, i32 50         ; <i32> [#uses=1]
 
61
        call fastcc void @ApplyGivens( double** %tmp12.sub.i.i, double %s.0.i44, double %c.0.i45, i32 %tmp20.i24, i32 %tmp10.i, i32 %indvar94.i, i32 %min.i48 ) nounwind 
 
62
        br label %codeRepl
 
63
 
 
64
codeRepl:               ; preds = %Givens.exit.i49
 
65
        call void @main_bb114_2E_outer_2E_i_bb3_2E_i27_bb_2E_i48_2E_i( i32 %tmp10.i, i32 %tmp20.i24, double %s.0.i44, double %c.0.i45, [51 x double*]* %tmp12.i.i.i )
 
66
        br label %ApplyRGivens.exit49.i
 
67
 
 
68
ApplyRGivens.exit49.i:          ; preds = %codeRepl
 
69
        %tmp10986.i = icmp sgt i32 %tmp11688.i, %tmp10.i                ; <i1> [#uses=1]
 
70
        br i1 %tmp10986.i, label %ApplyRGivens.exit49.i.bb52.i57_crit_edge, label %ApplyRGivens.exit49.i.bb111.i77_crit_edge
 
71
 
 
72
codeRepl1:              ; preds = %ApplyRGivens.exit49.i.bb52.i57_crit_edge
 
73
        call void @main_bb114_2E_outer_2E_i_bb3_2E_i27_bb52_2E_i57( i32 %tmp10.i, double** %tmp12.sub.i.i, [51 x double*]* %tmp12.i.i.i, i32 %i.0.reg2mem.0.ph.i, i32 %tmp11688.i, i32 %tmp19.i, i32 %tmp24.i, [51 x double*]* %tmp12.i.i )
 
74
        br label %bb105.i.bb111.i77_crit_edge
 
75
 
 
76
bb111.i77:              ; preds = %bb105.i.bb111.i77_crit_edge, %ApplyRGivens.exit49.i.bb111.i77_crit_edge
 
77
        %tmp113.i76 = add i32 %indvar94.i, 1            ; <i32> [#uses=2]
 
78
        %tmp118.i = icmp sgt i32 %tmp11688.i, %tmp113.i76               ; <i1> [#uses=1]
 
79
        br i1 %tmp118.i, label %bb111.i77.bb3.i27_crit_edge, label %bb111.i77.bb121.i_crit_edge.exitStub
 
80
 
 
81
bb3.i27.Givens.exit.i49_crit_edge:              ; preds = %bb3.i27
 
82
        br label %Givens.exit.i49
 
83
 
 
84
ApplyRGivens.exit49.i.bb52.i57_crit_edge:               ; preds = %ApplyRGivens.exit49.i
 
85
        br label %codeRepl1
 
86
 
 
87
ApplyRGivens.exit49.i.bb111.i77_crit_edge:              ; preds = %ApplyRGivens.exit49.i
 
88
        br label %bb111.i77
 
89
 
 
90
bb105.i.bb111.i77_crit_edge:            ; preds = %codeRepl1
 
91
        br label %bb111.i77
 
92
 
 
93
bb111.i77.bb3.i27_crit_edge:            ; preds = %bb111.i77
 
94
        br label %bb3.i27
 
95
}
 
96
 
 
97
declare void @main_bb114_2E_outer_2E_i_bb3_2E_i27_bb_2E_i48_2E_i(i32, i32, double, double, [51 x double*]*)
 
98
 
 
99
declare void @main_bb114_2E_outer_2E_i_bb3_2E_i27_bb52_2E_i57(i32, double**, [51 x double*]*, i32, i32, i32, i32, [51 x double*]*)