[builtins] Support architectures with 16-bit int in __ashlti3, __ashrti3 and __lshrti3
authorKarl-Johan Karlsson <karl-johan.karlsson@ericsson.com>
Fri, 31 Mar 2023 04:41:11 +0000 (06:41 +0200)
committerKarl-Johan Karlsson <karl-johan.karlsson@ericsson.com>
Fri, 31 Mar 2023 05:02:55 +0000 (07:02 +0200)
commit3834b0467ddc97ce0595e98eab805cd306ba4069
tree2c94195220c15faea0ba4e92d1eaf246292632df
parentc53d807321f680f81c0599e4395be480dec1ee3e
[builtins] Support architectures with 16-bit int in __ashlti3, __ashrti3 and __lshrti3

The amount to shift should be specified by the int type not a 32-bit integer
type.

This patch change the functions for 128-bit shifts in compiler-rt the same way
as was done for 64-bit shifts in D78662.

The README.txt is updated with the shift builtins signatures from this patch and D78662.

Reviewed By: efriedma

Differential Revision: https://reviews.llvm.org/D146960
compiler-rt/lib/builtins/README.txt
compiler-rt/lib/builtins/ashlti3.c
compiler-rt/lib/builtins/ashrti3.c
compiler-rt/lib/builtins/lshrti3.c
compiler-rt/test/builtins/Unit/ashlti3_test.c
compiler-rt/test/builtins/Unit/ashrti3_test.c
compiler-rt/test/builtins/Unit/lshrti3_test.c