summaryrefslogtreecommitdiff
path: root/.gitlab-ci.yml
diff options
context:
space:
mode:
authorBen Gamari <ben@smart-cactus.org>2021-11-08 19:49:24 -0500
committerMarge Bot <ben+marge-bot@smart-cactus.org>2021-12-02 18:13:30 -0500
commitadc7f108141a973b6dcb02a7836eed65d61230e8 (patch)
tree1cd71c61f7db938af1b2c5c039ffcd38d0cb0301 /.gitlab-ci.yml
parent9c65197e0aec9a4ee11e377dac52f459ac64067a (diff)
downloadhaskell-adc7f108141a973b6dcb02a7836eed65d61230e8.tar.gz
nativeGen/aarch64: Fix handling of subword values
Here we rework the handling of sub-word operations in the AArch64 backend, fixing a number of bugs and inconsistencies. In short, we now impose the invariant that all subword values are represented in registers in zero-extended form. Signed arithmetic operations are then responsible for sign-extending as necessary. Possible future work: * Use `CMP`s extended register form to avoid burning an instruction in sign-extending the second operand. * Track sign-extension state of registers to elide redundant sign extensions in blocks with frequent sub-word signed arithmetic.
Diffstat (limited to '.gitlab-ci.yml')
0 files changed, 0 insertions, 0 deletions