[m-rev.] for review: gcc 4 with llds grades

Peter Wang novalazy at gmail.com
Wed Nov 25 10:51:02 AEDT 2009


On 2009-11-24, Julien Fischer <juliensf at csse.unimelb.edu.au> wrote:
> >+AC_SUBST(CFLAGS_FOR_NO_MOVE_LOOP_INVARIANTS)
> 
> Why is CFLAGS_FOR_NO_MOVE_LOOP_INVARIANTS an output variable?  Its value
> is not used beyond the configure script.

Left over from an earlier version of the patch; deleted.

> >@@ -2993,16 +3010,6 @@ case "$mercury_cv_user_base_grade" in
> >                BEST_LLDS_BASE_GRADE=none
> >            fi
> >        fi
> >-
> >-        # Force the use of the none base grade if the C compiler
> >-        # is GCC 4.{1,2,3,4}.  The asm_fast and reg grades either
> >-        # don't work or are unstable with those versions.
> >-        # (See bugs #39, #66 and #78 in the Mercury bug database.)
> >-        case "$mercury_cv_gcc_version" in
> >-            4_1_*|4_2_*|4_3_*|4_4_*)
> >-                BEST_LLDS_BASE_GRADE=none
> >-            ;;
> >-        esac
> 
> I suggest leaving a commented out version of the above code, so that if
> the workaround needs to be applied to a future version of GCC it is
> obvious how and where to do it.

Done.

> >  /*
> >+  ** This hack is to prevent gcc 4.x optimizing away stores to succip before
> >+  ** jumping to a label in asm_fast.gc.
> 
> s/asm_fast.gc/asm_fast*/
> 
> It presumably has nothing to do with the presence or absence of garbage
> collection.

Done.

Peter
--------------------------------------------------------------------------
mercury-reviews mailing list
Post messages to:       mercury-reviews at csse.unimelb.edu.au
Administrative Queries: owner-mercury-reviews at csse.unimelb.edu.au
Subscriptions:          mercury-reviews-request at csse.unimelb.edu.au
--------------------------------------------------------------------------



More information about the reviews mailing list