[llvm-commits] [llvm] r118608 - /llvm/trunk/lib/Target/README.txt

Chris Lattner sabre at nondot.org
Tue Nov 9 11:37:28 PST 2010


Author: lattner
Date: Tue Nov  9 13:37:28 2010
New Revision: 118608

URL: http://llvm.org/viewvc/llvm-project?rev=118608&view=rev
Log:
add a case we fail to devirt.

Modified:
    llvm/trunk/lib/Target/README.txt

Modified: llvm/trunk/lib/Target/README.txt
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/README.txt?rev=118608&r1=118607&r2=118608&view=diff
==============================================================================
--- llvm/trunk/lib/Target/README.txt (original)
+++ llvm/trunk/lib/Target/README.txt Tue Nov  9 13:37:28 2010
@@ -1963,3 +1963,23 @@
         ret i32 %b
 }
 //===---------------------------------------------------------------------===//
+
+clang -O3 fails to devirtualize this virtual inheritance case: (GCC PR45875)
+
+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 ();
+}
+
+//===---------------------------------------------------------------------===//





More information about the llvm-commits mailing list