File tree Expand file tree Collapse file tree 5 files changed +9
-5
lines changed
arch_overlay/qc_iu/inst/Xqccmp Expand file tree Collapse file tree 5 files changed +9
-5
lines changed Original file line number Diff line number Diff line change @@ -24,6 +24,7 @@ encoding:
2424 not : [0, 1, 2, 3]
2525 - name : spimm
2626 location : 3-2
27+ left_shift : 4
2728access :
2829 s : always
2930 u : always
@@ -38,7 +39,7 @@ operation(): |
3839 XReg size = xlen() / 8;
3940 XReg nreg = (rlist == 15) ? 13 : (rlist - 3);
4041 XReg stack_aligned_adj = (nreg * size + 15) & ~0xF;
41- XReg virtual_address_new_sp = virtual_address_sp + stack_aligned_adj + spimm;
42+ XReg virtual_address_new_sp = virtual_address_sp + stack_aligned_adj + ( spimm `<< 4) ;
4243 XReg virtual_address_base = virtual_address_new_sp - size;
4344
4445
Original file line number Diff line number Diff line change @@ -24,6 +24,7 @@ encoding:
2424 not : [0, 1, 2, 3]
2525 - name : spimm
2626 location : 3-2
27+ left_shift : 4
2728access :
2829 s : always
2930 u : always
@@ -38,7 +39,7 @@ operation(): |
3839 XReg size = xlen() / 8;
3940 XReg nreg = (rlist == 15) ? 13 : (rlist - 3);
4041 XReg stack_aligned_adj = (nreg * size + 15) & ~0xF;
41- XReg virtual_address_new_sp = virtual_address_sp + stack_aligned_adj + spimm;
42+ XReg virtual_address_new_sp = virtual_address_sp + stack_aligned_adj + ( spimm `<< 4) ;
4243 XReg virtual_address_base = virtual_address_new_sp - size;
4344
4445
Original file line number Diff line number Diff line change @@ -24,6 +24,7 @@ encoding:
2424 not : [0, 1, 2, 3]
2525 - name : spimm
2626 location : 3-2
27+ left_shift : 4
2728access :
2829 s : always
2930 u : always
@@ -38,7 +39,7 @@ operation(): |
3839 XReg size = xlen() / 8;
3940 XReg nreg = (rlist == 15) ? 13 : (rlist - 3);
4041 XReg stack_aligned_adj = (nreg * size + 15) & ~0xF;
41- XReg virtual_address_new_sp = virtual_address_sp + stack_aligned_adj + spimm;
42+ XReg virtual_address_new_sp = virtual_address_sp + stack_aligned_adj + ( spimm `<< 4) ;
4243 XReg virtual_address_base = virtual_address_new_sp - size;
4344
4445 X[ 1] = read_memory_xlen(virtual_address_base - 0*size, $encoding);
Original file line number Diff line number Diff line change @@ -40,7 +40,7 @@ operation(): |
4040 XReg size = xlen() / 8;
4141 XReg nreg = (rlist == 15) ? 13 : (rlist - 3);
4242 XReg stack_aligned_adj = (nreg * size + 15) & ~0xF;
43- XReg virtual_address_new_sp = virtual_address_sp - stack_aligned_adj - spimm;
43+ XReg virtual_address_new_sp = virtual_address_sp - stack_aligned_adj - ( spimm `<< 4) ;
4444 XReg virtual_address_base = virtual_address_sp - size;
4545
4646 write_memory_xlen(virtual_address_base - 0*size, X[ 1], $encoding);
Original file line number Diff line number Diff line change @@ -26,6 +26,7 @@ encoding:
2626 not : [0, 1, 2, 3, 4]
2727 - name : spimm
2828 location : 3-2
29+ left_shift : 4
2930access :
3031 s : always
3132 u : always
@@ -40,7 +41,7 @@ operation(): |
4041 XReg size = xlen() / 8;
4142 XReg nreg = (rlist == 15) ? 13 : (rlist - 3);
4243 XReg stack_aligned_adj = (nreg * size + 15) & ~0xF;
43- XReg virtual_address_new_sp = virtual_address_sp - stack_aligned_adj - spimm;
44+ XReg virtual_address_new_sp = virtual_address_sp - stack_aligned_adj - ( spimm `<< 4) ;
4445 XReg virtual_address_base = virtual_address_sp - size;
4546
4647 write_memory_xlen(virtual_address_base - 0*size, X[ 1], $encoding);
You can’t perform that action at this time.
0 commit comments