# RUN: yaml2obj %s > %t
-# RUN: llvm-objcopy -only-keep=.test %t %t2
+# RUN: llvm-objcopy -only-section=.test %t %t2
# RUN: llvm-objcopy -j .test %t %t3
# RUN: llvm-readobj -file-headers -sections %t2 | FileCheck %s
# RUN: diff %t2 %t3
# RUN: yaml2obj %s > %t
# RUN: llvm-objcopy -O binary -j .text %t %t2
-# RUN: llvm-objcopy -O binary -only-keep .text %t %t3
+# RUN: llvm-objcopy -O binary -only-section .text %t %t3
# RUN: llvm-objcopy --dump-section .text=%t4 %t %t5
# RUN: llvm-objcopy --dump-section .foo=%t6 %t %t7
# RUN: not llvm-objcopy --dump-section .bar=%t8 %t %t9 2>&1 | FileCheck %s --check-prefix=NOBITS
# RUN: yaml2obj %s > %t
-# RUN: llvm-objcopy -R=.test -only-keep=.test %t %t2
+# RUN: llvm-objcopy -R=.test -only-section=.test %t %t2
# RUN: llvm-readobj -file-headers -sections %t2 | FileCheck %s
!ELF
# RUN: yaml2obj %s > %t
-# RUN: llvm-objcopy -keep-section=.test2 -only-keep=.test %t %t2
+# RUN: llvm-objcopy -keep-section=.test2 -only-section=.test %t %t2
# RUN: llvm-objcopy -j .test -keep-section=.test2 %t %t3
# RUN: llvm-readobj -file-headers -sections %t2 | FileCheck %s
# RUN: diff %t2 %t3
# RUN: yaml2obj %s > %t
-# RUN: llvm-objcopy -R .symtab -R .strtab -only-keep=.test %t %t2
+# RUN: llvm-objcopy -R .symtab -R .strtab -only-section=.test %t %t2
# RUN: llvm-objcopy -j .test -R .strtab -R .symtab %t %t3
# RUN: llvm-readobj -file-headers -sections %t2 | FileCheck %s
# RUN: diff %t2 %t3
# RUN: yaml2obj %s > %t
-# RUN: llvm-objcopy -strip-non-alloc -only-keep=.test %t %t2
+# RUN: llvm-objcopy -strip-non-alloc -only-section=.test %t %t2
# RUN: llvm-readobj -file-headers -sections %t2 | FileCheck %s
!ELF
# RUN: yaml2obj %s > %t
-# RUN: llvm-objcopy -strip-sections -only-keep=.test %t %t2
+# RUN: llvm-objcopy -strip-sections -only-section=.test %t %t2
# RUN: od -Ax -t x1 %t2 | FileCheck %s
# RUN: od -Ax -t c %t2 | FileCheck %s -check-prefix=TEXT
Config.ToRemove.push_back(Arg->getValue());
for (auto Arg : InputArgs.filtered(OBJCOPY_keep_section))
Config.KeepSection.push_back(Arg->getValue());
- for (auto Arg : InputArgs.filtered(OBJCOPY_only_keep))
- Config.OnlyKeep.push_back(Arg->getValue());
+ for (auto Arg : InputArgs.filtered(OBJCOPY_only_section))
+ Config.OnlySection.push_back(Arg->getValue());
for (auto Arg : InputArgs.filtered(OBJCOPY_add_section))
Config.AddSection.push_back(Arg->getValue());
for (auto Arg : InputArgs.filtered(OBJCOPY_dump_section))
std::vector<StringRef> AddSection;
std::vector<StringRef> DumpSection;
std::vector<StringRef> KeepSection;
- std::vector<StringRef> OnlyKeep;
+ std::vector<StringRef> OnlySection;
std::vector<StringRef> SymbolsToGlobalize;
std::vector<StringRef> SymbolsToKeep;
std::vector<StringRef> SymbolsToLocalize;
};
// Explicit copies:
- if (!Config.OnlyKeep.empty()) {
+ if (!Config.OnlySection.empty()) {
RemovePred = [&Config, RemovePred, &Obj](const SectionBase &Sec) {
// Explicitly keep these sections regardless of previous removes.
- if (is_contained(Config.OnlyKeep, Sec.Name))
+ if (is_contained(Config.OnlySection, Sec.Name))
return false;
// Allow all implicit removes.
MetaVarName<"old=new">;
defm keep_section : Eq<"keep-section", "Keep <section>">,
MetaVarName<"section">;
-defm only_keep : Eq<"only-keep", "Remove all but <section>">,
- MetaVarName<"section">;
-def j : JoinedOrSeparate<["-"], "j">, Alias<only_keep>;
+defm only_section : Eq<"only-section", "Remove all but <section>">,
+ MetaVarName<"section">;
+def j : JoinedOrSeparate<["-"], "j">, Alias<only_section>;
defm add_section
: Eq<"add-section",
"Make a section named <section> with the contents of <file>.">,