This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: Reuse predicate code analysis for constraints
- From: Richard Sandiford <richard dot sandiford at arm dot com>
- To: Bill Schmidt <wschmidt at linux dot vnet dot ibm dot com>
- Cc: "gcc-patches\ at gcc dot gnu dot org" <gcc-patches at gcc dot gnu dot org>, "dje dot gcc\ at gmail dot com" <dje dot gcc at gmail dot com>
- Date: Tue, 26 May 2015 15:51:32 +0100
- Subject: Re: Reuse predicate code analysis for constraints
- Authentication-results: sourceware.org; auth=none
- References: <87382o4o0b dot fsf at e105548-lin dot cambridge dot arm dot com> <1432650122 dot 3150 dot 1 dot camel at gnopaine>
Bill Schmidt <wschmidt@linux.vnet.ibm.com> writes:
> Hi Richard,
>
> Unfortunately this broke the Power builds:
>
> /home/wschmidt/gcc/gcc-mainline-base/gcc/config/rs6000/constraints.md:211:
> reference to unknown predicate 'mem_operand_gpr'
> /home/wschmidt/gcc/gcc-mainline-base/gcc/config/rs6000/constraints.md:242:
> reference to unknown predicate 'small_data_operand'
>
> I haven't had time to investigate further -- will be in meetings most of
> the morning.
This is because those functions aren't defined as predicates in the .md file,
but are being used with match_operand. If they're meant to be "real"
predicates, they should be defined in predicates.md rather than rs6000.c.
If they're just query functions, you can use match_test instead of
match_operand. (In that case there's probably no point passing the mode.)
Thanks,
Richard