summaryrefslogtreecommitdiffstats
path: root/lldb/packages/Python/lldbsuite/test/tools/lldb-server/libraries-svr4
diff options
context:
space:
mode:
authorPavel Labath <pavel@labath.sk>2019-07-01 12:41:20 +0000
committerPavel Labath <pavel@labath.sk>2019-07-01 12:41:20 +0000
commit08c38f77c5fb4d3735ec215032fed8ee6730b3db (patch)
tree00d7467017e12830d7cd94fc3aa6ac10c749f53e /lldb/packages/Python/lldbsuite/test/tools/lldb-server/libraries-svr4
parent33c8c0ea2756f25f9914d328906debf20cfc49d5 (diff)
downloadbcm5719-llvm-08c38f77c5fb4d3735ec215032fed8ee6730b3db.tar.gz
bcm5719-llvm-08c38f77c5fb4d3735ec215032fed8ee6730b3db.zip
Revert "Implement xfer:libraries-svr4:read packet"
D62502, together with D62503 have broken the builds which have XML support enabled. Reverting D62503 (r364355) fixed that, but has broken has left some of the tests introduced by D62502 broken more or less nondeternimistically (it depended on whether the system happens to place the library list near unreadable pages of memory). I attempted to make a partial fix for this in r364748, but Jan Kratochvil pointed out that this reintroduces the problem which reverting D62503 was trying to solve. So instead, I back out the whole thing so we can get back to a clean slate that works for everyone. We can figure out a way forward from there. This reverts r364748, r363772 and r363707. llvm-svn: 364751
Diffstat (limited to 'lldb/packages/Python/lldbsuite/test/tools/lldb-server/libraries-svr4')
-rw-r--r--lldb/packages/Python/lldbsuite/test/tools/lldb-server/libraries-svr4/Makefile17
-rw-r--r--lldb/packages/Python/lldbsuite/test/tools/lldb-server/libraries-svr4/TestGdbRemoteLibrariesSvr4Support.py130
-rw-r--r--lldb/packages/Python/lldbsuite/test/tools/lldb-server/libraries-svr4/main.cpp15
-rw-r--r--lldb/packages/Python/lldbsuite/test/tools/lldb-server/libraries-svr4/svr4lib_a.cpp9
-rw-r--r--lldb/packages/Python/lldbsuite/test/tools/lldb-server/libraries-svr4/svr4lib_a.mk9
-rw-r--r--lldb/packages/Python/lldbsuite/test/tools/lldb-server/libraries-svr4/svr4lib_b_quote.cpp9
-rw-r--r--lldb/packages/Python/lldbsuite/test/tools/lldb-server/libraries-svr4/svr4lib_b_quote.mk9
7 files changed, 0 insertions, 198 deletions
diff --git a/lldb/packages/Python/lldbsuite/test/tools/lldb-server/libraries-svr4/Makefile b/lldb/packages/Python/lldbsuite/test/tools/lldb-server/libraries-svr4/Makefile
deleted file mode 100644
index 265c8ca3c41..00000000000
--- a/lldb/packages/Python/lldbsuite/test/tools/lldb-server/libraries-svr4/Makefile
+++ /dev/null
@@ -1,17 +0,0 @@
-LEVEL = ../../../make
-
-LIB_PREFIX := svr4lib
-LD_EXTRAS := -L. -l$(LIB_PREFIX)_a -l$(LIB_PREFIX)_b\"
-CXX_SOURCES := main.cpp
-USE_LIBDL := 1
-MAKE_DSYM := NO
-
-include $(LEVEL)/Makefile.rules
-
-a.out: $(LIB_PREFIX)_a $(LIB_PREFIX)_b_quote
-
-svr4lib_%:
- $(MAKE) VPATH=$(SRCDIR) -I $(SRCDIR) -f "$(SRCDIR)/$(LIB_PREFIX)_$*.mk"
-
-clean::
- $(MAKE) -f $(SRCDIR)/$(LIB_PREFIX)_a.mk clean
diff --git a/lldb/packages/Python/lldbsuite/test/tools/lldb-server/libraries-svr4/TestGdbRemoteLibrariesSvr4Support.py b/lldb/packages/Python/lldbsuite/test/tools/lldb-server/libraries-svr4/TestGdbRemoteLibrariesSvr4Support.py
deleted file mode 100644
index 521a150d8ff..00000000000
--- a/lldb/packages/Python/lldbsuite/test/tools/lldb-server/libraries-svr4/TestGdbRemoteLibrariesSvr4Support.py
+++ /dev/null
@@ -1,130 +0,0 @@
-import xml.etree.ElementTree as ET
-
-import gdbremote_testcase
-from lldbsuite.test.decorators import *
-from lldbsuite.test.lldbtest import *
-
-
-class TestGdbRemoteLibrariesSvr4Support(gdbremote_testcase.GdbRemoteTestCaseBase):
-
- mydir = TestBase.compute_mydir(__file__)
-
- FEATURE_NAME = "qXfer:libraries-svr4:read"
-
- def setup_test(self):
- self.init_llgs_test()
- self.build()
- self.set_inferior_startup_launch()
- env = {}
- env[self.dylibPath] = self.getBuildDir()
- self.prep_debug_monitor_and_inferior(inferior_env=env)
- self.continue_process_and_wait_for_stop()
-
- def get_expected_libs(self):
- return ["libsvr4lib_a.so", 'libsvr4lib_b".so']
-
- def has_libraries_svr4_support(self):
- self.add_qSupported_packets()
- context = self.expect_gdbremote_sequence()
- self.assertIsNotNone(context)
- features = self.parse_qSupported_response(context)
- return self.FEATURE_NAME in features and features[self.FEATURE_NAME] == "+"
-
- def get_libraries_svr4_data(self):
- # Start up llgs and inferior, and check for libraries-svr4 support.
- if not self.has_libraries_svr4_support():
- self.skipTest("libraries-svr4 not supported")
-
- # Grab the libraries-svr4 data.
- self.reset_test_sequence()
- self.test_sequence.add_log_lines(
- [
- "read packet: $qXfer:libraries-svr4:read::0,ffff:#00",
- {
- "direction": "send",
- "regex": re.compile(
- r"^\$([^E])(.*)#[0-9a-fA-F]{2}$", re.MULTILINE | re.DOTALL
- ),
- "capture": {1: "response_type", 2: "content_raw"},
- },
- ],
- True,
- )
-
- context = self.expect_gdbremote_sequence()
- self.assertIsNotNone(context)
-
- # Ensure we end up with all libraries-svr4 data in one packet.
- self.assertEqual(context.get("response_type"), "l")
-
- # Decode binary data.
- content_raw = context.get("content_raw")
- self.assertIsNotNone(content_raw)
- return content_raw
-
- def get_libraries_svr4_xml(self):
- libraries_svr4 = self.get_libraries_svr4_data()
- xml_root = None
- try:
- xml_root = ET.fromstring(libraries_svr4)
- except xml.etree.ElementTree.ParseError:
- pass
- self.assertIsNotNone(xml_root, "Malformed libraries-svr4 XML")
- return xml_root
-
- def libraries_svr4_well_formed(self):
- xml_root = self.get_libraries_svr4_xml()
- self.assertEqual(xml_root.tag, "library-list-svr4")
- for child in xml_root:
- self.assertEqual(child.tag, "library")
- self.assertItemsEqual(child.attrib.keys(), ["name", "lm", "l_addr", "l_ld"])
-
- def libraries_svr4_has_correct_load_addr(self):
- xml_root = self.get_libraries_svr4_xml()
- for child in xml_root:
- name = child.attrib.get("name")
- base_name = os.path.basename(name)
- if os.path.basename(name) not in self.get_expected_libs():
- continue
- load_addr = int(child.attrib.get("l_addr"), 16)
- self.reset_test_sequence()
- self.add_query_memory_region_packets(load_addr)
- context = self.expect_gdbremote_sequence()
- mem_region = self.parse_memory_region_packet(context)
- self.assertEqual(load_addr, int(mem_region.get("start", 0), 16))
- self.assertEqual(
- os.path.realpath(name), os.path.realpath(mem_region.get("name", ""))
- )
-
- def libraries_svr4_libs_present(self):
- xml_root = self.get_libraries_svr4_xml()
- libraries_svr4_names = []
- for child in xml_root:
- name = child.attrib.get("name")
- libraries_svr4_names.append(os.path.realpath(name))
- for lib in self.get_expected_libs():
- self.assertIn(self.getBuildDir() + "/" + lib, libraries_svr4_names)
-
- @llgs_test
- @skipUnlessPlatform(["linux", "android", "netbsd"])
- def test_supports_libraries_svr4(self):
- self.setup_test()
- self.assertTrue(self.has_libraries_svr4_support())
-
- @llgs_test
- @skipUnlessPlatform(["linux", "android", "netbsd"])
- def test_libraries_svr4_well_formed(self):
- self.setup_test()
- self.libraries_svr4_well_formed()
-
- @llgs_test
- @skipUnlessPlatform(["linux", "android", "netbsd"])
- def test_libraries_svr4_load_addr(self):
- self.setup_test()
- self.libraries_svr4_has_correct_load_addr()
-
- @llgs_test
- @skipUnlessPlatform(["linux", "android", "netbsd"])
- def test_libraries_svr4_libs_present(self):
- self.setup_test()
- self.libraries_svr4_libs_present()
diff --git a/lldb/packages/Python/lldbsuite/test/tools/lldb-server/libraries-svr4/main.cpp b/lldb/packages/Python/lldbsuite/test/tools/lldb-server/libraries-svr4/main.cpp
deleted file mode 100644
index b62ca71b561..00000000000
--- a/lldb/packages/Python/lldbsuite/test/tools/lldb-server/libraries-svr4/main.cpp
+++ /dev/null
@@ -1,15 +0,0 @@
-//===-- main.cpp ------------------------------------------------*- C++ -*-===//
-//
-// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
-// See https://llvm.org/LICENSE.txt for license information.
-// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
-//
-//===----------------------------------------------------------------------===//
-
-int main(int argc, char **argv) {
- // Perform a null pointer access.
- int *const null_int_ptr = nullptr;
- *null_int_ptr = 0xDEAD;
-
- return 0;
-}
diff --git a/lldb/packages/Python/lldbsuite/test/tools/lldb-server/libraries-svr4/svr4lib_a.cpp b/lldb/packages/Python/lldbsuite/test/tools/lldb-server/libraries-svr4/svr4lib_a.cpp
deleted file mode 100644
index 47d4b979d92..00000000000
--- a/lldb/packages/Python/lldbsuite/test/tools/lldb-server/libraries-svr4/svr4lib_a.cpp
+++ /dev/null
@@ -1,9 +0,0 @@
-//===-- main.cpp ------------------------------------------------*- C++ -*-===//
-//
-// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
-// See https://llvm.org/LICENSE.txt for license information.
-// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
-//
-//===----------------------------------------------------------------------===//
-
-int svr4lib_a() { return 42; }
diff --git a/lldb/packages/Python/lldbsuite/test/tools/lldb-server/libraries-svr4/svr4lib_a.mk b/lldb/packages/Python/lldbsuite/test/tools/lldb-server/libraries-svr4/svr4lib_a.mk
deleted file mode 100644
index 626babbd6b2..00000000000
--- a/lldb/packages/Python/lldbsuite/test/tools/lldb-server/libraries-svr4/svr4lib_a.mk
+++ /dev/null
@@ -1,9 +0,0 @@
-LEVEL = ../../../make
-
-LIB_PREFIX := svr4lib
-
-DYLIB_NAME := $(LIB_PREFIX)_a
-DYLIB_CXX_SOURCES := $(LIB_PREFIX)_a.cpp
-DYLIB_ONLY := YES
-
-include $(LEVEL)/Makefile.rules
diff --git a/lldb/packages/Python/lldbsuite/test/tools/lldb-server/libraries-svr4/svr4lib_b_quote.cpp b/lldb/packages/Python/lldbsuite/test/tools/lldb-server/libraries-svr4/svr4lib_b_quote.cpp
deleted file mode 100644
index bd8eb0068e9..00000000000
--- a/lldb/packages/Python/lldbsuite/test/tools/lldb-server/libraries-svr4/svr4lib_b_quote.cpp
+++ /dev/null
@@ -1,9 +0,0 @@
-//===-- main.cpp ------------------------------------------------*- C++ -*-===//
-//
-// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
-// See https://llvm.org/LICENSE.txt for license information.
-// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
-//
-//===----------------------------------------------------------------------===//
-
-int svr4lib_b_quote() { return 42; }
diff --git a/lldb/packages/Python/lldbsuite/test/tools/lldb-server/libraries-svr4/svr4lib_b_quote.mk b/lldb/packages/Python/lldbsuite/test/tools/lldb-server/libraries-svr4/svr4lib_b_quote.mk
deleted file mode 100644
index 5ed7a053b42..00000000000
--- a/lldb/packages/Python/lldbsuite/test/tools/lldb-server/libraries-svr4/svr4lib_b_quote.mk
+++ /dev/null
@@ -1,9 +0,0 @@
-LEVEL = ../../../make
-
-LIB_PREFIX := svr4lib
-
-DYLIB_NAME := $(LIB_PREFIX)_b\"
-DYLIB_CXX_SOURCES := $(LIB_PREFIX)_b_quote.cpp
-DYLIB_ONLY := YES
-
-include $(LEVEL)/Makefile.rules
OpenPOWER on IntegriCloud