[llvm-dev] error:Ran out of lanemask bits to represent subregisterr

Craig Topper via llvm-dev llvm-dev at lists.llvm.org
Wed Jul 19 12:08:54 PDT 2017


Did you change the hardcoded 32 right before the line that prints that
error in CodeGenRegisters.cpp to 64?

~Craig

On Wed, Jul 19, 2017 at 11:38 AM, hameeza ahmed <hahmed2305 at gmail.com>
wrote:

> Thank You.
>
> I have replaced all the occurrences of unsigned with uint64_t in
> Lanemask.h and in all other related files like codegenregisters.cpp,
> codegenregisters.h, MIParser.cpp etc... Also i changed Log2_32 to Log2_64
> and replaced 4 with 8 in  codegenregisters.cpp, but still getting the same
> error:
>
>
> error:Ran out of lanemask bits to represent subregister
> sub_32768bit_hi_then_sub_16384bit_hi_then_sub_8192bit_hi_then
> _sub_4096bit_hi_then_sub_2048bit_hi_then_sub_32bit_hi_then
>
> Now what to do?
>
> Please help.
>
>
> On Wed, Jul 19, 2017 at 5:57 PM, Krzysztof Parzyszek <
> kparzysz at codeaurora.org> wrote:
>
>> Hi,
>> The LaneBitmask is implemented in include/llvm/MC/LaneBitmask.h.  You
>> will need to change the underlying type and the associated member functions.
>> If you have a large number of lanes, you will need to replace it with a
>> type that can contain as many independent bits as you need (BitVector would
>> be an ultimate solution).  You may run into some problems with the uses of
>> the member function "getAsInteger", but you can change those to something
>> equivalent according to the type you use.
>>
>> -Krzysztof
>>
>>
>> On 7/19/2017 3:51 AM, hameeza ahmed wrote:
>>
>>> Hello,
>>> Mr. krzysztof I have seen similar question asked by you on llvm group.
>>> Could you please help me here to address this issue.
>>>
>>> i am trying to construct a register of size 65536 bit by combining 2
>>> registers of 32768 bits. both the 32768 bit registers are different so i
>>> have to use the following method
>>>
>>> let SubRegIndices = [sub_32768bit, sub_32768bit_hi], CoveredBySubRegs =
>>> 1 in
>>>
>>> but i am getting following error..
>>>
>>> error:Ran out of lanemask bits to represent subregister
>>> sub_32768bit_hi_then_sub_16384bit_hi_then_sub_8192bit_hi_the
>>> n_sub_4096bit_hi_then_sub_2048bit_hi_then_sub_32bit_hi_then
>>>
>>> now how to increase lanemask bits? what changes are required??
>>>
>>>
>>> Kindly help.
>>>
>>>
>>>
>>>
>>>
>> --
>> Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum, hosted
>> by The Linux Foundation
>>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20170719/c99b7ab7/attachment.html>


More information about the llvm-dev mailing list