diff options
author | Kyrylo Tkachov <ktkachov@gcc.gnu.org> | 2017-12-19 16:58:22 +0000 |
---|---|---|
committer | Kyrylo Tkachov <ktkachov@gcc.gnu.org> | 2017-12-19 16:58:22 +0000 |
commit | 3a3a8086bed05ffc8d24bb6908e4437bd9e982f7 (patch) | |
tree | 51e517e0af38cf0dea1b64d47ade9c0235f32191 /gcc/combine.c | |
parent | 972027748c2aa9f59ef1ab534763b0d6ed37b76d (diff) | |
download | gcc-3a3a8086bed05ffc8d24bb6908e4437bd9e982f7.zip gcc-3a3a8086bed05ffc8d24bb6908e4437bd9e982f7.tar.gz gcc-3a3a8086bed05ffc8d24bb6908e4437bd9e982f7.tar.bz2 |
[arm] PR target/82975: Guard against reg_renumber being NULL in arm.h
In this bug we ICE when checking REGNO_OK_FOR_INDEX_P on arm during pre-IRA scheduling.
This is because REGNO_OK_FOR_INDEX_P ends up checking the reg_renumber array.
Before IRA reg_renumber is NULL and thus we segfault.
The fix is to guard the use of reg_renumber in the logic in TEST_REGNO in arm.h.
On aarch64, for example, we also guard against the reg_renumber == NULL case.
This fixes the ICE. I also remove the part of the comment that muses on when reg_renumber
is available as with this patch it should now be safe to use at any point.
Bootstrapped and tested on arm-none-linux-gnueabihf.
PR target/82975
* config/arm/arm.h (TEST_REGNO): Check reg_renumber is set before
accessing it. Adjust comment.
* gcc.dg/pr82975.c: New test.
From-SVN: r255830
Diffstat (limited to 'gcc/combine.c')
0 files changed, 0 insertions, 0 deletions