Can I get a more in-depth guide about the inline assembler?

Era Scarecrow via Digitalmars-d-learn digitalmars-d-learn at puremagic.com
Fri Jun 3 20:01:09 PDT 2016


On Saturday, 4 June 2016 at 01:44:38 UTC, ZILtoid1991 wrote:
> Problem solved. Current assembly code:
>
> //moving the values to their destinations
> mov	EBX, p[EBP];
> movd	MM0, src;
> movd	MM1, [EBX];
>
> <snip>
>
> The actual problem was the poor documentation of MMX 
> instructions as it never really caught on, and the 
> disappearance of assembly programming from the mainstream. The 
> end result was a quick alpha-blending algorithm that barely has 
> any extra performance penalty compared to just copying the 
> pixels. I currently have no plans on translating the whole 
> sprite displaying algorithm to assembly, instead I'll work on 
> the editor for the game engine.

  So... Why did you need to dereference the pointer for p and move 
it to EBX, but didn't need to do it for src (no [])?

  Maybe you should explain your experiences with the MMX 
instruction set, follies and what you succeeded on? Where does 
the documentation fail? And are we talking about the Intel 
manuals and instruction sets or another source?


More information about the Digitalmars-d-learn mailing list