gdb/testsuite: enable __INTEL_LLVM_COMPILER preprocessor in get_compiler_info
authorNils-Christian Kempke <nils-christian.kempke@intel.com>
Tue, 11 Jan 2022 17:12:40 +0000 (18:12 +0100)
committerAndrew Burgess <aburgess@redhat.com>
Fri, 14 Jan 2022 14:32:29 +0000 (14:32 +0000)
Intel Next Gen compiler defines preprocessor __INTEL_LLVM_COMPILER and provides
version info in __clang_version__ e.g. value: 12.0.0 (icx 2020.10.0.1113).

gdb/testsuite/ChangeLog:
2020-12-07  Abdul Basit Ijaz  <abdul.b.ijaz@intel.com>

* lib/compiler.c: Add Intel next gen compiler pre-processor check.
* lib/compiler.cc: Ditto.
* lib/fortran.exp (fortran_main): Check Intel next gen compiler in
test_compiler_info.

gdb/testsuite/lib/compiler.c
gdb/testsuite/lib/compiler.cc
gdb/testsuite/lib/fortran.exp

index 191bced04118989537607b768f1708dfc02d02dd..451cae38312d5c51fc3e4dcfc7320054a279f235 100644 (file)
@@ -67,4 +67,13 @@ set icc_major [string range __ICL 0 1]
 set icc_minor [format "%d" [string range __ICL 2 [expr {[string length __ICL] -1}]]]
 set icc_update __INTEL_COMPILER_UPDATE
 set compiler_info [join "icc $icc_major $icc_minor $icc_update" -]
+#elif defined(__INTEL_LLVM_COMPILER) && defined(__clang_version__)
+/* Intel Next Gen compiler defines preprocessor __INTEL_LLVM_COMPILER and
+   provides version info in __clang_version__ e.g. value:
+   "12.0.0 (icx 2020.10.0.1113)".  */
+set total_length [string length __clang_version__]
+set version_start_index [string last "(" __clang_version__]
+set version_string [string range __clang_version__ $version_start_index+5 $total_length-2]
+set version_updated_string [string map {. -} $version_string]
+set compiler_info "intel-$version_updated_string"
 #endif
index ab36bea43ae20414980635339a3d8975178745b9..1dfefee057dc20ccd46bd8d91f08a9b605c66450 100755 (executable)
@@ -55,4 +55,13 @@ set icc_major [string range __ICL 0 1]
 set icc_minor [format "%d" [string range __ICL 2 [expr {[string length __ICL] -1}]]]
 set icc_update __INTEL_COMPILER_UPDATE
 set compiler_info [join "icc $icc_major $icc_minor $icc_update" -]
+#elif defined(__INTEL_LLVM_COMPILER) && defined(__clang_version__)
+/* Intel Next Gen compiler defines preprocessor __INTEL_LLVM_COMPILER and
+   provides version info in __clang_version__ e.g. value:
+   "12.0.0 (icx 2020.10.0.1113)".  */
+set total_length [string length __clang_version__]
+set version_start_index [string last "(" __clang_version__]
+set version_string [string range __clang_version__ $version_start_index+5 $total_length-2]
+set version_updated_string [string map {. -} $version_string]
+set compiler_info "intel-$version_updated_string"
 #endif
index ee7fe12ad9b93861bfdcade1d898c7c92831d6f9..a97c6eeb4e3560c23ef515739f5559af714fb6dd 100644 (file)
@@ -160,7 +160,8 @@ proc fortran_character1 {} {
 proc fortran_main {} {
     if {[test_compiler_info {gcc-4-[012]-*}]
          || [test_compiler_info {gcc-*}]
-         || [test_compiler_info {icc-*}]} {
+         || [test_compiler_info {icc-*}]
+         || [test_compiler_info {intel-*}]} {
        return "MAIN__"
     } elseif {[test_compiler_info {clang-*}]} {
        return "MAIN_"