[m-rev.] for review: delete .regparm and .picreg

Zoltan Somogyi zoltan.somogyi at runbox.com
Thu Feb 25 16:49:36 AEDT 2016



On Thu, 25 Feb 2016 16:19:23 +1100 (AEDT), Julien Fischer <jfischer at opturion.com> wrote:
> > compiler/options.m:
> >     Keep the --link-with-pic-object-file-extension and --pic-reg options,
> >     but mark them for deletion in the second half of this change.
> >
> >     place the code that accepts picreg grade components,
> 
> s/place/Replace/ ?
> 
> >     but make them do nothing. Mark such do-nothing code so that
> >     it can be deleted when this first-half diff has been bootstrapped.
> >

Actually, that whole paragraph was a stray copy of most of a previous
paragraph. I have deleted it.

> > diff --git a/runtime/mercury_std.h b/runtime/mercury_std.h
> > index d2fb5b5..31d1464 100644
> > --- a/runtime/mercury_std.h
> > +++ b/runtime/mercury_std.h
> > @@ -241,27 +241,16 @@ typedef	char		MR_small_bool;
> >  ** calling convention.
> >  **
> >  ** If MR_USE_REGPARM is defined, and we're using gcc on x86,
> 
> Why leave the reference to MR_USE_REGPARM here?  This comment should
> document what the intended purpose of the MR_CALL macro is.

This comment DOES explain what the intended purpose of MR_CALL is:
it is in the lines immediately before the part you quoted, and which
I haven't touched. The reference to MR_USE_REGPARM is intended
only to explain why MR_CALL is now defined to do nothing:

> > -#if defined(MR_USE_REGPARM) && defined(MR_GNUC) && defined(__i386__)
> > -  #define MR_CALL __attribute__((__stdcall__, __regparm__(2)))
> > -#else
> > -  #define MR_CALL
> > -#endif
> > +
> > +#define MR_CALL

since I figured that this was odd enough to require explanation.
I changed that sentence to all in past tense; that should make it
easier to read.

I followed your other suggestions.

I have committed the diff. Could people please email me when
they have installed it, so I know when I can start on the second
half of deleting picreg?

Zoltan.





More information about the reviews mailing list