diff options
author | Aaron Patterson <[email protected]> | 2022-11-14 16:15:50 -0800 |
---|---|---|
committer | Aaron Patterson <[email protected]> | 2022-11-14 17:04:50 -0800 |
commit | e74d82f67447d10347b154d5e9b098397e80567c (patch) | |
tree | 5c4f325ac6969f54e6010dd83dc76c8df24672bb /ext/bigdecimal/bigdecimal.c | |
parent | 9228ae97c5f4e27a3bd534d4b40c6f390cb8aaac (diff) |
Implement LDURH on Aarch64
When RUBY_DEBUG is enabled, shape ids are 16 bits. I would like to do
16 bit comparisons, so I need to load halfwords sometimes. This commit
adds LDURH so that I can load halfwords.
https://developer.arm.com/documentation/ddi0596/2021-12/Base-Instructions/LDURH--Load-Register-Halfword--unscaled--?lang=en
I verified the bytes using clang:
```
$ cat asmthing.s
.global _start
.align 2
_start:
ldurh w10, [x1]
ldurh w10, [x1, #123]
$ as asmthing.s -o asmthing.o && objdump --disassemble asmthing.o
asmthing.o: file format mach-o arm64
Disassembly of section __TEXT,__text:
0000000000000000 <ltmp0>:
0: 2a 00 40 78 ldurh w10, [x1]
4: 2a b0 47 78 ldurh w10, [x1, #123]
```
Notes
Notes:
Merged: https://github.com/ruby/ruby/pull/6729
Diffstat (limited to 'ext/bigdecimal/bigdecimal.c')
0 files changed, 0 insertions, 0 deletions