[vector] Intrinsics for resize and tests
Lupusoru, Razvan A
razvan.a.lupusoru at intel.com
Wed Apr 4 21:54:00 UTC 2018
I have added the x86 implementation for resize and it generates pretty efficient code. In case of upsizing, it zeros out larger register and simply generates a move. In case of downsizing, it generates a simple move. In case of no size change, it generates nothing.
I have also added appropriate tests for resize. Because C2 requires effectively monomorphic types for successful intrinsification, the species are not generated automatically but instead explicitly passed in. However, the tests currently fail due to an issue in C2 from merging phis of different vector sizes - and I need Vladimir's assistance in root causing and fixing that issue. That said, if I comment out code and test only one type transition at a time, everything works correctly.
Please let me know if you have any comments. Thanks!
More information about the panama-dev