xref: /aosp_15_r20/external/toolchain-utils/compiler_wrapper/gcc_flags.go (revision 760c253c1ed00ce9abd48f8546f08516e57485fe)
1// Copyright 2019 The ChromiumOS Authors
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5package main
6
7func processGccFlags(builder *commandBuilder) {
8	if !builder.cfg.isHostWrapper {
9		// Flags not supported by GCC.
10		unsupported := map[string]bool{"-Xcompiler": true}
11
12		// Conversion for flags supported by clang but not gcc.
13		clangToGcc := map[string]string{
14			"-march=alderlake": "-march=skylake",
15		}
16
17		builder.transformArgs(func(arg builderArg) string {
18			if unsupported[arg.value] {
19				return ""
20			}
21			if mapped, ok := clangToGcc[arg.value]; ok {
22				return mapped
23			}
24			return arg.value
25		})
26	}
27
28	builder.path += ".real"
29}
30