blob: 5351e43cc9a6983a37f874eba7aa13730df43bf3 [file] [log] [blame]
; 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 internal void @func1() {
ret void
}
define internal void @func2() {
ret void
}
define internal void @func3() {
ret void
}
define internal void @func4() {
ret void
}
define internal void @func5() {
ret void
}
define internal void @func6() {
ret void
}
; DEFAULTWINDOWSIZE-LABEL: func1
; DEFAULTWINDOWSIZE-LABEL: func4
; DEFAULTWINDOWSIZE-LABEL: func5
; DEFAULTWINDOWSIZE-LABEL: func2
; DEFAULTWINDOWSIZE-LABEL: func6
; DEFAULTWINDOWSIZE-LABEL: func3
; 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: func1
; WINDOWSIZEMAX-LABEL: func4
; WINDOWSIZEMAX-LABEL: func5
; WINDOWSIZEMAX-LABEL: func2
; WINDOWSIZEMAX-LABEL: func6
; WINDOWSIZEMAX-LABEL: func3