diff options
author | John David Anglin <danglin@gcc.gnu.org> | 2024-03-17 16:38:48 +0000 |
---|---|---|
committer | John David Anglin <danglin@gcc.gnu.org> | 2024-03-17 16:38:48 +0000 |
commit | 8064107535328717aeb78418edf778559cd5c3ac (patch) | |
tree | 18fba2e5080b6564426c6d85f15097b9d31fe8b5 /gcc | |
parent | 07fad7a7fc245369989e9ca746728ea78b924715 (diff) | |
download | gcc-8064107535328717aeb78418edf778559cd5c3ac.zip gcc-8064107535328717aeb78418edf778559cd5c3ac.tar.gz gcc-8064107535328717aeb78418edf778559cd5c3ac.tar.bz2 |
hppa: Fix complaint about non-delegitimized UNSPEC UNSPEC_TP
2024-03-17 John David Anglin <danglin@gcc.gnu.org>
gcc/ChangeLog:
* config/pa/pa.cc (pa_delegitimize_address): Delegitimize UNSPEC_TP.
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/config/pa/pa.cc | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/gcc/config/pa/pa.cc b/gcc/config/pa/pa.cc index 129289f..5ab9eff 100644 --- a/gcc/config/pa/pa.cc +++ b/gcc/config/pa/pa.cc @@ -10707,7 +10707,13 @@ pa_trampoline_adjust_address (rtx addr) static rtx pa_delegitimize_address (rtx orig_x) { - rtx x = delegitimize_mem_from_attrs (orig_x); + rtx x; + + if (GET_CODE (orig_x) == UNSPEC + && XINT (orig_x, 1) == UNSPEC_TP) + orig_x = XVECEXP (orig_x, 0, 0); + + x = delegitimize_mem_from_attrs (orig_x); if (GET_CODE (x) == LO_SUM && GET_CODE (XEXP (x, 1)) == UNSPEC |