/usr/i686-w64-mingw32/include/ivec.h is in mingw-w64-i686-dev 2.0.3-1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 | /**
* This file has no copyright assigned and is placed in the Public Domain.
* This file is part of the w64 mingw-runtime package.
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
*/
#ifndef _IVEC_H_INCLUDED
#define _IVEC_H_INCLUDED
#ifndef RC_INVOKED
#if !defined __cplusplus
#error This file is only supported in C++ compilations!
#endif
#include <intrin.h>
#include <assert.h>
#include <dvec.h>
#include <_mingw.h>
#pragma pack(push,_CRT_PACKING)
#if defined(_ENABLE_VEC_DEBUG)
#include <iostream>
#endif
#pragma pack(pop)
#ifdef __SSE__
#define _MM_QW (*((__int64*)&vec))
#pragma pack(push,16)
class M64
{
protected:
__m64 vec;
public:
M64() {}
M64(__m64 mm) { vec = mm; }
M64(__int64 mm) { _MM_QW = mm; }
M64(int i) { vec = _m_from_int(i); }
operator __m64() const { return vec; }
M64& operator&=(const M64 &a) { return *this = (M64) _m_pand(vec,a); }
M64& operator|=(const M64 &a) { return *this = (M64) _m_por(vec,a); }
M64& operator^=(const M64 &a) { return *this = (M64) _m_pxor(vec,a); }
};
#pragma pack(pop)
#endif /* ifdef __SSE__ */
#endif
#endif
|