http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58595

Meador Inge <meadori at codesourcery dot com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |meadori at codesourcery dot com

--- Comment #2 from Meador Inge <meadori at codesourcery dot com> ---
I hit this problem as well.  Here is a much reduced test case:

$ cat repro.c                                                                   
struct state {                                                                  
 unsigned long last;                                                            
 unsigned long current;                                                         
};                                                                              

__thread struct state state;                                                    

void foo()                                                                      
{                                                                               
  while (1) {                                                                   
    __sync_add_and_fetch_4(&state.current, (long) 1);                           
  }                                                                             
}                                                                               
$ ./install/bin/arm-none-linux-gnueabi-gcc --version                        
arm-none-linux-gnueabi-gcc (GCC) 4.9.0 20140219 (experimental)                  
Copyright (C) 2014 Free Software Foundation, Inc.                               
This is free software; see the source for copying conditions.  There is NO      
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.     

meadori@build1-lucid-cs:/scratch/meadori/arm-none-linux-gnueabi-fsf-mainline$
./install/bin/arm-none-linux-gnueabi-gcc -fPIC -O2 repro.c                      
repro.c: In function 'foo':                                                     
repro.c:13:1: internal compiler error: in gen_movsi, at config/arm/arm.md:6272  
 }                                                                              
 ^                                                                              
0x8b3ee69 gen_movsi(rtx_def*, rtx_def*)                                         
       
/scratch/meadori/arm-none-linux-gnueabi-fsf-mainline/src/gcc-mainline/gcc/config/arm/arm.md:6272
 
0x838853f insn_gen_fn::operator()(rtx_def*, rtx_def*) const                     
       
/scratch/meadori/arm-none-linux-gnueabi-fsf-mainline/src/gcc-mainline/gcc/recog.h:284
 
0x844b2be emit_move_insn_1(rtx_def*, rtx_def*)                                  
       
/scratch/meadori/arm-none-linux-gnueabi-fsf-mainline/src/gcc-mainline/gcc/expr.c:3556
 
0x844b6f1 emit_move_insn(rtx_def*, rtx_def*)                                    
       
/scratch/meadori/arm-none-linux-gnueabi-fsf-mainline/src/gcc-mainline/gcc/expr.c:3650
 
0x8508d4a process_insert_insn                                                   
       
/scratch/meadori/arm-none-linux-gnueabi-fsf-mainline/src/gcc-mainline/gcc/gcse.c:2133
 
0x85091f4 pre_edge_insert                                                       
       
/scratch/meadori/arm-none-linux-gnueabi-fsf-mainline/src/gcc-mainline/gcc/gcse.c:2310
 
0x8509c2a pre_gcse                                                              
       
/scratch/meadori/arm-none-linux-gnueabi-fsf-mainline/src/gcc-mainline/gcc/gcse.c:2641
 
0x8509d8a one_pre_gcse_pass                                                     
       
/scratch/meadori/arm-none-linux-gnueabi-fsf-mainline/src/gcc-mainline/gcc/gcse.c:2696
 
0x850caa4 execute_rtl_pre                                                       
       
/scratch/meadori/arm-none-linux-gnueabi-fsf-mainline/src/gcc-mainline/gcc/gcse.c:4127
 
0x850cba8 execute                                                               
       
/scratch/meadori/arm-none-linux-gnueabi-fsf-mainline/src/gcc-mainline/gcc/gcse.c:4186
 
Please submit a full bug report,                                                
with preprocessed source if appropriate.                                        
Please include the complete backtrace with any bug report.                      
See <http://gcc.gnu.org/bugs.html> for instructions.

Reply via email to