source: icGREP/icgrep-devel/icgrep/IR_Gen/idisa_i64_builder.h @ 6105

Last change on this file since 6105 was 6105, checked in by cameron, 15 months ago

NativeBitWidth? for idisa_builders, laneWidth replaces stride

File size: 884 bytes
RevLine 
[4944]1#ifndef IDISA_I64_BUILDER_H
2#define IDISA_I64_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 *  icgrep is a trademark of International Characters.
8 */
[5238]9#include <IR_Gen/idisa_builder.h>
[4944]10
11namespace IDISA {
12
[5435]13class IDISA_I64_Builder : public virtual IDISA_Builder {
[4944]14public:
[6105]15    const unsigned NativeBitBlockWidth = 64;
[4944]16 
[6105]17    IDISA_I64_Builder(llvm::LLVMContext & C, unsigned bitBlockWidth, unsigned laneWidth)
18    : IDISA_Builder(C, NativeBitBlockWidth, bitBlockWidth, laneWidth) {
[5425]19
[4944]20    } 
[5425]21
[5374]22    virtual std::string getBuilderUniqueName() override;
[5217]23
[5464]24    llvm::Value * hsimd_packh(unsigned fw, llvm::Value * a, llvm::Value * b) override;
25    llvm::Value * hsimd_packl(unsigned fw, llvm::Value * a, llvm::Value * b) override;
[5217]26    ~IDISA_I64_Builder() {}
[4944]27
28};
29
30}
31
32#endif // IDISA_I64_BUILDER_H
Note: See TracBrowser for help on using the repository browser.