1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-22 18:54:02 +01:00
llvm-mirror/lib
Nick Lewycky 64d4e26aec Reapply r142781 with fix. Original message:
Enhance SCEV's brute force loop analysis to handle multiple PHI nodes in the
  loop header when computing the trip count.

  With this, we now constant evaluate:
    struct ListNode { const struct ListNode *next; int i; };
    static const struct ListNode node1 = {0, 1};
    static const struct ListNode node2 = {&node1, 2};
    static const struct ListNode node3 = {&node2, 3};
    int test() {
      int sum = 0;
      for (const struct ListNode *n = &node3; n != 0; n = n->next)
        sum += n->i;
      return sum;
    }

llvm-svn: 142790
2011-10-24 06:57:05 +00:00
..
Analysis Reapply r142781 with fix. Original message: 2011-10-24 06:57:05 +00:00
Archive
AsmParser Backing out patch. Will refactor to remove the AsmParser dependency on Target. 2011-10-18 00:23:49 +00:00
Bitcode Also update the EH with bitcode. I missed this earlier. Thanks to Duncan for pointing it out. 2011-10-05 07:04:14 +00:00
CodeGen Now that we have comparison on probabilities, add some static functions 2011-10-23 20:10:34 +00:00
DebugInfo lib/DebugInfo/DWARFDebugLine.cpp: De-Unicode-ify. 2011-10-08 11:22:47 +00:00
ExecutionEngine Adding dependencies to allow -DBUILD_SHARED_LIBS=true to complete. 2011-10-19 00:13:13 +00:00
Linker Allow the source module to be materialized during the linking process. 2011-10-14 22:17:46 +00:00
MC Fix parsing of a line with only a # in it. 2011-10-19 18:48:52 +00:00
Object Use LLVMBool for a function that logically returns a boolean value. 2011-10-21 20:35:58 +00:00
Support Windows/Path.inc: [PR8460] Get rid of ScopedNullTerminator. Thanks to Zvi Rackover! 2011-10-24 03:27:19 +00:00
TableGen Implement Paste 2011-10-19 13:04:43 +00:00
Target Add X86 SARX, SHRX, and SHLX instructions. 2011-10-23 22:18:24 +00:00
Transforms A dead malloc, a free(NULL) and a free(undef) are all trivially dead 2011-10-24 04:35:36 +00:00
VMCore Refactor code from inlining and globalopt that checks whether a function definition is unused, and enhance it so it can tell that functions which are only used by a blockaddress are in fact dead. This probably doesn't happen much on most code, but the Linux kernel's _THIS_IP_ can trigger this issue with blockaddress. (GlobalDCE can also handle the given tescase, but we only run that at -O3.) Found while looking at PR11180. 2011-10-20 05:23:42 +00:00
CMakeLists.txt Move TableGen's parser and entry point into a library 2011-10-01 16:41:13 +00:00
Makefile