This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [lno] bootstrap broken


ix86_preferred_stack_boundary is defined in mainline as unsigned int, and
in lno as int.

we need to bring the following patch from mainline to lno:

2004-06-26  Richard Henderson  <rth@redhat.com>

        * calls.c (combine_pending_stack_adjustment_and_call): Make
        preferred_unit_stack_boundary argument unsigned.  Make
        unadjusted_alignment unsigned.
        (expand_call): Make preferred_stack_boundary and
        preferred_unit_stack_boundary variables unsigned.
        * function.c (assign_stack_local_1): Make alignment unsigned.
        * function.h (struct function): Make stack_alignment_needed,
        preferred_stack_boundary unsigned.
        * config/i386/i386.c (ix86_preferred_stack_boundary): Make
unsigned.
        (ix86_compute_frame_layout): Make stack_alignment_needed,
        preferred_alignment variables unsigned.
        * config/i386/i386.h (ix86_preferred_stack_boundary): Make
unsigned.

dorit



|---------+------------------------------>
|         |           Volker Reichelt    |
|         |           <reichelt@igpm.rwth|
|         |           -aachen.de>        |
|         |                              |
|         |           24/08/2004 13:27   |
|---------+------------------------------>
  >---------------------------------------------------------------------------------------------------------------|
  |                                                                                                               |
  |       To:       gcc@gcc.gnu.org                                                                               |
  |       cc:       Dorit Naishlos/Haifa/IBM@IBMIL                                                                |
  |       Subject:  [lno] bootstrap broken                                                                        |
  >---------------------------------------------------------------------------------------------------------------|




Hi,

Dorit's port of the tree-vectorizer patch to the lno-branch
http://gcc.gnu.org/ml/gcc-cvs/2004-08/msg01190.html
breaks bootstrap of the lno-branch on i686-pc-linux-gnu. I get

  stage1/xgcc -Bstage1/
-B/home/reichelt/GCC/FARM/gcc-lno-20040824/i686-pc-linux-gnu/bin/ -c   -g
-O2 -DIN_GCC   -W -Wall -Wwrite-strings -Wstrict-prototypes
-Wmissing-prototypes -pedantic -Wno-long-long -Wno-variadic-macros
-Wold-style-definition -Werror -fno-common   -DHAVE_CONFIG_H    -I. -I.
-I../../gcc/gcc -I../../gcc/gcc/. -I../../gcc/gcc/../include
-I../../gcc/gcc/../libcpp/include -I../../gcc/gcc/../libbanshee/libcompat
-I../../gcc/gcc/../libbanshee -I../../gcc/gcc/../libbanshee/points-to
../../gcc/gcc/tree-vectorizer.c -o tree-vectorizer.o
  ../../gcc/gcc/tree-vectorizer.c: In function
`vect_can_force_dr_alignment_p':
  ../../gcc/gcc/tree-vectorizer.c:1443: warning: comparison between signed
and unsigned
  make[2]: *** [tree-vectorizer.o] Error 1

The code in question is:

  static bool
  vect_can_force_dr_alignment_p (tree decl, unsigned int alignment)
  {
    if (TREE_CODE (decl) != VAR_DECL)
      return false;

    if (DECL_EXTERNAL (decl))
      return false;

    if (TREE_STATIC (decl))
      return (alignment <= MAX_OFILE_ALIGNMENT);
    else
      /* This is not 100% correct.  The absolute correct stack alignment
         is STACK_BOUNDARY.  We're supposed to hope, but not assume, that
         PREFERRED_STACK_BOUNDARY is honored by all translation units.
         However, until someone implements forced stack alignment, SSE
         isn't really usable without this.  */
      return (alignment <= PREFERRED_STACK_BOUNDARY);  /* <--- line 1443 */
  }

It's wierd that my mainline bootstrap isn't affected.
Any ideas?

Thanks,
Volker






Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]