| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
| |
correct IR type.
Reported in the thread "devirtualisation appears to crash clang on covariant functions on ARM" on cfe-dev.
llvm-svn: 166651
|
|
|
|
|
|
|
|
|
|
|
|
| |
will be represented in the IR as a plain "i32" type. This causes the
tests to spuriously fail on platforms where int is not a 32-bit type,
or where the ABI requires attributes like "signext" or "zeroext" to
be used.
This patch adds -triple or -target parameters to force those tests
to use the i386-unknown-unknown target.
llvm-svn: 166551
|
|
|
|
|
|
| |
for tracking this.
llvm-svn: 159351
|
|
|
|
|
|
|
|
|
| |
handy. It can be done, but we would have to build a derived-to-base cast
during codegen to compute the correct this pointer.
I will handle covariant returns next.
llvm-svn: 159350
|
|
|
|
|
|
|
|
| |
the correct this pointer. There is some potential for sharing a bit more
code with canDevirtualizeMemberFunctionCalls, but that can be done in an
independent patch.
llvm-svn: 159326
|
|
|
|
|
|
|
|
| |
to see if we had an underlying final class or method, but we would then
use the cast type to do the call, resulting in a direct call to the wrong
method.
llvm-svn: 159212
|
|
|
|
|
|
| |
all casts. We can only ignore derived-to-base and no-op casts. Fixes selfhost.
llvm-svn: 124528
|
|
|
|
|
|
| |
class is marked 'final', we can devirtualize the call.
llvm-svn: 124524
|
|
llvm-svn: 124083
|