digitalmars.D.bugs - [Issue 1862] New: asm: [ESI+1*EAX] should be a legal addr mode
- d-bugmail puremagic.com (24/24) Feb 22 2008 http://d.puremagic.com/issues/show_bug.cgi?id=1862
- d-bugmail puremagic.com (9/9) Mar 06 2008 http://d.puremagic.com/issues/show_bug.cgi?id=1862
http://d.puremagic.com/issues/show_bug.cgi?id=1862
Summary: asm: [ESI+1*EAX] should be a legal addr mode
Product: D
Version: 1.025
Platform: PC
OS/Version: Windows
Status: NEW
Severity: minor
Priority: P2
Component: DMD
AssignedTo: bugzilla digitalmars.com
ReportedBy: clugdbug yahoo.com.au
Currently gives a 'bad addr mode' error, eg:
asm {
movapd XMM1, [ESI+1*EAX];
}
It correctly accepts multipliers of 2, 4, 8, and 16, but a multiplier of 1
should be legal. The reason for wanting this is that it allows you to control
which register is used for scaling. movapd XMM1, [ESI+EAX] can be encoded as
either
movapd XMM1, [1*ESI+EAX] or as movapd XMM1, [ESI+1*EAX]
This makes a difference when you have a RAT stall caused by reading too many
registers in a single clock cycle.
--
Feb 22 2008
http://d.puremagic.com/issues/show_bug.cgi?id=1862
bugzilla digitalmars.com changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution| |FIXED
Fixed dmd 1.028 and 2.012
--
Mar 06 2008








d-bugmail puremagic.com