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 }