zig cc: add -ffunction-sections integration

Also update to latest LLVM 13 command line options.

See #6290
This commit is contained in:
Andrew Kelley 2021-11-21 17:00:41 -07:00
parent b644d49365
commit ceeb230c23
3 changed files with 410 additions and 47 deletions

File diff suppressed because it is too large Load diff

View file

@ -1290,6 +1290,8 @@ fn buildOutputType(
.no_red_zone => want_red_zone = false,
.omit_frame_pointer => omit_frame_pointer = true,
.no_omit_frame_pointer => omit_frame_pointer = false,
.function_sections => function_sections = true,
.no_function_sections => function_sections = false,
.unwind_tables => want_unwind_tables = true,
.no_unwind_tables => want_unwind_tables = false,
.nostdlib => ensure_libc_on_non_freestanding = false,
@ -3821,6 +3823,8 @@ pub const ClangArgIterator = struct {
strip,
exec_model,
emit_llvm,
function_sections,
no_function_sections,
};
const Args = struct {

View file

@ -308,6 +308,14 @@ const known_options = [_]KnownOpt{
.name = "fno-omit-frame-pointer",
.ident = "no_omit_frame_pointer",
},
.{
.name = "ffunction-sections",
.ident = "function_sections",
},
.{
.name = "fno-function-sections",
.ident = "no_function_sections",
},
.{
.name = "MD",
.ident = "dep_file",