diff options
author | bd <bdunahu@operationnull.com> | 2025-04-16 23:53:08 -0400 |
---|---|---|
committer | bd <bdunahu@operationnull.com> | 2025-04-16 23:53:08 -0400 |
commit | 5e1d59feaa353e7ea4179fd0c8104fc4450a7a16 (patch) | |
tree | 6635509b91a80db4b85a7e9bc190dfd2594a36d5 /gui/worker.cc | |
parent | 796b2691146a3a4eaace4fa155d3c0c2f7379832 (diff) |
Fix instruction opcode numbering issue, use assembler's output
Diffstat (limited to 'gui/worker.cc')
-rw-r--r-- | gui/worker.cc | 62 |
1 files changed, 24 insertions, 38 deletions
diff --git a/gui/worker.cc b/gui/worker.cc index 947a3a4..3825395 100644 --- a/gui/worker.cc +++ b/gui/worker.cc @@ -20,51 +20,37 @@ void Worker::doWork() emit register_storage(this->ct->get_gprs()); signed int b0, b1, b2, b3, b4, b5, b6, b7, b8, b9, b10, b11, b12, b13, b14, - b15, b16, b17, b18, b19; + b15, b16, b17, b18, b19, b20; std::vector<signed int> p; // I-TYPE / / / / - b0 = 0b00000010000000000001000000001101; // ADDI $2 $0 0x200; - b1 = 0b00000000000000010010100000001101; // ADDI $5 $0 0x1; - b2 = 0b00000000000000000010100010101101; // STORE $5 0($2); - // I-TYPE / / / / - b3 = 0b00000000000000100010100000001101; // ADDI $5 $0 0x2; - b4 = 0b00000000000000010010100010101101; // STORE $5 1($2); - // I-TYPE / / / / - b5 = 0b00000000000000110010100000001101; // ADDI $5 $0 0x3; - b6 = 0b00000000000000100010100010101101; // STORE $5 2($2); - // I-TYPE / / / / - b7 = 0b00000000000001000010100000001101; // ADDI $5 $0 0x4; - b8 = 0b00000000000000110010100010101101; // STORE $5 3($2); - // // I-TYPE / / / / - b9 = 0b00000000000000000010100000001101; // ADDI $5 $0 0x0; - // // I-TYPE / / / / - b10 = 0b00000000000000110011000000001101; // ADDI $6 $0 0x3; - // // J-TYPE / / / - b11 = 0b00000000000000000011100000001010; // JRL CHECK - // // R-TYPE / / / / / - b12 = 0b00000000000100100101000100000100; // ADD $9 $2 $5; - // // I-TYPE / / / / - b13 = 0b00000000000000000011101001000101; // LOAD $7 0($9); (RAW HAZARD)! - // // I-TYPE / / / / - b14 = 0b00000000000000010100001001000101; // LOAD $8 1($9); - // // R-TYPE / / / / / - b15 = 0b00000000000011101000001110000100; // ADD $7 $7 $8; - // I-TYPE / / / / - b16 = 0b00000000000000000011101001101101; // STORE $7 0($9); - b17 = 0b00000000000000010010100101001101; // ADDI $5 $5 0x1; - // // R-TYPE / / / / / - b18 = 0b00000000000111100101001101000000; // CMP $6 $5 - // // J-TYPE / / / - b19 = 0b11111111111111111100000000010110; // bgt LOOP + b0 = 0b00000010000000000001000000001101; + b1 = 0b00000000000000010010100000001101; + b2 = 0b00000000000000000010100010101001; + b3 = 0b00000000000000100010100000001101; + b4 = 0b00000000000000010010100010101001; + b5 = 0b00000000000000110010100000001101; + b6 = 0b00000000000000100010100010101001; + b7 = 0b00000000000001000010100000001101; + b8 = 0b00000000000000110010100010101001; + b9 = 0b00000000000000000010100000001101; + b10 = 0b00000000000000110011000000001101; + b11 = 0b00000000000000000011100000001010; + b12 = 0b00000000000100100101000100000100; + b13 = 0b00000000000000000100100111000101; + b14 = 0b00000000000000010100101000000101; + b15 = 0b00000000000011101000001110000100; + b16 = 0b00000000000000000011101001101001; + b17 = 0b00000000000000010010100101001101; + b18 = 0b00000000000000000101001101000000; + b19 = 0b11111111111111111100100000010110; + b20 = 0b00000000000000000000000000010000; - p = {b0, b1, b2, b3, b4, b5, b6, b7, b8, b9, - b10, b11, b12, b13, b14, b15, b16, b17, b18, b19}; + p = {b0, b1, b2, b3, b4, b5, b6, b7, b8, b9, b10, + b11, b12, b13, b14, b15, b16, b17, b18, b19, b20}; this->d->load(p); } - - Worker::~Worker() { emit finished(); |