diff options
| author | Anders Carlsson <andersca@mac.com> | 2011-02-06 20:16:49 +0000 |
|---|---|---|
| committer | Anders Carlsson <andersca@mac.com> | 2011-02-06 20:16:49 +0000 |
| commit | 49d81a3d7e0fa1b3b813af8e74b690249c72f1c8 (patch) | |
| tree | 94a775db81c6390e27902e7fbf8e26e5decc8461 | |
| parent | 43760c3d421909d3d060e2ec067531a8b3c3eb93 (diff) | |
| download | bcm5719-llvm-49d81a3d7e0fa1b3b813af8e74b690249c72f1c8.tar.gz bcm5719-llvm-49d81a3d7e0fa1b3b813af8e74b690249c72f1c8.zip | |
Remove a virtual inheritance case that clang can devirtualize fully now.
llvm-svn: 124989
| -rw-r--r-- | llvm/lib/Target/README.txt | 21 |
1 files changed, 0 insertions, 21 deletions
diff --git a/llvm/lib/Target/README.txt b/llvm/lib/Target/README.txt index c0a2b760de7..6b4e33ea34b 100644 --- a/llvm/lib/Target/README.txt +++ b/llvm/lib/Target/README.txt @@ -1866,27 +1866,6 @@ bb3: ; preds = %entry } //===---------------------------------------------------------------------===// -clang -O3 fails to devirtualize this virtual inheritance case: (GCC PR45875) -Looks related to PR3100 - -struct c1 {}; -struct c10 : c1{ - virtual void foo (); -}; -struct c11 : c10, c1{ - virtual void f6 (); -}; -struct c28 : virtual c11{ - void f6 (); -}; -void check_c28 () { - c28 obj; - c11 *ptr = &obj; - ptr->f6 (); -} - -//===---------------------------------------------------------------------===// - We compile this: int foo(int a) { return (a & (~15)) / 16; } |

