search for: cmovneq

Displaying 3 results from an estimated 3 matches for "cmovneq".

Did you mean: cmovne
2018 Mar 23
5
RFC: Speculative Load Hardening (a Spectre variant #1 mitigation)
...# %entry pushq %rax xorl %eax, %eax # Zero out initial predicate state. movq $-1, %r8 # Put all-ones mask into a register. testl %edi, %edi jne .LBB0_1 # %bb.2: # %then1 cmovneq %r8, %rax # Conditionally update predicate state. testl %esi, %esi jne .LBB0_1 # %bb.3: # %then2 cmovneq %r8, %rax # Conditionally update predicate state. testl %edx, %edx je .LBB0_4 .LBB...
2016 Feb 11
3
Expected constant simplification not happening
...the appended IR code does not optimize to my liking :) this is the interesting part in x86_64, that got produced via clang -Os: --- movq -16(%r12), %rax movl -4(%rax), %ecx andl $2298949, %ecx ## imm = 0x231445 cmpq $2298949, (%rax,%rcx) ## imm = 0x231445 leaq 8(%rax,%rcx), %rax cmovneq %r15, %rax movl $2298949, %esi ## imm = 0x231445 movq %r12, %rdi movq %r14, %rdx callq *(%rax) --- and clang -O3: --- movq -16(%r12), %rax movl -4(%rax), %ecx andl $2298949, %ecx ## imm = 0x231445 cmpl $2298949, (%rax,%rcx) ## imm = 0x231445 jne LBB1_4 leaq 8(%rax...
2016 Dec 07
1
Expected constant simplification not happening
...-Os: > --- > movq -16(%r12), %rax > movl -4(%rax), %ecx > andl $2298949, %ecx ## imm = 0x231445 > cmpq $2298949, (%rax,%rcx) ## imm = 0x231445 > leaq 8(%rax,%rcx), %rax > cmovneq %r15, %rax > movl $2298949, %esi ## imm = 0x231445 > movq %r12, %rdi > movq %r14, %rdx > callq *(%rax) > --- > > > and clang -O3: > --- > movq -16(%r12), %rax >...