Lines Matching +full:0 +full:x64
4 // RUN: | FileCheck %s -check-prefix CHECK-X64
10 A4() : a(0xf00000a4) {} in A4()
15 B4() : a(0xf00000b4) {} in B4()
20 C4() : a(0xf00000c4) {} in C4()
26 A16() : a(0xf0000a16) {} in A16()
31 C16() : a(0xf0000c16) {} in C16()
37 TestF0() : a(0xf00000F0) {} in TestF0()
43 // CHECK-NEXT: 0 | struct TestF0
44 // CHECK-NEXT: 0 | struct A4 (base)
45 // CHECK-NEXT: 0 | int a
52 // CHECK-X64: *** Dumping AST Record Layout
53 // CHECK-X64: *** Dumping AST Record Layout
54 // CHECK-X64: *** Dumping AST Record Layout
55 // CHECK-X64-NEXT: 0 | struct TestF0
56 // CHECK-X64-NEXT: 0 | struct A4 (base)
57 // CHECK-X64-NEXT: 0 | int a
58 // CHECK-X64-NEXT: 8 | (TestF0 vbtable pointer)
59 // CHECK-X64-NEXT: 16 | int a
60 // CHECK-X64-NEXT: 24 | struct B4 (virtual base)
61 // CHECK-X64-NEXT: 24 | int a
62 // CHECK-X64-NEXT: | [sizeof=32, align=8
63 // CHECK-X64-NEXT: | nvsize=24, nvalign=8]
67 TestF1() : a(0xf00000f1) {} in TestF1()
72 // CHECK-NEXT: 0 | struct TestF1
73 // CHECK-NEXT: 0 | struct A4 (base)
74 // CHECK-NEXT: 0 | int a
81 // CHECK-X64: *** Dumping AST Record Layout
82 // CHECK-X64: *** Dumping AST Record Layout
83 // CHECK-X64-NEXT: 0 | struct TestF1
84 // CHECK-X64-NEXT: 0 | struct A4 (base)
85 // CHECK-X64-NEXT: 0 | int a
86 // CHECK-X64-NEXT: 8 | (TestF1 vbtable pointer)
87 // CHECK-X64-NEXT: 16 | int a
88 // CHECK-X64-NEXT: 32 | struct A16 (virtual base)
89 // CHECK-X64-NEXT: 32 | int a
90 // CHECK-X64-NEXT: | [sizeof=48, align=16
91 // CHECK-X64-NEXT: | nvsize=24, nvalign=16]
95 TestF2() : a(0xf00000f2) {} in TestF2()
100 // CHECK-NEXT: 0 | struct TestF2
101 // CHECK-NEXT: 0 | struct A4 (base)
102 // CHECK-NEXT: 0 | int a
110 // CHECK-X64: *** Dumping AST Record Layout
111 // CHECK-X64: *** Dumping AST Record Layout
112 // CHECK-X64-NEXT: 0 | struct TestF2
113 // CHECK-X64-NEXT: 0 | struct A4 (base)
114 // CHECK-X64-NEXT: 0 | int a
115 // CHECK-X64-NEXT: 8 | (TestF2 vbtable pointer)
116 // CHECK-X64-NEXT: 16 | int a
117 // CHECK-X64-NEXT: 24 | struct C4 (virtual base)
118 // CHECK-X64-NEXT: 24 | (C4 vftable pointer)
119 // CHECK-X64-NEXT: 32 | int a
120 // CHECK-X64-NEXT: | [sizeof=40, align=8
121 // CHECK-X64-NEXT: | nvsize=24, nvalign=8]
125 TestF3() : a(0xf00000f3) {} in TestF3()
130 // CHECK-NEXT: 0 | struct TestF3
131 // CHECK-NEXT: 0 | struct A4 (base)
132 // CHECK-NEXT: 0 | int a
140 // CHECK-X64: *** Dumping AST Record Layout
141 // CHECK-X64: *** Dumping AST Record Layout
142 // CHECK-X64-NEXT: 0 | struct TestF3
143 // CHECK-X64-NEXT: 0 | struct A4 (base)
144 // CHECK-X64-NEXT: 0 | int a
145 // CHECK-X64-NEXT: 8 | (TestF3 vbtable pointer)
146 // CHECK-X64-NEXT: 16 | int a
147 // CHECK-X64-NEXT: 32 | struct C16 (virtual base)
148 // CHECK-X64-NEXT: 32 | (C16 vftable pointer)
149 // CHECK-X64-NEXT: 48 | int a
150 // CHECK-X64-NEXT: | [sizeof=64, align=16
151 // CHECK-X64-NEXT: | nvsize=24, nvalign=16]
155 TestF4() : a(0xf00000f4) {} in TestF4()
159 // CHECK-NEXT: 0 | struct TestF4
160 // CHECK-NEXT: 0 | struct TestF3 (base)
161 // CHECK-NEXT: 0 | struct A4 (base)
162 // CHECK-NEXT: 0 | int a
173 // CHECK-X64: *** Dumping AST Record Layout
174 // CHECK-X64-NEXT: 0 | struct TestF4
175 // CHECK-X64-NEXT: 0 | struct TestF3 (base)
176 // CHECK-X64-NEXT: 0 | struct A4 (base)
177 // CHECK-X64-NEXT: 0 | int a
178 // CHECK-X64-NEXT: 8 | (TestF3 vbtable pointer)
179 // CHECK-X64-NEXT: 16 | int a
180 // CHECK-X64-NEXT: 24 | struct A4 (base)
181 // CHECK-X64-NEXT: 24 | int a
182 // CHECK-X64-NEXT: 28 | int a
183 // CHECK-X64-NEXT: 32 | struct C16 (virtual base)
184 // CHECK-X64-NEXT: 32 | (C16 vftable pointer)
185 // CHECK-X64-NEXT: 48 | int a
186 // CHECK-X64-NEXT: | [sizeof=64, align=16
187 // CHECK-X64-NEXT: | nvsize=32, nvalign=16]
191 TestF5() : a(0xf00000f5) {} in TestF5()
196 // CHECK-NEXT: 0 | struct TestF5
197 // CHECK-NEXT: 0 | (TestF5 vftable pointer)
211 // CHECK-X64: *** Dumping AST Record Layout
212 // CHECK-X64-NEXT: 0 | struct TestF5
213 // CHECK-X64-NEXT: 0 | (TestF5 vftable pointer)
214 // CHECK-X64-NEXT: 16 | struct TestF3 (base)
215 // CHECK-X64-NEXT: 16 | struct A4 (base)
216 // CHECK-X64-NEXT: 16 | int a
217 // CHECK-X64-NEXT: 24 | (TestF3 vbtable pointer)
218 // CHECK-X64-NEXT: 32 | int a
219 // CHECK-X64-NEXT: 40 | struct A4 (base)
220 // CHECK-X64-NEXT: 40 | int a
221 // CHECK-X64-NEXT: 44 | int a
222 // CHECK-X64-NEXT: 48 | struct C16 (virtual base)
223 // CHECK-X64-NEXT: 48 | (C16 vftable pointer)
224 // CHECK-X64-NEXT: 64 | int a
225 // CHECK-X64-NEXT: | [sizeof=80, align=16
226 // CHECK-X64-NEXT: | nvsize=48, nvalign=16]
230 TestF6() : a(0xf00000f6) {} in TestF6()
235 // CHECK-NEXT: 0 | struct TestF6
236 // CHECK-NEXT: 0 | struct TestF3 (base)
237 // CHECK-NEXT: 0 | struct A4 (base)
238 // CHECK-NEXT: 0 | int a
250 // CHECK-X64: *** Dumping AST Record Layout
251 // CHECK-X64-NEXT: 0 | struct TestF6
252 // CHECK-X64-NEXT: 0 | struct TestF3 (base)
253 // CHECK-X64-NEXT: 0 | struct A4 (base)
254 // CHECK-X64-NEXT: 0 | int a
255 // CHECK-X64-NEXT: 8 | (TestF3 vbtable pointer)
256 // CHECK-X64-NEXT: 16 | int a
257 // CHECK-X64-NEXT: 24 | struct A4 (base)
258 // CHECK-X64-NEXT: 24 | int a
259 // CHECK-X64-NEXT: 28 | int a
260 // CHECK-X64-NEXT: 44 | (vtordisp for vbase C16)
261 // CHECK-X64-NEXT: 48 | struct C16 (virtual base)
262 // CHECK-X64-NEXT: 48 | (C16 vftable pointer)
263 // CHECK-X64-NEXT: 64 | int a
264 // CHECK-X64-NEXT: | [sizeof=80, align=16
265 // CHECK-X64-NEXT: | nvsize=32, nvalign=16]
269 TestF7() : a(0xf00000f7) {} in TestF7()
274 // CHECK-NEXT: 0 | struct TestF7
275 // CHECK-NEXT: 0 | struct A4 (base)
276 // CHECK-NEXT: 0 | int a
285 // CHECK-X64: *** Dumping AST Record Layout
286 // CHECK-X64-NEXT: 0 | struct TestF7
287 // CHECK-X64-NEXT: 0 | struct A4 (base)
288 // CHECK-X64-NEXT: 0 | int a
289 // CHECK-X64-NEXT: 8 | (TestF7 vbtable pointer)
290 // CHECK-X64-NEXT: 16 | int a
291 // CHECK-X64-NEXT: 44 | (vtordisp for vbase C16)
292 // CHECK-X64-NEXT: 48 | struct C16 (virtual base)
293 // CHECK-X64-NEXT: 48 | (C16 vftable pointer)
294 // CHECK-X64-NEXT: 64 | int a
295 // CHECK-X64-NEXT: | [sizeof=80, align=16
296 // CHECK-X64-NEXT: | nvsize=24, nvalign=16]
300 TestF8() : a(0xf00000f8) {} in TestF8()
305 // CHECK-NEXT: 0 | struct TestF8
306 // CHECK-NEXT: 0 | struct TestF7 (base)
307 // CHECK-NEXT: 0 | struct A4 (base)
308 // CHECK-NEXT: 0 | int a
320 // CHECK-X64: *** Dumping AST Record Layout
321 // CHECK-X64-NEXT: 0 | struct TestF8
322 // CHECK-X64-NEXT: 0 | struct TestF7 (base)
323 // CHECK-X64-NEXT: 0 | struct A4 (base)
324 // CHECK-X64-NEXT: 0 | int a
325 // CHECK-X64-NEXT: 8 | (TestF7 vbtable pointer)
326 // CHECK-X64-NEXT: 16 | int a
327 // CHECK-X64-NEXT: 24 | struct A4 (base)
328 // CHECK-X64-NEXT: 24 | int a
329 // CHECK-X64-NEXT: 28 | int a
330 // CHECK-X64-NEXT: 44 | (vtordisp for vbase C16)
331 // CHECK-X64-NEXT: 48 | struct C16 (virtual base)
332 // CHECK-X64-NEXT: 48 | (C16 vftable pointer)
333 // CHECK-X64-NEXT: 64 | int a
334 // CHECK-X64-NEXT: | [sizeof=80, align=16
335 // CHECK-X64-NEXT: | nvsize=32, nvalign=16]
339 TestF9() : a(0xf00000f9) {} in TestF9()
344 // CHECK-NEXT: 0 | struct TestF9
345 // CHECK-NEXT: 0 | (TestF9 vftable pointer)
355 // CHECK-X64: *** Dumping AST Record Layout
356 // CHECK-X64-NEXT: 0 | struct TestF9
357 // CHECK-X64-NEXT: 0 | (TestF9 vftable pointer)
358 // CHECK-X64-NEXT: 8 | struct A4 (base)
359 // CHECK-X64-NEXT: 8 | int a
360 // CHECK-X64-NEXT: 16 | (TestF9 vbtable pointer)
361 // CHECK-X64-NEXT: 24 | int a
362 // CHECK-X64-NEXT: 32 | struct C16 (virtual base)
363 // CHECK-X64-NEXT: 32 | (C16 vftable pointer)
364 // CHECK-X64-NEXT: 48 | int a
365 // CHECK-X64-NEXT: | [sizeof=64, align=16
366 // CHECK-X64-NEXT: | nvsize=32, nvalign=16]
370 TestFA() : a(0xf00000fa) {} in TestFA()
375 // CHECK-NEXT: 0 | struct TestFA
376 // CHECK-NEXT: 0 | struct TestF9 (primary base)
377 // CHECK-NEXT: 0 | (TestF9 vftable pointer)
390 // CHECK-X64: *** Dumping AST Record Layout
391 // CHECK-X64-NEXT: 0 | struct TestFA
392 // CHECK-X64-NEXT: 0 | struct TestF9 (primary base)
393 // CHECK-X64-NEXT: 0 | (TestF9 vftable pointer)
394 // CHECK-X64-NEXT: 8 | struct A4 (base)
395 // CHECK-X64-NEXT: 8 | int a
396 // CHECK-X64-NEXT: 16 | (TestF9 vbtable pointer)
397 // CHECK-X64-NEXT: 24 | int a
398 // CHECK-X64-NEXT: 32 | struct A4 (base)
399 // CHECK-X64-NEXT: 32 | int a
400 // CHECK-X64-NEXT: 36 | int a
401 // CHECK-X64-NEXT: 48 | struct C16 (virtual base)
402 // CHECK-X64-NEXT: 48 | (C16 vftable pointer)
403 // CHECK-X64-NEXT: 64 | int a
404 // CHECK-X64-NEXT: | [sizeof=80, align=16
405 // CHECK-X64-NEXT: | nvsize=48, nvalign=16]
409 TestFB() : a(0xf00000fb) {} in TestFB()
414 // CHECK-NEXT: 0 | struct TestFB
415 // CHECK-NEXT: 0 | (TestFB vftable pointer)
425 // CHECK-X64: *** Dumping AST Record Layout
426 // CHECK-X64-NEXT: 0 | struct TestFB
427 // CHECK-X64-NEXT: 0 | (TestFB vftable pointer)
428 // CHECK-X64-NEXT: 16 | struct A16 (base)
429 // CHECK-X64-NEXT: 16 | int a
430 // CHECK-X64-NEXT: 32 | (TestFB vbtable pointer)
431 // CHECK-X64-NEXT: 48 | int a
432 // CHECK-X64-NEXT: 64 | struct C16 (virtual base)
433 // CHECK-X64-NEXT: 64 | (C16 vftable pointer)
434 // CHECK-X64-NEXT: 80 | int a
435 // CHECK-X64-NEXT: | [sizeof=96, align=16
436 // CHECK-X64-NEXT: | nvsize=64, nvalign=16]
440 TestFC() : a(0xf00000fc) {} in TestFC()
445 // CHECK-NEXT: 0 | struct TestFC
446 // CHECK-NEXT: 0 | struct TestFB (primary base)
447 // CHECK-NEXT: 0 | (TestFB vftable pointer)
460 // CHECK-X64: *** Dumping AST Record Layout
461 // CHECK-X64-NEXT: 0 | struct TestFC
462 // CHECK-X64-NEXT: 0 | struct TestFB (primary base)
463 // CHECK-X64-NEXT: 0 | (TestFB vftable pointer)
464 // CHECK-X64-NEXT: 16 | struct A16 (base)
465 // CHECK-X64-NEXT: 16 | int a
466 // CHECK-X64-NEXT: 32 | (TestFB vbtable pointer)
467 // CHECK-X64-NEXT: 48 | int a
468 // CHECK-X64-NEXT: 64 | struct A4 (base)
469 // CHECK-X64-NEXT: 64 | int a
470 // CHECK-X64-NEXT: 68 | int a
471 // CHECK-X64-NEXT: 80 | struct C16 (virtual base)
472 // CHECK-X64-NEXT: 80 | (C16 vftable pointer)
473 // CHECK-X64-NEXT: 96 | int a
474 // CHECK-X64-NEXT: | [sizeof=112, align=16
475 // CHECK-X64-NEXT: | nvsize=80, nvalign=16]
480 A16f() : a(0xf0000a16) {} in A16f()
484 struct Y { char y; Y() : y(0xaa) {} }; in Y()
489 B() : a(0xf000000b) {} in B()
494 F0() : a(0xf00000f0) {} in F0()
503 // CHECK-NEXT: 0 | struct F0
504 // CHECK-NEXT: 0 | (F0 vftable pointer)
521 // CHECK-X64: *** Dumping AST Record Layout
522 // CHECK-X64: *** Dumping AST Record Layout
523 // CHECK-X64: *** Dumping AST Record Layout
524 // CHECK-X64: *** Dumping AST Record Layout
525 // CHECK-X64: *** Dumping AST Record Layout
526 // CHECK-X64-NEXT: 0 | struct F0
527 // CHECK-X64-NEXT: 0 | (F0 vftable pointer)
528 // CHECK-X64-NEXT: 16 | struct A4 (base)
529 // CHECK-X64-NEXT: 16 | int a
530 // CHECK-X64-NEXT: 32 | struct B (base)
531 // CHECK-X64-NEXT: 32 | struct A4 (base)
532 // CHECK-X64-NEXT: 32 | int a
533 // CHECK-X64-NEXT: 36 | struct Y (base)
534 // CHECK-X64-NEXT: 36 | char y
535 // CHECK-X64-NEXT: 48 | struct X (base)
536 // CHECK-X64-NEXT: 48 | (X vbtable pointer)
537 // CHECK-X64-NEXT: 56 | int a
538 // CHECK-X64-NEXT: 64 | int a
539 // CHECK-X64-NEXT: 80 | struct A16f (virtual base)
540 // CHECK-X64-NEXT: 80 | (A16f vftable pointer)
541 // CHECK-X64-NEXT: 96 | int a
542 // CHECK-X64-NEXT: | [sizeof=112, align=16
543 // CHECK-X64-NEXT: | nvsize=80, nvalign=16]
547 F1() : a(0xf00000f1) {} in F1()
552 // CHECK-NEXT: 0 | struct F1
553 // CHECK-NEXT: 0 | (F1 vftable pointer)
570 // CHECK-X64: *** Dumping AST Record Layout
571 // CHECK-X64-NEXT: 0 | struct F1
572 // CHECK-X64-NEXT: 0 | (F1 vftable pointer)
573 // CHECK-X64-NEXT: 16 | struct B (base)
574 // CHECK-X64-NEXT: 16 | struct A4 (base)
575 // CHECK-X64-NEXT: 16 | int a
576 // CHECK-X64-NEXT: 20 | struct Y (base)
577 // CHECK-X64-NEXT: 20 | char y
578 // CHECK-X64-NEXT: 32 | struct X (base)
579 // CHECK-X64-NEXT: 32 | (X vbtable pointer)
580 // CHECK-X64-NEXT: 40 | int a
581 // CHECK-X64-NEXT: 48 | struct A4 (base)
582 // CHECK-X64-NEXT: 48 | int a
583 // CHECK-X64-NEXT: 52 | int a
584 // CHECK-X64-NEXT: 64 | struct A16f (virtual base)
585 // CHECK-X64-NEXT: 64 | (A16f vftable pointer)
586 // CHECK-X64-NEXT: 80 | int a
587 // CHECK-X64-NEXT: | [sizeof=96, align=16
588 // CHECK-X64-NEXT: | nvsize=64, nvalign=16]
592 F2() : a(0xf00000f2) {} in F2()
597 // CHECK-NEXT: 0 | struct F2
598 // CHECK-NEXT: 0 | (F2 vftable pointer)
608 // CHECK-X64: *** Dumping AST Record Layout
609 // CHECK-X64-NEXT: 0 | struct F2
610 // CHECK-X64-NEXT: 0 | (F2 vftable pointer)
611 // CHECK-X64-NEXT: 8 | struct A4 (base)
612 // CHECK-X64-NEXT: 8 | int a
613 // CHECK-X64-NEXT: 16 | (F2 vbtable pointer)
614 // CHECK-X64-NEXT: 24 | int a
615 // CHECK-X64-NEXT: 32 | struct A16f (virtual base)
616 // CHECK-X64-NEXT: 32 | (A16f vftable pointer)
617 // CHECK-X64-NEXT: 48 | int a
618 // CHECK-X64-NEXT: | [sizeof=64, align=16
619 // CHECK-X64-NEXT: | nvsize=32, nvalign=16]
623 F3() : a(0xf00000f3) {} in F3()
628 // CHECK-NEXT: 0 | struct F3
629 // CHECK-NEXT: 0 | (F3 vftable pointer)
639 // CHECK-X64: *** Dumping AST Record Layout
640 // CHECK-X64-NEXT: 0 | struct F3
641 // CHECK-X64-NEXT: 0 | (F3 vftable pointer)
642 // CHECK-X64-NEXT: 16 | struct A4 (base)
643 // CHECK-X64-NEXT: 16 | int a
644 // CHECK-X64-NEXT: 24 | (F3 vbtable pointer)
645 // CHECK-X64-NEXT: 48 | int a
646 // CHECK-X64-NEXT: 64 | struct A16f (virtual base)
647 // CHECK-X64-NEXT: 64 | (A16f vftable pointer)
648 // CHECK-X64-NEXT: 80 | int a
649 // CHECK-X64-NEXT: | [sizeof=96, align=16
650 // CHECK-X64-NEXT: | nvsize=64, nvalign=16]
654 F4() : a(0xf00000f4) {} in F4()
659 // CHECK-NEXT: 0 | struct F4
660 // CHECK-NEXT: 0 | (F4 vftable pointer)
677 // CHECK-X64: *** Dumping AST Record Layout
678 // CHECK-X64-NEXT: 0 | struct F4
679 // CHECK-X64-NEXT: 0 | (F4 vftable pointer)
680 // CHECK-X64-NEXT: 16 | struct A4 (base)
681 // CHECK-X64-NEXT: 16 | int a
682 // CHECK-X64-NEXT: 32 | struct B (base)
683 // CHECK-X64-NEXT: 32 | struct A4 (base)
684 // CHECK-X64-NEXT: 32 | int a
685 // CHECK-X64-NEXT: 36 | struct Y (base)
686 // CHECK-X64-NEXT: 36 | char y
687 // CHECK-X64-NEXT: 48 | struct X (base)
688 // CHECK-X64-NEXT: 48 | (X vbtable pointer)
689 // CHECK-X64-NEXT: 56 | int a
690 // CHECK-X64-NEXT: 64 | int a
691 // CHECK-X64-NEXT: 80 | struct A16f (virtual base)
692 // CHECK-X64-NEXT: 80 | (A16f vftable pointer)
693 // CHECK-X64-NEXT: 96 | int a
694 // CHECK-X64-NEXT: | [sizeof=112, align=16
695 // CHECK-X64-NEXT: | nvsize=80, nvalign=16]
699 F5() : a(0xf00000f5) {} in F5()
704 // CHECK-NEXT: 0 | struct F5
705 // CHECK-NEXT: 0 | struct A16f (primary base)
706 // CHECK-NEXT: 0 | (A16f vftable pointer)
714 // CHECK-X64: *** Dumping AST Record Layout
715 // CHECK-X64-NEXT: 0 | struct F5
716 // CHECK-X64-NEXT: 0 | struct A16f (primary base)
717 // CHECK-X64-NEXT: 0 | (A16f vftable pointer)
718 // CHECK-X64-NEXT: 16 | int a
719 // CHECK-X64-NEXT: 32 | (F5 vbtable pointer)
720 // CHECK-X64-NEXT: 48 | int a
721 // CHECK-X64-NEXT: 64 | struct A4 (virtual base)
722 // CHECK-X64-NEXT: 64 | int a
723 // CHECK-X64-NEXT: | [sizeof=80, align=16
724 // CHECK-X64-NEXT: | nvsize=64, nvalign=16]
728 F6() : a(0xf00000f6) {} in F6()
733 // CHECK-NEXT: 0 | struct F6
734 // CHECK-NEXT: 0 | (F6 vftable pointer)
752 // CHECK-X64: *** Dumping AST Record Layout
753 // CHECK-X64-NEXT: 0 | struct F6
754 // CHECK-X64-NEXT: 0 | (F6 vftable pointer)
755 // CHECK-X64-NEXT: 8 | struct A4 (base)
756 // CHECK-X64-NEXT: 8 | int a
757 // CHECK-X64-NEXT: 16 | (F6 vbtable pointer)
758 // CHECK-X64-NEXT: 24 | int a
759 // CHECK-X64-NEXT: 32 | struct A16f (virtual base)
760 // CHECK-X64-NEXT: 32 | (A16f vftable pointer)
761 // CHECK-X64-NEXT: 48 | int a
762 // CHECK-X64-NEXT: 64 | struct B (virtual base)
763 // CHECK-X64-NEXT: 64 | struct A4 (base)
764 // CHECK-X64-NEXT: 64 | int a
765 // CHECK-X64-NEXT: 68 | struct Y (base)
766 // CHECK-X64-NEXT: 68 | char y
767 // CHECK-X64-NEXT: 80 | struct X (base)
768 // CHECK-X64-NEXT: 80 | (X vbtable pointer)
769 // CHECK-X64-NEXT: 88 | int a
770 // CHECK-X64-NEXT: | [sizeof=96, align=16
771 // CHECK-X64-NEXT: | nvsize=32, nvalign=16]
778 // CHECK-NEXT: 0 | struct ArrayFieldOfRecords
779 // CHECK-NEXT: 0 | struct A4 [2] InlineElts
782 // CHECK-X64: *** Dumping AST Record Layout
783 // CHECK-X64-NEXT: 0 | struct ArrayFieldOfRecords
784 // CHECK-X64-NEXT: 0 | struct A4 [2] InlineElts
785 // CHECK-X64-NEXT: | [sizeof=8, align=4
786 // CHECK-X64-NEXT: | nvsize=8, nvalign=4]
793 // CHECK-NEXT: 0 | struct ArrayOfArrayFieldOfRecords
794 // CHECK-NEXT: 0 | struct A4 [2][2] InlineElts
797 // CHECK-X64: *** Dumping AST Record Layout
798 // CHECK-X64-NEXT: 0 | struct ArrayOfArrayFieldOfRecords
799 // CHECK-X64-NEXT: 0 | struct A4 [2][2] InlineElts
800 // CHECK-X64-NEXT: | [sizeof=16, align=4
801 // CHECK-X64-NEXT: | nvsize=16, nvalign=4]
809 // CHECK-NEXT: 0 | struct RecordArrayTypedef
810 // CHECK-NEXT: 0 | ArrayTy [2] InlineElts
813 // CHECK-X64: *** Dumping AST Record Layout
814 // CHECK-X64-NEXT: 0 | struct RecordArrayTypedef
815 // CHECK-X64-NEXT: 0 | ArrayTy [2] InlineElts
816 // CHECK-X64-NEXT: | [sizeof=16, align=4
817 // CHECK-X64-NEXT: | nvsize=16, nvalign=4]
820 int FlexArrayMemb[0];
824 // CHECK-NEXT: 0 | struct EmptyIntMemb
825 // CHECK-NEXT: 0 | int [0] FlexArrayMemb
827 // CHECK-NEXT: | nvsize=0, nvalign=4]
828 // CHECK-X64: *** Dumping AST Record Layout
829 // CHECK-X64-NEXT: 0 | struct EmptyIntMemb
830 // CHECK-X64-NEXT: 0 | int [0] FlexArrayMemb
831 // CHECK-X64-NEXT: | [sizeof=4, align=4
832 // CHECK-X64-NEXT: | nvsize=0, nvalign=4]
835 long long FlexArrayMemb[0];
839 // CHECK-NEXT: 0 | struct EmptyLongLongMemb
840 // CHECK-NEXT: 0 | long long [0] FlexArrayMemb
842 // CHECK-NEXT: | nvsize=0, nvalign=8]
843 // CHECK-X64: *** Dumping AST Record Layout
844 // CHECK-X64-NEXT: 0 | struct EmptyLongLongMemb
845 // CHECK-X64-NEXT: 0 | long long [0] FlexArrayMemb
846 // CHECK-X64-NEXT: | [sizeof=8, align=8
847 // CHECK-X64-NEXT: | nvsize=0, nvalign=8]
875 0];