~louis/ubuntu/trusty/clamav/lp799623_fix_logrotate

« back to all changes in this revision

Viewing changes to libclamav/c++/llvm/test/CodeGen/PowerPC/indirectbr.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 -relocation-model=pic -march=ppc32 -mtriple=powerpc-apple-darwin | FileCheck %s -check-prefix=PIC
 
2
; RUN: llc < %s -relocation-model=static -march=ppc32 -mtriple=powerpc-apple-darwin | FileCheck %s -check-prefix=STATIC
 
3
 
 
4
@nextaddr = global i8* null                       ; <i8**> [#uses=2]
 
5
@C.0.2070 = private constant [5 x i8*] [i8* blockaddress(@foo, %L1), i8* blockaddress(@foo, %L2), i8* blockaddress(@foo, %L3), i8* blockaddress(@foo, %L4), i8* blockaddress(@foo, %L5)] ; <[5 x i8*]*> [#uses=1]
 
6
 
 
7
define internal i32 @foo(i32 %i) nounwind {
 
8
; PIC: foo:
 
9
; STATIC: foo:
 
10
entry:
 
11
  %0 = load i8** @nextaddr, align 4               ; <i8*> [#uses=2]
 
12
  %1 = icmp eq i8* %0, null                       ; <i1> [#uses=1]
 
13
  br i1 %1, label %bb3, label %bb2
 
14
 
 
15
bb2:                                              ; preds = %entry, %bb3
 
16
  %gotovar.4.0 = phi i8* [ %gotovar.4.0.pre, %bb3 ], [ %0, %entry ] ; <i8*> [#uses=1]
 
17
; PIC: mtctr
 
18
; PIC-NEXT: bctr
 
19
; STATIC: mtctr
 
20
; STATIC-NEXT: bctr
 
21
  indirectbr i8* %gotovar.4.0, [label %L5, label %L4, label %L3, label %L2, label %L1]
 
22
 
 
23
bb3:                                              ; preds = %entry
 
24
  %2 = getelementptr inbounds [5 x i8*]* @C.0.2070, i32 0, i32 %i ; <i8**> [#uses=1]
 
25
  %gotovar.4.0.pre = load i8** %2, align 4        ; <i8*> [#uses=1]
 
26
  br label %bb2
 
27
 
 
28
L5:                                               ; preds = %bb2
 
29
  br label %L4
 
30
 
 
31
L4:                                               ; preds = %L5, %bb2
 
32
  %res.0 = phi i32 [ 385, %L5 ], [ 35, %bb2 ]     ; <i32> [#uses=1]
 
33
  br label %L3
 
34
 
 
35
L3:                                               ; preds = %L4, %bb2
 
36
  %res.1 = phi i32 [ %res.0, %L4 ], [ 5, %bb2 ]   ; <i32> [#uses=1]
 
37
  br label %L2
 
38
 
 
39
L2:                                               ; preds = %L3, %bb2
 
40
  %res.2 = phi i32 [ %res.1, %L3 ], [ 1, %bb2 ]   ; <i32> [#uses=1]
 
41
  %phitmp = mul i32 %res.2, 6                     ; <i32> [#uses=1]
 
42
  br label %L1
 
43
 
 
44
L1:                                               ; preds = %L2, %bb2
 
45
  %res.3 = phi i32 [ %phitmp, %L2 ], [ 2, %bb2 ]  ; <i32> [#uses=1]
 
46
; PIC: addis r5, r4, ha16(L_BA4__foo_L5-"L1$pb")
 
47
; PIC: li r6, lo16(L_BA4__foo_L5-"L1$pb")
 
48
; PIC: add r5, r5, r6
 
49
; PIC: stw r5
 
50
; STATIC: li r4, lo16(L_BA4__foo_L5)
 
51
; STATIC: addis r4, r4, ha16(L_BA4__foo_L5)
 
52
; STATIC: stw r4
 
53
  store i8* blockaddress(@foo, %L5), i8** @nextaddr, align 4
 
54
  ret i32 %res.3
 
55
}