aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ld/ChangeLog31
-rw-r--r--ld/testsuite/ld-ctf/array.d6
-rw-r--r--ld/testsuite/ld-ctf/conflicting-cycle-1.B-1.d10
-rw-r--r--ld/testsuite/ld-ctf/conflicting-cycle-1.B-2.d12
-rw-r--r--ld/testsuite/ld-ctf/conflicting-cycle-1.parent.d6
-rw-r--r--ld/testsuite/ld-ctf/conflicting-cycle-2.A-1.d12
-rw-r--r--ld/testsuite/ld-ctf/conflicting-cycle-2.A-2.d14
-rw-r--r--ld/testsuite/ld-ctf/conflicting-cycle-2.parent.d14
-rw-r--r--ld/testsuite/ld-ctf/conflicting-cycle-3.C-1.d12
-rw-r--r--ld/testsuite/ld-ctf/conflicting-cycle-3.C-2.d14
-rw-r--r--ld/testsuite/ld-ctf/conflicting-cycle-3.parent.d8
-rw-r--r--ld/testsuite/ld-ctf/conflicting-enums.d10
-rw-r--r--ld/testsuite/ld-ctf/conflicting-typedefs.d18
-rw-r--r--ld/testsuite/ld-ctf/cross-tu-cyclic-conflicting.d38
-rw-r--r--ld/testsuite/ld-ctf/cross-tu-cyclic-nonconflicting.d34
-rw-r--r--ld/testsuite/ld-ctf/cross-tu-into-cycle.d22
-rw-r--r--ld/testsuite/ld-ctf/cross-tu-noncyclic.d24
-rw-r--r--ld/testsuite/ld-ctf/cycle-1.d12
-rw-r--r--ld/testsuite/ld-ctf/cycle-2.A.d14
-rw-r--r--ld/testsuite/ld-ctf/cycle-2.B.d14
-rw-r--r--ld/testsuite/ld-ctf/cycle-2.C.d14
-rw-r--r--ld/testsuite/ld-ctf/data-func-conflicted.d6
-rw-r--r--ld/testsuite/ld-ctf/diag-cttname-null.d8
-rw-r--r--ld/testsuite/ld-ctf/diag-cuname.d12
-rw-r--r--ld/testsuite/ld-ctf/diag-parlabel.d12
-rw-r--r--ld/testsuite/ld-ctf/diag-wrong-magic-number-mixed.d14
-rw-r--r--ld/testsuite/ld-ctf/function.d6
-rw-r--r--ld/testsuite/ld-ctf/slice.d14
-rw-r--r--ld/testsuite/ld-ctf/super-sub-cycles.d30
-rw-r--r--libctf/ChangeLog12
-rw-r--r--libctf/ctf-dump.c50
31 files changed, 287 insertions, 216 deletions
diff --git a/ld/ChangeLog b/ld/ChangeLog
index dee8378..21ba58a 100644
--- a/ld/ChangeLog
+++ b/ld/ChangeLog
@@ -1,3 +1,34 @@
+2021-01-05 Nick Alcock <nick.alcock@oracle.com>
+
+ * testsuite/ld-ctf/array.d: Adjust for dumper changes.
+ * testsuite/ld-ctf/conflicting-cycle-1.B-1.d: Likewise.
+ * testsuite/ld-ctf/conflicting-cycle-1.B-2.d: Likewise.
+ * testsuite/ld-ctf/conflicting-cycle-1.parent.d: Likewise.
+ * testsuite/ld-ctf/conflicting-cycle-2.A-1.d: Likewise.
+ * testsuite/ld-ctf/conflicting-cycle-2.A-2.d: Likewise.
+ * testsuite/ld-ctf/conflicting-cycle-2.parent.d: Likewise.
+ * testsuite/ld-ctf/conflicting-cycle-3.C-1.d: Likewise.
+ * testsuite/ld-ctf/conflicting-cycle-3.C-2.d: Likewise.
+ * testsuite/ld-ctf/conflicting-cycle-3.parent.d: Likewise.
+ * testsuite/ld-ctf/conflicting-enums.d: Likewise.
+ * testsuite/ld-ctf/conflicting-typedefs.d: Likewise.
+ * testsuite/ld-ctf/cross-tu-cyclic-conflicting.d: Likewise.
+ * testsuite/ld-ctf/cross-tu-cyclic-nonconflicting.d: Likewise.
+ * testsuite/ld-ctf/cross-tu-into-cycle.d: Likewise.
+ * testsuite/ld-ctf/cross-tu-noncyclic.d: Likewise.
+ * testsuite/ld-ctf/cycle-1.d: Likewise.
+ * testsuite/ld-ctf/cycle-2.A.d: Likewise.
+ * testsuite/ld-ctf/cycle-2.B.d: Likewise.
+ * testsuite/ld-ctf/cycle-2.C.d: Likewise.
+ * testsuite/ld-ctf/data-func-conflicted.d: Likewise.
+ * testsuite/ld-ctf/diag-cttname-null.d: Likewise.
+ * testsuite/ld-ctf/diag-cuname.d: Likewise.
+ * testsuite/ld-ctf/diag-parlabel.d: Likewise.
+ * testsuite/ld-ctf/diag-wrong-magic-number-mixed.d: Likewise.
+ * testsuite/ld-ctf/function.d: Likewise.
+ * testsuite/ld-ctf/slice.d: Likewise.
+ * testsuite/ld-ctf/super-sub-cycles.d: Likewise.
+
2021-01-05 Alan Modra <amodra@gmail.com>
* testsuite/ld-scripts/sysroot-prefix.exp: Exclude some targets.
diff --git a/ld/testsuite/ld-ctf/array.d b/ld/testsuite/ld-ctf/array.d
index 82e9939..e07d63e 100644
--- a/ld/testsuite/ld-ctf/array.d
+++ b/ld/testsuite/ld-ctf/array.d
@@ -10,7 +10,7 @@
Contents of CTF section .ctf:
Header:
- Magic number: dff2
+ Magic number: 0xdff2
Version: 4 \(CTF_VERSION_3\)
#...
Data object section: .* \(0x8 bytes\)
@@ -29,7 +29,7 @@ Contents of CTF section .ctf:
Types:
#...
- [0-9a-f]*: .*\[10\] .*
+ 0x[0-9a-f]*: .*\[10\] .*
#...
- [0-9a-f]*: .*\[10\] .*
+ 0x[0-9a-f]*: .*\[10\] .*
#...
diff --git a/ld/testsuite/ld-ctf/conflicting-cycle-1.B-1.d b/ld/testsuite/ld-ctf/conflicting-cycle-1.B-1.d
index 40636f0..99b0564 100644
--- a/ld/testsuite/ld-ctf/conflicting-cycle-1.B-1.d
+++ b/ld/testsuite/ld-ctf/conflicting-cycle-1.B-1.d
@@ -14,7 +14,7 @@
CTF archive member: .*/B.c:
Header:
- Magic number: dff2
+ Magic number: 0xdff2
Version: 4 \(CTF_VERSION_3\)
#...
Parent name: .ctf
@@ -30,12 +30,12 @@ CTF archive member: .*/B.c:
Function objects:
Variables:
- b -> 80000001: struct B \(size 0x[0-9]*\)
+ b -> 0x80000001: struct B \(size 0x[0-9]*\)
Types:
- 8[0-9a-f]*: struct B .*
- \[0x0\] \(ID 0x8[0-9a-f]*\) \(kind 6\) struct B \(.*
- \[0x0\] \(ID 0x[0-9a-f]*\) \(kind 3\) struct C \* c \(.*
+ 0x8[0-9a-f]*: struct B .*
+ *\[0x0\] \(ID 0x8[0-9a-f]*\) \(kind 6\) struct B \(.*
+ *\[0x0\] \(ID 0x[0-9a-f]*\) \(kind 3\) struct C \* c \(.*
Strings:
#...
diff --git a/ld/testsuite/ld-ctf/conflicting-cycle-1.B-2.d b/ld/testsuite/ld-ctf/conflicting-cycle-1.B-2.d
index c6fdceb..32bc5c2 100644
--- a/ld/testsuite/ld-ctf/conflicting-cycle-1.B-2.d
+++ b/ld/testsuite/ld-ctf/conflicting-cycle-1.B-2.d
@@ -14,7 +14,7 @@
CTF archive member: .*/B-2.c:
Header:
- Magic number: dff2
+ Magic number: 0xdff2
Version: 4 \(CTF_VERSION_3\)
#...
Parent name: .ctf
@@ -30,13 +30,13 @@ CTF archive member: .*/B-2.c:
Function objects:
Variables:
- b -> 80000001: struct B \(.*
+ b -> 0x80000001: struct B \(.*
Types:
- 8[0-9a-f]*: struct B \(.*
- \[0x0\] \(ID 0x8[0-9a-f]*\) \(kind 6\) struct B \(.*
- \[0x0\] \(ID 0x[0-9a-f]*\) \(kind 3\) struct C \* c \(.*
- \[0x[0-9a-f]*\] \(ID 0x[0-9a-f]*\) \(kind 1\) int wombat:32 \(aligned at 0x[0-9a-f]*, format 0x1, offset:bits 0x0:0x[0-9a-f]*\)
+ 0x8[0-9a-f]*: struct B \(.*
+ *\[0x0\] \(ID 0x8[0-9a-f]*\) \(kind 6\) struct B \(.*
+ *\[0x0\] \(ID 0x[0-9a-f]*\) \(kind 3\) struct C \* c \(.*
+ *\[0x[0-9a-f]*\] \(ID 0x[0-9a-f]*\) \(kind 1\) int wombat:32 \(aligned at 0x[0-9a-f]*, format 0x1, offset:bits 0x0:0x[0-9a-f]*\)
Strings:
#...
diff --git a/ld/testsuite/ld-ctf/conflicting-cycle-1.parent.d b/ld/testsuite/ld-ctf/conflicting-cycle-1.parent.d
index 558eb36..4cbe9b6 100644
--- a/ld/testsuite/ld-ctf/conflicting-cycle-1.parent.d
+++ b/ld/testsuite/ld-ctf/conflicting-cycle-1.parent.d
@@ -13,7 +13,7 @@
Contents of CTF section .ctf:
Header:
- Magic number: dff2
+ Magic number: 0xdff2
Version: 4 \(CTF_VERSION_3\)
#...
Type section: .* \(0xac bytes\)
@@ -29,8 +29,8 @@ Contents of CTF section .ctf:
#...
Types:
#...
- [0-9a-f]*: struct B \(.*
- \[0x0\] \(ID 0x[0-9a-f]*\) \(kind 9\) struct B \(.*
+ 0x[0-9a-f]*: struct B \(.*
+ *\[0x0\] \(ID 0x[0-9a-f]*\) \(kind 9\) struct B \(.*
#...
CTF archive member: .*:
#...
diff --git a/ld/testsuite/ld-ctf/conflicting-cycle-2.A-1.d b/ld/testsuite/ld-ctf/conflicting-cycle-2.A-1.d
index 79282a2..5e5fade 100644
--- a/ld/testsuite/ld-ctf/conflicting-cycle-2.A-1.d
+++ b/ld/testsuite/ld-ctf/conflicting-cycle-2.A-1.d
@@ -16,7 +16,7 @@
CTF archive member: .*/A.c:
Header:
- Magic number: dff2
+ Magic number: 0xdff2
Version: 4 \(CTF_VERSION_3\)
#...
Parent name: .*
@@ -29,13 +29,13 @@ CTF archive member: .*/A.c:
Function objects:
Variables:
- a -> 80000001: struct A \(size 0x[0-9a-f]*\)
+ a -> 0x80000001: struct A \(size 0x[0-9a-f]*\)
Types:
- 8[0-9a-f]*: struct A \(size 0x[0-9a-f]*\)
- \[0x0\] \(ID 0x8[0-9a-f]*\) \(kind 6\) struct A \(aligned at 0x[0-9a-f]*\)
- \[0x0\] \(ID 0x[0-9a-f]*\) \(kind 3\) struct B \* b \(aligned at 0x[0-9a-f]*\)
+ 0x8[0-9a-f]*: struct A \(size 0x[0-9a-f]*\)
+ *\[0x0\] \(ID 0x8[0-9a-f]*\) \(kind 6\) struct A \(aligned at 0x[0-9a-f]*\)
+ *\[0x0\] \(ID 0x[0-9a-f]*\) \(kind 3\) struct B \* b \(aligned at 0x[0-9a-f]*\)
Strings:
- 0:
+ 0x0:
#...
diff --git a/ld/testsuite/ld-ctf/conflicting-cycle-2.A-2.d b/ld/testsuite/ld-ctf/conflicting-cycle-2.A-2.d
index 4f6d44e..ff6785cf 100644
--- a/ld/testsuite/ld-ctf/conflicting-cycle-2.A-2.d
+++ b/ld/testsuite/ld-ctf/conflicting-cycle-2.A-2.d
@@ -16,7 +16,7 @@
CTF archive member: .*/A-2.c:
Header:
- Magic number: dff2
+ Magic number: 0xdff2
Version: 4 \(CTF_VERSION_3\)
#...
Parent name: .*
@@ -29,14 +29,14 @@ CTF archive member: .*/A-2.c:
Function objects:
Variables:
- a -> 80000001: struct A \(size 0x[0-9a-f]*\)
+ a -> 0x80000001: struct A \(size 0x[0-9a-f]*\)
Types:
- 8[0-9a-f]*: struct A \(size 0x[0-9a-f]*\)
- \[0x0\] \(ID 0x8[0-9a-f]*\) \(kind 6\) struct A \(aligned at 0x[0-9a-f]*\)
- \[0x0\] \(ID 0x[0-9a-f]*\) \(kind 3\) struct B \* b \(aligned at 0x[0-9a-f]*\)
- \[0x[0-9a-f]*\] \(ID 0x[0-9a-f]*\) \(kind 1\) int wombat:32 \(aligned at 0x[0-9a-f]*, format 0x1, offset:bits 0x0:0x[0-9a-f]*\)
+ 0x8[0-9a-f]*: struct A \(size 0x[0-9a-f]*\)
+ *\[0x0\] \(ID 0x8[0-9a-f]*\) \(kind 6\) struct A \(aligned at 0x[0-9a-f]*\)
+ *\[0x0\] \(ID 0x[0-9a-f]*\) \(kind 3\) struct B \* b \(aligned at 0x[0-9a-f]*\)
+ *\[0x[0-9a-f]*\] \(ID 0x[0-9a-f]*\) \(kind 1\) int wombat:32 \(aligned at 0x[0-9a-f]*, format 0x1, offset:bits 0x0:0x[0-9a-f]*\)
Strings:
- 0:
+ 0x0:
#...
diff --git a/ld/testsuite/ld-ctf/conflicting-cycle-2.parent.d b/ld/testsuite/ld-ctf/conflicting-cycle-2.parent.d
index 95aa17d..d111ef7 100644
--- a/ld/testsuite/ld-ctf/conflicting-cycle-2.parent.d
+++ b/ld/testsuite/ld-ctf/conflicting-cycle-2.parent.d
@@ -15,7 +15,7 @@
Contents of CTF section .ctf:
Header:
- Magic number: dff2
+ Magic number: 0xdff2
Version: 4 \(CTF_VERSION_3\)
#...
Type section: .* \(0x94 bytes\)
@@ -28,13 +28,13 @@ Contents of CTF section .ctf:
Function objects:
Variables:
- cycle_1 -> [0-9a-f]*: struct cycle_1 \* \(size 0x[0-9a-f]*\) -> [0-9a-f]*: struct cycle_1 \(size 0x[0-9a-f]*\)
+ cycle_1 -> 0x[0-9a-f]*: struct cycle_1 \* \(size 0x[0-9a-f]*\) -> 0x[0-9a-f]*: struct cycle_1 \(size 0x[0-9a-f]*\)
Types:
#...
- [0-9a-f]*: struct cycle_1 \(size 0x[0-9a-f]*\)
- \[0x0\] \(ID 0x[0-9a-f]*\) \(kind 6\) struct cycle_1 \(aligned at 0x[0-9a-f]*\)
- \[0x0\] \(ID 0x[0-9a-f]*\) \(kind 3\) struct A \* a \(aligned at 0x[0-9a-f]*\)
- \[0x[0-9a-f]*\] \(ID 0x[0-9a-f]*\) \(kind 3\) struct B \* b \(aligned at 0x[0-9a-f]*\)
- \[0x[0-9a-f]*\] \(ID 0x[0-9a-f]*\) \(kind 3\) struct cycle_1 \* next \(aligned at 0x[0-9a-f]*\)
+ 0x[0-9a-f]*: struct cycle_1 \(size 0x[0-9a-f]*\)
+ *\[0x0\] \(ID 0x[0-9a-f]*\) \(kind 6\) struct cycle_1 \(aligned at 0x[0-9a-f]*\)
+ *\[0x0\] \(ID 0x[0-9a-f]*\) \(kind 3\) struct A \* a \(aligned at 0x[0-9a-f]*\)
+ *\[0x[0-9a-f]*\] \(ID 0x[0-9a-f]*\) \(kind 3\) struct B \* b \(aligned at 0x[0-9a-f]*\)
+ *\[0x[0-9a-f]*\] \(ID 0x[0-9a-f]*\) \(kind 3\) struct cycle_1 \* next \(aligned at 0x[0-9a-f]*\)
#...
diff --git a/ld/testsuite/ld-ctf/conflicting-cycle-3.C-1.d b/ld/testsuite/ld-ctf/conflicting-cycle-3.C-1.d
index 48078b9..df61153 100644
--- a/ld/testsuite/ld-ctf/conflicting-cycle-3.C-1.d
+++ b/ld/testsuite/ld-ctf/conflicting-cycle-3.C-1.d
@@ -15,7 +15,7 @@
CTF archive member: .*/C.c:
Header:
- Magic number: dff2
+ Magic number: 0xdff2
Version: 4 \(CTF_VERSION_3\)
#...
Parent name: .*
@@ -28,13 +28,13 @@ CTF archive member: .*/C.c:
Function objects:
Variables:
- c -> 80000001: struct C \(size 0x[0-9a-f]*\)
+ c -> 0x80000001: struct C \(size 0x[0-9a-f]*\)
Types:
- 8[0-9a-f]*: struct C \(size 0x[0-9a-f]*\)
- \[0x0\] \(ID 0x8[0-9a-f]*\) \(kind 6\) struct C \(aligned at 0x[0-9a-f]*\)
- \[0x0\] \(ID 0x[0-9a-f]*\) \(kind 3\) struct A \* a \(aligned at 0x[0-9a-f]*\)
+ 0x8[0-9a-f]*: struct C \(size 0x[0-9a-f]*\)
+ *\[0x0\] \(ID 0x8[0-9a-f]*\) \(kind 6\) struct C \(aligned at 0x[0-9a-f]*\)
+ *\[0x0\] \(ID 0x[0-9a-f]*\) \(kind 3\) struct A \* a \(aligned at 0x[0-9a-f]*\)
Strings:
- 0:
+ 0x0:
#...
diff --git a/ld/testsuite/ld-ctf/conflicting-cycle-3.C-2.d b/ld/testsuite/ld-ctf/conflicting-cycle-3.C-2.d
index 854a719..e1cfd0c 100644
--- a/ld/testsuite/ld-ctf/conflicting-cycle-3.C-2.d
+++ b/ld/testsuite/ld-ctf/conflicting-cycle-3.C-2.d
@@ -15,7 +15,7 @@
CTF archive member: .*/C-2.c:
Header:
- Magic number: dff2
+ Magic number: 0xdff2
Version: 4 \(CTF_VERSION_3\)
#...
Parent name: .*
@@ -28,14 +28,14 @@ CTF archive member: .*/C-2.c:
Function objects:
Variables:
- c -> 80000001: struct C \(size 0x[0-9a-f]*\)
+ c -> 0x80000001: struct C \(size 0x[0-9a-f]*\)
Types:
- 8[0-9a-f]*: struct C \(size 0x[0-9a-f]*\)
- \[0x0\] \(ID 0x8[0-9a-f]*\) \(kind 6\) struct C \(aligned at 0x[0-9a-f]*\)
- \[0x0\] \(ID 0x[0-9a-f]*\) \(kind 3\) struct A \* a \(aligned at 0x[0-9a-f]*\)
- \[0x[0-9a-f]*\] \(ID 0x[0-9a-f]*\) \(kind 1\) int wombat:[0-9]* \(aligned at 0x[0-9a-f]*, format 0x1, offset:bits 0x0:0x[0-9a-f]*\)
+ 0x8[0-9a-f]*: struct C \(size 0x[0-9a-f]*\)
+ *\[0x0\] \(ID 0x8[0-9a-f]*\) \(kind 6\) struct C \(aligned at 0x[0-9a-f]*\)
+ *\[0x0\] \(ID 0x[0-9a-f]*\) \(kind 3\) struct A \* a \(aligned at 0x[0-9a-f]*\)
+ *\[0x[0-9a-f]*\] \(ID 0x[0-9a-f]*\) \(kind 1\) int wombat:[0-9]* \(aligned at 0x[0-9a-f]*, format 0x1, offset:bits 0x0:0x[0-9a-f]*\)
Strings:
- 0:
+ 0x0:
#...
diff --git a/ld/testsuite/ld-ctf/conflicting-cycle-3.parent.d b/ld/testsuite/ld-ctf/conflicting-cycle-3.parent.d
index 28525b6..11d2a04 100644
--- a/ld/testsuite/ld-ctf/conflicting-cycle-3.parent.d
+++ b/ld/testsuite/ld-ctf/conflicting-cycle-3.parent.d
@@ -14,7 +14,7 @@
Contents of CTF section .ctf:
Header:
- Magic number: dff2
+ Magic number: 0xdff2
Version: 4 \(CTF_VERSION_3\)
#...
Type section: 0x0 -- 0x57 \(0x58 bytes\)
@@ -30,9 +30,9 @@ Contents of CTF section .ctf:
Types:
#...
- [0-9a-f]*: int \[0x0:0x[0-9a-f]*\] \(size 0x[0-9a-f]*\)
- \[0x0\] \(ID 0x[0-9a-f]*\) \(kind 1\) int:[0-9]* \(aligned at 0x[0-9a-f]*, format 0x1, offset:bits 0x0:0x[0-9a-f]*\)
+ 0x[0-9a-f]*: int \[0x0:0x[0-9a-f]*\] \(size 0x[0-9a-f]*\)
+ *\[0x0\] \(ID 0x[0-9a-f]*\) \(kind 1\) int:[0-9]* \(aligned at 0x[0-9a-f]*, format 0x1, offset:bits 0x0:0x[0-9a-f]*\)
#...
Strings:
- 0:
+ 0x0:
#...
diff --git a/ld/testsuite/ld-ctf/conflicting-enums.d b/ld/testsuite/ld-ctf/conflicting-enums.d
index 8b16b4c..b93d812 100644
--- a/ld/testsuite/ld-ctf/conflicting-enums.d
+++ b/ld/testsuite/ld-ctf/conflicting-enums.d
@@ -10,7 +10,7 @@
Contents of CTF section .ctf:
Header:
- Magic number: dff2
+ Magic number: 0xdff2
Version: 4 \(CTF_VERSION_3\)
#...
Types:
@@ -20,16 +20,16 @@ Contents of CTF section .ctf:
CTF archive member: .*enum.*\.c:
#...
Types:
- 8[0-9a-f]*: enum day_of_the_week \(size 0x[0-9a-f]*\)
- \[0x0\] \(ID 0x8[0-9a-f]*\) \(kind 8\) enum day_of_the_week \(aligned at 0x[0-9a-f]*\)
+ 0x8[0-9a-f]*: enum day_of_the_week \(size 0x[0-9a-f]*\)
+ *\[0x0\] \(ID 0x8[0-9a-f]*\) \(kind 8\) enum day_of_the_week \(aligned at 0x[0-9a-f]*\)
Strings:
#...
CTF archive member: .*enum.*\.c:
#...
Types:
- 8[0-9a-f]*: enum day_of_the_week \(size 0x[0-9a-f]*\)
- \[0x0\] \(ID 0x8[0-9a-f]*\) \(kind 8\) enum day_of_the_week \(aligned at 0x[0-9a-f]*\)
+ 0x8[0-9a-f]*: enum day_of_the_week \(size 0x[0-9a-f]*\)
+ *\[0x0\] \(ID 0x8[0-9a-f]*\) \(kind 8\) enum day_of_the_week \(aligned at 0x[0-9a-f]*\)
Strings:
#...
diff --git a/ld/testsuite/ld-ctf/conflicting-typedefs.d b/ld/testsuite/ld-ctf/conflicting-typedefs.d
index 09d6c3c..309e453 100644
--- a/ld/testsuite/ld-ctf/conflicting-typedefs.d
+++ b/ld/testsuite/ld-ctf/conflicting-typedefs.d
@@ -10,24 +10,24 @@
Contents of CTF section .ctf:
Header:
- Magic number: dff2
+ Magic number: 0xdff2
Version: 4 \(CTF_VERSION_3\)
#...
Types:
- 1: .*int .*
- .*
- [0-9]:.*int .*
- .*
- [0-9]: word .*
- \[0x0\] \(ID 0x[0-9]\) \(kind 10\) word \(aligned at 0x[48]\)
+ 0x1: .*int .*
+ .*
+ 0x[0-9]:.*int .*
+ .*
+ 0x[0-9]: word .*
+ *\[0x0\] \(ID 0x[0-9]\) \(kind 10\) word \(aligned at 0x[48]\)
Strings:
#...
CTF archive member: .*typedef.*\.c:
#...
Types:
- 80000001: word .*
- \[0x0\] \(ID 0x80000001\) \(kind 10\) word \(aligned at 0x[48]\)
+ 0x80000001: word .*
+ *\[0x0\] \(ID 0x80000001\) \(kind 10\) word \(aligned at 0x[48]\)
Strings:
#...
diff --git a/ld/testsuite/ld-ctf/cross-tu-cyclic-conflicting.d b/ld/testsuite/ld-ctf/cross-tu-cyclic-conflicting.d
index aa36533..3c975eb 100644
--- a/ld/testsuite/ld-ctf/cross-tu-cyclic-conflicting.d
+++ b/ld/testsuite/ld-ctf/cross-tu-cyclic-conflicting.d
@@ -14,20 +14,20 @@ Contents of CTF section \.ctf:
#...
Types:
#...
- [0-9a-f]*: long int \[0x0:0x[0-9a-f]*\] \(size 0x[0-9a-f]*\)
- \[0x0\] \(ID 0x[0-9a-f]*\) \(kind 1\) long int:[0-9]* \(aligned at 0x[0-9a-f]*, format 0x1, offset:bits 0x0:0x[0-9a-f]*\)
+ 0x[0-9a-f]*: long int \[0x0:0x[0-9a-f]*\] \(size 0x[0-9a-f]*\)
+ *\[0x0\] \(ID 0x[0-9a-f]*\) \(kind 1\) long int:[0-9]* \(aligned at 0x[0-9a-f]*, format 0x1, offset:bits 0x0:0x[0-9a-f]*\)
#...
- [0-9a-f]*: struct B .*
- \[0x0\] \(ID 0x[0-9a-f]*\) \(kind 6\) struct B .*
+ 0x[0-9a-f]*: struct B .*
+ *\[0x0\] \(ID 0x[0-9a-f]*\) \(kind 6\) struct B .*
#...
- [0-9a-f]*: int \[0x0:0x[0-9a-f]*\] \(size 0x[0-9a-f]*\)
- \[0x0\] \(ID 0x[0-9a-f]*\) \(kind 1\) int:[0-9]* \(aligned at 0x[0-9a-f]*, format 0x1, offset:bits 0x0:0x[0-9a-f]*\)
+ 0x[0-9a-f]*: int \[0x0:0x[0-9a-f]*\] \(size 0x[0-9a-f]*\)
+ *\[0x0\] \(ID 0x[0-9a-f]*\) \(kind 1\) int:[0-9]* \(aligned at 0x[0-9a-f]*, format 0x1, offset:bits 0x0:0x[0-9a-f]*\)
#...
- [0-9a-f]*: struct A .*
- \[0x0\] \(ID 0x[0-9a-f]*\) \(kind 9\) struct A .*
+ 0x[0-9a-f]*: struct A .*
+ *\[0x0\] \(ID 0x[0-9a-f]*\) \(kind 9\) struct A .*
#...
- [0-9a-f]*: struct C .*
- \[0x0\] \(ID 0x[0-9a-f]*\) \(kind 6\) struct C .*
+ 0x[0-9a-f]*: struct C .*
+ *\[0x0\] \(ID 0x[0-9a-f]*\) \(kind 6\) struct C .*
#...
Strings:
@@ -36,10 +36,10 @@ Contents of CTF section \.ctf:
CTF archive member: .*/ld/testsuite/ld-ctf/cross-tu-cyclic-1\.c:
#...
Types:
- 80.*[0-9a-f]*: struct A .*
- \[0x0\] \(ID 0x80.*\) \(kind 6\) struct A .*
- \[0x0\] \(ID 0x[0-9a-f]*\) \(kind 1\) long int a:.*
- \[0x[0-9a-f]*\] \(ID 0x[0-9a-f]*\) \(kind 3\) struct B \* foo .*
+ 0x80.*[0-9a-f]*: struct A .*
+ *\[0x0\] \(ID 0x80.*\) \(kind 6\) struct A .*
+ *\[0x0\] \(ID 0x[0-9a-f]*\) \(kind 1\) long int a:.*
+ *\[0x[0-9a-f]*\] \(ID 0x[0-9a-f]*\) \(kind 3\) struct B \* foo .*
Strings:
#...
@@ -47,11 +47,11 @@ CTF archive member: .*/ld/testsuite/ld-ctf/cross-tu-cyclic-1\.c:
CTF archive member: .*/ld/testsuite/ld-ctf/cross-tu-cyclic-2\.c:
#...
Types:
- 80.*[0-9a-f]*: struct A .*
- \[0x0\] \(ID 0x80.*\) \(kind 6\) struct A .*
- \[0x0\] \(ID 0x[0-9a-f]*\) \(kind 1\) long int a:.*
- \[0x[0-9a-f]*\] \(ID 0x[0-9a-f]*\) \(kind 3\) struct B \* foo .*
- \[0x[0-9a-f]*\] \(ID 0x[0-9a-f]*\) \(kind 3\) struct C \* bar .*
+ 0x80.*[0-9a-f]*: struct A .*
+ *\[0x0\] \(ID 0x80.*\) \(kind 6\) struct A .*
+ *\[0x0\] \(ID 0x[0-9a-f]*\) \(kind 1\) long int a:.*
+ *\[0x[0-9a-f]*\] \(ID 0x[0-9a-f]*\) \(kind 3\) struct B \* foo .*
+ *\[0x[0-9a-f]*\] \(ID 0x[0-9a-f]*\) \(kind 3\) struct C \* bar .*
Strings:
#...
diff --git a/ld/testsuite/ld-ctf/cross-tu-cyclic-nonconflicting.d b/ld/testsuite/ld-ctf/cross-tu-cyclic-nonconflicting.d
index 39f5c18..9b0d738 100644
--- a/ld/testsuite/ld-ctf/cross-tu-cyclic-nonconflicting.d
+++ b/ld/testsuite/ld-ctf/cross-tu-cyclic-nonconflicting.d
@@ -14,7 +14,7 @@
Contents of CTF section .ctf:
Header:
- Magic number: dff2
+ Magic number: 0xdff2
Version: 4 \(CTF_VERSION_3\)
#...
@@ -29,22 +29,22 @@ Contents of CTF section .ctf:
Types:
#...
- [0-9a-f]*: struct A \(size 0x[0-9a-f]*\)
- \[0x0\] \(ID 0x[0-9a-f]\) \(kind 6\) struct A \(aligned at 0x[0-9a-f]*\)
- \[0x0\] \(ID 0x[0-9a-f]*\) \(kind 1\) long int a:[0-9]* \(aligned at 0x[0-9a-f]*, format 0x1, offset:bits 0x0:0x[0-9a-f]*\)
- \[0x[0-9a-f]*\] \(ID 0x[0-9a-f]*\) \(kind 3\) struct B \* foo \(aligned at 0x[0-9a-f]*\)
- [0-9a-f]*: long int .*
- \[0x0\] \(ID 0x[0-9a-f]*\) \(kind 1\) long int:[0-9].*
- [0-9a-f]*: struct B \(size 0x[0-9a-f]*\)
- \[0x0\] \(ID 0x[0-9a-f]*\) \(kind 6\) struct B \(aligned at 0x[0-9a-f]*\)
- \[0x0\] \(ID 0x[0-9a-f]*\) \(kind 1\) int foo:[0-9]* \(aligned at 0x[0-9a-f]*, format 0x1, offset:bits 0x0:0x[0-9a-f]*\)
- \[0x[0-9a-f]*\] \(ID 0x[0-9a-f]*\) \(kind 3\) struct A \* bar \(aligned at 0x[0-9a-f]*\)
- [0-9a-f]*: struct B \* \(size 0x[0-9a-f]*\) -> [0-9a-f]*: struct B \(size 0x[0-9a-f]*\)
- \[0x0\] \(ID 0x[0-9a-f]*\) \(kind 3\) struct B \* \(aligned at 0x[0-9a-f]*\)
- [0-9a-f]*: struct A \* \(size 0x[0-9a-f]*\) -> [0-9a-f]*: struct A \(size 0x[0-9a-f]*\)
- \[0x0\] \(ID 0x[0-9a-f]*\) \(kind 3\) struct A \* \(aligned at 0x[0-9a-f]*\)
- [0-9a-f]*: int .*
- \[0x0\] \(ID 0x[0-9a-f]*\) \(kind 1\) int:.*
+ 0x[0-9a-f]*: struct A \(size 0x[0-9a-f]*\)
+ *\[0x0\] \(ID 0x[0-9a-f]\) \(kind 6\) struct A \(aligned at 0x[0-9a-f]*\)
+ *\[0x0\] \(ID 0x[0-9a-f]*\) \(kind 1\) long int a:[0-9]* \(aligned at 0x[0-9a-f]*, format 0x1, offset:bits 0x0:0x[0-9a-f]*\)
+ *\[0x[0-9a-f]*\] \(ID 0x[0-9a-f]*\) \(kind 3\) struct B \* foo \(aligned at 0x[0-9a-f]*\)
+ 0x[0-9a-f]*: long int .*
+ *\[0x0\] \(ID 0x[0-9a-f]*\) \(kind 1\) long int:[0-9].*
+ 0x[0-9a-f]*: struct B \(size 0x[0-9a-f]*\)
+ *\[0x0\] \(ID 0x[0-9a-f]*\) \(kind 6\) struct B \(aligned at 0x[0-9a-f]*\)
+ *\[0x0\] \(ID 0x[0-9a-f]*\) \(kind 1\) int foo:[0-9]* \(aligned at 0x[0-9a-f]*, format 0x1, offset:bits 0x0:0x[0-9a-f]*\)
+ *\[0x[0-9a-f]*\] \(ID 0x[0-9a-f]*\) \(kind 3\) struct A \* bar \(aligned at 0x[0-9a-f]*\)
+ 0x[0-9a-f]*: struct B \* \(size 0x[0-9a-f]*\) -> 0x[0-9a-f]*: struct B \(size 0x[0-9a-f]*\)
+ *\[0x0\] \(ID 0x[0-9a-f]*\) \(kind 3\) struct B \* \(aligned at 0x[0-9a-f]*\)
+ 0x[0-9a-f]*: struct A \* \(size 0x[0-9a-f]*\) -> 0x[0-9a-f]*: struct A \(size 0x[0-9a-f]*\)
+ *\[0x0\] \(ID 0x[0-9a-f]*\) \(kind 3\) struct A \* \(aligned at 0x[0-9a-f]*\)
+ 0x[0-9a-f]*: int .*
+ *\[0x0\] \(ID 0x[0-9a-f]*\) \(kind 1\) int:.*
Strings:
#...
diff --git a/ld/testsuite/ld-ctf/cross-tu-into-cycle.d b/ld/testsuite/ld-ctf/cross-tu-into-cycle.d
index 6bfdc40..a21fedc 100644
--- a/ld/testsuite/ld-ctf/cross-tu-into-cycle.d
+++ b/ld/testsuite/ld-ctf/cross-tu-into-cycle.d
@@ -16,7 +16,7 @@
Contents of CTF section .ctf:
Header:
- Magic number: dff2
+ Magic number: 0xdff2
Version: 4 \(CTF_VERSION_3\)
#...
@@ -31,16 +31,16 @@ Contents of CTF section .ctf:
conflicty -> .*
Types:
- [0-9a-f]*: struct A .*
- \[0x0\] \(ID 0x[0-9a-f]*\) \(kind 6\) struct A .*
- \[0x0\] \(ID 0x[0-9a-f]*\) \(kind 3\) struct B \* foo .*
- [0-9a-f]*: struct B .*
- \[0x0\] \(ID 0x[0-9a-f]*\) \(kind 6\) struct B .*
- \[0x0\] \(ID 0x[0-9a-f]*\) \(kind 3\) struct B \* next .*
- [0-9a-f]*: struct B \* .*
- \[0x0\] .*
- [0-9a-f]*: struct A \* .*
- \[0x0\] .*
+ 0x[0-9a-f]*: struct A .*
+ *\[0x0\] \(ID 0x[0-9a-f]*\) \(kind 6\) struct A .*
+ *\[0x0\] \(ID 0x[0-9a-f]*\) \(kind 3\) struct B \* foo .*
+ 0x[0-9a-f]*: struct B .*
+ *\[0x0\] \(ID 0x[0-9a-f]*\) \(kind 6\) struct B .*
+ *\[0x0\] \(ID 0x[0-9a-f]*\) \(kind 3\) struct B \* next .*
+ 0x[0-9a-f]*: struct B \* .*
+ *\[0x0\] .*
+ 0x[0-9a-f]*: struct A \* .*
+ *\[0x0\] .*
Strings:
#...
diff --git a/ld/testsuite/ld-ctf/cross-tu-noncyclic.d b/ld/testsuite/ld-ctf/cross-tu-noncyclic.d
index 418119a..d96e5d2 100644
--- a/ld/testsuite/ld-ctf/cross-tu-noncyclic.d
+++ b/ld/testsuite/ld-ctf/cross-tu-noncyclic.d
@@ -12,7 +12,7 @@
Contents of CTF section .ctf:
Header:
- Magic number: dff2
+ Magic number: 0xdff2
Version: 4 \(CTF_VERSION_3\)
#...
Type section: .* \(0x74 bytes\)
@@ -29,18 +29,18 @@ Contents of CTF section .ctf:
Types:
#...
- [0-9a-f]*: struct A .*
- \[0x0\] \(ID 0x[0-9a-f]*\) \(kind 6\) struct A .*
- \[0x0\] \(ID 0x[0-9a-f]*\) \(kind 1\) long int a:[0-9]* .*
- \[0x[0-9a-f]*\] \(ID 0x[0-9a-f]*\) \(kind 3\) struct B \* foo .*
+ 0x[0-9a-f]*: struct A .*
+ *\[0x0\] \(ID 0x[0-9a-f]*\) \(kind 6\) struct A .*
+ *\[0x0\] \(ID 0x[0-9a-f]*\) \(kind 1\) long int a:[0-9]* .*
+ *\[0x[0-9a-f]*\] \(ID 0x[0-9a-f]*\) \(kind 3\) struct B \* foo .*
#...
- [0-9a-f]*: struct B .*
- \[0x0\] \(ID 0x[0-9a-f]*\) \(kind 6\) struct B .*
- \[0x0\] \(ID 0x[0-9a-f]*\) \(kind 1\) int foo:[0-9]* .*
+ 0x[0-9a-f]*: struct B .*
+ *\[0x0\] \(ID 0x[0-9a-f]*\) \(kind 6\) struct B .*
+ *\[0x0\] \(ID 0x[0-9a-f]*\) \(kind 1\) int foo:[0-9]* .*
#...
- [0-9a-f]*: struct B \* \(size 0x[0-9a-f]*\) -\> [0-9a-f]*: struct B .*
- \[0x0\] \(ID 0x[0-9a-f]*\) \(kind 3\) struct B \* .*
+ 0x[0-9a-f]*: struct B \* \(size 0x[0-9a-f]*\) -> 0x[0-9a-f]*: struct B .*
+ *\[0x0\] \(ID 0x[0-9a-f]*\) \(kind 3\) struct B \* .*
#...
- [0-9a-f]*: struct A \* \(size 0x[0-9a-f]*\) -> [0-9a-f]*: struct A .*
- \[0x0\] \(ID 0x[0-9a-f]*\) \(kind 3\) struct A \* .*
+ 0x[0-9a-f]*: struct A \* \(size 0x[0-9a-f]*\) -> 0x[0-9a-f]*: struct A .*
+ *\[0x0\] \(ID 0x[0-9a-f]*\) \(kind 3\) struct A \* .*
#...
diff --git a/ld/testsuite/ld-ctf/cycle-1.d b/ld/testsuite/ld-ctf/cycle-1.d
index 8e9530b..5787093 100644
--- a/ld/testsuite/ld-ctf/cycle-1.d
+++ b/ld/testsuite/ld-ctf/cycle-1.d
@@ -12,7 +12,7 @@
Contents of CTF section .ctf:
Header:
- Magic number: dff2
+ Magic number: 0xdff2
Version: 4 \(CTF_VERSION_3\)
#...
Type section: .* \(0xa8 bytes\)
@@ -28,9 +28,9 @@ Contents of CTF section .ctf:
#...
Types:
#...
- [0-9a-f]*: struct cycle_1 \(.*
- \[0x0\] \(ID 0x[0-9a-f]*\) \(kind 6\) struct cycle_1 \(.*
- \[0x0\] \(ID 0x[0-9a-f]*\) \(kind 3\) struct A \* a \(.*
- \[0x[0-9a-f]*\] \(ID 0x[0-9a-f]*\) \(kind 3\) struct B \* b \(.*
- \[0x[0-9a-f]*\] \(ID 0x[0-9a-f]*\) \(kind 3\) struct cycle_1 \* next \(.*
+ 0x[0-9a-f]*: struct cycle_1 \(.*
+ *\[0x0\] \(ID 0x[0-9a-f]*\) \(kind 6\) struct cycle_1 \(.*
+ *\[0x0\] \(ID 0x[0-9a-f]*\) \(kind 3\) struct A \* a \(.*
+ *\[0x[0-9a-f]*\] \(ID 0x[0-9a-f]*\) \(kind 3\) struct B \* b \(.*
+ *\[0x[0-9a-f]*\] \(ID 0x[0-9a-f]*\) \(kind 3\) struct cycle_1 \* next \(.*
#...
diff --git a/ld/testsuite/ld-ctf/cycle-2.A.d b/ld/testsuite/ld-ctf/cycle-2.A.d
index a909b90..ddb5381 100644
--- a/ld/testsuite/ld-ctf/cycle-2.A.d
+++ b/ld/testsuite/ld-ctf/cycle-2.A.d
@@ -11,7 +11,7 @@
Contents of CTF section .ctf:
Header:
- Magic number: dff2
+ Magic number: 0xdff2
Version: 4 \(CTF_VERSION_3\)
#...
Type section: .* \(0x6c bytes\)
@@ -25,16 +25,16 @@ Contents of CTF section .ctf:
Variables:
#...
- a -> [0-9a-f]*: struct A \(.*
+ a -> 0x[0-9a-f]*: struct A \(.*
#...
Types:
#...
- [0-9a-f]*: struct A \(.*
- \[0x0\] \(ID 0x[0-9a-f]*\) \(kind 6\) struct A \(.*
- \[0x0\] \(ID 0x[0-9a-f]*\) \(kind 3\) struct B \* b \(.*
+ 0x[0-9a-f]*: struct A \(.*
+ *\[0x0\] \(ID 0x[0-9a-f]*\) \(kind 6\) struct A \(.*
+ *\[0x0\] \(ID 0x[0-9a-f]*\) \(kind 3\) struct B \* b \(.*
#...
Strings:
- 0:
+ 0x0:
#...
- [0-9a-f]*: A
+ 0x[0-9a-f]*: A
#...
diff --git a/ld/testsuite/ld-ctf/cycle-2.B.d b/ld/testsuite/ld-ctf/cycle-2.B.d
index 320e17c..1d1cdc5 100644
--- a/ld/testsuite/ld-ctf/cycle-2.B.d
+++ b/ld/testsuite/ld-ctf/cycle-2.B.d
@@ -11,7 +11,7 @@
Contents of CTF section .ctf:
Header:
- Magic number: dff2
+ Magic number: 0xdff2
Version: 4 \(CTF_VERSION_3\)
#...
Type section: .* \(0x6c bytes\)
@@ -25,16 +25,16 @@ Contents of CTF section .ctf:
Variables:
#...
- b -> [0-9a-f]*: struct B \(.*
+ b -> 0x[0-9a-f]*: struct B \(.*
#...
Types:
#...
- [0-9a-f]*: struct B \(.*
- \[0x0\] \(ID 0x[0-9a-f]*\) \(kind 6\) struct B \(.*
- \[0x0\] \(ID 0x[0-9a-f]*\) \(kind 3\) struct C \* c \(.*
+ 0x[0-9a-f]*: struct B \(.*
+ *\[0x0\] \(ID 0x[0-9a-f]*\) \(kind 6\) struct B \(.*
+ *\[0x0\] \(ID 0x[0-9a-f]*\) \(kind 3\) struct C \* c \(.*
#...
Strings:
- 0:
+ 0x0:
#...
- [0-9a-f]*: B
+ 0x[0-9a-f]*: B
#...
diff --git a/ld/testsuite/ld-ctf/cycle-2.C.d b/ld/testsuite/ld-ctf/cycle-2.C.d
index df43606..4d8f145 100644
--- a/ld/testsuite/ld-ctf/cycle-2.C.d
+++ b/ld/testsuite/ld-ctf/cycle-2.C.d
@@ -11,7 +11,7 @@
Contents of CTF section .ctf:
Header:
- Magic number: dff2
+ Magic number: 0xdff2
Version: 4 \(CTF_VERSION_3\)
#...
Type section: .* \(0x6c bytes\)
@@ -25,16 +25,16 @@ Contents of CTF section .ctf:
Variables:
#...
- c -> [0-9a-f]*: struct C \(.*
+ c -> 0x[0-9a-f]*: struct C \(.*
#...
Types:
#...
- [0-9a-f]*: struct C \(.*
- \[0x0\] \(ID 0x[0-9a-f]*\) \(kind 6\) struct C \(.*
- \[0x0\] \(ID 0x[0-9a-f]*\) \(kind 3\) struct A \* a \(.*
+ 0x[0-9a-f]*: struct C \(.*
+ *\[0x0\] \(ID 0x[0-9a-f]*\) \(kind 6\) struct C \(.*
+ *\[0x0\] \(ID 0x[0-9a-f]*\) \(kind 3\) struct A \* a \(.*
#...
Strings:
- 0:
+ 0x0:
#...
- [0-9a-f]*: C
+ 0x[0-9a-f]*: C
#...
diff --git a/ld/testsuite/ld-ctf/data-func-conflicted.d b/ld/testsuite/ld-ctf/data-func-conflicted.d
index 1fa8bb2..62855f8 100644
--- a/ld/testsuite/ld-ctf/data-func-conflicted.d
+++ b/ld/testsuite/ld-ctf/data-func-conflicted.d
@@ -10,7 +10,7 @@
Contents of CTF section \.ctf:
Header:
- Magic number: dff2
+ Magic number: 0xdff2
Version: 4 \(CTF_VERSION_3\)
#...
Data object section: .* \(0xc bytes\)
@@ -34,7 +34,7 @@ Contents of CTF section \.ctf:
CTF archive member: .*/data-func-1\.c:
Header:
- Magic number: dff2
+ Magic number: 0xdff2
Version: 4 \(CTF_VERSION_3\)
#...
Parent name: \.ctf
@@ -59,5 +59,5 @@ CTF archive member: .*/data-func-1\.c:
Variables:
Types:
- 80000001: foo_t .* -> .* int .*
+ 0x80000001: foo_t .* -> .* int .*
#...
diff --git a/ld/testsuite/ld-ctf/diag-cttname-null.d b/ld/testsuite/ld-ctf/diag-cttname-null.d
index 4523dbc..00db425 100644
--- a/ld/testsuite/ld-ctf/diag-cttname-null.d
+++ b/ld/testsuite/ld-ctf/diag-cttname-null.d
@@ -9,7 +9,7 @@
Contents of CTF section .ctf:
Header:
- Magic number: dff2
+ Magic number: 0xdff2
Version: 4 \(CTF_VERSION_3\)
#...
Data objects:
@@ -17,7 +17,7 @@ Contents of CTF section .ctf:
#...
Types:
#...
- [0-9a-f]*: struct \(.*
- \[0x0\] \(ID 0x[0-9a-f]*\) \(kind 6\) struct \(.*
- \[0x0\] \(ID 0x[0-9a-f]*\) \(kind 3\) struct B \* b \(.*
+ 0x[0-9a-f]*: struct \(.*
+ *\[0x0\] \(ID 0x[0-9a-f]*\) \(kind 6\) struct \(.*
+ *\[0x0\] \(ID 0x[0-9a-f]*\) \(kind 3\) struct B \* b \(.*
#...
diff --git a/ld/testsuite/ld-ctf/diag-cuname.d b/ld/testsuite/ld-ctf/diag-cuname.d
index 45e9a7e..19a4bfd 100644
--- a/ld/testsuite/ld-ctf/diag-cuname.d
+++ b/ld/testsuite/ld-ctf/diag-cuname.d
@@ -9,7 +9,7 @@
Contents of CTF section .ctf:
Header:
- Magic number: dff2
+ Magic number: 0xdff2
Version: 4 \(CTF_VERSION_3\)
#...
Compilation unit name: \(\?\)
@@ -29,12 +29,12 @@ Contents of CTF section .ctf:
Types:
#...
- [0-9a-f]*: struct A \(.*
- \[0x0\] \(ID 0x[0-9a-f]*\) \(kind 6\) struct A \(.*
- \[0x0\] \(ID 0x[0-9a-f]*\) \(kind 3\) struct B \* b \(.*
+ 0x[0-9a-f]*: struct A \(.*
+ *\[0x0\] \(ID 0x[0-9a-f]*\) \(kind 6\) struct A \(.*
+ *\[0x0\] \(ID 0x[0-9a-f]*\) \(kind 3\) struct B \* b \(.*
#...
Strings:
- 0:
+ 0x0:
#...
- [0-9a-f]*: \(\?\)
+ 0x[0-9a-f]*: \(\?\)
#...
diff --git a/ld/testsuite/ld-ctf/diag-parlabel.d b/ld/testsuite/ld-ctf/diag-parlabel.d
index f0f4024..b2b047c 100644
--- a/ld/testsuite/ld-ctf/diag-parlabel.d
+++ b/ld/testsuite/ld-ctf/diag-parlabel.d
@@ -9,7 +9,7 @@
Contents of CTF section .ctf:
Header:
- Magic number: dff2
+ Magic number: 0xdff2
Version: 4 \(CTF_VERSION_3\)
#...
Compilation unit name: .*A.c
@@ -28,12 +28,12 @@ Contents of CTF section .ctf:
Types:
#...
- [0-9a-f]*: struct A \(.*
- \[0x0\] \(ID 0x[0-9a-f]*\) \(kind 6\) struct A \(.*
- \[0x0\] \(ID 0x[0-9a-f]*\) \(kind 3\) struct B \* b \(.*
+ 0x[0-9a-f]*: struct A \(.*
+ *\[0x0\] \(ID 0x[0-9a-f]*\) \(kind 6\) struct A \(.*
+ *\[0x0\] \(ID 0x[0-9a-f]*\) \(kind 3\) struct B \* b \(.*
#...
Strings:
- 0:
+ 0x0:
#...
- [0-9a-f]*: A
+ 0x[0-9a-f]*: A
#...
diff --git a/ld/testsuite/ld-ctf/diag-wrong-magic-number-mixed.d b/ld/testsuite/ld-ctf/diag-wrong-magic-number-mixed.d
index cb39498..8fc1cc8 100644
--- a/ld/testsuite/ld-ctf/diag-wrong-magic-number-mixed.d
+++ b/ld/testsuite/ld-ctf/diag-wrong-magic-number-mixed.d
@@ -10,7 +10,7 @@
Contents of CTF section .ctf:
Header:
- Magic number: dff2
+ Magic number: 0xdff2
Version: 4 \(CTF_VERSION_3\)
#...
Variable section: 0x0 -- 0x17 \(0x18 bytes\)
@@ -25,16 +25,16 @@ Contents of CTF section .ctf:
Variables:
#...
- b -> [0-9a-f]*: struct B \(.*
+ b -> 0x[0-9a-f]*: struct B \(.*
#...
Types:
#...
- [0-9a-f]*: struct B \(.*
- \[0x0\] \(ID 0x[0-9a-f]*\) \(kind 6\) struct B \(.*
- \[0x0\] \(ID 0x[0-9a-f]*\) \(kind 3\) struct C \* c \(.*
+ 0x[0-9a-f]*: struct B \(.*
+ *\[0x0\] \(ID 0x[0-9a-f]*\) \(kind 6\) struct B \(.*
+ *\[0x0\] \(ID 0x[0-9a-f]*\) \(kind 3\) struct C \* c \(.*
#...
Strings:
- 0:
+ 0x0:
#...
- [0-9a-f]*: B
+ 0x[0-9a-f]*: B
#...
diff --git a/ld/testsuite/ld-ctf/function.d b/ld/testsuite/ld-ctf/function.d
index f5303d7..241adc2 100644
--- a/ld/testsuite/ld-ctf/function.d
+++ b/ld/testsuite/ld-ctf/function.d
@@ -9,7 +9,7 @@
Contents of CTF section .ctf:
Header:
- Magic number: dff2
+ Magic number: 0xdff2
Version: 4 \(CTF_VERSION_3\)
#...
Compilation unit name: .*function.c
@@ -22,6 +22,6 @@ Contents of CTF section .ctf:
#...
Types:
#...
- [0-9a-f]*: int \(\*\) \(char, int, float, void \*, void \(\*\)\(\*\) \(int\)\) \(size 0x0\)
- \[0x0\] \(ID 0x[0-9a-f]*\) \(kind 5\) int \(\*\) \(char, int[0-9]*, float, void \*, void \(\*\)\(\*\) \(int\)\) \(aligned at 0x[0-9a-f]*\)
+ 0x[0-9a-f]*: int \(\*\) \(char, int, float, void \*, void \(\*\)\(\*\) \(int\)\) \(size 0x0\)
+ *\[0x0\] \(ID 0x[0-9a-f]*\) \(kind 5\) int \(\*\) \(char, int[0-9]*, float, void \*, void \(\*\)\(\*\) \(int\)\) \(aligned at 0x[0-9a-f]*\)
#...
diff --git a/ld/testsuite/ld-ctf/slice.d b/ld/testsuite/ld-ctf/slice.d
index b493ce0..e42ffdf 100644
--- a/ld/testsuite/ld-ctf/slice.d
+++ b/ld/testsuite/ld-ctf/slice.d
@@ -9,7 +9,7 @@
Contents of CTF section .ctf:
Header:
- Magic number: dff2
+ Magic number: 0xdff2
Version: 4 \(CTF_VERSION_3\)
#...
Compilation unit name: .*slice.c
@@ -23,10 +23,10 @@ Contents of CTF section .ctf:
#...
Types:
#...
- [0-9a-f]*: struct slices \(size 0x[0-9a-f]*\)
- \[0x0\] \(ID 0x[0-9a-f]*\) \(kind 6\) struct slices \(aligned at 0x1\)
- \[0x0\] \(ID 0x[0-9a-f]*\) \(kind 1\) int one:1 \(aligned at 0x1, format 0x1, offset:bits 0x0:0x1\)
- \[0x1\] \(ID 0x[0-9a-f]*\) \(kind 1\) int two:2 \(aligned at 0x1, format 0x1, offset:bits 0x1:0x2\)
- \[0x3\] \(ID 0x[0-9a-f]*\) \(kind 1\) int six:6 \(aligned at 0x1, format 0x1, offset:bits 0x3:0x6\)
- \[0x9\] \(ID 0x[0-9a-f]*\) \(kind 1\) int ten:10 \(aligned at 0x2, format 0x1, offset:bits 0x9:0xa\)
+ 0x[0-9a-f]*: struct slices \(size 0x[0-9a-f]*\)
+ *\[0x0\] \(ID 0x[0-9a-f]*\) \(kind 6\) struct slices \(aligned at 0x1\)
+ *\[0x0\] \(ID 0x[0-9a-f]*\) \(kind 1\) int one:1 \(aligned at 0x1, format 0x1, offset:bits 0x0:0x1\)
+ *\[0x1\] \(ID 0x[0-9a-f]*\) \(kind 1\) int two:2 \(aligned at 0x1, format 0x1, offset:bits 0x1:0x2\)
+ *\[0x3\] \(ID 0x[0-9a-f]*\) \(kind 1\) int six:6 \(aligned at 0x1, format 0x1, offset:bits 0x3:0x6\)
+ *\[0x9\] \(ID 0x[0-9a-f]*\) \(kind 1\) int ten:10 \(aligned at 0x2, format 0x1, offset:bits 0x9:0xa\)
#...
diff --git a/ld/testsuite/ld-ctf/super-sub-cycles.d b/ld/testsuite/ld-ctf/super-sub-cycles.d
index e4707d3..65a43a4 100644
--- a/ld/testsuite/ld-ctf/super-sub-cycles.d
+++ b/ld/testsuite/ld-ctf/super-sub-cycles.d
@@ -9,7 +9,7 @@
Contents of CTF section .ctf:
Header:
- Magic number: dff2
+ Magic number: 0xdff2
Version: 4 \(CTF_VERSION_3\)
#...
Compilation unit name: .*super-sub-cycles.c
@@ -18,18 +18,18 @@ Contents of CTF section .ctf:
#...
Types:
#...
- [0-9a-f]*: struct A \(.*
- \[0x0\] \(ID 0x[0-9a-f]*\) \(kind 6\) struct A \(.*
- \[0x0\] \(ID 0x[0-9a-f]*\) \(kind 6\) struct B b \(.*
- \[0x0\] \(ID 0x[0-9a-f]*\) \(kind 6\) struct C c \(.*
- \[0x0\] \(ID 0x[0-9a-f]*\) \(kind 3\) struct A \* a \(.*
- \[0x[0-9a-f]*\] \(ID 0x[0-9a-f]*\) \(kind 6\) struct D d \(.*
- \[0x[0-9a-f]*\] \(ID 0x[0-9a-f]*\) \(kind 3\) struct B \* b \(.*
- \[0x[0-9a-f]*\] \(ID 0x[0-9a-f]*\) \(kind 6\) struct D d \(.*
- \[0x[0-9a-f]*\] \(ID 0x[0-9a-f]*\) \(kind 3\) struct B \* b \(.*
- \[0x[0-9a-f]*\] \(ID 0x[0-9a-f]*\) \(kind 6\) struct X x \(.*
- \[0x[0-9a-f]*\] \(ID 0x[0-9a-f]*\) \(kind 6\) struct Y y \(.*
- \[0x[0-9a-f]*\] \(ID 0x[0-9a-f]*\) \(kind 6\) struct Z z \(.*
- \[0x[0-9a-f]*\] \(ID 0x[0-9a-f]*\) \(kind 3\) struct Y \* y \(.*
- \[0x[0-9a-f]*\] \(ID 0x[0-9a-f]*\) \(kind 3\) struct D \* d \(.*
+ 0x[0-9a-f]*: struct A \(.*
+ *\[0x0\] \(ID 0x[0-9a-f]*\) \(kind 6\) struct A \(.*
+ *\[0x0\] \(ID 0x[0-9a-f]*\) \(kind 6\) struct B b \(.*
+ *\[0x0\] \(ID 0x[0-9a-f]*\) \(kind 6\) struct C c \(.*
+ *\[0x0\] \(ID 0x[0-9a-f]*\) \(kind 3\) struct A \* a \(.*
+ *\[0x[0-9a-f]*\] \(ID 0x[0-9a-f]*\) \(kind 6\) struct D d \(.*
+ *\[0x[0-9a-f]*\] \(ID 0x[0-9a-f]*\) \(kind 3\) struct B \* b \(.*
+ *\[0x[0-9a-f]*\] \(ID 0x[0-9a-f]*\) \(kind 6\) struct D d \(.*
+ *\[0x[0-9a-f]*\] \(ID 0x[0-9a-f]*\) \(kind 3\) struct B \* b \(.*
+ *\[0x[0-9a-f]*\] \(ID 0x[0-9a-f]*\) \(kind 6\) struct X x \(.*
+ *\[0x[0-9a-f]*\] \(ID 0x[0-9a-f]*\) \(kind 6\) struct Y y \(.*
+ *\[0x[0-9a-f]*\] \(ID 0x[0-9a-f]*\) \(kind 6\) struct Z z \(.*
+ *\[0x[0-9a-f]*\] \(ID 0x[0-9a-f]*\) \(kind 3\) struct Y \* y \(.*
+ *\[0x[0-9a-f]*\] \(ID 0x[0-9a-f]*\) \(kind 3\) struct D \* d \(.*
#...
diff --git a/libctf/ChangeLog b/libctf/ChangeLog
index cc8e34a..99f9022 100644
--- a/libctf/ChangeLog
+++ b/libctf/ChangeLog
@@ -1,5 +1,17 @@
2021-01-05 Nick Alcock <nick.alcock@oracle.com>
+ * ctf-dump.c (ctf_dump_format_type): Add 0x to hex type IDs.
+ (ctf_dump_header): Add 0x to the hex magic number.
+ (ctf_dump_str): Add 0x to the hex string offsets.
+ (ctf_dump_membstate_t) <cdm_toplevel_indent>: New.
+ (ctf_dump_type): Adjust. Free it when we're done.
+ (type_hex_digits): New.
+ (ctf_dump_member): Align output depending on the width of the type
+ ID being generated. Use printf padding, not a loop, to generate
+ indentation.
+
+2021-01-05 Nick Alcock <nick.alcock@oracle.com>
+
* ctf-decl.c (ctf_decl_push): Don't print array decls backwards.
2021-01-04 Nicolas Boulenguez <nicolas@debian.org>
diff --git a/libctf/ctf-dump.c b/libctf/ctf-dump.c
index 621ff25..ee22f77 100644
--- a/libctf/ctf-dump.c
+++ b/libctf/ctf-dump.c
@@ -47,6 +47,7 @@ typedef struct ctf_dump_membstate
{
char **cdm_str;
ctf_dict_t *cdm_fp;
+ char *cdm_toplevel_indent;
} ctf_dump_membstate_t;
static int
@@ -115,7 +116,7 @@ ctf_dump_format_type (ctf_dict_t *fp, ctf_id_t id, int flag)
goto err;
}
- if (asprintf (&bit, " %s%lx: ", nonroot_leader, id) < 0)
+ if (asprintf (&bit, " %s0x%lx: ", nonroot_leader, id) < 0)
goto oom;
str = str_append (str, bit);
free (bit);
@@ -236,7 +237,7 @@ ctf_dump_header (ctf_dict_t *fp, ctf_dump_state_t *state)
};
const char *verstr = NULL;
- if (asprintf (&str, "Magic number: %x\n", hp->cth_magic) < 0)
+ if (asprintf (&str, "Magic number: 0x%x\n", hp->cth_magic) < 0)
goto err;
ctf_dump_append (state, str);
@@ -454,26 +455,51 @@ ctf_dump_var (const char *name, ctf_id_t type, void *arg)
return 0;
}
+/* Report the number of digits in the hexadecimal representation of a type
+ ID. */
+
+static int
+type_hex_digits (ctf_id_t id)
+{
+ int i = 0;
+
+ if (id == 0)
+ return 1;
+
+ for (; id > 0; id >>= 4, i++);
+ return i;
+}
+
/* Dump a single member into the string in the membstate. */
static int
ctf_dump_member (const char *name, ctf_id_t id, unsigned long offset,
- int depth, void *arg)
+ int depth, void *arg)
{
ctf_dump_membstate_t *state = arg;
char *typestr = NULL;
char *bit = NULL;
ctf_encoding_t ep;
int has_encoding = 0;
- ssize_t i;
- for (i = 0; i < depth; i++)
- *state->cdm_str = str_append (*state->cdm_str, " ");
+ /* Align neatly. */
+
+ if (depth == 0)
+ {
+ if (asprintf (&state->cdm_toplevel_indent, " %*s",
+ type_hex_digits (id), "") < 0)
+ goto oom;
+ }
+
+ if (asprintf (&bit, "%s%*s", state->cdm_toplevel_indent, depth * 4, "") < 0)
+ goto oom;
+ *state->cdm_str = str_append (*state->cdm_str, bit);
+ free (bit);
if ((typestr = ctf_type_aname (state->cdm_fp, id)) == NULL)
{
if (id == 0 || ctf_errno (state->cdm_fp) == ECTF_NONREPRESENTABLE)
{
- if (asprintf (&bit, " [0x%lx] (type not represented in CTF)",
+ if (asprintf (&bit, "[0x%lx] (type not represented in CTF)",
offset) < 0)
goto oom;
@@ -491,7 +517,7 @@ ctf_dump_member (const char *name, ctf_id_t id, unsigned long offset,
has_encoding = 1;
ctf_type_encoding (state->cdm_fp, id, &ep);
- if (asprintf (&bit, " [0x%lx] (ID 0x%lx) (kind %i) %s%s%s:%i "
+ if (asprintf (&bit, "[0x%lx] (ID 0x%lx) (kind %i) %s%s%s:%i "
"(aligned at 0x%lx", offset, id,
ctf_type_kind (state->cdm_fp, id), typestr,
(name[0] != 0 && typestr[0] != 0) ? " " : "", name,
@@ -501,7 +527,7 @@ ctf_dump_member (const char *name, ctf_id_t id, unsigned long offset,
}
else
{
- if (asprintf (&bit, " [0x%lx] (ID 0x%lx) (kind %i) %s%s%s "
+ if (asprintf (&bit, "[0x%lx] (ID 0x%lx) (kind %i) %s%s%s "
"(aligned at 0x%lx", offset, id,
ctf_type_kind (state->cdm_fp, id), typestr,
(name[0] != 0 && typestr[0] != 0) ? " " : "", name,
@@ -540,7 +566,7 @@ ctf_dump_type (ctf_id_t id, int flag, void *arg)
{
char *str;
ctf_dump_state_t *state = arg;
- ctf_dump_membstate_t membstate = { &str, state->cds_fp };
+ ctf_dump_membstate_t membstate = { &str, state->cds_fp, NULL };
size_t len;
if ((str = ctf_dump_format_type (state->cds_fp, id, flag)) == NULL)
@@ -558,6 +584,7 @@ ctf_dump_type (ctf_id_t id, int flag, void *arg)
_("cannot visit members dumping type 0x%lx"), id);
goto err;
}
+ free (membstate.cdm_toplevel_indent);
/* Trim off the last linefeed added by ctf_dump_member(). */
len = strlen (str);
@@ -568,6 +595,7 @@ ctf_dump_type (ctf_id_t id, int flag, void *arg)
return 0;
err:
+ free (membstate.cdm_toplevel_indent);
free (str);
return 0; /* Swallow the error. */
}
@@ -583,7 +611,7 @@ ctf_dump_str (ctf_dict_t *fp, ctf_dump_state_t *state)
fp->ctf_str[CTF_STRTAB_0].cts_len;)
{
char *str;
- if (asprintf (&str, "%lx: %s",
+ if (asprintf (&str, "0x%lx: %s",
(unsigned long) (s - fp->ctf_str[CTF_STRTAB_0].cts_strs),
s) < 0)
return (ctf_set_errno (fp, errno));