~louis/ubuntu/trusty/clamav/lp799623_fix_logrotate

« back to all changes in this revision

Viewing changes to libclamav/c++/llvm/test/CodeGen/X86/twoaddr-pass-sink.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 -stats |& grep {Number of 3-address instructions sunk}
 
2
 
 
3
define void @t2(<2 x i64>* %vDct, <2 x i64>* %vYp, i8* %skiplist, <2 x i64> %a1) nounwind  {
 
4
entry:
 
5
        %tmp25 = bitcast <2 x i64> %a1 to <8 x i16>             ; <<8 x i16>> [#uses=1]
 
6
        br label %bb
 
7
bb:             ; preds = %bb, %entry
 
8
        %skiplist_addr.0.rec = phi i32 [ 0, %entry ], [ %indvar.next, %bb ]             ; <i32> [#uses=3]
 
9
        %vYp_addr.0.rec = shl i32 %skiplist_addr.0.rec, 3               ; <i32> [#uses=3]
 
10
        %vDct_addr.0 = getelementptr <2 x i64>* %vDct, i32 %vYp_addr.0.rec              ; <<2 x i64>*> [#uses=1]
 
11
        %vYp_addr.0 = getelementptr <2 x i64>* %vYp, i32 %vYp_addr.0.rec                ; <<2 x i64>*> [#uses=1]
 
12
        %skiplist_addr.0 = getelementptr i8* %skiplist, i32 %skiplist_addr.0.rec                ; <i8*> [#uses=1]
 
13
        %vDct_addr.0.sum43 = or i32 %vYp_addr.0.rec, 1          ; <i32> [#uses=1]
 
14
        %tmp7 = getelementptr <2 x i64>* %vDct, i32 %vDct_addr.0.sum43          ; <<2 x i64>*> [#uses=1]
 
15
        %tmp8 = load <2 x i64>* %tmp7, align 16         ; <<2 x i64>> [#uses=1]
 
16
        %tmp11 = load <2 x i64>* %vDct_addr.0, align 16         ; <<2 x i64>> [#uses=1]
 
17
        %tmp13 = bitcast <2 x i64> %tmp8 to <8 x i16>           ; <<8 x i16>> [#uses=1]
 
18
        %tmp15 = bitcast <2 x i64> %tmp11 to <8 x i16>          ; <<8 x i16>> [#uses=1]
 
19
        %tmp16 = shufflevector <8 x i16> %tmp15, <8 x i16> %tmp13, <8 x i32> < i32 0, i32 8, i32 1, i32 9, i32 2, i32 10, i32 3, i32 11 >               ; <<8 x i16>> [#uses=1]
 
20
        %tmp26 = mul <8 x i16> %tmp25, %tmp16           ; <<8 x i16>> [#uses=1]
 
21
        %tmp27 = bitcast <8 x i16> %tmp26 to <2 x i64>          ; <<2 x i64>> [#uses=1]
 
22
        store <2 x i64> %tmp27, <2 x i64>* %vYp_addr.0, align 16
 
23
        %tmp37 = load i8* %skiplist_addr.0, align 1             ; <i8> [#uses=1]
 
24
        %tmp38 = icmp eq i8 %tmp37, 0           ; <i1> [#uses=1]
 
25
        %indvar.next = add i32 %skiplist_addr.0.rec, 1          ; <i32> [#uses=1]
 
26
        br i1 %tmp38, label %return, label %bb
 
27
return:         ; preds = %bb
 
28
        ret void
 
29
}