FreeBSD Bugzilla – Attachment 179785 Details for
Bug 216770
lang/julia: fails to build with clang 4.0
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
Remember
[x]
|
Forgot Password
Login:
[x]
[patch]
workaround (x86_64 asm diff)
clang40.strtod.workaround.S.diff (text/plain), 2.32 KB, created by
Jan Beich
on 2017-02-09 07:28:21 UTC
(
hide
)
Description:
workaround (x86_64 asm diff)
Filename:
MIME Type:
Creator:
Jan Beich
Created:
2017-02-09 07:28:21 UTC
Size:
2.32 KB
patch
obsolete
>--- gdtoa_smisc.s before >+++ gdtoa_smisc.s after >@@ -134,7 +134,7 @@ __ratio_D2A: > .cfi_def_cfa_register %rbp > pushq %r14 > pushq %rbx >- subq $48, %rsp >+ subq $32, %rsp > .Lcfi11: > .cfi_offset %rbx, -32 > .Lcfi12: >@@ -143,44 +143,55 @@ __ratio_D2A: > movq %rdi, %rbx > movq __stack_chk_guard(%rip), %rax > movq %rax, -24(%rbp) >- leaq -44(%rbp), %rsi >+ leaq -28(%rbp), %rsi > callq __b2d_D2A >- movsd %xmm0, -56(%rbp) # 8-byte Spill >- movsd %xmm0, -32(%rbp) >- leaq -48(%rbp), %rsi >+ movsd %xmm0, -40(%rbp) # 8-byte Spill >+ leaq -32(%rbp), %rsi > movq %r14, %rdi > callq __b2d_D2A >- movsd %xmm0, -40(%rbp) >- movl -44(%rbp), %eax >- subl -48(%rbp), %eax >- movl 20(%rbx), %ecx >- subl 20(%r14), %ecx >- shll $5, %ecx >+ movl -28(%rbp), %ecx >+ subl -32(%rbp), %ecx >+ movl 20(%rbx), %eax >+ subl 20(%r14), %eax >+ shll $5, %eax >+ addl %ecx, %eax >+ jle .LBB1_2 >+# BB#1: # %if.then >+ shll $20, %eax >+ movq -40(%rbp), %xmm1 # 8-byte Folded Reload >+ # xmm1 = mem[0],zero >+ movd %xmm1, %rcx >+ movl %ecx, %edx >+ shrq $32, %rcx > addl %eax, %ecx >- movl %ecx, %eax >- negl %eax >- cmovll %ecx, %eax >- testl %ecx, %ecx >- leaq -32(%rbp), %rcx >- leaq -40(%rbp), %rdx >- cmovgq %rcx, %rdx >+ shlq $32, %rcx >+ orq %rcx, %rdx >+ movd %rdx, %xmm1 >+ jmp .LBB1_3 >+.LBB1_2: # %if.else > shll $20, %eax >- orq $4, %rdx >- addl %eax, (%rdx) >+ movd %xmm0, %rcx >+ movl %ecx, %edx >+ shrq $32, %rcx >+ subl %eax, %ecx >+ shlq $32, %rcx >+ orq %rcx, %rdx >+ movd %rdx, %xmm0 >+ movq -40(%rbp), %xmm1 # 8-byte Folded Reload >+ # xmm1 = mem[0],zero >+.LBB1_3: # %if.end > movq __stack_chk_guard(%rip), %rax > cmpq -24(%rbp), %rax >- jne .LBB1_2 >-# BB#1: # %entry >- movsd -56(%rbp), %xmm1 # 8-byte Reload >- # xmm1 = mem[0],zero >+ jne .LBB1_5 >+# BB#4: # %if.end > divsd %xmm0, %xmm1 > movapd %xmm1, %xmm0 >- addq $48, %rsp >+ addq $32, %rsp > popq %rbx > popq %r14 > popq %rbp > retq >-.LBB1_2: # %entry >+.LBB1_5: # %if.end > callq __stack_chk_fail > .Lfunc_end1: > .size __ratio_D2A, .Lfunc_end1-__ratio_D2A
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 216770
:
179784
| 179785