This is the mail archive of the
mailing list for the GCC project.
Merging Cilk Plus into GCC Trunk
- From: "Iyer, Balaji V" <balaji dot v dot iyer at intel dot com>
- To: "'gcc at gcc dot gnu dot org'" <gcc at gcc dot gnu dot org>
- Cc: Jeff Law <law at redhat dot com>, "rth at redhat dot com" <rth at redhat dot com>, "Aldy Hernandez (aldyh at redhat dot com)" <aldyh at redhat dot com>
- Date: Thu, 30 Aug 2012 20:39:07 +0000
- Subject: Merging Cilk Plus into GCC Trunk
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 http://cilkplus.org.
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.
Balaji V. Iyer.