Hi all,

This patch restricts predication for the various atomics patterns in
sync.md by using the new predicable_short_it mechanism. The load/store
exclusive and the acquire/release instructions cannot be contained
inside IT blocks in ARMv8 so the logic behind disabling their predicable
versions for ARMv8 Thumb mode is pretty straightforward.

Tested together with the other patches in the series by bootstrap on
Cortex-A15 and regtest arm-none-eabi on qemu and model.

Ok for trunk?

Thanks,
Kyrill

2013-06-05  Kyrylo Tkachov  <kyrylo.tkac...@arm.com>

        * config/arm/sync.md (atomic_loaddi_1):
        Disable predication for arm_restrict_it.
        (arm_load_exclusive<mode>): Likewise.
        (arm_load_exclusivesi): Likewise.
        (arm_load_exclusivedi): Likewise.
        (arm_load_acquire_exclusive<mode>): Likewise.
        (arm_load_acquire_exclusivesi): Likewise.
        (arm_load_acquire_exclusivedi): Likewise.
        (arm_store_exclusive<mode>): Likewise.
        (arm_store_exclusive<mode>): Likewise.
        (arm_store_release_exclusivedi): Likewise.
        (arm_store_release_exclusive<mode>): Likewise.

Attachment: 04-atomics.patch
Description: Binary data

Reply via email to