History log of /gem5/src/arch/x86/isa/specialize.isa
Revision Date Author Comments
# 12104:edd63f9c6184 05-Apr-2017 Nathanael Premillieu <nathanael.premillieu@arm.com>

arch, cpu: Architectural Register structural indexing

Replace the unified register mapping with a structure associating
a class and an index. It is now much easier to know which class of
register the index is referring to. Also, when adding a new class
there is no need to modify existing ones.

Change-Id: I55b3ac80763702aa2cd3ed2cbff0a75ef7620373
Reviewed-by: Andreas Sandberg <andreas.sandberg@arm.com>
[ Fix RISCV build issues ]
Signed-off-by: Andreas Sandberg <andreas.sandberg@arm.com>
Reviewed-on: https://gem5-review.googlesource.com/2700


# 8250:de679a068dd8 23-Apr-2011 Gabe Black <gblack@eecs.umich.edu>

X86: When decoding a memory only inst, fault on reg encodings, don't assert.

This change makes the decoder figure out if an instruction that only supports
memory is using a register encoding and decodes directly to "Unknown" which will
behave appropriately. This prevents other parts of the instruction creation
process from seeing the mismatch and asserting.


# 7087:fb8d5786ff30 24-May-2010 Nathan Binkert <nate@binkert.org>

copyright: Change HP copyright on x86 code to be more friendly


# 6519:36369ba5fad6 17-Aug-2009 Gabe Black <gblack@eecs.umich.edu>

X86: Ignore the size part of XMM/MMX operands. The instructions know what they want.


# 6518:1ad4a7774b3c 17-Aug-2009 Gabe Black <gblack@eecs.umich.edu>

X86: Use suffixes to differentiate XMM/MMX/GPR operands.


# 5788:6d4161a36ca1 07-Jan-2009 Gabe Black <gblack@eecs.umich.edu>

X86: Autogenerate macroop generateDisassemble function.


# 5294:7222bdaed33b 02-Dec-2007 Gabe Black <gblack@eecs.umich.edu>

X86: Reorganize segmentation and implement segment selector movs.


# 5241:a6602acdd046 12-Nov-2007 Gabe Black <gblack@eecs.umich.edu>

X86: Implement the wrcr microop which writes a control register, and some control register work.


# 5151:dec27c6c2b3b 12-Oct-2007 Gabe Black <gblack@eecs.umich.edu>

X86: Added some new versions of MOV and a new argument type tag.


# 4868:99d4946469a1 04-Aug-2007 Gabe Black <gblack@eecs.umich.edu>

X86: Implement microops and instructions that manipulate the flags register.


# 4865:4f4a7fe48b5b 04-Aug-2007 Gabe Black <gblack@eecs.umich.edu>

X86: Make fixed register operands ignore register index extensions from the REX prefix.
The only cases where this was the correct behavior are now handled with the
"B" operand type, and doing things this way was breaking some instructions,
notably a shift.


# 4817:4888643b143c 30-Jul-2007 Gabe Black <gblack@eecs.umich.edu>

X86: Allow RIP relative decode on -all- memory forms of operands.


# 4746:7960a6867f55 22-Jul-2007 Gabe Black <gblack@eecs.umich.edu>

Make the operand size reflect the size specifier on the operand tags, and implement NEG


# 4716:68cc9f2d4f73 20-Jul-2007 Gabe Black <gblack@eecs.umich.edu>

Add a parameter type to read a register index from the opcode itself.


# 4609:29b5f66fed1a 20-Jun-2007 Gabe Black <gblack@eecs.umich.edu>

Implement rip relative addressing and put in some missing loads and stores.


# 4601:38c989d15fef 20-Jun-2007 Gabe Black <gblack@eecs.umich.edu>

Make memory instructions work better, add more macroop implementations, add an lea microop, move EmulEnv into it's own .cc and .hh.


# 4582:963ea0dcf174 18-Jun-2007 Gabe Black <gblack@eecs.umich.edu>

Get rid of unnecessary output.


# 4575:d0017efdfa02 14-Jun-2007 Gabe Black <gblack@eecs.umich.edu>

Implement a handful more instructions and differentiate macroops based on the operand types they expect.


# 4568:65dcd045da1d 14-Jun-2007 Gabe Black <gblack@eecs.umich.edu>

Get rid of an unnecessary debug statement.


# 4563:a2dab6654eee 13-Jun-2007 Gabe Black <gblack@eecs.umich.edu>

Fix the operand type tag parser to recognize multi character register names.


# 4559:f3ef61d0b992 12-Jun-2007 Gabe Black <gblack@eecs.umich.edu>

Minor comment fix up.


# 4548:1738b4f7bac8 12-Jun-2007 Gabe Black <gblack@eecs.umich.edu>

Make use of some of the REX prefix.


# 4542:f6ca2384b304 12-Jun-2007 Gabe Black <gblack@eecs.umich.edu>

Use objects to pass around output code, and fix/implement a few things.

src/arch/x86/isa/formats/multi.isa:
Make the formats use objects to pass around output code.


# 4532:106c0fb74f7c 08-Jun-2007 Gabe Black <gblack@eecs.umich.edu>

Clean things up a little.


# 4528:f0b19ee67a7b 08-Jun-2007 Gabe Black <gblack@eecs.umich.edu>

Big changes to use the new microcode assembler.


# 4371:c5003760793e 10-Apr-2007 Gabe Black <gblack@eecs.umich.edu>

Reworked x86 a bit


# 4348:5c21bdb46e6d 06-Apr-2007 Gabe Black <gblack@eecs.umich.edu>

Move the instruction specialization stuff out of the microassembler file, and added some comments to main.isa