From 65fedeb5a7fd6ebb25379e20845f75635f28fdb6 Mon Sep 17 00:00:00 2001 From: Gabe Black Date: Wed, 4 Apr 2007 14:27:00 +0000 Subject: Made x86 ExtMachInsts distinguishable from each other by defining a real == and a real hash function. --HG-- extra : convert_revision : 30f29a36f6ab44e67e62aaf81b685fbe1267c746 --- src/arch/x86/types.hh | 21 ++++++++++++++++++++- 1 file changed, 20 insertions(+), 1 deletion(-) (limited to 'src/arch/x86/types.hh') diff --git a/src/arch/x86/types.hh b/src/arch/x86/types.hh index ca4a15d24..cdac3c00e 100644 --- a/src/arch/x86/types.hh +++ b/src/arch/x86/types.hh @@ -161,7 +161,26 @@ namespace X86ISA inline static bool operator == (const ExtMachInst &emi1, const ExtMachInst &emi2) { - //Since this is empty, it's always equal + if(emi1.legacy != emi2.legacy) + return false; + if(emi1.rex != emi2.rex) + return false; + if(emi1.opcode.num != emi2.opcode.num) + return false; + if(emi1.opcode.op != emi2.opcode.op) + return false; + if(emi1.opcode.prefixA != emi2.opcode.prefixA) + return false; + if(emi1.opcode.prefixB != emi2.opcode.prefixB) + return false; + if(emi1.modRM != emi2.modRM) + return false; + if(emi1.sib != emi2.sib) + return false; + if(emi1.immediate != emi2.immediate) + return false; + if(emi1.displacement != emi2.displacement) + return false; return true; } -- cgit v1.2.3