// Code generated by mkbuiltin.go. DO NOT EDIT.

package gc

import "cmd/compile/internal/types"

var runtimeDecls = [...]struct {
	name string
	tag  int
	typ  int
}{
	{"newobject", funcTag, 4},
	{"mallocgc", funcTag, 8},
	{"panicdivide", funcTag, 9},
	{"panicshift", funcTag, 9},
	{"panicmakeslicelen", funcTag, 9},
	{"panicmakeslicecap", funcTag, 9},
	{"throwinit", funcTag, 9},
	{"panicwrap", funcTag, 9},
	{"gopanic", funcTag, 11},
	{"gorecover", funcTag, 14},
	{"goschedguarded", funcTag, 9},
	{"goPanicIndex", funcTag, 16},
	{"goPanicIndexU", funcTag, 18},
	{"goPanicSliceAlen", funcTag, 16},
	{"goPanicSliceAlenU", funcTag, 18},
	{"goPanicSliceAcap", funcTag, 16},
	{"goPanicSliceAcapU", funcTag, 18},
	{"goPanicSliceB", funcTag, 16},
	{"goPanicSliceBU", funcTag, 18},
	{"goPanicSlice3Alen", funcTag, 16},
	{"goPanicSlice3AlenU", funcTag, 18},
	{"goPanicSlice3Acap", funcTag, 16},
	{"goPanicSlice3AcapU", funcTag, 18},
	{"goPanicSlice3B", funcTag, 16},
	{"goPanicSlice3BU", funcTag, 18},
	{"goPanicSlice3C", funcTag, 16},
	{"goPanicSlice3CU", funcTag, 18},
	{"printbool", funcTag, 19},
	{"printfloat", funcTag, 21},
	{"printint", funcTag, 23},
	{"printhex", funcTag, 25},
	{"printuint", funcTag, 25},
	{"printcomplex", funcTag, 27},
	{"printstring", funcTag, 29},
	{"printpointer", funcTag, 30},
	{"printiface", funcTag, 30},
	{"printeface", funcTag, 30},
	{"printslice", funcTag, 30},
	{"printnl", funcTag, 9},
	{"printsp", funcTag, 9},
	{"printlock", funcTag, 9},
	{"printunlock", funcTag, 9},
	{"concatstring2", funcTag, 33},
	{"concatstring3", funcTag, 34},
	{"concatstring4", funcTag, 35},
	{"concatstring5", funcTag, 36},
	{"concatstrings", funcTag, 38},
	{"cmpstring", funcTag, 39},
	{"intstring", funcTag, 42},
	{"slicebytetostring", funcTag, 43},
	{"slicebytetostringtmp", funcTag, 44},
	{"slicerunetostring", funcTag, 47},
	{"stringtoslicebyte", funcTag, 49},
	{"stringtoslicerune", funcTag, 52},
	{"slicecopy", funcTag, 53},
	{"decoderune", funcTag, 54},
	{"countrunes", funcTag, 55},
	{"convI2I", funcTag, 56},
	{"convT16", funcTag, 57},
	{"convT32", funcTag, 57},
	{"convT64", funcTag, 57},
	{"convTstring", funcTag, 57},
	{"convTslice", funcTag, 57},
	{"convT2E", funcTag, 58},
	{"convT2Enoptr", funcTag, 58},
	{"convT2I", funcTag, 58},
	{"convT2Inoptr", funcTag, 58},
	{"assertE2I", funcTag, 56},
	{"assertE2I2", funcTag, 59},
	{"assertI2I", funcTag, 56},
	{"assertI2I2", funcTag, 59},
	{"panicdottypeE", funcTag, 60},
	{"panicdottypeI", funcTag, 60},
	{"panicnildottype", funcTag, 61},
	{"ifaceeq", funcTag, 63},
	{"efaceeq", funcTag, 63},
	{"fastrand", funcTag, 65},
	{"makemap64", funcTag, 67},
	{"makemap", funcTag, 68},
	{"makemap_small", funcTag, 69},
	{"mapaccess1", funcTag, 70},
	{"mapaccess1_fast32", funcTag, 71},
	{"mapaccess1_fast64", funcTag, 71},
	{"mapaccess1_faststr", funcTag, 71},
	{"mapaccess1_fat", funcTag, 72},
	{"mapaccess2", funcTag, 73},
	{"mapaccess2_fast32", funcTag, 74},
	{"mapaccess2_fast64", funcTag, 74},
	{"mapaccess2_faststr", funcTag, 74},
	{"mapaccess2_fat", funcTag, 75},
	{"mapassign", funcTag, 70},
	{"mapassign_fast32", funcTag, 71},
	{"mapassign_fast32ptr", funcTag, 71},
	{"mapassign_fast64", funcTag, 71},
	{"mapassign_fast64ptr", funcTag, 71},
	{"mapassign_faststr", funcTag, 71},
	{"mapiterinit", funcTag, 76},
	{"mapdelete", funcTag, 76},
	{"mapdelete_fast32", funcTag, 77},
	{"mapdelete_fast64", funcTag, 77},
	{"mapdelete_faststr", funcTag, 77},
	{"mapiternext", funcTag, 78},
	{"mapclear", funcTag, 79},
	{"makechan64", funcTag, 81},
	{"makechan", funcTag, 82},
	{"chanrecv1", funcTag, 84},
	{"chanrecv2", funcTag, 85},
	{"chansend1", funcTag, 87},
	{"closechan", funcTag, 30},
	{"writeBarrier", varTag, 89},
	{"typedmemmove", funcTag, 90},
	{"typedmemclr", funcTag, 91},
	{"typedslicecopy", funcTag, 92},
	{"selectnbsend", funcTag, 93},
	{"selectnbrecv", funcTag, 94},
	{"selectnbrecv2", funcTag, 96},
	{"selectsetpc", funcTag, 97},
	{"selectgo", funcTag, 98},
	{"block", funcTag, 9},
	{"makeslice", funcTag, 99},
	{"makeslice64", funcTag, 100},
	{"makeslicecopy", funcTag, 101},
	{"growslice", funcTag, 103},
	{"memmove", funcTag, 104},
	{"memclrNoHeapPointers", funcTag, 105},
	{"memclrHasPointers", funcTag, 105},
	{"memequal", funcTag, 106},
	{"memequal0", funcTag, 107},
	{"memequal8", funcTag, 107},
	{"memequal16", funcTag, 107},
	{"memequal32", funcTag, 107},
	{"memequal64", funcTag, 107},
	{"memequal128", funcTag, 107},
	{"f32equal", funcTag, 108},
	{"f64equal", funcTag, 108},
	{"c64equal", funcTag, 108},
	{"c128equal", funcTag, 108},
	{"strequal", funcTag, 108},
	{"interequal", funcTag, 108},
	{"nilinterequal", funcTag, 108},
	{"memhash", funcTag, 109},
	{"memhash0", funcTag, 110},
	{"memhash8", funcTag, 110},
	{"memhash16", funcTag, 110},
	{"memhash32", funcTag, 110},
	{"memhash64", funcTag, 110},
	{"memhash128", funcTag, 110},
	{"f32hash", funcTag, 110},
	{"f64hash", funcTag, 110},
	{"c64hash", funcTag, 110},
	{"c128hash", funcTag, 110},
	{"strhash", funcTag, 110},
	{"interhash", funcTag, 110},
	{"nilinterhash", funcTag, 110},
	{"int64div", funcTag, 111},
	{"uint64div", funcTag, 112},
	{"int64mod", funcTag, 111},
	{"uint64mod", funcTag, 112},
	{"float64toint64", funcTag, 113},
	{"float64touint64", funcTag, 114},
	{"float64touint32", funcTag, 115},
	{"int64tofloat64", funcTag, 116},
	{"uint64tofloat64", funcTag, 117},
	{"uint32tofloat64", funcTag, 118},
	{"complex128div", funcTag, 119},
	{"racefuncenter", funcTag, 120},
	{"racefuncenterfp", funcTag, 9},
	{"racefuncexit", funcTag, 9},
	{"raceread", funcTag, 120},
	{"racewrite", funcTag, 120},
	{"racereadrange", funcTag, 121},
	{"racewriterange", funcTag, 121},
	{"msanread", funcTag, 121},
	{"msanwrite", funcTag, 121},
	{"checkptrAlignment", funcTag, 122},
	{"checkptrArithmetic", funcTag, 124},
	{"libfuzzerTraceCmp1", funcTag, 126},
	{"libfuzzerTraceCmp2", funcTag, 128},
	{"libfuzzerTraceCmp4", funcTag, 129},
	{"libfuzzerTraceCmp8", funcTag, 130},
	{"libfuzzerTraceConstCmp1", funcTag, 126},
	{"libfuzzerTraceConstCmp2", funcTag, 128},
	{"libfuzzerTraceConstCmp4", funcTag, 129},
	{"libfuzzerTraceConstCmp8", funcTag, 130},
	{"x86HasPOPCNT", varTag, 6},
	{"x86HasSSE41", varTag, 6},
	{"x86HasFMA", varTag, 6},
	{"armHasVFPv4", varTag, 6},
	{"arm64HasATOMICS", varTag, 6},
}

func runtimeTypes() []*types.Type {
	var typs [131]*types.Type
	typs[0] = types.Bytetype
	typs[1] = types.NewPtr(typs[0])
	typs[2] = types.Types[TANY]
	typs[3] = types.NewPtr(typs[2])
	typs[4] = functype(nil, []*Node{anonfield(typs[1])}, []*Node{anonfield(typs[3])})
	typs[5] = types.Types[TUINTPTR]
	typs[6] = types.Types[TBOOL]
	typs[7] = types.Types[TUNSAFEPTR]
	typs[8] = functype(nil, []*Node{anonfield(typs[5]), anonfield(typs[1]), anonfield(typs[6])}, []*Node{anonfield(typs[7])})
	typs[9] = functype(nil, nil, nil)
	typs[10] = types.Types[TINTER]
	typs[11] = functype(nil, []*Node{anonfield(typs[10])}, nil)
	typs[12] = types.Types[TINT32]
	typs[13] = types.NewPtr(typs[12])
	typs[14] = functype(nil, []*Node{anonfield(typs[13])}, []*Node{anonfield(typs[10])})
	typs[15] = types.Types[TINT]
	typs[16] = functype(nil, []*Node{anonfield(typs[15]), anonfield(typs[15])}, nil)
	typs[17] = types.Types[TUINT]
	typs[18] = functype(nil, []*Node{anonfield(typs[17]), anonfield(typs[15])}, nil)
	typs[19] = functype(nil, []*Node{anonfield(typs[6])}, nil)
	typs[20] = types.Types[TFLOAT64]
	typs[21] = functype(nil, []*Node{anonfield(typs[20])}, nil)
	typs[22] = types.Types[TINT64]
	typs[23] = functype(nil, []*Node{anonfield(typs[22])}, nil)
	typs[24] = types.Types[TUINT64]
	typs[25] = functype(nil, []*Node{anonfield(typs[24])}, nil)
	typs[26] = types.Types[TCOMPLEX128]
	typs[27] = functype(nil, []*Node{anonfield(typs[26])}, nil)
	typs[28] = types.Types[TSTRING]
	typs[29] = functype(nil, []*Node{anonfield(typs[28])}, nil)
	typs[30] = functype(nil, []*Node{anonfield(typs[2])}, nil)
	typs[31] = types.NewArray(typs[0], 32)
	typs[32] = types.NewPtr(typs[31])
	typs[33] = functype(nil, []*Node{anonfield(typs[32]), anonfield(typs[28]), anonfield(typs[28])}, []*Node{anonfield(typs[28])})
	typs[34] = functype(nil, []*Node{anonfield(typs[32]), anonfield(typs[28]), anonfield(typs[28]), anonfield(typs[28])}, []*Node{anonfield(typs[28])})
	typs[35] = functype(nil, []*Node{anonfield(typs[32]), anonfield(typs[28]), anonfield(typs[28]), anonfield(typs[28]), anonfield(typs[28])}, []*Node{anonfield(typs[28])})
	typs[36] = functype(nil, []*Node{anonfield(typs[32]), anonfield(typs[28]), anonfield(typs[28]), anonfield(typs[28]), anonfield(typs[28]), anonfield(typs[28])}, []*Node{anonfield(typs[28])})
	typs[37] = types.NewSlice(typs[28])
	typs[38] = functype(nil, []*Node{anonfield(typs[32]), anonfield(typs[37])}, []*Node{anonfield(typs[28])})
	typs[39] = functype(nil, []*Node{anonfield(typs[28]), anonfield(typs[28])}, []*Node{anonfield(typs[15])})
	typs[40] = types.NewArray(typs[0], 4)
	typs[41] = types.NewPtr(typs[40])
	typs[42] = functype(nil, []*Node{anonfield(typs[41]), anonfield(typs[22])}, []*Node{anonfield(typs[28])})
	typs[43] = functype(nil, []*Node{anonfield(typs[32]), anonfield(typs[1]), anonfield(typs[15])}, []*Node{anonfield(typs[28])})
	typs[44] = functype(nil, []*Node{anonfield(typs[1]), anonfield(typs[15])}, []*Node{anonfield(typs[28])})
	typs[45] = types.Runetype
	typs[46] = types.NewSlice(typs[45])
	typs[47] = functype(nil, []*Node{anonfield(typs[32]), anonfield(typs[46])}, []*Node{anonfield(typs[28])})
	typs[48] = types.NewSlice(typs[0])
	typs[49] = functype(nil, []*Node{anonfield(typs[32]), anonfield(typs[28])}, []*Node{anonfield(typs[48])})
	typs[50] = types.NewArray(typs[45], 32)
	typs[51] = types.NewPtr(typs[50])
	typs[52] = functype(nil, []*Node{anonfield(typs[51]), anonfield(typs[28])}, []*Node{anonfield(typs[46])})
	typs[53] = functype(nil, []*Node{anonfield(typs[3]), anonfield(typs[15]), anonfield(typs[3]), anonfield(typs[15]), anonfield(typs[5])}, []*Node{anonfield(typs[15])})
	typs[54] = functype(nil, []*Node{anonfield(typs[28]), anonfield(typs[15])}, []*Node{anonfield(typs[45]), anonfield(typs[15])})
	typs[55] = functype(nil, []*Node{anonfield(typs[28])}, []*Node{anonfield(typs[15])})
	typs[56] = functype(nil, []*Node{anonfield(typs[1]), anonfield(typs[2])}, []*Node{anonfield(typs[2])})
	typs[57] = functype(nil, []*Node{anonfield(typs[2])}, []*Node{anonfield(typs[7])})
	typs[58] = functype(nil, []*Node{anonfield(typs[1]), anonfield(typs[3])}, []*Node{anonfield(typs[2])})
	typs[59] = functype(nil, []*Node{anonfield(typs[1]), anonfield(typs[2])}, []*Node{anonfield(typs[2]), anonfield(typs[6])})
	typs[60] = functype(nil, []*Node{anonfield(typs[1]), anonfield(typs[1]), anonfield(typs[1])}, nil)
	typs[61] = functype(nil, []*Node{anonfield(typs[1])}, nil)
	typs[62] = types.NewPtr(typs[5])
	typs[63] = functype(nil, []*Node{anonfield(typs[62]), anonfield(typs[7]), anonfield(typs[7])}, []*Node{anonfield(typs[6])})
	typs[64] = types.Types[TUINT32]
	typs[65] = functype(nil, nil, []*Node{anonfield(typs[64])})
	typs[66] = types.NewMap(typs[2], typs[2])
	typs[67] = functype(nil, []*Node{anonfield(typs[1]), anonfield(typs[22]), anonfield(typs[3])}, []*Node{anonfield(typs[66])})
	typs[68] = functype(nil, []*Node{anonfield(typs[1]), anonfield(typs[15]), anonfield(typs[3])}, []*Node{anonfield(typs[66])})
	typs[69] = functype(nil, nil, []*Node{anonfield(typs[66])})
	typs[70] = functype(nil, []*Node{anonfield(typs[1]), anonfield(typs[66]), anonfield(typs[3])}, []*Node{anonfield(typs[3])})
	typs[71] = functype(nil, []*Node{anonfield(typs[1]), anonfield(typs[66]), anonfield(typs[2])}, []*Node{anonfield(typs[3])})
	typs[72] = functype(nil, []*Node{anonfield(typs[1]), anonfield(typs[66]), anonfield(typs[3]), anonfield(typs[1])}, []*Node{anonfield(typs[3])})
	typs[73] = functype(nil, []*Node{anonfield(typs[1]), anonfield(typs[66]), anonfield(typs[3])}, []*Node{anonfield(typs[3]), anonfield(typs[6])})
	typs[74] = functype(nil, []*Node{anonfield(typs[1]), anonfield(typs[66]), anonfield(typs[2])}, []*Node{anonfield(typs[3]), anonfield(typs[6])})
	typs[75] = functype(nil, []*Node{anonfield(typs[1]), anonfield(typs[66]), anonfield(typs[3]), anonfield(typs[1])}, []*Node{anonfield(typs[3]), anonfield(typs[6])})
	typs[76] = functype(nil, []*Node{anonfield(typs[1]), anonfield(typs[66]), anonfield(typs[3])}, nil)
	typs[77] = functype(nil, []*Node{anonfield(typs[1]), anonfield(typs[66]), anonfield(typs[2])}, nil)
	typs[78] = functype(nil, []*Node{anonfield(typs[3])}, nil)
	typs[79] = functype(nil, []*Node{anonfield(typs[1]), anonfield(typs[66])}, nil)
	typs[80] = types.NewChan(typs[2], types.Cboth)
	typs[81] = functype(nil, []*Node{anonfield(typs[1]), anonfield(typs[22])}, []*Node{anonfield(typs[80])})
	typs[82] = functype(nil, []*Node{anonfield(typs[1]), anonfield(typs[15])}, []*Node{anonfield(typs[80])})
	typs[83] = types.NewChan(typs[2], types.Crecv)
	typs[84] = functype(nil, []*Node{anonfield(typs[83]), anonfield(typs[3])}, nil)
	typs[85] = functype(nil, []*Node{anonfield(typs[83]), anonfield(typs[3])}, []*Node{anonfield(typs[6])})
	typs[86] = types.NewChan(typs[2], types.Csend)
	typs[87] = functype(nil, []*Node{anonfield(typs[86]), anonfield(typs[3])}, nil)
	typs[88] = types.NewArray(typs[0], 3)
	typs[89] = tostruct([]*Node{namedfield("enabled", typs[6]), namedfield("pad", typs[88]), namedfield("needed", typs[6]), namedfield("cgo", typs[6]), namedfield("alignme", typs[24])})
	typs[90] = functype(nil, []*Node{anonfield(typs[1]), anonfield(typs[3]), anonfield(typs[3])}, nil)
	typs[91] = functype(nil, []*Node{anonfield(typs[1]), anonfield(typs[3])}, nil)
	typs[92] = functype(nil, []*Node{anonfield(typs[1]), anonfield(typs[3]), anonfield(typs[15]), anonfield(typs[3]), anonfield(typs[15])}, []*Node{anonfield(typs[15])})
	typs[93] = functype(nil, []*Node{anonfield(typs[86]), anonfield(typs[3])}, []*Node{anonfield(typs[6])})
	typs[94] = functype(nil, []*Node{anonfield(typs[3]), anonfield(typs[83])}, []*Node{anonfield(typs[6])})
	typs[95] = types.NewPtr(typs[6])
	typs[96] = functype(nil, []*Node{anonfield(typs[3]), anonfield(typs[95]), anonfield(typs[83])}, []*Node{anonfield(typs[6])})
	typs[97] = functype(nil, []*Node{anonfield(typs[62])}, nil)
	typs[98] = functype(nil, []*Node{anonfield(typs[1]), anonfield(typs[1]), anonfield(typs[62]), anonfield(typs[15]), anonfield(typs[15]), anonfield(typs[6])}, []*Node{anonfield(typs[15]), anonfield(typs[6])})
	typs[99] = functype(nil, []*Node{anonfield(typs[1]), anonfield(typs[15]), anonfield(typs[15])}, []*Node{anonfield(typs[7])})
	typs[100] = functype(nil, []*Node{anonfield(typs[1]), anonfield(typs[22]), anonfield(typs[22])}, []*Node{anonfield(typs[7])})
	typs[101] = functype(nil, []*Node{anonfield(typs[1]), anonfield(typs[15]), anonfield(typs[15]), anonfield(typs[7])}, []*Node{anonfield(typs[7])})
	typs[102] = types.NewSlice(typs[2])
	typs[103] = functype(nil, []*Node{anonfield(typs[1]), anonfield(typs[102]), anonfield(typs[15])}, []*Node{anonfield(typs[102])})
	typs[104] = functype(nil, []*Node{anonfield(typs[3]), anonfield(typs[3]), anonfield(typs[5])}, nil)
	typs[105] = functype(nil, []*Node{anonfield(typs[7]), anonfield(typs[5])}, nil)
	typs[106] = functype(nil, []*Node{anonfield(typs[3]), anonfield(typs[3]), anonfield(typs[5])}, []*Node{anonfield(typs[6])})
	typs[107] = functype(nil, []*Node{anonfield(typs[3]), anonfield(typs[3])}, []*Node{anonfield(typs[6])})
	typs[108] = functype(nil, []*Node{anonfield(typs[7]), anonfield(typs[7])}, []*Node{anonfield(typs[6])})
	typs[109] = functype(nil, []*Node{anonfield(typs[7]), anonfield(typs[5]), anonfield(typs[5])}, []*Node{anonfield(typs[5])})
	typs[110] = functype(nil, []*Node{anonfield(typs[7]), anonfield(typs[5])}, []*Node{anonfield(typs[5])})
	typs[111] = functype(nil, []*Node{anonfield(typs[22]), anonfield(typs[22])}, []*Node{anonfield(typs[22])})
	typs[112] = functype(nil, []*Node{anonfield(typs[24]), anonfield(typs[24])}, []*Node{anonfield(typs[24])})
	typs[113] = functype(nil, []*Node{anonfield(typs[20])}, []*Node{anonfield(typs[22])})
	typs[114] = functype(nil, []*Node{anonfield(typs[20])}, []*Node{anonfield(typs[24])})
	typs[115] = functype(nil, []*Node{anonfield(typs[20])}, []*Node{anonfield(typs[64])})
	typs[116] = functype(nil, []*Node{anonfield(typs[22])}, []*Node{anonfield(typs[20])})
	typs[117] = functype(nil, []*Node{anonfield(typs[24])}, []*Node{anonfield(typs[20])})
	typs[118] = functype(nil, []*Node{anonfield(typs[64])}, []*Node{anonfield(typs[20])})
	typs[119] = functype(nil, []*Node{anonfield(typs[26]), anonfield(typs[26])}, []*Node{anonfield(typs[26])})
	typs[120] = functype(nil, []*Node{anonfield(typs[5])}, nil)
	typs[121] = functype(nil, []*Node{anonfield(typs[5]), anonfield(typs[5])}, nil)
	typs[122] = functype(nil, []*Node{anonfield(typs[7]), anonfield(typs[1]), anonfield(typs[5])}, nil)
	typs[123] = types.NewSlice(typs[7])
	typs[124] = functype(nil, []*Node{anonfield(typs[7]), anonfield(typs[123])}, nil)
	typs[125] = types.Types[TUINT8]
	typs[126] = functype(nil, []*Node{anonfield(typs[125]), anonfield(typs[125])}, nil)
	typs[127] = types.Types[TUINT16]
	typs[128] = functype(nil, []*Node{anonfield(typs[127]), anonfield(typs[127])}, nil)
	typs[129] = functype(nil, []*Node{anonfield(typs[64]), anonfield(typs[64])}, nil)
	typs[130] = functype(nil, []*Node{anonfield(typs[24]), anonfield(typs[24])}, nil)
	return typs[:]
}
