Skip to content

Add more ARM helpers to compiler runtime#25542

Open
sindrom91 wants to merge 4 commits intoziglang:masterfrom
sindrom91:arm-double-comparison
Open

Add more ARM helpers to compiler runtime#25542
sindrom91 wants to merge 4 commits intoziglang:masterfrom
sindrom91:arm-double-comparison

Conversation

@sindrom91
Copy link

This PR adds __aeabi_cdcmple and __aeabi_cdcmpeq double comparison helpers.

I've copied implementation from LLVM. Is that acceptable?

@sindrom91
Copy link
Author

How can I get this merged?

@sindrom91
Copy link
Author

Hi @alexrp
How can I get this PR merged? Sorry if you're not the right person.

@export(&__aeabi_dcmpeq, .{ .name = "__aeabi_dcmpeq", .linkage = common.linkage, .visibility = common.visibility });
@export(&__aeabi_dcmplt, .{ .name = "__aeabi_dcmplt", .linkage = common.linkage, .visibility = common.visibility });
@export(&__aeabi_dcmple, .{ .name = "__aeabi_dcmple", .linkage = common.linkage, .visibility = common.visibility });
if (builtin.cpu.arch.isArm() and !builtin.cpu.arch.isThumb() and !builtin.cpu.has(.arm, .pacbti)) {
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why these conditions?

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In LLVM, Thumb and PAC implementation details are behind flags and different macros (this, this, this, this). I assume this implementation wouldn't work for Thumb and PAC.

Co-authored-by: Alex Rønne Petersen <alex@alexrp.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants