aboutsummaryrefslogtreecommitdiff
path: root/gcc/tree-vectorizer.h
diff options
context:
space:
mode:
authorHans-Peter Nilsson <hp@axis.com>2022-02-02 00:00:10 +0100
committerHans-Peter Nilsson <hp@axis.com>2022-02-02 01:20:04 +0100
commit27e35bc4910e291d8676c69b08fb88fa51ba528e (patch)
treea9f1de6ca5dd0bc400eb22c87ba9ef99b6a75859 /gcc/tree-vectorizer.h
parenta58401d2e6d31eb8f0e4ded84b3dde28c98ba4da (diff)
downloadgcc-27e35bc4910e291d8676c69b08fb88fa51ba528e.zip
gcc-27e35bc4910e291d8676c69b08fb88fa51ba528e.tar.gz
gcc-27e35bc4910e291d8676c69b08fb88fa51ba528e.tar.bz2
cris: Remove CRIS v32 ACR artefacts
This is the change to which I alluded to this in r11-220 / d0780379c1b6 as "causes extra register moves in libgcc". It has unfortunate side-effects due to the change in register-class topology. There's a slight improvement in coremark numbers (< 0.07%) though also increase in code size total (< 0.7%) but looking at the individual changes in functions, it's all-over (-7..+7%). Looking specifically at functions that improved in speed, it's also both plus and minus in code sizes. It's unworkable to separate improvements from regressions for this case. I'll follow up with patches to restore the previous code quality, in both size and speed. gcc: * config/cris/constraints.md (define_register_constraint "b"): Now GENERAL_REGS. * config/cris/cris.md (CRIS_ACR_REGNUM): Remove. * config/cris/cris.h: (reg_class, REG_CLASS_NAMES) (REG_CLASS_CONTENTS): Remove ACR_REGS, SPEC_ACR_REGS, GENNONACR_REGS, and SPEC_GENNONACR_REGS. * config/cris/cris.cc (cris_preferred_reload_class): Don't mention ACR_REGS and return GENERAL_REGS instead of GENNONACR_REGS.
Diffstat (limited to 'gcc/tree-vectorizer.h')
0 files changed, 0 insertions, 0 deletions