https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115823
--- Comment #7 from Gaius Mulley <gaius at gcc dot gnu.org> --- I'm probably not testing in the same way as you - but I don't see the call to isnormal with the following configure/build. $ ~/opt/bin/s390x-linux-gm2 -v Target: s390x-linux Configured with: ../configure --prefix=/home/gaius/opt --enable-languages=m2 --target=s390x-linux gcc/testsuite/gm2/builtins/run/pass$ ~/opt/bin/s390x-linux-gm2 -I$HOME/opt/lib/gcc/x86_64-pc-linux-gnu/15.0.0/m2/m2pim -S -c testisnormal.mod -fdump-tree-all $ grep brasl testisnormal.s brasl %r14,test@PLT brasl %r14,printf@PLT brasl %r14,printf@PLT brasl %r14,exit@PLT brasl %r14,printf@PLT brasl %r14,printf@PLT brasl %r14,assert@PLT ... $ cat testisnormal.mod.006t.gimple PROC test () ... _T44 = 1; result = _T44; _T45 = "isnormal (1.0) = %d\n"; _T46 = printf (_T45, result); if (result != 1) goto .L145; else goto <D.1799>; <D.1799>: _T47 = 1; goto .L146; .L145: _T47 = 0; .L146: _T48._m2_contents = "isnormal (1.0) # 1"; _T51 = 18; _T48._m2_high_1 = _T51; assert (_T47, _T48); ... Perhaps my setup is different to yours?