Hi,

This patch add these missing intrinsics:
_xsetbv
_xgetbv

gcc/
        * config/i386/i386-builtin-types.def (VOID_FTYPE_INT_INT64): New type.
        * config/i386/i386-builtin.def (__builtin_ia32_xgetbv,
        __builtin_ia32_xsetbv): New builtins.
        * config/i386/i386.c (ix86_expand_special_args_builtin): Process new 
type.
        (ix86_expand_builtin): Special expand for new intrinsics.
        * config/i386/i386.md: (UNSPECV_XGETBV, UNSPECV_XSETBV): New.
        (xsetbv, xsetbv_rex64, xgetbv, xgetbv_rex64): New patterns.
        * config/i386/xsaveintrin.h (_xsetbv, _getbv): New intrinsics.

gcc/testsuite
        * gcc.target/i386/xgetsetbv.c: New test.

Ok for trunk?

Thanks,
Julia

Attachment: xgetbv_patch
Description: xgetbv_patch

Reply via email to