This is the mail archive of the mailing list for the GCC project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [AArch64] Fix predicate and constraint mismatch in logical atomic operations

On Tue, Nov 4, 2014 at 11:44 AM, Marcus Shawcroft
<> wrote:
> On 25 September 2014 04:45, Michael Collison
> <> wrote:
>> On certain patterns in the constraint 'n' is used in combination
>> with the predicate atomic_op_operand. The constraint is too general and
>> allows constants that are disallowed by the predicate. This causes an ICE In
>> final_scan_insn when the insn cannot be split because the constraint and
>> predicate do not match.
>> Tested on aarch64-none-elf, aarch64-linux-gnu. Additionally the originally
>> reporter of the bug, (, applied the patch and successfully
>> bootstrapped and tested with no regressions.
>> 2014-09-23  Michael Collison <>
>>     * config/aarch64/ (lconst_atomic): New mode attribute to
>>     support constraints for CONST_INT in atomic operations.
>>     * config/aarch64/
>>     (atomic_<atomic_optab><mode>): Use lconst_atomic constraint.
>>     (atomic_nand<mode>): Likewise.
>>     (atomic_fetch_<atomic_optab><mode>): Likewise.
>>     (atomic_fetch_nand<mode>): Likewise.
>>     (atomic_<atomic_optab>_fetch<mode>): Likewise.
>>     (atomic_nand_fetch<mode>): Likewise.
> OK Thanks.  /Marcus

Can you please backport this to all release branches as well?


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]