]> git.ipfire.org Git - thirdparty/gcc.git/commit
PR modula2/118703 Abort compiling m2pim_NumberIO_BinToStr
authorGaius Mulley <gaiusmod2@gmail.com>
Sat, 1 Feb 2025 17:17:31 +0000 (17:17 +0000)
committerGaius Mulley <gaiusmod2@gmail.com>
Sat, 1 Feb 2025 17:17:31 +0000 (17:17 +0000)
commite2d32c81a993a27f3e9b5408f5d20580fe58feca
tree4e3f800dc1eb3b58ccc40adf7cf69f86daacefc5
parentdd6247cb8fc11a15e23e949092f89d24ff329209
PR modula2/118703 Abort compiling m2pim_NumberIO_BinToStr

This patch builds access to the gcc builtins clz, clzl, clzll,
ctz, ctzl and ctzll within m2builtins.cc.  The patch provides
modula2 api access to clz, clzll, ctz and ctzll though the
Builtins definition module.  This PR was raised because of
PR118689.

gcc/m2/ChangeLog:

PR modula2/118703
* gm2-gcc/m2builtins.cc (define_builtin_gcc): New function.
(m2builtins_init): Call define_builtin_gcc.
* gm2-libs/Builtins.def (clz): New procedure function.
(clzll): Ditto.
(ctz): Ditto.
(ctzll): Ditto.
* gm2-libs/Builtins.mod (clz): New procedure function.
(clzll): Ditto.
(ctz): Ditto.
(ctzll): Ditto.
* gm2-libs/cbuiltin.def (clz): New procedure function.
(clzll): Ditto.
(ctz): Ditto.
(ctzll): Ditto.

gcc/testsuite/ChangeLog:

PR modula2/118703
* gm2/builtins/run/pass/testbitfns.mod: New test.

Signed-off-by: Gaius Mulley <gaiusmod2@gmail.com>
gcc/m2/gm2-gcc/m2builtins.cc
gcc/m2/gm2-libs/Builtins.def
gcc/m2/gm2-libs/Builtins.mod
gcc/m2/gm2-libs/cbuiltin.def
gcc/testsuite/gm2/builtins/run/pass/testbitfns.mod [new file with mode: 0644]