Issue |
77064
|
Summary |
[SimplifyLibCalls] Calling convention assertion fails
|
Labels |
llvm:crash,
llvm:instcombine
|
Assignees |
nikic
|
Reporter |
nikic
|
```llvm
; RUN: opt -S -passes=instcombine
define void @main(ptr %ptr) {
%opendir = call fastcc ptr @opendir(ptr %ptr)
%memset = call ptr @__memset_chk(ptr %opendir, i32 0, i64 596, i64 -1)
ret void
}
declare ptr @__memset_chk(ptr, i32, i64, i64)
declare fastcc ptr @opendir(ptr)
```
> opt: /home/npopov/repos/llvm-project/llvm/lib/Transforms/Utils/SimplifyLibCalls.cpp:3488: Value *llvm::LibCallSimplifier::optimizeStringMemoryLibCall(CallInst *, IRBuilderBase &): Assertion `(ignoreCallingConv(Func) || TargetLibraryInfoImpl::isCallingConvCCompatible(CI)) && "Optimizing string/memory libcall would change the calling convention"' failed.
Encountered when building openjpeg2.
_______________________________________________
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs