diff options
author | Segher Boessenkool <segher@kernel.crashing.org> | 2016-09-01 15:01:02 +0000 |
---|---|---|
committer | Segher Boessenkool <segher@kernel.crashing.org> | 2016-09-01 15:01:02 +0000 |
commit | b2567f9da96a303f4b57e7d534b2b3facbd8c6e6 (patch) | |
tree | cdbd0f14fabb3df8a4ebed61fa0e2f742c86ece3 | |
parent | 9f00e76c328a677d3e2cd18ac31f99ae00030401 (diff) |
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_<mode>_r11"): Delete
the use of the link register.
(define_insn "*return_and_restore_fpregs_aix_<mode>_r1"): Ditto.
git-svn-id: https://gcc.gnu.org/svn/gcc/trunk@239940 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r-- | gcc/ChangeLog | 7 | ||||
-rw-r--r-- | 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 <segher@kernel.crashing.org> + + * config/rs6000/rs6000.md + (define_insn "*return_and_restore_fpregs_aix_<mode>_r11"): Delete + the use of the link register. + (define_insn "*return_and_restore_fpregs_aix_<mode>_r1"): Ditto. + 2016-09-01 Bill Schmidt <wschmidt@linux.vnet.ibm.com> Michael Meissner <meissner@linux.vnet.ibm.com> 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_<mode>_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_<mode>_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")]) |