>>109414718
>nah that can't be true, bet he just didn't turn on optimizations
>
.LC0:
.string ""
"main":
push rbx
mov esi, OFFSET FLAT:.LC0
xor edx, edx
sub rsp, 32
lea rdi, [rsp+16]
mov QWORD PTR [rsp], rdi
call "std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>::_S_copy(char*, char const*, unsigned long)"
mov rax, QWORD PTR [rsp]
mov rsi, rsp
mov edi, OFFSET FLAT:"std::cout"
mov BYTE PTR [rax], 0
xor eax, eax
mov QWORD PTR [rsp+8], rax
call "std::basic_ostream<char, std::char_traits<char>>& std::operator<<<char, std::char_traits<char>, std::allocator<char>>(std::basic_ostream<char, std::char_traits<char>>&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&)"
mov rdi, rax
call "std::basic_ostream<char, std::char_traits<char>>& std::endl<char, std::char_traits<char>>(std::basic_ostream<char, std::char_traits<char>>&)"
mov rdi, rsp
call "std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>::_M_dispose()"
add rsp, 32
xor eax, eax
pop rbx
ret
mov rbx, rax
mov rdi, rsp
call "std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>::_M_dispose()"
mov rdi, rbx
call "_Unwind_Resume"
That's gcc with -Os... with -O3 it's far worse.