[llvm-dev] Using new types v32f32, v32f64 in llvm backend not possible
hameeza ahmed via llvm-dev
llvm-dev at lists.llvm.org
Tue Jul 11 12:49:52 PDT 2017
Thank you so much. it run fine.
Can you please resolve following issue;
I now have support for v2048i32
but my backend supports v64i32
so ultimately v2048i32 needs to be split into 32 v64i32 instructions. the
only difference between 2 is if its orginally v2048i32 i want my registers
assignment from REG_A set. if its v64i32 originally, then i want registers
from set REG_B.
How to accomplish this???
I am really stuck at this point.
Please guide me.
On Tue, Jul 11, 2017 at 6:20 PM, Hal Finkel <hfinkel at anl.gov> wrote:
> On 07/11/2017 03:22 AM, hameeza ahmed wrote:
>> i want to work with these types v32f32, v32f64.... in llvm which are
>> undefined in the backend?
>> But v32i32, v32i64 are already defined so i am able to use these.
>> but for other types such as v32f32, v32f64 although i have defined them
>> appropriately in all the files like machinevaluetype.h, valuetypes.cpp
>> etc. i have checked it many times but still getting the following error
>> when build in debug mode.
>> llvm-tblgen: /utils/TableGen/CodeGenDAGPatterns.cpp:57:
>> llvm::EEVT::TypeSet::TypeSet(MVT::SimpleValueType, llvm::TreePattern &):
>> Assertion `(VT < MVT::LAST_VALUETYPE || VT == MVT::iPTR || VT ==
>> MVT::iPTRAny || VT == MVT::Any) && "Not a concrete type!"' failed.
> Are you sure that you updated all of the enum values correctly, including
> updating MVT::LAST_VALUETYPE, etc., and also updated
>> What could be the reason?? please guide how to define new types in llvm
>> Thank You
> Hal Finkel
> Lead, Compiler Technology and Programming Languages
> Leadership Computing Facility
> Argonne National Laboratory
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the llvm-dev