flat assembler
Message board for the users of flat assembler.
![]() |
Author |
|
l4m2 21 Mar 2015, 15:27
Code: 66 0F 58 D3 addpd xmm2,xmm3 Move to where, i dont know |
|||
![]() |
|
CandyMan 21 Mar 2015, 16:13
Code: 0F 58 D3 addps xmm2,xmm3 _________________ smaller is better |
|||
![]() |
|
revolution 21 Mar 2015, 16:26
x86 instruction encoding has evolved over time. There are many things in there that are weird and redundant. But for the time being we are stuck with it.
Last edited by revolution on 22 Mar 2015, 10:16; edited 2 times in total |
|||
![]() |
|
l4m2 21 Mar 2015, 16:29
CandyMan wrote:
I first know 66 not only change between 16b 32 |
|||
![]() |
|
revolution 22 Mar 2015, 10:20
This is a weird anomaly also:
Code: xor eax,eax ;null pointer with Z flag set cmovnz ecx,[eax] ;<--- crashes even when the condition is false |
|||
![]() |
|
l4m2 22 Mar 2015, 10:31
revolution wrote: This is a weird anomaly also: |
|||
![]() |
|
revolution 22 Mar 2015, 10:36
The error can be held pending and only allowed to propagate once the condition is known and evaluated. Other CPUs can do speculative memory reads in this way so in a technical sense there is no reason it couldn't have worked this way.
|
|||
![]() |
|
l4m2 22 Mar 2015, 10:40
revolution wrote: The error can be held pending and only allowed to propagate once the condition is known and evaluated. Other CPUs can do speculative memory reads in this way so in a technical sense there is no reason it couldn't have worked this way. Code: a=ptr?ptr[0]:0 |
|||
![]() |
|
revolution 22 Mar 2015, 10:45
Notably missing is "cmovcc reg,imm".
|
|||
![]() |
|
AsmGuru62 22 Mar 2015, 11:48
Intel manual says that CMOVxx memory operand must be accessible.
Not sure about AMD. |
|||
![]() |
|
revolution 22 Mar 2015, 16:37
AsmGuru62 wrote: Intel manual says that CMOVxx memory operand must be accessible. ![]() Last edited by revolution on 23 Mar 2015, 00:30; edited 1 time in total |
|||
![]() |
|
HaHaAnonymous 22 Mar 2015, 17:06
Quote:
The behavior is the same but the performance differs. Usually in favor of Intel (see FPU, SSE and AVX). One of the reasons "floating point" enthusiasts usually prefer Intel. ![]() |
|||
![]() |
|
< Last Thread | Next Thread > |
Forum Rules:
|
Copyright © 1999-2025, Tomasz Grysztar. Also on GitHub, YouTube.
Website powered by rwasa.