OSDN Git Service

ABM intrinsics file.
authorspop <spop@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 2 Dec 2009 05:47:26 +0000 (05:47 +0000)
committerspop <spop@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 2 Dec 2009 05:47:26 +0000 (05:47 +0000)
 * 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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@154893 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/ChangeLog
gcc/config/i386/abmintrin.h [new file with mode: 0644]
gcc/config/i386/i386-c.c
gcc/config/i386/x86intrin.h

index 08a0972..0125322 100644 (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.
diff --git a/gcc/config/i386/abmintrin.h b/gcc/config/i386/abmintrin.h
new file mode 100644 (file)
index 0000000..6c77b3c
--- /dev/null
@@ -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 */
index 5a5311f..cba9ceb 100644 (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))
index ac7e21f..63252bf 100644 (file)
@@ -77,4 +77,8 @@
 #include <lwpintrin.h>
 #endif
 
+#ifdef __ABM__
+#include <abmintrin.h>
+#endif
+
 #endif /* _X86INTRIN_H_INCLUDED */