History

Fix long bitfield

The fix is avoiding a core dump for radare2 project.

herman ten brugge committed 6 years ago

Commit dcb87d31 parent 9085b384 files · +67 −1Browse files

Showing the changes to tests (3 of 4 files). Show all

Unified · Split

3 files
  1. tests/tests2/95_bitfields.c +18 −0
  2. tests/tests2/95_bitfields.expect +24 −0
  3. tests/tests2/95_bitfields_ms.expect +24 −0
tests/tests2/95_bitfields.c+18−0
@@ -77,6 +77,22 @@ · 76 unmodified lines
7777 TEST_STRUCT(1,2,3,4,-3);
7878 }
7979
80+/* ----------------------------------------------------------------------- */
81+#elif TEST == 7
82+{
83+ struct M P __s {
84+ long int d : 16;
85+ long int b : 16;
86+ long int x : 16;
87+ long int y : 1;
88+ long int z : 2;
89+ long int a : 11;
90+ long int e : 1;
91+ long int f : 1;
92+ };
93+ TEST_STRUCT(1,2,3,4,5);
94+}
95+
8096 /* ----------------------------------------------------------------------- */
8197 #elif defined PACK
8298
@@ -101,6 +117,8 @@ top = 0; · 18 unmodified lines
101117 #include SELF
102118 #define TEST 6
103119 #include SELF
120+#define TEST 7
121+#include SELF
104122
105123 #if PACK
106124 # pragma pack(pop)
tests/tests2/95_bitfields.expect+24−0
@@ -34,6 +34,12 @@ bits as set : 00000030002001FD00000004 · 33 unmodified lines
3434 values : 01 02 03 04 fffffffd
3535 align/size : 4 12
3636
37+---- TEST 7 ----
38+bits in use : 3FFFFFFFFFFF0000
39+bits as set : 0026000100050000
40+values : 01 00 ffffffff 04 05
41+align/size : 8 8
42+
3743
3844
3945 ---- TEST 1 - PACKED ----
@@ -72,6 +78,12 @@ bits as set : 0030002001FD00000004 · 32 unmodified lines
7278 values : 01 02 03 04 fffffffd
7379 align/size : 1 10
7480
81+---- TEST 7 - PACKED ----
82+bits in use : 3FFFFFFFFFFF0000
83+bits as set : 0026000100050000
84+values : 01 00 ffffffff 04 05
85+align/size : 1 8
86+
7587
7688
7789 ---- TEST 1 - WITH ALIGN ----
@@ -110,6 +122,12 @@ bits as set : 00000030002001FD00000004 · 32 unmodified lines
110122 values : 01 02 03 04 fffffffd
111123 align/size : 4 12
112124
125+---- TEST 7 - WITH ALIGN ----
126+bits in use : 3FFFFFFFFFFF0000
127+bits as set : 0026000100050000
128+values : 01 00 ffffffff 04 05
129+align/size : 8 8
130+
113131
114132
115133 ---- TEST 1 - PACKED - WITH ALIGN ----
@@ -147,3 +165,9 @@ bits in use : 007000FFFFFFFFFFFFFF · 31 unmodified lines
147165 bits as set : 0030002001FD00000004
148166 values : 01 02 03 04 fffffffd
149167 align/size : 1 10
168+
169+---- TEST 7 - PACKED - WITH ALIGN ----
170+bits in use : 3FFFFFFFFFFF0000
171+bits as set : 0026000100050000
172+values : 01 00 ffffffff 04 05
173+align/size : 1 8
tests/tests2/95_bitfields_ms.expect+24−0
@@ -34,6 +34,12 @@ bits as set : 000000000000003000002001000000FD00000004 · 33 unmodified lines
3434 values : 01 02 03 04 fffffffd
3535 align/size : 4 20
3636
37+---- TEST 7 - MS-BITFIELDS ----
38+bits in use : 3FFFFFFFFFFF0000
39+bits as set : 0026000100050000
40+values : 0000000000000001 0000000000000000 ffffffffffffffff 0000000000000004 0000000000000005
41+align/size : 8 8
42+
3743
3844
3945 ---- TEST 1 - MS-BITFIELDS - PACKED ----
@@ -72,6 +78,12 @@ bits as set : 000000003000002001FD00000004 · 32 unmodified lines
7278 values : 01 02 03 04 fffffffd
7379 align/size : 1 14
7480
81+---- TEST 7 - MS-BITFIELDS - PACKED ----
82+bits in use : 3FFFFFFFFFFF0000
83+bits as set : 0026000100050000
84+values : 0000000000000001 0000000000000000 ffffffffffffffff 0000000000000004 0000000000000005
85+align/size : 1 8
86+
7587
7688
7789 ---- TEST 1 - MS-BITFIELDS - WITH ALIGN ----
@@ -110,6 +122,12 @@ bits as set : 000000000000003000002001000000FD00000004 · 32 unmodified lines
110122 values : 01 02 03 04 fffffffd
111123 align/size : 4 20
112124
125+---- TEST 7 - MS-BITFIELDS - WITH ALIGN ----
126+bits in use : 3FFFFFFFFFFF0000
127+bits as set : 0026000100050000
128+values : 0000000000000001 0000000000000000 ffffffffffffffff 0000000000000004 0000000000000005
129+align/size : 8 8
130+
113131
114132
115133 ---- TEST 1 - MS-BITFIELDS - PACKED - WITH ALIGN ----
@@ -147,3 +165,9 @@ bits in use : 00000000700000FFFFFFFFFFFFFF · 31 unmodified lines
147165 bits as set : 000000003000002001FD00000004
148166 values : 01 02 03 04 fffffffd
149167 align/size : 1 14
168+
169+---- TEST 7 - MS-BITFIELDS - PACKED - WITH ALIGN ----
170+bits in use : 3FFFFFFFFFFF0000
171+bits as set : 0026000100050000
172+values : 0000000000000001 0000000000000000 ffffffffffffffff 0000000000000004 0000000000000005
173+align/size : 1 8

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t