(no title)
archgoon | 1 year ago
int sum(int n) {
int sum = 0;
for(int i = 0; i < n; i++) {
sum +=i;
}
return sum;
}
clang, with -O2, will turn this into the polynomial (n+1)*n//2. It can also do similar transformations for multiple loops.https://godbolt.org/z/so6neac33
So if you do a brute force solution which could have been reduced to a polyomial, clang has a shot of doing just that.
sbrother|1 year ago
marin049|1 year ago
xigoi|1 year ago
j2kun|1 year ago
archgoon|1 year ago
Here's a talk from an llvm conference with the details.
https://www.youtube.com/watch?v=AmjliNp0_00