~louis/ubuntu/trusty/clamav/lp799623_fix_logrotate

« back to all changes in this revision

Viewing changes to libclamav/c++/llvm/test/CodeGen/PowerPC/rlwimi-commute.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=ppc32 | grep rlwimi
 
2
; RUN: llc < %s -march=ppc32 | not grep {or }
 
3
 
 
4
; Make sure there is no register-register copies here.
 
5
 
 
6
define void @test1(i32* %A, i32* %B, i32* %D, i32* %E) {
 
7
        %A.upgrd.1 = load i32* %A               ; <i32> [#uses=2]
 
8
        %B.upgrd.2 = load i32* %B               ; <i32> [#uses=1]
 
9
        %X = and i32 %A.upgrd.1, 15             ; <i32> [#uses=1]
 
10
        %Y = and i32 %B.upgrd.2, -16            ; <i32> [#uses=1]
 
11
        %Z = or i32 %X, %Y              ; <i32> [#uses=1]
 
12
        store i32 %Z, i32* %D
 
13
        store i32 %A.upgrd.1, i32* %E
 
14
        ret void
 
15
}
 
16
 
 
17
define void @test2(i32* %A, i32* %B, i32* %D, i32* %E) {
 
18
        %A.upgrd.3 = load i32* %A               ; <i32> [#uses=1]
 
19
        %B.upgrd.4 = load i32* %B               ; <i32> [#uses=2]
 
20
        %X = and i32 %A.upgrd.3, 15             ; <i32> [#uses=1]
 
21
        %Y = and i32 %B.upgrd.4, -16            ; <i32> [#uses=1]
 
22
        %Z = or i32 %X, %Y              ; <i32> [#uses=1]
 
23
        store i32 %Z, i32* %D
 
24
        store i32 %B.upgrd.4, i32* %E
 
25
        ret void
 
26
}
 
27
 
 
28
define i32 @test3(i32 %a, i32 %b) {
 
29
        %tmp.1 = and i32 %a, 15         ; <i32> [#uses=1]
 
30
        %tmp.3 = and i32 %b, 240                ; <i32> [#uses=1]
 
31
        %tmp.4 = or i32 %tmp.3, %tmp.1          ; <i32> [#uses=1]
 
32
        ret i32 %tmp.4
 
33
}
 
34