mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2025-01-26 06:04:47 +00:00
Add original source code to test case as suggested in review.
llvm-svn: 240863
This commit is contained in:
parent
0ec4006593
commit
ca28a083c8
@ -7,6 +7,19 @@ target triple = "x86_64-apple-darwin"
|
||||
; RUN: llvm-dwarfdump -debug-dump=info %t.o | FileCheck %s
|
||||
; REQUIRES: object-emission
|
||||
|
||||
; // ---------------------------------------------------------------------
|
||||
; // Not packed.
|
||||
; // ---------------------------------------------------------------------
|
||||
; struct size8 {
|
||||
; int i : 4;
|
||||
; long long l : 60;
|
||||
; };
|
||||
; struct layout0 {
|
||||
; char l0_ofs0;
|
||||
; struct size8 l0_ofs8;
|
||||
; int l0_ofs16 : 1;
|
||||
; } l0;
|
||||
|
||||
%struct.layout0 = type { i8, %struct.size8, i8 }
|
||||
%struct.size8 = type { i64 }
|
||||
; CHECK: DW_TAG_structure_type
|
||||
@ -24,6 +37,20 @@ target triple = "x86_64-apple-darwin"
|
||||
; CHECK: DW_AT_bit_offset {{.*}} (0x1f)
|
||||
; CHECK: DW_AT_data_member_location {{.*}}10
|
||||
|
||||
|
||||
; // ---------------------------------------------------------------------
|
||||
; // Implicitly packed.
|
||||
; // ---------------------------------------------------------------------
|
||||
; struct size8_anon {
|
||||
; int : 4;
|
||||
; long long : 60;
|
||||
; };
|
||||
; struct layout1 {
|
||||
; char l1_ofs0;
|
||||
; struct size8_anon l1_ofs1;
|
||||
; int l1_ofs9 : 1;
|
||||
; } l1;
|
||||
|
||||
%struct.layout1 = type <{ i8, %struct.size8_anon, i8, [2 x i8] }>
|
||||
%struct.size8_anon = type { i64 }
|
||||
|
||||
@ -43,6 +70,21 @@ target triple = "x86_64-apple-darwin"
|
||||
; CHECK: DW_AT_bit_offset {{.*}} (0x17)
|
||||
; CHECK: DW_AT_data_member_location {{.*}}08
|
||||
|
||||
; // ---------------------------------------------------------------------
|
||||
; // Explicitly packed.
|
||||
; // ---------------------------------------------------------------------
|
||||
; #pragma pack(1)
|
||||
; struct size8_pack1 {
|
||||
; int i : 4;
|
||||
; long long l : 60;
|
||||
; };
|
||||
; struct layout2 {
|
||||
; char l2_ofs0;
|
||||
; struct size8_pack1 l2_ofs1;
|
||||
; int l2_ofs9 : 1;
|
||||
; } l2;
|
||||
; #pragma pack()
|
||||
|
||||
%struct.layout2 = type <{ i8, %struct.size8_pack1, i8 }>
|
||||
%struct.size8_pack1 = type { i64 }
|
||||
|
||||
@ -62,6 +104,22 @@ target triple = "x86_64-apple-darwin"
|
||||
; CHECK: DW_AT_bit_offset {{.*}} (0x17)
|
||||
; CHECK: DW_AT_data_member_location {{.*}}08
|
||||
|
||||
; // ---------------------------------------------------------------------
|
||||
; // Explicitly packed with different alignment.
|
||||
; // ---------------------------------------------------------------------
|
||||
; #pragma pack(4)
|
||||
; struct size8_pack4 {
|
||||
; int i : 4;
|
||||
; long long l : 60;
|
||||
; };
|
||||
; struct layout3 {
|
||||
; char l3_ofs0;
|
||||
; struct size8_pack4 l3_ofs4;
|
||||
; int l3_ofs12 : 1;
|
||||
; } l 3;
|
||||
; #pragma pack()
|
||||
|
||||
|
||||
%struct.layout3 = type <{ i8, [3 x i8], %struct.size8_pack4, i8, [3 x i8] }>
|
||||
%struct.size8_pack4 = type { i64 }
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user