Skip to content

Commit a1303cc

Browse files
debuginfo: Removed some test relying on data structure sizes hard to predict for all possible platforms and configurations.
1 parent b52eb4a commit a1303cc

File tree

2 files changed

+23
-19
lines changed

2 files changed

+23
-19
lines changed

src/test/debug-info/packed-struct.rs

+3-11
Original file line numberDiff line numberDiff line change
@@ -34,14 +34,6 @@
3434
// debugger:print sizeof(packedInPacked)
3535
// check:$6 = 40
3636

37-
// debugger:print sizeof(packedInUnpacked)
38-
// check:$7 = 48
39-
40-
// debugger:print sizeof(unpackedInPacked)
41-
// check:$8 = 58
42-
43-
44-
4537
#[packed]
4638
struct Packed {
4739
x: i16,
@@ -57,23 +49,23 @@ struct PackedInPacked {
5749
d: Packed
5850
}
5951

60-
// layout: aaaa bbbb bbbb bbbb bb.. .... cccc cccc dddd dddd dddd dd..
52+
// layout (64 bit): aaaa bbbb bbbb bbbb bb.. .... cccc cccc dddd dddd dddd dd..
6153
struct PackedInUnpacked {
6254
a: i32,
6355
b: Packed,
6456
c: i64,
6557
d: Packed
6658
}
6759

68-
// layout: xx.. yyyy zz.. .... wwww wwww
60+
// layout (64 bit): xx.. yyyy zz.. .... wwww wwww
6961
struct Unpacked {
7062
x: i16,
7163
y: i32,
7264
z: i16,
7365
w: i64
7466
}
7567

76-
// layout: aabb bbbb bbbb bbbb bbbb bbbb bbcc cccc cccc cccc cccc cccc ccdd dddd dd
68+
// layout (64 bit): aabb bbbb bbbb bbbb bbbb bbbb bbcc cccc cccc cccc cccc cccc ccdd dddd dd
7769
#[packed]
7870
struct UnpackedInPacked {
7971
a: i16,

src/test/debug-info/struct-with-destructor.rs

+20-8
Original file line numberDiff line numberDiff line change
@@ -26,10 +26,6 @@
2626
// debugger:print nested
2727
// check:$4 = {a = {a = {x = 7890, y = 9870}}}
2828

29-
// debugger:print sizeof(nested)
30-
// check:$5 = 32
31-
32-
3329
struct NoDestructor {
3430
x: i32,
3531
y: i64
@@ -84,6 +80,8 @@ fn main() {
8480
// then the debugger will have an invalid offset for the field 'guard' and thus should not be
8581
// able to read its value correctly (dots are padding bytes, D is the boolean destructor flag):
8682
//
83+
// 64 bit
84+
//
8785
// NoDestructorGuarded = 0000....00000000FFFFFFFF
8886
// <--------------><------>
8987
// NoDestructor guard
@@ -96,15 +94,29 @@ fn main() {
9694
// <----------------------><------> // How it actually is
9795
// WithDestructor guard
9896
//
97+
// 32 bit
98+
//
99+
// NoDestructorGuarded = 000000000000FFFFFFFF
100+
// <----------><------>
101+
// NoDestructor guard
102+
//
103+
//
104+
// withDestructorGuarded = 000000000000D...FFFFFFFF
105+
// <----------><------> // How debug info says it is
106+
// WithDestructor guard
107+
//
108+
// <--------------><------> // How it actually is
109+
// WithDestructor guard
110+
//
99111
let withDestructor = WithDestructorGuarded {
100112
a: WithDestructor { x: 10, y: 20 },
101113
guard: -1
102114
};
103115

104-
// expected layout = xxxx....yyyyyyyyD.......D...
105-
// <--WithDestructor------>
106-
// <-------NestedInner-------->
107-
// <-------NestedOuter-------->
116+
// expected layout (64 bit) = xxxx....yyyyyyyyD.......D...
117+
// <--WithDestructor------>
118+
// <-------NestedInner-------->
119+
// <-------NestedOuter-------->
108120
let nested = NestedOuter { a: NestedInner { a: WithDestructor { x: 7890, y: 9870 } } };
109121

110122
zzz();

0 commit comments

Comments
 (0)