On Fri, June 6, 2008 17:19, mm wrote: > Tomas Hajny a écrit : >> On Thu, June 5, 2008 15:29, mm wrote: >>> Jonas Maebe a écrit : >>>>> How can one declare a constant of type qword with the INTEL >>>>> assembler? >>>>> I am using FPC 2.2.0 and the mnemonic "dq" stops the compilation >>>>> with >>>>> the message "Error: Unrecognized opcode DQ". >>>> As far as I can see, that's not possible at this time. >>> That's what I was afraid of. Thanks anyway. >>> >>> So the simplest solution is to use the ATT (GAS?) assembler. >> >> Can't you just split the constant to two hexadecimal (or alphanumeric) >> values put after "dd"? > > Unfortunately, no. I have to use it with something like > > dq @@R0,@@R1,@@R2,@@R3 > > where the @@nn are labels (this is done to select the right jump at > run time). > > I thought to use hexadecimal code to replace the mnemonic "dq" itself > but 1) I don't know its code and 2) I am not even sure it would work.
There's no hexadecimal code for 'dq' (or any other d?) - this directive simply tells the assembler that the following constants shall be put directly into the code (instead of being compiled into some CPU instructions)... I suggest that you add this issue as a request to our bug tracker so that it doesn't get forgotten (I believe that adding it shouldn't be a problem for somebody knowing the related part of FPC). Tomas _______________________________________________ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-pascal