github.com/corona10/go@v0.0.0-20180224231303-7a218942be57/src/cmd/compile/internal/gc/builtin.go (about)

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