diff mbox

Enable Cilk keywords in Cilk Runtime

Message ID BF230D13CA30DD48930C31D4099330003A4B12D0@FMSMSX101.amr.corp.intel.com
State New
Headers show

Commit Message

Iyer, Balaji V Dec. 11, 2013, 7:04 p.m. UTC
Hello Everyone,
	Since we have _Cilk_spawn and _Cilk_sync support in C++ compiler, we can enable the keyword usage in runtime. This patch should do so.

	Is it Ok to install?

Here are the ChangeLog entries:

2013-12-11  Balaji V. Iyer  <balaji.v.iyer@intel.com>

        * Makefile.am (GENERAL_FLAGS): Removed un-defining of Cilk keywords.
        * Makefile.in: Regenerate.
        * runtime/symbol_test.c: Added a #define to clear out _Cilk_for.

Thanks,

Balaji V. Iyer.


Here is the patch.

Comments

Jeff Law Dec. 11, 2013, 8:28 p.m. UTC | #1
On 12/11/13 12:04, Iyer, Balaji V wrote:
> Hello Everyone,
> 	Since we have _Cilk_spawn and _Cilk_sync support in C++ compiler, we can enable the keyword usage in runtime. This patch should do so.
>
> 	Is it Ok to install?
>
> Here are the ChangeLog entries:
>
> 2013-12-11  Balaji V. Iyer  <balaji.v.iyer@intel.com>
>
>          * Makefile.am (GENERAL_FLAGS): Removed un-defining of Cilk keywords.
>          * Makefile.in: Regenerate.
>          * runtime/symbol_test.c: Added a #define to clear out _Cilk_for.
This is fine.
jeff
H.J. Lu Dec. 11, 2013, 9:50 p.m. UTC | #2
On Wed, Dec 11, 2013 at 11:04 AM, Iyer, Balaji V
<balaji.v.iyer@intel.com> wrote:
> Hello Everyone,
>         Since we have _Cilk_spawn and _Cilk_sync support in C++ compiler, we can enable the keyword usage in runtime. This patch should do so.
>
>         Is it Ok to install?
>
> Here are the ChangeLog entries:
>
> 2013-12-11  Balaji V. Iyer  <balaji.v.iyer@intel.com>
>
>         * Makefile.am (GENERAL_FLAGS): Removed un-defining of Cilk keywords.
>         * Makefile.in: Regenerate.
>         * runtime/symbol_test.c: Added a #define to clear out _Cilk_for.

Those tests failed on Linux/i686.

H.J.
---
FAIL: g++.dg/cilk-plus/CK/catch_exc.cc  -g -O2 -fcilkplus
-L/export/gnu/import/git/gcc-test-intel64corei7/bld/x86_64-unknown-linux-gnu/32/libcilkrts/.libs
execution test
FAIL: g++.dg/cilk-plus/CK/catch_exc.cc  -g -O3 -fcilkplus
-L/export/gnu/import/git/gcc-test-intel64corei7/bld/x86_64-unknown-linux-gnu/32/libcilkrts/.libs
execution test
FAIL: g++.dg/cilk-plus/CK/catch_exc.cc  -O1 -fcilkplus
-L/export/gnu/import/git/gcc-test-intel64corei7/bld/x86_64-unknown-linux-gnu/32/libcilkrts/.libs
execution test
FAIL: g++.dg/cilk-plus/CK/catch_exc.cc  -O2 -fcilkplus
-L/export/gnu/import/git/gcc-test-intel64corei7/bld/x86_64-unknown-linux-gnu/32/libcilkrts/.libs
execution test
FAIL: g++.dg/cilk-plus/CK/catch_exc.cc  -O3 -fcilkplus
-L/export/gnu/import/git/gcc-test-intel64corei7/bld/x86_64-unknown-linux-gnu/32/libcilkrts/.libs
execution test
Aldy Hernandez Dec. 12, 2013, 3:46 p.m. UTC | #3
"Iyer, Balaji V" <balaji.v.iyer@intel.com> writes:

>  # Compiler and linker flags.
>  GENERAL_FLAGS = -I$(top_srcdir)/include -I$(top_srcdir)/runtime -I$(top_srcdir)/runtime/config/$(config_dir) -DIN_CILK_RUNTIME=1
> -GENERAL_FLAGS += -D_Cilk_spawn="" -D_Cilk_sync="" -D_Cilk_for=for
> +# GENERAL_FLAGS += -D_Cilk_spawn="" -D_Cilk_sync="" -D_Cilk_for=for

Just remove the line.

>  # Compiler and linker flags.
> +# GENERAL_FLAGS += -D_Cilk_spawn="" -D_Cilk_sync="" -D_Cilk_for=for

Is this comment necessary?

Aldy
Iyer, Balaji V Dec. 12, 2013, 6:55 p.m. UTC | #4
> -----Original Message-----
> From: gcc-patches-owner@gcc.gnu.org [mailto:gcc-patches-
> owner@gcc.gnu.org] On Behalf Of Aldy Hernandez
> Sent: Thursday, December 12, 2013 10:47 AM
> To: Iyer, Balaji V
> Cc: gcc-patches@gcc.gnu.org; Jeff Law
> Subject: Re: [PATCH] Enable Cilk keywords in Cilk Runtime
> 
> "Iyer, Balaji V" <balaji.v.iyer@intel.com> writes:
> 
> >  # Compiler and linker flags.
> >  GENERAL_FLAGS = -I$(top_srcdir)/include -I$(top_srcdir)/runtime
> > -I$(top_srcdir)/runtime/config/$(config_dir) -DIN_CILK_RUNTIME=1
> > -GENERAL_FLAGS += -D_Cilk_spawn="" -D_Cilk_sync="" -D_Cilk_for=for
> > +# GENERAL_FLAGS += -D_Cilk_spawn="" -D_Cilk_sync="" -D_Cilk_for=for
> 
> Just remove the line.
> 
> >  # Compiler and linker flags.
> > +# GENERAL_FLAGS += -D_Cilk_spawn="" -D_Cilk_sync="" -D_Cilk_for=for
> 
> Is this comment necessary?
> 

No, I can remove it. But I put it in there because it is a good debugging method if you don't want to use _Cilk keywords to build runtime ....

> Aldy
diff mbox

Patch

diff --git a/libcilkrts/Makefile.am b/libcilkrts/Makefile.am
index 56bc9eb..d252087 100644
--- a/libcilkrts/Makefile.am
+++ b/libcilkrts/Makefile.am
@@ -38,7 +38,7 @@  ACLOCAL_AMFLAGS = -I .. -I ../config

 # Compiler and linker flags.
 GENERAL_FLAGS = -I$(top_srcdir)/include -I$(top_srcdir)/runtime -I$(top_srcdir)/runtime/config/$(config_dir) -DIN_CILK_RUNTIME=1
-GENERAL_FLAGS += -D_Cilk_spawn="" -D_Cilk_sync="" -D_Cilk_for=for
+# GENERAL_FLAGS += -D_Cilk_spawn="" -D_Cilk_sync="" -D_Cilk_for=for

 # Enable Intel Cilk Plus extension
 GENERAL_FLAGS += -fcilkplus
diff --git a/libcilkrts/Makefile.in b/libcilkrts/Makefile.in
index 5066bef..94902e1 100644
--- a/libcilkrts/Makefile.in
+++ b/libcilkrts/Makefile.in
@@ -342,12 +342,12 @@  AUTOMAKE_OPTIONS = foreign
 ACLOCAL_AMFLAGS = -I .. -I ../config

 # Compiler and linker flags.
+# GENERAL_FLAGS += -D_Cilk_spawn="" -D_Cilk_sync="" -D_Cilk_for=for

 # Enable Intel Cilk Plus extension
 GENERAL_FLAGS = -I$(top_srcdir)/include -I$(top_srcdir)/runtime \
        -I$(top_srcdir)/runtime/config/$(config_dir) \
-       -DIN_CILK_RUNTIME=1 -D_Cilk_spawn="" -D_Cilk_sync="" \
-       -D_Cilk_for=for -fcilkplus
+       -DIN_CILK_RUNTIME=1 -fcilkplus
 AM_CFLAGS = $(GENERAL_FLAGS) -std=c99
 AM_CPPFLAGS = $(GENERAL_FLAGS)
 AM_LDFLAGS = -lpthread
diff --git a/libcilkrts/runtime/symbol_test.c b/libcilkrts/runtime/symbol_test.c
index 1113ecd..8291d36 100644
--- a/libcilkrts/runtime/symbol_test.c
+++ b/libcilkrts/runtime/symbol_test.c
@@ -41,6 +41,7 @@ 
  * will cause a linker error.
  */

+#define _Cilk_for for
 extern void* __cilkrts_global_state;
 void *volatile p;