fix various codegen bugs on arm64master
commit90050202f57b22243f5d3dd434a81df2f89de9ed
authorQuentin Carbonneaux <quentin@c9x.me>
Tue, 1 Oct 2024 17:38:15 +0000 (1 19:38 +0200)
committerQuentin Carbonneaux <quentin@c9x.me>
Tue, 1 Oct 2024 17:42:50 +0000 (1 19:42 +0200)
treed72a890222adcf345e6cbfa1b1d7ac2639cc9a0d
parent626f0b278137ff6f8b7d910d9b3fc3cbdfbb39fc
fix various codegen bugs on arm64

- dynamic allocations could generate
  bad 'and' instructions (for the
  and with -16 in salloc()).
- symbols used in w context would
  generate adrp and add instructions
  on wN registers while they seem to
  only work on xN registers.

Thanks to Rosie for reporting them.
arm64/emit.c
test/isel5.ssa [new file with mode: 0644]