This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
[PATCH 2/4] The main m68k cc0 conversion
- From: Bernd Schmidt <bernds_cb1 at t-online dot de>
- To: GCC Patches <gcc-patches at gcc dot gnu dot org>
- Date: Wed, 13 Nov 2019 14:09:27 +0100
- Subject: [PATCH 2/4] The main m68k cc0 conversion
- References: <d26447a6-c97a-149d-393a-a0f15a3d8c0a@t-online.de>
This achieves the conversion by using combined cbranch/cstore patterns,
and using a mechanism similar to the cc_status tracking to elide certain
comparisons. Unlike cc_status, this is opt-in and requires a
flags_valid attribute to be set for suitable instructions. Due to lack
of test hardware, this conversion is omitted for a number of coldfire
patterns as opposed to normal m68k.
For DImode comparisons, scc_di and beq0_di/bne0_di patterns already
existed and are reused. The bgt0_di/ble0_di patterns are replaced with
expander code to test just the high word, along with some smarts in
m68k_find_flags_value.
Bernd