From a345b5b02652cfa82f18a995fa939a6009ffd73c Mon Sep 17 00:00:00 2001 From: Segher Boessenkool Date: Thu, 1 Sep 2016 17:01:02 +0200 Subject: [PATCH] rs6000: Fix for AIX, for r239866 This should fix r239866 for AIX. I missed two patterns that refer to LR as "register_operand" "l" instead of as reg:P LR_REGNO. * config/rs6000/rs6000.md (define_insn "*return_and_restore_fpregs_aix__r11"): Delete the use of the link register. (define_insn "*return_and_restore_fpregs_aix__r1"): Ditto. From-SVN: r239940 --- gcc/ChangeLog | 7 +++++++ gcc/config/rs6000/rs6000.md | 18 ++++++++---------- 2 files changed, 15 insertions(+), 10 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 53335d916fe..24a56fa716a 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,10 @@ +2016-09-01 Segher Boessenkool + + * config/rs6000/rs6000.md + (define_insn "*return_and_restore_fpregs_aix__r11"): Delete + the use of the link register. + (define_insn "*return_and_restore_fpregs_aix__r1"): Ditto. + 2016-09-01 Bill Schmidt Michael Meissner diff --git a/gcc/config/rs6000/rs6000.md b/gcc/config/rs6000/rs6000.md index 560cf1fd740..d86d27b9102 100644 --- a/gcc/config/rs6000/rs6000.md +++ b/gcc/config/rs6000/rs6000.md @@ -12735,26 +12735,24 @@ (define_insn "*return_and_restore_fpregs_aix__r11" [(match_parallel 0 "any_parallel_operand" [(return) - (use (match_operand:P 1 "register_operand" "l")) - (use (match_operand:P 2 "symbol_ref_operand" "s")) + (use (match_operand:P 1 "symbol_ref_operand" "s")) (use (reg:P 11)) - (set (match_operand:DF 3 "gpc_reg_operand" "=d") - (match_operand:DF 4 "memory_operand" "m"))])] + (set (match_operand:DF 2 "gpc_reg_operand" "=d") + (match_operand:DF 3 "memory_operand" "m"))])] "" - "b %2" + "b %1" [(set_attr "type" "branch") (set_attr "length" "4")]) (define_insn "*return_and_restore_fpregs_aix__r1" [(match_parallel 0 "any_parallel_operand" [(return) - (use (match_operand:P 1 "register_operand" "l")) - (use (match_operand:P 2 "symbol_ref_operand" "s")) + (use (match_operand:P 1 "symbol_ref_operand" "s")) (use (reg:P 1)) - (set (match_operand:DF 3 "gpc_reg_operand" "=d") - (match_operand:DF 4 "memory_operand" "m"))])] + (set (match_operand:DF 2 "gpc_reg_operand" "=d") + (match_operand:DF 3 "memory_operand" "m"))])] "" - "b %2" + "b %1" [(set_attr "type" "branch") (set_attr "length" "4")]) -- 2.30.2