diff options
author | Kyle Gunger <kgunger12@gmail.com> | 2022-06-29 20:15:46 -0400 |
---|---|---|
committer | Kyle Gunger <kgunger12@gmail.com> | 2022-06-29 20:15:46 -0400 |
commit | fc5a382661262b4dac085d75739c4ac0601574a7 (patch) | |
tree | a705dcb7387e316a05c5162c0351488bd664e55a /tnslc/flags | |
parent | 2572cd049ee5e1e2685b1abe6bfcfbb8aa988a71 (diff) |
[TNSLC] General updates
Diffstat (limited to 'tnslc/flags')
-rw-r--r-- | tnslc/flags/defaults.tnsl | 24 | ||||
-rw-r--r-- | tnslc/flags/flags.tnsl | 32 |
2 files changed, 56 insertions, 0 deletions
diff --git a/tnslc/flags/defaults.tnsl b/tnslc/flags/defaults.tnsl new file mode 100644 index 0000000..2164e20 --- /dev/null +++ b/tnslc/flags/defaults.tnsl @@ -0,0 +1,24 @@ +/## + Copyright 2021 Kyle Gunger + + This file is licensed under the CDDL 1.0 (the License) + and may only be used in accordance with the License. + You should have received a copy of the License with this + software/source code. If you did not, a copy can be found + at the following URL: + + https://opensource.org/licenses/CDDL-1.0 + + THIS SOFTWARE/SOURCE CODE IS PROVIDED "AS IS" WITH NO + WARRANTY, GUARANTEE, OR CLAIM OF FITNESS FOR ANY PURPOSE + EXPRESS OR IMPLIED +#/ + +/# defaults.tnsl + # This file provides the default settings for the compiler + # if the user has not provided flags which overrides them. +#/ + +/; get_defaults [Settings] + +;/
\ No newline at end of file diff --git a/tnslc/flags/flags.tnsl b/tnslc/flags/flags.tnsl index bc5d43f..1dbbaf4 100644 --- a/tnslc/flags/flags.tnsl +++ b/tnslc/flags/flags.tnsl @@ -14,3 +14,35 @@ EXPRESS OR IMPLIED #/ +/; module flags + :include "flags/defaults.tnsl" +;/ + +;enum ISA [uint] { + X86 = 0, + X64 = 1, + ARM = 2, + ARM64 = 3, + RISCV = 4 +} + +;enum FORMATS [uint] { + ELF = 0 + PE = 1 +} + +;struct Settings { + + # ISA settings + uint isa, + bool littleEndian, + + # Output format settings + uint format +} + +/; parse_flags () [Settings] + ;Settings out = flags.get_defaults() + + ;return out +;/ |