Revert "Merge branch 'master' of https://github.com/mono/mono"
[mono.git] / mono / mini / mini-ops.h
index f3854faf25c74076cf68e34b68352c4fc7a18286..bccdb295d44e363a3d6ea038531d1a05f8b6821c 100644 (file)
@@ -40,23 +40,18 @@ MINI_OP(OP_SEQ_POINT, "seq_point", NONE, NONE, NONE)
 MINI_OP(OP_IMPLICIT_EXCEPTION, "implicit_exception", NONE, NONE, NONE)
 
 MINI_OP(OP_VOIDCALL,   "voidcall", NONE, NONE, NONE)
-MINI_OP(OP_VOIDCALLVIRT,       "voidcallvirt", NONE, NONE, NONE)
 MINI_OP(OP_VOIDCALL_REG,       "voidcall_reg", NONE, IREG, NONE)
 MINI_OP(OP_VOIDCALL_MEMBASE,   "voidcall_membase", NONE, IREG, NONE)
 MINI_OP(OP_CALL,        "call", IREG, NONE, NONE)
 MINI_OP(OP_CALL_REG,   "call_reg", IREG, IREG, NONE)
 MINI_OP(OP_CALL_MEMBASE,       "call_membase", IREG, IREG, NONE)
-MINI_OP(OP_CALLVIRT, "callvirt", IREG, NONE, NONE)
 MINI_OP(OP_FCALL,      "fcall", FREG, NONE, NONE)
-MINI_OP(OP_FCALLVIRT,  "fcallvirt", FREG, NONE, NONE)
 MINI_OP(OP_FCALL_REG,  "fcall_reg", FREG, IREG, NONE)
 MINI_OP(OP_FCALL_MEMBASE,      "fcall_membase", FREG, IREG, NONE)
 MINI_OP(OP_LCALL,      "lcall", LREG, NONE, NONE)
-MINI_OP(OP_LCALLVIRT,  "lcallvirt", LREG, NONE, NONE)
 MINI_OP(OP_LCALL_REG,  "lcall_reg", LREG, IREG, NONE)
 MINI_OP(OP_LCALL_MEMBASE,      "lcall_membase", LREG, IREG, NONE)
 MINI_OP(OP_VCALL,      "vcall", VREG, NONE, NONE)
-MINI_OP(OP_VCALLVIRT,  "vcallvirt", VREG, NONE, NONE)
 MINI_OP(OP_VCALL_REG,  "vcall_reg", VREG, IREG, NONE)
 MINI_OP(OP_VCALL_MEMBASE,      "vcall_membase", VREG, IREG, NONE)
 /* Represents the decomposed vcall which doesn't return a vtype no more */
@@ -69,6 +64,10 @@ MINI_OP(OP_ICONST,   "iconst", IREG, NONE, NONE)
 MINI_OP(OP_I8CONST,    "i8const", LREG, NONE, NONE)
 MINI_OP(OP_R4CONST,    "r4const", FREG, NONE, NONE)
 MINI_OP(OP_R8CONST,    "r8const", FREG, NONE, NONE)
+MINI_OP(OP_DUMMY_ICONST, "dummy_iconst", IREG, NONE, NONE)
+MINI_OP(OP_DUMMY_I8CONST, "dummy_i8const", LREG, NONE, NONE)
+MINI_OP(OP_DUMMY_R8CONST, "dummy_r8const", FREG, NONE, NONE)
+MINI_OP(OP_DUMMY_VZERO, "dummy_vzero", VREG, NONE, NONE)
 MINI_OP(OP_REGVAR,     "regvar", NONE, NONE, NONE)
 MINI_OP(OP_REGOFFSET,  "regoffset", NONE, NONE, NONE)
 MINI_OP(OP_VTARG_ADDR, "vtarg_addr", NONE, NONE, NONE)
@@ -167,7 +166,7 @@ MINI_OP(OP_LOADI8_MEM,"loadi8_mem", IREG, NONE, NONE)
 MINI_OP(OP_STORE_MEM_IMM, "store_mem_imm", NONE, NONE, NONE)
 
 MINI_OP(OP_MOVE,       "move", IREG, IREG, NONE)
-MINI_OP(OP_LMOVE,      "lmove", IREG, IREG, NONE)
+MINI_OP(OP_LMOVE,      "lmove", LREG, LREG, NONE)
 MINI_OP(OP_FMOVE,      "fmove", FREG, FREG, NONE)
 MINI_OP(OP_VMOVE,   "vmove", VREG, VREG, NONE)
 
@@ -426,6 +425,12 @@ MINI_OP(OP_ICGT_UN,"int_cgt_un", IREG, NONE, NONE)
 MINI_OP(OP_ICLT,   "int_clt", IREG, NONE, NONE)
 MINI_OP(OP_ICLT_UN,"int_clt_un", IREG, NONE, NONE)
 
+MINI_OP(OP_ICNEQ,  "int_cneq", IREG, NONE, NONE)
+MINI_OP(OP_ICGE,   "int_cge", IREG, NONE, NONE)
+MINI_OP(OP_ICLE,   "int_cle", IREG, NONE, NONE)
+MINI_OP(OP_ICGE_UN,"int_cge_un", IREG, NONE, NONE)
+MINI_OP(OP_ICLE_UN,"int_cle_un", IREG, NONE, NONE)
+
 MINI_OP(OP_IBEQ,    "int_beq", NONE, NONE, NONE)
 MINI_OP(OP_IBGE,    "int_bge", NONE, NONE, NONE)
 MINI_OP(OP_IBGT,    "int_bgt", NONE, NONE, NONE)
@@ -509,6 +514,10 @@ MINI_OP(OP_FCGT_UN,"float_cgt_un", IREG, FREG, FREG)
 MINI_OP(OP_FCLT,   "float_clt", IREG, FREG, FREG)
 MINI_OP(OP_FCLT_UN,"float_clt_un", IREG, FREG, FREG)
 
+MINI_OP(OP_FCNEQ,  "float_cneq", IREG, FREG, FREG)
+MINI_OP(OP_FCGE,   "float_cge", IREG, FREG, FREG)
+MINI_OP(OP_FCLE,   "float_cle", IREG, FREG, FREG)
+
 MINI_OP(OP_FCEQ_MEMBASE,   "float_ceq_membase", IREG, FREG, IREG)
 MINI_OP(OP_FCGT_MEMBASE,   "float_cgt_membase", IREG, FREG, IREG)
 MINI_OP(OP_FCGT_UN_MEMBASE,"float_cgt_un_membase", IREG, FREG, IREG)
@@ -608,6 +617,10 @@ MINI_OP(OP_CARD_TABLE_WBARRIER, "card_table_wbarrier", NONE, IREG, IREG)
 
 /* arch-dep tls access */
 MINI_OP(OP_TLS_GET,            "tls_get", IREG, NONE, NONE)
+MINI_OP(OP_TLS_GET_REG,        "tls_get_reg", IREG, IREG, NONE)
+/* inst_offset contains the TLS offset */
+MINI_OP(OP_TLS_SET,            "tls_set", NONE, IREG, NONE)
+MINI_OP(OP_TLS_SET_REG,        "tls_set_reg", NONE, IREG, IREG)
 
 MINI_OP(OP_LOAD_GOTADDR, "load_gotaddr", IREG, NONE, NONE)
 MINI_OP(OP_DUMMY_USE, "dummy_use", NONE, IREG, NONE)
@@ -1230,3 +1243,8 @@ MINI_OP(OP_MIPS_COND_EXC_INC, "mips_cond_exc_inc", NONE, IREG, IREG)
 MINI_OP(OP_LLVM_OUTARG_VT,     "llvm_outarg_vt", IREG, VREG, NONE)
 #endif
 
+MINI_OP(OP_OBJC_GET_SELECTOR, "objc_get_selector", IREG, NONE, NONE)
+
+MINI_OP(OP_GET_SP, "get_sp", IREG, NONE, NONE)
+MINI_OP(OP_SET_SP, "set_sp", NONE, IREG, NONE)
+