search for: isscal

Displaying 9 results from an estimated 9 matches for "isscal".

Did you mean: isical
2005 Jul 01
0
[LLVMdev] X86AsmPrinter + MASM and NASM backends
...pp files for how they are written as examples. 3. Please #include X86ASmPrinter.h first in X86asmPrinter.cpp (see the coding standard for justification). This will expose the fact that the .h file needs some #includes to be self contained. 4. I think it would be a good idea to make the isScale/isMem methods inline in the header file, even if that means more #includes are needed in the .h file. These are pretty performance sensitive for the printers, so it would be good for them to be inlined. 5. Please add #include guards around the headers (#ifndef XX_H/#define XX_H),...
2019 Jun 24
2
RFC: Interface user provided vector functions with the vectorizer.
For example, Type 2 case, scalar-foo used call by value while vector-foo used call by ref. The question Johannes is asking is whether we can decipher that after the fact, only by looking at the two function signatures, or need some more info (what kind, what's minimal)? I think we need to list up cases of interest, and for each vector ABI of interest, we need to work on the requirements and
2020 Mar 09
8
[RFC] Refactor class hierarchy of VectorType in the IR
...inherit from SequentialType. An example of what this will look like, with some misc. functions omitted for clarity: class VectorType : public Type { public: static VectorType *get(Type *ElementType, ElementCount EC); Type *getElementType() const; ElementCount getElementCount() const; bool isScalable() const; }; class FixedVectorType : public VectorType, public SequentialType { public: static FixedVectorType *get(Type *ElementType, unsigned NumElts); }; class SequentialType : public CompositeType { public: uint64_t getNumElements() const { return NumElements; } }; In t...
2005 Jun 30
4
[LLVMdev] X86AsmPrinter + MASM and NASM backends
I have "refactored" the X86AsmPrinter into a number of files ready for the MASM and NASM backends to be added. There is a new namespace llvm::X86 to replace the anomonous namespace as this does not work accross mutiple .h and .cpp files. Other than that everything is pritty straight forward, t may possibly need tweeking though. It has been built under MS VS2003, but I am not sure how
2020 Apr 22
2
[Update][RFC] Refactor class hierarchy of VectorType in the IR
...inherit from SequentialType. An example of what this will look like, with some misc. functions omitted for clarity: class VectorType : public Type { public: static VectorType *get(Type *ElementType, ElementCount EC); Type *getElementType() const; ElementCount getElementCount() const; bool isScalable() const; }; class FixedVectorType : public VectorType, public SequentialType { public: static FixedVectorType *get(Type *ElementType, unsigned NumElts); }; class SequentialType : public CompositeType { public: uint64_t getNumElements() const { return NumElements; } }; In t...
2020 May 05
2
[Update][RFC] Refactor class hierarchy of VectorType in the IR
...with some misc. functions omitted for clarity: > > class VectorType : public Type { > > public: > > static VectorType *get(Type *ElementType, ElementCount EC); > > > > Type *getElementType() const; > > ElementCount getElementCount() const; > > bool isScalable() const; > > }; > > > > class FixedVectorType : public VectorType, public SequentialType { > > public: > > static FixedVectorType *get(Type *ElementType, unsigned NumElts); > > }; > > > > class SequentialType : public CompositeType { > > p...
2019 Jun 24
2
RFC: Interface user provided vector functions with the vectorizer.
...attached to each parameter and describes things like uniformity, linearity (with and without modifiers). The list of parameter types is then stored in the VectorFunctionShape: struct VectorFunctionShape { unsigned VF; // Vectorization factor bool IsMasked; bool IsScalable; ISAKind ISA; std::vector<ParamType> Parameters; }; Here OpenMP is used to classify the parameter types (OMP_*), but nothing prevents the ParamKind and the VectorFunctionShape to be extended to be able to handle other vector paradigms. I think that we have to han...
2020 May 21
3
[RFC] Refactor class hierarchy of VectorType in the IR
...o longer inherit from SequentialType. An example of what this will look like, with some misc. functions omitted for clarity: class VectorType : public Type { public: static VectorType *get(Type *ElementType, ElementCount EC); Type *getElementType() const; ElementCount getElementCount() const; bool isScalable() const; }; class FixedVectorType : public VectorType, public SequentialType { public: static FixedVectorType *get(Type *ElementType, unsigned NumElts); }; class SequentialType : public CompositeType { public: uint64_t getNumElements() const { return NumElements; } }; In this proposed archite...
2016 Nov 04
2
[RFC] Supporting ARM's SVE in LLVM
...vector types without knowing their exact length. ## IR Interface: ```cpp static VectorType *get(Type *ELType, ElementCount EC); // Legacy interface whilst code is migrated. static VectorType *get(Type *ElType, unsigned NumEls, bool Scalable=false); ElementCount getElementCount(); bool isScalable(); ``` ## IR Textual Form: The textual IR for vectors becomes: `<[n x] <m> x <type>>` where `type` is the scalar type of each element, `m` corresponds to `Min` and the optional string literal `n x ` signifies `Scalable` is *true* when present, false otherwise. The textual...