[patch]980115 Snapshot & calls.c problem

Art HAAS Art_HAAS@dril-quip.com
Fri Jan 16 11:53:00 GMT 1998


     Hello,
     
     I ran into one snag with the latest snapshot - compiling halted while 
     working through calls.c. My problem was the ARGS_GROW_DOWNWARD 
     preprocessor test in the middle of the macro gen_rtx_MEM. Simply 
     reorganizing the #ifdef-#else-#endif statements fixed it for me. My 
     attatched patch has my change.
     
     This was the only problem I've had compiling the latest snapshot. I'm 
     running on an HP-UX 9.05 system, bootstrapping with gcc 2.7.2.3. I'm 
     in the process of running the test now. Thanks for your work with 
     egcs.
     
     Art Haas
     art_haas@dril-quip.com
     
     
*** calls.c.orig        Fri Jan 16 10:09:05 1998
--- calls.c     Fri Jan 16 10:17:51 1998
***************
*** 1723,1739 ****
                               BIGGEST_ALIGNMENT / UNITS_PER_WORD) - 1)))
        save_mode = BLKmode;
  
        stack_area = gen_rtx_MEM (save_mode,
                                memory_address (save_mode,
-                                           
- #ifdef ARGS_GROW_DOWNWARD
                                                plus_constant (argblock,
!                                                              - 
high_to_save)
  #else
                                                plus_constant (argblock,
                                                               low_to_save)
- #endif
                                                ));
        if (save_mode == BLKmode)
        {
          save_area = assign_stack_temp (BLKmode, num_to_save, 0);
--- 1723,1741 ----
                               BIGGEST_ALIGNMENT / UNITS_PER_WORD) - 1)))
        save_mode = BLKmode;
  
+ #ifdef ARGS_GROW_DOWNWARD
        stack_area = gen_rtx_MEM (save_mode,
                                memory_address (save_mode,
                                                plus_constant (argblock,
!                                                       - high_to_save)
!                                               ));
  #else
+       stack_area = gen_rtx_MEM (save_mode,
+                               memory_address (save_mode,
                                                plus_constant (argblock,
                                                               low_to_save)
                                                ));
+ #endif
        if (save_mode == BLKmode)
        {
          save_area = assign_stack_temp (BLKmode, num_to_save, 0);
***************
*** 2215,2231 ****
        if (save_area)
        {
          enum machine_mode save_mode = GET_MODE (save_area);
          rtx stack_area
            = gen_rtx_MEM (save_mode,
                           memory_address (save_mode,
- #ifdef ARGS_GROW_DOWNWARD
                                           plus_constant (argblock,
                                                          - high_to_save)
  #else
                                           plus_constant (argblock,
                                                          low_to_save)
- #endif
                                           ));
  
          if (save_mode != BLKmode)
            emit_move_insn (stack_area, save_area);
--- 2217,2237 ----
        if (save_area)
        {
          enum machine_mode save_mode = GET_MODE (save_area);
+ #ifdef ARGS_GROW_DOWNWARD
          rtx stack_area
            = gen_rtx_MEM (save_mode,
                           memory_address (save_mode,
                                           plus_constant (argblock,
                                                          - high_to_save)
+                                          ));
  #else
+         rtx stack_area
+           = gen_rtx_MEM (save_mode,
+                          memory_address (save_mode,
                                           plus_constant (argblock,
                                                          low_to_save)
                                           ));
+ #endif
  
          if (save_mode != BLKmode)
            emit_move_insn (stack_area, save_area);
***************
*** 2574,2590 ****
                               BIGGEST_ALIGNMENT / UNITS_PER_WORD) - 1)))
        save_mode = BLKmode;
  
        stack_area = gen_rtx_MEM (save_mode,
                                memory_address (save_mode,
-                                           
- #ifdef ARGS_GROW_DOWNWARD
                                                plus_constant (argblock,
                                                               - 
high_to_save)
  #else
                                                plus_constant (argblock,
                                                               low_to_save)
- #endif
                                                ));
        if (save_mode == BLKmode)
        {
          save_area = assign_stack_temp (BLKmode, num_to_save, 0);
--- 2580,2598 ----
                               BIGGEST_ALIGNMENT / UNITS_PER_WORD) - 1)))
        save_mode = BLKmode;
  
+ #ifdef ARGS_GROW_DOWNWARD
        stack_area = gen_rtx_MEM (save_mode,
                                memory_address (save_mode,
                                                plus_constant (argblock,
                                                               - 
high_to_save)
+                                               ));
  #else
+       stack_area = gen_rtx_MEM (save_mode,
+                               memory_address (save_mode,
                                                plus_constant (argblock,
                                                               low_to_save)
                                                ));
+ #endif
        if (save_mode == BLKmode)
        {
          save_area = assign_stack_temp (BLKmode, num_to_save, 0);
***************
*** 2740,2754 ****
    if (save_area)
      {
        enum machine_mode save_mode = GET_MODE (save_area);
        rtx stack_area
        = gen_rtx_MEM (save_mode,
                       memory_address (save_mode,
- #ifdef ARGS_GROW_DOWNWARD
                                       plus_constant (argblock, - 
high_to_save)
  #else
                                       plus_constant (argblock, 
low_to_save)
- #endif
                                       ));
  
        if (save_mode != BLKmode)
        emit_move_insn (stack_area, save_area);
--- 2748,2766 ----
    if (save_area)
      {
        enum machine_mode save_mode = GET_MODE (save_area);
+ #ifdef ARGS_GROW_DOWNWARD
        rtx stack_area
        = gen_rtx_MEM (save_mode,
                       memory_address (save_mode,
                                       plus_constant (argblock, - 
high_to_save)
+                                      ));
  #else
+       rtx stack_area
+       = gen_rtx_MEM (save_mode,
+                      memory_address (save_mode,
                                       plus_constant (argblock, 
low_to_save)
                                       ));
+ #endif
  
        if (save_mode != BLKmode)
        emit_move_insn (stack_area, save_area);
***************
*** 3142,3158 ****
                               BIGGEST_ALIGNMENT / UNITS_PER_WORD) - 1)))
        save_mode = BLKmode;
  
        stack_area = gen_rtx_MEM (save_mode,
                                memory_address (save_mode,
-                                           
- #ifdef ARGS_GROW_DOWNWARD
                                                plus_constant (argblock,
                                                               - 
high_to_save)
  #else
                                                plus_constant (argblock,
                                                               low_to_save)
- #endif
                                                ));
        if (save_mode == BLKmode)
        {
          save_area = assign_stack_temp (BLKmode, num_to_save, 0);
--- 3154,3172 ----
                               BIGGEST_ALIGNMENT / UNITS_PER_WORD) - 1)))
        save_mode = BLKmode;
  
+ #ifdef ARGS_GROW_DOWNWARD
        stack_area = gen_rtx_MEM (save_mode,
                                memory_address (save_mode,
                                                plus_constant (argblock,
                                                               - 
high_to_save)
+                                               ));
  #else
+       stack_area = gen_rtx_MEM (save_mode,
+                               memory_address (save_mode,
                                                plus_constant (argblock,
                                                               low_to_save)
                                                ));
+ #endif
        if (save_mode == BLKmode)
        {
          save_area = assign_stack_temp (BLKmode, num_to_save, 0);
***************
*** 3334,3348 ****
    if (save_area)
      {
        enum machine_mode save_mode = GET_MODE (save_area);
        rtx stack_area
        = gen_rtx_MEM (save_mode,
                       memory_address (save_mode,
- #ifdef ARGS_GROW_DOWNWARD
                                       plus_constant (argblock, - 
high_to_save)
  #else
                                       plus_constant (argblock, 
low_to_save)
- #endif
                                       ));
        if (save_mode != BLKmode)
        emit_move_insn (stack_area, save_area);
        else
--- 3348,3366 ----
    if (save_area)
      {
        enum machine_mode save_mode = GET_MODE (save_area);
+ #ifdef ARGS_GROW_DOWNWARD
        rtx stack_area
        = gen_rtx_MEM (save_mode,
                       memory_address (save_mode,
                                       plus_constant (argblock, - 
high_to_save)
+                                      ));
  #else
+       rtx stack_area
+       = gen_rtx_MEM (save_mode,
+                      memory_address (save_mode,
                                       plus_constant (argblock, 
low_to_save)
                                       ));
+ #endif
        if (save_mode != BLKmode)
        emit_move_insn (stack_area, save_area);
        else




More information about the Gcc-bugs mailing list