comparison test/Feature/optnone-llc.ll @ 102:57be027de0f4

Update LLVM 3.9
author Miyagi Mitsuki <e135756@ie.u-ryukyu.ac.jp>
date Tue, 26 Jan 2016 23:17:11 +0900
parents 7d135dc70f03
children 1172e4bd9c6f
comparison
equal deleted inserted replaced
99:21681fa9647e 102:57be027de0f4
1 ; RUN: llc -O0 -debug %s -o /dev/null 2>&1 | FileCheck %s --check-prefix=LLC-O0 1 ; RUN: llc -O0 -debug %s -o /dev/null 2>&1 | FileCheck %s --check-prefix=LLC-O0
2 ; RUN: llc -O1 -debug %s -o /dev/null 2>&1 | FileCheck %s --check-prefix=LLC-Ox 2 ; RUN: llc -O1 -debug %s -o /dev/null 2>&1 | FileCheck %s --check-prefix=LLC-Ox
3 ; RUN: llc -O2 -debug %s -o /dev/null 2>&1 | FileCheck %s --check-prefix=LLC-Ox 3 ; RUN: llc -O2 -debug %s -o /dev/null 2>&1 | FileCheck %s --check-prefix=LLC-Ox
4 ; RUN: llc -O3 -debug %s -o /dev/null 2>&1 | FileCheck %s --check-prefix=LLC-Ox 4 ; RUN: llc -O3 -debug %s -o /dev/null 2>&1 | FileCheck %s --check-prefix=LLC-Ox
5 ; RUN: llc -misched-postra -debug %s -o /dev/null 2>&1 | FileCheck %s --check-prefix=LLC-MORE 5 ; RUN: llc -misched-postra -debug %s -o /dev/null 2>&1 | FileCheck %s --check-prefix=LLC-MORE
6 ; RUN: llc -O1 -debug-only=isel %s -o /dev/null 2>&1 | FileCheck %s --check-prefix=FAST
7 ; RUN: llc -O1 -debug-only=isel -fast-isel=false %s -o /dev/null 2>&1 | FileCheck %s --check-prefix=NOFAST
6 8
7 ; REQUIRES: asserts, default_triple 9 ; REQUIRES: asserts, default_triple
8 10
9 ; This test verifies that we don't run Machine Function optimizations 11 ; This test verifies that we don't run Machine Function optimizations
10 ; on optnone functions. 12 ; on optnone functions, and that we can turn off FastISel.
11 13
12 ; Function Attrs: noinline optnone 14 ; Function Attrs: noinline optnone
13 define i32 @_Z3fooi(i32 %x) #0 { 15 define i32 @_Z3fooi(i32 %x) #0 {
14 entry: 16 entry:
15 %x.addr = alloca i32, align 4 17 %x.addr = alloca i32, align 4
40 ; LLC-Ox-DAG: Skipping pass 'CodeGen Prepare' 42 ; LLC-Ox-DAG: Skipping pass 'CodeGen Prepare'
41 ; LLC-Ox-DAG: Skipping pass 'Control Flow Optimizer' 43 ; LLC-Ox-DAG: Skipping pass 'Control Flow Optimizer'
42 ; LLC-Ox-DAG: Skipping pass 'Machine code sinking' 44 ; LLC-Ox-DAG: Skipping pass 'Machine code sinking'
43 ; LLC-Ox-DAG: Skipping pass 'Machine Common Subexpression Elimination' 45 ; LLC-Ox-DAG: Skipping pass 'Machine Common Subexpression Elimination'
44 ; LLC-Ox-DAG: Skipping pass 'Machine Copy Propagation Pass' 46 ; LLC-Ox-DAG: Skipping pass 'Machine Copy Propagation Pass'
47 ; LLC-Ox-DAG: Skipping pass 'Machine Instruction Scheduler'
45 ; LLC-Ox-DAG: Skipping pass 'Machine Loop Invariant Code Motion' 48 ; LLC-Ox-DAG: Skipping pass 'Machine Loop Invariant Code Motion'
46 ; LLC-Ox-DAG: Skipping pass 'Merge disjoint stack slots' 49 ; LLC-Ox-DAG: Skipping pass 'Merge disjoint stack slots'
47 ; LLC-Ox-DAG: Skipping pass 'Optimize machine instruction PHIs' 50 ; LLC-Ox-DAG: Skipping pass 'Optimize machine instruction PHIs'
48 ; LLC-Ox-DAG: Skipping pass 'Peephole Optimizations' 51 ; LLC-Ox-DAG: Skipping pass 'Peephole Optimizations'
49 ; LLC-Ox-DAG: Skipping pass 'Post{{.*}}RA{{.*}}{{[Ss]}}cheduler' 52 ; LLC-Ox-DAG: Skipping pass 'Post{{.*}}RA{{.*}}{{[Ss]}}cheduler'
50 ; LLC-Ox-DAG: Skipping pass 'Remove dead machine instructions' 53 ; LLC-Ox-DAG: Skipping pass 'Remove dead machine instructions'
51 ; LLC-Ox-DAG: Skipping pass 'Tail Duplication' 54 ; LLC-Ox-DAG: Skipping pass 'Tail Duplication'
52 55
53 ; Alternate post-RA scheduler. 56 ; Alternate post-RA scheduler.
54 ; LLC-MORE: Skipping pass 'PostRA Machine Instruction Scheduler' 57 ; LLC-MORE: Skipping pass 'PostRA Machine Instruction Scheduler'
58
59 ; Selectively disable FastISel for optnone functions.
60 ; FAST: FastISel is enabled
61 ; NOFAST: FastISel is disabled