• Home
  • Raw
  • Download

Lines Matching refs:lto

60 type lto struct {  struct
64 func (lto *lto) props() []interface{} { argument
65 return []interface{}{&lto.Properties}
68 func (lto *lto) begin(ctx BaseModuleContext) { argument
70 lto.Properties.Lto.Never = boolPtr(true)
76 if !lto.Never() && !lto.FullLTO() {
77 lto.Properties.Lto.Thin = boolPtr(true)
83 func (lto *lto) deps(ctx BaseModuleContext, deps Deps) Deps { argument
87 func (lto *lto) useClangLld(ctx BaseModuleContext) bool { argument
88 if lto.Properties.Use_clang_lld != nil {
89 return Bool(lto.Properties.Use_clang_lld)
94 func (lto *lto) flags(ctx BaseModuleContext, flags Flags) Flags { argument
101 if lto.LTO() {
103 if lto.ThinLTO() {
112 if Bool(lto.Properties.Whole_program_vtables) {
116 if lto.ThinLTO() && ctx.Config().IsEnvTrue("USE_THINLTO_CACHE") && lto.useClangLld(ctx) {
140 func (lto *lto) LTO() bool { argument
141 if lto == nil || lto.Never() {
145 return lto.FullLTO() || lto.ThinLTO()
148 func (lto *lto) FullLTO() bool { argument
149 return Bool(lto.Properties.Lto.Full)
152 func (lto *lto) ThinLTO() bool { argument
153 return Bool(lto.Properties.Lto.Thin)
157 func (lto *lto) Never() bool { argument
158 return Bool(lto.Properties.Lto.Never)
163 if m, ok := mctx.Module().(*Module); ok && m.lto.LTO() {
164 full := m.lto.FullLTO()
165 thin := m.lto.ThinLTO()
185 if dep, ok := dep.(*Module); ok && dep.lto != nil &&
186 !dep.lto.Never() {
187 if full && !dep.lto.FullLTO() {
188 dep.lto.Properties.FullDep = true
190 if thin && !dep.lto.ThinLTO() {
191 dep.lto.Properties.ThinDep = true
203 if m, ok := mctx.Module().(*Module); ok && m.lto != nil {
207 if m.lto.Properties.FullDep && !m.lto.FullLTO() {
210 if m.lto.Properties.ThinDep && !m.lto.ThinLTO() {
216 if m.lto.FullLTO() {
219 if m.lto.ThinLTO() {
236 variation.lto.Properties.Lto.Full = boolPtr(true)
237 variation.lto.Properties.Lto.Thin = boolPtr(false)
240 variation.lto.Properties.Lto.Full = boolPtr(false)
241 variation.lto.Properties.Lto.Thin = boolPtr(true)
245 variation.lto.Properties.FullDep = false
246 variation.lto.Properties.ThinDep = false