[llvm-dev] 回复: how to bind hidden micro-architecture specific resource index to architecture resource index in tablegen
闯四野 闯四爷 via llvm-dev
llvm-dev at lists.llvm.org
Mon Jun 24 09:38:42 PDT 2019
hi, any friend also working on this? 🙂
________________________________
发件人: llvm-dev <llvm-dev-bounces at lists.llvm.org> 代表 闯四野 闯四爷 via llvm-dev <llvm-dev at lists.llvm.org>
发送时间: 2019年6月21日 16:56
收件人: LLVM Dev
主题: [llvm-dev] how to bind hidden micro-architecture specific resource index to architecture resource index in tablegen
Hi all LLVM expert,
I’m trying to ask how to bind hidden micro-architecture specific resource index to architecture resource index in tablegen
There may be instruction uses 1 sr and 1 vr as source operand (using index sr_src_idx, vr_src_idx), then uses 1 sr and 1 vr as destination (using index sr_dst_idx, vr_dst_idx). Additionally, this instruction trigger a write to a hidden resource whose index is same as the vr destination index (vr_dst_idx). The instruction's write to SR/VR/HR are with different latency, say 1/3/6. Example code are as below
Is there a way to describe this in tablegen? How to bind the index between hr and vr?
Scalar_Register sr[32]; //architecture visible resource
Vector_Register vr[32]; //architecture visible resource
Hidden_Resource hr[32]; //target specific micro-architecture resource, hidden from architecture but impact performance
//instruction info defined in ISA
(VR vr_dst_idx, SR sr_dst_idx) = instruciton_1 (VR vr_src_idx, SR sr_src_idx) ;
Chuang Feng
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20190624/94c85772/attachment.html>
More information about the llvm-dev
mailing list