diff options
author | John David Anglin <danglin@gcc.gnu.org> | 2024-09-18 11:02:32 -0400 |
---|---|---|
committer | John David Anglin <danglin@gcc.gnu.org> | 2024-09-18 11:02:32 -0400 |
commit | 4b03750f8cda0a8745b10639a8ac7df71aced0cc (patch) | |
tree | 9d402d885dd43c1d92cc985eaca76e1cf8fec7fb /gcc/jit | |
parent | 85fcf740342e308da4776a45a4cd726987725a6a (diff) | |
download | gcc-4b03750f8cda0a8745b10639a8ac7df71aced0cc.zip gcc-4b03750f8cda0a8745b10639a8ac7df71aced0cc.tar.gz gcc-4b03750f8cda0a8745b10639a8ac7df71aced0cc.tar.bz2 |
hppa: Add peephole2 optimizations for REG+D loads and stores
The PA 1.x architecture only supports long displacements in
integer loads and stores. Floating-point loads and stores
only support short displacements. As a result, we have to
wait until reload is complete before generating insns with
long displacements.
The PA 2.0 architecture supports long displacements in both
integer and floating-point loads and stores.
The peephole2 optimizations added in this change are only
enabled when 14-bit long displacements aren't supported for
floating-point loads and stores.
2024-09-18 John David Anglin <danglin@gcc.gnu.org>
gcc/ChangeLog:
* config/pa/pa.h (GENERAL_REGNO_P): Define.
* config/pa/pa.md: Add SImode and SFmode peephole2
patterns to generate loads and stores with long
displacements.
Diffstat (limited to 'gcc/jit')
0 files changed, 0 insertions, 0 deletions