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

libc++experimental built w/ UBSAN has undefined references to __muloti4 builtin #29991

Open
llvmbot opened this issue Oct 8, 2016 · 2 comments
Labels
bugzilla Issues migrated from bugzilla libc++ libc++ C++ Standard Library. Not GNU libstdc++. Not libc++abi.

Comments

@llvmbot
Copy link
Collaborator

llvmbot commented Oct 8, 2016

Bugzilla Link 30643
Version unspecified
OS Windows NT
Reporter LLVM Bugzilla Contributor
CC @apolukhin,@mclow

Extended Description

For some reason the typical GNU libraries don't provide this builtin, but libclang_rt.builtins-x86_64.a does. This means that the user must manually link the libclang builtins to get UBSAN to work.

The missing builtin is required when doing 128-bit integer multiplication in filesystem.

I'm filing this bug as a reminder to fix this.

@llvmbot
Copy link
Collaborator Author

llvmbot commented Oct 10, 2016

I removed usages of __int128_t in r283712, which fixes this bug.

@llvmbot
Copy link
Collaborator Author

llvmbot commented Jul 25, 2018

We once again use __int128_t in filesystem, so this bug has cropped up again.

I think as a temporary fix, libc++ can crib the mul0ti4 implementation from compiler-rt and compile it into filesystem manually.

I'll look into more involved fixes as well.

@llvmbot llvmbot transferred this issue from llvm/llvm-bugzilla-archive Dec 10, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bugzilla Issues migrated from bugzilla libc++ libc++ C++ Standard Library. Not GNU libstdc++. Not libc++abi.
Projects
None yet
Development

No branches or pull requests

1 participant