<div dir="ltr">Hello, As craig said I managed to do it with the modifications in the 3 files. The modified files are attached here.</div><div class="gmail_extra"><br><div class="gmail_quote">On Thu, Jul 20, 2017 at 5:49 PM, Krzysztof Parzyszek <span dir="ltr"><<a href="mailto:kparzysz@codeaurora.org" target="_blank">kparzysz@codeaurora.org</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">So is everything working now?<br>
<br>
What changes exactly did you have to make?<br>
<br>
-Krzysztof<span class=""><br>
<br>
On 7/20/2017 3:16 AM, hameeza ahmed wrote:<br>
</span><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class="">
Thank you so much Craig<br>
You are fantastic.<br>
The problem is solved by your mentioned solutions.<br>
<br>
Thank you Krzysztof for your sincere help.<br>
<br>
Thanks alot<br>
<br></span><span class="">
On Thu, Jul 20, 2017 at 11:27 AM, hameeza ahmed <<a href="mailto:hahmed2305@gmail.com" target="_blank">hahmed2305@gmail.com</a> <mailto:<a href="mailto:hahmed2305@gmail.com" target="_blank">hahmed2305@gmail.com</a>>> wrote:<br>
<br>
    Hello Krzysztof,<br>
    The R_CASS definition is as follows:<br>
<br>
    class R_CASS<string n, bits<16> Enc,   list<Register> subregs = []><br>
    : Register<n> {<br>
<br>
    let Namespace = "X86";<br>
    let HWEncoding = Enc;<br>
       let SubRegs = subregs;<br>
    }<br>
<br>
<br>
<br>
    On Thu, Jul 20, 2017 at 4:14 AM, Krzysztof Parzyszek<br></span><span class="">
    <<a href="mailto:kparzysz@codeaurora.org" target="_blank">kparzysz@codeaurora.org</a> <mailto:<a href="mailto:kparzysz@codeaurora.org" target="_blank">kparzysz@codeaurora.or<wbr>g</a>>> wrote:<br>
<br>
        I tried reproducing the problem, but the file doesn't have<br>
        everything I need (the class R_CLASS is not defined for example).<br>
<br>
        Craig's getLane patch fixes the shifts, but if you want to use a<br>
        larger type than uint64_t, there is more work to do. I'll try to<br>
        come up with something tomorrow.<br>
<br>
        -Krzysztof<br>
<br>
        On 7/19/2017 5:08 PM, hameeza ahmed wrote:<br>
<br>
            My code is attached here. I m trying to add in x86 for my<br>
            target in this initial phase. Maybe later i will use<br>
            separate target.<br>
<br>
            On Jul 19, 2017 10:04 PM, "Krzysztof Parzyszek"<br>
            <<a href="mailto:kparzysz@codeaurora.org" target="_blank">kparzysz@codeaurora.org</a> <mailto:<a href="mailto:kparzysz@codeaurora.org" target="_blank">kparzysz@codeaurora.or<wbr>g</a>><br></span><span class="">
            <mailto:<a href="mailto:kparzysz@codeaurora.org" target="_blank">kparzysz@codeaurora.or<wbr>g</a><br>
            <mailto:<a href="mailto:kparzysz@codeaurora.org" target="_blank">kparzysz@codeaurora.or<wbr>g</a>>>> wrote:<br>
<br></span><div><div class="h5">
                 Could you share your .td file?<br>
<br>
                 Also, could you generate the .inc file by hand and show<br>
            the output?<br>
<br>
                 You could use something like this to generate it:<br>
                 llvm-tblgen -gen-register-info<br>
            -I.../lib/Target/<your-target><br>
                 -I.../lib/Target -I.../include/llvm/Target<br>
            <your-target>.td -o -<br>
<br>
                 What is the relationship of your target with X86?  Are<br>
            you trying to<br>
                 add something to it, or are you working on a separate<br>
            target?<br>
<br>
                 -Krzysztof<br>
<br>
                 On 7/19/2017 4:47 PM, hameeza ahmed wrote:<br>
<br>
                     I have made changes in 3 files:<br>
                     LaneBitmask.h, codegenregisters.cpp and<br>
            miparser.cpp. files are<br>
                     attached here.<br>
<br>
                     Now i am getting following errors. which means<br>
            registerinfo.inc<br>
                     file is not generated successfully.<br>
<br>
                                /PIM/lib/Target/X86/MCTargetDe<wbr>sc/X86BaseInfo.h:733:24: error:<br>
                             no member named 'XMM8' in namespace 'llvm::X86'<br>
                           if ((RegNo >= X86::XMM8 && RegNo <=<br>
            X86::XMM31) ||<br>
<br>
<br>
                     fatal error: too many errors emitted, stopping now<br>
            [-ferror-limit=]<br>
                     20 errors generated.<br>
<br>
                     When i comment out the line to construct 65536 bit<br>
            register in<br>
            <a href="http://registerinfo.td" rel="noreferrer" target="_blank">registerinfo.td</a> <<a href="http://registerinfo.td" rel="noreferrer" target="_blank">http://registerinfo.td</a>><br>
            <<a href="http://registerinfo.td" rel="noreferrer" target="_blank">http://registerinfo.td</a>><br>
                     <<a href="http://registerinfo.td" rel="noreferrer" target="_blank">http://registerinfo.td</a>>. it run fine.<br>
<br>
                     What to do?<br>
<br>
                     On Thu, Jul 20, 2017 at 2:36 AM, Krzysztof Parzyszek<br>
                     <<a href="mailto:kparzysz@codeaurora.org" target="_blank">kparzysz@codeaurora.org</a><br>
            <mailto:<a href="mailto:kparzysz@codeaurora.org" target="_blank">kparzysz@codeaurora.or<wbr>g</a>><br>
            <mailto:<a href="mailto:kparzysz@codeaurora.org" target="_blank">kparzysz@codeaurora.or<wbr>g</a><br>
            <mailto:<a href="mailto:kparzysz@codeaurora.org" target="_blank">kparzysz@codeaurora.or<wbr>g</a>>><br></div></div><div><div class="h5">
                     <mailto:<a href="mailto:kparzysz@codeaurora.org" target="_blank">kparzysz@codeaurora.o<wbr>rg</a><br>
            <mailto:<a href="mailto:kparzysz@codeaurora.org" target="_blank">kparzysz@codeaurora.or<wbr>g</a>><br>
                     <mailto:<a href="mailto:kparzysz@codeaurora.org" target="_blank">kparzysz@codeaurora.o<wbr>rg</a><br>
            <mailto:<a href="mailto:kparzysz@codeaurora.org" target="_blank">kparzysz@codeaurora.or<wbr>g</a>>>>> wrote:<br>
<br>
                          Those couldn't be done generically, that's why<br>
            the asserts<br>
                     were added.<br>
<br>
                          -Krzysztof<br>
<br>
                          On 7/19/2017 4:30 PM, Craig Topper wrote:<br>
<br>
                              What about the static asserts protecting a<br>
            Log call and<br>
                     another<br>
                              in the parser?<br>
<br>
                              On Wed, Jul 19, 2017 at 2:26 PM Krzysztof<br>
            Parzyszek<br>
                              <<a href="mailto:kparzysz@codeaurora.org" target="_blank">kparzysz@codeaurora.org</a><br>
            <mailto:<a href="mailto:kparzysz@codeaurora.org" target="_blank">kparzysz@codeaurora.or<wbr>g</a>><br>
                     <mailto:<a href="mailto:kparzysz@codeaurora.org" target="_blank">kparzysz@codeaurora.o<wbr>rg</a><br>
            <mailto:<a href="mailto:kparzysz@codeaurora.org" target="_blank">kparzysz@codeaurora.or<wbr>g</a>>><br>
            <mailto:<a href="mailto:kparzysz@codeaurora.org" target="_blank">kparzysz@codeaurora.or<wbr>g</a> <mailto:<a href="mailto:kparzysz@codeaurora.org" target="_blank">kparzysz@codeaurora.or<wbr>g</a>><br>
                     <mailto:<a href="mailto:kparzysz@codeaurora.org" target="_blank">kparzysz@codeaurora.o<wbr>rg</a><br>
            <mailto:<a href="mailto:kparzysz@codeaurora.org" target="_blank">kparzysz@codeaurora.or<wbr>g</a>>>><br>
                              <mailto:<a href="mailto:kparzysz@codeaurora.org" target="_blank">kparzysz@codeaurora.or<wbr>g</a><br>
            <mailto:<a href="mailto:kparzysz@codeaurora.org" target="_blank">kparzysz@codeaurora.or<wbr>g</a>><br>
                     <mailto:<a href="mailto:kparzysz@codeaurora.org" target="_blank">kparzysz@codeaurora.o<wbr>rg</a><br>
            <mailto:<a href="mailto:kparzysz@codeaurora.org" target="_blank">kparzysz@codeaurora.or<wbr>g</a>>><br>
                              <mailto:<a href="mailto:kparzysz@codeaurora.org" target="_blank">kparzysz@codeaurora.or<wbr>g</a><br>
            <mailto:<a href="mailto:kparzysz@codeaurora.org" target="_blank">kparzysz@codeaurora.or<wbr>g</a>><br>
                     <mailto:<a href="mailto:kparzysz@codeaurora.org" target="_blank">kparzysz@codeaurora.o<wbr>rg</a><br>
            <mailto:<a href="mailto:kparzysz@codeaurora.org" target="_blank">kparzysz@codeaurora.or<wbr>g</a>>>>>> wrote:<br>
<br>
                                   On 7/19/2017 4:18 PM, Craig Topper wrote:<br>
                                    > LaneMask isn't as self contained<br>
            as it should<br>
                     be. 64<br>
                              bits is enough<br>
                                    > here. The problem is accidental<br>
            leaking of the<br>
                     current size.<br>
                                    ><br>
                                    > For example there was a hard coded<br>
            compare with<br>
                     32 in<br>
                              tablegen<br>
                                   until I<br>
                                    > fixed it recently.<br>
<br>
                                   This is most likely the only<br>
            example.  I actually<br>
                     tested it<br>
                              with<br>
                                   uint64_t (but without exceeding 32<br>
            lanes).<br>
<br>
                                   -Krzysztof<br>
<br>
                                   --<br>
                                   Qualcomm Innovation Center, Inc. is a<br>
            member of<br>
                     Code Aurora<br>
                              Forum,<br>
                                   hosted by The Linux Foundation<br>
<br>
                              --         ~Craig<br>
<br>
<br>
                          --     Qualcomm Innovation Center, Inc. is a<br>
            member of Code<br>
                     Aurora Forum,<br>
                          hosted by The Linux Foundation<br>
<br>
<br>
<br>
                 --     Qualcomm Innovation Center, Inc. is a member of<br>
            Code Aurora Forum,<br>
                 hosted by The Linux Foundation<br>
<br>
<br>
            <<a href="http://www.avg.com/email-signature?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=emailclient" rel="noreferrer" target="_blank">http://www.avg.com/email-sign<wbr>ature?utm_medium=email&utm_<wbr>source=link&utm_campaign=sig-<wbr>email&utm_content=emailclient</a><br>
            <<a href="http://www.avg.com/email-signature?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=emailclient" rel="noreferrer" target="_blank">http://www.avg.com/email-sign<wbr>ature?utm_medium=email&utm_<wbr>source=link&utm_campaign=sig-<wbr>email&utm_content=emailclient</a>><wbr>>                Virus-free. <a href="http://www.avg.com" rel="noreferrer" target="_blank">www.avg.com</a> <<a href="http://www.avg.com" rel="noreferrer" target="_blank">http://www.avg.com</a>><br></div></div>
            <<a href="http://www.avg.com/email-signature?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=emailclient" rel="noreferrer" target="_blank">http://www.avg.com/email-sign<wbr>ature?utm_medium=email&utm_<wbr>source=link&utm_campaign=sig-<wbr>email&utm_content=emailclient</a><br>
            <<a href="http://www.avg.com/email-signature?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=emailclient" rel="noreferrer" target="_blank">http://www.avg.com/email-sign<wbr>ature?utm_medium=email&utm_<wbr>source=link&utm_campaign=sig-<wbr>email&utm_content=emailclient</a>><wbr>><br>
<br>
<br>
            <#DAB4FAD8-2DD7-40BB-A1B8-4E2A<wbr>A1F9FDF2><br>
<br>
<br>
<br>
<br>
</blockquote><div class="HOEnZb"><div class="h5">
<br>
-- <br>
Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum, hosted by The Linux Foundation<br>
</div></div></blockquote></div><br></div>