...

Source file src/pkg/cmd/compile/internal/gc/builtin.go

     1	// Code generated by mkbuiltin.go. DO NOT EDIT.
     2	
     3	package gc
     4	
     5	import "cmd/compile/internal/types"
     6	
     7	var runtimeDecls = [...]struct {
     8		name string
     9		tag  int
    10		typ  int
    11	}{
    12		{"newobject", funcTag, 4},
    13		{"panicdivide", funcTag, 5},
    14		{"panicshift", funcTag, 5},
    15		{"panicmakeslicelen", funcTag, 5},
    16		{"throwinit", funcTag, 5},
    17		{"panicwrap", funcTag, 5},
    18		{"gopanic", funcTag, 7},
    19		{"gorecover", funcTag, 10},
    20		{"goschedguarded", funcTag, 5},
    21		{"goPanicIndex", funcTag, 12},
    22		{"goPanicIndexU", funcTag, 14},
    23		{"goPanicSliceAlen", funcTag, 12},
    24		{"goPanicSliceAlenU", funcTag, 14},
    25		{"goPanicSliceAcap", funcTag, 12},
    26		{"goPanicSliceAcapU", funcTag, 14},
    27		{"goPanicSliceB", funcTag, 12},
    28		{"goPanicSliceBU", funcTag, 14},
    29		{"goPanicSlice3Alen", funcTag, 12},
    30		{"goPanicSlice3AlenU", funcTag, 14},
    31		{"goPanicSlice3Acap", funcTag, 12},
    32		{"goPanicSlice3AcapU", funcTag, 14},
    33		{"goPanicSlice3B", funcTag, 12},
    34		{"goPanicSlice3BU", funcTag, 14},
    35		{"goPanicSlice3C", funcTag, 12},
    36		{"goPanicSlice3CU", funcTag, 14},
    37		{"printbool", funcTag, 16},
    38		{"printfloat", funcTag, 18},
    39		{"printint", funcTag, 20},
    40		{"printhex", funcTag, 22},
    41		{"printuint", funcTag, 22},
    42		{"printcomplex", funcTag, 24},
    43		{"printstring", funcTag, 26},
    44		{"printpointer", funcTag, 27},
    45		{"printiface", funcTag, 27},
    46		{"printeface", funcTag, 27},
    47		{"printslice", funcTag, 27},
    48		{"printnl", funcTag, 5},
    49		{"printsp", funcTag, 5},
    50		{"printlock", funcTag, 5},
    51		{"printunlock", funcTag, 5},
    52		{"concatstring2", funcTag, 30},
    53		{"concatstring3", funcTag, 31},
    54		{"concatstring4", funcTag, 32},
    55		{"concatstring5", funcTag, 33},
    56		{"concatstrings", funcTag, 35},
    57		{"cmpstring", funcTag, 36},
    58		{"intstring", funcTag, 39},
    59		{"slicebytetostring", funcTag, 41},
    60		{"slicebytetostringtmp", funcTag, 42},
    61		{"slicerunetostring", funcTag, 45},
    62		{"stringtoslicebyte", funcTag, 46},
    63		{"stringtoslicerune", funcTag, 49},
    64		{"slicecopy", funcTag, 51},
    65		{"slicestringcopy", funcTag, 52},
    66		{"decoderune", funcTag, 53},
    67		{"countrunes", funcTag, 54},
    68		{"convI2I", funcTag, 55},
    69		{"convT16", funcTag, 57},
    70		{"convT32", funcTag, 57},
    71		{"convT64", funcTag, 57},
    72		{"convTstring", funcTag, 57},
    73		{"convTslice", funcTag, 57},
    74		{"convT2E", funcTag, 58},
    75		{"convT2Enoptr", funcTag, 58},
    76		{"convT2I", funcTag, 58},
    77		{"convT2Inoptr", funcTag, 58},
    78		{"assertE2I", funcTag, 55},
    79		{"assertE2I2", funcTag, 59},
    80		{"assertI2I", funcTag, 55},
    81		{"assertI2I2", funcTag, 59},
    82		{"panicdottypeE", funcTag, 60},
    83		{"panicdottypeI", funcTag, 60},
    84		{"panicnildottype", funcTag, 61},
    85		{"ifaceeq", funcTag, 63},
    86		{"efaceeq", funcTag, 63},
    87		{"fastrand", funcTag, 65},
    88		{"makemap64", funcTag, 67},
    89		{"makemap", funcTag, 68},
    90		{"makemap_small", funcTag, 69},
    91		{"mapaccess1", funcTag, 70},
    92		{"mapaccess1_fast32", funcTag, 71},
    93		{"mapaccess1_fast64", funcTag, 71},
    94		{"mapaccess1_faststr", funcTag, 71},
    95		{"mapaccess1_fat", funcTag, 72},
    96		{"mapaccess2", funcTag, 73},
    97		{"mapaccess2_fast32", funcTag, 74},
    98		{"mapaccess2_fast64", funcTag, 74},
    99		{"mapaccess2_faststr", funcTag, 74},
   100		{"mapaccess2_fat", funcTag, 75},
   101		{"mapassign", funcTag, 70},
   102		{"mapassign_fast32", funcTag, 71},
   103		{"mapassign_fast32ptr", funcTag, 71},
   104		{"mapassign_fast64", funcTag, 71},
   105		{"mapassign_fast64ptr", funcTag, 71},
   106		{"mapassign_faststr", funcTag, 71},
   107		{"mapiterinit", funcTag, 76},
   108		{"mapdelete", funcTag, 76},
   109		{"mapdelete_fast32", funcTag, 77},
   110		{"mapdelete_fast64", funcTag, 77},
   111		{"mapdelete_faststr", funcTag, 77},
   112		{"mapiternext", funcTag, 78},
   113		{"mapclear", funcTag, 79},
   114		{"makechan64", funcTag, 81},
   115		{"makechan", funcTag, 82},
   116		{"chanrecv1", funcTag, 84},
   117		{"chanrecv2", funcTag, 85},
   118		{"chansend1", funcTag, 87},
   119		{"closechan", funcTag, 27},
   120		{"writeBarrier", varTag, 89},
   121		{"typedmemmove", funcTag, 90},
   122		{"typedmemclr", funcTag, 91},
   123		{"typedslicecopy", funcTag, 92},
   124		{"selectnbsend", funcTag, 93},
   125		{"selectnbrecv", funcTag, 94},
   126		{"selectnbrecv2", funcTag, 96},
   127		{"selectsetpc", funcTag, 61},
   128		{"selectgo", funcTag, 97},
   129		{"block", funcTag, 5},
   130		{"makeslice", funcTag, 98},
   131		{"makeslice64", funcTag, 99},
   132		{"growslice", funcTag, 101},
   133		{"memmove", funcTag, 102},
   134		{"memclrNoHeapPointers", funcTag, 103},
   135		{"memclrHasPointers", funcTag, 103},
   136		{"memequal", funcTag, 104},
   137		{"memequal8", funcTag, 105},
   138		{"memequal16", funcTag, 105},
   139		{"memequal32", funcTag, 105},
   140		{"memequal64", funcTag, 105},
   141		{"memequal128", funcTag, 105},
   142		{"int64div", funcTag, 106},
   143		{"uint64div", funcTag, 107},
   144		{"int64mod", funcTag, 106},
   145		{"uint64mod", funcTag, 107},
   146		{"float64toint64", funcTag, 108},
   147		{"float64touint64", funcTag, 109},
   148		{"float64touint32", funcTag, 110},
   149		{"int64tofloat64", funcTag, 111},
   150		{"uint64tofloat64", funcTag, 112},
   151		{"uint32tofloat64", funcTag, 113},
   152		{"complex128div", funcTag, 114},
   153		{"racefuncenter", funcTag, 115},
   154		{"racefuncenterfp", funcTag, 5},
   155		{"racefuncexit", funcTag, 5},
   156		{"raceread", funcTag, 115},
   157		{"racewrite", funcTag, 115},
   158		{"racereadrange", funcTag, 116},
   159		{"racewriterange", funcTag, 116},
   160		{"msanread", funcTag, 116},
   161		{"msanwrite", funcTag, 116},
   162		{"x86HasPOPCNT", varTag, 15},
   163		{"x86HasSSE41", varTag, 15},
   164		{"arm64HasATOMICS", varTag, 15},
   165	}
   166	
   167	func runtimeTypes() []*types.Type {
   168		var typs [117]*types.Type
   169		typs[0] = types.Bytetype
   170		typs[1] = types.NewPtr(typs[0])
   171		typs[2] = types.Types[TANY]
   172		typs[3] = types.NewPtr(typs[2])
   173		typs[4] = functype(nil, []*Node{anonfield(typs[1])}, []*Node{anonfield(typs[3])})
   174		typs[5] = functype(nil, nil, nil)
   175		typs[6] = types.Types[TINTER]
   176		typs[7] = functype(nil, []*Node{anonfield(typs[6])}, nil)
   177		typs[8] = types.Types[TINT32]
   178		typs[9] = types.NewPtr(typs[8])
   179		typs[10] = functype(nil, []*Node{anonfield(typs[9])}, []*Node{anonfield(typs[6])})
   180		typs[11] = types.Types[TINT]
   181		typs[12] = functype(nil, []*Node{anonfield(typs[11]), anonfield(typs[11])}, nil)
   182		typs[13] = types.Types[TUINT]
   183		typs[14] = functype(nil, []*Node{anonfield(typs[13]), anonfield(typs[11])}, nil)
   184		typs[15] = types.Types[TBOOL]
   185		typs[16] = functype(nil, []*Node{anonfield(typs[15])}, nil)
   186		typs[17] = types.Types[TFLOAT64]
   187		typs[18] = functype(nil, []*Node{anonfield(typs[17])}, nil)
   188		typs[19] = types.Types[TINT64]
   189		typs[20] = functype(nil, []*Node{anonfield(typs[19])}, nil)
   190		typs[21] = types.Types[TUINT64]
   191		typs[22] = functype(nil, []*Node{anonfield(typs[21])}, nil)
   192		typs[23] = types.Types[TCOMPLEX128]
   193		typs[24] = functype(nil, []*Node{anonfield(typs[23])}, nil)
   194		typs[25] = types.Types[TSTRING]
   195		typs[26] = functype(nil, []*Node{anonfield(typs[25])}, nil)
   196		typs[27] = functype(nil, []*Node{anonfield(typs[2])}, nil)
   197		typs[28] = types.NewArray(typs[0], 32)
   198		typs[29] = types.NewPtr(typs[28])
   199		typs[30] = functype(nil, []*Node{anonfield(typs[29]), anonfield(typs[25]), anonfield(typs[25])}, []*Node{anonfield(typs[25])})
   200		typs[31] = functype(nil, []*Node{anonfield(typs[29]), anonfield(typs[25]), anonfield(typs[25]), anonfield(typs[25])}, []*Node{anonfield(typs[25])})
   201		typs[32] = functype(nil, []*Node{anonfield(typs[29]), anonfield(typs[25]), anonfield(typs[25]), anonfield(typs[25]), anonfield(typs[25])}, []*Node{anonfield(typs[25])})
   202		typs[33] = functype(nil, []*Node{anonfield(typs[29]), anonfield(typs[25]), anonfield(typs[25]), anonfield(typs[25]), anonfield(typs[25]), anonfield(typs[25])}, []*Node{anonfield(typs[25])})
   203		typs[34] = types.NewSlice(typs[25])
   204		typs[35] = functype(nil, []*Node{anonfield(typs[29]), anonfield(typs[34])}, []*Node{anonfield(typs[25])})
   205		typs[36] = functype(nil, []*Node{anonfield(typs[25]), anonfield(typs[25])}, []*Node{anonfield(typs[11])})
   206		typs[37] = types.NewArray(typs[0], 4)
   207		typs[38] = types.NewPtr(typs[37])
   208		typs[39] = functype(nil, []*Node{anonfield(typs[38]), anonfield(typs[19])}, []*Node{anonfield(typs[25])})
   209		typs[40] = types.NewSlice(typs[0])
   210		typs[41] = functype(nil, []*Node{anonfield(typs[29]), anonfield(typs[40])}, []*Node{anonfield(typs[25])})
   211		typs[42] = functype(nil, []*Node{anonfield(typs[40])}, []*Node{anonfield(typs[25])})
   212		typs[43] = types.Runetype
   213		typs[44] = types.NewSlice(typs[43])
   214		typs[45] = functype(nil, []*Node{anonfield(typs[29]), anonfield(typs[44])}, []*Node{anonfield(typs[25])})
   215		typs[46] = functype(nil, []*Node{anonfield(typs[29]), anonfield(typs[25])}, []*Node{anonfield(typs[40])})
   216		typs[47] = types.NewArray(typs[43], 32)
   217		typs[48] = types.NewPtr(typs[47])
   218		typs[49] = functype(nil, []*Node{anonfield(typs[48]), anonfield(typs[25])}, []*Node{anonfield(typs[44])})
   219		typs[50] = types.Types[TUINTPTR]
   220		typs[51] = functype(nil, []*Node{anonfield(typs[2]), anonfield(typs[2]), anonfield(typs[50])}, []*Node{anonfield(typs[11])})
   221		typs[52] = functype(nil, []*Node{anonfield(typs[2]), anonfield(typs[2])}, []*Node{anonfield(typs[11])})
   222		typs[53] = functype(nil, []*Node{anonfield(typs[25]), anonfield(typs[11])}, []*Node{anonfield(typs[43]), anonfield(typs[11])})
   223		typs[54] = functype(nil, []*Node{anonfield(typs[25])}, []*Node{anonfield(typs[11])})
   224		typs[55] = functype(nil, []*Node{anonfield(typs[1]), anonfield(typs[2])}, []*Node{anonfield(typs[2])})
   225		typs[56] = types.Types[TUNSAFEPTR]
   226		typs[57] = functype(nil, []*Node{anonfield(typs[2])}, []*Node{anonfield(typs[56])})
   227		typs[58] = functype(nil, []*Node{anonfield(typs[1]), anonfield(typs[3])}, []*Node{anonfield(typs[2])})
   228		typs[59] = functype(nil, []*Node{anonfield(typs[1]), anonfield(typs[2])}, []*Node{anonfield(typs[2]), anonfield(typs[15])})
   229		typs[60] = functype(nil, []*Node{anonfield(typs[1]), anonfield(typs[1]), anonfield(typs[1])}, nil)
   230		typs[61] = functype(nil, []*Node{anonfield(typs[1])}, nil)
   231		typs[62] = types.NewPtr(typs[50])
   232		typs[63] = functype(nil, []*Node{anonfield(typs[62]), anonfield(typs[56]), anonfield(typs[56])}, []*Node{anonfield(typs[15])})
   233		typs[64] = types.Types[TUINT32]
   234		typs[65] = functype(nil, nil, []*Node{anonfield(typs[64])})
   235		typs[66] = types.NewMap(typs[2], typs[2])
   236		typs[67] = functype(nil, []*Node{anonfield(typs[1]), anonfield(typs[19]), anonfield(typs[3])}, []*Node{anonfield(typs[66])})
   237		typs[68] = functype(nil, []*Node{anonfield(typs[1]), anonfield(typs[11]), anonfield(typs[3])}, []*Node{anonfield(typs[66])})
   238		typs[69] = functype(nil, nil, []*Node{anonfield(typs[66])})
   239		typs[70] = functype(nil, []*Node{anonfield(typs[1]), anonfield(typs[66]), anonfield(typs[3])}, []*Node{anonfield(typs[3])})
   240		typs[71] = functype(nil, []*Node{anonfield(typs[1]), anonfield(typs[66]), anonfield(typs[2])}, []*Node{anonfield(typs[3])})
   241		typs[72] = functype(nil, []*Node{anonfield(typs[1]), anonfield(typs[66]), anonfield(typs[3]), anonfield(typs[1])}, []*Node{anonfield(typs[3])})
   242		typs[73] = functype(nil, []*Node{anonfield(typs[1]), anonfield(typs[66]), anonfield(typs[3])}, []*Node{anonfield(typs[3]), anonfield(typs[15])})
   243		typs[74] = functype(nil, []*Node{anonfield(typs[1]), anonfield(typs[66]), anonfield(typs[2])}, []*Node{anonfield(typs[3]), anonfield(typs[15])})
   244		typs[75] = functype(nil, []*Node{anonfield(typs[1]), anonfield(typs[66]), anonfield(typs[3]), anonfield(typs[1])}, []*Node{anonfield(typs[3]), anonfield(typs[15])})
   245		typs[76] = functype(nil, []*Node{anonfield(typs[1]), anonfield(typs[66]), anonfield(typs[3])}, nil)
   246		typs[77] = functype(nil, []*Node{anonfield(typs[1]), anonfield(typs[66]), anonfield(typs[2])}, nil)
   247		typs[78] = functype(nil, []*Node{anonfield(typs[3])}, nil)
   248		typs[79] = functype(nil, []*Node{anonfield(typs[1]), anonfield(typs[66])}, nil)
   249		typs[80] = types.NewChan(typs[2], types.Cboth)
   250		typs[81] = functype(nil, []*Node{anonfield(typs[1]), anonfield(typs[19])}, []*Node{anonfield(typs[80])})
   251		typs[82] = functype(nil, []*Node{anonfield(typs[1]), anonfield(typs[11])}, []*Node{anonfield(typs[80])})
   252		typs[83] = types.NewChan(typs[2], types.Crecv)
   253		typs[84] = functype(nil, []*Node{anonfield(typs[83]), anonfield(typs[3])}, nil)
   254		typs[85] = functype(nil, []*Node{anonfield(typs[83]), anonfield(typs[3])}, []*Node{anonfield(typs[15])})
   255		typs[86] = types.NewChan(typs[2], types.Csend)
   256		typs[87] = functype(nil, []*Node{anonfield(typs[86]), anonfield(typs[3])}, nil)
   257		typs[88] = types.NewArray(typs[0], 3)
   258		typs[89] = tostruct([]*Node{namedfield("enabled", typs[15]), namedfield("pad", typs[88]), namedfield("needed", typs[15]), namedfield("cgo", typs[15]), namedfield("alignme", typs[21])})
   259		typs[90] = functype(nil, []*Node{anonfield(typs[1]), anonfield(typs[3]), anonfield(typs[3])}, nil)
   260		typs[91] = functype(nil, []*Node{anonfield(typs[1]), anonfield(typs[3])}, nil)
   261		typs[92] = functype(nil, []*Node{anonfield(typs[1]), anonfield(typs[2]), anonfield(typs[2])}, []*Node{anonfield(typs[11])})
   262		typs[93] = functype(nil, []*Node{anonfield(typs[86]), anonfield(typs[3])}, []*Node{anonfield(typs[15])})
   263		typs[94] = functype(nil, []*Node{anonfield(typs[3]), anonfield(typs[83])}, []*Node{anonfield(typs[15])})
   264		typs[95] = types.NewPtr(typs[15])
   265		typs[96] = functype(nil, []*Node{anonfield(typs[3]), anonfield(typs[95]), anonfield(typs[83])}, []*Node{anonfield(typs[15])})
   266		typs[97] = functype(nil, []*Node{anonfield(typs[1]), anonfield(typs[1]), anonfield(typs[11])}, []*Node{anonfield(typs[11]), anonfield(typs[15])})
   267		typs[98] = functype(nil, []*Node{anonfield(typs[1]), anonfield(typs[11]), anonfield(typs[11])}, []*Node{anonfield(typs[56])})
   268		typs[99] = functype(nil, []*Node{anonfield(typs[1]), anonfield(typs[19]), anonfield(typs[19])}, []*Node{anonfield(typs[56])})
   269		typs[100] = types.NewSlice(typs[2])
   270		typs[101] = functype(nil, []*Node{anonfield(typs[1]), anonfield(typs[100]), anonfield(typs[11])}, []*Node{anonfield(typs[100])})
   271		typs[102] = functype(nil, []*Node{anonfield(typs[3]), anonfield(typs[3]), anonfield(typs[50])}, nil)
   272		typs[103] = functype(nil, []*Node{anonfield(typs[56]), anonfield(typs[50])}, nil)
   273		typs[104] = functype(nil, []*Node{anonfield(typs[3]), anonfield(typs[3]), anonfield(typs[50])}, []*Node{anonfield(typs[15])})
   274		typs[105] = functype(nil, []*Node{anonfield(typs[3]), anonfield(typs[3])}, []*Node{anonfield(typs[15])})
   275		typs[106] = functype(nil, []*Node{anonfield(typs[19]), anonfield(typs[19])}, []*Node{anonfield(typs[19])})
   276		typs[107] = functype(nil, []*Node{anonfield(typs[21]), anonfield(typs[21])}, []*Node{anonfield(typs[21])})
   277		typs[108] = functype(nil, []*Node{anonfield(typs[17])}, []*Node{anonfield(typs[19])})
   278		typs[109] = functype(nil, []*Node{anonfield(typs[17])}, []*Node{anonfield(typs[21])})
   279		typs[110] = functype(nil, []*Node{anonfield(typs[17])}, []*Node{anonfield(typs[64])})
   280		typs[111] = functype(nil, []*Node{anonfield(typs[19])}, []*Node{anonfield(typs[17])})
   281		typs[112] = functype(nil, []*Node{anonfield(typs[21])}, []*Node{anonfield(typs[17])})
   282		typs[113] = functype(nil, []*Node{anonfield(typs[64])}, []*Node{anonfield(typs[17])})
   283		typs[114] = functype(nil, []*Node{anonfield(typs[23]), anonfield(typs[23])}, []*Node{anonfield(typs[23])})
   284		typs[115] = functype(nil, []*Node{anonfield(typs[50])}, nil)
   285		typs[116] = functype(nil, []*Node{anonfield(typs[50]), anonfield(typs[50])}, nil)
   286		return typs[:]
   287	}
   288	

View as plain text