: c++
Assignee: unassigned at gcc dot gnu.org
Reporter: spear at cse dot lehigh.edu
Templates instantiated within transactions from multiple files result in
multiple-definition errors at link time. Errors do not occur when compiling
without TM, or when all source files are
: c++
Assignee: unassigned at gcc dot gnu.org
Reporter: spear at cse dot lehigh.edu
Summary:
The following code produces an ICE when compiled with "g++ -fgnu-tm bug.cc -c"
int val;
void test() {
while (true) {
__transaction_atomic {
if
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60004
--- Comment #6 from Mike Spear ---
(For the record, this bug was found by wcm...@lehigh.edu, even though I
reported it)
: libitm
Assignee: unassigned at gcc dot gnu.org
Reporter: spear at cse dot lehigh.edu
The following code produces an ICE:
int a;
int f() {
__transaction_atomic {
if (a == 5)
return 1;
}
}
compilation:
gcc -std=c++11 -fgnu-tm test_if.cc -c
error
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59463
--- Comment #2 from Mike Spear ---
Bug no longer present in trunk version 205880.
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59463
Mike Spear changed:
What|Removed |Added
CC||spear at cse dot lehigh.edu
--- Comment #1
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=56801
--- Comment #3 from Mike Spear ---
Patrick,
I just tried again, with gcc --version: gcc (Ubuntu/Linaro 4.7.3-1ubuntu1)
4.7.3
Result:
$ gcc -std=gnu11 -g -O2 -fgnu-tm -pthread -c testcase.c -o testcase.o
testcase.c: In function 'slabs_adjust_me
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57855
--- Comment #1 from Mike Spear ---
PS: error seems to have been around for a while, and is certainly present in
trunk revision 200806
Severity: normal
Priority: P3
Component: libitm
Assignee: unassigned at gcc dot gnu.org
Reporter: spear at cse dot lehigh.edu
The following code should be rejected, but is not:
#include
// typedef of a function pointer that is transaction_safe
typedef void
: libitm
Assignee: unassigned at gcc dot gnu.org
Reporter: spear at cse dot lehigh.edu
For the following simple test case:
int foo();
int demo();
int x;
int demo()
{
if (__transaction_atomic(x == -1))
{
foo();
}
return 1;
}
Compiled with:
gcc -fgnu-tm
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=56801
--- Comment #1 from Mike Spear 2013-04-01
15:55:04 UTC ---
Created attachment 29768
--> http://gcc.gnu.org/bugzilla/attachment.cgi?id=29768
C file that generates the ICE
I forgot to include the output of gcc -v. This is a standard 64
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=56801
Bug #: 56801
Summary: Internal Compiler Error when compiling relaxed
transaction
Classification: Unclassified
Product: gcc
Version: 4.7.2
Status: UNCONFIRME
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54893
--- Comment #2 from Mike Spear 2012-10-11
13:21:19 UTC ---
There is a key difference here. The transaction in my example is /relaxed/.
According to the specification, there are no restrictions on what a relaxed
transaction can do. Relax
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54893
Bug #: 54893
Summary: unable to access volatile variable within relaxed
transaction
Classification: Unclassified
Product: gcc
Version: 4.7.1
Status: UNCONFI
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46026
Summary: [trans-mem] Unable to build libitm on Solaris/x86
Product: gcc
Version: unknown
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: other
AssignedTo
15 matches
Mail list logo