summaryrefslogtreecommitdiff
path: root/util/romcc/tests/simple_test17.c
diff options
context:
space:
mode:
Diffstat (limited to 'util/romcc/tests/simple_test17.c')
-rw-r--r--util/romcc/tests/simple_test17.c39
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);
+}
+