Attached is a patch to enable multiversioning for alignment via a flag, -LNO:simd_peel_align=<on|off>, which peels candidate loops for alignment at compile time, leaving an original vector loop version and a modified vector loop version with a single iteration peeled to align candidate loads. A runtime check is made to see if the candidate load symbol(s) are aligned, in which case the peeled version is executed, otherwise the original is. This functionality is off by default.
Can a gate keeper review this code. Thanks, -Michael
align_peel.p
Description: align_peel.p
------------------------------------------------------------------------------ For Developers, A Lot Can Happen In A Second. Boundary is the first to Know...and Tell You. Monitor Your Applications in Ultra-Fine Resolution. Try it FREE! http://p.sf.net/sfu/Boundary-d2dvs2
_______________________________________________ Open64-devel mailing list Open64-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/open64-devel