本文整理匯總了Golang中github.com/axw/llgo.CompilerOptions類的典型用法代碼示例。如果您正苦於以下問題:Golang CompilerOptions類的具體用法?Golang CompilerOptions怎麽用?Golang CompilerOptions使用的例子?那麽, 這裏精選的類代碼示例或許可以為您提供幫助。
在下文中一共展示了CompilerOptions類的3個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Golang代碼示例。
示例1: initCompiler
func initCompiler() (llgo.Compiler, error) {
opts := llgo.CompilerOptions{TargetTriple: computeTriple()}
if *trace {
opts.Logger = log.New(os.Stderr, "", 0)
}
return llgo.NewCompiler(opts)
}
示例2: initCompiler
func initCompiler() (llgo.Compiler, error) {
opts := llgo.CompilerOptions{TargetTriple: computeTriple()}
if *trace || os.Getenv("LLGO_TRACE") == "1" {
opts.Logger = log.New(os.Stderr, "", 0)
}
if os.Getenv("LLGO_ORDERED_COMPILATION") == "1" {
opts.OrderedCompilation = true
}
opts.GenerateDebug = *generateDebug
return llgo.NewCompiler(opts)
}
示例3: main
func main() {
llvm.InitializeAllTargets()
llvm.InitializeAllTargetMCs()
llvm.InitializeAllTargetInfos()
flag.Parse()
if *version {
displayVersion()
}
if *printTriple {
fmt.Println(computeTriple())
os.Exit(0)
}
opts := llgo.CompilerOptions{}
opts.TargetTriple = computeTriple()
if *trace {
opts.Logger = log.New(os.Stderr, "", 0)
}
compiler, err := initCompiler()
if err != nil {
fmt.Fprintf(os.Stderr, "initCompiler failed: %s\n", err)
os.Exit(1)
}
defer compiler.Dispose()
module, err := compileFiles(compiler, flag.Args(), *importpath)
if err == nil {
defer module.Dispose()
if exitCode == 0 {
if *dump {
module.Dump()
} else {
err := writeObjectFile(module)
if err != nil {
fmt.Println(err)
}
}
}
} else {
report(err)
}
os.Exit(exitCode)
}