From: Pouya Fotouhi Date: Mon, 26 Aug 2019 23:15:44 +0000 (-0500) Subject: arch-x86: Adding warning for movnti X-Git-Tag: v19.0.0.0~595 X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=0a81382970d2bb0545e572bb7aa5cbb9b366d525;p=gem5.git 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 Reviewed-by: Jason Lowe-Power Maintainer: Jason Lowe-Power --- diff --git a/src/arch/x86/isa/decoder/two_byte_opcodes.isa b/src/arch/x86/isa/decoder/two_byte_opcodes.isa index a23531c13..348bff32e 100644 --- a/src/arch/x86/isa/decoder/two_byte_opcodes.isa +++ b/src/arch/x86/isa/decoder/two_byte_opcodes.isa @@ -878,6 +878,8 @@ // no prefix 0x0: decode OPCODE_OP_BOTTOM3 { 0x2: CMPPS(Vo,Wo,Ib); + //Non-temporal hint is ignored since we don't have + //proper support for it in the memory system. 0x3: MOVNTI(Mdp,Gdp); 0x4: PINSRW(Pq,Ew,Ib); 0x5: PEXTRW(Gd,PRq,Ib); diff --git a/src/arch/x86/isa/insts/general_purpose/data_transfer/move.py b/src/arch/x86/isa/insts/general_purpose/data_transfer/move.py index 13d2f18e0..91cf92a58 100644 --- a/src/arch/x86/isa/insts/general_purpose/data_transfer/move.py +++ b/src/arch/x86/isa/insts/general_purpose/data_transfer/move.py @@ -333,10 +333,12 @@ processDescriptor: }; def macroop MOVNTI_M_R { + warn_once "MOVNTI: Ignoring non-temporal hint, modeling as cacheable!" st reg, seg, sib, disp }; def macroop MOVNTI_P_R { + warn_once "MOVNTI_P: Ignoring non-temporal hint, modeling as cacheable!" rdip t7 st reg, seg, riprel, disp };