Displaying 20 results from an estimated 400 matches similar to: "[LLVMdev] Heads up: MCRegisterInfo register list functions going away"
2007 Apr 23
2
[LLVMdev] Register based vector insert/extract
On Apr 23, 2007, at 1:43 PM, Christopher Lamb wrote:
> On Apr 23, 2007, at 1:17 PM, Christopher Lamb wrote:
>
>> On Apr 23, 2007, at 12:31 PM, Chris Lattner wrote:
>>
>>> On Mon, 23 Apr 2007, Christopher Lamb wrote:
>>>> How can one let the back end know how to insert and extract
>>>> elements of
>>>> a vector through sub-register
2016 Jul 19
2
Check sub register relations in RA
Hi there,
In my register allocator, I was trying to get the parent of a register in
ARM.
That is:
D0 <-> S0, S1.
Given S0, how am I able to get D0?
Thanks,
Xiaochu
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20160719/3cc73e78/attachment.html>
2007 Apr 23
0
[LLVMdev] Register based vector insert/extract
On Mon, 23 Apr 2007, Christopher Lamb wrote:
>>> The issue I'm having is that there is no extract/insert
>>> instruction in the ISA, it's simply based on using subregister
>>> operands in subsequent/preliminary instructions. At the pointer of
>>> custom lowering register allocation has not yet been done, so I
>>> don't have a way to
2013 May 24
0
[LLVMdev] Avoiding MCRegAliasIterator with register units
Jakob,
I've implemented a patch that reworks the MCRegAliasIterator to dynamically compute the register aliases. The size reduction in the RegDiffLists are rather dramatic.
Here are a few size differences for MCTargetDesc.o files (before and after) in bytes:
R600 - 36160B - 11184B - 69% reduction
ARM - 28480B - 8368B - 71% reduction
Mips - 816B - 576B - 29% reduction
One side effect of
2009 Oct 20
0
[LLVMdev] request for help writing a register allocator
<ccing llvmdev>
On Oct 20, 2009, at 12:46 PM, Susan Horwitz wrote:
> On Tue, 20 Oct 2009, Chris Lattner wrote:
>
>> Each virtual register has an assigned register class. However,
>> register classes relate to each other, and the machine IR also has
>> subreg references. For example, this is how X86 handles AL/AX/EAX/
>> RAX all aliasing each other. In
2013 May 22
2
[LLVMdev] Avoiding MCRegAliasIterator with register units
LLVM can model some quite complicated register banks now, and we even use registers to model some encoding constraints.
For example, a few ARM instructions like strexd have two register operands that must be an aligned pair of consecutive GPR registers (like r0, r1). This constraint is modeled with the GPRPair register class containing R0_R1, R2_R3, ... pseudo-registers.
Sometimes ISAs also
2007 Apr 04
0
[LLVMdev] Live intervals and aliasing registers problem
On Apr 3, 2007, at 3:45 PM, Christopher Lamb wrote:
>
>> Can you dump out the machine basic block? It should have an
>> implicit use of V4R0 at first ORI but it should not be marked kill.
>> If it is marked kill, then you need to walk LiveVariables.cpp to
>> find out why.
>
> Here is the beginning of the BB dump.
>
> entry (0x8503c80, LLVM BB @0x8501af0,
2007 Apr 03
2
[LLVMdev] Live intervals and aliasing registers problem
On Mar 27, 2007, at 3:25 PM, Evan Cheng wrote:
>
> On Mar 25, 2007, at 7:12 AM, Christopher Lamb wrote:
>
>> While beginning to add vector registers to a back end I came
>> across the following problem: as soon as I define two sets of
>> registers that have a many-to-one mapping the live interval pass
>> appears to double-kill the mapped-onto register. I
2018 Nov 03
2
llvm bug 36466 fix
Hi
I come across the following exception when I use the llvm-dwarfdump
-debug-info target_binary:
llvm-dwarfdump: /home/linux/llvm-7/llvm/lib/MC/MCRegisterInfo.cpp:87: int
llvm::MCRegisterInfo::getLLVMRegNum(unsigned int, bool) const: Assertion `I
!= M+Size && I->FromReg == RegNum && "Invalid RegNum"' failed.
Stack dump:
0. Program arguments:
2018 Nov 03
2
llvm bug 36466 fix
Hi Dave
I am not going to access any hardware. I am using clang to analysis the ARM
binaries. The binary is 483.xalancbmk in CPU SPEC2006. When I use the
optimization O0, no crash will occur. The crash occurs when I set
optimization level as O1,O2,O3 and Os.
If I have to recompile and rerun the tests. What version of llvm is
suggested. It would be better if anyone could provide the patch on this
2018 Nov 03
2
llvm bug 36466 fix
Hi Dave
Sorry, I meant the hardware you're using to compile LLVM - you mentioned it
took you a long time to rebuild it so it would be hard for you to
write/experiment on tests.
=============================
Compiling LLVM doesn't take me too much time(less than 2 hours). The
hardware is good enough and I am using interl E5 CPU. What I mean is that
it took me a long time to analysis the
2012 Sep 10
0
[LLVMdev] Assert in LiveInterval update
On Sep 10, 2012, at 2:26 AM, Lang Hames <lhames at gmail.com> wrote:
> I've got a good test case that I'm working on at the moment. I noticed something odd though: Is '0' a valid register unit? I'm seeing a LiveInterval with li->reg == 0 show up, which previously wasn't valid. We have a few checks around the place to disregard the '0' physreg - could
2012 Sep 12
1
[LLVMdev] Assert in LiveInterval update
Hi Jakob, Sergei,
I've updated getLastUseBefore in r163685. I'm still looking into a couple
of errors, but I suspect that these are due to my build configuration,
rather than the patch.
Sergei - could you let me know if this fixes your issue? Thanks again for
all of your work tracking this down.
> It is best to avoid the MCRegUnitRootIterator+MCSuperRegIterator
> combination
2010 Feb 26
2
[LLVMdev] RegisterScavenging on targets without subregisters
There's an assert at line 192, lib/CodeGen/RegisterScavenging.cpp that
appears to get tripped on targets that don't have subregisters defined:
bool SubUsed = false;
for (const unsigned *SubRegs = TRI->getSubRegisters(Reg);
unsigned SubReg = *SubRegs; ++SubRegs)
if (isUsed(SubReg)) {
SubUsed = true;
break;
}
2016 May 25
0
[GSoC 2016] Interprocedural Register Allocation - Introduction and Feedback
----- Original Message -----
> From: "vivek pandya" <vivekvpandya at gmail.com>
> To: "Hal Finkel" <hfinkel at anl.gov>
> Cc: "llvm-dev" <llvm-dev at lists.llvm.org>, "Matthias Braun"
> <matze at braunis.de>, "Mehdi Amini" <mehdi.amini at apple.com>, "Quentin
> Colombet" <qcolombet at
2016 Jul 10
2
Implementation of DWARF expression parser
Hi Frédéric and LLVM,
I managed to finally come back to this after quite a while. Frédéric, thank you very much for the pointer to your work; it’s saving me a lot of time!
Unfortunately, I am running into one issue that my knowledge isn’t complete enough to solve on my own yet. The description of D6771 reads, "It requires a few preliminary patches like landing D6243 and adding a
2009 Dec 07
1
[LLVMdev] 2.5 Regalloc Assert
I am hitting this assert in LLVM 2.5:
/// spillPhysRegAroundRegDefsUses - Spill the specified physical register
/// around all defs and uses of the specified interval.
void LiveIntervals::spillPhysRegAroundRegDefsUses(const LiveInterval &li,
unsigned PhysReg, VirtRegMap &vrm)
{
unsigned SpillReg = getRepresentativeReg(PhysReg);
for (const
2010 Feb 26
0
[LLVMdev] RegisterScavenging on targets without subregisters
Ugh. Management lobotomy kicked in. Need to RTFC better.
On Thu, Feb 25, 2010 at 6:18 PM, Scott Michel <scooter.phd at gmail.com> wrote:
> There's an assert at line 192, lib/CodeGen/RegisterScavenging.cpp that
> appears to get tripped on targets that don't have subregisters defined:
>
> bool SubUsed = false;
> for (const unsigned *SubRegs =
2016 May 25
2
[GSoC 2016] Interprocedural Register Allocation - Introduction and Feedback
On Wed, May 25, 2016 at 3:53 AM, Hal Finkel <hfinkel at anl.gov> wrote:
>
> ------------------------------
>
> *From: *"vivek pandya" <vivekvpandya at gmail.com>
> *To: *"Quentin Colombet" <qcolombet at apple.com>
> *Cc: *"Hal Finkel" <hfinkel at anl.gov>, "llvm-dev" <llvm-dev at lists.llvm.org>,
>
2016 May 25
0
[GSoC 2016] Interprocedural Register Allocation - Introduction and Feedback
Dear Mentors,
Please help me to understand our plan to implement Interprocedural Register
allocator by propogating register usage info. While writing this mail I am
considering all previous discussion over llvm-dev and IRC.
1) A MachineFunction pass to be executed POST-RA to collect the information
about the used Registers.
2) An Immutable pass which will store reg usage info collected by