commit | cd27d9a45bd00e691a5beaa8607a3c53d20abc8f | [log] [tgz] |
---|---|---|
author | Stepan Dyatkovskiy <stpworld@narod.ru> | Fri Apr 05 05:52:14 2013 +0000 |
committer | Copybara-Service <copybara-worker@google.com> | Mon Sep 28 14:26:23 2020 -0700 |
tree | e9329b5ebf6b5871c8cc2aa2ccf6479e7c7a4b51 | |
parent | 4531e326cf779afceb15ff88aa752ee0f4d63b05 [diff] |
Fix for PR14824: "Optimization arm_ldst_opt inserts newly generated instruction vldmia at incorrect position". Patch introduces memory operands tracking in ARMLoadStoreOpt::LoadStoreMultipleOpti. For each register it keeps the order of load operations as it was before optimization pass. It is kind of deep improvement of fix proposed by Hao: http://llvm.org/bugs/show_bug.cgi?id=14824#c4 But it also tracks conflicts between different register classes (e.g. D2 and S5). For more details see: Bug description: http://llvm.org/bugs/show_bug.cgi?id=14824 LLVM Commits discussion: http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20130311/167936.html http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20130318/168688.html http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20130325/169376.html http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20130401/170238.html llvm-svn: 178851 GitOrigin-RevId: b309b3b33e18309f6e52b183f38b0e0602a77808