mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-01-12 17:32:19 +00:00
Make SetMCJITOptimizationLevel more of a method and pass options
as a reference. Move closer to the type. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@222805 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
82ec8476af
commit
2d3f97d4de
@ -35,6 +35,10 @@ type MCJITCompilerOptions struct {
|
|||||||
C C.struct_LLVMMCJITCompilerOptions
|
C C.struct_LLVMMCJITCompilerOptions
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (options *MCJITCompilerOptions) SetMCJITOptimizationLevel(level uint) {
|
||||||
|
options.C.OptLevel = C.uint(level)
|
||||||
|
}
|
||||||
|
|
||||||
// helpers
|
// helpers
|
||||||
func llvmGenericValueRefPtr(t *GenericValue) *C.LLVMGenericValueRef {
|
func llvmGenericValueRefPtr(t *GenericValue) *C.LLVMGenericValueRef {
|
||||||
return (*C.LLVMGenericValueRef)(unsafe.Pointer(t))
|
return (*C.LLVMGenericValueRef)(unsafe.Pointer(t))
|
||||||
@ -100,10 +104,6 @@ func NewMCJITCompilerOptions() MCJITCompilerOptions {
|
|||||||
return MCJITCompilerOptions{options}
|
return MCJITCompilerOptions{options}
|
||||||
}
|
}
|
||||||
|
|
||||||
func SetMCJITOptimizationLevel(options MCJITCompilerOptions, level uint) {
|
|
||||||
options.C.OptLevel = C.uint(level)
|
|
||||||
}
|
|
||||||
|
|
||||||
func NewMCJITCompiler(m Module, options MCJITCompilerOptions) (ee ExecutionEngine, err error) {
|
func NewMCJITCompiler(m Module, options MCJITCompilerOptions) (ee ExecutionEngine, err error) {
|
||||||
var cmsg *C.char
|
var cmsg *C.char
|
||||||
fail := C.LLVMCreateMCJITCompilerForModule(&ee.C, m.C, &options.C, C.size_t(unsafe.Sizeof(C.struct_LLVMMCJITCompilerOptions{})), &cmsg)
|
fail := C.LLVMCreateMCJITCompilerForModule(&ee.C, m.C, &options.C, C.size_t(unsafe.Sizeof(C.struct_LLVMMCJITCompilerOptions{})), &cmsg)
|
||||||
|
@ -67,7 +67,7 @@ func TestFactorial(t *testing.T) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
options := NewMCJITCompilerOptions()
|
options := NewMCJITCompilerOptions()
|
||||||
SetMCJITOptimizationLevel(options, 2)
|
options.SetMCJITOptimizationLevel(2)
|
||||||
engine, err := NewMCJITCompiler(mod, options)
|
engine, err := NewMCJITCompiler(mod, options)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
t.Errorf("Error creating JIT: %s", err)
|
t.Errorf("Error creating JIT: %s", err)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user