rs6000.md (UNSPEC_MV_CR_GT): New constant.
* config/rs6000/rs6000.md (UNSPEC_MV_CR_GT): New constant. (move_from_CR_gt_bit): New. (cceq_ior_compare): Name previously unnamed pattern. Disable for E500. (cceq_rev_compare): Name previously unnamed pattern. Allow for E500. * config/rs6000/spe.md (cmpsfeq_gpr): Rewrite as unspec. (tstsfeq_gpr): Same. (cmpsfgt_gpr): Same. (tstsfgt_gpr): Same. (cmpsflt_gpr): Same. (tstsflt_gpr): Same. (e500_cceq_ior_compare): New. (e500_flip_gt_bit): New. * config/rs6000/rs6000.c (ccr_bit): Remove E500 specific code. (print_operand): Add 'c' and 'D'. (rs6000_generate_compare): Rewrite to generate correct rtl. (rs6000_emit_sCOND): Handle E500. (output_cbranch): Adjust for changes in rs6000_generate_compare. (output_e500_flip_gt_bit): New. * config/rs6000/rs6000-protos.h (output_e500_flip_gt_bit): Protoize. From-SVN: r80876
Showing
Please
register
or
sign in
to comment