aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTorbjörn SVENSSON <torbjorn.svensson@foss.st.com>2023-12-17 22:16:08 +0100
committerNick Clifton <nickc@redhat.com>2023-12-18 12:32:14 +0000
commit8ea1e363b92243b0562e4a4a360a582e368884a8 (patch)
treefe5334a34e98781f06919f222569194e60d3fa17
parent4cc1f41cfa45b0d36427e79409f447e83f4e66d4 (diff)
downloadfsf-binutils-gdb-8ea1e363b92243b0562e4a4a360a582e368884a8.zip
fsf-binutils-gdb-8ea1e363b92243b0562e4a4a360a582e368884a8.tar.gz
fsf-binutils-gdb-8ea1e363b92243b0562e4a4a360a582e368884a8.tar.bz2
ld: Print 0 size in B and not in GB
When using --print-memory-usage, the printed size can be zero and in that case, the unit should be B and not GB. ld/ * ldlang.c (lang_print_memory_size) Print 0 B instead of 0 GB. * testsuite/ld-scripts/print-memory-usage-1.l: Validate emplty region. * testsuite/ld-scripts/print-memory-usage-1.t: Define empty region. Signed-off-by: Torbjörn SVENSSON <torbjorn.svensson@foss.st.com>
-rw-r--r--ld/ldlang.c4
-rw-r--r--ld/testsuite/ld-scripts/print-memory-usage-1.l1
-rw-r--r--ld/testsuite/ld-scripts/print-memory-usage-1.t1
3 files changed, 5 insertions, 1 deletions
diff --git a/ld/ldlang.c b/ld/ldlang.c
index 566c2b8..105404a 100644
--- a/ld/ldlang.c
+++ b/ld/ldlang.c
@@ -9921,7 +9921,9 @@ lang_ld_feature (char *str)
static void
lang_print_memory_size (uint64_t sz)
{
- if ((sz & 0x3fffffff) == 0)
+ if (sz == 0)
+ printf (" %10" PRIu64 " B", sz);
+ else if ((sz & 0x3fffffff) == 0)
printf ("%10" PRIu64 " GB", sz >> 30);
else if ((sz & 0xfffff) == 0)
printf ("%10" PRIu64 " MB", sz >> 20);
diff --git a/ld/testsuite/ld-scripts/print-memory-usage-1.l b/ld/testsuite/ld-scripts/print-memory-usage-1.l
index e666a63..c597220 100644
--- a/ld/testsuite/ld-scripts/print-memory-usage-1.l
+++ b/ld/testsuite/ld-scripts/print-memory-usage-1.l
@@ -1,3 +1,4 @@
Memory region Used Size Region Size %age Used
ROM: 32 B 1 KB 3.1[23]%
RAM: 32 B 256 KB 0.01%
+ FOO: 0 B 1 KB 0.00%
diff --git a/ld/testsuite/ld-scripts/print-memory-usage-1.t b/ld/testsuite/ld-scripts/print-memory-usage-1.t
index 97065b3..56484f4 100644
--- a/ld/testsuite/ld-scripts/print-memory-usage-1.t
+++ b/ld/testsuite/ld-scripts/print-memory-usage-1.t
@@ -2,4 +2,5 @@ MEMORY
{
ROM (RX) : ORIGIN = 0x1000, LENGTH = 1K
RAM (W) : ORIGIN = 0x100000, LENGTH = 256K
+ FOO (RX) : ORIGIN = 0x100, LENGTH = 1K
}