Forum > FPC development

[SOLVED] Unrecognized Opcodes

(1/2) > >>

MathMan:
Hi all,

I am using Lazarus 1.2.4 with FPC 2.6.4 under Windows 7/64bit on a Core i5 430M @2,27GHz.

There are the very nifty ADCX / ADOX opcodes which the internal assmbler does not seem to know.


--- Code: ---  @Loop1:

    align   4
    mov     RAX, qword ptr [RSI+8*RDX];   // Get next limb
    adcx    RAX, qword ptr [RBX+8*RDX];   // Add and only affect CF
    mov     qword ptr [RDI+8*RDX], RAX;   // Store the result

--- End code ---

The above throws


--- Code: ---main.pas(480,5) Error: Unrecognized opcode ADCX

--- End code ---

Is anybody around here who can comment on the following

* is it planned to integrate ADCX / ADOX opcode support to the internal assembler
* as I am aware that potentially nobody beside me wants to use these opcodes how are the chances if I raise a corresponding feature request for FPC

Thanks in advance

BigChimp:
Regarding the seoncd issue: if these are valid opcodes, IMO there is no reason NOT to raise the bugtracker issue.

MathMan:

--- Quote from: BigChimp on July 31, 2014, 10:12:02 am ---Regarding the seoncd issue: if these are valid opcodes, IMO there is no reason NOT to raise the bugtracker issue.

--- End quote ---

All I can say is that they are documented in 64-ia-32-architectures-software-developer-manual-325462 and belong to the category general purpose instructions ...

BigChimp:
Don't post here, post on the bugtracker ;) <smiles> (& thanks!)

engkin:
For limited usage of these missing opcodes, you might be able to do your tests with something like:

--- Code: ---     //adcx    RAX, [RBX+8*RDX];   // Add and only affect CF
     db 066H db 048H db 00FH db 038H db 0F6H db 004H db 0D3H

--- End code ---
I used Flat Assembler to get these numbers.

If you do write a bug report, please post a link to it here.

Navigation

[0] Message Index

[#] Next page

Go to full version