public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug bootstrap/14968] New: bootstrapping a gcc cross compiler fails
@ 2004-04-15 16:07 riggle at comcast dot net
2004-04-15 17:06 ` [Bug bootstrap/14968] " pinskia at gcc dot gnu dot org
0 siblings, 1 reply; 2+ messages in thread
From: riggle at comcast dot net @ 2004-04-15 16:07 UTC (permalink / raw)
To: gcc-bugs
Steps to reproduce:
fetch binutils-2.14 & gcc-3.3.3; make build folders
% cd build/binutils
% ../../binutils-2.14/configure --target=arm-elf
% sudo make all install
% cd ../gcc
% ../../gcc-3.3.3/configure --enable-languages=c,c++ --target=arm-elf
% sudo make all install
Here are the last few lines output from make:
/Users/dave/Programming/ARM/foo/gcc/gcc/xgcc -B/Users/dave/Programming/ARM/foo/gcc/gcc/
-B/usr/local/arm-elf/bin/ -B/usr/local/arm-elf/lib/ -isystem /usr/local/arm-elf/include -O2
-DIN_GCC -DCROSS_COMPILE -W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes
-isystem ./include -Dinhibit_libc -fno-inline -g -DIN_LIBGCC2 -D__GCC_FLOAT_NOT_NEEDED
-Dinhibit_libc -I. -I. -I../../../gcc-3.3.3/gcc -I../../../gcc-3.3.3/gcc/. -I../../../gcc-3.3.3/gcc/config
-I../../../gcc-3.3.3/gcc/../include -DFINE_GRAINED_LIBRARIES -mthumb -DL_pack_df -c dp-bit.c -o
libgcc/thumb/_pack_df.o
dp-bit.c: In function `__pack_d':
dp-bit.c:411: error: insn does not satisfy its constraints:
(insn:HI 333 331 561 0x8bcec8 (set (reg:HI 3 r3 [109])
(mem:HI (label_ref 584) [0 S2 A16])) 169 {*thumb_movhi_insn} (insn_list:REG_DEP_ANTI 330
(insn_list:REG_DEP_OUTPUT 329 (nil)))
(expr_list:REG_EQUIV (const_int 2047 [0x7ff])
(nil)))
dp-bit.c:411: internal compiler error: in extract_constrain_insn_cached, at recog.c:2090
Please submit a full bug report,
with preprocessed source if appropriate.
See <URL:http://gcc.gnu.org/bugs.html> for instructions.
make[2]: *** [libgcc/thumb/_pack_df.o] Error 1
make[1]: *** [stmp-multilib] Error 2
make: *** [all-gcc] Error 2
The following is the dp-bit.i intermediate file created by adding -save-temps to X_FLAGS in the
Makefile.
-------------------
# 1 "dp-bit.c"
# 1 "<built-in>"
# 1 "<command line>"
# 1 "dp-bit.c"
# 50 "dp-bit.c"
# 1 "tconfig.h" 1
struct rtx_def;
typedef struct rtx_def *rtx;
struct rtvec_def;
typedef struct rtvec_def *rtvec;
union tree_node;
typedef union tree_node *tree;
# 1 "../../../gcc-3.3.3/include/ansidecl.h" 1
# 16 "tconfig.h" 2
# 1 "../../../gcc-3.3.3/gcc/config/dbxelf.h" 1
# 17 "tconfig.h" 2
# 1 "../../../gcc-3.3.3/gcc/config/elfos.h" 1
# 18 "tconfig.h" 2
# 1 "../../../gcc-3.3.3/gcc/config/arm/unknown-elf.h" 1
# 19 "tconfig.h" 2
# 1 "../../../gcc-3.3.3/gcc/config/arm/elf.h" 1
# 20 "tconfig.h" 2
# 1 "../../../gcc-3.3.3/gcc/config/arm/aout.h" 1
# 21 "tconfig.h" 2
# 1 "../../../gcc-3.3.3/gcc/config/arm/arm.h" 1
# 102 "../../../gcc-3.3.3/gcc/config/arm/arm.h"
typedef enum arm_cond_code
{
ARM_EQ = 0, ARM_NE, ARM_CS, ARM_CC, ARM_MI, ARM_PL, ARM_VS, ARM_VC,
ARM_HI, ARM_LS, ARM_GE, ARM_LT, ARM_GT, ARM_LE, ARM_AL, ARM_NV
}
arm_cc;
extern arm_cc arm_current_cc;
extern int arm_target_label;
extern int arm_ccfsm_state;
extern rtx arm_target_insn;
extern int target_flags;
extern const char * target_fp_name;
extern rtx arm_compare_op0;
extern rtx arm_compare_op1;
extern rtx pool_vector_label;
extern int return_used_this_function;
extern rtx aof_pic_label;
# 504 "../../../gcc-3.3.3/gcc/config/arm/arm.h"
struct arm_cpu_select
{
const char * string;
const char * name;
const struct processors * processors;
};
extern struct arm_cpu_select arm_select[];
enum prog_mode_type
{
prog_mode26,
prog_mode32
};
extern enum prog_mode_type arm_prgmode;
enum floating_point_type
{
FP_HARD,
FP_SOFT2,
FP_SOFT3
};
extern enum floating_point_type arm_fpu;
extern enum floating_point_type arm_fpu_arch;
# 553 "../../../gcc-3.3.3/gcc/config/arm/arm.h"
extern int arm_fast_multiply;
extern int arm_arch4;
extern int arm_arch5;
extern int arm_arch5e;
extern int arm_ld_sched;
extern int thumb_code;
extern int arm_is_strong;
extern int arm_is_xscale;
extern int arm_is_6_or_7;
# 720 "../../../gcc-3.3.3/gcc/config/arm/arm.h"
extern int arm_structure_size_boundary;
# 731 "../../../gcc-3.3.3/gcc/config/arm/arm.h"
extern const char * structure_size_string;
# 1021 "../../../gcc-3.3.3/gcc/config/arm/arm.h"
enum reg_class
{
NO_REGS,
FPU_REGS,
LO_REGS,
STACK_REG,
BASE_REGS,
HI_REGS,
CC_REG,
GENERAL_REGS,
ALL_REGS,
LIM_REG_CLASSES
};
# 1431 "../../../gcc-3.3.3/gcc/config/arm/arm.h"
typedef struct machine_function
{
rtx eh_epilogue_sp_ofs;
int far_jump_used;
int arg_pointer_live;
int lr_save_eliminated;
int frame_size;
unsigned long func_type;
int uses_anonymous_args;
}
machine_function;
typedef struct
{
int nregs;
int call_cookie;
} CUMULATIVE_ARGS;
# 2420 "../../../gcc-3.3.3/gcc/config/arm/arm.h"
extern int arm_pic_register;
extern const char * arm_pic_register_string;
# 2444 "../../../gcc-3.3.3/gcc/config/arm/arm.h"
extern int making_const_table;
# 2786 "../../../gcc-3.3.3/gcc/config/arm/arm.h"
enum arm_builtins
{
ARM_BUILTIN_CLZ,
ARM_BUILTIN_MAX
};
# 22 "tconfig.h" 2
# 1 "../../../gcc-3.3.3/gcc/defaults.h" 1
# 23 "tconfig.h" 2
# 51 "dp-bit.c" 2
# 1 "../../../gcc-3.3.3/gcc/config/fp-bit.h" 1
# 94 "../../../gcc-3.3.3/gcc/config/fp-bit.h"
typedef float SFtype __attribute__ ((mode (SF)));
typedef float DFtype __attribute__ ((mode (DF)));
typedef int HItype __attribute__ ((mode (HI)));
typedef int SItype __attribute__ ((mode (SI)));
typedef int DItype __attribute__ ((mode (DI)));
# 112 "../../../gcc-3.3.3/gcc/config/fp-bit.h"
typedef unsigned int UHItype __attribute__ ((mode (HI)));
typedef unsigned int USItype __attribute__ ((mode (SI)));
typedef unsigned int UDItype __attribute__ ((mode (DI)));
# 215 "../../../gcc-3.3.3/gcc/config/fp-bit.h"
typedef UDItype fractype;
typedef USItype halffractype;
typedef DFtype FLO_type;
typedef DItype intfrac;
# 343 "../../../gcc-3.3.3/gcc/config/fp-bit.h"
typedef enum
{
CLASS_SNAN,
CLASS_QNAN,
CLASS_ZERO,
CLASS_NUMBER,
CLASS_INFINITY
} fp_class_type;
typedef struct
{
fp_class_type class;
unsigned int sign;
int normal_exp;
union
{
fractype ll;
halffractype l[2];
} fraction;
} fp_number_type;
typedef union
{
FLO_type value;
fractype value_raw;
halffractype words[2];
struct
{
fractype fraction:52 __attribute__ ((packed));
unsigned int exp:11 __attribute__ ((packed));
unsigned int sign:1 __attribute__ ((packed));
}
bits;
# 411 "../../../gcc-3.3.3/gcc/config/fp-bit.h"
}
FLO_union_type;
extern FLO_type __pack_d (fp_number_type *);
extern void __unpack_d (FLO_union_type *, fp_number_type *);
# 435 "../../../gcc-3.3.3/gcc/config/fp-bit.h"
extern int __fpcmp_parts_d (fp_number_type *, fp_number_type *);
# 511 "../../../gcc-3.3.3/gcc/config/fp-bit.h"
extern SFtype __make_fp (fp_class_type, unsigned int, int, USItype);
# 52 "dp-bit.c" 2
# 144 "dp-bit.c"
extern const fp_number_type __thenan_df;
__inline__
static fp_number_type *
nan (void)
{
return (fp_number_type *) (& __thenan_df);
}
__inline__
static int
isnan ( fp_number_type * x)
{
return x->class == CLASS_SNAN || x->class == CLASS_QNAN;
}
__inline__
static int
isinf ( fp_number_type * x)
{
return x->class == CLASS_INFINITY;
}
__inline__
static int
iszero ( fp_number_type * x)
{
return x->class == CLASS_ZERO;
}
__inline__
static void
flip_sign ( fp_number_type * x)
{
x->sign = !x->sign;
}
extern FLO_type __pack_d ( fp_number_type * );
FLO_type
__pack_d ( fp_number_type * src)
{
FLO_union_type dst;
fractype fraction = src->fraction.ll;
int sign = src->sign;
int exp = 0;
if (0 && (isnan (src) || isinf (src)))
{
exp = (0x7ff);
fraction = ((fractype) 1 << 52) - 1;
}
else if (isnan (src))
{
exp = (0x7ff);
if (src->class == CLASS_QNAN || 1)
{
fraction |= 0x8000000000000LL;
}
}
else if (isinf (src))
{
exp = (0x7ff);
fraction = 0;
}
else if (iszero (src))
{
exp = 0;
fraction = 0;
}
else if (fraction == 0)
{
exp = 0;
}
else
{
if (src->normal_exp < (-(1023)+1))
{
# 247 "dp-bit.c"
int shift = (-(1023)+1) - src->normal_exp;
exp = 0;
if (shift > 64 - 8L)
{
fraction = 0;
}
else
{
int lowbit = (fraction & (((fractype)1 << shift) - 1)) ? 1 : 0;
fraction = (fraction >> shift) | lowbit;
}
if ((fraction & 0xff) == 0x80)
{
if ((fraction & (1 << 8L)))
fraction += 0x7f + 1;
}
else
{
fraction += 0x7f;
}
if (fraction >= ((fractype)1<<(52 +8L)))
{
exp += 1;
}
fraction >>= 8L;
}
else if (!0
&& src->normal_exp > 1023)
{
exp = (0x7ff);
fraction = 0;
}
else
{
exp = src->normal_exp + 1023;
if (!0)
{
if ((fraction & 0xff) == 0x80)
{
if (fraction & (1 << 8L))
fraction += 0x7f + 1;
}
else
{
fraction += 0x7f;
}
if (fraction >= ((fractype)1<<(52 +1+8L)))
{
fraction >>= 1;
exp += 1;
}
}
fraction >>= 8L;
if (0 && exp > (0x7ff))
{
exp = (0x7ff);
fraction = ((fractype) 1 << 52) - 1;
}
}
}
dst.bits.fraction = fraction;
dst.bits.exp = exp;
dst.bits.sign = sign;
# 402 "dp-bit.c"
{
halffractype tmp = dst.words[0];
dst.words[0] = dst.words[1];
dst.words[1] = tmp;
}
return dst.value;
}
# 1501 "dp-bit.c"
extern SFtype __make_fp (fp_class_type, unsigned int, int, USItype);
--
Summary: bootstrapping a gcc cross compiler fails
Product: gcc
Version: 3.3.3
Status: UNCONFIRMED
Severity: critical
Priority: P2
Component: bootstrap
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: riggle at comcast dot net
CC: gcc-bugs at gcc dot gnu dot org
GCC build triplet: powerpc-apple-darwin7.3.0
GCC host triplet: powerpc-apple-darwin7.3.0
GCC target triplet: arm-unknown-elf
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=14968
^ permalink raw reply [flat|nested] 2+ messages in thread
* [Bug bootstrap/14968] bootstrapping a gcc cross compiler fails
2004-04-15 16:07 [Bug bootstrap/14968] New: bootstrapping a gcc cross compiler fails riggle at comcast dot net
@ 2004-04-15 17:06 ` pinskia at gcc dot gnu dot org
0 siblings, 0 replies; 2+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2004-04-15 17:06 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From pinskia at gcc dot gnu dot org 2004-04-15 16:07 -------
This is a dup of bug 14166 which is fixed for 3.3.4.
*** This bug has been marked as a duplicate of 14166 ***
--
What |Removed |Added
----------------------------------------------------------------------------
Status|UNCONFIRMED |RESOLVED
Resolution| |DUPLICATE
Target Milestone|--- |3.3.4
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=14968
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2004-04-15 16:07 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2004-04-15 16:07 [Bug bootstrap/14968] New: bootstrapping a gcc cross compiler fails riggle at comcast dot net
2004-04-15 17:06 ` [Bug bootstrap/14968] " pinskia at gcc dot gnu dot org
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).