diff options
Diffstat (limited to 'util/romcc/tests/simple_test17.c')
-rw-r--r-- | util/romcc/tests/simple_test17.c | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/util/romcc/tests/simple_test17.c b/util/romcc/tests/simple_test17.c new file mode 100644 index 0000000000..27586141d4 --- /dev/null +++ b/util/romcc/tests/simple_test17.c @@ -0,0 +1,39 @@ +typedef unsigned char uint8_t; +typedef unsigned short uint16_t; +typedef unsigned int uint32_t; + + +struct iter { + uint32_t i; +}; + +struct point { + uint32_t i, j; +}; + +static void outb(uint8_t value, uint16_t port) +{ + __builtin_outb(value, port); +} + + +static struct point mkpoint(void) +{ + struct point p; + p.i = 1000; + p.j = 2000; + return p; +} + +static void main(void) +{ + struct iter iter; + for(iter.i = 0; iter.i < 32; iter.i++) { + outb(iter.i, 0x80); + } + struct point p; + p = mkpoint(); + outb(p.i, 0x80); + outb(p.j, 0x80); +} + |