Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[gsoc2024][libc][math][c23] Implement _Float16 higher math functions #95250

Open
22 of 54 tasks
overmighty opened this issue Jun 12, 2024 · 3 comments
Open
22 of 54 tasks
Assignees
Labels
c23 libc metabug Issue to collect references to a group of similar or related issues.

Comments

@overmighty
Copy link
Member

overmighty commented Jun 12, 2024

This issue is part of the following Google Summer of Code 2024 project: https://summerofcode.withgoogle.com/programs/2024/projects/1vPVUj93.

@github-actions github-actions bot added the libc label Jun 12, 2024
@EugeneZelenko EugeneZelenko added metabug Issue to collect references to a group of similar or related issues. c23 labels Jun 12, 2024
lravenclaw pushed a commit to lravenclaw/llvm-project that referenced this issue Jul 3, 2024
overmighty added a commit to overmighty/llvm-project that referenced this issue Aug 2, 2024
overmighty added a commit to overmighty/llvm-project that referenced this issue Aug 6, 2024
banach-space pushed a commit to banach-space/llvm-project that referenced this issue Aug 7, 2024
banach-space pushed a commit to banach-space/llvm-project that referenced this issue Aug 7, 2024
overmighty added a commit that referenced this issue Aug 7, 2024
overmighty added a commit to overmighty/llvm-project that referenced this issue Aug 7, 2024
EthanLuisMcDonough pushed a commit to EthanLuisMcDonough/llvm-project that referenced this issue Aug 13, 2024
bwendling pushed a commit to bwendling/llvm-project that referenced this issue Aug 15, 2024
overmighty added a commit that referenced this issue Oct 17, 2024
overmighty added a commit that referenced this issue Oct 17, 2024
overmighty added a commit that referenced this issue Oct 17, 2024
overmighty added a commit that referenced this issue Oct 17, 2024
overmighty added a commit that referenced this issue Oct 17, 2024
overmighty added a commit that referenced this issue Oct 18, 2024
overmighty added a commit that referenced this issue Oct 18, 2024
overmighty added a commit that referenced this issue Oct 18, 2024
overmighty added a commit that referenced this issue Oct 18, 2024
overmighty added a commit that referenced this issue Oct 18, 2024
bricknerb pushed a commit to bricknerb/llvm-project that referenced this issue Oct 21, 2024
EricWF pushed a commit to efcs/llvm-project that referenced this issue Oct 22, 2024
EricWF pushed a commit to efcs/llvm-project that referenced this issue Oct 22, 2024
EricWF pushed a commit to efcs/llvm-project that referenced this issue Oct 22, 2024
EricWF pushed a commit to efcs/llvm-project that referenced this issue Oct 22, 2024
EricWF pushed a commit to efcs/llvm-project that referenced this issue Oct 22, 2024
EricWF pushed a commit to efcs/llvm-project that referenced this issue Oct 22, 2024
EricWF pushed a commit to efcs/llvm-project that referenced this issue Oct 22, 2024
EricWF pushed a commit to efcs/llvm-project that referenced this issue Oct 22, 2024
@tgross35
Copy link

Are there any plans for LLVM to lower to these intrinsics, or does it already ever? Or is this just making the functions available for calling directly.

@overmighty
Copy link
Member Author

Are there any plans for LLVM to lower to these intrinsics, or does it already ever? Or is this just making the functions available for calling directly.

Sorry for the late reply. I have been told there are plans to at some point have LLVM call LLVM libc math functions for computations internally, and later have LLVM lower to calls to these functions too.

@tgross35
Copy link

Lowering to these functions may be nice since it provides a way to get correctly rounded f16 results without correctly rounded f32 results (likely meaning performance wins on platforms where hardware f64 is slower than f32 or unavailable) but it does add some complexity. If this is done, I would appreciate the ability for frontends to specify which f16 symbols are available so it is possible to provide only a subset. For example, the frontend could configure that only sinf16, cosf16, and tanf16 are available and LLVM should use those where possible, but all other math operations will still lower to f32 versions with conversions.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
c23 libc metabug Issue to collect references to a group of similar or related issues.
Projects
None yet
Development

No branches or pull requests

3 participants