ccc: Recognize that -M and -MM only run preprocessor.
 - Clean up some placement of output args to match gcc more precisely
   (for testing).


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@62566 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/tools/ccc/ccclib/Arguments.py b/tools/ccc/ccclib/Arguments.py
index ba48417..04dfbbf 100644
--- a/tools/ccc/ccclib/Arguments.py
+++ b/tools/ccc/ccclib/Arguments.py
@@ -539,15 +539,16 @@
         ####
         # Bring on the random garbage.
 
-        self.MOption = self.addOption(FlagOption('-M'))
-        self.MDOption = self.addOption(FlagOption('-MD'))
-        self.MGOption = self.addOption(FlagOption('-MG'))
-        self.MMDOption = self.addOption(FlagOption('-MMD'))
-        self.MPOption = self.addOption(FlagOption('-MP'))
-        self.MMOption = self.addOption(FlagOption('-MM'))
-        self.MFOption = self.addOption(JoinedOrSeparateOption('-MF'))
-        self.MTOption = self.addOption(JoinedOrSeparateOption('-MT'))
-        self.MQOption = self.addOption(JoinedOrSeparateOption('-MQ'))
+        self.MGroup = OptionGroup('-M')
+        self.MOption = self.addOption(FlagOption('-M', self.MGroup))
+        self.MDOption = self.addOption(FlagOption('-MD', self.MGroup))
+        self.MGOption = self.addOption(FlagOption('-MG', self.MGroup))
+        self.MMDOption = self.addOption(FlagOption('-MMD', self.MGroup))
+        self.MPOption = self.addOption(FlagOption('-MP', self.MGroup))
+        self.MMOption = self.addOption(FlagOption('-MM', self.MGroup))
+        self.MFOption = self.addOption(JoinedOrSeparateOption('-MF', self.MGroup))
+        self.MTOption = self.addOption(JoinedOrSeparateOption('-MT', self.MGroup))
+        self.MQOption = self.addOption(JoinedOrSeparateOption('-MQ', self.MGroup))
         self.MachOption = self.addOption(FlagOption('-Mach'))
         self.uGroup = OptionGroup('-u')
         self.undefOption = self.addOption(FlagOption('-undef', self.uGroup))