summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKevin Enderby <enderby@apple.com>2016-12-01 19:12:55 +0000
committerKevin Enderby <enderby@apple.com>2016-12-01 19:12:55 +0000
commit5997c9480bca272333139cb79a17f2436c055412 (patch)
tree7194b620be6e7eb9ef75cd738ed19b3ea9ec89a8
parent6a8704c1c0fee0b1394339b28b0c247098ec0276 (diff)
downloadbcm5719-llvm-5997c9480bca272333139cb79a17f2436c055412.tar.gz
bcm5719-llvm-5997c9480bca272333139cb79a17f2436c055412.zip
Fix a bug with llvm-size and the -m option with multiple files not printing the file names.
llvm-svn: 288402
-rw-r--r--llvm/test/tools/llvm-size/Inputs/darwin-m1.obin0 -> 228 bytes
-rw-r--r--llvm/test/tools/llvm-size/darwin-m.test4
-rw-r--r--llvm/tools/llvm-size/llvm-size.cpp4
3 files changed, 7 insertions, 1 deletions
diff --git a/llvm/test/tools/llvm-size/Inputs/darwin-m1.o b/llvm/test/tools/llvm-size/Inputs/darwin-m1.o
new file mode 100644
index 00000000000..9672df524c7
--- /dev/null
+++ b/llvm/test/tools/llvm-size/Inputs/darwin-m1.o
Binary files differ
diff --git a/llvm/test/tools/llvm-size/darwin-m.test b/llvm/test/tools/llvm-size/darwin-m.test
index 23d636ba32b..ade1b724c69 100644
--- a/llvm/test/tools/llvm-size/darwin-m.test
+++ b/llvm/test/tools/llvm-size/darwin-m.test
@@ -1,7 +1,11 @@
RUN: llvm-size -m %p/Inputs/darwin-m.o | FileCheck --check-prefix="DARWIN" %s
+RUN: llvm-size -m %p/Inputs/darwin-m.o %p/Inputs/darwin-m1.o | FileCheck --check-prefix="DARWIN2" %s
DARWIN: Segment : 8
DARWIN-NEXT: Section (__TEXT, __text): 4
DARWIN-NEXT: Section (__DATA, __data): 4
DARWIN-NEXT: total 8
DARWIN-NEXT: total 8
+
+DARWIN2: Inputs/darwin-m.o:
+DARWIN2: Inputs/darwin-m1.o:
diff --git a/llvm/tools/llvm-size/llvm-size.cpp b/llvm/tools/llvm-size/llvm-size.cpp
index a11532a7c98..903e950bc73 100644
--- a/llvm/tools/llvm-size/llvm-size.cpp
+++ b/llvm/tools/llvm-size/llvm-size.cpp
@@ -817,11 +817,13 @@ static void printFileSectionSizes(StringRef file) {
} else if (ObjectFile *o = dyn_cast<ObjectFile>(&Bin)) {
if (!checkMachOAndArchFlags(o, file))
return;
+ MachOObjectFile *MachO = dyn_cast<MachOObjectFile>(o);
if (OutputFormat == sysv)
outs() << o->getFileName() << " :\n";
+ else if (MachO && OutputFormat == darwin && MoreThanOneFile)
+ outs() << o->getFileName() << ":\n";
printObjectSectionSizes(o);
if (OutputFormat == berkeley) {
- MachOObjectFile *MachO = dyn_cast<MachOObjectFile>(o);
if (!MachO || MoreThanOneFile)
outs() << o->getFileName();
outs() << "\n";
OpenPOWER on IntegriCloud