<?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 pie-exceptions-failed-split.s</title>
    <description></description>
    <language>en</language>
    <copyright>Copyright 2015</copyright>
    <generator>Java</generator><item>
        <title>ed743045 - [BOLT] Fix EH trampoline backout code</title>
        <link>http://172.16.0.5:8080/history/llvm-project-15.0.7/bolt/test/runtime/X86/Inputs/pie-exceptions-failed-split.s#ed743045</link>
        <description>[BOLT] Fix EH trampoline backout codeWhen SplitFunctions pass adds a trampoline code for exception landingpads (limited to shared objects), it may increase the size of the hotfragment making it larger than the whole function pre-split. When thishappens, the pass reverts the splitting action by restoring the originalblock order and marking all blocks hot.However, if createEHTrampolines() added new blocks to the CFG andmodified invoke instructions, simply restoring the original block layoutwill not suffice as the new CFG has more blocks.For proper backout of the split, modify the original layout by mergingin trampoline blocks immediately before their matching targets. As aresult, the number of blocks increases, but the number of instructionsand the function size remains the same as pre-split.Add an assertion for the number of blocks when updating a functionlayout.Reviewed By: rafaulerDifferential Revision: https://reviews.llvm.org/D128696

            List of files:
            /llvm-project-15.0.7/bolt/test/runtime/X86/Inputs/pie-exceptions-failed-split.s</description>
        <pubDate>Fri, 24 Jun 2022 23:51:46 +0000</pubDate>
        <dc:creator>Maksim Panchenko &lt;maks@fb.com&gt;</dc:creator>
    </item>
</channel>
</rss>
