Comment

Comment by dalke

To be fair, you didn't say how much or how I would get it. I imagine if I were to show up at your doorstep with cap in hand, I might get a penny off of you.

If the optimizer is enabled, and the upper bound hard-coded, then the compiler pre-computes the loop. This is the entire code from llvmgcc:

  _main:
  0000000100000f10	pushq	%rax
  0000000100000f11	leaq	72(%rip), %rdi ## literal pool for: sum: %lu
  
  0000000100000f18	movabsq	$49999995000000, %rsi
  0000000100000f22	xorb	%al, %al
  0000000100000f24	callq	0x100000f34 ## symbol stub for: _printf
  0000000100000f29	xorl	%eax, %eax
  0000000100000f2b	popq	%rdx
  0000000100000f2c	ret
Which means you are right - it's hard to beat a pre-computed constant.

I think I owe you a penny.

parent dalke 11 years ago

Discussion

Live from the official Hacker News API

A modern reader for Hacker News · SvelteKit + Skeleton