gem5/src
Steve Reinhardt 5200e04e92 arch, x86: add support for arrays as memory operands
Although the cache models support wider accesses, the ISA descriptions
assume that (for the most part) memory operands are integer types,
which makes it difficult to define instructions that do memory accesses
larger than 64 bits.

This patch adds some generic support for memory operands that are arrays
of uint64_t, and specifically a 'u2qw' operand type for x86 that is an
array of 2 uint64_ts (128 bits).  This support is unused at this point,
but will be needed shortly for cmpxchg16b.  Ideally the 128-bit SSE
memory accesses will also be rewritten to use this support.

Support for 128-bit accesses could also have been added using the gcc
__int128_t extension, which would have been less disruptive.  However,
although clang also supports __int128_t, it's still non-standard.
Also, more importantly, this approach creates a path to defining
256- and 512-byte operands as well, which will be useful for eventual
AVX support.
2016-02-06 17:21:20 -08:00
..
arch arch, x86: add support for arrays as memory operands 2016-02-06 17:21:20 -08:00
base style: fix missing spaces in control statements 2016-02-06 17:21:19 -08:00
cpu style: eliminate explicit boolean comparisons 2016-02-06 17:21:20 -08:00
dev style: eliminate explicit boolean comparisons 2016-02-06 17:21:20 -08:00
doc cpu: `Minor' in-order CPU model 2014-07-23 16:09:04 -05:00
doxygen MEM: Put memory system document into doxygen 2012-09-25 11:49:41 -05:00
gpu-compute gpu-compute: AMD's baseline GPU model 2016-01-19 14:28:22 -05:00
kern misc: Remove redundant compiler-specific defines 2015-10-12 04:07:59 -04:00
mem style: eliminate explicit boolean comparisons 2016-02-06 17:21:20 -08:00
proto cpu: Support virtual addr in elastic traces 2015-12-07 16:42:16 -06:00
python style: fix missing spaces in control statements 2016-02-06 17:21:19 -08:00
sim style: fix missing spaces in control statements 2016-02-06 17:21:19 -08:00
unittest style: remove trailing whitespace 2016-02-06 17:21:18 -08:00
Doxyfile Doxygen: Update the version of the Doxyfile 2012-10-11 06:38:42 -04:00
SConscript gpu-compute: AMD's baseline GPU model 2016-01-19 14:28:22 -05:00