tinycc/tests
grischka a9e502cc3b refactor bitfields
Use 2 level strategy to access packed bitfields cleanly:

1) Allow to override the original declaration type with
   an auxilary "access type".  This solves cases such as

    struct {
        ...
        unsigned f1:1;
    };

    by using VT_BYTE to access f1.

2) Allow byte-wise split accesses using two new functions
   load/store_packed_bf. This solves any cases, also ones
   such as

    struct __attribute((packed)) _s {
        unsigned x : 12;
        unsigned char y : 7;
        unsigned z : 28;
        unsigned a: 3;
        unsigned b: 3;
        unsigned c: 3;
    };

    where for field 'z':
    - VT_INT access from offset 2 would be unaligned
    - VT_LLONG from offset 0 would go past the total
      struct size (7)

    and for field 'a' because it is in two bytes and
    aligned access with VT_SHORT/INT is not possible.

Also, static bitfield initializers are stored byte-wise always.
Also, cleanup the struct_layout function a bit.
2017-07-09 12:38:59 +02:00
..
pp tccpp: allow "#define X defined Y ..." 2017-07-09 11:46:14 +02:00
tests2 add _Generic test 2017-07-05 17:59:42 +02:00
42test.h tccpp: Allow computed include like 42.h 2016-12-15 17:47:10 +01:00
abitest.c x86-64: Fix psABI stdarg prologue 2017-05-27 22:42:18 +02:00
asmtest.S x86-64-asm: Fix mov im64,rax encoding 2017-02-23 00:16:25 +01:00
boundtest.c a bounds checking code for the ARCH=x86_64 2015-04-10 15:17:22 +03:00
gcctestsuite.sh Fix bashims in configure and gcctestsuite.sh. 2010-05-26 14:08:29 +02:00
libtcc_test.c tests: OOT build fixes etc. 2016-12-20 18:05:33 +01:00
Makefile configure: --config-musl/-uClibc switch & misc cleanups 2017-05-13 08:59:06 +02:00
tcctest.c refactor bitfields 2017-07-09 12:38:59 +02:00
tcctest.h tccpp: Implement __BASE_FILE__ macro 2016-12-15 17:47:08 +01:00
testfp.c Remove misc. files 2016-10-01 20:27:41 +02:00
vla_test.c Improved variable length array support. 2013-04-27 22:58:52 +01:00