mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-12-21 00:32:23 +00:00
41367e252a
ObjectLinkingLayer. There are a two of overloads for addObject, one of which transfers ownership of the underlying buffer to OrcMCJITReplacement. This commit makes the ownership transfering version pass ownership down to the ObjectLinkingLayer in order to prevent the issue described in r227778. I think this commit will fix the sanitizer bot failures that necessitated the removal of the load-object-a.ll regression test in r227785, so I'm reinstating that test. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@227845 91177308-0d34-0410-b5e6-96231b3b80d8
25 lines
984 B
LLVM
25 lines
984 B
LLVM
; This first line will generate the .o files for the next run line
|
|
; RUN: rm -rf %t.cachedir %t.cachedir2 %t.cachedir3
|
|
; RUN: mkdir -p %t.cachedir %t.cachedir2 %t.cachedir3
|
|
; RUN: %lli -extra-module=%p/Inputs/multi-module-b.ll -extra-module=%p/Inputs/multi-module-c.ll -enable-cache-manager -object-cache-dir=%t.cachedir %s
|
|
|
|
; Collect generated objects.
|
|
; RUN: find %t.cachedir -type f -name 'multi-module-?.o' -exec mv -v '{}' %t.cachedir2 ';'
|
|
|
|
; This line tests MCJIT object loading
|
|
; RUN: %lli -extra-object=%t.cachedir2/multi-module-b.o -extra-object=%t.cachedir2/multi-module-c.o %s
|
|
|
|
; These lines put the object files into an archive
|
|
; RUN: llvm-ar r %t.cachedir3/load-object.a %t.cachedir2/multi-module-b.o
|
|
; RUN: llvm-ar r %t.cachedir3/load-object.a %t.cachedir2/multi-module-c.o
|
|
|
|
; This line test MCJIT archive loading
|
|
; RUN: %lli -extra-archive=%t.cachedir3/load-object.a %s
|
|
|
|
declare i32 @FB()
|
|
|
|
define i32 @main() {
|
|
%r = call i32 @FB( ) ; <i32> [#uses=1]
|
|
ret i32 %r
|
|
}
|