diff options
author | kan <kan@FreeBSD.org> | 2005-06-03 03:28:44 +0000 |
---|---|---|
committer | kan <kan@FreeBSD.org> | 2005-06-03 03:28:44 +0000 |
commit | 2156e40a831a8e0ab68e4bc091c2940bf46ca6df (patch) | |
tree | f0dc8ad34f9fcaf27052e24e893a4284b5fee6e9 /contrib/gcc/f | |
parent | 0a20abcc95340c9d2bb59421bac84eca4fb43b0c (diff) | |
download | FreeBSD-src-2156e40a831a8e0ab68e4bc091c2940bf46ca6df.zip FreeBSD-src-2156e40a831a8e0ab68e4bc091c2940bf46ca6df.tar.gz |
Gcc 3.4.4 release.
Diffstat (limited to 'contrib/gcc/f')
-rw-r--r-- | contrib/gcc/f/ChangeLog | 38 | ||||
-rw-r--r-- | contrib/gcc/f/bld.c | 2 | ||||
-rw-r--r-- | contrib/gcc/f/malloc.c | 25 | ||||
-rw-r--r-- | contrib/gcc/f/news.texi | 4 |
4 files changed, 59 insertions, 10 deletions
diff --git a/contrib/gcc/f/ChangeLog b/contrib/gcc/f/ChangeLog index d671c1e..bf48201 100644 --- a/contrib/gcc/f/ChangeLog +++ b/contrib/gcc/f/ChangeLog @@ -1,3 +1,41 @@ +2005-05-19 Release Manager + + * GCC 3.4.4 released. + +2004-12-30 Toon Moene <toon@moene.indiv.nluug.nl> + + * news.texi: Change GCC 3.5 to GCC 4.0 + +2004-11-04 Release Manager + + * GCC 3.4.3 released. + +2004-09-21 Bud Davis <bdavis9659@comcast.net> + + PR fortran/17541 + * bld.c (ffebld_constant_new_real2_val): Fix typo, + +2004-09-06 Release Manager + + * GCC 3.4.2 released. + +2004-09-02 Eric Botcazou <ebotcazou@libertysurf.fr> + + PR fortran/17180 + * malloc.c (MALLOC_ALIGNMENT): Rename into MAX_ALIGNMENT + and use a host-based heuristics to determine it. + (ROUNDED_AREA_SIZE): Adjust. + +2004-09-01 Eric Botcazou <ebotcazou@libertysurf.fr> + + PR fortran/17180 + * malloc.c (MALLOC_ALIGNMENT): New constant. + (ROUNDED_AREA_SIZE): Likewise. + (malloc_kill_area_): Use ROUNDED_AREA_SIZE. + (malloc_find_inpool_): Likewise. + (malloc_new_inpool_): Likewise. + (malloc_resize_inpool_): Likewise. + 2004-07-12 Bud Davis <bdavis9659@comcast.net> * bld.c (ffebld_constant_new_character1, ffebld_constant_new_complex{1,2}, diff --git a/contrib/gcc/f/bld.c b/contrib/gcc/f/bld.c index ec7c5cd6..d300069 100644 --- a/contrib/gcc/f/bld.c +++ b/contrib/gcc/f/bld.c @@ -1333,7 +1333,7 @@ ffebld_constant_new_real2_val (ffetargetReal2 val) nc = malloc_new_kp (ffebld_constant_pool(), "FFEBLD_constREAL2", sizeof (*nc)); - nc->consttype = FFEBLD_constREAL1; + nc->consttype = FFEBLD_constREAL2; nc->u.real2 = val; nc->hook = FFECOM_constantNULL; nc->llink = NULL; diff --git a/contrib/gcc/f/malloc.c b/contrib/gcc/f/malloc.c index 8c85511..b9addb8 100644 --- a/contrib/gcc/f/malloc.c +++ b/contrib/gcc/f/malloc.c @@ -83,6 +83,17 @@ static void malloc_verify_area_ (mallocPool pool, mallocArea_ a); /* Internal macros. */ +struct max_alignment { + char c; + union { + HOST_WIDEST_INT i; + long double d; + } u; +}; + +#define MAX_ALIGNMENT (offsetof (struct max_alignment, u)) +#define ROUNDED_AREA_SIZE (MAX_ALIGNMENT * ((sizeof(mallocArea_) + MAX_ALIGNMENT - 1) / MAX_ALIGNMENT)) + #if MALLOC_DEBUG #define malloc_kill_(ptr,s) do {memset((ptr),127,(s));free((ptr));} while(0) #else @@ -101,7 +112,7 @@ malloc_kill_area_ (mallocPool pool UNUSED, mallocArea_ a) #if MALLOC_DEBUG assert (strcmp (a->name, ((char *) (a->where)) + a->size) == 0); #endif - malloc_kill_ (a->where - sizeof(mallocArea_*), a->size); + malloc_kill_ (a->where - ROUNDED_AREA_SIZE, a->size); a->next->previous = a->previous; a->previous->next = a->next; #if MALLOC_DEBUG @@ -302,10 +313,10 @@ malloc_display_ (mallocArea_ a UNUSED) Search for object in list of mallocArea_s, die if not found. */ mallocArea_ -malloc_find_inpool_ (mallocPool pool, void *ptr) +malloc_find_inpool_ (mallocPool pool UNUSED, void *ptr) { mallocArea_ *t; - t = (mallocArea_ *) (ptr - sizeof(mallocArea_)); + t = (mallocArea_ *) (ptr - ROUNDED_AREA_SIZE); return *t; } @@ -387,14 +398,14 @@ malloc_new_inpool_ (mallocPool pool, mallocType_ type, const char *name, mallocS || malloc_pool_find_ (pool, malloc_pool_image ())); #endif - ptr = malloc_new_ (sizeof(mallocArea_*) + s + (i = (MALLOC_DEBUG ? strlen (name) + 1 : 0))); + ptr = malloc_new_ (ROUNDED_AREA_SIZE + s + (i = (MALLOC_DEBUG ? strlen (name) + 1 : 0))); #if MALLOC_DEBUG strcpy (((char *) (ptr)) + s, name); #endif a = malloc_new_ (offsetof (struct _malloc_area_, name) + i); temp = (mallocArea_ *) ptr; *temp = a; - ptr = ptr + sizeof(mallocArea_*); + ptr = ptr + ROUNDED_AREA_SIZE; switch (type) { /* A little optimization to speed up killing of non-permanent stuff. */ @@ -487,10 +498,10 @@ malloc_resize_inpool_ (mallocPool pool, mallocType_ type UNUSED, assert (a->size == os); assert (strcmp (a->name, ((char *) (ptr)) + os) == 0); #endif - ptr = malloc_resize_ (ptr - sizeof(mallocArea_*), sizeof(mallocArea_*) + ns + (MALLOC_DEBUG ? strlen (a->name) + 1: 0)); + ptr = malloc_resize_ (ptr - ROUNDED_AREA_SIZE, ROUNDED_AREA_SIZE + ns + (MALLOC_DEBUG ? strlen (a->name) + 1: 0)); temp = (mallocArea_ *) ptr; *temp = a; - ptr = ptr + sizeof(mallocArea_*); + ptr = ptr + ROUNDED_AREA_SIZE; a->where = ptr; #if MALLOC_DEBUG a->size = ns; diff --git a/contrib/gcc/f/news.texi b/contrib/gcc/f/news.texi index 9b34df0..fcba273 100644 --- a/contrib/gcc/f/news.texi +++ b/contrib/gcc/f/news.texi @@ -11,7 +11,7 @@ @c in the standalone derivations of this file (e.g. NEWS). @set copyrights-news 1995,1996,1997,1998,1999,2000,2001,2002,2003,2004 -@set last-update-news 2004-06-17 +@set last-update-news 2004-12-29 @ifset DOC-NEWS @include root.texi @@ -62,7 +62,7 @@ such changes to @command{g77}. @ifclear USERVISONLY -@emph{@code{GCC} 3.4.x is the last edition of @code{GCC} to contain @command{g77} - from @code{GCC} 3.5 onwards, use @command{gfortran}} +@emph{@code{GCC} 3.4.x is the last edition of @code{GCC} to contain @command{g77} - from @code{GCC} 4.0 onwards, use @command{gfortran}} Changes made to recent versions of GNU Fortran are listed below, with the most recent version first. |