Hello Everyone, I wanted to introduce a new implementation for Mov Instruction using R11 register, my new opcodes are placed in two_byte.isa and I have duplicated 'mov' functionality present in files move.py and ldstop.isa.
My question is: I understand how to decode opcode for example if the new opcode is '0x11' take top 5 bits and then 3 bits to write a case function in two_byte.isa I am not understanding, how should I make sure it uses REX format same as MOV? For example: In the case of 8 bits: *41* 8a 03 mov (%r11),%al *41* 0f xx 03 new_mov (%r11),%al In the case of 16*: * *66 41* 8b 03 mov (%r11),%ax *66 41* 0f xx 03 new_mov (%r11),%ax In the case of 32*: * *41* 8b 03 mov (%r11),%eax *41* 0f xx 03 new_mov (%r11),%eax In the case of 64*: * *49* 8b 03 mov (%r11),%rax *49* 0f xx 03 new_mov (%r11),%rax ***Numbers in bold are REX bits, xx are new opcodes. Gabe or anyone who has any information on this? Best regards, Abhishek
_______________________________________________ gem5-users mailing list gem5-users@gem5.org http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users