source: icGREP/icgrep-devel/icgrep/IDISA/idisa_avx_builder.h @ 4892

Last change on this file since 4892 was 4892, checked in by cameron, 3 years ago

Move AVX2 specific IDISA function implementations into subclassed builder

File size: 732 bytes
RevLine 
[4892]1#ifndef IDISA_AVX_BUILDER_H
2#define IDISA_AVX_BUILDER_H
3
4/*
5 *  Copyright (c) 2015 International Characters.
6 *  This software is licensed to the public under the Open Software License 3.0.
7*/
8
9#include <IDISA/idisa_builder.h>
10
11using namespace llvm;
12
13namespace IDISA {
14
15class IDISA_AVX_Builder : public IDISA_Builder {
16public:
17   
18    IDISA_AVX_Builder(Type * bitBlockType) : IDISA_Builder(bitBlockType) {
19    }
20    ~IDISA_AVX_Builder() {};
21
22};
23
24class IDISA_AVX2_Builder : public IDISA_AVX_Builder {
25public:
26   
27    IDISA_AVX2_Builder(Type * bitBlockType) : IDISA_AVX_Builder(bitBlockType) {
28    }
29    Value * hsimd_signmask(unsigned fw, Value * a) override;
30
31    ~IDISA_AVX2_Builder() {};
32};
33   
34}
35#endif // IDISA_AVX_BUILDER_H
Note: See TracBrowser for help on using the repository browser.