Displaying 6 results from an estimated 6 matches for "csregs".
Did you mean:
sregs
2009 Mar 12
4
[LLVMdev] Shrink Wrapping - RFC and initial implementation
Hi John,
It looks pretty good. Thanks for working on this. Some comments:
1. Some of the functions that you introduced, e.g. stringifyCSRegSet
probably ought to be "static" and ifdef'ed out when NDEBUG is defined.
2. + // DEBUG
+ if (! MBB->empty() && ! CSRUsed[MBB].intersects(restore)) {
+ MachineInstr* MI = BeforeI;
+ DOUT << "adding restore after ";
+ DEBUG(MI...
2009 Mar 05
0
[LLVMdev] Shrink Wrapping - RFC and initial implementation
Here is an updated patch for shrink wrapping with:
- spills/restores done with stack slot stores/loads
- stack adjustment removed
- refactoring (but still in need of more)
- spill/restore insertion code unified with spill/restore placement code
Documentation available
here<http://wiki.github.com/jdmdj/llvm-work/shrink-wrapping-work>
illustrates shrink
wrapping with loops and discusses a
2009 Mar 03
2
[LLVMdev] Shrink Wrapping - RFC and initial implementation
On Mon, Mar 2, 2009 at 10:35 AM, Evan Cheng <echeng at apple.com> wrote:
>
> On Mar 1, 2009, at 2:57 PM, John Mosby wrote:
>
> Obviously, all of this applies only when spills are done with push/pop,
> which is the case on x86. I used this issue to start looking at generalizing
> how spills and restores are handled, before looking too closely at other
> targets, and
2009 Mar 13
0
[LLVMdev] Shrink Wrapping - RFC and initial implementation
...s very much for the review, I am implementing your suggestions today
and will have the next patch together this weekend.
A few questions/comments:
On Thu, Mar 12, 2009 at 10:05 AM, Evan Cheng <echeng at apple.com> wrote:
>
> 1. Some of the functions that you introduced, e.g. stringifyCSRegSet
> probably ought to be "static" and ifdef'ed out when NDEBUG is defined.
>
> 2. + // DEBUG
>
>
> + if (! MBB->empty() && ! CSRUsed[MBB].intersects(restore)) {
>
>
> + MachineInstr* MI = BeforeI;
>
>
> + DOUT <...
2009 Mar 18
1
[LLVMdev] Shrink Wrapping - RFC and initial implementation
...review, I am implementing your suggestions today
> and will have the next patch together this weekend.
> A few questions/comments:
> On Thu, Mar 12, 2009 at 10:05 AM, Evan Cheng <echeng at apple.com> wrote:
>>
>> 1. Some of the functions that you introduced, e.g. stringifyCSRegSet
>> probably ought to be "static" and ifdef'ed out when NDEBUG is defined.
>> 2. + // DEBUG
>>
>>
>> + if (! MBB->empty() && ! CSRUsed[MBB].intersects(restore)) {
>>
>>
>> + MachineInstr* MI = BeforeI;
>&g...
2015 Jan 11
3
[LLVMdev] [RFC] [PATCH] add tail call optimization to thumb1-only targets
...BBI to point to first LDR / VLDRD.
- if (MBBI != MBB.begin()) {
+ // Unwind MBBI to point to first LDR / VLDRD. Not for tail call returns!
+ if ((MBBI != MBB.begin()) && (!IsTailCallReturn)) {
do
--MBBI;
while (MBBI != MBB.begin() && isCSRestore(MBBI, CSRegs));
@@ -395,12 +402,119 @@
}
}
- bool IsV4PopReturn = false;
- for (const CalleeSavedInfo &CSI : MFI->getCalleeSavedInfo())
+ bool IsLRPartOfCalleeSavedInfo = false;
+
+ for (const CalleeSavedInfo &CSI : MFI->getCalleeSavedInfo()) {
if (CSI.getReg() == ARM::LR)
-...