diff options
author | Jason Molenda <jmolenda@apple.com> | 2017-09-21 23:00:19 +0000 |
---|---|---|
committer | Jason Molenda <jmolenda@apple.com> | 2017-09-21 23:00:19 +0000 |
commit | 182a8083c1e26577dfc52e78dbd95d221daed20d (patch) | |
tree | c713e1a2f372a60fa5c91a4c5e56e5de5229d245 /lldb/packages/Python/lldbsuite/test/expression_command/call-function/TestCallStdStringFunction.py | |
parent | 8f094c94fd62aaf82e5e6abb1cd8eaa1bd03284e (diff) | |
download | bcm5719-llvm-182a8083c1e26577dfc52e78dbd95d221daed20d.tar.gz bcm5719-llvm-182a8083c1e26577dfc52e78dbd95d221daed20d.zip |
Initial patchset to get the testsuite running against armv7 and arm64 iOS devices.
Normal customer devices won't be able to run these devices, we're hoping to get
a public facing bot set up at some point.
There will be some smaller follow-on patches. The changes to tools/lldb-server are
verbose and I'm not thrilled with having to skip all of these tests manually.
There are a few places where I'm making the assumption that "armv7", "armv7k", "arm64"
means it's an ios device, and I need to review & clean these up with an OS check
as well. (Android will show up as "arm" and "aarch64" so by pure luck they shouldn't
cause problems, but it's not an assumption I want to rely on).
I'll be watching the bots for the rest of today; if any problems are introduced by
this patch I'll revert it - if anyone sees a problem with their bot that I don't
see, please do the same. I know it's a rather large patch.
One change I had to make specifically for iOS devices was that debugserver can't
create files. There were several tests that launch the inferior process redirecting
its output to a file, then they retrieve the file. They were not trying to test
file redirection in these tests, so I rewrote those to write their output to a file
directly.
llvm-svn: 313932
Diffstat (limited to 'lldb/packages/Python/lldbsuite/test/expression_command/call-function/TestCallStdStringFunction.py')
-rw-r--r-- | lldb/packages/Python/lldbsuite/test/expression_command/call-function/TestCallStdStringFunction.py | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/lldb/packages/Python/lldbsuite/test/expression_command/call-function/TestCallStdStringFunction.py b/lldb/packages/Python/lldbsuite/test/expression_command/call-function/TestCallStdStringFunction.py index a2d149f4b49..16736f79852 100644 --- a/lldb/packages/Python/lldbsuite/test/expression_command/call-function/TestCallStdStringFunction.py +++ b/lldb/packages/Python/lldbsuite/test/expression_command/call-function/TestCallStdStringFunction.py @@ -44,5 +44,13 @@ class ExprCommandCallFunctionTestCase(TestBase): # Calling this function now succeeds, but we follow the typedef return type through to # const char *, and thus don't invoke the Summary formatter. - self.expect("print str.c_str()", - substrs=['Hello world']) + + # clang's libstdc++ on ios arm64 inlines std::string::c_str() always; + # skip this part of the test. + triple = self.dbg.GetSelectedPlatform().GetTriple() + do_cstr_test = True + if triple == "arm64-apple-ios" or triple == "arm64-apple-tvos" or triple == "armv7k-apple-watchos" or triple == "arm64-apple-bridgeos": + do_cstr_test = False + if do_cstr_test: + self.expect("print str.c_str()", + substrs=['Hello world']) |