[PATCH] D39418: [ELF] - Split processSectionCommands().

Rui Ueyama via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Oct 31 20:24:02 PDT 2017


ruiu added a comment.

Still not sure if this is an improvement. When I ask for splitting a loop, it doesn't ask for moving code from a loop to a new function, but actually split a loop. For example, assume this loop:

  for (...) {
    A;
    B;
  }

When you split the loop, you'll get this:

  for (...)
    A;
  for (...)
    B;

This is I think an improvement because it is now clear that A and B doesn't depend each other. B might depend on A, but it is still better than mutually-dependent code. But if you just move code outside of the loop like this:

  for (...) {
    doA();
    doB();
  }
  
  func doA() { A; }
  func doB() { B; }

the complexity of the new code is the same as before. It doesn't make things logically simpler.


https://reviews.llvm.org/D39418





More information about the llvm-commits mailing list