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}: { |             case arch::traits<ARCH>::opcode_e::${instr.name}: { | ||||||
|                 <%instr.fields.eachLine{%>${it} |                 <%instr.fields.eachLine{%>${it} | ||||||
|                 <%}%>if(this->disass_enabled){ |                 <%}%>if(this->disass_enabled){ | ||||||
| 		            /* generate console output when executing the command */ |                     /* generate console output when executing the command */<%instr.disass.eachLine{%> | ||||||
| 		            <%instr.disass.eachLine{%>${it} |                     ${it}<%}%> | ||||||
| 		            <%}%> |  | ||||||
|                 } |                 } | ||||||
|                 // used registers<%instr.usedVariables.each{ k,v-> |                 // used registers<%instr.usedVariables.each{ k,v-> | ||||||
|                 if(v.isArray) {%> |                 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}]); |                 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 |                 <%}}%>// calculate next pc value | ||||||
|                 *NEXT_PC = *PC + ${instr.length/8}; |                 *NEXT_PC = *PC + ${instr.length/8}; | ||||||
| 		        // execute instruction |                 // execute instruction<%instr.behavior.eachLine{%> | ||||||
|                 try { |                 ${it}<%}%> | ||||||
|                 <%instr.behavior.eachLine{%>${it} |  | ||||||
| 		        <%}%> |  | ||||||
| 		        } catch(...){} |  | ||||||
|                 TRAP_${instr.name}:break; |                 TRAP_${instr.name}:break; | ||||||
|             }// @suppress("No break at end of case")<%}%> |             }// @suppress("No break at end of case")<%}%> | ||||||
|             default: { |             default: { | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user