Size and alignment requirements of stack values =============================================== P ... System.IntPtr I1 ... System.Int8 I2 ... System.Int16 I4 ... System.Int32 I8 ... System.Int64 F ... System.Single D ... System.Double LD ... native long double ----------------------------------------------------------- ARCH | P | I1 | I2 | I4 | I8 | F | D | LD | ----------------------------------------------------------- X86 | 4/4 | 4/4 | 4/4 | 4/4 | 8/4 | 4/4 | 8/4 |12/4 | ----------------------------------------------------------- X86/W32 | 4/4 | 4/4 | 4/4 | 4/4 | 8/4 | 4/4 | 8/4 |12/4 | ----------------------------------------------------------- ARM | 4/4 | 4/4 | 4/4 | 4/4 | 8/4 | 4/4 | 8/4 | 8/4 | ----------------------------------------------------------- M68K | 4/4 | 4/4 | 4/4 | 4/4 | 8/4 | 4/4 | 8/4 |12/4 | ----------------------------------------------------------- ALPHA | 8/8 | 8/8 | 8/8 | 8/8 | 8/8 | 8/8 | 8/8 | 8/8 | ----------------------------------------------------------- SPARC | 4/4 | 4/4 | 4/4 | 4/4 | 8/8 | 4/4 | 8/8 |16/8 | ----------------------------------------------------------- SPARC64 | 8/8 | 8/8 | 8/8 | 8/8 | 8/8 | 8/8 | 8/8 |16/16| ----------------------------------------------------------- MIPS | 4/4 | 4/4 | 4/4 | 4/4 | ?/? | 4/4 | 8/8 | 8/8 | ----------------------------------------------------------- | | | | | | | | | -----------------------------------------------------------