Commit Graph

250 Commits

Author SHA1 Message Date
EDiasAlberto
173bdf08ec fix incorrect fileio.c 2024-06-11 20:23:00 +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
sBubshait
a42576b4ed Restructing, keeping all emulator modules in emulator directory 2024-06-07 18:08:33 +01:00
sBubshait
46da019131 Remove No longer used files 2024-06-07 17:54:09 +01:00
sBubshait
2e5ecb175f Merge branch 'emulator' into emulator-s 2024-06-07 17:52:29 +01:00
Dias Alberto, Ethan
34dd5706a5 Merge branch 'assembler-e' into 'assembler'
rewrite logic for DP classification and struct access

See merge request lab2324_summer/armv8_43!6
2024-06-06 16:55:21 +00: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
f57e0a786f rename assembler funcs for clarity 2024-06-06 17:14:56 +01:00
Dias Alberto, Ethan
5190f2489c Merge branch 'assembler-e' into 'assembler'
fix use of cpp syntax

See merge request lab2324_summer/armv8_43!5
2024-06-06 16:11:03 +00:00
EDiasAlberto
225ade7770 fix use of cpp syntax 2024-06-06 17:10:18 +01:00
Dias Alberto, Ethan
adadbbb616 Merge branch 'assembler-e' into 'assembler'
merge assembler-e into assembler

See merge request lab2324_summer/armv8_43!4
2024-06-06 16:04:28 +00:00
Dias Alberto, Ethan
9c6a459b23 Merge branch 'assembler' into 'assembler-e'
# Conflicts:
#   src/twopassassembly.c
2024-06-06 16:03:18 +00:00
Niedringhaus, George
c616b6d70e Merge branch 'Assembler-G' into 'assembler'
Assembler g

See merge request lab2324_summer/armv8_43!3
2024-06-06 15:43:03 +00:00
GDBWNV
da50ee27a1 added label, branch, halt, directive to switch statement 2024-06-06 16:40:24 +01:00
sBubshait
8893b62a18 Add storeMemory utility function and used it to fix a prev bug 2024-06-06 16:38:01 +01:00
sBubshait
b16fe2bee3 Fixed Bug: Struct Undefined Behaviour Due to Unguarded Access 2024-06-06 16:34:38 +01:00
sBubshait
4689aba219 Fix Bug: Fixed Post Indexed SDT to save AFTER the transfer 2024-06-06 16:31:59 +01:00
sBubshait
efca820fbf Fix Bug: Sign Extend SDT instrs instead of unsigned 2024-06-06 16:29:50 +01:00
sBubshait
059a3e747c Paranthesis for ROR instruction for readability 2024-06-06 16:25:17 +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
EDiasAlberto
70e02768b6 fix struct access 2024-06-06 14:30:13 +01:00
EDiasAlberto
872d4224f8 classify register type and base register for load/store 2024-06-06 14:28:32 +01:00
EDiasAlberto
1011d7be71 classify load store addressing type 2024-06-06 14:14:10 +01:00
Themis Demetriades
16efa0b3c8 Replaced type used in execute to be platform independent 2024-06-06 13:53:28 +01:00
Themis Demetriades
77cea8730a Fix getMSB function to only return 0 or 1 2024-06-06 13:47:01 +01:00
GDBWNV
1440ebd702 single data transfer & load literal 2024-06-06 13:34:14 +01:00
Themis Demetriades
c2844ce0ec Fix V amd C flags for DPI subs instruction 2024-06-06 13:30:47 +01:00
EDiasAlberto
b93ab76b82 generate branch struct from operands (INCOMPLETE) 2024-06-06 13:22:54 +01:00
Themis Demetriades
460b19aaf4 Fix ROR shift logic 2024-06-06 13:19:36 +01:00
EDiasAlberto
6177b2f748 assemble branch instructions 2024-06-06 13:01:26 +01:00
GDBWNV
09956c7b2e data processing register 2024-06-06 13:00:27 +01:00
GDBWNV
ce34f27fbd data processing immediate 2024-06-06 12:33:09 +01:00
GDBWNV
b362f46d58 Merge remote-tracking branch 'origin/emulator' into Assembler-G 2024-06-06 10:11:57 +01:00
sBubshait
d73111515e Fix Overflow handling in Subtraction DP Register, w/ T 2024-06-06 00:47:06 +01:00
Themis Demetriades
95c74964b3 Fix movk to not overwrite entire register for large scalars w/ S 2024-06-06 00:35:48 +01:00
sBubshait
7b1e6314a7 Fix Subs handling of carry PSTATE condition code, w/ T 2024-06-05 23:58:56 +01:00
Themis Demetriades
40c5fac9f6 Fixed bug with movk overwriting wrong bits w/ S 2024-06-05 23:43:36 +01:00
sBubshait
a3dd809437 Update execute, implemented the store instrs, w/ T 2024-06-05 23:30:20 +01:00
Themis Demetriades
75a8d79bb4 Changed order of operations for DPR logic instructions w/ S 2024-06-05 23:19:53 +01:00
Themis Demetriades
dd472117aa Add negation for second operand in DPR instructions w/ S 2024-06-05 22:50:04 +01:00
Themis Demetriades
cc62168d43 Remove debugging code w/ S 2024-06-05 22:23:51 +01:00
Themis Demetriades
294b03ddde Added ability to write to zero register (discard) w/ S 2024-06-05 22:21:32 +01:00
sBubshait
14fbb7e4fc Fix Bug: Struct was not being changed because it wasn't a ptr, w/ T 2024-06-05 21:31:41 +01:00