Reuse predicate code analysis for constraints

David Edelsohn dje.gcc@gmail.com
Tue May 26 16:03:00 GMT 2015


On Tue, May 26, 2015 at 10:51 AM, Richard Sandiford
<richard.sandiford@arm.com> wrote:
> 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.)

I converted them to match_test to get back to bootstrap.
mem_operand_gpr should be in predicates.md, but requires a little
re-design.

- David



More information about the Gcc-patches mailing list