Mercurial > hg > CbC > CbC_gcc
diff gcc/go/gofrontend/runtime.def @ 131:84e7813d76e9
gcc-8.2
author | mir3636 |
---|---|
date | Thu, 25 Oct 2018 07:37:49 +0900 |
parents | 04ced10e8804 |
children | 1830386684a0 |
line wrap: on
line diff
--- a/gcc/go/gofrontend/runtime.def Fri Oct 27 22:46:09 2017 +0900 +++ b/gcc/go/gofrontend/runtime.def Thu Oct 25 07:37:49 2018 +0900 @@ -91,9 +91,14 @@ R1(SLICE)) -// Make a map. -DEF_GO_RUNTIME(MAKEMAP, "runtime.makemap", P4(TYPE, INT64, POINTER, POINTER), - R1(MAP)) +// Make a map with a hint and an (optional, unused) map structure. +DEF_GO_RUNTIME(MAKEMAP, "runtime.makemap", P3(TYPE, INT, POINTER), + R1(MAP)) +DEF_GO_RUNTIME(MAKEMAP64, "runtime.makemap64", P3(TYPE, INT64, POINTER), + R1(MAP)) + +// Make a map with no hint, or a small constant hint. +DEF_GO_RUNTIME(MAKEMAP_SMALL, "runtime.makemap_small", P0(), R1(MAP)) // Build a map from a composite literal. DEF_GO_RUNTIME(CONSTRUCT_MAP, "__go_construct_map", @@ -134,7 +139,8 @@ // Make a channel. -DEF_GO_RUNTIME(MAKECHAN, "runtime.makechan", P2(TYPE, INT64), R1(CHAN)) +DEF_GO_RUNTIME(MAKECHAN, "runtime.makechan", P2(TYPE, INT), R1(CHAN)) +DEF_GO_RUNTIME(MAKECHAN64, "runtime.makechan64", P2(TYPE, INT64), R1(CHAN)) // Send a value on a channel. DEF_GO_RUNTIME(CHANSEND, "runtime.chansend1", P2(CHAN, POINTER), R0()) @@ -146,22 +152,10 @@ DEF_GO_RUNTIME(CHANRECV2, "runtime.chanrecv2", P2(CHAN, POINTER), R1(BOOL)) -// Start building a select statement. -DEF_GO_RUNTIME(NEWSELECT, "runtime.newselect", P3(POINTER, INT64, INT32), R0()) - -// Add a default clause to a select statement. -DEF_GO_RUNTIME(SELECTDEFAULT, "runtime.selectdefault", P1(POINTER), R0()) - -// Add a send clause to a select statement. -DEF_GO_RUNTIME(SELECTSEND, "runtime.selectsend", P3(POINTER, CHAN, POINTER), - R0()) - -// Add a receive clause to a select statement. -DEF_GO_RUNTIME(SELECTRECV, "runtime.selectrecv", - P4(POINTER, CHAN, POINTER, BOOLPTR), R0()) - -// Run a select, returning the index of the selected clause. -DEF_GO_RUNTIME(SELECTGO, "runtime.selectgo", P1(POINTER), R1(INT)) +// Run a select, returning the index of the selected clause and +// whether that channel received a value. +DEF_GO_RUNTIME(SELECTGO, "runtime.selectgo", P3(POINTER, POINTER, INT), + R2(INT, BOOL)) // Panic. @@ -308,7 +302,7 @@ // Set *dst = src where dst is a pointer to a pointer and src is a pointer. -DEF_GO_RUNTIME(WRITEBARRIERPTR, "runtime.writebarrierptr", +DEF_GO_RUNTIME(GCWRITEBARRIER, "runtime.gcWriteBarrier", P2(POINTER, POINTER), R0()) // Set *dst = *src for an arbitrary type. @@ -363,6 +357,9 @@ DEF_GO_RUNTIME(FIELDTRACK, "__go_fieldtrack", P1(POINTER), R0()) +// Unreachable code. +DEF_GO_RUNTIME(UNREACHABLE, "__builtin_unreachable", P0(), R0()) + // Remove helper macros. #undef ABFT6 #undef ABFT2