Lines Matching refs:lto
57 type lto struct { struct
61 func (lto *lto) props() []interface{} { argument
62 return []interface{}{<o.Properties}
65 func (lto *lto) begin(ctx BaseModuleContext) { argument
67 lto.Properties.Lto.Never = boolPtr(true)
71 func (lto *lto) deps(ctx BaseModuleContext, deps Deps) Deps { argument
75 func (lto *lto) useClangLld(ctx BaseModuleContext) bool { argument
76 if lto.Properties.Use_clang_lld != nil {
77 return Bool(lto.Properties.Use_clang_lld)
82 func (lto *lto) flags(ctx BaseModuleContext, flags Flags) Flags { argument
89 if lto.LTO() {
91 if Bool(lto.Properties.Lto.Thin) {
100 …if ctx.Config().IsEnvTrue("USE_THINLTO_CACHE") && Bool(lto.Properties.Lto.Thin) && lto.useClangLld…
125 func (lto *lto) LTO() bool { argument
126 if lto == nil || lto.Disabled() {
130 full := Bool(lto.Properties.Lto.Full)
131 thin := Bool(lto.Properties.Lto.Thin)
136 func (lto *lto) Disabled() bool { argument
137 return lto.Properties.Lto.Never != nil && *lto.Properties.Lto.Never
142 if m, ok := mctx.Module().(*Module); ok && m.lto.LTO() {
143 full := Bool(m.lto.Properties.Lto.Full)
144 thin := Bool(m.lto.Properties.Lto.Thin)
153 if dep, ok := dep.(*Module); ok && dep.lto != nil &&
154 !dep.lto.Disabled() {
155 if full && !Bool(dep.lto.Properties.Lto.Full) {
156 dep.lto.Properties.FullDep = true
158 if thin && !Bool(dep.lto.Properties.Lto.Thin) {
159 dep.lto.Properties.ThinDep = true
175 if m, ok := mctx.Module().(*Module); ok && m.lto != nil {
179 if m.lto.Properties.FullDep && !Bool(m.lto.Properties.Lto.Full) {
182 if m.lto.Properties.ThinDep && !Bool(m.lto.Properties.Lto.Thin) {
188 if Bool(m.lto.Properties.Lto.Full) {
191 if Bool(m.lto.Properties.Lto.Thin) {
208 variation.lto.Properties.Lto.Full = boolPtr(true)
209 variation.lto.Properties.Lto.Thin = boolPtr(false)
212 variation.lto.Properties.Lto.Full = boolPtr(false)
213 variation.lto.Properties.Lto.Thin = boolPtr(true)
217 variation.lto.Properties.FullDep = false
218 variation.lto.Properties.ThinDep = false