Source file src/cmd/compile/internal/ssacompile/opGen.go

     1  // Code generated from _gen/*Ops.go using 'go generate'; DO NOT EDIT.
     2  
     3  package ssacompile
     4  
     5  import (
     6  	"cmd/compile/internal/ssa/ssabase"
     7  	"cmd/compile/internal/ssa/ssaop"
     8  	"cmd/internal/obj/arm"
     9  	"cmd/internal/obj/arm64"
    10  	"cmd/internal/obj/loong64"
    11  	"cmd/internal/obj/mips"
    12  	"cmd/internal/obj/ppc64"
    13  	"cmd/internal/obj/riscv"
    14  	"cmd/internal/obj/s390x"
    15  	"cmd/internal/obj/wasm"
    16  	"cmd/internal/obj/x86"
    17  )
    18  
    19  var registers386 = [...]ssabase.Register{
    20  	{Num: 0, ObjNum: x86.REG_AX, Name: "AX"},
    21  	{Num: 1, ObjNum: x86.REG_CX, Name: "CX"},
    22  	{Num: 2, ObjNum: x86.REG_DX, Name: "DX"},
    23  	{Num: 3, ObjNum: x86.REG_BX, Name: "BX"},
    24  	{Num: 4, ObjNum: x86.REGSP, Name: "SP"},
    25  	{Num: 5, ObjNum: x86.REG_BP, Name: "BP"},
    26  	{Num: 6, ObjNum: x86.REG_SI, Name: "SI"},
    27  	{Num: 7, ObjNum: x86.REG_DI, Name: "DI"},
    28  	{Num: 8, ObjNum: x86.REG_X0, Name: "X0"},
    29  	{Num: 9, ObjNum: x86.REG_X1, Name: "X1"},
    30  	{Num: 10, ObjNum: x86.REG_X2, Name: "X2"},
    31  	{Num: 11, ObjNum: x86.REG_X3, Name: "X3"},
    32  	{Num: 12, ObjNum: x86.REG_X4, Name: "X4"},
    33  	{Num: 13, ObjNum: x86.REG_X5, Name: "X5"},
    34  	{Num: 14, ObjNum: x86.REG_X6, Name: "X6"},
    35  	{Num: 15, ObjNum: x86.REG_X7, Name: "X7"},
    36  	{Num: 16, ObjNum: 0, Name: "SB"},
    37  }
    38  var paramIntReg386 = []int8(nil)
    39  var paramFloatReg386 = []int8(nil)
    40  var gpRegMask386 = ssaop.RegMask{V1: 239, V2: 0}
    41  var fpRegMask386 = ssaop.RegMask{V1: 65280, V2: 0}
    42  var specialRegMask386 = ssaop.RegMask{V1: 0, V2: 0}
    43  var framepointerReg386 = int8(5)
    44  var linkReg386 = int8(-1)
    45  var registersAMD64 = [...]ssabase.Register{
    46  	{Num: 0, ObjNum: x86.REG_AX, Name: "AX"},
    47  	{Num: 1, ObjNum: x86.REG_CX, Name: "CX"},
    48  	{Num: 2, ObjNum: x86.REG_DX, Name: "DX"},
    49  	{Num: 3, ObjNum: x86.REG_BX, Name: "BX"},
    50  	{Num: 4, ObjNum: x86.REGSP, Name: "SP"},
    51  	{Num: 5, ObjNum: x86.REG_BP, Name: "BP"},
    52  	{Num: 6, ObjNum: x86.REG_SI, Name: "SI"},
    53  	{Num: 7, ObjNum: x86.REG_DI, Name: "DI"},
    54  	{Num: 8, ObjNum: x86.REG_R8, Name: "R8"},
    55  	{Num: 9, ObjNum: x86.REG_R9, Name: "R9"},
    56  	{Num: 10, ObjNum: x86.REG_R10, Name: "R10"},
    57  	{Num: 11, ObjNum: x86.REG_R11, Name: "R11"},
    58  	{Num: 12, ObjNum: x86.REG_R12, Name: "R12"},
    59  	{Num: 13, ObjNum: x86.REG_R13, Name: "R13"},
    60  	{Num: 14, ObjNum: x86.REGG, Name: "g"},
    61  	{Num: 15, ObjNum: x86.REG_R15, Name: "R15"},
    62  	{Num: 16, ObjNum: x86.REG_X0, Name: "X0"},
    63  	{Num: 17, ObjNum: x86.REG_X1, Name: "X1"},
    64  	{Num: 18, ObjNum: x86.REG_X2, Name: "X2"},
    65  	{Num: 19, ObjNum: x86.REG_X3, Name: "X3"},
    66  	{Num: 20, ObjNum: x86.REG_X4, Name: "X4"},
    67  	{Num: 21, ObjNum: x86.REG_X5, Name: "X5"},
    68  	{Num: 22, ObjNum: x86.REG_X6, Name: "X6"},
    69  	{Num: 23, ObjNum: x86.REG_X7, Name: "X7"},
    70  	{Num: 24, ObjNum: x86.REG_X8, Name: "X8"},
    71  	{Num: 25, ObjNum: x86.REG_X9, Name: "X9"},
    72  	{Num: 26, ObjNum: x86.REG_X10, Name: "X10"},
    73  	{Num: 27, ObjNum: x86.REG_X11, Name: "X11"},
    74  	{Num: 28, ObjNum: x86.REG_X12, Name: "X12"},
    75  	{Num: 29, ObjNum: x86.REG_X13, Name: "X13"},
    76  	{Num: 30, ObjNum: x86.REG_X14, Name: "X14"},
    77  	{Num: 31, ObjNum: x86.REG_X15, Name: "X15"},
    78  	{Num: 32, ObjNum: x86.REG_X16, Name: "X16"},
    79  	{Num: 33, ObjNum: x86.REG_X17, Name: "X17"},
    80  	{Num: 34, ObjNum: x86.REG_X18, Name: "X18"},
    81  	{Num: 35, ObjNum: x86.REG_X19, Name: "X19"},
    82  	{Num: 36, ObjNum: x86.REG_X20, Name: "X20"},
    83  	{Num: 37, ObjNum: x86.REG_X21, Name: "X21"},
    84  	{Num: 38, ObjNum: x86.REG_X22, Name: "X22"},
    85  	{Num: 39, ObjNum: x86.REG_X23, Name: "X23"},
    86  	{Num: 40, ObjNum: x86.REG_X24, Name: "X24"},
    87  	{Num: 41, ObjNum: x86.REG_X25, Name: "X25"},
    88  	{Num: 42, ObjNum: x86.REG_X26, Name: "X26"},
    89  	{Num: 43, ObjNum: x86.REG_X27, Name: "X27"},
    90  	{Num: 44, ObjNum: x86.REG_X28, Name: "X28"},
    91  	{Num: 45, ObjNum: x86.REG_X29, Name: "X29"},
    92  	{Num: 46, ObjNum: x86.REG_X30, Name: "X30"},
    93  	{Num: 47, ObjNum: x86.REG_X31, Name: "X31"},
    94  	{Num: 48, ObjNum: x86.REG_K0, Name: "K0"},
    95  	{Num: 49, ObjNum: x86.REG_K1, Name: "K1"},
    96  	{Num: 50, ObjNum: x86.REG_K2, Name: "K2"},
    97  	{Num: 51, ObjNum: x86.REG_K3, Name: "K3"},
    98  	{Num: 52, ObjNum: x86.REG_K4, Name: "K4"},
    99  	{Num: 53, ObjNum: x86.REG_K5, Name: "K5"},
   100  	{Num: 54, ObjNum: x86.REG_K6, Name: "K6"},
   101  	{Num: 55, ObjNum: x86.REG_K7, Name: "K7"},
   102  	{Num: 56, ObjNum: 0, Name: "SB"},
   103  }
   104  var paramIntRegAMD64 = []int8{0, 3, 1, 7, 6, 8, 9, 10, 11}
   105  var paramFloatRegAMD64 = []int8{16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30}
   106  var gpRegMaskAMD64 = ssaop.RegMask{V1: 49135, V2: 0}
   107  var fpRegMaskAMD64 = ssaop.RegMask{V1: 2147418112, V2: 0}
   108  var simdRegMaskAMD64 = ssaop.RegMask{V1: 2147418112, V2: 0}
   109  var specialRegMaskAMD64 = ssaop.RegMask{V1: 71776114766249984, V2: 0}
   110  var framepointerRegAMD64 = int8(5)
   111  var linkRegAMD64 = int8(-1)
   112  var registersARM = [...]ssabase.Register{
   113  	{Num: 0, ObjNum: arm.REG_R0, Name: "R0"},
   114  	{Num: 1, ObjNum: arm.REG_R1, Name: "R1"},
   115  	{Num: 2, ObjNum: arm.REG_R2, Name: "R2"},
   116  	{Num: 3, ObjNum: arm.REG_R3, Name: "R3"},
   117  	{Num: 4, ObjNum: arm.REG_R4, Name: "R4"},
   118  	{Num: 5, ObjNum: arm.REG_R5, Name: "R5"},
   119  	{Num: 6, ObjNum: arm.REG_R6, Name: "R6"},
   120  	{Num: 7, ObjNum: arm.REG_R7, Name: "R7"},
   121  	{Num: 8, ObjNum: arm.REG_R8, Name: "R8"},
   122  	{Num: 9, ObjNum: arm.REG_R9, Name: "R9"},
   123  	{Num: 10, ObjNum: arm.REGG, Name: "g"},
   124  	{Num: 11, ObjNum: arm.REG_R11, Name: "R11"},
   125  	{Num: 12, ObjNum: arm.REG_R12, Name: "R12"},
   126  	{Num: 13, ObjNum: arm.REGSP, Name: "SP"},
   127  	{Num: 14, ObjNum: arm.REG_R14, Name: "R14"},
   128  	{Num: 15, ObjNum: arm.REG_R15, Name: "R15"},
   129  	{Num: 16, ObjNum: arm.REG_F0, Name: "F0"},
   130  	{Num: 17, ObjNum: arm.REG_F1, Name: "F1"},
   131  	{Num: 18, ObjNum: arm.REG_F2, Name: "F2"},
   132  	{Num: 19, ObjNum: arm.REG_F3, Name: "F3"},
   133  	{Num: 20, ObjNum: arm.REG_F4, Name: "F4"},
   134  	{Num: 21, ObjNum: arm.REG_F5, Name: "F5"},
   135  	{Num: 22, ObjNum: arm.REG_F6, Name: "F6"},
   136  	{Num: 23, ObjNum: arm.REG_F7, Name: "F7"},
   137  	{Num: 24, ObjNum: arm.REG_F8, Name: "F8"},
   138  	{Num: 25, ObjNum: arm.REG_F9, Name: "F9"},
   139  	{Num: 26, ObjNum: arm.REG_F10, Name: "F10"},
   140  	{Num: 27, ObjNum: arm.REG_F11, Name: "F11"},
   141  	{Num: 28, ObjNum: arm.REG_F12, Name: "F12"},
   142  	{Num: 29, ObjNum: arm.REG_F13, Name: "F13"},
   143  	{Num: 30, ObjNum: arm.REG_F14, Name: "F14"},
   144  	{Num: 31, ObjNum: arm.REG_F15, Name: "F15"},
   145  	{Num: 32, ObjNum: 0, Name: "SB"},
   146  }
   147  var paramIntRegARM = []int8(nil)
   148  var paramFloatRegARM = []int8(nil)
   149  var gpRegMaskARM = ssaop.RegMask{V1: 21503, V2: 0}
   150  var fpRegMaskARM = ssaop.RegMask{V1: 4294901760, V2: 0}
   151  var specialRegMaskARM = ssaop.RegMask{V1: 0, V2: 0}
   152  var framepointerRegARM = int8(-1)
   153  var linkRegARM = int8(14)
   154  var registersARM64 = [...]ssabase.Register{
   155  	{Num: 0, ObjNum: arm64.REG_R0, Name: "R0"},
   156  	{Num: 1, ObjNum: arm64.REG_R1, Name: "R1"},
   157  	{Num: 2, ObjNum: arm64.REG_R2, Name: "R2"},
   158  	{Num: 3, ObjNum: arm64.REG_R3, Name: "R3"},
   159  	{Num: 4, ObjNum: arm64.REG_R4, Name: "R4"},
   160  	{Num: 5, ObjNum: arm64.REG_R5, Name: "R5"},
   161  	{Num: 6, ObjNum: arm64.REG_R6, Name: "R6"},
   162  	{Num: 7, ObjNum: arm64.REG_R7, Name: "R7"},
   163  	{Num: 8, ObjNum: arm64.REG_R8, Name: "R8"},
   164  	{Num: 9, ObjNum: arm64.REG_R9, Name: "R9"},
   165  	{Num: 10, ObjNum: arm64.REG_R10, Name: "R10"},
   166  	{Num: 11, ObjNum: arm64.REG_R11, Name: "R11"},
   167  	{Num: 12, ObjNum: arm64.REG_R12, Name: "R12"},
   168  	{Num: 13, ObjNum: arm64.REG_R13, Name: "R13"},
   169  	{Num: 14, ObjNum: arm64.REG_R14, Name: "R14"},
   170  	{Num: 15, ObjNum: arm64.REG_R15, Name: "R15"},
   171  	{Num: 16, ObjNum: arm64.REG_R16, Name: "R16"},
   172  	{Num: 17, ObjNum: arm64.REG_R17, Name: "R17"},
   173  	{Num: 18, ObjNum: arm64.REG_R19, Name: "R19"},
   174  	{Num: 19, ObjNum: arm64.REG_R20, Name: "R20"},
   175  	{Num: 20, ObjNum: arm64.REG_R21, Name: "R21"},
   176  	{Num: 21, ObjNum: arm64.REG_R22, Name: "R22"},
   177  	{Num: 22, ObjNum: arm64.REG_R23, Name: "R23"},
   178  	{Num: 23, ObjNum: arm64.REG_R24, Name: "R24"},
   179  	{Num: 24, ObjNum: arm64.REG_R25, Name: "R25"},
   180  	{Num: 25, ObjNum: arm64.REG_R26, Name: "R26"},
   181  	{Num: 26, ObjNum: arm64.REGG, Name: "g"},
   182  	{Num: 27, ObjNum: arm64.REG_R29, Name: "R29"},
   183  	{Num: 28, ObjNum: arm64.REG_R30, Name: "R30"},
   184  	{Num: 29, ObjNum: arm64.REGZERO, Name: "ZERO"},
   185  	{Num: 30, ObjNum: arm64.REGSP, Name: "SP"},
   186  	{Num: 31, ObjNum: arm64.REG_F0, Name: "F0"},
   187  	{Num: 32, ObjNum: arm64.REG_F1, Name: "F1"},
   188  	{Num: 33, ObjNum: arm64.REG_F2, Name: "F2"},
   189  	{Num: 34, ObjNum: arm64.REG_F3, Name: "F3"},
   190  	{Num: 35, ObjNum: arm64.REG_F4, Name: "F4"},
   191  	{Num: 36, ObjNum: arm64.REG_F5, Name: "F5"},
   192  	{Num: 37, ObjNum: arm64.REG_F6, Name: "F6"},
   193  	{Num: 38, ObjNum: arm64.REG_F7, Name: "F7"},
   194  	{Num: 39, ObjNum: arm64.REG_F8, Name: "F8"},
   195  	{Num: 40, ObjNum: arm64.REG_F9, Name: "F9"},
   196  	{Num: 41, ObjNum: arm64.REG_F10, Name: "F10"},
   197  	{Num: 42, ObjNum: arm64.REG_F11, Name: "F11"},
   198  	{Num: 43, ObjNum: arm64.REG_F12, Name: "F12"},
   199  	{Num: 44, ObjNum: arm64.REG_F13, Name: "F13"},
   200  	{Num: 45, ObjNum: arm64.REG_F14, Name: "F14"},
   201  	{Num: 46, ObjNum: arm64.REG_F15, Name: "F15"},
   202  	{Num: 47, ObjNum: arm64.REG_F16, Name: "F16"},
   203  	{Num: 48, ObjNum: arm64.REG_F17, Name: "F17"},
   204  	{Num: 49, ObjNum: arm64.REG_F18, Name: "F18"},
   205  	{Num: 50, ObjNum: arm64.REG_F19, Name: "F19"},
   206  	{Num: 51, ObjNum: arm64.REG_F20, Name: "F20"},
   207  	{Num: 52, ObjNum: arm64.REG_F21, Name: "F21"},
   208  	{Num: 53, ObjNum: arm64.REG_F22, Name: "F22"},
   209  	{Num: 54, ObjNum: arm64.REG_F23, Name: "F23"},
   210  	{Num: 55, ObjNum: arm64.REG_F24, Name: "F24"},
   211  	{Num: 56, ObjNum: arm64.REG_F25, Name: "F25"},
   212  	{Num: 57, ObjNum: arm64.REG_F26, Name: "F26"},
   213  	{Num: 58, ObjNum: arm64.REG_F27, Name: "F27"},
   214  	{Num: 59, ObjNum: arm64.REG_F28, Name: "F28"},
   215  	{Num: 60, ObjNum: arm64.REG_F29, Name: "F29"},
   216  	{Num: 61, ObjNum: arm64.REG_F30, Name: "F30"},
   217  	{Num: 62, ObjNum: arm64.REG_F31, Name: "F31"},
   218  	{Num: 63, ObjNum: arm64.REG_P0, Name: "P0"},
   219  	{Num: 64, ObjNum: arm64.REG_P1, Name: "P1"},
   220  	{Num: 65, ObjNum: arm64.REG_P2, Name: "P2"},
   221  	{Num: 66, ObjNum: arm64.REG_P3, Name: "P3"},
   222  	{Num: 67, ObjNum: arm64.REG_P4, Name: "P4"},
   223  	{Num: 68, ObjNum: arm64.REG_P5, Name: "P5"},
   224  	{Num: 69, ObjNum: arm64.REG_P6, Name: "P6"},
   225  	{Num: 70, ObjNum: arm64.REG_P7, Name: "P7"},
   226  	{Num: 71, ObjNum: arm64.REG_P8, Name: "P8"},
   227  	{Num: 72, ObjNum: arm64.REG_P9, Name: "P9"},
   228  	{Num: 73, ObjNum: arm64.REG_P10, Name: "P10"},
   229  	{Num: 74, ObjNum: arm64.REG_P11, Name: "P11"},
   230  	{Num: 75, ObjNum: arm64.REG_P12, Name: "P12"},
   231  	{Num: 76, ObjNum: arm64.REG_P13, Name: "P13"},
   232  	{Num: 77, ObjNum: arm64.REG_P14, Name: "P14"},
   233  	{Num: 78, ObjNum: arm64.REG_P15, Name: "P15"},
   234  	{Num: 79, ObjNum: 0, Name: "SB"},
   235  }
   236  var paramIntRegARM64 = []int8{0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15}
   237  var paramFloatRegARM64 = []int8{31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46}
   238  var gpRegMaskARM64 = ssaop.RegMask{V1: 335544319, V2: 0}
   239  var fpRegMaskARM64 = ssaop.RegMask{V1: 9223372034707292160, V2: 0}
   240  var simdRegMaskARM64 = ssaop.RegMask{V1: 9223372034707292160, V2: 0}
   241  var specialRegMaskARM64 = ssaop.RegMask{V1: 9223372036854775808, V2: 32767}
   242  var framepointerRegARM64 = int8(-1)
   243  var linkRegARM64 = int8(28)
   244  var registersLOONG64 = [...]ssabase.Register{
   245  	{Num: 0, ObjNum: loong64.REGZERO, Name: "ZERO"},
   246  	{Num: 1, ObjNum: loong64.REG_R1, Name: "R1"},
   247  	{Num: 2, ObjNum: loong64.REGSP, Name: "SP"},
   248  	{Num: 3, ObjNum: loong64.REG_R4, Name: "R4"},
   249  	{Num: 4, ObjNum: loong64.REG_R5, Name: "R5"},
   250  	{Num: 5, ObjNum: loong64.REG_R6, Name: "R6"},
   251  	{Num: 6, ObjNum: loong64.REG_R7, Name: "R7"},
   252  	{Num: 7, ObjNum: loong64.REG_R8, Name: "R8"},
   253  	{Num: 8, ObjNum: loong64.REG_R9, Name: "R9"},
   254  	{Num: 9, ObjNum: loong64.REG_R10, Name: "R10"},
   255  	{Num: 10, ObjNum: loong64.REG_R11, Name: "R11"},
   256  	{Num: 11, ObjNum: loong64.REG_R12, Name: "R12"},
   257  	{Num: 12, ObjNum: loong64.REG_R13, Name: "R13"},
   258  	{Num: 13, ObjNum: loong64.REG_R14, Name: "R14"},
   259  	{Num: 14, ObjNum: loong64.REG_R15, Name: "R15"},
   260  	{Num: 15, ObjNum: loong64.REG_R16, Name: "R16"},
   261  	{Num: 16, ObjNum: loong64.REG_R17, Name: "R17"},
   262  	{Num: 17, ObjNum: loong64.REG_R18, Name: "R18"},
   263  	{Num: 18, ObjNum: loong64.REG_R19, Name: "R19"},
   264  	{Num: 19, ObjNum: loong64.REG_R20, Name: "R20"},
   265  	{Num: 20, ObjNum: loong64.REG_R21, Name: "R21"},
   266  	{Num: 21, ObjNum: loong64.REGG, Name: "g"},
   267  	{Num: 22, ObjNum: loong64.REG_R23, Name: "R23"},
   268  	{Num: 23, ObjNum: loong64.REG_R24, Name: "R24"},
   269  	{Num: 24, ObjNum: loong64.REG_R25, Name: "R25"},
   270  	{Num: 25, ObjNum: loong64.REG_R26, Name: "R26"},
   271  	{Num: 26, ObjNum: loong64.REG_R27, Name: "R27"},
   272  	{Num: 27, ObjNum: loong64.REG_R28, Name: "R28"},
   273  	{Num: 28, ObjNum: loong64.REG_R29, Name: "R29"},
   274  	{Num: 29, ObjNum: loong64.REG_R31, Name: "R31"},
   275  	{Num: 30, ObjNum: loong64.REG_F0, Name: "F0"},
   276  	{Num: 31, ObjNum: loong64.REG_F1, Name: "F1"},
   277  	{Num: 32, ObjNum: loong64.REG_F2, Name: "F2"},
   278  	{Num: 33, ObjNum: loong64.REG_F3, Name: "F3"},
   279  	{Num: 34, ObjNum: loong64.REG_F4, Name: "F4"},
   280  	{Num: 35, ObjNum: loong64.REG_F5, Name: "F5"},
   281  	{Num: 36, ObjNum: loong64.REG_F6, Name: "F6"},
   282  	{Num: 37, ObjNum: loong64.REG_F7, Name: "F7"},
   283  	{Num: 38, ObjNum: loong64.REG_F8, Name: "F8"},
   284  	{Num: 39, ObjNum: loong64.REG_F9, Name: "F9"},
   285  	{Num: 40, ObjNum: loong64.REG_F10, Name: "F10"},
   286  	{Num: 41, ObjNum: loong64.REG_F11, Name: "F11"},
   287  	{Num: 42, ObjNum: loong64.REG_F12, Name: "F12"},
   288  	{Num: 43, ObjNum: loong64.REG_F13, Name: "F13"},
   289  	{Num: 44, ObjNum: loong64.REG_F14, Name: "F14"},
   290  	{Num: 45, ObjNum: loong64.REG_F15, Name: "F15"},
   291  	{Num: 46, ObjNum: loong64.REG_F16, Name: "F16"},
   292  	{Num: 47, ObjNum: loong64.REG_F17, Name: "F17"},
   293  	{Num: 48, ObjNum: loong64.REG_F18, Name: "F18"},
   294  	{Num: 49, ObjNum: loong64.REG_F19, Name: "F19"},
   295  	{Num: 50, ObjNum: loong64.REG_F20, Name: "F20"},
   296  	{Num: 51, ObjNum: loong64.REG_F21, Name: "F21"},
   297  	{Num: 52, ObjNum: loong64.REG_F22, Name: "F22"},
   298  	{Num: 53, ObjNum: loong64.REG_F23, Name: "F23"},
   299  	{Num: 54, ObjNum: loong64.REG_F24, Name: "F24"},
   300  	{Num: 55, ObjNum: loong64.REG_F25, Name: "F25"},
   301  	{Num: 56, ObjNum: loong64.REG_F26, Name: "F26"},
   302  	{Num: 57, ObjNum: loong64.REG_F27, Name: "F27"},
   303  	{Num: 58, ObjNum: loong64.REG_F28, Name: "F28"},
   304  	{Num: 59, ObjNum: loong64.REG_F29, Name: "F29"},
   305  	{Num: 60, ObjNum: loong64.REG_F30, Name: "F30"},
   306  	{Num: 61, ObjNum: loong64.REG_F31, Name: "F31"},
   307  	{Num: 62, ObjNum: 0, Name: "SB"},
   308  }
   309  var paramIntRegLOONG64 = []int8{3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18}
   310  var paramFloatRegLOONG64 = []int8{30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45}
   311  var gpRegMaskLOONG64 = ssaop.RegMask{V1: 1071644664, V2: 0}
   312  var fpRegMaskLOONG64 = ssaop.RegMask{V1: 4611686017353646080, V2: 0}
   313  var specialRegMaskLOONG64 = ssaop.RegMask{V1: 0, V2: 0}
   314  var framepointerRegLOONG64 = int8(-1)
   315  var linkRegLOONG64 = int8(1)
   316  var registersMIPS = [...]ssabase.Register{
   317  	{Num: 0, ObjNum: mips.REG_R0, Name: "R0"},
   318  	{Num: 1, ObjNum: mips.REG_R1, Name: "R1"},
   319  	{Num: 2, ObjNum: mips.REG_R2, Name: "R2"},
   320  	{Num: 3, ObjNum: mips.REG_R3, Name: "R3"},
   321  	{Num: 4, ObjNum: mips.REG_R4, Name: "R4"},
   322  	{Num: 5, ObjNum: mips.REG_R5, Name: "R5"},
   323  	{Num: 6, ObjNum: mips.REG_R6, Name: "R6"},
   324  	{Num: 7, ObjNum: mips.REG_R7, Name: "R7"},
   325  	{Num: 8, ObjNum: mips.REG_R8, Name: "R8"},
   326  	{Num: 9, ObjNum: mips.REG_R9, Name: "R9"},
   327  	{Num: 10, ObjNum: mips.REG_R10, Name: "R10"},
   328  	{Num: 11, ObjNum: mips.REG_R11, Name: "R11"},
   329  	{Num: 12, ObjNum: mips.REG_R12, Name: "R12"},
   330  	{Num: 13, ObjNum: mips.REG_R13, Name: "R13"},
   331  	{Num: 14, ObjNum: mips.REG_R14, Name: "R14"},
   332  	{Num: 15, ObjNum: mips.REG_R15, Name: "R15"},
   333  	{Num: 16, ObjNum: mips.REG_R16, Name: "R16"},
   334  	{Num: 17, ObjNum: mips.REG_R17, Name: "R17"},
   335  	{Num: 18, ObjNum: mips.REG_R18, Name: "R18"},
   336  	{Num: 19, ObjNum: mips.REG_R19, Name: "R19"},
   337  	{Num: 20, ObjNum: mips.REG_R20, Name: "R20"},
   338  	{Num: 21, ObjNum: mips.REG_R21, Name: "R21"},
   339  	{Num: 22, ObjNum: mips.REG_R22, Name: "R22"},
   340  	{Num: 23, ObjNum: mips.REG_R24, Name: "R24"},
   341  	{Num: 24, ObjNum: mips.REG_R25, Name: "R25"},
   342  	{Num: 25, ObjNum: mips.REG_R28, Name: "R28"},
   343  	{Num: 26, ObjNum: mips.REGSP, Name: "SP"},
   344  	{Num: 27, ObjNum: mips.REGG, Name: "g"},
   345  	{Num: 28, ObjNum: mips.REG_R31, Name: "R31"},
   346  	{Num: 29, ObjNum: mips.REG_F0, Name: "F0"},
   347  	{Num: 30, ObjNum: mips.REG_F2, Name: "F2"},
   348  	{Num: 31, ObjNum: mips.REG_F4, Name: "F4"},
   349  	{Num: 32, ObjNum: mips.REG_F6, Name: "F6"},
   350  	{Num: 33, ObjNum: mips.REG_F8, Name: "F8"},
   351  	{Num: 34, ObjNum: mips.REG_F10, Name: "F10"},
   352  	{Num: 35, ObjNum: mips.REG_F12, Name: "F12"},
   353  	{Num: 36, ObjNum: mips.REG_F14, Name: "F14"},
   354  	{Num: 37, ObjNum: mips.REG_F16, Name: "F16"},
   355  	{Num: 38, ObjNum: mips.REG_F18, Name: "F18"},
   356  	{Num: 39, ObjNum: mips.REG_F20, Name: "F20"},
   357  	{Num: 40, ObjNum: mips.REG_F22, Name: "F22"},
   358  	{Num: 41, ObjNum: mips.REG_F24, Name: "F24"},
   359  	{Num: 42, ObjNum: mips.REG_F26, Name: "F26"},
   360  	{Num: 43, ObjNum: mips.REG_F28, Name: "F28"},
   361  	{Num: 44, ObjNum: mips.REG_F30, Name: "F30"},
   362  	{Num: 45, ObjNum: 0, Name: "SB"},
   363  }
   364  var paramIntRegMIPS = []int8(nil)
   365  var paramFloatRegMIPS = []int8(nil)
   366  var gpRegMaskMIPS = ssaop.RegMask{V1: 335544318, V2: 0}
   367  var fpRegMaskMIPS = ssaop.RegMask{V1: 35183835217920, V2: 0}
   368  var specialRegMaskMIPS = ssaop.RegMask{V1: 0, V2: 0}
   369  var framepointerRegMIPS = int8(-1)
   370  var linkRegMIPS = int8(28)
   371  var registersMIPS64 = [...]ssabase.Register{
   372  	{Num: 0, ObjNum: mips.REGZERO, Name: "ZERO"},
   373  	{Num: 1, ObjNum: mips.REG_R1, Name: "R1"},
   374  	{Num: 2, ObjNum: mips.REG_R2, Name: "R2"},
   375  	{Num: 3, ObjNum: mips.REG_R3, Name: "R3"},
   376  	{Num: 4, ObjNum: mips.REG_R4, Name: "R4"},
   377  	{Num: 5, ObjNum: mips.REG_R5, Name: "R5"},
   378  	{Num: 6, ObjNum: mips.REG_R6, Name: "R6"},
   379  	{Num: 7, ObjNum: mips.REG_R7, Name: "R7"},
   380  	{Num: 8, ObjNum: mips.REG_R8, Name: "R8"},
   381  	{Num: 9, ObjNum: mips.REG_R9, Name: "R9"},
   382  	{Num: 10, ObjNum: mips.REG_R10, Name: "R10"},
   383  	{Num: 11, ObjNum: mips.REG_R11, Name: "R11"},
   384  	{Num: 12, ObjNum: mips.REG_R12, Name: "R12"},
   385  	{Num: 13, ObjNum: mips.REG_R13, Name: "R13"},
   386  	{Num: 14, ObjNum: mips.REG_R14, Name: "R14"},
   387  	{Num: 15, ObjNum: mips.REG_R15, Name: "R15"},
   388  	{Num: 16, ObjNum: mips.REG_R16, Name: "R16"},
   389  	{Num: 17, ObjNum: mips.REG_R17, Name: "R17"},
   390  	{Num: 18, ObjNum: mips.REG_R18, Name: "R18"},
   391  	{Num: 19, ObjNum: mips.REG_R19, Name: "R19"},
   392  	{Num: 20, ObjNum: mips.REG_R20, Name: "R20"},
   393  	{Num: 21, ObjNum: mips.REG_R21, Name: "R21"},
   394  	{Num: 22, ObjNum: mips.REG_R22, Name: "R22"},
   395  	{Num: 23, ObjNum: mips.REG_R24, Name: "R24"},
   396  	{Num: 24, ObjNum: mips.REG_R25, Name: "R25"},
   397  	{Num: 25, ObjNum: mips.REGSP, Name: "SP"},
   398  	{Num: 26, ObjNum: mips.REGG, Name: "g"},
   399  	{Num: 27, ObjNum: mips.REG_R31, Name: "R31"},
   400  	{Num: 28, ObjNum: mips.REG_F0, Name: "F0"},
   401  	{Num: 29, ObjNum: mips.REG_F1, Name: "F1"},
   402  	{Num: 30, ObjNum: mips.REG_F2, Name: "F2"},
   403  	{Num: 31, ObjNum: mips.REG_F3, Name: "F3"},
   404  	{Num: 32, ObjNum: mips.REG_F4, Name: "F4"},
   405  	{Num: 33, ObjNum: mips.REG_F5, Name: "F5"},
   406  	{Num: 34, ObjNum: mips.REG_F6, Name: "F6"},
   407  	{Num: 35, ObjNum: mips.REG_F7, Name: "F7"},
   408  	{Num: 36, ObjNum: mips.REG_F8, Name: "F8"},
   409  	{Num: 37, ObjNum: mips.REG_F9, Name: "F9"},
   410  	{Num: 38, ObjNum: mips.REG_F10, Name: "F10"},
   411  	{Num: 39, ObjNum: mips.REG_F11, Name: "F11"},
   412  	{Num: 40, ObjNum: mips.REG_F12, Name: "F12"},
   413  	{Num: 41, ObjNum: mips.REG_F13, Name: "F13"},
   414  	{Num: 42, ObjNum: mips.REG_F14, Name: "F14"},
   415  	{Num: 43, ObjNum: mips.REG_F15, Name: "F15"},
   416  	{Num: 44, ObjNum: mips.REG_F16, Name: "F16"},
   417  	{Num: 45, ObjNum: mips.REG_F17, Name: "F17"},
   418  	{Num: 46, ObjNum: mips.REG_F18, Name: "F18"},
   419  	{Num: 47, ObjNum: mips.REG_F19, Name: "F19"},
   420  	{Num: 48, ObjNum: mips.REG_F20, Name: "F20"},
   421  	{Num: 49, ObjNum: mips.REG_F21, Name: "F21"},
   422  	{Num: 50, ObjNum: mips.REG_F22, Name: "F22"},
   423  	{Num: 51, ObjNum: mips.REG_F23, Name: "F23"},
   424  	{Num: 52, ObjNum: mips.REG_F24, Name: "F24"},
   425  	{Num: 53, ObjNum: mips.REG_F25, Name: "F25"},
   426  	{Num: 54, ObjNum: mips.REG_F26, Name: "F26"},
   427  	{Num: 55, ObjNum: mips.REG_F27, Name: "F27"},
   428  	{Num: 56, ObjNum: mips.REG_F28, Name: "F28"},
   429  	{Num: 57, ObjNum: mips.REG_F29, Name: "F29"},
   430  	{Num: 58, ObjNum: mips.REG_F30, Name: "F30"},
   431  	{Num: 59, ObjNum: mips.REG_F31, Name: "F31"},
   432  	{Num: 60, ObjNum: 0, Name: "SB"},
   433  }
   434  var paramIntRegMIPS64 = []int8(nil)
   435  var paramFloatRegMIPS64 = []int8(nil)
   436  var gpRegMaskMIPS64 = ssaop.RegMask{V1: 167772158, V2: 0}
   437  var fpRegMaskMIPS64 = ssaop.RegMask{V1: 1152921504338411520, V2: 0}
   438  var specialRegMaskMIPS64 = ssaop.RegMask{V1: 0, V2: 0}
   439  var framepointerRegMIPS64 = int8(-1)
   440  var linkRegMIPS64 = int8(27)
   441  var registersPPC64 = [...]ssabase.Register{
   442  	{Num: 0, ObjNum: ppc64.REG_R0, Name: "R0"},
   443  	{Num: 1, ObjNum: ppc64.REGSP, Name: "SP"},
   444  	{Num: 2, ObjNum: 0, Name: "SB"},
   445  	{Num: 3, ObjNum: ppc64.REG_R3, Name: "R3"},
   446  	{Num: 4, ObjNum: ppc64.REG_R4, Name: "R4"},
   447  	{Num: 5, ObjNum: ppc64.REG_R5, Name: "R5"},
   448  	{Num: 6, ObjNum: ppc64.REG_R6, Name: "R6"},
   449  	{Num: 7, ObjNum: ppc64.REG_R7, Name: "R7"},
   450  	{Num: 8, ObjNum: ppc64.REG_R8, Name: "R8"},
   451  	{Num: 9, ObjNum: ppc64.REG_R9, Name: "R9"},
   452  	{Num: 10, ObjNum: ppc64.REG_R10, Name: "R10"},
   453  	{Num: 11, ObjNum: ppc64.REG_R11, Name: "R11"},
   454  	{Num: 12, ObjNum: ppc64.REG_R12, Name: "R12"},
   455  	{Num: 13, ObjNum: ppc64.REG_R13, Name: "R13"},
   456  	{Num: 14, ObjNum: ppc64.REG_R14, Name: "R14"},
   457  	{Num: 15, ObjNum: ppc64.REG_R15, Name: "R15"},
   458  	{Num: 16, ObjNum: ppc64.REG_R16, Name: "R16"},
   459  	{Num: 17, ObjNum: ppc64.REG_R17, Name: "R17"},
   460  	{Num: 18, ObjNum: ppc64.REG_R18, Name: "R18"},
   461  	{Num: 19, ObjNum: ppc64.REG_R19, Name: "R19"},
   462  	{Num: 20, ObjNum: ppc64.REG_R20, Name: "R20"},
   463  	{Num: 21, ObjNum: ppc64.REG_R21, Name: "R21"},
   464  	{Num: 22, ObjNum: ppc64.REG_R22, Name: "R22"},
   465  	{Num: 23, ObjNum: ppc64.REG_R23, Name: "R23"},
   466  	{Num: 24, ObjNum: ppc64.REG_R24, Name: "R24"},
   467  	{Num: 25, ObjNum: ppc64.REG_R25, Name: "R25"},
   468  	{Num: 26, ObjNum: ppc64.REG_R26, Name: "R26"},
   469  	{Num: 27, ObjNum: ppc64.REG_R27, Name: "R27"},
   470  	{Num: 28, ObjNum: ppc64.REG_R28, Name: "R28"},
   471  	{Num: 29, ObjNum: ppc64.REG_R29, Name: "R29"},
   472  	{Num: 30, ObjNum: ppc64.REGG, Name: "g"},
   473  	{Num: 31, ObjNum: ppc64.REG_R31, Name: "R31"},
   474  	{Num: 32, ObjNum: ppc64.REG_F0, Name: "F0"},
   475  	{Num: 33, ObjNum: ppc64.REG_F1, Name: "F1"},
   476  	{Num: 34, ObjNum: ppc64.REG_F2, Name: "F2"},
   477  	{Num: 35, ObjNum: ppc64.REG_F3, Name: "F3"},
   478  	{Num: 36, ObjNum: ppc64.REG_F4, Name: "F4"},
   479  	{Num: 37, ObjNum: ppc64.REG_F5, Name: "F5"},
   480  	{Num: 38, ObjNum: ppc64.REG_F6, Name: "F6"},
   481  	{Num: 39, ObjNum: ppc64.REG_F7, Name: "F7"},
   482  	{Num: 40, ObjNum: ppc64.REG_F8, Name: "F8"},
   483  	{Num: 41, ObjNum: ppc64.REG_F9, Name: "F9"},
   484  	{Num: 42, ObjNum: ppc64.REG_F10, Name: "F10"},
   485  	{Num: 43, ObjNum: ppc64.REG_F11, Name: "F11"},
   486  	{Num: 44, ObjNum: ppc64.REG_F12, Name: "F12"},
   487  	{Num: 45, ObjNum: ppc64.REG_F13, Name: "F13"},
   488  	{Num: 46, ObjNum: ppc64.REG_F14, Name: "F14"},
   489  	{Num: 47, ObjNum: ppc64.REG_F15, Name: "F15"},
   490  	{Num: 48, ObjNum: ppc64.REG_F16, Name: "F16"},
   491  	{Num: 49, ObjNum: ppc64.REG_F17, Name: "F17"},
   492  	{Num: 50, ObjNum: ppc64.REG_F18, Name: "F18"},
   493  	{Num: 51, ObjNum: ppc64.REG_F19, Name: "F19"},
   494  	{Num: 52, ObjNum: ppc64.REG_F20, Name: "F20"},
   495  	{Num: 53, ObjNum: ppc64.REG_F21, Name: "F21"},
   496  	{Num: 54, ObjNum: ppc64.REG_F22, Name: "F22"},
   497  	{Num: 55, ObjNum: ppc64.REG_F23, Name: "F23"},
   498  	{Num: 56, ObjNum: ppc64.REG_F24, Name: "F24"},
   499  	{Num: 57, ObjNum: ppc64.REG_F25, Name: "F25"},
   500  	{Num: 58, ObjNum: ppc64.REG_F26, Name: "F26"},
   501  	{Num: 59, ObjNum: ppc64.REG_F27, Name: "F27"},
   502  	{Num: 60, ObjNum: ppc64.REG_F28, Name: "F28"},
   503  	{Num: 61, ObjNum: ppc64.REG_F29, Name: "F29"},
   504  	{Num: 62, ObjNum: ppc64.REG_F30, Name: "F30"},
   505  	{Num: 63, ObjNum: ppc64.REG_XER, Name: "XER"},
   506  }
   507  var paramIntRegPPC64 = []int8{3, 4, 5, 6, 7, 8, 9, 10, 14, 15, 16, 17}
   508  var paramFloatRegPPC64 = []int8{33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44}
   509  var gpRegMaskPPC64 = ssaop.RegMask{V1: 1073733624, V2: 0}
   510  var fpRegMaskPPC64 = ssaop.RegMask{V1: 9223372032559808512, V2: 0}
   511  var specialRegMaskPPC64 = ssaop.RegMask{V1: 9223372036854775808, V2: 0}
   512  var framepointerRegPPC64 = int8(-1)
   513  var linkRegPPC64 = int8(-1)
   514  var registersRISCV64 = [...]ssabase.Register{
   515  	{Num: 0, ObjNum: riscv.REG_X0, Name: "X0"},
   516  	{Num: 1, ObjNum: riscv.REGSP, Name: "SP"},
   517  	{Num: 2, ObjNum: riscv.REG_X3, Name: "X3"},
   518  	{Num: 3, ObjNum: riscv.REG_X4, Name: "X4"},
   519  	{Num: 4, ObjNum: riscv.REG_X5, Name: "X5"},
   520  	{Num: 5, ObjNum: riscv.REG_X6, Name: "X6"},
   521  	{Num: 6, ObjNum: riscv.REG_X7, Name: "X7"},
   522  	{Num: 7, ObjNum: riscv.REG_X8, Name: "X8"},
   523  	{Num: 8, ObjNum: riscv.REG_X9, Name: "X9"},
   524  	{Num: 9, ObjNum: riscv.REG_X10, Name: "X10"},
   525  	{Num: 10, ObjNum: riscv.REG_X11, Name: "X11"},
   526  	{Num: 11, ObjNum: riscv.REG_X12, Name: "X12"},
   527  	{Num: 12, ObjNum: riscv.REG_X13, Name: "X13"},
   528  	{Num: 13, ObjNum: riscv.REG_X14, Name: "X14"},
   529  	{Num: 14, ObjNum: riscv.REG_X15, Name: "X15"},
   530  	{Num: 15, ObjNum: riscv.REG_X16, Name: "X16"},
   531  	{Num: 16, ObjNum: riscv.REG_X17, Name: "X17"},
   532  	{Num: 17, ObjNum: riscv.REG_X18, Name: "X18"},
   533  	{Num: 18, ObjNum: riscv.REG_X19, Name: "X19"},
   534  	{Num: 19, ObjNum: riscv.REG_X20, Name: "X20"},
   535  	{Num: 20, ObjNum: riscv.REG_X21, Name: "X21"},
   536  	{Num: 21, ObjNum: riscv.REG_X22, Name: "X22"},
   537  	{Num: 22, ObjNum: riscv.REG_X23, Name: "X23"},
   538  	{Num: 23, ObjNum: riscv.REG_X24, Name: "X24"},
   539  	{Num: 24, ObjNum: riscv.REG_X25, Name: "X25"},
   540  	{Num: 25, ObjNum: riscv.REG_X26, Name: "X26"},
   541  	{Num: 26, ObjNum: riscv.REGG, Name: "g"},
   542  	{Num: 27, ObjNum: riscv.REG_X28, Name: "X28"},
   543  	{Num: 28, ObjNum: riscv.REG_X29, Name: "X29"},
   544  	{Num: 29, ObjNum: riscv.REG_X30, Name: "X30"},
   545  	{Num: 30, ObjNum: riscv.REG_X31, Name: "X31"},
   546  	{Num: 31, ObjNum: riscv.REG_F0, Name: "F0"},
   547  	{Num: 32, ObjNum: riscv.REG_F1, Name: "F1"},
   548  	{Num: 33, ObjNum: riscv.REG_F2, Name: "F2"},
   549  	{Num: 34, ObjNum: riscv.REG_F3, Name: "F3"},
   550  	{Num: 35, ObjNum: riscv.REG_F4, Name: "F4"},
   551  	{Num: 36, ObjNum: riscv.REG_F5, Name: "F5"},
   552  	{Num: 37, ObjNum: riscv.REG_F6, Name: "F6"},
   553  	{Num: 38, ObjNum: riscv.REG_F7, Name: "F7"},
   554  	{Num: 39, ObjNum: riscv.REG_F8, Name: "F8"},
   555  	{Num: 40, ObjNum: riscv.REG_F9, Name: "F9"},
   556  	{Num: 41, ObjNum: riscv.REG_F10, Name: "F10"},
   557  	{Num: 42, ObjNum: riscv.REG_F11, Name: "F11"},
   558  	{Num: 43, ObjNum: riscv.REG_F12, Name: "F12"},
   559  	{Num: 44, ObjNum: riscv.REG_F13, Name: "F13"},
   560  	{Num: 45, ObjNum: riscv.REG_F14, Name: "F14"},
   561  	{Num: 46, ObjNum: riscv.REG_F15, Name: "F15"},
   562  	{Num: 47, ObjNum: riscv.REG_F16, Name: "F16"},
   563  	{Num: 48, ObjNum: riscv.REG_F17, Name: "F17"},
   564  	{Num: 49, ObjNum: riscv.REG_F18, Name: "F18"},
   565  	{Num: 50, ObjNum: riscv.REG_F19, Name: "F19"},
   566  	{Num: 51, ObjNum: riscv.REG_F20, Name: "F20"},
   567  	{Num: 52, ObjNum: riscv.REG_F21, Name: "F21"},
   568  	{Num: 53, ObjNum: riscv.REG_F22, Name: "F22"},
   569  	{Num: 54, ObjNum: riscv.REG_F23, Name: "F23"},
   570  	{Num: 55, ObjNum: riscv.REG_F24, Name: "F24"},
   571  	{Num: 56, ObjNum: riscv.REG_F25, Name: "F25"},
   572  	{Num: 57, ObjNum: riscv.REG_F26, Name: "F26"},
   573  	{Num: 58, ObjNum: riscv.REG_F27, Name: "F27"},
   574  	{Num: 59, ObjNum: riscv.REG_F28, Name: "F28"},
   575  	{Num: 60, ObjNum: riscv.REG_F29, Name: "F29"},
   576  	{Num: 61, ObjNum: riscv.REG_F30, Name: "F30"},
   577  	{Num: 62, ObjNum: riscv.REG_F31, Name: "F31"},
   578  	{Num: 63, ObjNum: 0, Name: "SB"},
   579  }
   580  var paramIntRegRISCV64 = []int8{9, 10, 11, 12, 13, 14, 15, 16, 7, 8, 17, 18, 19, 20, 21, 22}
   581  var paramFloatRegRISCV64 = []int8{41, 42, 43, 44, 45, 46, 47, 48, 39, 40, 49, 50, 51, 52, 53, 54}
   582  var gpRegMaskRISCV64 = ssaop.RegMask{V1: 1006632944, V2: 0}
   583  var fpRegMaskRISCV64 = ssaop.RegMask{V1: 9223372034707292160, V2: 0}
   584  var specialRegMaskRISCV64 = ssaop.RegMask{V1: 0, V2: 0}
   585  var framepointerRegRISCV64 = int8(-1)
   586  var linkRegRISCV64 = int8(0)
   587  var registersS390X = [...]ssabase.Register{
   588  	{Num: 0, ObjNum: s390x.REG_R0, Name: "R0"},
   589  	{Num: 1, ObjNum: s390x.REG_R1, Name: "R1"},
   590  	{Num: 2, ObjNum: s390x.REG_R2, Name: "R2"},
   591  	{Num: 3, ObjNum: s390x.REG_R3, Name: "R3"},
   592  	{Num: 4, ObjNum: s390x.REG_R4, Name: "R4"},
   593  	{Num: 5, ObjNum: s390x.REG_R5, Name: "R5"},
   594  	{Num: 6, ObjNum: s390x.REG_R6, Name: "R6"},
   595  	{Num: 7, ObjNum: s390x.REG_R7, Name: "R7"},
   596  	{Num: 8, ObjNum: s390x.REG_R8, Name: "R8"},
   597  	{Num: 9, ObjNum: s390x.REG_R9, Name: "R9"},
   598  	{Num: 10, ObjNum: s390x.REG_R10, Name: "R10"},
   599  	{Num: 11, ObjNum: s390x.REG_R11, Name: "R11"},
   600  	{Num: 12, ObjNum: s390x.REG_R12, Name: "R12"},
   601  	{Num: 13, ObjNum: s390x.REGG, Name: "g"},
   602  	{Num: 14, ObjNum: s390x.REG_R14, Name: "R14"},
   603  	{Num: 15, ObjNum: s390x.REGSP, Name: "SP"},
   604  	{Num: 16, ObjNum: s390x.REG_F0, Name: "F0"},
   605  	{Num: 17, ObjNum: s390x.REG_F1, Name: "F1"},
   606  	{Num: 18, ObjNum: s390x.REG_F2, Name: "F2"},
   607  	{Num: 19, ObjNum: s390x.REG_F3, Name: "F3"},
   608  	{Num: 20, ObjNum: s390x.REG_F4, Name: "F4"},
   609  	{Num: 21, ObjNum: s390x.REG_F5, Name: "F5"},
   610  	{Num: 22, ObjNum: s390x.REG_F6, Name: "F6"},
   611  	{Num: 23, ObjNum: s390x.REG_F7, Name: "F7"},
   612  	{Num: 24, ObjNum: s390x.REG_F8, Name: "F8"},
   613  	{Num: 25, ObjNum: s390x.REG_F9, Name: "F9"},
   614  	{Num: 26, ObjNum: s390x.REG_F10, Name: "F10"},
   615  	{Num: 27, ObjNum: s390x.REG_F11, Name: "F11"},
   616  	{Num: 28, ObjNum: s390x.REG_F12, Name: "F12"},
   617  	{Num: 29, ObjNum: s390x.REG_F13, Name: "F13"},
   618  	{Num: 30, ObjNum: s390x.REG_F14, Name: "F14"},
   619  	{Num: 31, ObjNum: s390x.REG_F15, Name: "F15"},
   620  	{Num: 32, ObjNum: 0, Name: "SB"},
   621  }
   622  var paramIntRegS390X = []int8{2, 3, 4, 5, 6, 7, 8, 9}
   623  var paramFloatRegS390X = []int8{16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31}
   624  var gpRegMaskS390X = ssaop.RegMask{V1: 23551, V2: 0}
   625  var fpRegMaskS390X = ssaop.RegMask{V1: 4294901760, V2: 0}
   626  var specialRegMaskS390X = ssaop.RegMask{V1: 0, V2: 0}
   627  var framepointerRegS390X = int8(-1)
   628  var linkRegS390X = int8(14)
   629  var registersWasm = [...]ssabase.Register{
   630  	{Num: 0, ObjNum: wasm.REG_R0, Name: "R0"},
   631  	{Num: 1, ObjNum: wasm.REG_R1, Name: "R1"},
   632  	{Num: 2, ObjNum: wasm.REG_R2, Name: "R2"},
   633  	{Num: 3, ObjNum: wasm.REG_R3, Name: "R3"},
   634  	{Num: 4, ObjNum: wasm.REG_R4, Name: "R4"},
   635  	{Num: 5, ObjNum: wasm.REG_R5, Name: "R5"},
   636  	{Num: 6, ObjNum: wasm.REG_R6, Name: "R6"},
   637  	{Num: 7, ObjNum: wasm.REG_R7, Name: "R7"},
   638  	{Num: 8, ObjNum: wasm.REG_R8, Name: "R8"},
   639  	{Num: 9, ObjNum: wasm.REG_R9, Name: "R9"},
   640  	{Num: 10, ObjNum: wasm.REG_R10, Name: "R10"},
   641  	{Num: 11, ObjNum: wasm.REG_R11, Name: "R11"},
   642  	{Num: 12, ObjNum: wasm.REG_R12, Name: "R12"},
   643  	{Num: 13, ObjNum: wasm.REG_R13, Name: "R13"},
   644  	{Num: 14, ObjNum: wasm.REG_R14, Name: "R14"},
   645  	{Num: 15, ObjNum: wasm.REG_R15, Name: "R15"},
   646  	{Num: 16, ObjNum: wasm.REG_F0, Name: "F0"},
   647  	{Num: 17, ObjNum: wasm.REG_F1, Name: "F1"},
   648  	{Num: 18, ObjNum: wasm.REG_F2, Name: "F2"},
   649  	{Num: 19, ObjNum: wasm.REG_F3, Name: "F3"},
   650  	{Num: 20, ObjNum: wasm.REG_F4, Name: "F4"},
   651  	{Num: 21, ObjNum: wasm.REG_F5, Name: "F5"},
   652  	{Num: 22, ObjNum: wasm.REG_F6, Name: "F6"},
   653  	{Num: 23, ObjNum: wasm.REG_F7, Name: "F7"},
   654  	{Num: 24, ObjNum: wasm.REG_F8, Name: "F8"},
   655  	{Num: 25, ObjNum: wasm.REG_F9, Name: "F9"},
   656  	{Num: 26, ObjNum: wasm.REG_F10, Name: "F10"},
   657  	{Num: 27, ObjNum: wasm.REG_F11, Name: "F11"},
   658  	{Num: 28, ObjNum: wasm.REG_F12, Name: "F12"},
   659  	{Num: 29, ObjNum: wasm.REG_F13, Name: "F13"},
   660  	{Num: 30, ObjNum: wasm.REG_F14, Name: "F14"},
   661  	{Num: 31, ObjNum: wasm.REG_F15, Name: "F15"},
   662  	{Num: 32, ObjNum: wasm.REG_F16, Name: "F16"},
   663  	{Num: 33, ObjNum: wasm.REG_F17, Name: "F17"},
   664  	{Num: 34, ObjNum: wasm.REG_F18, Name: "F18"},
   665  	{Num: 35, ObjNum: wasm.REG_F19, Name: "F19"},
   666  	{Num: 36, ObjNum: wasm.REG_F20, Name: "F20"},
   667  	{Num: 37, ObjNum: wasm.REG_F21, Name: "F21"},
   668  	{Num: 38, ObjNum: wasm.REG_F22, Name: "F22"},
   669  	{Num: 39, ObjNum: wasm.REG_F23, Name: "F23"},
   670  	{Num: 40, ObjNum: wasm.REG_F24, Name: "F24"},
   671  	{Num: 41, ObjNum: wasm.REG_F25, Name: "F25"},
   672  	{Num: 42, ObjNum: wasm.REG_F26, Name: "F26"},
   673  	{Num: 43, ObjNum: wasm.REG_F27, Name: "F27"},
   674  	{Num: 44, ObjNum: wasm.REG_F28, Name: "F28"},
   675  	{Num: 45, ObjNum: wasm.REG_F29, Name: "F29"},
   676  	{Num: 46, ObjNum: wasm.REG_F30, Name: "F30"},
   677  	{Num: 47, ObjNum: wasm.REG_F31, Name: "F31"},
   678  	{Num: 48, ObjNum: wasm.REG_V0, Name: "V0"},
   679  	{Num: 49, ObjNum: wasm.REG_V1, Name: "V1"},
   680  	{Num: 50, ObjNum: wasm.REG_V2, Name: "V2"},
   681  	{Num: 51, ObjNum: wasm.REG_V3, Name: "V3"},
   682  	{Num: 52, ObjNum: wasm.REG_V4, Name: "V4"},
   683  	{Num: 53, ObjNum: wasm.REG_V5, Name: "V5"},
   684  	{Num: 54, ObjNum: wasm.REG_V6, Name: "V6"},
   685  	{Num: 55, ObjNum: wasm.REG_V7, Name: "V7"},
   686  	{Num: 56, ObjNum: wasm.REG_V8, Name: "V8"},
   687  	{Num: 57, ObjNum: wasm.REG_V9, Name: "V9"},
   688  	{Num: 58, ObjNum: wasm.REG_V10, Name: "V10"},
   689  	{Num: 59, ObjNum: wasm.REG_V11, Name: "V11"},
   690  	{Num: 60, ObjNum: wasm.REG_V12, Name: "V12"},
   691  	{Num: 61, ObjNum: wasm.REG_V13, Name: "V13"},
   692  	{Num: 62, ObjNum: wasm.REG_V14, Name: "V14"},
   693  	{Num: 63, ObjNum: wasm.REG_V15, Name: "V15"},
   694  	{Num: 64, ObjNum: wasm.REGSP, Name: "SP"},
   695  	{Num: 65, ObjNum: wasm.REGG, Name: "g"},
   696  	{Num: 66, ObjNum: 0, Name: "SB"},
   697  }
   698  var paramIntRegWasm = []int8(nil)
   699  var paramFloatRegWasm = []int8(nil)
   700  var gpRegMaskWasm = ssaop.RegMask{V1: 65535, V2: 0}
   701  var fpRegMaskWasm = ssaop.RegMask{V1: 281474976645120, V2: 0}
   702  var fp32RegMaskWasm = ssaop.RegMask{V1: 4294901760, V2: 0}
   703  var fp64RegMaskWasm = ssaop.RegMask{V1: 281470681743360, V2: 0}
   704  var simdRegMaskWasm = ssaop.RegMask{V1: 18446462598732840960, V2: 0}
   705  var specialRegMaskWasm = ssaop.RegMask{V1: 0, V2: 0}
   706  var framepointerRegWasm = int8(-1)
   707  var linkRegWasm = int8(-1)
   708  

View as plain text