| ; This is a smoke test of function reordering. |
| |
| ; RUN: %p2i -i %s --filetype=obj --disassemble --args -O2 \ |
| ; RUN: -sz-seed=1 -reorder-functions \ |
| ; RUN: | FileCheck %s --check-prefix=DEFAULTWINDOWSIZE |
| ; RUN: %p2i -i %s --filetype=obj --disassemble --args -Om1 \ |
| ; RUN: -sz-seed=1 -reorder-functions \ |
| ; RUN: | FileCheck %s --check-prefix=DEFAULTWINDOWSIZE |
| |
| |
| ; RUN: %p2i -i %s --filetype=obj --disassemble --args -O2 \ |
| ; RUN: -sz-seed=1 -reorder-functions \ |
| ; RUN: -reorder-functions-window-size=1 \ |
| ; RUN: | FileCheck %s --check-prefix=WINDOWSIZE1 |
| ; RUN: %p2i -i %s --filetype=obj --disassemble --args -Om1 \ |
| ; RUN: -sz-seed=1 -reorder-functions \ |
| ; RUN: -reorder-functions-window-size=1 \ |
| ; RUN: | FileCheck %s --check-prefix=WINDOWSIZE1 |
| |
| |
| ; RUN: %p2i -i %s --filetype=obj --disassemble --args -O2 \ |
| ; RUN: -sz-seed=1 -reorder-functions \ |
| ; RUN: -threads=0 \ |
| ; RUN: | FileCheck %s --check-prefix=SEQUENTIAL |
| ; RUN: %p2i -i %s --filetype=obj --disassemble --args -Om1 \ |
| ; RUN: -sz-seed=1 -reorder-functions \ |
| ; RUN: -threads=0 \ |
| ; RUN: | FileCheck %s --check-prefix=SEQUENTIAL |
| |
| |
| ; RUN: %p2i -i %s --filetype=obj --disassemble --args -O2 \ |
| ; RUN: -sz-seed=1 -reorder-functions \ |
| ; RUN: -reorder-functions-window-size=0xffffffff \ |
| ; RUN: | FileCheck %s --check-prefix=WINDOWSIZEMAX |
| ; RUN: %p2i -i %s --filetype=obj --disassemble --args -Om1 \ |
| ; RUN: -sz-seed=1 -reorder-functions \ |
| ; RUN: -reorder-functions-window-size=0xffffffff \ |
| ; RUN: | FileCheck %s --check-prefix=WINDOWSIZEMAX |
| |
| define void @func1() { |
| ret void |
| } |
| |
| define void @func2() { |
| ret void |
| } |
| |
| define void @func3() { |
| ret void |
| } |
| |
| define void @func4() { |
| ret void |
| } |
| |
| define void @func5() { |
| ret void |
| } |
| |
| define void @func6() { |
| ret void |
| } |
| |
| ; DEFAULTWINDOWSIZE-LABEL: func4 |
| ; DEFAULTWINDOWSIZE-LABEL: func1 |
| ; DEFAULTWINDOWSIZE-LABEL: func3 |
| ; DEFAULTWINDOWSIZE-LABEL: func6 |
| ; DEFAULTWINDOWSIZE-LABEL: func5 |
| ; DEFAULTWINDOWSIZE-LABEL: func2 |
| |
| ; WINDOWSIZE1-LABEL: func1 |
| ; WINDOWSIZE1-LABEL: func2 |
| ; WINDOWSIZE1-LABEL: func3 |
| ; WINDOWSIZE1-LABEL: func4 |
| ; WINDOWSIZE1-LABEL: func5 |
| ; WINDOWSIZE1-LABEL: func6 |
| |
| ; SEQUENTIAL-LABEL: func1 |
| ; SEQUENTIAL-LABEL: func2 |
| ; SEQUENTIAL-LABEL: func3 |
| ; SEQUENTIAL-LABEL: func4 |
| ; SEQUENTIAL-LABEL: func5 |
| ; SEQUENTIAL-LABEL: func6 |
| |
| ; WINDOWSIZEMAX-LABEL: func4 |
| ; WINDOWSIZEMAX-LABEL: func1 |
| ; WINDOWSIZEMAX-LABEL: func3 |
| ; WINDOWSIZEMAX-LABEL: func6 |
| ; WINDOWSIZEMAX-LABEL: func5 |
| ; WINDOWSIZEMAX-LABEL: func2 |