asahay created this revision.
Herald added a project: All.
asahay published this revision for review.
Herald added a project: LLDB.
Herald added a subscriber: lldb-commits.

TestFrameFormatNameWithArgs.test is enabled only in case of native
compilation but is applicable in case of cross compilation too. So,
provision support for enabling it in case of both, native and cross
compilation.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D140839

Files:
  lldb/test/Shell/Settings/TestFrameFormatNameWithArgs.test
  lldb/test/Shell/helper/build.py


Index: lldb/test/Shell/helper/build.py
===================================================================
--- lldb/test/Shell/helper/build.py
+++ lldb/test/Shell/helper/build.py
@@ -26,7 +26,6 @@
                     dest='arch',
                     required=True,
                     default='host',
-                    choices=['32', '64', 'host'],
                     help='Specify the architecture to target.')
 
 parser.add_argument('--compiler',
@@ -110,6 +109,12 @@
                     nargs='+',
                     help='Source file(s) to compile / object file(s) to link')
 
+parser.add_argument('--std',
+                    metavar='std',
+                    dest='std',
+                    required=False,
+                    help='Specify the C/C++ standard.')
+
 
 args = parser.parse_args(args=sys.argv[1:])
 
@@ -231,6 +236,7 @@
         self.verbose = args.verbose
         self.obj_ext = obj_ext
         self.lib_paths = args.libs_dir
+        self.std = args.std
 
     def _exe_file_name(self):
         assert self.mode != 'compile'
@@ -581,6 +587,9 @@
             args.append('--')
         args.append(source)
 
+        if self.std:
+            args.append('/std:' + self.std)
+
         return ('compiling', [source], obj,
                 self.compile_env,
                 args)
@@ -652,6 +661,9 @@
         if sys.platform == 'darwin':
             args.extend(['-isysroot', self.apple_sdk])
 
+        if self.std:
+            args.append('-std={0}'.format(self.std))
+
         return ('compiling', [source], obj, None, args)
 
     def _get_link_command(self):
@@ -789,6 +801,7 @@
     print('  Verbose: ' + str(args.verbose))
     print('  Dryrun: ' + str(args.dry))
     print('  Inputs: ' + format_text(args.inputs, 0, 10))
+    print('  C/C++ Standard: ' + str(args.std))
     print('Script Environment:')
     print_environment(os.environ)
 
Index: lldb/test/Shell/Settings/TestFrameFormatNameWithArgs.test
===================================================================
--- lldb/test/Shell/Settings/TestFrameFormatNameWithArgs.test
+++ lldb/test/Shell/Settings/TestFrameFormatNameWithArgs.test
@@ -1,5 +1,5 @@
 # UNSUPPORTED: system-windows
-# RUN: %clangxx_host -g -O0 %S/Inputs/names.cpp -std=c++17 -o %t.out
+# RUN: %build %S/Inputs/names.cpp --std c++17 -o %t.out
 # RUN: %lldb -b -s %s %t.out | FileCheck %s
 settings set -f frame-format "frame ${function.name-with-args}\n"
 break set -n foo


Index: lldb/test/Shell/helper/build.py
===================================================================
--- lldb/test/Shell/helper/build.py
+++ lldb/test/Shell/helper/build.py
@@ -26,7 +26,6 @@
                     dest='arch',
                     required=True,
                     default='host',
-                    choices=['32', '64', 'host'],
                     help='Specify the architecture to target.')
 
 parser.add_argument('--compiler',
@@ -110,6 +109,12 @@
                     nargs='+',
                     help='Source file(s) to compile / object file(s) to link')
 
+parser.add_argument('--std',
+                    metavar='std',
+                    dest='std',
+                    required=False,
+                    help='Specify the C/C++ standard.')
+
 
 args = parser.parse_args(args=sys.argv[1:])
 
@@ -231,6 +236,7 @@
         self.verbose = args.verbose
         self.obj_ext = obj_ext
         self.lib_paths = args.libs_dir
+        self.std = args.std
 
     def _exe_file_name(self):
         assert self.mode != 'compile'
@@ -581,6 +587,9 @@
             args.append('--')
         args.append(source)
 
+        if self.std:
+            args.append('/std:' + self.std)
+
         return ('compiling', [source], obj,
                 self.compile_env,
                 args)
@@ -652,6 +661,9 @@
         if sys.platform == 'darwin':
             args.extend(['-isysroot', self.apple_sdk])
 
+        if self.std:
+            args.append('-std={0}'.format(self.std))
+
         return ('compiling', [source], obj, None, args)
 
     def _get_link_command(self):
@@ -789,6 +801,7 @@
     print('  Verbose: ' + str(args.verbose))
     print('  Dryrun: ' + str(args.dry))
     print('  Inputs: ' + format_text(args.inputs, 0, 10))
+    print('  C/C++ Standard: ' + str(args.std))
     print('Script Environment:')
     print_environment(os.environ)
 
Index: lldb/test/Shell/Settings/TestFrameFormatNameWithArgs.test
===================================================================
--- lldb/test/Shell/Settings/TestFrameFormatNameWithArgs.test
+++ lldb/test/Shell/Settings/TestFrameFormatNameWithArgs.test
@@ -1,5 +1,5 @@
 # UNSUPPORTED: system-windows
-# RUN: %clangxx_host -g -O0 %S/Inputs/names.cpp -std=c++17 -o %t.out
+# RUN: %build %S/Inputs/names.cpp --std c++17 -o %t.out
 # RUN: %lldb -b -s %s %t.out | FileCheck %s
 settings set -f frame-format "frame ${function.name-with-args}\n"
 break set -n foo
_______________________________________________
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

Reply via email to