Skip to content

Commit

Permalink
combine: Don't make an intermediate reg for assigning to sfp (PR87871)
Browse files Browse the repository at this point in the history
The code with an intermediate register is perfectly fine, but LRA
apparently cannot handle the resulting code, or perhaps something else
is wrong.  In either case, making an extra temporary will not likely
help here, so let's just skip it.


	PR rtl-optimization/87871
	* combine.c (make_more_copies): Skip if dest is frame_pointer_rtx.

From-SVN: r265821
  • Loading branch information
segher authored and Segher Boessenkool committed Nov 5, 2018
1 parent 7bbdffa commit 0f31a75
Show file tree
Hide file tree
Showing 2 changed files with 8 additions and 0 deletions.
5 changes: 5 additions & 0 deletions gcc/ChangeLog
Original file line number Diff line number Diff line change
@@ -1,3 +1,8 @@
2018-11-05 Segher Boessenkool <[email protected]>

PR rtl-optimization/87871
* combine.c (make_more_copies): Skip if dest is frame_pointer_rtx.

2018-11-05 Paul Koning <[email protected]>

* doc/sourcebuild.texi (target attributes): Document new "inf"
Expand Down
3 changes: 3 additions & 0 deletions gcc/combine.c
Original file line number Diff line number Diff line change
Expand Up @@ -14959,6 +14959,9 @@ make_more_copies (void)
rtx dest = SET_DEST (set);
if (dest == pc_rtx)
continue;
/* See PR87871. */
if (dest == frame_pointer_rtx)
continue;
rtx src = SET_SRC (set);
if (!(REG_P (src) && HARD_REGISTER_P (src)))
continue;
Expand Down

0 comments on commit 0f31a75

Please sign in to comment.