mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-01-01 00:33:09 +00:00
add a note about overflow idiom recognition.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121853 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
b35d56c2fe
commit
08859ffa63
@ -73,7 +73,25 @@ This has a number of uses:
|
||||
|
||||
//===---------------------------------------------------------------------===//
|
||||
|
||||
Make the PPC branch selector target independant
|
||||
We should recognized various "overflow detection" idioms and translate them into
|
||||
llvm.uadd.with.overflow and similar intrinsics. For example, we compile this:
|
||||
|
||||
size_t add(size_t a,size_t b) {
|
||||
if (a+b<a)
|
||||
exit(0);
|
||||
return a+b;
|
||||
}
|
||||
|
||||
into:
|
||||
|
||||
addq %rdi, %rbx
|
||||
cmpq %rdi, %rbx
|
||||
jae LBB0_2
|
||||
|
||||
when it would be better to generate:
|
||||
|
||||
addq %rdi, %rbx
|
||||
jno LBB0_2
|
||||
|
||||
//===---------------------------------------------------------------------===//
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user