summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHans Wennborg <hans@hanshq.net>2013-07-31 23:07:21 +0000
committerHans Wennborg <hans@hanshq.net>2013-07-31 23:07:21 +0000
commit212e7ec7726c1fe0f884e2464ea761196bb43cbf (patch)
treee6f256cf078caf5ea64725b43e18148aab69fa8d
parent5fdcf86861170e948ae577b4e931bdf98e7dfc35 (diff)
downloadbcm5719-llvm-212e7ec7726c1fe0f884e2464ea761196bb43cbf.tar.gz
bcm5719-llvm-212e7ec7726c1fe0f884e2464ea761196bb43cbf.zip
Option parsing tables: pick up AliasArgs from the OPTION macro.
This depends on LLVM r187537. The SUPPORT_ALIASARGS macro will be removed once all option parsing clients have been updated. llvm-svn: 187538
-rw-r--r--clang/include/clang/Driver/CC1AsOptions.h4
-rw-r--r--clang/include/clang/Driver/Options.h4
-rw-r--r--clang/lib/Driver/CC1AsOptions.cpp6
-rw-r--r--clang/lib/Driver/DriverOptions.cpp6
4 files changed, 14 insertions, 6 deletions
diff --git a/clang/include/clang/Driver/CC1AsOptions.h b/clang/include/clang/Driver/CC1AsOptions.h
index 6d748488af7..4dde89c465e 100644
--- a/clang/include/clang/Driver/CC1AsOptions.h
+++ b/clang/include/clang/Driver/CC1AsOptions.h
@@ -22,10 +22,12 @@ namespace driver {
namespace cc1asoptions {
enum ID {
OPT_INVALID = 0, // This is not an option ID.
-#define OPTION(PREFIX, NAME, ID, KIND, GROUP, ALIAS, FLAGS, PARAM, \
+#define OPTION(PREFIX, NAME, ID, KIND, GROUP, ALIAS, ALIASARGS, FLAGS, PARAM, \
HELPTEXT, METAVAR) OPT_##ID,
+#define SUPPORT_ALIASARGS // FIXME: Remove when LLVM is updated.
#include "clang/Driver/CC1AsOptions.inc"
LastOption
+#undef SUPPORT_ALIASARGS
#undef OPTION
};
}
diff --git a/clang/include/clang/Driver/Options.h b/clang/include/clang/Driver/Options.h
index 0af8d3fe9e5..cb6a38fd706 100644
--- a/clang/include/clang/Driver/Options.h
+++ b/clang/include/clang/Driver/Options.h
@@ -35,10 +35,12 @@ enum ClangFlags {
enum ID {
OPT_INVALID = 0, // This is not an option ID.
-#define OPTION(PREFIX, NAME, ID, KIND, GROUP, ALIAS, FLAGS, PARAM, \
+#define OPTION(PREFIX, NAME, ID, KIND, GROUP, ALIAS, ALIASARGS, FLAGS, PARAM, \
HELPTEXT, METAVAR) OPT_##ID,
+#define SUPPORT_ALIASARGS // FIXME: Remove when LLVM is updated.
#include "clang/Driver/Options.inc"
LastOption
+#undef SUPPORT_ALIASARGS
#undef OPTION
};
}
diff --git a/clang/lib/Driver/CC1AsOptions.cpp b/clang/lib/Driver/CC1AsOptions.cpp
index eb5776d5067..7e4e718ebd7 100644
--- a/clang/lib/Driver/CC1AsOptions.cpp
+++ b/clang/lib/Driver/CC1AsOptions.cpp
@@ -21,11 +21,13 @@ using namespace clang::driver::cc1asoptions;
#undef PREFIX
static const OptTable::Info CC1AsInfoTable[] = {
-#define OPTION(PREFIX, NAME, ID, KIND, GROUP, ALIAS, FLAGS, PARAM, \
+#define OPTION(PREFIX, NAME, ID, KIND, GROUP, ALIAS, ALIASARGS, FLAGS, PARAM, \
HELPTEXT, METAVAR) \
{ PREFIX, NAME, HELPTEXT, METAVAR, OPT_##ID, Option::KIND##Class, PARAM, \
- FLAGS, OPT_##GROUP, OPT_##ALIAS },
+ FLAGS, OPT_##GROUP, OPT_##ALIAS, ALIASARGS },
+#define SUPPORT_ALIASARGS // FIXME: Remove when LLVM is updated.
#include "clang/Driver/CC1AsOptions.inc"
+#undef SUPPORT_ALIASARGS
#undef OPTION
};
diff --git a/clang/lib/Driver/DriverOptions.cpp b/clang/lib/Driver/DriverOptions.cpp
index 95518ee48b5..b5407bb50a6 100644
--- a/clang/lib/Driver/DriverOptions.cpp
+++ b/clang/lib/Driver/DriverOptions.cpp
@@ -21,11 +21,13 @@ using namespace llvm::opt;
#undef PREFIX
static const OptTable::Info InfoTable[] = {
-#define OPTION(PREFIX, NAME, ID, KIND, GROUP, ALIAS, FLAGS, PARAM, \
+#define OPTION(PREFIX, NAME, ID, KIND, GROUP, ALIAS, ALIASARGS, FLAGS, PARAM, \
HELPTEXT, METAVAR) \
{ PREFIX, NAME, HELPTEXT, METAVAR, OPT_##ID, Option::KIND##Class, PARAM, \
- FLAGS, OPT_##GROUP, OPT_##ALIAS },
+ FLAGS, OPT_##GROUP, OPT_##ALIAS, ALIASARGS },
+#define SUPPORT_ALIASARGS // FIXME: Remove when LLVM is updated.
#include "clang/Driver/Options.inc"
+#undef SUPPORT_ALIASARGS
#undef OPTION
};
OpenPOWER on IntegriCloud