[prev in list] [next in list] [prev in thread] [next in thread] 

List:       gcc
Subject:    Re: Creating parameters for functions calls
From:       Antoine Eiche <antoine.eiche () ulp ! u-strasbg ! fr>
Date:       2007-03-30 17:15:22
Message-ID: 460D6091.8070700 () ulp ! u-strasbg ! fr
[Download RAW message or body]

Daniel Berlin wrote:
> On 3/30/07, Antoine Eiche <antoine.eiche@ulp.u-strasbg.fr> wrote:
>> Daniel Berlin wrote:
>> > On 3/27/07, Antoine Eiche <antoine.eiche@ulp.u-strasbg.fr> wrote:
>> >> Dear all,
>> >>
>> >> I want to insert functions calls during a new pass.
>> >
>> > Which version of GCC?
>> > The problem is to
>> >> create parameters. At this time, I  successfully create a function 
>> call
>> >> with two constante as parameter and insert it (I can see that in the
>> >> asm's code). But, I want to give the address of an array and a 
>> constante
>> >> to this function.
>> >> I think the problem is the creation of the node which contains the
>> >> address of the array.
>> >>
>> >> For example:
>> >> I get from the code (in tree "rhs"):
>> >> a[i]
>> >> I want build a node like that:
>> >> &a[i]
>> >> and build a function call like that:
>> >> foo(constante,&a[i])
>> >>
>> >> This is the error message when a try to compile a program with my 
>> pass :
>> >>
>> >> tab.c: In function 'main':
>> >> tab.c:7: erreur interne du compilateur: dans 
>> lookup_subvars_for_var, à
>> >> tree-flow-inline.h:1629
>> >>
>> > Can you send a backtrace?
>> >
>> > This means nothing has created the variable annotation for a.
>> Hi,
>>
>> My version of gcc:
>>
>> version gcc 4.3.0 20070316 (experimental)
>>
>> I try to do a backtrace with gcc but the program exit normally. So, I
>> try to put a breakpoint but :
>
> Are you debugging gcc or cc1?
> you need to be debugging cc1
>
> (use -v with your compiled gcc to get the cc1 command line it uses,
> and just run "gdb --args <cc1 command line it is using>"
>
>>
>> (gdb) b tree-flow-inline.h:1629
>> No source file named tree-flow-inline.h.
>> Make breakpoint pending on future shared library load? (y or [n]) y
>> Breakpoint 1 (tree-flow-inline.h:1629) pending.
>>
>
>> I'm sorry but I can't show you a backtrace. (I do compilation with
>> option "-g")
>> How I can put a breakpoint ?
>>
>>
Hi,

It is the backtrace :

#0  lookup_subvars_for_var (var=0xb7c3f370) at tree-flow-inline.h:1628
#1  0x085b3cf0 in get_subvars_for_var (var=0xb7c3f370) at 
tree-flow-inline.h:1646
#2  0x085b3500 in verify_ssa_name (ssa_name=0xb7c47570, is_virtual=1 
'\001') at ../.././gcc/tree-ssa.c:139
#3  0x085b619a in verify_ssa (check_modified_stmt=0 '\0') at 
../.././gcc/tree-ssa.c:660
#4  0x0854a982 in verify_loop_closed_ssa () at 
../.././gcc/tree-ssa-loop-manip.c:430
#5  0x08372213 in execute_function_todo (data=0x41) at 
../.././gcc/passes.c:921
#6  0x08371cd9 in do_per_function (callback=0x8371f3c 
<execute_function_todo>, data=0x41) at ../.././gcc/passes.c:758
#7  0x08372275 in execute_todo (flags=65) at ../.././gcc/passes.c:936
#8  0x083726d2 in execute_one_pass (pass=0x8a060c0) at 
../.././gcc/passes.c:1081
#9  0x08372754 in execute_pass_list (pass=0x8a060c0) at 
../.././gcc/passes.c:1111
#10 0x08372770 in execute_pass_list (pass=0x8a05e00) at 
../.././gcc/passes.c:1112
#11 0x08372770 in execute_pass_list (pass=0x8a05680) at 
../.././gcc/passes.c:1112
#12 0x084a94ea in tree_rest_of_compilation (fndecl=0xb7c33e00) at 
../.././gcc/tree-optimize.c:412
#13 0x080d8a55 in c_expand_body (fndecl=0xb7c33e00) at 
../.././gcc/c-common.c:4276
#14 0x0868bc11 in cgraph_expand_function (node=0xb7b75900) at 
../.././gcc/cgraphunit.c:1015
#15 0x0868be01 in cgraph_expand_all_functions () at 
../.././gcc/cgraphunit.c:1084
#16 0x0868c3c3 in cgraph_optimize () at ../.././gcc/cgraphunit.c:1287
#17 0x080736f2 in c_write_global_declarations () at 
../.././gcc/c-decl.c:7930
#18 0x08424a18 in compile_file () at ../.././gcc/toplev.c:1063
#19 0x08426343 in do_compile () at ../.././gcc/toplev.c:2124
#20 0x084263a5 in toplev_main (argc=4, argv=0xbfca4c64) at 
../.././gcc/toplev.c:2156
#21 0x081167fa in main (argc=0, argv=0x0) at ../.././gcc/main.c:35

Thanks for your help.

[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic