This is the mail archive of the mailing list for the GCC project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [RFC] use symbol_ref flags for rs6000

Right now it ice at least on Darwin:
[omni:~/src] pinskia% /Volumes/UFS_Partition/pinskia/src/fsf/gcc/src/objdir/gcc/cc1 -quiet -v -D__DYNAMIC__ testcall.c -quiet -dumpbase testcall.c -auxbase-strip - -O3 -version -o -
ignoring nonexistent directory "/Volumes/UFS_Partition/pinskia/fsf/powerpc-apple-darwin6.5/include"
#include "..." search starts here:
#include <...> search starts here:
/Volumes/UFS_Partition/pinskia/fsf/lib/gcc-lib/powerpc-apple-darwin6.5/ 3.4/include
End of search list.
GNU C version 3.4 20030501 (experimental) (powerpc-apple-darwin6.5)
compiled by GNU C version 3.4 20030430 (experimental).
GGC heuristics: --param ggc-min-expand=30 --param ggc-min-heapsize=4096
testcall.c: In function `call':
testcall.c:7: internal compiler error: in current_file_function_operand, at config/rs6000/rs6000.c:2129
Please submit a full bug report,
with preprocessed source if appropriate.
See <URL:> for instructions.

(gdb) p debug_rtx(op)
(symbol_ref:SI ("!D__thunk") [flags 0x2] <var_decl 0x116d380 thunk>)
$2 = void

Andrew Pinski

On Thursday, May 1, 2003, at 17:13 US/Eastern, Richard Henderson wrote:

On Sat, Apr 26, 2003 at 01:35:04PM -0400, David Edelsohn wrote:
	You might want to test SYMBOL_REF_FUNCTION_P (x) in
current_file_function_operand() bracketed by ENABLE_CHECKING.  It
essentially is an assertion.

One problem with this:

User code of the form

	static int thunk[5];
	((void (*)(void))thunk) ();

      that generates a call to the data section.  If the linker
      will handle this, fine, otherwise you need to return false
      so that the address gets loaded into a register.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]