...

Source file src/github.com/bytedance/sonic/internal/native/avx/native_subr_amd64.go

Documentation: github.com/bytedance/sonic/internal/native/avx

     1  // +build !noasm !appengine
     2  // Code generated by asm2asm, DO NOT EDIT.
     3  
     4  package avx
     5  
     6  import (
     7  	`github.com/bytedance/sonic/loader`
     8  )
     9  
    10  const (
    11      _entry__f32toa = 31024
    12      _entry__f64toa = 176
    13      _entry__format_significand = 35808
    14      _entry__format_integer = 3424
    15      _entry__fsm_exec = 18816
    16      _entry__advance_string = 15056
    17      _entry__advance_string_default = 37344
    18      _entry__do_skip_number = 21376
    19      _entry__get_by_path = 26416
    20      _entry__skip_one_fast = 22880
    21      _entry__unescape = 38256
    22      _entry__unhex16_is = 9632
    23      _entry__html_escape = 9824
    24      _entry__i64toa = 3856
    25      _entry__u64toa = 4128
    26      _entry__lspace = 16
    27      _entry__quote = 5552
    28      _entry__skip_array = 18768
    29      _entry__skip_number = 22464
    30      _entry__skip_object = 21008
    31      _entry__skip_one = 22640
    32      _entry__unquote = 7296
    33      _entry__validate_one = 22704
    34      _entry__validate_utf8 = 29728
    35      _entry__validate_utf8_fast = 30416
    36      _entry__value = 13104
    37      _entry__vnumber = 16368
    38      _entry__atof_eisel_lemire64 = 11104
    39      _entry__atof_native = 12496
    40      _entry__decimal_to_f64 = 11504
    41      _entry__left_shift = 36288
    42      _entry__right_shift = 36832
    43      _entry__vsigned = 18016
    44      _entry__vstring = 14880
    45      _entry__vunsigned = 18384
    46  )
    47  
    48  const (
    49      _stack__f32toa = 64
    50      _stack__f64toa = 80
    51      _stack__format_significand = 24
    52      _stack__format_integer = 16
    53      _stack__fsm_exec = 160
    54      _stack__advance_string = 72
    55      _stack__advance_string_default = 56
    56      _stack__do_skip_number = 32
    57      _stack__get_by_path = 280
    58      _stack__skip_one_fast = 176
    59      _stack__unescape = 64
    60      _stack__unhex16_is = 8
    61      _stack__html_escape = 64
    62      _stack__i64toa = 16
    63      _stack__u64toa = 8
    64      _stack__lspace = 8
    65      _stack__quote = 80
    66      _stack__skip_array = 168
    67      _stack__skip_number = 88
    68      _stack__skip_object = 168
    69      _stack__skip_one = 168
    70      _stack__unquote = 112
    71      _stack__validate_one = 168
    72      _stack__validate_utf8 = 48
    73      _stack__validate_utf8_fast = 24
    74      _stack__value = 352
    75      _stack__vnumber = 264
    76      _stack__atof_eisel_lemire64 = 40
    77      _stack__atof_native = 144
    78      _stack__decimal_to_f64 = 88
    79      _stack__left_shift = 32
    80      _stack__right_shift = 16
    81      _stack__vsigned = 16
    82      _stack__vstring = 128
    83      _stack__vunsigned = 24
    84  )
    85  
    86  const (
    87      _size__f32toa = 3792
    88      _size__f64toa = 3248
    89      _size__format_significand = 480
    90      _size__format_integer = 432
    91      _size__fsm_exec = 1656
    92      _size__advance_string = 1264
    93      _size__advance_string_default = 912
    94      _size__do_skip_number = 876
    95      _size__get_by_path = 3312
    96      _size__skip_one_fast = 3016
    97      _size__unescape = 704
    98      _size__unhex16_is = 128
    99      _size__html_escape = 1280
   100      _size__i64toa = 272
   101      _size__u64toa = 1376
   102      _size__lspace = 112
   103      _size__quote = 1728
   104      _size__skip_array = 48
   105      _size__skip_number = 160
   106      _size__skip_object = 48
   107      _size__skip_one = 48
   108      _size__unquote = 2336
   109      _size__validate_one = 48
   110      _size__validate_utf8 = 688
   111      _size__validate_utf8_fast = 560
   112      _size__value = 1268
   113      _size__vnumber = 1648
   114      _size__atof_eisel_lemire64 = 400
   115      _size__atof_native = 608
   116      _size__decimal_to_f64 = 992
   117      _size__left_shift = 544
   118      _size__right_shift = 480
   119      _size__vsigned = 368
   120      _size__vstring = 128
   121      _size__vunsigned = 368
   122  )
   123  
   124  var (
   125      _pcsp__f32toa = [][2]uint32{
   126          {1, 0},
   127          {4, 8},
   128          {6, 16},
   129          {8, 24},
   130          {10, 32},
   131          {12, 40},
   132          {13, 48},
   133          {3734, 64},
   134          {3738, 48},
   135          {3739, 40},
   136          {3741, 32},
   137          {3743, 24},
   138          {3745, 16},
   139          {3747, 8},
   140          {3751, 0},
   141          {3781, 64},
   142      }
   143      _pcsp__f64toa = [][2]uint32{
   144          {1, 0},
   145          {4, 8},
   146          {6, 16},
   147          {8, 24},
   148          {10, 32},
   149          {12, 40},
   150          {13, 48},
   151          {3124, 56},
   152          {3128, 48},
   153          {3129, 40},
   154          {3131, 32},
   155          {3133, 24},
   156          {3135, 16},
   157          {3137, 8},
   158          {3141, 0},
   159          {3234, 56},
   160      }
   161      _pcsp__format_significand = [][2]uint32{
   162          {1, 0},
   163          {4, 8},
   164          {6, 16},
   165          {468, 24},
   166          {469, 16},
   167          {471, 8},
   168          {473, 0},
   169      }
   170      _pcsp__format_integer = [][2]uint32{
   171          {1, 0},
   172          {4, 8},
   173          {412, 16},
   174          {413, 8},
   175          {414, 0},
   176          {423, 16},
   177          {424, 8},
   178          {426, 0},
   179      }
   180      _pcsp__fsm_exec = [][2]uint32{
   181          {1, 0},
   182          {4, 8},
   183          {6, 16},
   184          {8, 24},
   185          {10, 32},
   186          {12, 40},
   187          {13, 48},
   188          {1317, 88},
   189          {1321, 48},
   190          {1322, 40},
   191          {1324, 32},
   192          {1326, 24},
   193          {1328, 16},
   194          {1330, 8},
   195          {1331, 0},
   196          {1656, 88},
   197      }
   198      _pcsp__advance_string = [][2]uint32{
   199          {14, 0},
   200          {18, 8},
   201          {20, 16},
   202          {22, 24},
   203          {24, 32},
   204          {26, 40},
   205          {27, 48},
   206          {529, 72},
   207          {533, 48},
   208          {534, 40},
   209          {536, 32},
   210          {538, 24},
   211          {540, 16},
   212          {542, 8},
   213          {543, 0},
   214          {1253, 72},
   215      }
   216      _pcsp__advance_string_default = [][2]uint32{
   217          {1, 0},
   218          {4, 8},
   219          {6, 16},
   220          {8, 24},
   221          {10, 32},
   222          {12, 40},
   223          {13, 48},
   224          {381, 56},
   225          {385, 48},
   226          {386, 40},
   227          {388, 32},
   228          {390, 24},
   229          {392, 16},
   230          {394, 8},
   231          {395, 0},
   232          {911, 56},
   233      }
   234      _pcsp__do_skip_number = [][2]uint32{
   235          {1, 0},
   236          {4, 8},
   237          {6, 16},
   238          {8, 24},
   239          {739, 32},
   240          {740, 24},
   241          {742, 16},
   242          {744, 8},
   243          {745, 0},
   244          {876, 32},
   245      }
   246      _pcsp__get_by_path = [][2]uint32{
   247          {1, 0},
   248          {4, 8},
   249          {6, 16},
   250          {8, 24},
   251          {10, 32},
   252          {12, 40},
   253          {13, 48},
   254          {3262, 104},
   255          {3266, 48},
   256          {3267, 40},
   257          {3269, 32},
   258          {3271, 24},
   259          {3273, 16},
   260          {3275, 8},
   261          {3276, 0},
   262          {3301, 104},
   263      }
   264      _pcsp__skip_one_fast = [][2]uint32{
   265          {1, 0},
   266          {4, 8},
   267          {6, 16},
   268          {8, 24},
   269          {10, 32},
   270          {12, 40},
   271          {13, 48},
   272          {613, 176},
   273          {614, 168},
   274          {616, 160},
   275          {618, 152},
   276          {620, 144},
   277          {622, 136},
   278          {626, 128},
   279          {3016, 176},
   280      }
   281      _pcsp__unescape = [][2]uint32{
   282          {1, 0},
   283          {4, 8},
   284          {6, 16},
   285          {8, 24},
   286          {10, 32},
   287          {12, 40},
   288          {13, 48},
   289          {246, 56},
   290          {250, 48},
   291          {251, 40},
   292          {253, 32},
   293          {255, 24},
   294          {257, 16},
   295          {259, 8},
   296          {260, 0},
   297          {695, 56},
   298      }
   299      _pcsp__unhex16_is = [][2]uint32{
   300          {1, 0},
   301          {35, 8},
   302          {36, 0},
   303          {62, 8},
   304          {63, 0},
   305          {97, 8},
   306          {98, 0},
   307          {121, 8},
   308          {123, 0},
   309      }
   310      _pcsp__html_escape = [][2]uint32{
   311          {1, 0},
   312          {4, 8},
   313          {6, 16},
   314          {8, 24},
   315          {10, 32},
   316          {12, 40},
   317          {13, 48},
   318          {1265, 64},
   319          {1269, 48},
   320          {1270, 40},
   321          {1272, 32},
   322          {1274, 24},
   323          {1276, 16},
   324          {1278, 8},
   325          {1280, 0},
   326      }
   327      _pcsp__i64toa = [][2]uint32{
   328          {1, 0},
   329          {171, 8},
   330          {172, 0},
   331          {207, 8},
   332          {208, 0},
   333          {222, 8},
   334          {223, 0},
   335          {247, 8},
   336          {248, 0},
   337          {253, 8},
   338          {259, 0},
   339      }
   340      _pcsp__u64toa = [][2]uint32{
   341          {13, 0},
   342          {162, 8},
   343          {163, 0},
   344          {175, 8},
   345          {240, 0},
   346          {498, 8},
   347          {499, 0},
   348          {519, 8},
   349          {592, 0},
   350          {850, 8},
   351          {928, 0},
   352          {1374, 8},
   353          {1376, 0},
   354      }
   355      _pcsp__lspace = [][2]uint32{
   356          {1, 0},
   357          {85, 8},
   358          {87, 0},
   359      }
   360      _pcsp__quote = [][2]uint32{
   361          {1, 0},
   362          {4, 8},
   363          {6, 16},
   364          {8, 24},
   365          {10, 32},
   366          {12, 40},
   367          {13, 48},
   368          {1669, 80},
   369          {1673, 48},
   370          {1674, 40},
   371          {1676, 32},
   372          {1678, 24},
   373          {1680, 16},
   374          {1682, 8},
   375          {1683, 0},
   376          {1718, 80},
   377      }
   378      _pcsp__skip_array = [][2]uint32{
   379          {1, 0},
   380          {28, 8},
   381          {34, 0},
   382      }
   383      _pcsp__skip_number = [][2]uint32{
   384          {1, 0},
   385          {4, 8},
   386          {6, 16},
   387          {8, 24},
   388          {10, 32},
   389          {12, 40},
   390          {13, 48},
   391          {107, 56},
   392          {111, 48},
   393          {112, 40},
   394          {114, 32},
   395          {116, 24},
   396          {118, 16},
   397          {120, 8},
   398          {121, 0},
   399          {145, 56},
   400      }
   401      _pcsp__skip_object = [][2]uint32{
   402          {1, 0},
   403          {28, 8},
   404          {34, 0},
   405      }
   406      _pcsp__skip_one = [][2]uint32{
   407          {1, 0},
   408          {28, 8},
   409          {34, 0},
   410      }
   411      _pcsp__unquote = [][2]uint32{
   412          {1, 0},
   413          {4, 8},
   414          {6, 16},
   415          {8, 24},
   416          {10, 32},
   417          {12, 40},
   418          {13, 48},
   419          {1614, 104},
   420          {1618, 48},
   421          {1619, 40},
   422          {1621, 32},
   423          {1623, 24},
   424          {1625, 16},
   425          {1627, 8},
   426          {1628, 0},
   427          {2329, 104},
   428      }
   429      _pcsp__validate_one = [][2]uint32{
   430          {1, 0},
   431          {33, 8},
   432          {39, 0},
   433      }
   434      _pcsp__validate_utf8 = [][2]uint32{
   435          {1, 0},
   436          {4, 8},
   437          {6, 16},
   438          {8, 24},
   439          {10, 32},
   440          {11, 40},
   441          {639, 48},
   442          {643, 40},
   443          {644, 32},
   444          {646, 24},
   445          {648, 16},
   446          {650, 8},
   447          {651, 0},
   448          {682, 48},
   449      }
   450      _pcsp__validate_utf8_fast = [][2]uint32{
   451          {1, 0},
   452          {4, 8},
   453          {5, 16},
   454          {247, 24},
   455          {251, 16},
   456          {252, 8},
   457          {253, 0},
   458          {527, 24},
   459          {531, 16},
   460          {532, 8},
   461          {534, 0},
   462      }
   463      _pcsp__value = [][2]uint32{
   464          {1, 0},
   465          {4, 8},
   466          {6, 16},
   467          {8, 24},
   468          {10, 32},
   469          {12, 40},
   470          {13, 48},
   471          {439, 88},
   472          {443, 48},
   473          {444, 40},
   474          {446, 32},
   475          {448, 24},
   476          {450, 16},
   477          {452, 8},
   478          {453, 0},
   479          {1268, 88},
   480      }
   481      _pcsp__vnumber = [][2]uint32{
   482          {1, 0},
   483          {4, 8},
   484          {6, 16},
   485          {8, 24},
   486          {10, 32},
   487          {12, 40},
   488          {13, 48},
   489          {150, 120},
   490          {154, 48},
   491          {155, 40},
   492          {157, 32},
   493          {159, 24},
   494          {161, 16},
   495          {163, 8},
   496          {164, 0},
   497          {1638, 120},
   498      }
   499      _pcsp__atof_eisel_lemire64 = [][2]uint32{
   500          {1, 0},
   501          {4, 8},
   502          {6, 16},
   503          {8, 24},
   504          {10, 32},
   505          {315, 40},
   506          {316, 32},
   507          {318, 24},
   508          {320, 16},
   509          {322, 8},
   510          {323, 0},
   511          {387, 40},
   512      }
   513      _pcsp__atof_native = [][2]uint32{
   514          {1, 0},
   515          {4, 8},
   516          {596, 56},
   517          {600, 8},
   518          {602, 0},
   519      }
   520      _pcsp__decimal_to_f64 = [][2]uint32{
   521          {1, 0},
   522          {4, 8},
   523          {6, 16},
   524          {8, 24},
   525          {10, 32},
   526          {12, 40},
   527          {13, 48},
   528          {951, 56},
   529          {955, 48},
   530          {956, 40},
   531          {958, 32},
   532          {960, 24},
   533          {962, 16},
   534          {964, 8},
   535          {965, 0},
   536          {977, 56},
   537      }
   538      _pcsp__left_shift = [][2]uint32{
   539          {1, 0},
   540          {4, 8},
   541          {6, 16},
   542          {8, 24},
   543          {418, 32},
   544          {419, 24},
   545          {421, 16},
   546          {423, 8},
   547          {424, 0},
   548          {539, 32},
   549      }
   550      _pcsp__right_shift = [][2]uint32{
   551          {1, 0},
   552          {4, 8},
   553          {452, 16},
   554          {453, 8},
   555          {454, 0},
   556          {462, 16},
   557          {463, 8},
   558          {464, 0},
   559          {472, 16},
   560          {473, 8},
   561          {475, 0},
   562      }
   563      _pcsp__vsigned = [][2]uint32{
   564          {1, 0},
   565          {4, 8},
   566          {113, 16},
   567          {114, 8},
   568          {115, 0},
   569          {126, 16},
   570          {127, 8},
   571          {128, 0},
   572          {278, 16},
   573          {279, 8},
   574          {280, 0},
   575          {284, 16},
   576          {285, 8},
   577          {286, 0},
   578          {340, 16},
   579          {341, 8},
   580          {342, 0},
   581          {353, 16},
   582          {354, 8},
   583          {356, 0},
   584      }
   585      _pcsp__vstring = [][2]uint32{
   586          {1, 0},
   587          {4, 8},
   588          {6, 16},
   589          {8, 24},
   590          {10, 32},
   591          {11, 40},
   592          {105, 56},
   593          {109, 40},
   594          {110, 32},
   595          {112, 24},
   596          {114, 16},
   597          {116, 8},
   598          {118, 0},
   599      }
   600      _pcsp__vunsigned = [][2]uint32{
   601          {1, 0},
   602          {4, 8},
   603          {6, 16},
   604          {74, 24},
   605          {75, 16},
   606          {77, 8},
   607          {78, 0},
   608          {89, 24},
   609          {90, 16},
   610          {92, 8},
   611          {93, 0},
   612          {116, 24},
   613          {117, 16},
   614          {119, 8},
   615          {120, 0},
   616          {281, 24},
   617          {282, 16},
   618          {284, 8},
   619          {285, 0},
   620          {336, 24},
   621          {337, 16},
   622          {339, 8},
   623          {340, 0},
   624          {348, 24},
   625          {349, 16},
   626          {351, 8},
   627          {353, 0},
   628      }
   629  )
   630  
   631  var Funcs = []loader.CFunc{
   632      {"__native_entry__", 0, 67, 0, nil},
   633      {"_f32toa", _entry__f32toa, _size__f32toa, _stack__f32toa, _pcsp__f32toa},
   634      {"_f64toa", _entry__f64toa, _size__f64toa, _stack__f64toa, _pcsp__f64toa},
   635      {"_format_significand", _entry__format_significand, _size__format_significand, _stack__format_significand, _pcsp__format_significand},
   636      {"_format_integer", _entry__format_integer, _size__format_integer, _stack__format_integer, _pcsp__format_integer},
   637      {"_fsm_exec", _entry__fsm_exec, _size__fsm_exec, _stack__fsm_exec, _pcsp__fsm_exec},
   638      {"_advance_string", _entry__advance_string, _size__advance_string, _stack__advance_string, _pcsp__advance_string},
   639      {"_advance_string_default", _entry__advance_string_default, _size__advance_string_default, _stack__advance_string_default, _pcsp__advance_string_default},
   640      {"_do_skip_number", _entry__do_skip_number, _size__do_skip_number, _stack__do_skip_number, _pcsp__do_skip_number},
   641      {"_get_by_path", _entry__get_by_path, _size__get_by_path, _stack__get_by_path, _pcsp__get_by_path},
   642      {"_skip_one_fast", _entry__skip_one_fast, _size__skip_one_fast, _stack__skip_one_fast, _pcsp__skip_one_fast},
   643      {"_unescape", _entry__unescape, _size__unescape, _stack__unescape, _pcsp__unescape},
   644      {"_unhex16_is", _entry__unhex16_is, _size__unhex16_is, _stack__unhex16_is, _pcsp__unhex16_is},
   645      {"_html_escape", _entry__html_escape, _size__html_escape, _stack__html_escape, _pcsp__html_escape},
   646      {"_i64toa", _entry__i64toa, _size__i64toa, _stack__i64toa, _pcsp__i64toa},
   647      {"_u64toa", _entry__u64toa, _size__u64toa, _stack__u64toa, _pcsp__u64toa},
   648      {"_lspace", _entry__lspace, _size__lspace, _stack__lspace, _pcsp__lspace},
   649      {"_quote", _entry__quote, _size__quote, _stack__quote, _pcsp__quote},
   650      {"_skip_array", _entry__skip_array, _size__skip_array, _stack__skip_array, _pcsp__skip_array},
   651      {"_skip_number", _entry__skip_number, _size__skip_number, _stack__skip_number, _pcsp__skip_number},
   652      {"_skip_object", _entry__skip_object, _size__skip_object, _stack__skip_object, _pcsp__skip_object},
   653      {"_skip_one", _entry__skip_one, _size__skip_one, _stack__skip_one, _pcsp__skip_one},
   654      {"_unquote", _entry__unquote, _size__unquote, _stack__unquote, _pcsp__unquote},
   655      {"_validate_one", _entry__validate_one, _size__validate_one, _stack__validate_one, _pcsp__validate_one},
   656      {"_validate_utf8", _entry__validate_utf8, _size__validate_utf8, _stack__validate_utf8, _pcsp__validate_utf8},
   657      {"_validate_utf8_fast", _entry__validate_utf8_fast, _size__validate_utf8_fast, _stack__validate_utf8_fast, _pcsp__validate_utf8_fast},
   658      {"_value", _entry__value, _size__value, _stack__value, _pcsp__value},
   659      {"_vnumber", _entry__vnumber, _size__vnumber, _stack__vnumber, _pcsp__vnumber},
   660      {"_atof_eisel_lemire64", _entry__atof_eisel_lemire64, _size__atof_eisel_lemire64, _stack__atof_eisel_lemire64, _pcsp__atof_eisel_lemire64},
   661      {"_atof_native", _entry__atof_native, _size__atof_native, _stack__atof_native, _pcsp__atof_native},
   662      {"_decimal_to_f64", _entry__decimal_to_f64, _size__decimal_to_f64, _stack__decimal_to_f64, _pcsp__decimal_to_f64},
   663      {"_left_shift", _entry__left_shift, _size__left_shift, _stack__left_shift, _pcsp__left_shift},
   664      {"_right_shift", _entry__right_shift, _size__right_shift, _stack__right_shift, _pcsp__right_shift},
   665      {"_vsigned", _entry__vsigned, _size__vsigned, _stack__vsigned, _pcsp__vsigned},
   666      {"_vstring", _entry__vstring, _size__vstring, _stack__vstring, _pcsp__vstring},
   667      {"_vunsigned", _entry__vunsigned, _size__vunsigned, _stack__vunsigned, _pcsp__vunsigned},
   668  }
   669  

View as plain text