summaryrefslogtreecommitdiff
path: root/llvm/lib/Bitcode/Reader/BitcodeReader.cpp
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2010-07-20 21:07:09 +0000
committerChris Lattner <sabre@nondot.org>2010-07-20 21:07:09 +0000
commitf2f387018903c5f0c8ec0c655392454be83f43ed (patch)
tree50bafd9ad6d2995d1362181680b87fe018ca6027 /llvm/lib/Bitcode/Reader/BitcodeReader.cpp
parentbb610d90535bddf87dc4d9b90c695e9c0add69d3 (diff)
Follow the implementation approach suggested by PR6687,
which generates more efficient and more obviously conformant code. We now test for overflow of the multiply then force the result to -1 if so. On X86, this generates nice code like this: __Z4testl: ## @_Z4testl ## BB#0: ## %entry subl $12, %esp movl $4, %eax mull 16(%esp) testl %edx, %edx movl $-1, %ecx cmovel %eax, %ecx movl %ecx, (%esp) call __Znam addl $12, %esp ret llvm-svn: 108927
Diffstat (limited to 'llvm/lib/Bitcode/Reader/BitcodeReader.cpp')
0 files changed, 0 insertions, 0 deletions