From cab0135f57ca1c7e448e11f866b0adb8a1328d48 Mon Sep 17 00:00:00 2001 From: Xavier Del Campo Romero Date: Sun, 11 Oct 2026 01:26:41 +0200 Subject: WIP triplet --- src/prc1/triplet/CMakeLists.txt | 3 +++ src/prc1/triplet/prv.h | 3 +++ src/prc1/triplet/x86_64-linux-gnu.c | 18 ++++++++++++++++++ 3 files changed, 24 insertions(+) create mode 100644 src/prc1/triplet/CMakeLists.txt create mode 100644 src/prc1/triplet/prv.h create mode 100644 src/prc1/triplet/x86_64-linux-gnu.c (limited to 'src/prc1/triplet') diff --git a/src/prc1/triplet/CMakeLists.txt b/src/prc1/triplet/CMakeLists.txt new file mode 100644 index 0000000..49b17ee --- /dev/null +++ b/src/prc1/triplet/CMakeLists.txt @@ -0,0 +1,3 @@ +target_sources(prc1 PRIVATE + x86_64-linux-gnu.c +) diff --git a/src/prc1/triplet/prv.h b/src/prc1/triplet/prv.h new file mode 100644 index 0000000..342036c --- /dev/null +++ b/src/prc1/triplet/prv.h @@ -0,0 +1,3 @@ +#include "parse.h" + +extern const struct type x86_64_linux_gnu[12]; diff --git a/src/prc1/triplet/x86_64-linux-gnu.c b/src/prc1/triplet/x86_64-linux-gnu.c new file mode 100644 index 0000000..c22bc93 --- /dev/null +++ b/src/prc1/triplet/x86_64-linux-gnu.c @@ -0,0 +1,18 @@ +#include "triplet/prv.h" +#include "parse.h" + +const struct type x86_64_linux_gnu[] = +{ + {.type = BUILTIN, .u.b = {"void"}}, + {.type = BUILTIN, .u.b = {"char"}, .sz = 1, .sign = 1, .align = 1}, + {.type = BUILTIN, .u.b = {"schar"}, .sz = 1, .sign = 1, .align = 1}, + {.type = BUILTIN, .u.b = {"short"}, .sz = 2, .sign = 1, .align = 2}, + {.type = BUILTIN, .u.b = {"int"}, .sz = 4, .sign = 1, .align = 4}, + {.type = BUILTIN, .u.b = {"long"}, .sz = 8, .sign = 1, .align = 8}, + {.type = BUILTIN, .u.b = {"longlong"}, .sz = 8, .sign = 1, .align = 8}, + {.type = BUILTIN, .u.b = {"uchar"}, .sz = 1, .align = 1}, + {.type = BUILTIN, .u.b = {"ushort"}, .sz = 2, .align = 2}, + {.type = BUILTIN, .u.b = {"uint"}, .sz = 4, .align = 4}, + {.type = BUILTIN, .u.b = {"ulong"}, .sz = 8, .align = 8}, + {.type = BUILTIN, .u.b = {"ulonglong"}, .sz = 8, .align = 8} +}; -- cgit v1.2.3