1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2025-02-01 05:01:59 +01:00
llvm-mirror/test/ExecutionEngine/OrcLazy/basic-whole-module-partitions.ll
Lang Hames 1d65c306a2 [ORC] Add partitioning support to CompileOnDemandLayer2.
CompileOnDemandLayer2 now supports user-supplied partition functions (the
original CompileOnDemandLayer already supported these).

Partition functions are called with the list of requested global values
(i.e. global values that currently have queries waiting on them) and have an
opportunity to select extra global values to materialize at the same time.

Also adds testing infrastructure for the new feature to lli.

llvm-svn: 343396
2018-09-29 23:49:57 +00:00

22 lines
642 B
LLVM

; RUN: lli -jit-kind=orc-lazy -orc-lazy-debug=funcs-to-stdout \
; RUN: %s | FileCheck --check-prefix=CHECK-PER-FUNCTION %s
; RUN: lli -jit-kind=orc-lazy -per-module-lazy -orc-lazy-debug=funcs-to-stdout \
; RUN: %s | FileCheck --check-prefix=CHECK-WHOLE-MODULE %s
;
; CHECK-PER-FUNCTION-NOT: foo
; CHECK-WHOLE-MODULE: foo
;
; Checks that the whole module is emitted when -per-module-lazy is enabled,
; even though foo is not called.
; Also checks that the foo function is not emitted when -per-module-lazy is off.
define void @foo() {
entry:
ret void
}
define i32 @main(i32 %argc, i8** nocapture readnone %argv) {
entry:
ret i32 0
}