diff options
author | Dan Albert <danalbert@google.com> | 2015-06-17 11:09:54 -0700 |
---|---|---|
committer | Dan Albert <danalbert@google.com> | 2015-06-17 14:15:22 -0700 |
commit | f378ebf14df0952eae870c9865bab8326aa8f137 (patch) | |
tree | 31794503eb2a8c64ea5f313b93100f1163afcffb /gcc-4.7/gcc/config/i386/wmmintrin.h | |
parent | 2c58169824949d3a597d9fa81931e001ef9b1bd0 (diff) | |
download | toolchain_gcc-f378ebf14df0952eae870c9865bab8326aa8f137.tar.gz toolchain_gcc-f378ebf14df0952eae870c9865bab8326aa8f137.tar.bz2 toolchain_gcc-f378ebf14df0952eae870c9865bab8326aa8f137.zip |
Delete old versions of GCC.
Change-Id: I710f125d905290e1024cbd67f48299861790c66c
Diffstat (limited to 'gcc-4.7/gcc/config/i386/wmmintrin.h')
-rw-r--r-- | gcc-4.7/gcc/config/i386/wmmintrin.h | 120 |
1 files changed, 0 insertions, 120 deletions
diff --git a/gcc-4.7/gcc/config/i386/wmmintrin.h b/gcc-4.7/gcc/config/i386/wmmintrin.h deleted file mode 100644 index 2c4bdc99a..000000000 --- a/gcc-4.7/gcc/config/i386/wmmintrin.h +++ /dev/null @@ -1,120 +0,0 @@ -/* Copyright (C) 2008, 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/>. */ - -/* Implemented from the specification included in the Intel C++ Compiler - User Guide and Reference, version 10.1. */ - -#ifndef _WMMINTRIN_H_INCLUDED -#define _WMMINTRIN_H_INCLUDED - -/* We need definitions from the SSE2 header file. */ -#include <emmintrin.h> - -#if !defined (__AES__) && !defined (__PCLMUL__) -# error "AES/PCLMUL instructions not enabled" -#else - -/* AES */ - -#ifdef __AES__ -/* Performs 1 round of AES decryption of the first m128i using - the second m128i as a round key. */ -extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__)) -_mm_aesdec_si128 (__m128i __X, __m128i __Y) -{ - return (__m128i) __builtin_ia32_aesdec128 ((__v2di)__X, (__v2di)__Y); -} - -/* Performs the last round of AES decryption of the first m128i - using the second m128i as a round key. */ -extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__)) -_mm_aesdeclast_si128 (__m128i __X, __m128i __Y) -{ - return (__m128i) __builtin_ia32_aesdeclast128 ((__v2di)__X, - (__v2di)__Y); -} - -/* Performs 1 round of AES encryption of the first m128i using - the second m128i as a round key. */ -extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__)) -_mm_aesenc_si128 (__m128i __X, __m128i __Y) -{ - return (__m128i) __builtin_ia32_aesenc128 ((__v2di)__X, (__v2di)__Y); -} - -/* Performs the last round of AES encryption of the first m128i - using the second m128i as a round key. */ -extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__)) -_mm_aesenclast_si128 (__m128i __X, __m128i __Y) -{ - return (__m128i) __builtin_ia32_aesenclast128 ((__v2di)__X, (__v2di)__Y); -} - -/* Performs the InverseMixColumn operation on the source m128i - and stores the result into m128i destination. */ -extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__)) -_mm_aesimc_si128 (__m128i __X) -{ - return (__m128i) __builtin_ia32_aesimc128 ((__v2di)__X); -} - -/* Generates a m128i round key for the input m128i AES cipher key and - byte round constant. The second parameter must be a compile time - constant. */ -#ifdef __OPTIMIZE__ -extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__)) -_mm_aeskeygenassist_si128 (__m128i __X, const int __C) -{ - return (__m128i) __builtin_ia32_aeskeygenassist128 ((__v2di)__X, __C); -} -#else -#define _mm_aeskeygenassist_si128(X, C) \ - ((__m128i) __builtin_ia32_aeskeygenassist128 ((__v2di)(__m128i)(X), \ - (int)(C))) -#endif -#endif /* __AES__ */ - -/* PCLMUL */ - -#ifdef __PCLMUL__ -/* Performs carry-less integer multiplication of 64-bit halves of - 128-bit input operands. The third parameter inducates which 64-bit - haves of the input parameters v1 and v2 should be used. It must be - a compile time constant. */ -#ifdef __OPTIMIZE__ -extern __inline __m128i __attribute__((__gnu_inline__, __always_inline__, __artificial__)) -_mm_clmulepi64_si128 (__m128i __X, __m128i __Y, const int __I) -{ - return (__m128i) __builtin_ia32_pclmulqdq128 ((__v2di)__X, - (__v2di)__Y, __I); -} -#else -#define _mm_clmulepi64_si128(X, Y, I) \ - ((__m128i) __builtin_ia32_pclmulqdq128 ((__v2di)(__m128i)(X), \ - (__v2di)(__m128i)(Y), (int)(I))) -#endif -#endif /* __PCLMUL__ */ - -#endif /* __AES__/__PCLMUL__ */ - -#endif /* _WMMINTRIN_H_INCLUDED */ |