[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Bug gas/26685] Error: invalid register operand size for `movdir64b'
From: |
jbeulich at suse dot com |
Subject: |
[Bug gas/26685] Error: invalid register operand size for `movdir64b' |
Date: |
Thu, 01 Oct 2020 13:12:38 +0000 |
https://sourceware.org/bugzilla/show_bug.cgi?id=26685
--- Comment #13 from Jan Beulich <jbeulich at suse dot com> ---
(In reply to H.J. Lu from comment #12)
> (In reply to Jan Beulich from comment #11)
> > (In reply to H.J. Lu from comment #10)
> > > symbol(%rip) is similar to symbol and DISP. There is no real register
> > > in memory operand.
> >
> > I disagree - the compiler ought to emit
> >
> > movdir64b foo(%eip), %eax
> >
> > or
> >
> > movdir64b foo(%rip), %rax
>
> This is wrong for x32.
You mean both, or (I assume) just the latter?
> > in this case, whatever fits the x32 model better. The compiler ought to in
> > particular be aware that the register operand of this insn is
> > address-size-prefix, not operand-size-/REX-prefix controlled.
>
> There is no RIP register in GCC. It isn't a real register. GCC always
> generate foo(%rip).
That's not interesting, it's a gcc internal thing how to arrange for correct
code to be generated. At the insn template level it's only %<number> anyway.
What is needed is some sort of flag to indicate that in this specific case it
needs to be foo(%eip).
--
You are receiving this mail because:
You are on the CC list for the bug.
- [Bug gas/26685] Error: invalid register operand size for `movdir64b', jbeulich at suse dot com, 2020/10/01
- [Bug gas/26685] Error: invalid register operand size for `movdir64b', hjl.tools at gmail dot com, 2020/10/01
- [Bug gas/26685] Error: invalid register operand size for `movdir64b', jbeulich at suse dot com, 2020/10/01
- [Bug gas/26685] Error: invalid register operand size for `movdir64b', hjl.tools at gmail dot com, 2020/10/01
- [Bug gas/26685] Error: invalid register operand size for `movdir64b', jbeulich at suse dot com, 2020/10/01
- [Bug gas/26685] Error: invalid register operand size for `movdir64b', hjl.tools at gmail dot com, 2020/10/01
- [Bug gas/26685] Error: invalid register operand size for `movdir64b', jbeulich at suse dot com, 2020/10/01
- [Bug gas/26685] Error: invalid register operand size for `movdir64b', hjl.tools at gmail dot com, 2020/10/01
- [Bug gas/26685] Error: invalid register operand size for `movdir64b', jbeulich at suse dot com, 2020/10/01
- [Bug gas/26685] Error: invalid register operand size for `movdir64b', hjl.tools at gmail dot com, 2020/10/01
- [Bug gas/26685] Error: invalid register operand size for `movdir64b',
jbeulich at suse dot com <=
- [Bug gas/26685] Error: invalid register operand size for `movdir64b', hjl.tools at gmail dot com, 2020/10/01
- [Bug gas/26685] Error: invalid register operand size for `movdir64b', jbeulich at suse dot com, 2020/10/01
- [Bug gas/26685] Error: invalid register operand size for `movdir64b', hjl.tools at gmail dot com, 2020/10/01
- [Bug gas/26685] Error: invalid register operand size for `movdir64b', cvs-commit at gcc dot gnu.org, 2020/10/03
- [Bug gas/26685] Error: invalid register operand size for `movdir64b', cvs-commit at gcc dot gnu.org, 2020/10/07
- [Bug gas/26685] Error: invalid register operand size for `movdir64b', cvs-commit at gcc dot gnu.org, 2020/10/07
- [Bug gas/26685] Error: invalid register operand size for `movdir64b', hjl.tools at gmail dot com, 2020/10/07