Merging Cilk Plus into GCC Trunk

Iyer, Balaji V
Thu Aug 30 20:39:00 GMT 2012

Hello Everyone,
	The Cilk-Plus branch is feature-complete. Programs using Cilk Plus constructs get great performance on vector and multicore hardware. Programs that don't use the new language features (enabled by a -fcilkplus flag) see no change. For details please see
	It's time to promote the branch into mainline. Cilk Plus branch is stable and there is no unexpected failures with respect to the trunk in regression testsuites. Most of the changes are in the front and middle-end. Since it involves many changes, I plan to break it up into individual patches (listed below), each of which adds a new, complete capability. Later patches sometimes use the functionality added by the previous one. For example, Elemental functions for C++ will depend on some of the common routines used in C patch:

1. Elemental functions for C.
2. Regression tests for elemental functions for C.
3. Elemental functions for C++.
4. Regression tests for elemental functions for C++. 
5. SIMD annotations for C.
6. Regression tests for SIMD annotations for C.
7. SIMD annotations for C++.
8. Regression tests for SIMD annotations for C++. 
9. Array notations for C.
10. Regression tests for Array notations for C.
11. Array Notations for C++.
12. Regression tests for Array Notations for C++. 
13. The Cilk Runtime library -- It is a separate directory without any changes to compiler source.
14. Cilk Keywords (_Cilk_spawn and _Cilk_sync) for C.
15. Regression tests _Cilk_spawn and _Cilk_sync for C.
16. Cilk Keywords (_Cilk_spawn and _Cilk_sync) for C++.
17. Regression tests _Cilk_spawn and _Cilk_sync for C++. 
18. Cilk Keywords (_Cilk_for) for C.
19. _Cilk_for Regression tests for C.
20. Cilk Keywords (_Cilk_for) for C++.
21. _Cilk_for Regression tests for C++.
22. Documentation about Cilk Plus into GCC documents.

If there is a more effective way to merge our changes to the trunk, I am open to suggestions.

Thanking You,

Yours Sincerely,

Balaji V. Iyer.

More information about the Gcc mailing list