This is the mail archive of the
binutils@sourceware.org
mailing list for the binutils project.
Re: PATCH: PR gas/1874: mwait/monitor don't work in 64bit
On Wed, Nov 16, 2005 at 06:31:27PM +0100, Jan Beulich wrote:
> >>> "H. J. Lu" <hjl@lucon.org> 16.11.05 18:19:21 >>>
> >On Wed, Nov 16, 2005 at 06:12:30PM +0100, Jan Beulich wrote:
> >> >Are you saying "monitor %eax,%ecx,%edx" should be allowed in 64bit
> >> >mode? Why? How will it be used?
> >>
> >> Just like any other 32-bit addressing in 64-bit mode: probably
> rarely,
> >> but it should be allowed for whoever is able to find meaningful use
> for
> >> this. We also don't disallow 16-bit addressing in 32-bit mode, even
> >> though it's unlikely to ever be used...
> >
> >I disagree. In 64bit mode, the correct way to use monitor is
> >
> > load %rax
> > load %edx
> > load %ecx
> > monitor %rax, %edx, %ecx # It is the same as "monitor".
> >
> >It is misleading and confusing to do
> >
> > load %eax
> > load %edx
> > load %ecx
> > monitor %eax, %edx, %ecx
> >
> >Assembler will generate the same opcode for those forms anyway. I
> don't
> >see why "monitor %eax, %edx, %ecx" has to be allowed in 64bit.
>
> That's what's wrong - the second form should emit an address size
> override.
I am trying to find out if the address size prefix will be ignored or
not.
H.J.