summaryrefslogtreecommitdiffstats
path: root/llvm/tools/dsymutil/dsymutil.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'llvm/tools/dsymutil/dsymutil.cpp')
-rw-r--r--llvm/tools/dsymutil/dsymutil.cpp21
1 files changed, 14 insertions, 7 deletions
diff --git a/llvm/tools/dsymutil/dsymutil.cpp b/llvm/tools/dsymutil/dsymutil.cpp
index 5fb3a4b7705..fc447b30be9 100644
--- a/llvm/tools/dsymutil/dsymutil.cpp
+++ b/llvm/tools/dsymutil/dsymutil.cpp
@@ -85,10 +85,10 @@ static alias FlatOutA("f", desc("Alias for --flat"), aliasopt(FlatOut));
static opt<bool> Minimize(
"minimize",
- desc("When used when creating a dSYM file, this option will suppress\n"
- "the emission of the .debug_inlines, .debug_pubnames, and\n"
- ".debug_pubtypes sections since dsymutil currently has better\n"
- "equivalents: .apple_names and .apple_types. When used in\n"
+ desc("When used when creating a dSYM file with Apple accelerator tables,\n"
+ "this option will suppress the emission of the .debug_inlines, \n"
+ ".debug_pubnames, and .debug_pubtypes sections since dsymutil \n"
+ "has better equivalents: .apple_names and .apple_types. When used in\n"
"conjunction with --update option, this option will cause redundant\n"
"accelerator tables to be removed."),
init(false), cat(DsymCategory));
@@ -97,12 +97,18 @@ static alias MinimizeA("z", desc("Alias for --minimize"), aliasopt(Minimize));
static opt<bool> Update(
"update",
desc("Updates existing dSYM files to contain the latest accelerator\n"
- "tables and other DWARF optimizations. This option will currently\n"
- "add the new .apple_names and .apple_types hashed accelerator\n"
- "tables."),
+ "tables and other DWARF optimizations."),
init(false), cat(DsymCategory));
static alias UpdateA("u", desc("Alias for --update"), aliasopt(Update));
+static cl::opt<AccelTableKind> AcceleratorTable(
+ "accelerator", cl::desc("Output accelerator tables."),
+ cl::values(clEnumValN(AccelTableKind::Default, "Default",
+ "Default for input."),
+ clEnumValN(AccelTableKind::Apple, "Apple", "Apple"),
+ clEnumValN(AccelTableKind::Dwarf, "Dwarf", "DWARF")),
+ cl::init(AccelTableKind::Default), cat(DsymCategory));
+
static opt<unsigned> NumThreads(
"num-threads",
desc("Specifies the maximum number (n) of simultaneous threads to use\n"
@@ -326,6 +332,7 @@ static Expected<LinkOptions> getOptions() {
Options.Update = Update;
Options.NoTimestamp = NoTimestamp;
Options.PrependPath = OsoPrependPath;
+ Options.TheAccelTableKind = AcceleratorTable;
if (Assembly)
Options.FileType = OutputFileType::Assembly;
OpenPOWER on IntegriCloud