[patch][Bug middle-end/33472] ICE and invalid rtl sharing with complex on
x86_64-mingw. 2007-09-24 Kai Tietz <kai.tietz@onevision.com> * i386.c: (return_in_memory_ms_64): Handle return types for complex types. From-SVN: r128710
This commit is contained in:
parent
40bc41879b
commit
996caac6da
|
@ -1,3 +1,7 @@
|
|||
2007-09-24 Kai Tietz <kai.tietz@onevision.com>
|
||||
|
||||
* i386.c: (return_in_memory_ms_64): Handle return types for complex types.
|
||||
|
||||
2007-09-23 H.J. Lu <hongjiu.lu@intel.com>
|
||||
|
||||
* configure.ac (ld_vers): Support GNU linker version xx.xx.*
|
||||
|
|
|
@ -4721,11 +4721,12 @@ return_in_memory_ms_64 (const_tree type, enum machine_mode mode)
|
|||
HOST_WIDE_INT size = int_size_in_bytes (type);
|
||||
|
||||
/* __m128 and friends are returned in xmm0. */
|
||||
if (size == 16 && VECTOR_MODE_P (mode))
|
||||
if (!COMPLEX_MODE_P (mode) && size == 16 && VECTOR_MODE_P (mode))
|
||||
return 0;
|
||||
|
||||
/* Otherwise, the size must be exactly in [1248]. */
|
||||
return (size != 1 && size != 2 && size != 4 && size != 8);
|
||||
/* Otherwise, the size must be exactly in [1248]. But not for complex. */
|
||||
return (size != 1 && size != 2 && size != 4 && size != 8)
|
||||
|| COMPLEX_MODE_P (mode);
|
||||
}
|
||||
|
||||
int
|
||||
|
|
Loading…
Reference in New Issue