[Bug libstdc++/77691] [7/8 regression] experimental/memory_resource/resource_adaptor.cc FAILs

ro at CeBiTec dot Uni-Bielefeld.DE gcc-bugzilla@gcc.gnu.org
Thu Mar 22 07:59:00 GMT 2018


https://gcc.gnu.org/bugzilla/show_bug.cgi?id=77691

--- Comment #13 from ro at CeBiTec dot Uni-Bielefeld.DE <ro at CeBiTec dot Uni-Bielefeld.DE> ---
> --- Comment #12 from joseph at codesourcery dot com <joseph at codesourcery
> dot com> ---
> On Wed, 21 Mar 2018, ro at CeBiTec dot Uni-Bielefeld.DE wrote:
>
>> Joseph, any suggestions?  You mentioned that older versions of glibc
>> didn't provide 16-byte alignment in i386 malloc; maybe there are other
>> systems with the same issue that could equally benefit from some fix?
>
> The fix in glibc was to increase malloc alignment for i386.  This is an 
> area where properly supporting a feature (_Float128 and _Decimal128, both 
> of which are 16-byte aligned on i386) requires cooperation between the 
> compiler and library - in this case, even without other library support 
> for those types, users can still legitimately expect memory from malloc to 
> be suitably aligned for them, and for max_align_t to have suitable 
> alignment for them.

I see.  So I'll go ahead and xfail the current testcase (unless Jonathan
prefers to move the failing max_align_t part to a separate testcase) and
pursue increasing i386 malloc alignment and the __float128 addition to
<stddef.h> max_align_t (for non-Studio compilers only, I guess) in Solaris.

Thanks.
        Rainer


More information about the Gcc-bugs mailing list