diff options
author | nickysn <nickysn@3ad0048d-3df7-0310-abae-a5850022a9f2> | 2017-04-19 15:42:50 +0000 |
---|---|---|
committer | nickysn <nickysn@3ad0048d-3df7-0310-abae-a5850022a9f2> | 2017-04-19 15:42:50 +0000 |
commit | 5dfedf150a0d03fcc392f932ef51afa7f14883fb (patch) | |
tree | 6a7f4ae16597f3e0aaaf9a95e060e385b1a2451d /compiler/x86/aasmcpu.pas | |
parent | 2a99cc7827a84672f4dca1bf02909289bc5763cf (diff) | |
download | fpc-5dfedf150a0d03fcc392f932ef51afa7f14883fb.tar.gz |
* fixes to the x86 instruction flags tracking attributes:
* AAA and AAS also read flags (AF)
* CMC reads and writes flags (it inverts CF)
* CMPSx and SCASx write flags
* CMPSx, SCASx, LODSx, STOSx, MOVSx read the direction flag
* NOT doesn't affect flags
* REP isn't affected by and doesn't affect flags
* REPE/REPNE/REPZ/REPNZ/REPC/REPNC don't write flags, only read them
* ROL and ROR don't read flags
* SAL doesn't read flags
* SHLD and SHRD don't read flags
git-svn-id: http://svn.freepascal.org/svn/fpc/trunk@35849 3ad0048d-3df7-0310-abae-a5850022a9f2
Diffstat (limited to 'compiler/x86/aasmcpu.pas')
-rw-r--r-- | compiler/x86/aasmcpu.pas | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/compiler/x86/aasmcpu.pas b/compiler/x86/aasmcpu.pas index 72f1346247..d50acdde0b 100644 --- a/compiler/x86/aasmcpu.pas +++ b/compiler/x86/aasmcpu.pas @@ -213,7 +213,7 @@ interface this changed content afterwards (add/sub/..., but e.g. not rep or movsd)} Ch_MEAX, Ch_MECX, Ch_MEDX, Ch_MEBX, Ch_MESP, Ch_MEBP, Ch_MESI, Ch_MEDI, - Ch_CDirFlag {clear direction flag}, Ch_SDirFlag {set dir flag}, + Ch_CDirFlag {clear direction flag}, Ch_SDirFlag {set dir flag},Ch_RDirFlag {read direction flag}, Ch_RFlags, Ch_WFlags, Ch_RWFlags, Ch_FPU, Ch_Rop1, Ch_Wop1, Ch_RWop1,Ch_Mop1, Ch_Rop2, Ch_Wop2, Ch_RWop2,Ch_Mop2, |