diff options
author | Jan Vorlicek <janvorli@microsoft.com> | 2016-09-09 10:57:45 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2016-09-09 10:57:45 +0200 |
commit | 23c166d03a673e515131c2bb8777de308c0637ce (patch) | |
tree | 6ea7b89cb6f9dc0090eea263e3f820314d689a09 | |
parent | 14628f3218c4678817dedbb41f396ac62d139b8d (diff) | |
download | coreclr-23c166d03a673e515131c2bb8777de308c0637ce.tar.gz coreclr-23c166d03a673e515131c2bb8777de308c0637ce.tar.bz2 coreclr-23c166d03a673e515131c2bb8777de308c0637ce.zip |
Fix enregistered max size constants on Unix AMD64 (#7117)
This change fixes ENREGISTERED_PARAMTYPE_MAXSIZE and ENREGISTERED_RETURNTYPE_INTEGER_MAXSIZE
constants that were not updated properly for the Unix AMD64 ABI. The values are used
for Unix/AMD64 for marshalling and typedbyref parameters and our tests probably don't
execute those code paths with structs larger than 8 bytes.
-rw-r--r-- | src/vm/amd64/cgencpu.h | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/vm/amd64/cgencpu.h b/src/vm/amd64/cgencpu.h index 258ac38915..769f4029ee 100644 --- a/src/vm/amd64/cgencpu.h +++ b/src/vm/amd64/cgencpu.h @@ -65,14 +65,16 @@ EXTERN_C void FastCallFinalizeWorker(Object *obj, PCODE funcPtr); #define CACHE_LINE_SIZE 64 // Current AMD64 processors have 64-byte cache lines as per AMD64 optmization manual #define LOG2SLOT LOG2_PTRSIZE -#define ENREGISTERED_RETURNTYPE_INTEGER_MAXSIZE 8 // bytes -#define ENREGISTERED_PARAMTYPE_MAXSIZE 8 // bytes #ifdef UNIX_AMD64_ABI +#define ENREGISTERED_RETURNTYPE_INTEGER_MAXSIZE 16 // bytes +#define ENREGISTERED_PARAMTYPE_MAXSIZE 16 // bytes #define ENREGISTERED_RETURNTYPE_MAXSIZE 16 // bytes #define CALLDESCR_ARGREGS 1 // CallDescrWorker has ArgumentRegister parameter #define CALLDESCR_FPARGREGS 1 // CallDescrWorker has FloatArgumentRegisters parameter #else +#define ENREGISTERED_RETURNTYPE_INTEGER_MAXSIZE 8 // bytes +#define ENREGISTERED_PARAMTYPE_MAXSIZE 8 // bytes #define ENREGISTERED_RETURNTYPE_MAXSIZE 8 // bytes #define COM_STUBS_SEPARATE_FP_LOCATIONS #define CALLDESCR_REGTYPEMAP 1 |