Commit Graph

71 Commits

Author SHA1 Message Date
sBubshait
6de1915dbe Restructure overall assembler. Add string_util and Docs 2024-06-15 01:50:56 +01:00
sBubshait
3501ac93aa Fix Bug in handling zero register in aliases 2024-06-14 21:22:11 +01:00
EDiasAlberto
e5b3f19bec restructure directive parsing into independent function 2024-06-14 21:17:26 +01:00
EDiasAlberto
8bea0d6a6d fix directive operand parsing 2024-06-14 21:15:19 +01:00
sBubshait
ffa798b266 Update parser to correctly classify branch types 2024-06-14 21:01:51 +01:00
EDiasAlberto
f41c7cc749 rewrite address format logic 2024-06-14 20:51:08 +01:00
sBubshait
58371a4fa4 Update parser to correctly handle the zero register 2024-06-14 20:46:35 +01:00
EDiasAlberto
3838227a09 fix ldr parsing 2024-06-14 20:45:07 +01:00
EDiasAlberto
19b98a3c51 handle directive parsing 2024-06-14 20:34:44 +01:00
EDiasAlberto
4139d7a083 parse loadliteral into modified struct 2024-06-14 20:19:49 +01:00
EDiasAlberto
004ba24b5a parse branch labels and modify load literal struct 2024-06-14 20:18:35 +01:00
EDiasAlberto
5bb68d95e1 adjust branch struct to hold label data 2024-06-14 20:09:14 +01:00
EDiasAlberto
16e52a9421 fix directive value parsing 2024-06-14 16:52:48 +01:00
EDiasAlberto
6aa93c79ae fix indexing error with parsing branch operands 2024-06-14 16:42:42 +01:00
sBubshait
f3e1c1f150 Add handling of all aliases. Add Shift Utility Function 2024-06-14 02:00:10 +01:00
EDiasAlberto
9507180dc9 fix str/ldr classification logic to avoid incorrect array indexing 2024-06-13 20:43:57 +01:00
EDiasAlberto
f5d35ce246 fix classification logic for str/ldr 2024-06-13 20:36:12 +01:00
GDBWNV
3104da7f30 dpr multiply 2024-06-13 20:25:26 +01:00
sBubshait
04df4ea795 Update Parser to fix bug in parsing multiply 2024-06-13 20:06:37 +01:00
EDiasAlberto
6bd993b29e fix dpregister to construct IR 2024-06-13 20:01:35 +01:00
GDBWNV
228bfec612 more changes to wide moves 2024-06-13 19:57:26 +01:00
GDBWNV
9a92efc3f3 changes to wide move 2024-06-13 19:52:53 +01:00
EDiasAlberto
16fb04b737 fix tokenising of dpimmediate shifts 2024-06-13 19:25:22 +01:00
sBubshait
fb15dc90c6 Fix Bug in Parser for an error checking 2024-06-13 19:20:02 +01:00
EDiasAlberto
664f8e6478 build struct for DPRegister arithmetic 2024-06-13 19:01:39 +01:00
EDiasAlberto
873c0b60cb add hex number handling to getoperandnumebrs 2024-06-13 18:37:36 +01:00
sBubshait
995c6d02fa Rewrite the parser for better structure, Add DPI parsing 2024-06-13 17:24:09 +01:00
EDiasAlberto
c52de918db build struct for loadstore instructions 2024-06-12 20:22:08 +01:00
EDiasAlberto
344f455be3 fix loadreg struct construction 2024-06-12 19:25:05 +01:00
EDiasAlberto
06b18706ed rewrite opcode/operand splitting logic 2024-06-12 17:34:14 +01:00
EDiasAlberto
53f5b05210 rewrite uses of strcpy w/ S 2024-06-12 17:02:52 +01:00
EDiasAlberto
9f92eb4766 fix tokeniseOperands param order 2024-06-12 16:54:38 +01:00
EDiasAlberto
f4fd71a330 fix syntax error with getOperandNumber 2024-06-12 16:46:59 +01:00
EDiasAlberto
c6ff7e1c4e comment getOperandNumber 2024-06-12 16:29:29 +01:00
EDiasAlberto
f32304afb7 create helper function to generate number from operand 2024-06-12 16:24:42 +01:00
sBubshait
269a150926 Fix types, signatures, and arguments. 2024-06-12 00:49:25 +01:00
sBubshait
850f3cf4f7 Add overall assemble structure 2024-06-11 23:46:40 +01:00
sBubshait
31c1ae90f7 Attempt to make code compile, fix syntax errors 2024-06-11 23:13:23 +01:00
sBubshait
efaed431d0 Added all instruction in subfolder a64instruction 2024-06-11 23:02:26 +01:00
EDiasAlberto
6153db7737 fix compile issues git add . :) 2024-06-11 17:35:23 +01:00
EDiasAlberto
92719b6b33 comments for clarity in parser 2024-06-09 23:10:39 +01:00
EDiasAlberto
d0be871e8f generate offset operand for load literal with immediate value 2024-06-09 23:07:45 +01:00
EDiasAlberto
44bb327b7d begin formulating parser pipeline 2024-06-09 22:54:27 +01:00
EDiasAlberto
4098ea5a5f calculate offsets for different store instructions 2024-06-09 22:43:37 +01:00
EDiasAlberto
04dda33987 calculate base register from input 2024-06-09 22:21:30 +01:00
EDiasAlberto
34060c3fad fix hierarchy of struct access in parser 2024-06-06 17:54:35 +01:00
EDiasAlberto
1fa33798bf rewrite DP classification logic 2024-06-06 17:38:54 +01:00
EDiasAlberto
225ade7770 fix use of cpp syntax 2024-06-06 17:10:18 +01:00
EDiasAlberto
5413d27026 adjust operand counts for calculating address format 2024-06-06 14:46:56 +01:00
EDiasAlberto
f1ac860d6a rewrite address format calculation
as { is not in the actual asm syntax
2024-06-06 14:46:16 +01:00