From: H. P. A. <hp...@zy...> - 2014-01-01 00:31:18
|
On 12/31/2013 04:16 PM, H. Peter Anvin wrote: >> >> An explicit NOSPLIT isn't something that NASM >> can just ignore. > > [nosplit eax+eax] generating [nosplit eax*2] seems like nothing so much > as a bug. Seriously. What on Earth would lead you to rely on such > insane behavior? > To put things differently: what is the specific behavior you rely on, what made you rely on that specific behavior, and how would this naturally appear in programmers' code? Your previous communications on this have been very hard to extract that kind of information from. For example, you write: >> [nosplit eax] has been encoded as [eax*1+0] since 0.98.34. >> But this seems like unexpected behavior. > > Actually, it is intentional/expected behavior. It has been undocumented all along, and looks nothing so much as an unintentional consequence of Debbie, who implemented this, not wanting to deal with distinguishing "reg*1" from "reg". So when you say "intentional/expected behavior" I would argue it is very questionable on both fronts. -hpa |