<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="/rss.xsl.xml"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/">
<channel>
    <title>Changes in fast-isel-frameaddr.ll</title>
    <description></description>
    <language>en</language>
    <copyright>Copyright 2015</copyright>
    <generator>Java</generator><item>
        <title>9aa6f010 - [ARM] Generate consistent frame records for Thumb2</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/llvm/test/CodeGen/ARM/fast-isel-frameaddr.ll#9aa6f010</link>
        <description>[ARM] Generate consistent frame records for Thumb2There is not an official documented ABI for frame pointers in Thumb2,but we should try to emit something which is useful.We use r7 as the frame pointer for Thumb code, which currently meansthat if a function needs to save a high register (r8-r11), it will getpushed to the stack between the frame pointer (r7) and link register(r14). This means that while a stack unwinder can follow the chain offrame pointers up the stack, it cannot know the offset to lr, so doesnot know which functions correspond to the stack frames.To fix this, we need to push the callee-saved registers in two batches,with the first push saving the low registers, fp and lr, and the secondpush saving the high registers. This is already implemented, butpreviously only used for iOS. This patch turns it on for all Thumb2targets when frame pointers are required by the ABI, and the framepointer is r7 (Windows uses r11, so this isn&apos;t a problem there). Ifframe pointer elimination is enabled we still emit a single push/popeven if we need a frame pointer for other reasons, to avoid increasingcode size.We must also ensure that lr is pushed to the stack when using a framepointer, so that we end up with a complete frame record. Situations thatcould cause this were rare, because we already push lr in mostsituations so that we can return using the pop instruction.Differential Revision: https://reviews.llvm.org/D23516llvm-svn: 279506

            List of files:
            /llvm-project-15.0.7/llvm/test/CodeGen/ARM/fast-isel-frameaddr.ll</description>
        <pubDate>Tue, 23 Aug 2016 09:19:22 +0000</pubDate>
        <dc:creator>Oliver Stannard &lt;oliver.stannard@arm.com&gt;</dc:creator>
    </item>
<item>
        <title>945a660c - Change the fast-isel-abort option from bool to int to enable &quot;levels&quot;</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/llvm/test/CodeGen/ARM/fast-isel-frameaddr.ll#945a660c</link>
        <description>Change the fast-isel-abort option from bool to int to enable &quot;levels&quot;Summary:Currently fast-isel-abort will only abort for regular instructions,and just warn for function calls, terminators, function arguments.There is already fast-isel-abort-args but nothing for calls andterminators.This change turns the fast-isel-abort options into an integer option,so that multiple levels of strictness can be defined.This will help no being surprised when the &quot;abort&quot; option indeed doesnot abort, and enables the possibility to write test that verifiesthat no intrinsics are forgotten by fast-isel.Reviewers: resistor, echristoSubscribers: jfb, llvm-commitsDifferential Revision: http://reviews.llvm.org/D7941From: Mehdi Amini &lt;mehdi.amini@apple.com&gt;llvm-svn: 230775

            List of files:
            /llvm-project-15.0.7/llvm/test/CodeGen/ARM/fast-isel-frameaddr.ll</description>
        <pubDate>Fri, 27 Feb 2015 18:32:11 +0000</pubDate>
        <dc:creator>Mehdi Amini &lt;mehdi.amini@apple.com&gt;</dc:creator>
    </item>
<item>
        <title>d6a729bb - ARM MachO: sort out isTargetDarwin/isTargetIOS/... checks.</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/llvm/test/CodeGen/ARM/fast-isel-frameaddr.ll#d6a729bb</link>
        <description>ARM MachO: sort out isTargetDarwin/isTargetIOS/... checks.The ARM backend has been using most of the MachO related subtargetchecks almost interchangeably, and since the only target it&apos;s had torun on has been IOS (which is all three of MachO, Darwin and IOS) it&apos;sworked out OK so far.But we&apos;d like to support embedded targets under the &quot;*-*-none-macho&quot;triple, which means everything starts falling apart and inconsistentbehaviours emerge.This patch should pick a reasonably sensible set of behaviours for thenew triple (and any others that come along, with luck). Some choiceswere debatable (notably FP == r7 or r11), but we can revisit thoselater when deficiencies become apparent.llvm-svn: 198617

            List of files:
            /llvm-project-15.0.7/llvm/test/CodeGen/ARM/fast-isel-frameaddr.ll</description>
        <pubDate>Mon, 06 Jan 2014 14:28:05 +0000</pubDate>
        <dc:creator>Tim Northover &lt;tnorthover@apple.com&gt;</dc:creator>
    </item>
<item>
        <title>d24ab20e - Mass update to CodeGen tests to use CHECK-LABEL for labels corresponding to function definitions for more informative error messages. No functionality change and all updated tests passed locally.</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/llvm/test/CodeGen/ARM/fast-isel-frameaddr.ll#d24ab20e</link>
        <description>Mass update to CodeGen tests to use CHECK-LABEL for labels corresponding to function definitions for more informative error messages. No functionality change and all updated tests passed locally.This update was done with the following bash script:  find test/CodeGen -name &quot;*.ll&quot; | \  while read NAME; do    echo &quot;$NAME&quot;    if ! grep -q &quot;^; *RUN: *llc.*debug&quot; $NAME; then      TEMP=`mktemp -t temp`      cp $NAME $TEMP      sed -n &quot;s/^define [^@]*@\([A-Za-z0-9_]*\)(.*$/\1/p&quot; &lt; $NAME | \      while read FUNC; do        sed -i &apos;&apos; &quot;s/;\(.*\)\([A-Za-z0-9_-]*\):\( *\)$FUNC: *\$/;\1\2-LABEL:\3$FUNC:/g&quot; $TEMP      done      sed -i &apos;&apos; &quot;s/;\(.*\)-LABEL-LABEL:/;\1-LABEL:/&quot; $TEMP      sed -i &apos;&apos; &quot;s/;\(.*\)-NEXT-LABEL:/;\1-NEXT:/&quot; $TEMP      sed -i &apos;&apos; &quot;s/;\(.*\)-NOT-LABEL:/;\1-NOT:/&quot; $TEMP      sed -i &apos;&apos; &quot;s/;\(.*\)-DAG-LABEL:/;\1-DAG:/&quot; $TEMP      mv $TEMP $NAME    fi  donellvm-svn: 186280

            List of files:
            /llvm-project-15.0.7/llvm/test/CodeGen/ARM/fast-isel-frameaddr.ll</description>
        <pubDate>Sun, 14 Jul 2013 06:24:09 +0000</pubDate>
        <dc:creator>Stephen Lin &lt;stephenwlin@gmail.com&gt;</dc:creator>
    </item>
<item>
        <title>18db1f2f - Enable FastISel on ARM for Linux and NaCl, not MCJIT</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/llvm/test/CodeGen/ARM/fast-isel-frameaddr.ll#18db1f2f</link>
        <description>Enable FastISel on ARM for Linux and NaCl, not MCJITThis is a resubmit of r182877, which was reverted because it brokenMCJIT tests on ARM. The patch leaves MCJIT on ARM as it was before: onlyenabled for iOS. I&apos;ve CC&apos;ed people from the original review and revert.FastISel was only enabled for iOS ARM and Thumb2, this patch enables itfor ARM (not Thumb2) on Linux and NaCl, but not MCJIT.Thumb2 support needs a bit more work, mainly around register classrestrictions.The patch punts to SelectionDAG when doing TLS relocation on non-Darwintargets. I will fix this and other FastISel-to-SelectionDAG failures ina separate patch.The patch also forces FastISel to retain frame pointers: iOS alwayskeeps them for backtracking (so emitted code won&apos;t change because ofthis), but Linux was getting much worse code that was incorrect whenusing big frames (such as test-suite&apos;s lencod). I&apos;ll also fix this in alater patch, it will probably require a peephole so that FastISeldoesn&apos;t rematerialize frame pointers back-to-back.The test changes are straightforward, similar to:  http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20130513/174279.htmlThey also add a vararg test that got dropped in that change.I ran all of lnt test-suite on A15 hardware with --optimize-option=-O0and all the tests pass. All the tests also pass on x86 make check-all. Ialso re-ran the check-all tests that failed on ARM, and they all seem topass.llvm-svn: 183966

            List of files:
            /llvm-project-15.0.7/llvm/test/CodeGen/ARM/fast-isel-frameaddr.ll</description>
        <pubDate>Fri, 14 Jun 2013 02:49:43 +0000</pubDate>
        <dc:creator>JF Bastien &lt;jfb@google.com&gt;</dc:creator>
    </item>
<item>
        <title>99bd2ae4 - Revert r182937 and r182877.</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/llvm/test/CodeGen/ARM/fast-isel-frameaddr.ll#99bd2ae4</link>
        <description>Revert r182937 and r182877.r182877 broke MCJIT tests on ARM and r182937 was working around another failureby r182877.This should make the ARM bots green.llvm-svn: 182960

            List of files:
            /llvm-project-15.0.7/llvm/test/CodeGen/ARM/fast-isel-frameaddr.ll</description>
        <pubDate>Thu, 30 May 2013 20:37:52 +0000</pubDate>
        <dc:creator>Rafael Espindola &lt;rafael.espindola@gmail.com&gt;</dc:creator>
    </item>
<item>
        <title>f60e0e44 - Enable FastISel on ARM for Linux and NaCl</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/llvm/test/CodeGen/ARM/fast-isel-frameaddr.ll#f60e0e44</link>
        <description>Enable FastISel on ARM for Linux and NaClFastISel was only enabled for iOS ARM and Thumb2, this patch enables itfor ARM (not Thumb2) on Linux and NaCl.Thumb2 support needs a bit more work, mainly around register classrestrictions.The patch punts to SelectionDAG when doing TLS relocation on non-Darwintargets. I will fix this and other FastISel-to-SelectionDAG failures ina separate patch.The patch also forces FastISel to retain frame pointers: iOS alwayskeeps them for backtracking (so emitted code won&apos;t change because ofthis), but Linux was getting much worse code that was incorrect whenusing big frames (such as test-suite&apos;s lencod). I&apos;ll also fix this in alater patch, it will probably require a peephole so that FastISeldoesn&apos;t rematerialize frame pointers back-to-back.The test changes are straightforward, similar to:  http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20130513/174279.htmlThey also add a vararg test that got dropped in that change.I ran all of test-suite on A15 hardware with --optimize-option=-O0 andall the tests pass.llvm-svn: 182877

            List of files:
            /llvm-project-15.0.7/llvm/test/CodeGen/ARM/fast-isel-frameaddr.ll</description>
        <pubDate>Wed, 29 May 2013 20:38:10 +0000</pubDate>
        <dc:creator>JF Bastien &lt;jfb@google.com&gt;</dc:creator>
    </item>
<item>
        <title>8983158e - [fast-isel] Add the -verify-machineinstrs to these test cases.  The remaining</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/llvm/test/CodeGen/ARM/fast-isel-frameaddr.ll#8983158e</link>
        <description>[fast-isel] Add the -verify-machineinstrs to these test cases.  The remainingtest cases require fixes to fast-isel before the verifier can be enabled.Part of rdar://12594152llvm-svn: 168233

            List of files:
            /llvm-project-15.0.7/llvm/test/CodeGen/ARM/fast-isel-frameaddr.ll</description>
        <pubDate>Sat, 17 Nov 2012 00:42:06 +0000</pubDate>
        <dc:creator>Chad Rosier &lt;mcrosier@apple.com&gt;</dc:creator>
    </item>
<item>
        <title>820d248c - [arm-fast-isel] Add support for the llvm.frameaddress() intrinsic.</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/llvm/test/CodeGen/ARM/fast-isel-frameaddr.ll#820d248c</link>
        <description>[arm-fast-isel] Add support for the llvm.frameaddress() intrinsic.Patch by Jush Lu &lt;jush.msn@gmail.com&gt;.llvm-svn: 157696

            List of files:
            /llvm-project-15.0.7/llvm/test/CodeGen/ARM/fast-isel-frameaddr.ll</description>
        <pubDate>Wed, 30 May 2012 17:23:22 +0000</pubDate>
        <dc:creator>Chad Rosier &lt;mcrosier@apple.com&gt;</dc:creator>
    </item>
</channel>
</rss>
