ABM intrinsics file.

* config/i386/abmintrin.h: New.
	 * config/i386/i386-c.c (ix86_target_macros_internal): Defined __ABM__.
	 * config/i386/x86intrin.h: Include abmintrin.h when __ABM__ is defined.

From-SVN: r154893
This commit is contained in:
Sebastian Pop 2009-12-02 05:47:26 +00:00 committed by Sebastian Pop
parent 6d518d3b72
commit 13c0eb433c
4 changed files with 48 additions and 0 deletions

View File

@ -1,3 +1,9 @@
2009-12-01 Sebastian Pop <sebastian.pop@amd.com>
* config/i386/abmintrin.h: New.
* config/i386/i386-c.c (ix86_target_macros_internal): Defined __ABM__.
* config/i386/x86intrin.h: Include abmintrin.h when __ABM__ is defined.
2009-12-01 Uros Bizjak <ubizjak@gmail.com>
* config/i386/i386.md (SWI124): Rename from CRC32MODE.

View File

@ -0,0 +1,36 @@
/* Copyright (C) 2009 Free Software Foundation, Inc.
This file is part of GCC.
GCC is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 3, or (at your option)
any later version.
GCC is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
Under Section 7 of GPL version 3, you are granted additional
permissions described in the GCC Runtime Library Exception, version
3.1, as published by the Free Software Foundation.
You should have received a copy of the GNU General Public License and
a copy of the GCC Runtime Library Exception along with this program;
see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
<http://www.gnu.org/licenses/>. */
#ifndef _X86INTRIN_H_INCLUDED
# error "Never use <abmintrin.h> directly; include <x86intrin.h> instead."
#endif
#ifndef __ABM__
# error "ABM instruction set not enabled"
#endif /* __ABM__ */
#ifndef _ABMINTRIN_H_INCLUDED
#define _ABMINTRIN_H_INCLUDED
#endif /* _ABMINTRIN_H_INCLUDED */

View File

@ -236,6 +236,8 @@ ix86_target_macros_internal (int isa_flag,
def_or_undef (parse_in, "__XOP__");
if (isa_flag & OPTION_MASK_ISA_LWP)
def_or_undef (parse_in, "__LWP__");
if (isa_flag & OPTION_MASK_ISA_ABM)
def_or_undef (parse_in, "__ABM__");
if ((fpmath & FPMATH_SSE) && (isa_flag & OPTION_MASK_ISA_SSE))
def_or_undef (parse_in, "__SSE_MATH__");
if ((fpmath & FPMATH_SSE) && (isa_flag & OPTION_MASK_ISA_SSE2))

View File

@ -77,4 +77,8 @@
#include <lwpintrin.h>
#endif
#ifdef __ABM__
#include <abmintrin.h>
#endif
#endif /* _X86INTRIN_H_INCLUDED */