History log of /gem5/src/arch/x86/isa/insts/general_purpose/data_transfer/
Revision Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
14224:2edf6ec03c9d 26-Aug-2019 Pouya Fotouhi <Pouya.Fotouhi@amd.com>

arch-x86: Adding warning for movnti

We are ignoring the non-temporal hint here, and implementing this
instruction as a cacheable instruction.

This change adds a warning to let user know about this workaround.

Change-Id: I2e40437a44282fe9cf7772a25a8870bd8729a6ed
Reviewed-on: https://gem5-review.googlesource.com/c/public/gem5/+/20428
Tested-by: kokoro <noreply+kokoro@google.com>
Reviewed-by: Jason Lowe-Power <jason@lowepower.com>
Maintainer: Jason Lowe-Power <jason@lowepower.com>

12584:2af98e1fb894 12-Mar-2018 Gabe Black <gabeblack@google.com>

x86: Replace the .serializing directive with .serialize_(before|after).

This makes it explicit which type of serialization you want, and also
makes it possible to make a macroop serialize before. The old
serializing directive was renamed .serialize_after in the microcode
assembler, and throughout the microcode implementation, and its
behavior is unchanged. More specifically, it still marks the last
microop within the macroop as IsSerializing and IsSerializeAfter.

The new .serialize_before directive does something similar and marks
the first microop as IsSerializing and IsSerializeBefore.

Change-Id: Ia53466c734c651c65400809de7ef903c4a6c3e7e
Reviewed-on: https://gem5-review.googlesource.com/9041
Reviewed-by: Jason Lowe-Power <jason@lowepower.com>
Maintainer: Gabe Black <gabeblack@google.com>

11829:cb5390385d87 10-Feb-2017 Jason Lowe-Power <jason@lowepower.com>

x86: Fix implicit stack addressing in 64-bit mode

When in 64-bit mode, if the stack is accessed implicitly by an instruction
the alternate address prefix should be ignored if present.

This patch adds an extra flag to the ldstop which signifies when the
address override should be ignored. Then, for all of the affected
instructions, this patch adds two options to the ld and st opcode to use
the current stack addressing mode for all addresses and to ignore the
AddressSizeFlagBit. Finally, this patch updates the x86 TLB to not
truncate the address if it is in 64-bit mode and the IgnoreAddrSizeFlagBit
is set.

This fixes a problem when calling __libc_start_main with a binary that is
linked with a recent version of ld. This version of ld uses the address
override prefix (0x67) on the call instruction instead of a nop.

Note: This has not been tested in compatibility mode and only the call
instruction with the address override prefix has been tested.

See [1] page 9 (pdf page 45)

For instructions that are affected see [1] page 519 (pdf page 555).

[1] http://support.amd.com/TechDocs/24594.pdf

Signed-off-by: Jason Lowe-Power <jason@lowepower.com>

10544:049273bc03f6 17-Nov-2014 Gabe Black <gabeblack@google.com>

x86: Fix setting segment bases in real mode.

The data size used for actually writing the base value for the segment was the
default size, but really it should set the entire value without any possible
truncation.

8610:9bdd52a2214c 03-Nov-2011 Nilay Vaish<nilay@cs.wisc.edu>

x86: Add microop for fence
This patch adds a new microop for memory barrier. The microop itself does
nothing, but since it is marked as a memory barrier, the O3 CPU should flush
all the pending loads and stores before the fence to the memory system.

7872:b21a94bf6a28 02-Feb-2011 Gabe Black <gblack@eecs.umich.edu>

X86: Replace the stupd microop with a store/update sequence.

7622:b49144029ec8 23-Aug-2010 Gabe Black <gblack@eecs.umich.edu>

X86: Mark serializing macroops and regular instructions as such.

7501:a75564db03c3 21-Jul-2010 Tushar Krishna <Tushar.Krishna@amd.com>

Fix x86 XCHG macro-op to use locked micro-ops for all memory accesses

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

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


/gem5/src/arch/x86/SConscript
/gem5/src/arch/x86/X86System.py
/gem5/src/arch/x86/X86TLB.py
/gem5/src/arch/x86/arguments.hh
/gem5/src/arch/x86/bios/ACPI.py
/gem5/src/arch/x86/bios/E820.py
/gem5/src/arch/x86/bios/IntelMP.py
/gem5/src/arch/x86/bios/SConscript
/gem5/src/arch/x86/bios/SMBios.py
/gem5/src/arch/x86/bios/acpi.cc
/gem5/src/arch/x86/bios/acpi.hh
/gem5/src/arch/x86/bios/e820.cc
/gem5/src/arch/x86/bios/e820.hh
/gem5/src/arch/x86/bios/intelmp.cc
/gem5/src/arch/x86/bios/intelmp.hh
/gem5/src/arch/x86/bios/smbios.cc
/gem5/src/arch/x86/bios/smbios.hh
/gem5/src/arch/x86/emulenv.cc
/gem5/src/arch/x86/emulenv.hh
/gem5/src/arch/x86/faults.cc
/gem5/src/arch/x86/faults.hh
/gem5/src/arch/x86/floatregs.hh
/gem5/src/arch/x86/insts/macroop.hh
/gem5/src/arch/x86/insts/microfpop.cc
/gem5/src/arch/x86/insts/microfpop.hh
/gem5/src/arch/x86/insts/microldstop.cc
/gem5/src/arch/x86/insts/microldstop.hh
/gem5/src/arch/x86/insts/microop.cc
/gem5/src/arch/x86/insts/microop.hh
/gem5/src/arch/x86/insts/microregop.cc
/gem5/src/arch/x86/insts/microregop.hh
/gem5/src/arch/x86/insts/static_inst.cc
/gem5/src/arch/x86/insts/static_inst.hh
/gem5/src/arch/x86/interrupts.cc
/gem5/src/arch/x86/interrupts.hh
/gem5/src/arch/x86/intregs.hh
/gem5/src/arch/x86/isa/bitfields.isa
/gem5/src/arch/x86/isa/decoder/decoder.isa
/gem5/src/arch/x86/isa/decoder/one_byte_opcodes.isa
/gem5/src/arch/x86/isa/decoder/two_byte_opcodes.isa
/gem5/src/arch/x86/isa/decoder/x87.isa
/gem5/src/arch/x86/isa/formats/basic.isa
/gem5/src/arch/x86/isa/formats/cpuid.isa
/gem5/src/arch/x86/isa/formats/error.isa
/gem5/src/arch/x86/isa/formats/formats.isa
/gem5/src/arch/x86/isa/formats/multi.isa
/gem5/src/arch/x86/isa/formats/string.isa
/gem5/src/arch/x86/isa/formats/syscall.isa
/gem5/src/arch/x86/isa/formats/unimp.isa
/gem5/src/arch/x86/isa/formats/unknown.isa
/gem5/src/arch/x86/isa/includes.isa
/gem5/src/arch/x86/isa/insts/__init__.py
/gem5/src/arch/x86/isa/insts/general_purpose/__init__.py
/gem5/src/arch/x86/isa/insts/general_purpose/arithmetic/__init__.py
/gem5/src/arch/x86/isa/insts/general_purpose/arithmetic/add_and_subtract.py
/gem5/src/arch/x86/isa/insts/general_purpose/arithmetic/increment_and_decrement.py
/gem5/src/arch/x86/isa/insts/general_purpose/arithmetic/multiply_and_divide.py
/gem5/src/arch/x86/isa/insts/general_purpose/cache_and_memory_management.py
/gem5/src/arch/x86/isa/insts/general_purpose/compare_and_test/__init__.py
/gem5/src/arch/x86/isa/insts/general_purpose/compare_and_test/bit_scan.py
/gem5/src/arch/x86/isa/insts/general_purpose/compare_and_test/bit_test.py
/gem5/src/arch/x86/isa/insts/general_purpose/compare_and_test/bounds.py
/gem5/src/arch/x86/isa/insts/general_purpose/compare_and_test/compare.py
/gem5/src/arch/x86/isa/insts/general_purpose/compare_and_test/set_byte_on_condition.py
/gem5/src/arch/x86/isa/insts/general_purpose/compare_and_test/test.py
/gem5/src/arch/x86/isa/insts/general_purpose/control_transfer/__init__.py
/gem5/src/arch/x86/isa/insts/general_purpose/control_transfer/call.py
/gem5/src/arch/x86/isa/insts/general_purpose/control_transfer/conditional_jump.py
/gem5/src/arch/x86/isa/insts/general_purpose/control_transfer/interrupts_and_exceptions.py
/gem5/src/arch/x86/isa/insts/general_purpose/control_transfer/jump.py
/gem5/src/arch/x86/isa/insts/general_purpose/control_transfer/loop.py
/gem5/src/arch/x86/isa/insts/general_purpose/control_transfer/xreturn.py
/gem5/src/arch/x86/isa/insts/general_purpose/data_conversion/__init__.py
/gem5/src/arch/x86/isa/insts/general_purpose/data_conversion/ascii_adjust.py
/gem5/src/arch/x86/isa/insts/general_purpose/data_conversion/bcd_adjust.py
/gem5/src/arch/x86/isa/insts/general_purpose/data_conversion/endian_conversion.py
/gem5/src/arch/x86/isa/insts/general_purpose/data_conversion/extract_sign_mask.py
/gem5/src/arch/x86/isa/insts/general_purpose/data_conversion/sign_extension.py
/gem5/src/arch/x86/isa/insts/general_purpose/data_conversion/translate.py
__init__.py
conditional_move.py
move.py
stack_operations.py
xchg.py
/gem5/src/arch/x86/isa/insts/general_purpose/flags/__init__.py
/gem5/src/arch/x86/isa/insts/general_purpose/flags/load_and_store.py
/gem5/src/arch/x86/isa/insts/general_purpose/flags/push_and_pop.py
/gem5/src/arch/x86/isa/insts/general_purpose/flags/set_and_clear.py
/gem5/src/arch/x86/isa/insts/general_purpose/input_output/__init__.py
/gem5/src/arch/x86/isa/insts/general_purpose/input_output/general_io.py
/gem5/src/arch/x86/isa/insts/general_purpose/input_output/string_io.py
/gem5/src/arch/x86/isa/insts/general_purpose/load_effective_address.py
/gem5/src/arch/x86/isa/insts/general_purpose/load_segment_registers.py
/gem5/src/arch/x86/isa/insts/general_purpose/logical.py
/gem5/src/arch/x86/isa/insts/general_purpose/no_operation.py
/gem5/src/arch/x86/isa/insts/general_purpose/rotate_and_shift/__init__.py
/gem5/src/arch/x86/isa/insts/general_purpose/rotate_and_shift/rotate.py
/gem5/src/arch/x86/isa/insts/general_purpose/rotate_and_shift/shift.py
/gem5/src/arch/x86/isa/insts/general_purpose/semaphores.py
/gem5/src/arch/x86/isa/insts/general_purpose/string/__init__.py
/gem5/src/arch/x86/isa/insts/general_purpose/string/compare_strings.py
/gem5/src/arch/x86/isa/insts/general_purpose/string/load_string.py
/gem5/src/arch/x86/isa/insts/general_purpose/string/move_string.py
/gem5/src/arch/x86/isa/insts/general_purpose/string/scan_string.py
/gem5/src/arch/x86/isa/insts/general_purpose/string/store_string.py
/gem5/src/arch/x86/isa/insts/general_purpose/system_calls.py
/gem5/src/arch/x86/isa/insts/simd128/__init__.py
/gem5/src/arch/x86/isa/insts/simd128/floating_point/__init__.py
/gem5/src/arch/x86/isa/insts/simd128/floating_point/arithmetic/__init__.py
/gem5/src/arch/x86/isa/insts/simd128/floating_point/arithmetic/addition.py
/gem5/src/arch/x86/isa/insts/simd128/floating_point/arithmetic/division.py
/gem5/src/arch/x86/isa/insts/simd128/floating_point/arithmetic/horizontal_addition.py
/gem5/src/arch/x86/isa/insts/simd128/floating_point/arithmetic/horizontal_subtraction.py
/gem5/src/arch/x86/isa/insts/simd128/floating_point/arithmetic/multiplication.py
/gem5/src/arch/x86/isa/insts/simd128/floating_point/arithmetic/reciprocal_estimation.py
/gem5/src/arch/x86/isa/insts/simd128/floating_point/arithmetic/reciprocal_square_root.py
/gem5/src/arch/x86/isa/insts/simd128/floating_point/arithmetic/simultaneous_addition_and_subtraction.py
/gem5/src/arch/x86/isa/insts/simd128/floating_point/arithmetic/square_root.py
/gem5/src/arch/x86/isa/insts/simd128/floating_point/arithmetic/subtraction.py
/gem5/src/arch/x86/isa/insts/simd128/floating_point/compare/__init__.py
/gem5/src/arch/x86/isa/insts/simd128/floating_point/compare/compare_and_write_mask.py
/gem5/src/arch/x86/isa/insts/simd128/floating_point/compare/compare_and_write_minimum_or_maximum.py
/gem5/src/arch/x86/isa/insts/simd128/floating_point/compare/compare_and_write_rflags.py
/gem5/src/arch/x86/isa/insts/simd128/floating_point/data_conversion/__init__.py
/gem5/src/arch/x86/isa/insts/simd128/floating_point/data_conversion/convert_floating_point_to_floating_point.py
/gem5/src/arch/x86/isa/insts/simd128/floating_point/data_conversion/convert_floating_point_to_gpr_integer.py
/gem5/src/arch/x86/isa/insts/simd128/floating_point/data_conversion/convert_floating_point_to_mmx_integer.py
/gem5/src/arch/x86/isa/insts/simd128/floating_point/data_conversion/convert_floating_point_to_xmm_integer.py
/gem5/src/arch/x86/isa/insts/simd128/floating_point/data_reordering/__init__.py
/gem5/src/arch/x86/isa/insts/simd128/floating_point/data_reordering/shuffle.py
/gem5/src/arch/x86/isa/insts/simd128/floating_point/data_reordering/unpack_and_interleave.py
/gem5/src/arch/x86/isa/insts/simd128/floating_point/data_transfer/__init__.py
/gem5/src/arch/x86/isa/insts/simd128/floating_point/data_transfer/move.py
/gem5/src/arch/x86/isa/insts/simd128/floating_point/data_transfer/move_mask.py
/gem5/src/arch/x86/isa/insts/simd128/floating_point/data_transfer/move_non_temporal.py
/gem5/src/arch/x86/isa/insts/simd128/floating_point/data_transfer/move_with_duplication.py
/gem5/src/arch/x86/isa/insts/simd128/floating_point/logical/__init__.py
/gem5/src/arch/x86/isa/insts/simd128/floating_point/logical/andp.py
/gem5/src/arch/x86/isa/insts/simd128/floating_point/logical/exclusive_or.py
/gem5/src/arch/x86/isa/insts/simd128/floating_point/logical/orp.py
/gem5/src/arch/x86/isa/insts/simd128/integer/__init__.py
/gem5/src/arch/x86/isa/insts/simd128/integer/arithmetic/__init__.py
/gem5/src/arch/x86/isa/insts/simd128/integer/arithmetic/addition.py
/gem5/src/arch/x86/isa/insts/simd128/integer/arithmetic/average.py
/gem5/src/arch/x86/isa/insts/simd128/integer/arithmetic/multiplication.py
/gem5/src/arch/x86/isa/insts/simd128/integer/arithmetic/multiply_add.py
/gem5/src/arch/x86/isa/insts/simd128/integer/arithmetic/subtraction.py
/gem5/src/arch/x86/isa/insts/simd128/integer/arithmetic/sum_of_absolute_differences.py
/gem5/src/arch/x86/isa/insts/simd128/integer/compare/__init__.py
/gem5/src/arch/x86/isa/insts/simd128/integer/compare/compare_and_write_mask.py
/gem5/src/arch/x86/isa/insts/simd128/integer/compare/compare_and_write_minimum_or_maximum.py
/gem5/src/arch/x86/isa/insts/simd128/integer/data_conversion/__init__.py
/gem5/src/arch/x86/isa/insts/simd128/integer/data_conversion/convert_gpr_integer_to_floating_point.py
/gem5/src/arch/x86/isa/insts/simd128/integer/data_conversion/convert_integer_to_floating_point.py
/gem5/src/arch/x86/isa/insts/simd128/integer/data_conversion/convert_mmx_integer_to_floating_point.py
/gem5/src/arch/x86/isa/insts/simd128/integer/data_reordering/__init__.py
/gem5/src/arch/x86/isa/insts/simd128/integer/data_reordering/extract_and_insert.py
/gem5/src/arch/x86/isa/insts/simd128/integer/data_reordering/pack_with_saturation.py
/gem5/src/arch/x86/isa/insts/simd128/integer/data_reordering/shuffle.py
/gem5/src/arch/x86/isa/insts/simd128/integer/data_reordering/unpack_and_interleave.py
/gem5/src/arch/x86/isa/insts/simd128/integer/data_transfer/__init__.py
/gem5/src/arch/x86/isa/insts/simd128/integer/data_transfer/move.py
/gem5/src/arch/x86/isa/insts/simd128/integer/data_transfer/move_mask.py
/gem5/src/arch/x86/isa/insts/simd128/integer/data_transfer/move_non_temporal.py
/gem5/src/arch/x86/isa/insts/simd128/integer/logical/__init__.py
/gem5/src/arch/x86/isa/insts/simd128/integer/logical/exclusive_or.py
/gem5/src/arch/x86/isa/insts/simd128/integer/logical/pand.py
/gem5/src/arch/x86/isa/insts/simd128/integer/logical/por.py
/gem5/src/arch/x86/isa/insts/simd128/integer/save_and_restore_state/__init__.py
/gem5/src/arch/x86/isa/insts/simd128/integer/save_and_restore_state/save_and_restore_control_and_status.py
/gem5/src/arch/x86/isa/insts/simd128/integer/save_and_restore_state/save_and_restore_state.py
/gem5/src/arch/x86/isa/insts/simd128/integer/shift/__init__.py
/gem5/src/arch/x86/isa/insts/simd128/integer/shift/left_logical_shift.py
/gem5/src/arch/x86/isa/insts/simd128/integer/shift/right_arithmetic_shift.py
/gem5/src/arch/x86/isa/insts/simd128/integer/shift/right_logical_shift.py
/gem5/src/arch/x86/isa/insts/simd64/__init__.py
/gem5/src/arch/x86/isa/insts/simd64/floating_point/__init__.py
/gem5/src/arch/x86/isa/insts/simd64/floating_point/arithmetic/__init__.py
/gem5/src/arch/x86/isa/insts/simd64/floating_point/arithmetic/accumulation.py
/gem5/src/arch/x86/isa/insts/simd64/floating_point/arithmetic/addition.py
/gem5/src/arch/x86/isa/insts/simd64/floating_point/arithmetic/multiplication.py
/gem5/src/arch/x86/isa/insts/simd64/floating_point/arithmetic/reciprocal_estimation.py
/gem5/src/arch/x86/isa/insts/simd64/floating_point/arithmetic/reciprocal_square_root.py
/gem5/src/arch/x86/isa/insts/simd64/floating_point/arithmetic/subtraction.py
/gem5/src/arch/x86/isa/insts/simd64/floating_point/compare/__init__.py
/gem5/src/arch/x86/isa/insts/simd64/floating_point/compare/compare_and_write_mask.py
/gem5/src/arch/x86/isa/insts/simd64/floating_point/compare/compare_and_write_minimum_or_maximum.py
/gem5/src/arch/x86/isa/insts/simd64/floating_point/data_conversion.py
/gem5/src/arch/x86/isa/insts/simd64/integer/__init__.py
/gem5/src/arch/x86/isa/insts/simd64/integer/arithmetic/__init__.py
/gem5/src/arch/x86/isa/insts/simd64/integer/arithmetic/addition.py
/gem5/src/arch/x86/isa/insts/simd64/integer/arithmetic/average.py
/gem5/src/arch/x86/isa/insts/simd64/integer/arithmetic/multiplication.py
/gem5/src/arch/x86/isa/insts/simd64/integer/arithmetic/multiply_add.py
/gem5/src/arch/x86/isa/insts/simd64/integer/arithmetic/subtraction.py
/gem5/src/arch/x86/isa/insts/simd64/integer/arithmetic/sum_of_absolute_differences.py
/gem5/src/arch/x86/isa/insts/simd64/integer/compare/__init__.py
/gem5/src/arch/x86/isa/insts/simd64/integer/compare/compare_and_write_mask.py
/gem5/src/arch/x86/isa/insts/simd64/integer/compare/compare_and_write_minimum_or_maximum.py
/gem5/src/arch/x86/isa/insts/simd64/integer/data_conversion.py
/gem5/src/arch/x86/isa/insts/simd64/integer/data_reordering/__init__.py
/gem5/src/arch/x86/isa/insts/simd64/integer/data_reordering/extract_and_insert.py
/gem5/src/arch/x86/isa/insts/simd64/integer/data_reordering/pack_with_saturation.py
/gem5/src/arch/x86/isa/insts/simd64/integer/data_reordering/shuffle_and_swap.py
/gem5/src/arch/x86/isa/insts/simd64/integer/data_reordering/unpack_and_interleave.py
/gem5/src/arch/x86/isa/insts/simd64/integer/data_transfer/__init__.py
/gem5/src/arch/x86/isa/insts/simd64/integer/data_transfer/move.py
/gem5/src/arch/x86/isa/insts/simd64/integer/data_transfer/move_mask.py
/gem5/src/arch/x86/isa/insts/simd64/integer/data_transfer/move_non_temporal.py
/gem5/src/arch/x86/isa/insts/simd64/integer/exit_media_state.py
/gem5/src/arch/x86/isa/insts/simd64/integer/logical/__init__.py
/gem5/src/arch/x86/isa/insts/simd64/integer/logical/exclusive_or.py
/gem5/src/arch/x86/isa/insts/simd64/integer/logical/pand.py
/gem5/src/arch/x86/isa/insts/simd64/integer/logical/por.py
/gem5/src/arch/x86/isa/insts/simd64/integer/save_and_restore_state.py
/gem5/src/arch/x86/isa/insts/simd64/integer/shift/__init__.py
/gem5/src/arch/x86/isa/insts/simd64/integer/shift/left_logical_shift.py
/gem5/src/arch/x86/isa/insts/simd64/integer/shift/right_arithmetic_shift.py
/gem5/src/arch/x86/isa/insts/simd64/integer/shift/right_logical_shift.py
/gem5/src/arch/x86/isa/insts/system/__init__.py
/gem5/src/arch/x86/isa/insts/system/halt.py
/gem5/src/arch/x86/isa/insts/system/invlpg.py
/gem5/src/arch/x86/isa/insts/system/msrs.py
/gem5/src/arch/x86/isa/insts/system/segmentation.py
/gem5/src/arch/x86/isa/insts/system/undefined_operation.py
/gem5/src/arch/x86/isa/insts/x87/__init__.py
/gem5/src/arch/x86/isa/insts/x87/arithmetic/__init__.py
/gem5/src/arch/x86/isa/insts/x87/arithmetic/addition.py
/gem5/src/arch/x86/isa/insts/x87/arithmetic/change_sign.py
/gem5/src/arch/x86/isa/insts/x87/arithmetic/division.py
/gem5/src/arch/x86/isa/insts/x87/arithmetic/multiplication.py
/gem5/src/arch/x86/isa/insts/x87/arithmetic/partial_remainder.py
/gem5/src/arch/x86/isa/insts/x87/arithmetic/round.py
/gem5/src/arch/x86/isa/insts/x87/arithmetic/square_root.py
/gem5/src/arch/x86/isa/insts/x87/arithmetic/subtraction.py
/gem5/src/arch/x86/isa/insts/x87/compare_and_test/__init__.py
/gem5/src/arch/x86/isa/insts/x87/compare_and_test/classify.py
/gem5/src/arch/x86/isa/insts/x87/compare_and_test/floating_point_ordered_compare.py
/gem5/src/arch/x86/isa/insts/x87/compare_and_test/floating_point_unordered_compare.py
/gem5/src/arch/x86/isa/insts/x87/compare_and_test/integer_compare.py
/gem5/src/arch/x86/isa/insts/x87/compare_and_test/test.py
/gem5/src/arch/x86/isa/insts/x87/control/__init__.py
/gem5/src/arch/x86/isa/insts/x87/control/clear_exceptions.py
/gem5/src/arch/x86/isa/insts/x87/control/initialize.py
/gem5/src/arch/x86/isa/insts/x87/control/save_and_restore_x87_control_word.py
/gem5/src/arch/x86/isa/insts/x87/control/save_and_restore_x87_environment.py
/gem5/src/arch/x86/isa/insts/x87/control/save_x87_status_word.py
/gem5/src/arch/x86/isa/insts/x87/control/wait_for_exceptions.py
/gem5/src/arch/x86/isa/insts/x87/data_transfer_and_conversion/__init__.py
/gem5/src/arch/x86/isa/insts/x87/data_transfer_and_conversion/conditional_move.py
/gem5/src/arch/x86/isa/insts/x87/data_transfer_and_conversion/convert_and_load_or_store_bcd.py
/gem5/src/arch/x86/isa/insts/x87/data_transfer_and_conversion/convert_and_load_or_store_integer.py
/gem5/src/arch/x86/isa/insts/x87/data_transfer_and_conversion/exchange.py
/gem5/src/arch/x86/isa/insts/x87/data_transfer_and_conversion/extract.py
/gem5/src/arch/x86/isa/insts/x87/data_transfer_and_conversion/load_or_store_floating_point.py
/gem5/src/arch/x86/isa/insts/x87/load_constants/__init__.py
/gem5/src/arch/x86/isa/insts/x87/load_constants/load_0_1_or_pi.py
/gem5/src/arch/x86/isa/insts/x87/load_constants/load_logarithm.py
/gem5/src/arch/x86/isa/insts/x87/no_operation.py
/gem5/src/arch/x86/isa/insts/x87/stack_management/__init__.py
/gem5/src/arch/x86/isa/insts/x87/stack_management/clear_state.py
/gem5/src/arch/x86/isa/insts/x87/stack_management/stack_control.py
/gem5/src/arch/x86/isa/insts/x87/transcendental_functions/__init__.py
/gem5/src/arch/x86/isa/insts/x87/transcendental_functions/logarithmic_functions.py
/gem5/src/arch/x86/isa/insts/x87/transcendental_functions/trigonometric_functions.py
/gem5/src/arch/x86/isa/macroop.isa
/gem5/src/arch/x86/isa/main.isa
/gem5/src/arch/x86/isa/microasm.isa
/gem5/src/arch/x86/isa/microops/base.isa
/gem5/src/arch/x86/isa/microops/debug.isa
/gem5/src/arch/x86/isa/microops/fpop.isa
/gem5/src/arch/x86/isa/microops/ldstop.isa
/gem5/src/arch/x86/isa/microops/limmop.isa
/gem5/src/arch/x86/isa/microops/microops.isa
/gem5/src/arch/x86/isa/microops/regop.isa
/gem5/src/arch/x86/isa/microops/seqop.isa
/gem5/src/arch/x86/isa/microops/specop.isa
/gem5/src/arch/x86/isa/operands.isa
/gem5/src/arch/x86/isa/outputblock.isa
/gem5/src/arch/x86/isa/specialize.isa
/gem5/src/arch/x86/isa_traits.hh
/gem5/src/arch/x86/kernel_stats.hh
/gem5/src/arch/x86/linux/linux.cc
/gem5/src/arch/x86/linux/linux.hh
/gem5/src/arch/x86/linux/process.cc
/gem5/src/arch/x86/linux/process.hh
/gem5/src/arch/x86/linux/syscalls.cc
/gem5/src/arch/x86/linux/system.cc
/gem5/src/arch/x86/linux/system.hh
/gem5/src/arch/x86/miscregs.hh
/gem5/src/arch/x86/mmaped_ipr.hh
/gem5/src/arch/x86/pagetable.cc
/gem5/src/arch/x86/pagetable.hh
/gem5/src/arch/x86/pagetable_walker.cc
/gem5/src/arch/x86/pagetable_walker.hh
/gem5/src/arch/x86/predecoder.cc
/gem5/src/arch/x86/predecoder.hh
/gem5/src/arch/x86/predecoder_tables.cc
/gem5/src/arch/x86/process.cc
/gem5/src/arch/x86/process.hh
/gem5/src/arch/x86/registers.hh
/gem5/src/arch/x86/remote_gdb.cc
/gem5/src/arch/x86/remote_gdb.hh
/gem5/src/arch/x86/segmentregs.hh
/gem5/src/arch/x86/system.cc
/gem5/src/arch/x86/system.hh
/gem5/src/arch/x86/tlb.cc
/gem5/src/arch/x86/tlb.hh
/gem5/src/arch/x86/types.hh
/gem5/src/arch/x86/utility.cc
/gem5/src/arch/x86/utility.hh
/gem5/src/arch/x86/vtophys.cc
/gem5/src/arch/x86/vtophys.hh
/gem5/src/arch/x86/x86_traits.hh
6733:16817406af29 10-Nov-2009 Vince Weaver <vince@csl.cornell.edu>

X86: Fix bugs in movd implementation.

Unfortunately my implementation of the movd instruction had two bugs.

In one case, when moving a 32-bit value into an xmm register, the
lower half of the xmm register was not zero extended.

The other case is that xmm was used instead of xmmlm as the source
for a register move. My test case didn't notice this at first
as it moved xmm0 to eax, which both have the same register
number.

6706:ea20065f6614 30-Oct-2009 Vince Weaver <vince@csl.cornell.edu>

X86: Implement movd_Vo_Edp on X86

This patch implements the movd_Vo_Edp series of instructions.

It addresses various concerns by Gabe Black about which file the
instruction belonged in, as well as supporting REX prefixed
instructions properly.

This instruction is needed for some of the spec2k benchmarks, most
notably bzip2.

6610:dbfe22c711d5 17-Aug-2009 Gabe Black <gblack@eecs.umich.edu>

X86: Implement MOVNTI.

6482:e4b8ec60fd4b 08-Aug-2009 Gabe Black <gblack@eecs.umich.edu>

X86: Make not taken conditional moves leave the destination alone. Adjust CMOVcc.
The manuals from both AMD and Intel say that when writing to a 32 bit
destination in 64 bit mode, the upper 32 bits of the register are filled with
zeros. They also both say that the CMOV instructions leave their destination
alone when their condition fails. Unfortunately, it seems that CMOV will zero
extend its destination register whether or not it was supposed to actually do
a move on both platforms. This seems to be the only case where this happens,
but it would be hard to say for sure.

6476:adbd07f1630d 07-Aug-2009 Gabe Black <gblack@eecs.umich.edu>

X86: Don't truncate the immediate parameter for the ENTER instruction.

6475:951199885fd8 07-Aug-2009 Gabe Black <gblack@eecs.umich.edu>

X86: Adjust the various sizes used for the enter and leave instructions.

6473:2b1bb253c05e 07-Aug-2009 Gabe Black <gblack@eecs.umich.edu>

X86: Fix a copy/paste error for cmovnp.

6344:b7104eda0795 16-Jul-2009 Gabe Black <gblack@eecs.umich.edu>

X86: Fix a number of places where the wrong form of a microop was used.

6088:c698cbf56cf1 19-Apr-2009 Gabe Black <gblack@eecs.umich.edu>

X86: Implement a locking version of XCHG.

6051:47a52383002b 19-Apr-2009 Gabe Black <gblack@eecs.umich.edu>

X86: Fix the mov to segment selector in real mode instruction microcode.

5974:9ed073dd5214 27-Feb-2009 Gabe Black <gblack@eecs.umich.edu>

X86: Set address size to 64 bits when generating addresses internally.

5934:367ac7cae7b5 25-Feb-2009 Gabe Black <gblack@eecs.umich.edu>

X86: Make rdcr use merge and the mov to control register instructions use the right operand size.

5931:d42d507ccdb1 25-Feb-2009 Gabe Black <gblack@eecs.umich.edu>

X86: Implement the mov to debug register intructions.

5928:410d14f82f13 25-Feb-2009 Gabe Black <gblack@eecs.umich.edu>

X86: Fix a few bugs with the segment register instructions in real mode.
Fix a few instances where the register form of zext was used where zexti was
intended. Also get rid of the 64 bit only rip relative addressed version since
64 bit and real mode are mutually exclusive.

5927:5e3367b103da 25-Feb-2009 Gabe Black <gblack@eecs.umich.edu>

X86: Do a merge for the zero extension microop.

5661:443e6f925027 12-Oct-2008 Gabe Black <gblack@eecs.umich.edu>

X86: Create a SeqOp class of microops and make Br one of them.

5543:3af77710f397 10-Sep-2008 Ali Saidi <saidi@eecs.umich.edu>

style: Remove non-leading tabs everywhere they shouldn't be. Developers should configure their editors to not insert tabs


/gem5/configs/common/Benchmarks.py
/gem5/src/arch/alpha/aout_machdep.h
/gem5/src/arch/alpha/ev5.cc
/gem5/src/arch/alpha/floatregfile.hh
/gem5/src/arch/alpha/ipr.cc
/gem5/src/arch/alpha/ipr.hh
/gem5/src/arch/alpha/isa_traits.hh
/gem5/src/arch/alpha/linux/linux.cc
/gem5/src/arch/alpha/linux/linux.hh
/gem5/src/arch/alpha/miscregfile.hh
/gem5/src/arch/alpha/osfpal.cc
/gem5/src/arch/alpha/pagetable.hh
/gem5/src/arch/alpha/regfile.hh
/gem5/src/arch/alpha/remote_gdb.cc
/gem5/src/arch/alpha/system.cc
/gem5/src/arch/alpha/tlb.cc
/gem5/src/arch/alpha/tru64/process.cc
/gem5/src/arch/alpha/tru64/tru64.cc
/gem5/src/arch/alpha/tru64/tru64.hh
/gem5/src/arch/isa_parser.py
/gem5/src/arch/isa_specific.hh
/gem5/src/arch/mips/isa_traits.hh
/gem5/src/arch/mips/linux/linux.cc
/gem5/src/arch/mips/linux/linux.hh
/gem5/src/arch/mips/regfile/regfile.hh
/gem5/src/arch/mips/system.cc
/gem5/src/arch/mips/tlb.cc
/gem5/src/arch/mips/tlb.hh
/gem5/src/arch/sparc/isa_traits.hh
/gem5/src/arch/sparc/linux/linux.cc
/gem5/src/arch/sparc/linux/linux.hh
/gem5/src/arch/sparc/miscregfile.hh
/gem5/src/arch/sparc/regfile.hh
/gem5/src/arch/sparc/remote_gdb.cc
/gem5/src/arch/sparc/solaris/solaris.cc
/gem5/src/arch/sparc/solaris/solaris.hh
/gem5/src/arch/sparc/sparc_traits.hh
/gem5/src/arch/x86/isa/insts/general_purpose/cache_and_memory_management.py
/gem5/src/arch/x86/isa/insts/general_purpose/control_transfer/call.py
/gem5/src/arch/x86/isa/insts/general_purpose/control_transfer/interrupts_and_exceptions.py
/gem5/src/arch/x86/isa/insts/general_purpose/data_conversion/ascii_adjust.py
/gem5/src/arch/x86/isa/insts/general_purpose/data_conversion/bcd_adjust.py
/gem5/src/arch/x86/isa/insts/general_purpose/data_conversion/endian_conversion.py
/gem5/src/arch/x86/isa/insts/general_purpose/data_conversion/extract_sign_mask.py
move.py
/gem5/src/arch/x86/isa/insts/general_purpose/load_segment_registers.py
/gem5/src/arch/x86/isa/insts/general_purpose/semaphores.py
/gem5/src/arch/x86/isa/insts/general_purpose/system_calls.py
/gem5/src/arch/x86/linux/linux.hh
/gem5/src/arch/x86/remote_gdb.cc
/gem5/src/base/bitunion.hh
/gem5/src/base/crc.cc
/gem5/src/base/fast_alloc.cc
/gem5/src/base/fast_alloc.hh
/gem5/src/base/inifile.hh
/gem5/src/base/loader/aout_object.cc
/gem5/src/base/loader/coff_sym.h
/gem5/src/base/loader/coff_symconst.h
/gem5/src/base/loader/ecoff_object.cc
/gem5/src/base/loader/elf_object.cc
/gem5/src/base/loader/hex_file.hh
/gem5/src/base/loader/object_file.hh
/gem5/src/base/loader/symtab.hh
/gem5/src/base/remote_gdb.cc
/gem5/src/base/res_list.hh
/gem5/src/base/stats/flags.hh
/gem5/src/base/stats/mysql.cc
/gem5/src/base/time.hh
/gem5/src/base/trace.hh
/gem5/src/cpu/base_dyn_inst.hh
/gem5/src/cpu/checker/cpu.hh
/gem5/src/cpu/checker/cpu_impl.hh
/gem5/src/cpu/memtest/memtest.hh
/gem5/src/cpu/o3/alpha/dyn_inst.hh
/gem5/src/cpu/o3/mips/dyn_inst.hh
/gem5/src/cpu/o3/regfile.hh
/gem5/src/cpu/ozone/back_end.hh
/gem5/src/cpu/ozone/cpu_impl.hh
/gem5/src/cpu/ozone/front_end.hh
/gem5/src/cpu/ozone/inorder_back_end.hh
/gem5/src/cpu/ozone/lsq_unit_impl.hh
/gem5/src/cpu/ozone/lw_back_end.hh
/gem5/src/cpu/simple/base.hh
/gem5/src/cpu/simple_thread.cc
/gem5/src/cpu/simple_thread.hh
/gem5/src/cpu/static_inst.hh
/gem5/src/dev/alpha/access.h
/gem5/src/dev/etherdump.cc
/gem5/src/dev/mips/access.h
/gem5/src/dev/ns_gige.hh
/gem5/src/dev/pcidev.cc
/gem5/src/dev/pcireg.h
/gem5/src/dev/sinicreg.hh
/gem5/src/kern/linux/linux.hh
/gem5/src/kern/operatingsystem.hh
/gem5/src/kern/solaris/solaris.hh
/gem5/src/kern/tru64/mbuf.hh
/gem5/src/kern/tru64/tru64.hh
/gem5/src/kern/tru64/tru64_syscalls.cc
/gem5/src/mem/cache/blk.hh
/gem5/src/mem/cache/builder.cc
/gem5/src/mem/cache/prefetch/stride.cc
/gem5/src/mem/cache/prefetch/stride.hh
/gem5/src/mem/cache/tags/iic.cc
/gem5/src/mem/cache/tags/lru.cc
/gem5/src/mem/cache/tags/lru.hh
/gem5/src/mem/cache/tags/split_lru.cc
/gem5/src/mem/dram.cc
/gem5/src/mem/physical.hh
/gem5/src/mem/request.hh
/gem5/src/python/m5/SimObject.py
/gem5/src/sim/async.hh
/gem5/src/sim/debug.cc
/gem5/src/sim/eventq.hh
/gem5/src/sim/host.hh
/gem5/src/sim/insttracer.hh
/gem5/src/sim/process.hh
/gem5/src/sim/serialize.cc
/gem5/src/sim/serialize.hh
/gem5/src/sim/sim_events.hh
/gem5/src/sim/syscall_emul.cc
/gem5/src/sim/syscall_emul.hh
/gem5/util/m5/m5op_alpha.S
/gem5/util/m5/m5ops.h
/gem5/util/term/term.c
5540:bf358d99eff7 03-Sep-2008 Gabe Black <gblack@eecs.umich.edu>

X86: Fix the microcode for sign/zero extending moves that use high byte registers.


move.py
/gem5/tests/long/00.gzip/ref/x86/linux/simple-atomic/config.ini
/gem5/tests/long/00.gzip/ref/x86/linux/simple-atomic/m5stats.txt
/gem5/tests/long/00.gzip/ref/x86/linux/simple-atomic/stderr
/gem5/tests/long/00.gzip/ref/x86/linux/simple-atomic/stdout
/gem5/tests/long/10.mcf/ref/x86/linux/simple-atomic/config.ini
/gem5/tests/long/10.mcf/ref/x86/linux/simple-atomic/m5stats.txt
/gem5/tests/long/10.mcf/ref/x86/linux/simple-atomic/stderr
/gem5/tests/long/10.mcf/ref/x86/linux/simple-atomic/stdout
/gem5/tests/long/20.parser/ref/x86/linux/simple-atomic/config.ini
/gem5/tests/long/20.parser/ref/x86/linux/simple-atomic/m5stats.txt
/gem5/tests/long/20.parser/ref/x86/linux/simple-atomic/stderr
/gem5/tests/long/20.parser/ref/x86/linux/simple-atomic/stdout
/gem5/tests/long/60.bzip2/ref/x86/linux/simple-atomic/config.ini
/gem5/tests/long/60.bzip2/ref/x86/linux/simple-atomic/m5stats.txt
/gem5/tests/long/60.bzip2/ref/x86/linux/simple-atomic/stderr
/gem5/tests/long/60.bzip2/ref/x86/linux/simple-atomic/stdout
/gem5/tests/long/70.twolf/ref/x86/linux/simple-atomic/config.ini
/gem5/tests/long/70.twolf/ref/x86/linux/simple-atomic/m5stats.txt
/gem5/tests/long/70.twolf/ref/x86/linux/simple-atomic/stderr
/gem5/tests/long/70.twolf/ref/x86/linux/simple-atomic/stdout
/gem5/tests/quick/00.hello/ref/x86/linux/simple-atomic/config.ini
/gem5/tests/quick/00.hello/ref/x86/linux/simple-atomic/m5stats.txt
/gem5/tests/quick/00.hello/ref/x86/linux/simple-atomic/stderr
/gem5/tests/quick/00.hello/ref/x86/linux/simple-atomic/stdout
5433:1b0b8e9ba6a9 12-Jun-2008 Gabe Black <gblack@eecs.umich.edu>

X86: Change how segment loading is performed.

5432:e1e42f18d376 12-Jun-2008 Gabe Black <gblack@eecs.umich.edu>

X86: Make pushes and pops use the stack size instead of the data size.

5413:809f33a926c4 12-Jun-2008 Gabe Black <gblack@eecs.umich.edu>

X86: Fix a byte register indexing issue in the sign extending move from memory microcode.

5302:a1c79b171e23 02-Dec-2007 Gabe Black <gblack@eecs.umich.edu>

X86: Make the 0xA0-0xA3 versions of mov use the right sized immediates.

5296:5caa774215cd 02-Dec-2007 Gabe Black <gblack@eecs.umich.edu>

X86: Implement mov from control register.

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.

5239:0920dfb94514 12-Nov-2007 Gabe Black <gblack@eecs.umich.edu>

X86: Change the meaning of the sext and zext width operand, and make sext set zext if the sign bit is 0.

5179:9ea5593e01f2 22-Oct-2007 Gabe Black <gblack@eecs.umich.edu>

X86: Use the cda microop where appropriate. The ENTER instruction still needs these.

5176:43fb805e1b85 21-Oct-2007 Gabe Black <gblack@eecs.umich.edu>

X86: Start using the stupd microop, and update statistics accordingly.

5175:ee904e392de2 21-Oct-2007 Gabe Black <gblack@eecs.umich.edu>

X86: Implement the stupd microop ("store with update", not "stupid") and use it in ENTER.

5171:eab735dc951d 19-Oct-2007 Gabe Black <gblack@eecs.umich.edu>

X86: Implement the ENTER instruction. This could probably be optimized by cleaning up the indexing in the main loop.

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

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

5119:a4469f2919f3 03-Oct-2007 Gabe Black <gblack@eecs.umich.edu>

X86: Put ldst into the microcode (the earlier changeset didn't really).
Also clean things up as much as possible so that faulting won't break an
instruction. More microops which verify addresses are needed.

5081:2ccce8600a9d 19-Sep-2007 Gabe Black <gblack@eecs.umich.edu>

X86: Put in stubs for x87, 64 bit and 128 bit SIMD instruction microcode.


/gem5/src/arch/x86/SConscript
/gem5/src/arch/x86/isa/insts/__init__.py
/gem5/src/arch/x86/isa/insts/arithmetic/__init__.py
/gem5/src/arch/x86/isa/insts/arithmetic/add_and_subtract.py
/gem5/src/arch/x86/isa/insts/arithmetic/increment_and_decrement.py
/gem5/src/arch/x86/isa/insts/arithmetic/multiply_and_divide.py
/gem5/src/arch/x86/isa/insts/cache_and_memory_management.py
/gem5/src/arch/x86/isa/insts/compare_and_test/__init__.py
/gem5/src/arch/x86/isa/insts/compare_and_test/bit_scan.py
/gem5/src/arch/x86/isa/insts/compare_and_test/bit_test.py
/gem5/src/arch/x86/isa/insts/compare_and_test/bounds.py
/gem5/src/arch/x86/isa/insts/compare_and_test/compare.py
/gem5/src/arch/x86/isa/insts/compare_and_test/set_byte_on_condition.py
/gem5/src/arch/x86/isa/insts/compare_and_test/test.py
/gem5/src/arch/x86/isa/insts/control_transfer/__init__.py
/gem5/src/arch/x86/isa/insts/control_transfer/call.py
/gem5/src/arch/x86/isa/insts/control_transfer/conditional_jump.py
/gem5/src/arch/x86/isa/insts/control_transfer/interrupts_and_exceptions.py
/gem5/src/arch/x86/isa/insts/control_transfer/jump.py
/gem5/src/arch/x86/isa/insts/control_transfer/loop.py
/gem5/src/arch/x86/isa/insts/control_transfer/xreturn.py
/gem5/src/arch/x86/isa/insts/data_conversion/__init__.py
/gem5/src/arch/x86/isa/insts/data_conversion/ascii_adjust.py
/gem5/src/arch/x86/isa/insts/data_conversion/bcd_adjust.py
/gem5/src/arch/x86/isa/insts/data_conversion/endian_conversion.py
/gem5/src/arch/x86/isa/insts/data_conversion/extract_sign_mask.py
/gem5/src/arch/x86/isa/insts/data_conversion/sign_extension.py
/gem5/src/arch/x86/isa/insts/data_conversion/translate.py
/gem5/src/arch/x86/isa/insts/data_transfer/__init__.py
/gem5/src/arch/x86/isa/insts/data_transfer/conditional_move.py
/gem5/src/arch/x86/isa/insts/data_transfer/move.py
/gem5/src/arch/x86/isa/insts/data_transfer/stack_operations.py
/gem5/src/arch/x86/isa/insts/data_transfer/xchg.py
/gem5/src/arch/x86/isa/insts/flags/__init__.py
/gem5/src/arch/x86/isa/insts/flags/load_and_store.py
/gem5/src/arch/x86/isa/insts/flags/push_and_pop.py
/gem5/src/arch/x86/isa/insts/flags/set_and_clear.py
/gem5/src/arch/x86/isa/insts/general_purpose/__init__.py
/gem5/src/arch/x86/isa/insts/general_purpose/arithmetic/__init__.py
/gem5/src/arch/x86/isa/insts/general_purpose/arithmetic/add_and_subtract.py
/gem5/src/arch/x86/isa/insts/general_purpose/arithmetic/increment_and_decrement.py
/gem5/src/arch/x86/isa/insts/general_purpose/arithmetic/multiply_and_divide.py
/gem5/src/arch/x86/isa/insts/general_purpose/cache_and_memory_management.py
/gem5/src/arch/x86/isa/insts/general_purpose/compare_and_test/__init__.py
/gem5/src/arch/x86/isa/insts/general_purpose/compare_and_test/bit_scan.py
/gem5/src/arch/x86/isa/insts/general_purpose/compare_and_test/bit_test.py
/gem5/src/arch/x86/isa/insts/general_purpose/compare_and_test/bounds.py
/gem5/src/arch/x86/isa/insts/general_purpose/compare_and_test/compare.py
/gem5/src/arch/x86/isa/insts/general_purpose/compare_and_test/set_byte_on_condition.py
/gem5/src/arch/x86/isa/insts/general_purpose/compare_and_test/test.py
/gem5/src/arch/x86/isa/insts/general_purpose/control_transfer/__init__.py
/gem5/src/arch/x86/isa/insts/general_purpose/control_transfer/call.py
/gem5/src/arch/x86/isa/insts/general_purpose/control_transfer/conditional_jump.py
/gem5/src/arch/x86/isa/insts/general_purpose/control_transfer/interrupts_and_exceptions.py
/gem5/src/arch/x86/isa/insts/general_purpose/control_transfer/jump.py
/gem5/src/arch/x86/isa/insts/general_purpose/control_transfer/loop.py
/gem5/src/arch/x86/isa/insts/general_purpose/control_transfer/xreturn.py
/gem5/src/arch/x86/isa/insts/general_purpose/data_conversion/__init__.py
/gem5/src/arch/x86/isa/insts/general_purpose/data_conversion/ascii_adjust.py
/gem5/src/arch/x86/isa/insts/general_purpose/data_conversion/bcd_adjust.py
/gem5/src/arch/x86/isa/insts/general_purpose/data_conversion/endian_conversion.py
/gem5/src/arch/x86/isa/insts/general_purpose/data_conversion/extract_sign_mask.py
/gem5/src/arch/x86/isa/insts/general_purpose/data_conversion/sign_extension.py
/gem5/src/arch/x86/isa/insts/general_purpose/data_conversion/translate.py
__init__.py
conditional_move.py
move.py
stack_operations.py
xchg.py
/gem5/src/arch/x86/isa/insts/general_purpose/flags/__init__.py
/gem5/src/arch/x86/isa/insts/general_purpose/flags/load_and_store.py
/gem5/src/arch/x86/isa/insts/general_purpose/flags/push_and_pop.py
/gem5/src/arch/x86/isa/insts/general_purpose/flags/set_and_clear.py
/gem5/src/arch/x86/isa/insts/general_purpose/input_output/__init__.py
/gem5/src/arch/x86/isa/insts/general_purpose/input_output/general_io.py
/gem5/src/arch/x86/isa/insts/general_purpose/input_output/string_io.py
/gem5/src/arch/x86/isa/insts/general_purpose/load_effective_address.py
/gem5/src/arch/x86/isa/insts/general_purpose/load_segment_registers.py
/gem5/src/arch/x86/isa/insts/general_purpose/logical.py
/gem5/src/arch/x86/isa/insts/general_purpose/no_operation.py
/gem5/src/arch/x86/isa/insts/general_purpose/processor_information.py
/gem5/src/arch/x86/isa/insts/general_purpose/rotate_and_shift/__init__.py
/gem5/src/arch/x86/isa/insts/general_purpose/rotate_and_shift/rotate.py
/gem5/src/arch/x86/isa/insts/general_purpose/rotate_and_shift/shift.py
/gem5/src/arch/x86/isa/insts/general_purpose/semaphores.py
/gem5/src/arch/x86/isa/insts/general_purpose/string/__init__.py
/gem5/src/arch/x86/isa/insts/general_purpose/string/compare_strings.py
/gem5/src/arch/x86/isa/insts/general_purpose/string/load_string.py
/gem5/src/arch/x86/isa/insts/general_purpose/string/move_string.py
/gem5/src/arch/x86/isa/insts/general_purpose/string/scan_string.py
/gem5/src/arch/x86/isa/insts/general_purpose/string/store_string.py
/gem5/src/arch/x86/isa/insts/general_purpose/system_calls.py
/gem5/src/arch/x86/isa/insts/input_output/__init__.py
/gem5/src/arch/x86/isa/insts/input_output/general_io.py
/gem5/src/arch/x86/isa/insts/input_output/string_io.py
/gem5/src/arch/x86/isa/insts/load_effective_address.py
/gem5/src/arch/x86/isa/insts/load_segment_registers.py
/gem5/src/arch/x86/isa/insts/logical.py
/gem5/src/arch/x86/isa/insts/no_operation.py
/gem5/src/arch/x86/isa/insts/processor_information.py
/gem5/src/arch/x86/isa/insts/rotate_and_shift/__init__.py
/gem5/src/arch/x86/isa/insts/rotate_and_shift/rotate.py
/gem5/src/arch/x86/isa/insts/rotate_and_shift/shift.py
/gem5/src/arch/x86/isa/insts/semaphores.py
/gem5/src/arch/x86/isa/insts/simd128/__init__.py
/gem5/src/arch/x86/isa/insts/simd128/floating_point/__init__.py
/gem5/src/arch/x86/isa/insts/simd128/floating_point/arithmetic/__init__.py
/gem5/src/arch/x86/isa/insts/simd128/floating_point/arithmetic/addition.py
/gem5/src/arch/x86/isa/insts/simd128/floating_point/arithmetic/division.py
/gem5/src/arch/x86/isa/insts/simd128/floating_point/arithmetic/horizontal_addition.py
/gem5/src/arch/x86/isa/insts/simd128/floating_point/arithmetic/horizontal_subtraction.py
/gem5/src/arch/x86/isa/insts/simd128/floating_point/arithmetic/multiplication.py
/gem5/src/arch/x86/isa/insts/simd128/floating_point/arithmetic/reciprocal_estimation.py
/gem5/src/arch/x86/isa/insts/simd128/floating_point/arithmetic/reciprocal_square_root.py
/gem5/src/arch/x86/isa/insts/simd128/floating_point/arithmetic/simultaneous_addition_and_subtraction.py
/gem5/src/arch/x86/isa/insts/simd128/floating_point/arithmetic/square_root.py
/gem5/src/arch/x86/isa/insts/simd128/floating_point/arithmetic/subtraction.py
/gem5/src/arch/x86/isa/insts/simd128/floating_point/compare/__init__.py
/gem5/src/arch/x86/isa/insts/simd128/floating_point/compare/compare_and_write_mask.py
/gem5/src/arch/x86/isa/insts/simd128/floating_point/compare/compare_and_write_minimum_or_maximum.py
/gem5/src/arch/x86/isa/insts/simd128/floating_point/compare/compare_and_write_rflags.py
/gem5/src/arch/x86/isa/insts/simd128/floating_point/data_conversion/__init__.py
/gem5/src/arch/x86/isa/insts/simd128/floating_point/data_conversion/convert_floating_point_to_floating_point.py
/gem5/src/arch/x86/isa/insts/simd128/floating_point/data_conversion/convert_floating_point_to_gpr_integer.py
/gem5/src/arch/x86/isa/insts/simd128/floating_point/data_conversion/convert_floating_point_to_mmx_integer.py
/gem5/src/arch/x86/isa/insts/simd128/floating_point/data_conversion/convert_floating_point_to_xmm_integer.py
/gem5/src/arch/x86/isa/insts/simd128/floating_point/data_reordering/__init__.py
/gem5/src/arch/x86/isa/insts/simd128/floating_point/data_reordering/shuffle.py
/gem5/src/arch/x86/isa/insts/simd128/floating_point/data_reordering/unpack_and_interleave.py
/gem5/src/arch/x86/isa/insts/simd128/floating_point/data_transfer/__init__.py
/gem5/src/arch/x86/isa/insts/simd128/floating_point/data_transfer/move.py
/gem5/src/arch/x86/isa/insts/simd128/floating_point/data_transfer/move_mask.py
/gem5/src/arch/x86/isa/insts/simd128/floating_point/data_transfer/move_non_temporal.py
/gem5/src/arch/x86/isa/insts/simd128/floating_point/data_transfer/move_with_duplication.py
/gem5/src/arch/x86/isa/insts/simd128/floating_point/logical/__init__.py
/gem5/src/arch/x86/isa/insts/simd128/floating_point/logical/andp.py
/gem5/src/arch/x86/isa/insts/simd128/floating_point/logical/exclusive_or.py
/gem5/src/arch/x86/isa/insts/simd128/floating_point/logical/orp.py
/gem5/src/arch/x86/isa/insts/simd128/integer/__init__.py
/gem5/src/arch/x86/isa/insts/simd128/integer/arithmetic/__init__.py
/gem5/src/arch/x86/isa/insts/simd128/integer/arithmetic/addition.py
/gem5/src/arch/x86/isa/insts/simd128/integer/arithmetic/average.py
/gem5/src/arch/x86/isa/insts/simd128/integer/arithmetic/multiplication.py
/gem5/src/arch/x86/isa/insts/simd128/integer/arithmetic/multiply_add.py
/gem5/src/arch/x86/isa/insts/simd128/integer/arithmetic/subtraction.py
/gem5/src/arch/x86/isa/insts/simd128/integer/arithmetic/sum_of_absolute_differences.py
/gem5/src/arch/x86/isa/insts/simd128/integer/compare/__init__.py
/gem5/src/arch/x86/isa/insts/simd128/integer/compare/compare_and_write_mask.py
/gem5/src/arch/x86/isa/insts/simd128/integer/compare/compare_and_write_minimum_or_maximum.py
/gem5/src/arch/x86/isa/insts/simd128/integer/data_conversion/__init__.py
/gem5/src/arch/x86/isa/insts/simd128/integer/data_conversion/convert_gpr_integer_to_floating_point.py
/gem5/src/arch/x86/isa/insts/simd128/integer/data_conversion/convert_integer_to_floating_point.py
/gem5/src/arch/x86/isa/insts/simd128/integer/data_conversion/convert_mmx_integer_to_floating_point.py
/gem5/src/arch/x86/isa/insts/simd128/integer/data_reordering/__init__.py
/gem5/src/arch/x86/isa/insts/simd128/integer/data_reordering/extract_and_insert.py
/gem5/src/arch/x86/isa/insts/simd128/integer/data_reordering/pack_with_saturation.py
/gem5/src/arch/x86/isa/insts/simd128/integer/data_reordering/shuffle.py
/gem5/src/arch/x86/isa/insts/simd128/integer/data_reordering/unpack_and_interleave.py
/gem5/src/arch/x86/isa/insts/simd128/integer/data_transfer/__init__.py
/gem5/src/arch/x86/isa/insts/simd128/integer/data_transfer/move.py
/gem5/src/arch/x86/isa/insts/simd128/integer/data_transfer/move_mask.py
/gem5/src/arch/x86/isa/insts/simd128/integer/data_transfer/move_non_temporal.py
/gem5/src/arch/x86/isa/insts/simd128/integer/logical/__init__.py
/gem5/src/arch/x86/isa/insts/simd128/integer/logical/exclusive_or.py
/gem5/src/arch/x86/isa/insts/simd128/integer/logical/pand.py
/gem5/src/arch/x86/isa/insts/simd128/integer/logical/por.py
/gem5/src/arch/x86/isa/insts/simd128/integer/save_and_restore_state/__init__.py
/gem5/src/arch/x86/isa/insts/simd128/integer/save_and_restore_state/save_and_restore_control_and_status.py
/gem5/src/arch/x86/isa/insts/simd128/integer/save_and_restore_state/save_and_restore_state.py
/gem5/src/arch/x86/isa/insts/simd128/integer/shift/__init__.py
/gem5/src/arch/x86/isa/insts/simd128/integer/shift/left_logical_shift.py
/gem5/src/arch/x86/isa/insts/simd128/integer/shift/right_arithmetic_shift.py
/gem5/src/arch/x86/isa/insts/simd128/integer/shift/right_logical_shift.py
/gem5/src/arch/x86/isa/insts/simd64/__init__.py
/gem5/src/arch/x86/isa/insts/simd64/floating_point/__init__.py
/gem5/src/arch/x86/isa/insts/simd64/floating_point/arithmetic/__init__.py
/gem5/src/arch/x86/isa/insts/simd64/floating_point/arithmetic/accumulation.py
/gem5/src/arch/x86/isa/insts/simd64/floating_point/arithmetic/addition.py
/gem5/src/arch/x86/isa/insts/simd64/floating_point/arithmetic/multiplication.py
/gem5/src/arch/x86/isa/insts/simd64/floating_point/arithmetic/reciprocal_estimation.py
/gem5/src/arch/x86/isa/insts/simd64/floating_point/arithmetic/reciprocal_square_root.py
/gem5/src/arch/x86/isa/insts/simd64/floating_point/arithmetic/subtraction.py
/gem5/src/arch/x86/isa/insts/simd64/floating_point/compare/__init__.py
/gem5/src/arch/x86/isa/insts/simd64/floating_point/compare/compare_and_write_mask.py
/gem5/src/arch/x86/isa/insts/simd64/floating_point/compare/compare_and_write_minimum_or_maximum.py
/gem5/src/arch/x86/isa/insts/simd64/floating_point/data_conversion.py
/gem5/src/arch/x86/isa/insts/simd64/integer/__init__.py
/gem5/src/arch/x86/isa/insts/simd64/integer/arithmetic/__init__.py
/gem5/src/arch/x86/isa/insts/simd64/integer/arithmetic/addition.py
/gem5/src/arch/x86/isa/insts/simd64/integer/arithmetic/average.py
/gem5/src/arch/x86/isa/insts/simd64/integer/arithmetic/multiplication.py
/gem5/src/arch/x86/isa/insts/simd64/integer/arithmetic/multiply_add.py
/gem5/src/arch/x86/isa/insts/simd64/integer/arithmetic/subtraction.py
/gem5/src/arch/x86/isa/insts/simd64/integer/arithmetic/sum_of_absolute_differences.py
/gem5/src/arch/x86/isa/insts/simd64/integer/compare/__init__.py
/gem5/src/arch/x86/isa/insts/simd64/integer/compare/compare_and_write_mask.py
/gem5/src/arch/x86/isa/insts/simd64/integer/compare/compare_and_write_minimum_or_maximum.py
/gem5/src/arch/x86/isa/insts/simd64/integer/data_conversion.py
/gem5/src/arch/x86/isa/insts/simd64/integer/data_reordering/__init__.py
/gem5/src/arch/x86/isa/insts/simd64/integer/data_reordering/extract_and_insert.py
/gem5/src/arch/x86/isa/insts/simd64/integer/data_reordering/pack_with_saturation.py
/gem5/src/arch/x86/isa/insts/simd64/integer/data_reordering/shuffle_and_swap.py
/gem5/src/arch/x86/isa/insts/simd64/integer/data_reordering/unpack_and_interleave.py
/gem5/src/arch/x86/isa/insts/simd64/integer/data_transfer/__init__.py
/gem5/src/arch/x86/isa/insts/simd64/integer/data_transfer/move.py
/gem5/src/arch/x86/isa/insts/simd64/integer/data_transfer/move_mask.py
/gem5/src/arch/x86/isa/insts/simd64/integer/data_transfer/move_non_temporal.py
/gem5/src/arch/x86/isa/insts/simd64/integer/exit_media_state.py
/gem5/src/arch/x86/isa/insts/simd64/integer/logical/__init__.py
/gem5/src/arch/x86/isa/insts/simd64/integer/logical/exclusive_or.py
/gem5/src/arch/x86/isa/insts/simd64/integer/logical/pand.py
/gem5/src/arch/x86/isa/insts/simd64/integer/logical/por.py
/gem5/src/arch/x86/isa/insts/simd64/integer/save_and_restore_state.py
/gem5/src/arch/x86/isa/insts/simd64/integer/shift/__init__.py
/gem5/src/arch/x86/isa/insts/simd64/integer/shift/left_logical_shift.py
/gem5/src/arch/x86/isa/insts/simd64/integer/shift/right_arithmetic_shift.py
/gem5/src/arch/x86/isa/insts/simd64/integer/shift/right_logical_shift.py
/gem5/src/arch/x86/isa/insts/sse/__init__.py
/gem5/src/arch/x86/isa/insts/sse/add_and_subtract.py
/gem5/src/arch/x86/isa/insts/sse/compare.py
/gem5/src/arch/x86/isa/insts/sse/convert.py
/gem5/src/arch/x86/isa/insts/sse/logical.py
/gem5/src/arch/x86/isa/insts/sse/move.py
/gem5/src/arch/x86/isa/insts/sse/multiply_and_divide.py
/gem5/src/arch/x86/isa/insts/sse/square_root.py
/gem5/src/arch/x86/isa/insts/string/__init__.py
/gem5/src/arch/x86/isa/insts/string/compare_strings.py
/gem5/src/arch/x86/isa/insts/string/load_string.py
/gem5/src/arch/x86/isa/insts/string/move_string.py
/gem5/src/arch/x86/isa/insts/string/scan_string.py
/gem5/src/arch/x86/isa/insts/string/store_string.py
/gem5/src/arch/x86/isa/insts/system_calls.py
/gem5/src/arch/x86/isa/insts/x87/__init__.py
/gem5/src/arch/x86/isa/insts/x87/arithmetic/__init__.py
/gem5/src/arch/x86/isa/insts/x87/arithmetic/addition.py
/gem5/src/arch/x86/isa/insts/x87/arithmetic/change_sign.py
/gem5/src/arch/x86/isa/insts/x87/arithmetic/division.py
/gem5/src/arch/x86/isa/insts/x87/arithmetic/multiplication.py
/gem5/src/arch/x86/isa/insts/x87/arithmetic/partial_remainder.py
/gem5/src/arch/x86/isa/insts/x87/arithmetic/round.py
/gem5/src/arch/x86/isa/insts/x87/arithmetic/square_root.py
/gem5/src/arch/x86/isa/insts/x87/arithmetic/subtraction.py
/gem5/src/arch/x86/isa/insts/x87/compare_and_test/__init__.py
/gem5/src/arch/x86/isa/insts/x87/compare_and_test/classify.py
/gem5/src/arch/x86/isa/insts/x87/compare_and_test/floating_point_ordered_compare.py
/gem5/src/arch/x86/isa/insts/x87/compare_and_test/floating_point_unordered_compare.py
/gem5/src/arch/x86/isa/insts/x87/compare_and_test/integer_compare.py
/gem5/src/arch/x86/isa/insts/x87/compare_and_test/test.py
/gem5/src/arch/x86/isa/insts/x87/control/__init__.py
/gem5/src/arch/x86/isa/insts/x87/control/clear_exceptions.py
/gem5/src/arch/x86/isa/insts/x87/control/initialize.py
/gem5/src/arch/x86/isa/insts/x87/control/save_and_restore_x87_control_word.py
/gem5/src/arch/x86/isa/insts/x87/control/save_and_restore_x87_environment.py
/gem5/src/arch/x86/isa/insts/x87/control/save_x87_status_word.py
/gem5/src/arch/x86/isa/insts/x87/control/wait_for_exceptions.py
/gem5/src/arch/x86/isa/insts/x87/data_transfer_and_conversion/__init__.py
/gem5/src/arch/x86/isa/insts/x87/data_transfer_and_conversion/conditional_move.py
/gem5/src/arch/x86/isa/insts/x87/data_transfer_and_conversion/convert_and_load_or_store_bcd.py
/gem5/src/arch/x86/isa/insts/x87/data_transfer_and_conversion/convert_and_load_or_store_integer.py
/gem5/src/arch/x86/isa/insts/x87/data_transfer_and_conversion/exchange.py
/gem5/src/arch/x86/isa/insts/x87/data_transfer_and_conversion/extract.py
/gem5/src/arch/x86/isa/insts/x87/data_transfer_and_conversion/load_or_store_floating_point.py
/gem5/src/arch/x86/isa/insts/x87/load_constants/__init__.py
/gem5/src/arch/x86/isa/insts/x87/load_constants/load_0_1_or_pi.py
/gem5/src/arch/x86/isa/insts/x87/load_constants/load_logarithm.py
/gem5/src/arch/x86/isa/insts/x87/no_operation.py
/gem5/src/arch/x86/isa/insts/x87/stack_management/__init__.py
/gem5/src/arch/x86/isa/insts/x87/stack_management/clear_state.py
/gem5/src/arch/x86/isa/insts/x87/stack_management/stack_control.py
/gem5/src/arch/x86/isa/insts/x87/transcendental_functions/__init__.py
/gem5/src/arch/x86/isa/insts/x87/transcendental_functions/logarithmic_functions.py
/gem5/src/arch/x86/isa/insts/x87/transcendental_functions/trigonometric_functions.py