X86: Make sure instruction flags are set properly even on 32 bit machines.
authorGabe Black <gblack@eecs.umich.edu>
Tue, 6 Sep 2011 01:36:26 +0000 (18:36 -0700)
committerGabe Black <gblack@eecs.umich.edu>
Tue, 6 Sep 2011 01:36:26 +0000 (18:36 -0700)
commit87d687e242e3437e7e3a83e04bf9a403d95b3e9e
tree962a9678367487d02efdbecf67fda2a7886039bb
parent3bd0b9654c9757127ca4e535ed75d8c4f5671c4b
X86: Make sure instruction flags are set properly even on 32 bit machines.

The way flag bits were being set for microops in x86 ended up implicitly
calling the bitset constructor which was truncating flags beyond the width of
an unsigned long. This change sets the bits in chunks which are always small
enough to avoid being truncated. On 64 bit machines this should reduce to be
the same as before, and on 32 bit machines it should work properly and not be
unreasonably inefficient.
src/arch/x86/insts/microop.hh