aboutsummaryrefslogtreecommitdiff
path: root/docs/CommandGuide/llvm-dis.html
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2004-04-17 22:58:41 +0000
committerChris Lattner <sabre@nondot.org>2004-04-17 22:58:41 +0000
commit3221ad0db784a8c8d6ce3029e2632216764b5533 (patch)
treef7d9ad78ecf238bc52cbf20ec88d807cabd0e5a3 /docs/CommandGuide/llvm-dis.html
parent20aa098ba694aa7e3f5fb5a52d22dba7c1e857ae (diff)
Add the ability to compute exit values for complex loop using unanalyzable
operations. This allows us to compile this testcase: int main() { int h = 1; do h = 3 * h + 1; while (h <= 256); printf("%d\n", h); return 0; } into this: int %main() { entry: call void %__main( ) %tmp.6 = call int (sbyte*, ...)* %printf( sbyte* getelementptr ([4 x sbyte]* %.str_1, long 0, long 0), int 364 ) ; <int> [#uses=0] ret int 0 } This testcase was taken directly from 256.bzip2, believe it or not. This code is not as general as I would like. Next up is to refactor it a bit to handle more cases. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13019 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'docs/CommandGuide/llvm-dis.html')
0 files changed, 0 insertions, 0 deletions