sparc.md (UNSPEC_EDGE8, [...]): New unspecs.
* config/sparc/sparc.md (UNSPEC_EDGE8, UNSPEC_EDGE8L, UNSPEC_EDGE16, UNSPEC_EDGE16L, UNSPEC_EDGE32, UNSPEC_EDGE32L): New unspecs. (define_attr type): New type 'edge'. (edge8_vis, edge8l_vis, edge16_vis, edge16l_vis, edge32_vis, edge32l_vis): New patterns. * config/sparc/ultra1_2.md: Add insn reservation for 'edge'. * config/sparc/ultra3.md: Likewise. * config/sparc/niagara.md: Likewise. * config/sparc/niagara2.md: Likewise. * config/sparc/sparc.d (sparc_vis_init_builtins): Generate builtins for VIS edge instructions. * config/sparc/visintrin.h (__vis_edge8, __vis_edge8l) (__vis_edge16, __vis_edge16l, __vis_edge32, __vis_edge32l): New intrinsics. (__v8qi, __v4qi): Make unsigned. (__vis_faligndatadi, ___vis_faligndatav2si, __vis_faligndatav4hi, __vis_faligndatav8qi, __vis_fmul8x16au, __vis_fmul8x16al, __vis_fpack32): Fix types. * doc/extend.texi: Document new 'edge' VIS intrinsics. From-SVN: r178931
Showing
Please
register
or
sign in
to comment