Remove FIXMEs for pedantically-gcc-bug-compatible behavior.
 - We aren't going to fix these since they haven't caused problems in practice.

 - Similarly, don't forward -object to Darwin ld.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@81224 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/Driver/Tools.cpp b/lib/Driver/Tools.cpp
index a35d745..d7bf8b7 100644
--- a/lib/Driver/Tools.cpp
+++ b/lib/Driver/Tools.cpp
@@ -77,6 +77,7 @@
     CmdArgs.push_back(DepFile);
 
     // Add an -MT option if the user didn't specify their own.
+    //
     // FIXME: This should use -MQ, when we support it.
     if (!Args.hasArg(options::OPT_MT) && !Args.hasArg(options::OPT_MQ)) {
       const char *DepTarget;
@@ -109,13 +110,13 @@
   Args.AddLastArg(CmdArgs, options::OPT_MP);
   Args.AddAllArgs(CmdArgs, options::OPT_MT);
 
-  // FIXME: Use iterator.
-
   // Add -i* options, and automatically translate to
   // -include-pch/-include-pth for transparent PCH support. It's
   // wonky, but we include looking for .gch so we can support seamless
   // replacement into a build system already set up to be generating
   // .gch files.
+  //
+  // FIXME: Use iterator.
   for (ArgList::const_iterator
          it = Args.begin(), ie = Args.end(); it != ie; ++it) {
     const Arg *A = *it;
@@ -879,8 +880,6 @@
 void darwin::CC1::AddCC1Args(const ArgList &Args,
                              ArgStringList &CmdArgs) const {
   // Derived from cc1 spec.
-
-  // FIXME: -fapple-kext seems to disable this too. Investigate.
   if (!Args.hasArg(options::OPT_mkernel) && !Args.hasArg(options::OPT_static) &&
       !Args.hasArg(options::OPT_mdynamic_no_pic))
     CmdArgs.push_back("-fPIC");
@@ -889,15 +888,6 @@
   // and no -miphoneos-version-min is present, but this never happens
   // due to tool chain specific argument translation.
 
-  // FIXME: Remove mthumb
-  // FIXME: Remove mno-thumb
-  // FIXME: Remove faltivec
-  // FIXME: Remove mno-fused-madd
-  // FIXME: Remove mlong-branch
-  // FIXME: Remove mlongcall
-  // FIXME: Remove mcpu=G4
-  // FIXME: Remove mcpu=G5
-
   if (Args.hasArg(options::OPT_g_Flag) &&
       !Args.hasArg(options::OPT_fno_eliminate_unused_debug_symbols))
     CmdArgs.push_back("-feliminate-unused-debug-symbols");
@@ -1230,9 +1220,6 @@
   } else {
     CmdArgs.push_back("-fpreprocessed");
 
-    // FIXME: There is a spec command to remove
-    // -fpredictive-compilation args here. Investigate.
-
     for (InputInfoList::const_iterator
            it = Inputs.begin(), ie = Inputs.end(); it != ie; ++it) {
       const InputInfo &II = *it;
@@ -1618,20 +1605,16 @@
                                 const ArgList &Args,
                                 const char *LinkingOutput) const {
   assert(Output.getType() == types::TY_Image && "Invalid linker output type.");
+
   // The logic here is derived from gcc's behavior; most of which
   // comes from specs (starting with link_command). Consult gcc for
   // more information.
-
-  // FIXME: The spec references -fdump= which seems to have
-  // disappeared?
-
   ArgStringList CmdArgs;
 
   // I'm not sure why this particular decomposition exists in gcc, but
   // we follow suite for ease of comparison.
   AddLinkArgs(Args, CmdArgs);
 
-  // FIXME: gcc has %{x} in here. How could this ever happen?  Cruft?
   Args.AddAllArgs(CmdArgs, options::OPT_d_Flag);
   Args.AddAllArgs(CmdArgs, options::OPT_s);
   Args.AddAllArgs(CmdArgs, options::OPT_t);
@@ -1642,11 +1625,6 @@
   Args.AddAllArgs(CmdArgs, options::OPT_m_Separate);
   Args.AddAllArgs(CmdArgs, options::OPT_r);
 
-  // FIXME: This is just being pedantically bug compatible, gcc
-  // doesn't *mean* to forward this, it just does (yay for pattern
-  // matching). It doesn't work, of course.
-  Args.AddAllArgs(CmdArgs, options::OPT_object);
-
   CmdArgs.push_back("-o");
   CmdArgs.push_back(Output.getFilename());