On Mar 4, 7:12 pm, Bill Hart <goodwillh...@googlemail.com> wrote:
> This thread will be for notes on converting Jason's code to yasm
> format. It might help Jason to avoid a couple of minor things which
> cause crunching in the gears and may help Brian improve the python
> script.
>
> * Yasm doesn't like loop labels to be called loop: Anything else is
> fine, e.g. loop1:

I have got used to making that change!

> * There is no prologue necessary for linux. The code can just end with
> ret
>
> * include(`../config.m4') becomes %include '../yasm_mac.inc'

I can add this with an option for Linux/Windows (different include
files)

> * ASM_START is not required

Agreed I left it there as I don't want to remove anything in case it
matters

> *  win64_gcc_start mpn_blah can become GLOBAL_FUNC mpn_blah

Again I can translate that differently for Linux and Windows

> * It didn't know what to do with mulq [rcx], it needs mul qword [rcx]

There are a few instructions like this but I felt it was safer to
leave them to fail so that they got looked at.

> * It choked on
>
> jge mulskiploop$1
> MULLOOP($1)
> mulskiploop$1:

> Perhaps don't use $ as part of a label name. It thinks it is a macro
> parameter, which it doesn't seem to be.

I thought that it was a macro parameter - one that Jason uses to get a
unique internal jump label in a multi-use macro.

> I don't know why it converted MULLOOP($1) to MULLOOP$1 instead of
> MULLOOP 1

Where did it do this Bill?  I couldn't get it to do it.

> Capitals also appear to screw up in the conversion. The macros get
> converted to lower case, but the calls stay upper case (or is it vice
> versa, I forget).

I couldn't get it to do this either :-(

> More to come I am sure. I'm about half way.

Remember that there are problems with alignment padding in YASM.

The directive

   align n

should be replaced with

   alignb  n, nop

  Brian

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"mpir-devel" group.
To post to this group, send email to mpir-devel@googlegroups.com
To unsubscribe from this group, send email to 
mpir-devel+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/mpir-devel?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to