RNG::analytical_in_unit_disk(): ; 49 instructions push rbp mov rbp, rsp sub rsp, 64 mov QWORD PTR [rbp-56], rdi movsd xmm0, QWORD PTR .LC1[rip] mov rax, QWORD PTR [rbp-56] movapd xmm1, xmm0 mov rdx, QWORD PTR .LC2[rip] movq xmm0, rdx mov rdi, rax call RNG::num(double, double) ; 19 instructions movq rax, xmm0 movq xmm0, rax call sqrt movq rax, xmm0 mov QWORD PTR [rbp-8], rax movsd xmm0, QWORD PTR .LC3[rip] mov rax, QWORD PTR [rbp-56] movapd xmm1, xmm0 mov rdx, QWORD PTR .LC2[rip] movq xmm0, rdx mov rdi, rax call RNG::num(double, double) ; 19 instructions movq rax, xmm0 mov QWORD PTR [rbp-16], rax mov rax, QWORD PTR [rbp-16] movq xmm0, rax call cos movsd xmm1, QWORD PTR [rbp-8] mulsd xmm0, xmm1 movsd QWORD PTR [rbp-24], xmm0 mov rax, QWORD PTR [rbp-16] movq xmm0, rax call sin movsd xmm1, QWORD PTR [rbp-8] mulsd xmm0, xmm1 movsd QWORD PTR [rbp-32], xmm0 movsd xmm0, QWORD PTR [rbp-32] mov rdx, QWORD PTR [rbp-24] lea rax, [rbp-48] movapd xmm1, xmm0 movq xmm0, rdx mov rdi, rax call Vec2::Vec2(double, double) [complete object constructor] ; 14 instructions mov rax, QWORD PTR [rbp-48] mov rdx, QWORD PTR [rbp-40] movq xmm0, rax movq xmm1, rdx leave ret