diff options
author | Geoff Norton <grompf@gmail.com> | 2015-07-25 14:48:20 +0900 |
---|---|---|
committer | Geoff Norton <grompf@gmail.com> | 2015-07-27 21:12:04 -0700 |
commit | 16c43e35d1a9a858374757ccf0484a50afdb0b69 (patch) | |
tree | 1e8977500a18b28c00716d5378a1d5f0afa3b7a3 /src/jit/emitarm64.cpp | |
parent | 0a83c2fc30146b335a24c85de2a5ba33a72bdbdd (diff) | |
download | coreclr-16c43e35d1a9a858374757ccf0484a50afdb0b69.tar.gz coreclr-16c43e35d1a9a858374757ccf0484a50afdb0b69.tar.bz2 coreclr-16c43e35d1a9a858374757ccf0484a50afdb0b69.zip |
[aarch64] Initial aarch64/linux bring up
Diffstat (limited to 'src/jit/emitarm64.cpp')
-rw-r--r-- | src/jit/emitarm64.cpp | 95 |
1 files changed, 91 insertions, 4 deletions
diff --git a/src/jit/emitarm64.cpp b/src/jit/emitarm64.cpp index 3ae8c4ce35..06e4e73d07 100644 --- a/src/jit/emitarm64.cpp +++ b/src/jit/emitarm64.cpp @@ -2864,6 +2864,9 @@ emitter::code_t emitter::emitInsCode(instruction ins, insFormat fmt) case EA_8BYTE: result = INS_OPTS_1D; break; + default: + // TODO-Cleanup: add unreached() here + break; } } else if (datasize == EA_16BYTE) @@ -2882,6 +2885,9 @@ emitter::code_t emitter::emitInsCode(instruction ins, insFormat fmt) case EA_8BYTE: result = INS_OPTS_2D; break; + default: + // TODO-Cleanup: add unreached() here + break; } } return result; @@ -3095,6 +3101,9 @@ emitter::code_t emitter::emitInsCode(instruction ins, insFormat fmt) case EA_8BYTE: result = (index < 1); break; + default: + // TODO-Cleanup: add unreached() here + break; } } else if (datasize == EA_16BYTE) @@ -3113,6 +3122,9 @@ emitter::code_t emitter::emitInsCode(instruction ins, insFormat fmt) case EA_8BYTE: result = (index < 2); break; + default: + // TODO-Cleanup: add unreached() here + break; } } } @@ -3163,6 +3175,9 @@ void emitter::emitIns_I(instruction ins, assert(!"Instruction cannot be encoded: IF_SI_0A"); } break; + default: + // TODO-Cleanup: add unreached() here + break; } assert(fmt != IF_NONE); @@ -3205,6 +3220,10 @@ void emitter::emitIns_R(instruction ins, fmt = IF_BR_1A; break; + default: + // TODO-Cleanup: add unreached() here + break; + } assert(fmt != IF_NONE); @@ -3463,6 +3482,10 @@ void emitter::emitIns_R_I(instruction ins, } break; + default: + // TODO-Cleanup: add unreached() here + break; + } // end switch (ins) assert(canEncode); @@ -3551,6 +3574,11 @@ void emitter::emitIns_R_F(instruction ins, } } break; + + default: + // TODO-Cleanup: add unreached() here + break; + } // end switch (ins) assert(canEncode); @@ -3988,6 +4016,10 @@ void emitter::emitIns_R_R(instruction ins, fmt = IF_DV_2J; break; + default: + // TODO-Cleanup: add unreached() here + break; + } // end switch (ins) assert(fmt != IF_NONE); @@ -4087,6 +4119,10 @@ void emitter::emitIns_R_I_I(instruction ins, } break; + default: + // TODO-Cleanup: add unreached() here + break; + } // end switch (ins) assert(fmt != IF_NONE); @@ -4527,6 +4563,10 @@ void emitter::emitIns_R_R_I(instruction ins, isLdSt = true; break; + default: + // TODO-Cleanup: add unreached() here + break; + } // end switch (ins) if (isLdSt) @@ -4932,6 +4972,10 @@ void emitter::emitIns_R_R_R(instruction ins, emitIns_R_R_R_I(ins, attr, reg1, reg2, reg3, 0); return; + default: + // TODO-Cleanup: add unreached() here + break; + } // end switch (ins) assert(fmt != IF_NONE); @@ -5099,6 +5143,10 @@ void emitter::emitIns_R_R_R_I(instruction ins, isLdSt = true; break; + default: + // TODO-Cleanup: add unreached() here + break; + } // end switch (ins) if (isLdSt) @@ -5280,6 +5328,10 @@ void emitter::emitIns_R_R_R_Ext(instruction ins, } break; + default: + // TODO-Cleanup: add unreached() here + break; + } // end switch (ins) assert(scale != -1); @@ -5415,6 +5467,10 @@ void emitter::emitIns_R_R_I_I(instruction ins, fmt = IF_DV_2F; break; + default: + // TODO-Cleanup: add unreached() here + break; + } assert(fmt != IF_NONE); @@ -5478,6 +5534,11 @@ void emitter::emitIns_R_R_R_R(instruction ins, case INS_invalid: fmt = IF_NONE; break; + + default: + // TODO-Cleanup: add unreached() here + break; + } assert(fmt != IF_NONE); @@ -5522,6 +5583,10 @@ void emitter::emitIns_R_COND(instruction ins, fmt = IF_DR_1D; break; + default: + // TODO-Cleanup: add unreached() here + break; + } // end switch (ins) assert(fmt != IF_NONE); @@ -5566,6 +5631,9 @@ void emitter::emitIns_R_R_COND(instruction ins, cfi.cond = cond; fmt = IF_DR_2D; break; + default: + // TODO-Cleanup: add unreached() here + break; } // end switch (ins) @@ -5616,6 +5684,10 @@ void emitter::emitIns_R_R_R_COND(instruction ins, fmt = IF_DR_3D; break; + default: + // TODO-Cleanup: add unreached() here + break; + } // end switch (ins) assert(fmt != IF_NONE); @@ -5664,7 +5736,9 @@ void emitter::emitIns_R_R_FLAGS_COND (instruction ins, cfi.cond = cond; fmt = IF_DR_2I; break; - + default: + // TODO-Cleanup: add unreached() here + break; } // end switch (ins) assert(fmt != IF_NONE); @@ -5723,7 +5797,9 @@ void emitter::emitIns_R_I_FLAGS_COND (instruction ins, assert(!"Instruction cannot be encoded: ccmp/ccmn imm5"); } break; - + default: + // TODO-Cleanup: add unreached() here + break; } // end switch (ins) assert(fmt != IF_NONE); @@ -5762,7 +5838,9 @@ void emitter::emitIns_BARR (instruction ins, fmt = IF_SI_0B; imm = (ssize_t) barrier; break; - + default: + // TODO-Cleanup: add unreached() here + break; } // end switch (ins) assert(fmt != IF_NONE); @@ -6295,6 +6373,9 @@ void emitter::emitIns_R_L (instruction ins, case INS_adrp: fmt = IF_DI_1E; break; + default: + // TODO-Cleanup: add unreached() here + break; } assert(fmt == IF_DI_1E); @@ -6406,6 +6487,9 @@ void emitter::emitIns_J(instruction ins, // TODO-ARM64-CQ: fmt = IF_LARGEJMP; /* Assume the jump will be long */ fmt = IF_BI_0B; break; + default: + // TODO-Cleanup: add unreached() here + break; } assert((fmt == IF_BI_0A) || (fmt == IF_BI_0B)); @@ -8564,6 +8648,9 @@ size_t emitter::emitOutputInstr(insGroup *ig, case EA_8BYTE: cmode = 0xE; // 1110 break; + default: + // TODO-Cleanup: add unreached() here + break; } code = emitInsCode(ins, fmt); @@ -9479,7 +9566,7 @@ void emitter::emitDispAddrRI(regNumber reg, insOpts opt, ssize_t } else { - printf(operStr[1]); + printf("%c", operStr[1]); } emitDispImm(imm, false); printf("]"); |