Re: ix86_data_alignment: bad defaults?

2007-02-23 Thread DJ Delorie
Yes, this is OK. Thanks, applied. (to be very pedantic, we can assert that MAX_OFILE_ALIGNMENT=256 on x86-64 targets, but well). My head hurts at the thought of x86_64-aout. I fully agree with Richard's interpretation concerning BIGGEST_ALIGNMENT meaning - ie in special cases for

Re: ix86_data_alignment: bad defaults?

2007-02-23 Thread DJ Delorie
Something like this, then? Sure. Committed, then.

ix86_data_alignment: bad defaults?

2007-02-22 Thread DJ Delorie
Why do we use 256 instead of BIGGEST ALIGNMENT in ix86_data_alignment? This is causing all sorts of build problems for djgpp, as I'm getting lots of warnings about too-big alignments, and with -Werror... Index: i386.c === --- i386.c

Re: ix86_data_alignment: bad defaults?

2007-02-22 Thread DJ Delorie
It is to improve performance of string functions on larger chunks of data. x86-64 specify this, for x86 it is optional. I don't think we should end up warning here - it is done only for static variables where the alignment can be higher than what BIGGEST_ALIGNMENT promise. Higher than

Re: ix86_data_alignment: bad defaults?

2007-02-22 Thread DJ Delorie
Yes, BIGGEST_ALIGNMENT is supposed to be the biggest alignment the compiler will ever use. Will ever use, or can ever use? Based on the code, it looks like can ever use - i.e. it's an edict to the compiler to not exceed that value, thus varasm warns when you exceed it. So if

Re: ix86_data_alignment: bad defaults?

2007-02-22 Thread DJ Delorie
For ELF, this would be 256, good. For pecoff, that would be smaller. Actually, I think pecoff supports larger alignments. DJGPP is plain COFF (similar to i386-coff).

new port to older gcc: Toshiba Media Processor (MeP)

2007-02-15 Thread DJ Delorie
On behalf of Red Hat I would like to publish patches to add support for the Toshiba Media Processor (MeP) to GCC 3.4. We don't expect this port to be accepted into the gcc source tree as-is, as the 3.4 branch is closed to new ports, and this port needs some core gcc changes. We don't yet have a

subreg_get_info vs mode restrictions in registers?

2007-01-24 Thread DJ Delorie
subreg_get_inf() in rtlanal.c blindly assumes that any hard register can hold any smaller-than-native mode: nregs_ymode = hard_regno_nregs[xregno][ymode]; . . . (GET_MODE_SIZE (ymode) % nregs_ymode) == 0) However, there are registers in m32c that cannot hold a QImode value. By this,

Re: subreg_get_info vs mode restrictions in registers?

2007-01-24 Thread DJ Delorie
So can you expand on what is actually going wrong? At the moment, the problem is divide by zero - nregs_ymode is zero. IIRC the problem before was that reload kept choosing $r2 or $r3 for pseudos that were QImode. Since the m32c is already register starved, this leads to unfixable situations.

Re: subreg_get_info vs mode restrictions in registers?

2007-01-24 Thread DJ Delorie
I believe we've generally assumed that all hard registers can be subreg'd. That said, HARD_REGNO_MODE_OK should keep QImode values out of those registers. And insn constraints should keep reload from using those registers for QImode insns. So can you expand on what is actually going

Re: subreg_get_info vs mode restrictions in registers?

2007-01-24 Thread DJ Delorie
Followup - it seems that CANNOT_CHANGE_MODE_CLASS governs whether these subregs are attempted. It's not clear from the documentation that it does this.

Re: subreg_get_info vs mode restrictions in registers?

2007-01-24 Thread DJ Delorie
Here's an example of bad assumptions. The current code calculates the subreg location BEFORE checking to see if such a subreg is legal. This patch moved the legality check before the location calculations. With this patch, I can build gcc's libraries and newlib, but I haven't run full

Re: Found Error in link-script for R8C

2007-01-19 Thread DJ Delorie
Hello to everyone, Wrong list. The R8C link scripts are part of newlib (libgloss), not gcc. RESETVEC (r) : ORIGIN = 0xfffc, LENGTH = 4 But this is wrong. The Resetvektor for R8C is only 16Bit and not 32bit. The REJ09B0169-0100 page 61 shows the reset vector as being 0FFFCh to 0h.

Re: Link tests not allowed

2006-12-31 Thread DJ Delorie
Newlib targets are targets without their own native libc. I find it exceedingly hard to believe that AIX falls into this category. Newlib supports some platforms that have their own native libc.

Re: Link tests not allowed

2006-12-29 Thread DJ Delorie
Is your target a newlib target? If so, are you including --with-newlib?

Re: Link tests not allowed

2006-12-29 Thread DJ Delorie
Why isn't --with-newlib the default for newlib targets? --with-newlib *tells* us that it's a newlib target.

Re: Profiling broken in GCC 4.1.0 for DJGPP

2006-12-20 Thread DJ Delorie
I suggest that you send this report to [EMAIL PROTECTED], the DJGPP port of GCC maintainers are much more likely to respond there. He did that first.

Re: Announce: MPFR 2.2.1 is released

2006-12-06 Thread DJ Delorie
DJ, as a build machinery maintainer, you are authorized to approve such a patch. Is anything holding you back? You mean, besides politics? The last time such a patch came through, we were in the middle of discussing the various --with-* options. I wanted to let that settle first.

Re: Announce: MPFR 2.2.1 is released

2006-12-05 Thread DJ Delorie
Paolo Bonzini [EMAIL PROTECTED] writes: That idea got nixed, but I think it's time to revisit it. Paolo has worked out the kinks in the configury and we should apply his patch and import the gmp/mpfr sources, IMHO. Note that these two issues (my patch, which by the way was started and

Re: Announce: MPFR 2.2.1 is released

2006-12-04 Thread DJ Delorie
Joe Buck [EMAIL PROTECTED] writes: The ordinary user who builds gcc from source does not need *any* version of automake, autoconf, etc., so any strict requirements that are imposed on these tools have an impact only on gcc developers. I wish we could have similar requirements for GMP and

Re: [gomp] distributing libgomp/libgomp.info ?

2006-11-22 Thread DJ Delorie
This is because libiberty's API is all internal really and is always changing and never stable. It is not really a well defined library unlike say libgomp. ... although we do try to keep backward compatiblity when possible, so that newer libiberties work with older gcc/binutils/gdb/whatever.

Re: gpl version 3 and gcc

2006-11-15 Thread DJ Delorie
Ed S. Peschko [EMAIL PROTECTED] writes: And in any case, why should it be off-topic? Regardless of how much it affects, us, it's off-topic *by definition* in *this forum*. This isn't the right place to discuss such topics because that's the way we want it to be.

Re: [m32c-elf] losing track of register lifetime in combine?

2006-11-09 Thread DJ Delorie
I compared the generated code with an equivalent explicit test, and discovered that gcc uses a separate rtx for the intermediate: i = 0xf; if (j = 16) { int i2; i2 = i 8; i = i2 8; j -= 16; } This seems to avoid the combiner problem, becuase you don't have the same

Re: build failure, GMP not available

2006-11-07 Thread DJ Delorie
Okay for mainline? Ok. src too, please. 2006-11-06 Kaveh R. Ghazi [EMAIL PROTECTED] * configure.in: Robustify error message for missing GMP/MPFR. * configure: Regenerate.

[m32c-elf] losing track of register lifetime in combine?

2006-11-07 Thread DJ Delorie
The r8c/m16c family cannot shift by more than 16 bits at a time ever, or 8 bits at a time with constant shifts. So, to do a variable number of shift on a 32 bit value, it needs to emit a conditional, turning the attached example into this: i = 0xf; if (j = 16) { i = 8; i = 8;

Re: Splay Tree

2006-10-30 Thread DJ Delorie
Could this patch be applied now? http://gcc.gnu.org/ml/gcc/2006-07/msg00210.html Assuming it's been bootstrapped with no regressions, and the legal paperwork is in place, yes.

Re: Including GMP/MPFR in GCC repository?

2006-10-12 Thread DJ Delorie
Okay for stage1? Ok, assuming everyone agrees to those versions ;-) 2006-10-12 Kaveh R. Ghazi [EMAIL PROTECTED] * configure.in: Require GMP-4.1+ and MPFR-2.2+. * configure: Regenerate.

Re: does gcc support multiple sizes, or not?

2006-08-17 Thread DJ Delorie
Sure, it would be nice if these things were pointers. At the moment, they are. However, I will reject any patch to support these alternative pointers in C++ until all the language issues have been resolved. At the moment, there are no language issues to resolve. The only thing people were

Re: does gcc support multiple sizes, or not?

2006-08-17 Thread DJ Delorie
# I'm not trying to dereference any of these nonstandard pointers. Not *now*. I'd like to in the future.

Re: Wannabe Contributor: Questions related to Dev Box setup and other issues

2006-08-16 Thread DJ Delorie
Although, I guess the FSF and RedHat would encourage you to use a free operating system instead of any of the propietary ones mentioned above. Isn't it? ;-) Although this is straying off-topic, I'll answer this one time - the FSF would prefer that everyone use nothing but free software, but

Re: does gcc support multiple sizes, or not?

2006-08-16 Thread DJ Delorie
typedef void (*ifunc)() __attribute__((mode(SI))); ifunc __attribute__((section(.resetvec))) reset_vector = start; Maybe it is just me, but it seems more natural to have: typedef void (*long ifunc)(); You can use #defines to make it pretty: #define far __attribute__((mode(SI)))

Re: does gcc support multiple sizes, or not?

2006-08-16 Thread DJ Delorie
I'll again point out that in your reset-vector example you don't actually need any pointer operations. I'm not trying to dereference any of these nonstandard pointers. I just need to do all the other things - assignment, copy, storage, cast to/from integers, etc. Rarely, calling a function

Re: does gcc support multiple sizes, or not?

2006-08-16 Thread DJ Delorie
vects[A0_VEC] = __builtin_pointer32 (timer_a0_handler); Note that the builtin would be needed for run-time conversion between pointers of different sizes, i.e. casts. Why? Well, gcc doesn't just know how to do such conversions. For example, TPF has a 31 bit address. To convert it to 64,

Re: does gcc support multiple sizes, or not?

2006-08-16 Thread DJ Delorie
Good! In that case, you don't need them to be pointers at all. :-) I think you should just declare them as integer types. That makes initializing function pointers messy. Besides, they're not integers. They're pointers. I'd *like* to be able to dereference them in some simple ways in the

Re: does gcc support multiple sizes, or not?

2006-08-16 Thread DJ Delorie
but I think you're much more likely to actually get the built-in approach to work correctly in C++. But... initializing function pointers already works, without builtins. Initializing an N bit pointer from an N bit integer now works with a cast. Copying an N bit pointer to another N bit

Re: does gcc support multiple sizes, or not?

2006-08-15 Thread DJ Delorie
I think having pointers be the same size is ingrained in the whole compiler, not just the front ends. Having *implicit* pointers be *a specific* size certainly is. Made the m32c project a lot harder. There's a lot of places that use POINTER_SIZE instead of MODE_SIZE(x), or Pmode instead of

Re: does gcc support multiple sizes, or not?

2006-08-15 Thread DJ Delorie
I'm not sure if I understand. In ISO C++, it would be fine for char * to have more bits than all other pointers. The standard says X* - Y* - X* is value-preserving if Y has no stricter alignment than X. Since char has weak alignment requirements, Y can be char. Is that what you mean?

Re: Wannabe Contributor: Questions related to Dev Box setup and other issues

2006-08-15 Thread DJ Delorie
1) Any advise on selecting Linux distro? Any one will do. Or Windows, MS-DOS, AIX, IRIX, Solaris, Mac OS/X, or any other platform GCC runs on. Use whatever you're comfortable with.

Re: does gcc support multiple sizes, or not?

2006-08-14 Thread DJ Delorie
I'm very suspicious of allowing users to specify this via attributes. Me too, but that's what extensions are all about. You never know what the user is going to need to do. The M16C is an example - it has a 16 bit pointer, but has a few special opcodes for using a 32 bit pointer to access

Re: does gcc support multiple sizes, or not?

2006-08-14 Thread DJ Delorie
Aren't there some targets (like ia64-hpux) that support two different sizes of pointers, Heck, the i386 has ALWAYS supported multiple pointer sizes (16, 16+16, 32, and 32+16). We've just refused to pay the (high) price for supporting them.

Re: does gcc support multiple sizes, or not?

2006-08-14 Thread DJ Delorie
Well, I think it's in direct conflict with the C++ standard. If X is a 32-bit pointer type, and x is a value of type X, Y is a 16-bit pointer type, then: (X*)(Y*)x is supposed to get you back the value of x, but I don't see how that can work, in general. Where in the standard does

Re: does gcc support multiple sizes, or not?

2006-08-14 Thread DJ Delorie
The except that sentence implies the statement above, assuming that the pointed-to type does not have stricter alignment. So, if casting a 32-bit pointer to int to a 16-bit pointer to char and back does not always yield the same value, then something has to give. reinterpret_cast doesn't

Re: does gcc support multiple sizes, or not?

2006-08-14 Thread DJ Delorie
reinterpret_cast doesn't require that the intermediate form have the same bit pattern. Exactly so. However, all valid pointers must be handles, so unless the 32-bit address space is sparse, something will go wrong. I would go so far as to say that it's defined (hence supported) if the

Re: s390: got symbol+offset

2006-08-12 Thread DJ Delorie
The GOT is an array of addresses, and [EMAIL PROTECTED] addresses one of these addresses. Thus [EMAIL PROTECTED] points to the address of a different and unrelated variable, assuming it is still within the range of the GOT. You must have a 32 bit machine on your desk ;-) On a 64 bit BE

s390: got symbol+offset

2006-08-11 Thread DJ Delorie
There are occasions where gcc wants to read some subreg of an address in the GOT (builtin_strlen is one example, depending on optimization). However, this code in s390.c (s390_decompose_address()) seems to disallow such constructs: /* In the small-PIC case, the linker converts @GOT

Re: does gcc support multiple sizes, or not?

2006-08-07 Thread DJ Delorie
Who's we? We means gcc. The middle-end and relevant back-ends support it, but clearly not all the front ends. C and Ada does but your experiment seems to show that C++ does not. Does this mean that there's a bug in the C++ front end?

Re: does gcc support multiple sizes, or not?

2006-08-07 Thread DJ Delorie
I'd say so, but is more likely is in the ICE-on-illegal-program class. That puts it back to the original question. Is the program legal or not? I.e. do we support multiple simultaneous pointer sizes?

Re: does gcc support multiple sizes, or not?

2006-08-07 Thread DJ Delorie
And back to my original answer: it's up to each language to decide that. Hence my original question: is it legal or not? What did the C++ developers decide?

does gcc support multiple sizes, or not?

2006-08-04 Thread DJ Delorie
In cp/cvt.c we have this code in cp_convert_to_pointer: if (INTEGRAL_CODE_P (form)) { if (TYPE_PRECISION (intype) == POINTER_SIZE) return build1 (CONVERT_EXPR, type, expr); expr = cp_convert (c_common_type_for_size (POINTER_SIZE, 0), expr); /* Modes may be

Re: Searching configured and relocated prefix.

2006-07-23 Thread DJ Delorie
Yes, that's clever. But, you can create a symbolic link to the sysroot from each installation with a single command. And, your installer for third-party developers can do that for you. Beware - the linker expands symlinks to determine if a library comes from the sysroot or not. It affects

dwarf2 initial_return_save vs gdb

2006-06-27 Thread DJ Delorie
I'm looking at the H8/300 frame debugging info, and it seems to me that gdb needs to have at least *some* information about where the return address is in order to unwind the stack using dwarf2 call frame information, perhaps because H8/300 saves the RA on the stack, not in a register. However,

sh3e opcodes in sh2e's crt1.o?

2006-06-23 Thread DJ Delorie
It looks like crt1.asm unconditionally includes an sh3e opcode (stc spc,r1) which causes problems trying to build an sh2a-single-only executable, which falls back to sh2e but doesn't have this sh3e opcode. Comments? 1091 ! Here handler available, call it. 1092

Re: sh3e opcodes in sh2e's crt1.o?

2006-06-23 Thread DJ Delorie
It's not actually unconditional, but the condition it depends on is set conditionally with a flawed condition. Please try the attached patch. That seems to fix it, although I only tested a simple hello.c program. Thanks!

Re: What is baseline for the testsuite?

2006-06-22 Thread DJ Delorie
So I guess that there is no baseline as such, and the only meaningful way to use the results is to compare testsuite outputs with and without your changes? That's what I always do. Hence the no regressions we report; they're before/after regressions. Very important to diff the two source

Re: What is baseline for the testsuite?

2006-06-22 Thread DJ Delorie
If you're doing up a new port, and want it to work well, then the absolute, there should be no unexpected failures is a good place to aim for. It's a wonderful absolute, but not always practical. I keep a history of test results for my ports, with a goal of no regressions relative to those.

Re: [wwwdocs] Complete revamp of our web site

2006-06-11 Thread DJ Delorie
Is your concern mainly Lynx users (and similar users)? It should be feasible to move the navigation bar to the beginning for these while still keeping it on the right side to be in sync with www.gnu.org. Lynx is an example of a non-GUI browser. All non-GUI browsers would suffer similarly.

Re: [wwwdocs] Complete revamp of our web site

2006-06-05 Thread DJ Delorie
Feedback welcome! Right-side navigation bars are nonstandard. It should be moved to the left side. Don't accept the search engine excuse; that's easily fixable. Also, by fixing the search engine issue you punish Lynx users; the navigation menu is now near (but not at) the end of the text.

gen_lowpart vs big endian insv

2006-06-02 Thread DJ Delorie
h8300 has an HImode insv pattern. If you try to use it with an SImode argument, expmed.c uses gen_lowpart to force it into the desired mode. However, gen_lowpart eventually fails for pseudos on big endian: rtx gen_rtx_SUBREG (enum machine_mode mode, rtx reg, int offset) { gcc_assert

Re: Libiberty

2006-06-01 Thread DJ Delorie
I haven't found anything in the docs that I see that explains the libiberty library. You didn't find the libiberty documentation? It's separate from the gcc documentation, but available on the gcc docs web page. Can this be compiled without having to compile a whole new compiler? Er,

Re: GCC 4.1.1 RC1

2006-05-23 Thread DJ Delorie
I'd imagine you might want to update bugs.html, in this case? Or, perhaps, branch's install.texi's Host/Target specific installation notes for GCC ?

Re: rtl_loop_init vs try_redirect_by_replacing_jump vs simple jumps

2006-05-23 Thread DJ Delorie
You're misunderstanding how this code works. In cfglayout mode, there is no order in the basic blocks such that BLOCK_FOR_INSN(NEXT_INSN(BB_END(BB)) ) == BB-next_bb. This means that you can fall through to other blocks than next_bb. Thanks for the tip, I figured out what was really

Re: rtl_loop_init vs try_redirect_by_replacing_jump vs simple jumps

2006-05-23 Thread DJ Delorie
Sounds like you need a memory clobber constraint on the asm... ? Yup, that looks like it would do the trick. Thanks!

Re: PATCH: Update src/intl from gcc/intl

2006-05-22 Thread DJ Delorie
I hereby request that you add automatic intl/ merging to your script. :-) Ok :-)

Re: GCC 4.1.1 RC1

2006-05-22 Thread DJ Delorie
FYI m32c still doesn't build libssp due to the GCC_NO_EXECUTABLES thing. Works OK with it disabled, though, for C and C++. From whence will release notes be published?

Re: GCC 4.1.1 RC1

2006-05-22 Thread DJ Delorie
From whence will release notes be published? From *where* of course.

vec.h vs build/*.o

2006-05-22 Thread DJ Delorie
vec.h has a lot of unprotected 'static inline' functions. With its inclusion in many build-machine files via rtl.h, this essentially precludes building on a machine without gcc (and a recent enough one, at that). It also requires using optimization for build/*.o, which complicates debugging

rtl_loop_init vs try_redirect_by_replacing_jump vs simple jumps

2006-05-22 Thread DJ Delorie
I've got a case where an unconditional simple jump is being removed, yet it doesn't jump to the next insn. The code in question seems suspect... Here we force CLEANUP_CFGLAYOUT true: void cfg_layout_initialize (unsigned int flags) { . . . cleanup_cfg (CLEANUP_CFGLAYOUT | flags); } in

Re: PATCH: Update src/intl from gcc/intl

2006-05-19 Thread DJ Delorie
! intl/; config.rhost; libiberty/; libiberty's part ! ... ! merge. Otherwise, changes are automatically merged, usually ! within a day. Who signed up to do the automatic merge?

Re: PATCH: Update src/intl from gcc/intl

2006-05-19 Thread DJ Delorie
I will unless you want to add this to the libiberty merge you do now. I don't mind adding it to my script, if people agree that's what they want. It's just that nobody asked :-P

Re: address order and BB numbering

2006-05-19 Thread DJ Delorie
Then this must be a very dummy question. How the compiler keep the instruction order in the RTL IR format in a function? By the information like insn 50 56 51 ? e.g., (insn 50 56 51 4 (clobber (reg/i:SI 0 ax)) -1 (nil) ) It's a linked list. The 56 and 51 link to the previous and next

Re: intl directory: gcc vs. src

2006-05-16 Thread DJ Delorie
Who maintains this automatic merge process? Me. I have a cron job that checks out gcc's and src's libiberty and include, compares them, copies any differing files to src, and sends me email. I then run a do it script to do the actual commit. There's not much advantage in using this setup for

Re: intl directory: gcc vs. src

2006-05-16 Thread DJ Delorie
Was there not a way to combine the two (gcc and src) via console commands? We're not talking about combining source trees for a build, we're talking about making sure both source trees happen to have the same sources in them to start with.

Re: mips: -G0 vs __dso_handle

2006-05-15 Thread DJ Delorie
I'll pre-approve that change, but I'll also defer to any other maintainer who has a solution they prefer. How about this one? 2006-05-15 DJ Delorie [EMAIL PROTECTED] * crtstuff.c (__dso_handle): Set section from TARGET_LBIGCC_SDATA_SECTION if defined. * doc/tm.text

Re: default_secondary_reload: class vs scratch_class

2006-05-10 Thread DJ Delorie
What reason is there to have scratch_class be something else? SECONDARY_RELOAD_CLASS has the option of limiting the reload class. The mn10300 has a generic SImode reload_in that allows GENERAL_REGS, but SECONDARY_RELOAD_CLASS specifies a smaller class based on the registers that need reloading.

Re: default_secondary_reload: class vs scratch_class

2006-05-10 Thread DJ Delorie
I'd hesitate to apply patches to default_secondary_reload. Even if it's wrong? If your port triggers any of the sanity checks, convert it to the new infrastructure, as it provides a much better interface. In my case, I'm just trying to get the am33 port to function, because I have some

Re: mips: -G0 vs __dso_handle

2006-05-10 Thread DJ Delorie
How about this? Tested under mipsisa64-elf with no regressions. The other two I found by inspection; they're the only other two that have .sdata and use -G 0. 2006-05-09 DJ Delorie [EMAIL PROTECTED] * crtstuff.c: Ensure that __dso_handle is placed in .sdata for mips, iq2000

mips: -G0 vs __dso_handle

2006-05-08 Thread DJ Delorie
For mips-elf builds, crtbegin.o is built with -G 0 (in case $gp isn't used). This makes __dso_handle be put in .data. However, the prototype created by cp/decl.c is void *__dso_data which causes GPrel addressing if your application is built without -G 0 (i.e. the default), which causes link

Re: exposing SH's fpscr support

2006-05-03 Thread DJ Delorie
Well, if changing fpscr and fpscr_values at the same time was your only concern, you could just call __set_fpscr. That puts the burden of preserving the SZ / PR bit in fpscr on the caller, though. (i.e. read the current value of fpscr, modify the bits you want changed, place that changed

exposing SH's fpscr support

2006-05-01 Thread DJ Delorie
I'd like to extend the FPSCR support functions in SH's libgcc.a to include a way for applications to change the bits that GCC doesn't care about (exception handling, denormals, etc). I've come up with this routine and (after much head-banging) managed to test it on real hardware. The idea is

Re: libstdc++ in a combined tree

2006-04-28 Thread DJ Delorie
The key problem is that we have two ways And then he lists *three* ;-) * Hard-coded information about the target I seem to recall a long time ago, talk of a global target capabilities database. It proved too unwieldy to implement. However, a toplevel configury snippet (aka config.gcc)

Re: libstdc++ in a combined tree

2006-04-28 Thread DJ Delorie
Right, I understand. Assuming that they exist at this point, you could theoretically pass enough options to make it work -- although, as you say, it's hard to know what those options ought to be. If everything is set up right, it's -I options (for libc headers), -L options (for libc and

Re: libstdc++ in a combined tree

2006-04-28 Thread DJ Delorie
Well, that sounds like an autoconf bug. If it refuses to work when presented with a pile of compiler options, that just sounds bad. No, I think it's our bug - we do this: GCC_NO_EXECUTABLES GLIBCXX_ENABLE_SYMVERS([yes]) You can't logically expect that to work, no matter how many compiler

Re: libstdc++ in a combined tree

2006-04-28 Thread DJ Delorie
I see -- but why did we set GCC_NO_EXECUTABLES? Don't we only do that when we've failed to link things? No, it's explicit: if test $build != $host; then # We are being configured with some form of cross compiler. GLIBCXX_IS_NATIVE=false case $host,$target in

Re: libstdc++ in a combined tree

2006-04-28 Thread DJ Delorie
What are you building here? A combined tree including newlib? If so, I bet you aren't specifying --with-newlib; that turns off a bunch The toplevel configure automatically adds that in a combined tree (or at least it should), if newlib is being built. The two targets I'm currently working

libstdc++ in a combined tree

2006-04-25 Thread DJ Delorie
Another one like libssp. In libstdc++-v3's configure.ac, we see this: # This depends on GLIBCXX CHECK_LINKER_FEATURES, but without it assumes no. GLIBCXX_ENABLE_SYMVERS([yes]) The comment lies. If we haven't yet checked the linker features, it will check them, and configure will fail in a

Re: Reloading Problems and Memory Addressing

2006-04-24 Thread DJ Delorie
Try this patch: http://people.redhat.com/dj/m32c/gcc-reload1.c.patch It might help a little, although it doesn't solve the fundamental design flaw (not being able to restart reload after breaking a complex insn apart).

Re: Problems in cross compiling GCC

2006-04-18 Thread DJ Delorie
Don't build *in* the source directory. Use two separate build directories, one for each target. At this point, you should run make distclean to clean up the source tree before doing anything else.

Re: Help with Windows DLL linking

2006-04-18 Thread DJ Delorie
gcc -o myprog myprog.c -L./ -lfoo I get an error for each one of the This isn't the right forum for this (try the binutils or cygwin forums), but try just listing the .dll itself on the gcc command line (no -L or -l).

Re: v850, dwarf2, too many fp-sp compensations?

2006-04-13 Thread DJ Delorie
Both are supposed to happen. I can't really debug this without a test case. This works on ia64, which is a non-dwarf-unwind target, so that in-and-of itself isn't the problem. This is from the gdb.base testsuite: int factorial (int value) { if (value 1) { /* set breakpoint 7 here */

[ping] dwarf2out vs DWARF_DEBUG bug?

2006-04-10 Thread DJ Delorie
[note subject change, since I suspect it's not v850-specific] There are 18 target directories that define DWARF2_DEBUGGING_INFO (not counting all those that get it from elfos.h et al) but only 8 that define DWARF2_UNWIND_INFO (both from just a simple grep). Date: Tue, 4 Apr 2006 16:41:25 -0400

CC Lists [was Re: GCC Port (gcc backend) for Microchip PICMicro microcontroller]

2006-04-07 Thread DJ Delorie
(And who are all of the people in the CC list? Is there some other list discussing this?) We were randomly CC'd in the initial spew of emails, although I personally am already on the gcc list, so CC'ing me on this only serves to mess up my procmail filters. I've asked privately to be removed

v850, dwarf2, too many fp-sp compensations?

2006-04-04 Thread DJ Delorie
The v850 is a dwarf-debug target, but not a dwarf-unwind target. In dwarf2out.c we first calculate the fp to fb offset in compute_frame_pointer_to_fb_displacement. The frame pointer is not needed, so note that we include the fp-sp elimination offset in frame_pointer_fb_offset.

Re: [Bug c++/26825] New: bad allocation while adding new elements to vector

2006-03-23 Thread DJ Delorie
When reporting DJGPP bugs, please run your app under gdb and use where to get a traceback, or use djgpp's symify (or bfdsymify) to replace these hex numbers with file/line information. You may need to compile your application with -g to get symbolic debugging information. Call frame traceback

prev_nonnote_insn that follow branches?

2006-03-09 Thread DJ Delorie
Is there a function like prev_nonnote_insn that, when it encounters a label preceeded by a barrier, attempts to determine if there's a single jump to that branch and returns it if so?

Re: gcc build / test times on multi-core hosts?

2006-02-20 Thread DJ Delorie
Some multi-core processors come with less L2 cache than their multi-CPU counterparts. This, and your other arguments, while valid, apply independently of the CPU. There are a lot of factors that determine compile speed. FYI SGIs tend to have crossbars. Was that UMA or NUMA, and how far up

Re: Build failed on trunk

2006-02-20 Thread DJ Delorie
I think this is caused by a typos error in libiberty/pexecute.c. Doesn't anyone else see it? Already fixed.

Re: gcc build / test times on multi-core hosts?

2006-02-18 Thread DJ Delorie
Has anybody done timings for gcc bootstrap / cross builds and regtests with modern multi-core processors? I wonder what a sensible modern configuration would be for gcc development, but the the multimedia and games benchmarks I found on the web neither seem particularily relevant, nor do

Re: Error making a cross-compiler

2006-02-16 Thread DJ Delorie
cc1: error: ../include/sys/version.h: No such file or directory What I'm doing wrong?. Where should I get the missing header files?. This is a header that comes with DJGPP's library. Like most cross compilers, you have to install part of the runtime package (usually at least the

Re: Design a microcontroller for gcc

2006-02-15 Thread DJ Delorie
Well, cmpsi2 for example. and divsi2. You mean divsi3? Many targets don't have div at all. Er, right. divsi3.

Re: Design a microcontroller for gcc

2006-02-15 Thread DJ Delorie
What's so bad about have the flag as side-effects ? You can't put any other insn between the compare and the jump. Like, if you wanted to move an address into a register to do the jump, you'd lose the condition bits. The advantage of having most insns set flags, is you can sometimes avoid the

<    6   7   8   9   10   11   12   13   >