Displaying 3 results from an estimated 3 matches for "__allrem".
2018 Dec 01
2
Where's the optimiser gone? (part 5.c): missed tail calls, and more...
...p __alldiv
ret 16 |
__int64 __fastcall mod(__int64 foo, __int64 bar)
{
return foo % bar;
}
push dword ptr [esp + 16] |
push dword ptr [esp + 16] |
push dword ptr [esp + 16] |
push dword ptr [esp + 16] |
call __allrem | jmp __allrem
ret 16 |
__int64 __fastcall mul(__int64 foo, __int64 bar)
{
return foo * bar;
}
push esi | mov ecx, dword ptr [esp + 16]
mov ecx, dword ptr [esp + 16] | mov edx, dword ptr [...
2018 Dec 03
3
The builtins library of compiler-rt is a performance HOG^WKILLER
...assembler source inside an __asm block,
and add a function definition with __declspec(naked)
But then someone will have to find new filenames; I'd prefer to
leave them as *.ASM, so they can be added to YOUR source tree
without clobbering existing files.
The same holds for __alldiv, __alldvrm, __allrem, __aulldiv,
__aulldvrm and __aullrem, plus __allmul, __allshl, _allshr and
__aullshr.
If you name a reviewer I'll send them to llvm-commits!
regards
Stefan
> On Mon, Dec 3, 2018 at 5:51 AM Stefan Kanthak via llvm-dev <
> llvm-dev at lists.llvm.org> wrote:
>
>> Hi @ll,
&...
2018 Dec 03
3
The builtins library of compiler-rt is a performance HOG^WKILLER
Hi @ll,
LLVM-7.0.0-win32.exe contains and installs
lib\clang\7.0.0\lib\windows\clang_rt.builtins-i386.lib
The implementation of (at least) the multiplication and division
routines __[u]{div,mod,divmod,mul}[sdt]i[34] shipped with this
libraries SUCKS: they are factors SLOWER than even Microsoft's
NOTORIOUS POOR implementation of 64-bit division shipped with
MSVC and Windows!
The reasons: 1.