aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRafael Espindola <rafael.espindola@gmail.com>2010-11-07 22:57:16 +0000
committerRafael Espindola <rafael.espindola@gmail.com>2010-11-07 22:57:16 +0000
commitdc1b76ddfc687c713a55cc9e3e054e9a0de1aa74 (patch)
tree9754ba480dd0151a2030333ed68476b679943972
parentc1da981bba867681004004b2d54ec2fdf3c08913 (diff)
Add support for -rdynamic.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@118384 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--include/clang/Driver/Options.td1
-rw-r--r--lib/Driver/Tools.cpp3
2 files changed, 4 insertions, 0 deletions
diff --git a/include/clang/Driver/Options.td b/include/clang/Driver/Options.td
index c61d71b120..db71fdeae2 100644
--- a/include/clang/Driver/Options.td
+++ b/include/clang/Driver/Options.td
@@ -566,6 +566,7 @@ def read__only__relocs : Separate<"-read_only_relocs">;
def remap : Flag<"-remap">;
def rewrite_objc : Flag<"-rewrite-objc">, Flags<[DriverOption]>,
HelpText<"Rewrite Objective-C source to C++">;
+def rdynamic : Flag<"-rdynamic">;
def rpath : Separate<"-rpath">, Flags<[LinkerInput]>;
def r : Flag<"-r">;
def save_temps : Flag<"-save-temps">, Flags<[DriverOption]>,
diff --git a/lib/Driver/Tools.cpp b/lib/Driver/Tools.cpp
index 4d6cbf747f..e28078deaa 100644
--- a/lib/Driver/Tools.cpp
+++ b/lib/Driver/Tools.cpp
@@ -3151,6 +3151,9 @@ void linuxtools::Link::ConstructJob(Compilation &C, const JobAction &JA,
CmdArgs.push_back(A->getValue(Args));
}
+ if (Args.hasArg(options::OPT_rdynamic))
+ CmdArgs.push_back("-export-dynamic");
+
for (std::vector<std::string>::const_iterator i = ToolChain.ExtraOpts.begin(),
e = ToolChain.ExtraOpts.end();
i != e; ++i)