From f1ca994efaec093e0f7f4b16cbce4675aa5648e3 Mon Sep 17 00:00:00 2001 From: Mike Danes Date: Tue, 8 May 2018 22:54:32 +0300 Subject: Add support for 16 byte aligned constants --- src/jit/emit.h | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) (limited to 'src/jit/emit.h') diff --git a/src/jit/emit.h b/src/jit/emit.h index 3387e6a98c..7e0250ff04 100644 --- a/src/jit/emit.h +++ b/src/jit/emit.h @@ -216,6 +216,15 @@ private: unsigned codePos; // the code position within the IG (see emitCurOffset()) }; +#ifndef LEGACY_BACKEND +enum class emitDataAlignment +{ + None, + Preferred, + Required +}; +#endif + /************************************************************************/ /* The following describes an instruction group */ /************************************************************************/ @@ -1580,7 +1589,7 @@ private: void emitSetMediumJump(instrDescJmp* id); UNATIVE_OFFSET emitSizeOfJump(instrDescJmp* jmp); UNATIVE_OFFSET emitInstCodeSz(instrDesc* id); - CORINFO_FIELD_HANDLE emitAnyConst(const void* cnsAddr, unsigned cnsSize, bool dblAlign); + CORINFO_FIELD_HANDLE emitAnyConst(const void* cnsAddr, unsigned cnsSize, emitDataAlignment alignment); CORINFO_FIELD_HANDLE emitFltOrDblConst(double constValue, emitAttr attr); regNumber emitInsBinary(instruction ins, emitAttr attr, GenTree* dst, GenTree* src); regNumber emitInsTernary(instruction ins, emitAttr attr, GenTree* dst, GenTree* src1, GenTree* src2); @@ -2036,6 +2045,7 @@ public: dataSection* dsdList; dataSection* dsdLast; UNATIVE_OFFSET dsdOffs; + bool align16; }; dataSecDsc emitConsDsc; -- cgit v1.2.3