Commit e8daba7e by Andrew Stubbs Committed by Andrew Stubbs

GCN: Wait for exit value to write before exiting.

2019-05-24  Andrew Stubbs  <ams@codesourcery.com>

	gcc/
	* config/gcn/gcn-run.c (main): Set a non-zero return value if the
	kernel does not exit cleanly.
	* config/gcn/gcn.md (gcn_return): Insert s_waitcnt before s_dcache_wb.

From-SVN: r271605
parent c2465dae
2019-05-24 Andrew Stubbs <ams@codesourcery.com>
* config/gcn/gcn-run.c (main): Set a non-zero return value if the
kernel does not exit cleanly.
* config/gcn/gcn.md (gcn_return): Insert s_waitcnt before s_dcache_wb.
2019-05-24 Jason Merrill <jason@redhat.com>
Revert:
......
......@@ -853,7 +853,10 @@ main (int argc, char *argv[])
unsigned int upper = (return_value & ~0xffff) >> 16;
if (upper == 0xcafe)
printf ("Kernel exit value was never set\n");
{
printf ("Kernel exit value was never set\n");
return_value = 0xff;
}
else if (upper == 0xffff)
; /* Set by exit. */
else if (upper == 0)
......
......@@ -784,10 +784,10 @@
if (cfun && cfun->machine && cfun->machine->normal_function)
return "s_setpc_b64\ts[18:19]";
else
return "s_dcache_wb\;s_endpgm";
return "s_waitcnt\tlgkmcnt(0)\;s_dcache_wb\;s_endpgm";
}
[(set_attr "type" "sop1")
(set_attr "length" "8")])
(set_attr "length" "12")])
(define_expand "call"
[(parallel [(call (match_operand 0 "")
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment