Only single and double precision flavors have been added.
Details
Details
Diff Detail
Diff Detail
- Repository
- rG LLVM Github Monorepo
Event Timeline
| libc/src/math/aarch64/floor.cpp | ||
|---|---|---|
| 16 | Hi @sivachandra sorry for the drive-by comment on your patch, I just happened notice the use of ldr/str here. Is there a specific reason for that? I think this can simply use the register values instead, e.g: double result;
__asm__ __volatile__("frintm %d0, %d1\n"
: "=w"(result) : "w"(x) : );
return result;That way, it will just create a frintm d0, d0 instruction directly. | |
| libc/src/math/aarch64/floor.cpp | ||
|---|---|---|
| 16 | Thanks a lot for you comment. I wasn't aware that one could use %d and %s modifiers. I have applied your suggestion everywhere. | |
Comment Actions
Thanks for the changes. I noticed another patch (maybe there are more?) that could probably also be updated now, e.g. ceil/ceilf from D95850.
Hi @sivachandra sorry for the drive-by comment on your patch, I just happened notice the use of ldr/str here. Is there a specific reason for that? I think this can simply use the register values instead, e.g:
double result; __asm__ __volatile__("frintm %d0, %d1\n" : "=w"(result) : "w"(x) : ); return result;That way, it will just create a frintm d0, d0 instruction directly.