This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: reload_cse_simplify_operands
- From: Ian Lance Taylor <iant at google dot com>
- To: Hendrik Greving <hendrik dot greving dot intel at gmail dot com>
- Cc: gcc at gcc dot gnu dot org
- Date: Tue, 18 Jun 2013 12:52:12 -0700
- Subject: Re: reload_cse_simplify_operands
- References: <CANc4vhq3S8ft1qt9OwC-m9eJedigttcpOdUMFDFBcoGQ7ONKEA at mail dot gmail dot com>
On Tue, Jun 18, 2013 at 8:43 AM, Hendrik Greving
<hendrik.greving.intel@gmail.com> wrote:
> If I'm running into
>
> /* Figure out which alternative currently matches. */
> if (! constrain_operands (1))
> fatal_insn_not_found (insn);
>
> 'insn does not satisfy its constraints'
>
> By the way, the instruction is
>
> (insn 325 31 44 0 (nil) (set (mem/s:DI (plus:SI (reg:SI 58 r58 [884])
> (symbol_ref:SI ("acpi_lr_stat"))) [7427 sec 0 space 0,
> cmsmode 0 S8 A64])
> (reg:DI 56 r56)) 67 {*movdi} (nil)
> (nil))
>
>
> Asking abstractly, does this mean that I need to support more
> constraints in movdi, or does it mean that reload did something wrong?
It means that your predicate accepts operands that do not match your
constraints. So you need to support more constraints or you need to
tighten your predicates.
Ian