Compute the correct symbol size in llvm-nm even without --print-size

In llvm-nm, the symbol size was being computed only with --print-size option,
even though it was being printed in other cases, such as with --format=posix.

This patch simply removes the guard, so that the size is computed
independently of the later decision to print it or not.

Fixes PR39997.

Differential Revision: https://reviews.llvm.org/D57599


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@353011 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/test/tools/llvm-nm/X86/posixELF.test b/test/tools/llvm-nm/X86/posixELF.test
index f66e1be..810bc97 100644
--- a/test/tools/llvm-nm/X86/posixELF.test
+++ b/test/tools/llvm-nm/X86/posixELF.test
@@ -1,4 +1,4 @@
 # RUN: llvm-nm -P %p/Inputs/hello.obj.elf-x86_64 | FileCheck %s
 
-CHECK: main T 0 0
+CHECK: main T 0 15
 CHECK: puts U 0 0
diff --git a/test/tools/llvm-nm/X86/response-file.test b/test/tools/llvm-nm/X86/response-file.test
index 5c53960..8f4e2a7 100644
--- a/test/tools/llvm-nm/X86/response-file.test
+++ b/test/tools/llvm-nm/X86/response-file.test
@@ -1,5 +1,5 @@
 # RUN: echo "-P %p/Inputs/hello.obj.elf-x86_64" > %t-response
 # RUN: llvm-nm @%t-response | FileCheck %s
 
-CHECK: main T 0 0
+CHECK: main T 0 15
 CHECK: puts U 0 0
diff --git a/tools/llvm-nm/llvm-nm.cpp b/tools/llvm-nm/llvm-nm.cpp
index 3a83fdb..7c00929 100644
--- a/tools/llvm-nm/llvm-nm.cpp
+++ b/tools/llvm-nm/llvm-nm.cpp
@@ -1190,10 +1190,8 @@
       NMSymbol S = {};
       S.Size = 0;
       S.Address = 0;
-      if (PrintSize) {
-        if (isa<ELFObjectFileBase>(&Obj))
-          S.Size = ELFSymbolRef(Sym).getSize();
-      }
+      if (isa<ELFObjectFileBase>(&Obj))
+        S.Size = ELFSymbolRef(Sym).getSize();
       if (PrintAddress && isa<ObjectFile>(Obj)) {
         SymbolRef SymRef(Sym);
         Expected<uint64_t> AddressOrErr = SymRef.getAddress();