Re: [PATCH] Check TBB version in tbb-backed effective target check

2019-05-20 Thread Thomas Rodgers
Tested x86_64-linux, committed to trunk.

Thomas Rodgers writes:

>   * testsuite/lib/libstdc++.exp (check_effective_target_tbb-backend):
>   Add check for Thread Building Blocks 2018 or later.
>
> From bd3de7b67f184ed1387b63dc3bda1d12f7ebee04 Mon Sep 17 00:00:00 2001
> From: Thomas Rodgers 
> Date: Wed, 24 Apr 2019 11:34:14 -0700
> Subject: [PATCH] Check TBB version in tbb-backed effective target check
>
>   * testsuite/lib/libstdc++.exp (check_effective_target_tbb-backend):
>   Add check for Thread Building Blocks 2018 or later.
> ---
>  libstdc++-v3/testsuite/lib/libstdc++.exp | 42 +---
>  1 file changed, 23 insertions(+), 19 deletions(-)
>
> diff --git a/libstdc++-v3/testsuite/lib/libstdc++.exp 
> b/libstdc++-v3/testsuite/lib/libstdc++.exp
> index d0efc90a1ba..c48b4d78bbb 100644
> --- a/libstdc++-v3/testsuite/lib/libstdc++.exp
> +++ b/libstdc++-v3/testsuite/lib/libstdc++.exp
> @@ -1607,25 +1607,29 @@ proc check_effective_target_random_device { } {
>  
>  # Return 1 if tbb parallel backend is available
>  proc check_effective_target_tbb-backend { } {
> - global cxxflags
> -
> - # Set up and preprocess a C++ test program that depends
> - # on tbb
> - set src tbb_backend[pid].cc
> -
> - set f [open $src "w"]
> - puts $f "#include "
> - close $f
> - set lines [v3_target_compile $src /dev/null preprocess ""]
> - file delete $src
> -
> - if [string match "" $lines] {
> - # No error message, preprocessing succeeded.
> - verbose "check_v3_tbb-backend: `1'" 2
> - return 1
> - }
> - verbose "check_v3_tbb-backend: `0'" 2
> - return 0
> +global cxxflags
> +
> +# Set up and preprocess a C++ test program that depends
> +# on tbb
> +set src tbb_backend[pid].cc
> +
> +set f [open $src "w"]
> +puts $f "#include "
> +puts $f "#if TBB_INTERFACE_VERSION < 1"
> +puts $f "#  error Intel(R) Threading Building Blocks 2018 is required; 
> older versions are not supported."
> +puts $f "#endif"
> +close $f
> +
> +set lines [v3_target_compile $src /dev/null preprocess ""]
> +file delete $src
> +
> +if [string match "" $lines] {
> + # No error message, preprocessing succeeded.
> + verbose "check_v3_tbb-backend: `1'" 2
> + return 1
> +}
> +verbose "check_v3_tbb-backend: `0'" 2
> +return 0
>  }
>  
>  set additional_prunes ""



Re: [PATCH] Check TBB version in tbb-backed effective target check

2019-04-24 Thread Jonathan Wakely

On 24/04/19 11:40 -0700, Thomas Rodgers wrote:


* testsuite/lib/libstdc++.exp (check_effective_target_tbb-backend):
Add check for Thread Building Blocks 2018 or later.




From bd3de7b67f184ed1387b63dc3bda1d12f7ebee04 Mon Sep 17 00:00:00 2001
From: Thomas Rodgers 
Date: Wed, 24 Apr 2019 11:34:14 -0700
Subject: [PATCH] Check TBB version in tbb-backed effective target check

* testsuite/lib/libstdc++.exp (check_effective_target_tbb-backend):
Add check for Thread Building Blocks 2018 or later.
---
libstdc++-v3/testsuite/lib/libstdc++.exp | 42 +---
1 file changed, 23 insertions(+), 19 deletions(-)

diff --git a/libstdc++-v3/testsuite/lib/libstdc++.exp 
b/libstdc++-v3/testsuite/lib/libstdc++.exp
index d0efc90a1ba..c48b4d78bbb 100644
--- a/libstdc++-v3/testsuite/lib/libstdc++.exp
+++ b/libstdc++-v3/testsuite/lib/libstdc++.exp
@@ -1607,25 +1607,29 @@ proc check_effective_target_random_device { } {

# Return 1 if tbb parallel backend is available
proc check_effective_target_tbb-backend { } {
-   global cxxflags
-
-   # Set up and preprocess a C++ test program that depends
-   # on tbb
-   set src tbb_backend[pid].cc
-
-   set f [open $src "w"]
-   puts $f "#include "
-   close $f
-   set lines [v3_target_compile $src /dev/null preprocess ""]
-   file delete $src
-
-   if [string match "" $lines] {
-   # No error message, preprocessing succeeded.
-   verbose "check_v3_tbb-backend: `1'" 2
-   return 1
-   }
-   verbose "check_v3_tbb-backend: `0'" 2
-   return 0
+global cxxflags
+
+# Set up and preprocess a C++ test program that depends
+# on tbb
+set src tbb_backend[pid].cc
+
+set f [open $src "w"]
+puts $f "#include "
+puts $f "#if TBB_INTERFACE_VERSION < 1"
+puts $f "#  error Intel(R) Threading Building Blocks 2018 is required; older 
versions are not supported."
+puts $f "#endif"
+close $f
+


This line above has four spaces, but can be just an empty line.

OK for trunk with that tweak, thanks.



[PATCH] Check TBB version in tbb-backed effective target check

2019-04-24 Thread Thomas Rodgers

* testsuite/lib/libstdc++.exp (check_effective_target_tbb-backend):
Add check for Thread Building Blocks 2018 or later.

>From bd3de7b67f184ed1387b63dc3bda1d12f7ebee04 Mon Sep 17 00:00:00 2001
From: Thomas Rodgers 
Date: Wed, 24 Apr 2019 11:34:14 -0700
Subject: [PATCH] Check TBB version in tbb-backed effective target check

	* testsuite/lib/libstdc++.exp (check_effective_target_tbb-backend):
	Add check for Thread Building Blocks 2018 or later.
---
 libstdc++-v3/testsuite/lib/libstdc++.exp | 42 +---
 1 file changed, 23 insertions(+), 19 deletions(-)

diff --git a/libstdc++-v3/testsuite/lib/libstdc++.exp b/libstdc++-v3/testsuite/lib/libstdc++.exp
index d0efc90a1ba..c48b4d78bbb 100644
--- a/libstdc++-v3/testsuite/lib/libstdc++.exp
+++ b/libstdc++-v3/testsuite/lib/libstdc++.exp
@@ -1607,25 +1607,29 @@ proc check_effective_target_random_device { } {
 
 # Return 1 if tbb parallel backend is available
 proc check_effective_target_tbb-backend { } {
-		global cxxflags
-
-		# Set up and preprocess a C++ test program that depends
-		# on tbb
-		set src tbb_backend[pid].cc
-
-		set f [open $src "w"]
-		puts $f "#include "
-		close $f
-		set lines [v3_target_compile $src /dev/null preprocess ""]
-		file delete $src
-
-		if [string match "" $lines] {
-# No error message, preprocessing succeeded.
-verbose "check_v3_tbb-backend: `1'" 2
-return 1
-		}
-		verbose "check_v3_tbb-backend: `0'" 2
-		return 0
+global cxxflags
+
+# Set up and preprocess a C++ test program that depends
+# on tbb
+set src tbb_backend[pid].cc
+
+set f [open $src "w"]
+puts $f "#include "
+puts $f "#if TBB_INTERFACE_VERSION < 1"
+puts $f "#  error Intel(R) Threading Building Blocks 2018 is required; older versions are not supported."
+puts $f "#endif"
+close $f
+
+set lines [v3_target_compile $src /dev/null preprocess ""]
+file delete $src
+
+if [string match "" $lines] {
+	# No error message, preprocessing succeeded.
+	verbose "check_v3_tbb-backend: `1'" 2
+	return 1
+}
+verbose "check_v3_tbb-backend: `0'" 2
+return 0
 }
 
 set additional_prunes ""
-- 
2.20.1