This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
Other format: | [Raw text] |
The attached patch renames/splits __transaction (with optional [[atomic]] and [[relaxed]] attributes) into two keywords that explicitly select an atomic or relaxed transaction, with no default. This is a recent change in the C++ TM spec. patch10: Contains all the work on the GCC side. I do keep the single internal transaction construct together with the internal flags for relaxed and atomic outer transactions, but the parser is changed to only accept the new syntax. patch11: Adjusts the syntax used in the libitm test cases accordingly. Several ICEs in the TM tests on C++, but I think they are old. C TM tests work except some missing optimizations (old failures too). c-c++-common/tm/wrap-[12].c fail on C++, but not on C: wrap-1.c:5:57: error: 'transaction_wrap' argument not an identifier I believe this is an old error too? (I don't yet have a testcase summary of before the changes, so I can't compare properly. But will send an follow-up if there are regressions.) OK for branch?
Attachment:
patch10
Description: Text document
Attachment:
patch11
Description: Text document
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |