1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-21 12:02:58 +02:00
llvm-mirror/test/DebugInfo/ARM
James Molloy 357a71a855 [SimplifyCFG] Rewrite SinkThenElseCodeToEnd
The new version has several advantages:
  1) IMSHO it's more readable and neater
  2) It handles loads and stores properly
  3) It can handle any number of incoming blocks rather than just two. I'll be taking advantage of this in a followup patch.

With this change we can now finally sink load-modify-store idioms such as:

    if (a)
      return *b += 3;
    else
      return *b += 4;

    =>

    %z = load i32, i32* %y
    %.sink = select i1 %a, i32 5, i32 7
    %b = add i32 %z, %.sink
    store i32 %b, i32* %y
    ret i32 %b

When this works for switches it'll be even more powerful.

llvm-svn: 278660
2016-08-15 08:04:56 +00:00
..
big-endian-bitfield.ll Debug Info: Don't emit bitfields in the DWARF4 format when tuning for GDB. 2016-05-17 20:12:08 +00:00
big-endian-dump.ll IR: Make metadata typeless in assembly 2014-12-15 19:07:53 +00:00
bitfield.ll Debug Info: Restore the pre-r240853 behavior for DWARF2 bitfields. 2016-04-28 15:37:52 +00:00
cfi-eof-prologue.ll DebugInfo: Remove MDString-based type references 2016-04-23 21:08:00 +00:00
constant-dbgloc.ll [PR27284] Reverse the ownership between DICompileUnit and DISubprogram. 2016-04-15 15:57:41 +00:00
float-args.ll [PR27284] Reverse the ownership between DICompileUnit and DISubprogram. 2016-04-15 15:57:41 +00:00
header.ll [PR27284] Reverse the ownership between DICompileUnit and DISubprogram. 2016-04-15 15:57:41 +00:00
line.test Add ARM test for r227489, but XFAIL because this is actually more work than it appeared to be. 2015-01-30 23:04:39 +00:00
lit.local.cfg Reduce verbiage of lit.local.cfg files 2014-06-09 22:42:55 +00:00
little-endian-dump.ll IR: Make metadata typeless in assembly 2014-12-15 19:07:53 +00:00
lowerbdgdeclare_vla.ll [PR27284] Reverse the ownership between DICompileUnit and DISubprogram. 2016-04-15 15:57:41 +00:00
multiple-constant-uses-drops-dbgloc.ll [PR27284] Reverse the ownership between DICompileUnit and DISubprogram. 2016-04-15 15:57:41 +00:00
PR16736.ll [PR27284] Reverse the ownership between DICompileUnit and DISubprogram. 2016-04-15 15:57:41 +00:00
PR26163.ll [PR27284] Reverse the ownership between DICompileUnit and DISubprogram. 2016-04-15 15:57:41 +00:00
processes-relocations.ll IR: Make metadata typeless in assembly 2014-12-15 19:07:53 +00:00
prologue_end.ll CodeGen: avoid emitting unnecessary CFI 2016-07-15 21:10:29 +00:00
s-super-register.ll [PR27284] Reverse the ownership between DICompileUnit and DISubprogram. 2016-04-15 15:57:41 +00:00
selectiondag-deadcode.ll DI: Reverse direction of subprogram -> function edge. 2015-11-05 22:03:56 +00:00
single-constant-use-preserves-dbgloc.ll [SimplifyCFG] Rewrite SinkThenElseCodeToEnd 2016-08-15 08:04:56 +00:00
split-complex.ll [PR27284] Reverse the ownership between DICompileUnit and DISubprogram. 2016-04-15 15:57:41 +00:00
sroa-complex.ll [PR27284] Reverse the ownership between DICompileUnit and DISubprogram. 2016-04-15 15:57:41 +00:00
tls.ll [LLVM] Remove unwanted --check-prefix=CHECK from unit tests. NFC. 2016-04-19 23:51:52 +00:00