Change the output of llvm-nm and llvm-size for Mach-O universal files (aka
[oota-llvm.git] / tools / llvm-size / llvm-size.cpp
index b3aaac8d27dd0719e492340d5ed19333d17ca6b5..408bb4a18804d180f80677423188529632471c73 100644 (file)
@@ -469,13 +469,20 @@ static void PrintFileSectionSizes(StringRef file) {
       std::unique_ptr<Archive> UA;
       if (!I->getAsObjectFile(UO)) {
         if (ObjectFile *o = dyn_cast<ObjectFile>(&*UO.get())) {
+          MachOObjectFile *MachO = dyn_cast<MachOObjectFile>(o);
           if (OutputFormat == sysv)
             outs() << o->getFileName() << "  :\n";
+          else if(MachO && OutputFormat == darwin) {
+            if (moreThanOneFile || moreThanOneArch)
+              outs() << o->getFileName() << " (for architecture "
+                     << I->getArchTypeName() << "):";
+            outs() << "\n";
+          }
           PrintObjectSectionSizes(o);
           if (OutputFormat == berkeley) {
-            MachOObjectFile *MachO = dyn_cast<MachOObjectFile>(o);
             if (!MachO || moreThanOneFile || moreThanOneArch)
-              outs() << o->getFileName();
+              outs() << o->getFileName() << " (for architecture "
+                     << I->getArchTypeName() << ")";
             outs() << "\n";
           }
         }
@@ -495,11 +502,15 @@ static void PrintFileSectionSizes(StringRef file) {
               outs() << o->getFileName() << "   (ex " << UA->getFileName()
                      << "):\n";
             else if(MachO && OutputFormat == darwin)
-              outs() << UA->getFileName() << "(" << o->getFileName() << "):\n";
+              outs() << UA->getFileName() << "(" << o->getFileName() << ")"
+                     << " (for architecture " << I->getArchTypeName()
+                     << "):\n";
             PrintObjectSectionSizes(o);
             if (OutputFormat == berkeley) {
               if (MachO)
-                outs() << UA->getFileName() << "(" << o->getFileName() << ")\n";
+                outs() << UA->getFileName() << "(" << o->getFileName() << ")"
+                       << " (for architecture " << I->getArchTypeName()
+                       << ")\n";
               else
                 outs() << o->getFileName() << " (ex " << UA->getFileName()
                        << ")\n";