This testcase (extracted from gcc.dg/builtins-32.c):

-------------------------------------------------------------------------------
int signbitl (long double);

int testl (long double x)
{
  return signbitl(x);
}
-------------------------------------------------------------------------------

fails on following configuration:

Compiler version: 4.1.0 20050311(experimental) 
Platform: x86_64-unknown-linux-gnu
configure flags: --prefix=/home/ssb/gcc4
--enable-checking=assert,gc,misc,rtlflag,rtl,tree --disable-werror --e
nable-languages=c,ada,c++,f95,java,objc,treelang

$ ./cc1 bug.c -O1 -quiet
bug.c: In function ‘testl’:
bug.c:5: internal compiler error: in gen_lowpart_general, at rtlhooks.c:58

backtrace:
-------------------------------------------------------------------------------
Breakpoint 1, fancy_abort (file=0xb4b3a8 "../../gcc/gcc/rtlhooks.c", 
    line=58, function=0xc93930 "gen_lowpart_general")
    at ../../gcc/gcc/diagnostic.c:558
558     {
(gdb) bt
#0  fancy_abort (file=0xb4b3a8 "../../gcc/gcc/rtlhooks.c", line=58, 
    function=0xc93930 "gen_lowpart_general")
    at ../../gcc/gcc/diagnostic.c:558
#1  0x000000000091bf14 in gen_lowpart_general (mode=Variable "mode" is not
available.
)
    at ../../gcc/gcc/rtlhooks.c:58
#2  0x0000000000518ef5 in expand_builtin_signbit (exp=Variable "exp" is not
available.
)
    at ../../gcc/gcc/builtins.c:5024
#3  0x000000000051f71b in expand_builtin (exp=0x2aaaaaf4e8c0, 
    target=0x2aaaaaf4d400, subtarget=0x0, mode=SImode, ignore=0)
    at ../../gcc/gcc/builtins.c:5671
#4  0x00000000005c8f4b in expand_expr_real_1 (exp=0x2aaaaaf4e8c0, 
    target=0x2aaaab10f2e0, tmode=Variable "tmode" is not available.
) at ../../gcc/gcc/expr.c:7304
#5  0x00000000005cf5d5 in expand_expr_real (exp=0x2aaaaaf4e8c0, 
    target=0x2aaaab10f2e0, tmode=SImode, modifier=EXPAND_NORMAL, 
    alt_rtl=0x0) at ../../gcc/gcc/expr.c:6380
#6  0x00000000008e472a in expand_return (retval=0x2aaaaaf4e9b0)
    at expr.h:482
#7  0x00000000005c6910 in expand_expr_real_1 (exp=0x2aaaab10a040, 
    target=0x2aaaaaf4d400, tmode=Variable "tmode" is not available.
) at ../../gcc/gcc/expr.c:8214
#8  0x00000000005cf455 in expand_expr_real (exp=0x2aaaab10a040, 
    target=0x2aaaaaf4d400, tmode=VOIDmode, modifier=EXPAND_NORMAL, 
    alt_rtl=0x0) at ../../gcc/gcc/expr.c:6386
#9  0x00000000008e4489 in expand_expr_stmt (exp=0x2aaaab10a040)
    at expr.h:482
#10 0x000000000091d0a9 in expand_gimple_basic_block (bb=0x2aaaab108dd0, 
    dump_file=Variable "dump_file" is not available.
) at ../../gcc/gcc/cfgexpand.c:1133
#11 0x000000000091e54a in tree_expand_cfg ()
    at ../../gcc/gcc/cfgexpand.c:1306
#12 0x0000000000482dcf in execute_pass_list (pass=0xc93960)
    at ../../gcc/gcc/tree-optimize.c:540
#13 0x000000000048308c in tree_rest_of_compilation (fndecl=0x2aaaab108270)
---Type <return> to continue, or q <return> to quit---
    at ../../gcc/gcc/tree-optimize.c:675
#14 0x00000000004148db in c_expand_body (fndecl=0x2aaaab108270)
    at ../../gcc/gcc/c-decl.c:6441
#15 0x0000000000950f0e in cgraph_expand_function (node=0x2aaaab108750)
    at ../../gcc/gcc/cgraphunit.c:831
#16 0x0000000000951088 in cgraph_assemble_pending_functions ()
    at ../../gcc/gcc/cgraphunit.c:305
#17 0x00000000009518ca in cgraph_finalize_function (decl=0x2aaaab108270, 
    nested=0 '\0') at ../../gcc/gcc/cgraphunit.c:397
#18 0x0000000000414f62 in finish_function () at ../../gcc/gcc/c-decl.c:6410
#19 0x00000000004598fc in c_parser_declaration_or_fndef (
    parser=0x2aaaaaf4e870, fndef_ok=1 '\001', empty_ok=Variable "empty_ok" is
not available.
)
    at ../../gcc/gcc/c-parser.c:1310
#20 0x000000000045a8c7 in c_parse_file () at ../../gcc/gcc/c-parser.c:980
#21 0x00000000004478ea in c_common_parse_file (set_yydebug=Variable
"set_yydebug" is not available.
)
    at ../../gcc/gcc/c-opts.c:1097
#22 0x00000000008f0653 in toplev_main (argc=5, argv=Variable "argv" is not
available.
)
    at ../../gcc/gcc/toplev.c:996
-------------------------------------------------------------------------------

-- 
           Summary: ICE in gen_lowpart_general, at rtlhooks.c:58
           Product: gcc
           Version: 4.1.0
            Status: UNCONFIRMED
          Keywords: ice-on-valid-code, ice-checking
          Severity: normal
          Priority: P2
         Component: middle-end
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: belyshev at depni dot sinp dot msu dot ru
                CC: gcc-bugs at gcc dot gnu dot org,roger at eyesopen dot
                    com
 GCC build triplet: x86_64-unknown-linux-gnu
  GCC host triplet: x86_64-unknown-linux-gnu
GCC target triplet: x86_64-unknown-linux-gnu


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

Reply via email to