]> git.ipfire.org Git - thirdparty/gcc.git/commit
LRA: identify biggest access mode for hard_regs and use it in split_reg
authorbernds <bernds@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 14 Mar 2016 15:08:54 +0000 (15:08 +0000)
committerbernds <bernds@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 14 Mar 2016 15:08:54 +0000 (15:08 +0000)
commite947f9c35eee2d8d464201a684f0144f33817a57
treefa0721d7527c8d8af0cd822d4a28519e071f5320
parent74201dc2e07c65ff621f8c319fa25f31b5770067
LRA: identify biggest access mode for hard_regs and use it in split_reg

PR target/70083
* lra-lives.c (process_bb_lives): Also update biggest mode for hard
regs.
(lra_create_live_ranges_1): initialize hard register biggest_mode to
VOIDmode.
* lra-constraints.c (split_reg): For hard regs, try to find the
biggest single-register mode used in the function.

testsuite/
PR target/70083
* gcc.dg/torture/pr70083.c: New test.
* gcc.target/i386/pr70083.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@234184 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/ChangeLog
gcc/lra-constraints.c
gcc/lra-lives.c
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.dg/torture/pr70083.c [new file with mode: 0644]
gcc/testsuite/gcc.target/i386/pr70083.c [new file with mode: 0644]