[Lldb-commits] [lldb] r303076 - Disable a test in TestReturnValue on arm64 linux

Pavel Labath via lldb-commits lldb-commits at lists.llvm.org
Mon May 15 09:25:28 PDT 2017


Author: labath
Date: Mon May 15 11:25:28 2017
New Revision: 303076

URL: http://llvm.org/viewvc/llvm-project?rev=303076&view=rev
Log:
Disable a test in TestReturnValue on arm64 linux

as described in pr33042, we cannot reliably retrieve the return value on
arm64 in cases it is returned via x8 pointer. I tried to do this as
surgically as possible and disabled it only on targets I know to be
affected, as the code is still useful, even though it can only work on
best-effort basis.

Modified:
    lldb/trunk/packages/Python/lldbsuite/test/functionalities/return-value/TestReturnValue.py

Modified: lldb/trunk/packages/Python/lldbsuite/test/functionalities/return-value/TestReturnValue.py
URL: http://llvm.org/viewvc/llvm-project/lldb/trunk/packages/Python/lldbsuite/test/functionalities/return-value/TestReturnValue.py?rev=303076&r1=303075&r2=303076&view=diff
==============================================================================
--- lldb/trunk/packages/Python/lldbsuite/test/functionalities/return-value/TestReturnValue.py (original)
+++ lldb/trunk/packages/Python/lldbsuite/test/functionalities/return-value/TestReturnValue.py Mon May 15 11:25:28 2017
@@ -18,6 +18,10 @@ class ReturnValueTestCase(TestBase):
 
     mydir = TestBase.compute_mydir(__file__)
 
+    def affected_by_pr33042(self):
+        return ("clang" in self.getCompiler() and self.getArchitecture() ==
+            "aarch64" and self.getPlatform() == "linux")
+
     @expectedFailureAll(oslist=["freebsd"], archs=["i386"])
     @expectedFailureAll(oslist=["macosx"], archs=["i386"], bugnumber="<rdar://problem/28719652>")
     @expectedFailureAll(
@@ -148,7 +152,8 @@ class ReturnValueTestCase(TestBase):
         self.return_and_test_struct_value("return_two_int")
         self.return_and_test_struct_value("return_three_int")
         self.return_and_test_struct_value("return_four_int")
-        self.return_and_test_struct_value("return_five_int")
+        if not self.affected_by_pr33042():
+            self.return_and_test_struct_value("return_five_int")
 
         self.return_and_test_struct_value("return_two_double")
         self.return_and_test_struct_value("return_one_double_two_float")




More information about the lldb-commits mailing list