<?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 int-cmp-55.ll</title>
    <description></description>
    <language>en</language>
    <copyright>Copyright 2015</copyright>
    <generator>Java</generator><item>
        <title>b32f3656 - [SystemZ] Do not use glue to represent condition code dependencies</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/llvm/test/CodeGen/SystemZ/int-cmp-55.ll#b32f3656</link>
        <description>[SystemZ] Do not use glue to represent condition code dependenciesCurrently, an instruction setting the condition code is linked tothe instruction using the condition code via a &quot;glue&quot; link in theSelectionDAG.  This has a number of drawbacks; in particular, itmeans the same CC cannot be used by multiple users.  It also makesit more difficult to efficiently implement SADDO et. al.This patch changes the back-end to represent CC dependencies asnormal values during SelectionDAG matching, along the lines ofhow this is handled in the X86 back-end already.In addition to the core mechanics of updating all relevant patterns,this requires a number of additional changes:- We now need to be able to spill/restore a CC value into a GPR  if necessary.  This means providing a copyPhysReg implementation  for moves involving CC, and defining getCrossCopyRegClass.- Since we still prefer to avoid such spills, we provide an override  for IsProfitableToFold to avoid creating a merged LOAD / ICMP if  this would result in multiple users of the CC.- combineCCMask no longer requires a single CC user, and no longer  need to be careful about preventing invalid glue/chain cycles.- emitSelect needs to be more careful in marking CC live-in to  the basic block it generates.  Also, we can now optimize the  case of multiple subsequent selects with the same condition  just like X86 does.llvm-svn: 331202

            List of files:
            /llvm-project-15.0.7/llvm/test/CodeGen/SystemZ/int-cmp-55.ll</description>
        <pubDate>Mon, 30 Apr 2018 17:52:32 +0000</pubDate>
        <dc:creator>Ulrich Weigand &lt;ulrich.weigand@de.ibm.com&gt;</dc:creator>
    </item>
</channel>
</rss>
