Compare commits
	
		
			1 Commits
		
	
	
		
			1c90fe765d
			...
			5d481eb79d
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 5d481eb79d | 
| @@ -303,9 +303,8 @@ typename vm_base<ARCH>::virt_addr_t vm_impl<ARCH>::execute_inst(finish_cond_e co | ||||
|             case arch::traits<ARCH>::opcode_e::${instr.name}: { | ||||
|                 <%instr.fields.eachLine{%>${it} | ||||
|                 <%}%>if(this->disass_enabled){ | ||||
| 		            /* generate console output when executing the command */ | ||||
| 		            <%instr.disass.eachLine{%>${it} | ||||
| 		            <%}%> | ||||
|                     /* generate console output when executing the command */<%instr.disass.eachLine{%> | ||||
|                     ${it}<%}%> | ||||
|                 } | ||||
|                 // used registers<%instr.usedVariables.each{ k,v-> | ||||
|                 if(v.isArray) {%> | ||||
| @@ -313,11 +312,8 @@ typename vm_base<ARCH>::virt_addr_t vm_impl<ARCH>::execute_inst(finish_cond_e co | ||||
|                 auto* ${k} = reinterpret_cast<uint${nativeTypeSize(v.type.size)}_t*>(this->regs_base_ptr+arch::traits<ARCH>::reg_byte_offsets[arch::traits<ARCH>::${k}]); | ||||
|                 <%}}%>// calculate next pc value | ||||
|                 *NEXT_PC = *PC + ${instr.length/8}; | ||||
| 		        // execute instruction | ||||
|                 try { | ||||
|                 <%instr.behavior.eachLine{%>${it} | ||||
| 		        <%}%> | ||||
| 		        } catch(...){} | ||||
|                 // execute instruction<%instr.behavior.eachLine{%> | ||||
|                 ${it}<%}%> | ||||
|                 TRAP_${instr.name}:break; | ||||
|             }// @suppress("No break at end of case")<%}%> | ||||
|             default: { | ||||
|   | ||||
		Reference in New Issue
	
	Block a user