mirror of git://gcc.gnu.org/git/gcc.git
parent
2da8c1adcf
commit
65728e39ba
|
|
@ -1,21 +0,0 @@
|
||||||
/* { dg-do compile } */
|
|
||||||
/* { dg-options "-fgnu-tm -O1" } */
|
|
||||||
|
|
||||||
inline void asmfunc(void)
|
|
||||||
{
|
|
||||||
__asm__ (""); /* { dg-error "asm not allowed in .transaction_safe" } */
|
|
||||||
}
|
|
||||||
|
|
||||||
__attribute__((transaction_safe))
|
|
||||||
static void f(void)
|
|
||||||
{
|
|
||||||
asmfunc();
|
|
||||||
}
|
|
||||||
|
|
||||||
int main()
|
|
||||||
{
|
|
||||||
__transaction_atomic {
|
|
||||||
f();
|
|
||||||
}
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
|
|
@ -3736,10 +3736,6 @@ ipa_tm_scan_irr_block (basic_block bb)
|
||||||
assembly statement is not relevant to the transaction
|
assembly statement is not relevant to the transaction
|
||||||
is to wrap it in a __tm_waiver block. This is not
|
is to wrap it in a __tm_waiver block. This is not
|
||||||
yet implemented, so we can't check for it. */
|
yet implemented, so we can't check for it. */
|
||||||
if (is_tm_safe (current_function_decl))
|
|
||||||
error_at (gimple_location (stmt),
|
|
||||||
"asm not allowed in %<transaction_safe%> function %qE",
|
|
||||||
current_function_decl);
|
|
||||||
return true;
|
return true;
|
||||||
|
|
||||||
default:
|
default:
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue