Remove a virtual inheritance case that clang can devirtualize fully now.
authorAnders Carlsson <andersca@mac.com>
Sun, 6 Feb 2011 20:16:49 +0000 (20:16 +0000)
committerAnders Carlsson <andersca@mac.com>
Sun, 6 Feb 2011 20:16:49 +0000 (20:16 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@124989 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Target/README.txt

index c0a2b760de78955f01fa24dcf905f014f78ceb76..6b4e33ea34be01ae8de76a42f016bd8524a0bf1f 100644 (file)
@@ -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; }