Hi,
May you point me out some sources about writing new #pragma directives
in GCC. I looked at the internet for something to start from but
unfortunately I could not find anything.
Thanks,
Ferad Zyulkyarov
--
Ferad Zyulkyarov
Barcelona Supercomputing Center
Thanks a lot. This is going to be a good starting point.
Ferad Zyulkyarov
On 11/13/06, Sebastian Pop <[EMAIL PROTECTED]> wrote:
On 11/13/06, Ferad Zyulkyarov <[EMAIL PROTECTED]> wrote:
> Hi,
>
> May you point me out some sources about writing new #pragma directives
>
, "printf", param_list);
Also, I would be very thankful for any resources about the API for
manipulating the program's tree structure.
Thanks,
Ferad Zyulkyarov
ier("test_fn_call");
fn_decl = lookup_name(fn_id);
fn_call = build_function_call_expr(fn_decl, NULL_TREE);
add_stmt(fn_call);
} /* End of void handle_pragma_test */
--
Ferad Zyulkyarov
Barcelona Supercomputing Center
On 11/30/06, Ferad Zyulkyarov <[EMAIL PROTECTED]> wrote:
etion of a tree (i.e. statement, block, declaration).
I am quite new to the gcc code and I could only find that the function
add_stmt(tree) inserts a statement.
I suppose that a lot of gcc developers here doing this routinely. I
would appreciate your help and advices a lot.
Thanks in advance,
Ferad
declaration tree) or it would be enough to assign it as NULL
(which does not seems to be a gentle solution).
Thanks,
Ferad Zyulkyarov
On 12/5/06, Revital1 Eres <[EMAIL PROTECTED]> wrote:
> I try to change the front-end tree structure of a c/c++ program as a
> side effect of execution of a
urrent_function_decl); /* Crashes right here */
}
I could not figure out what could be the problem. I would appreciate
your help to make this run..
Thanks,
Ferad Zyulkyarov
On 12/5/06, Revital1 Eres <[EMAIL PROTECTED]> wrote:
> I try to change the front-end tree structure of a c/c++ pro
ome statement to get the current
tree node in the loop:
tree stmt = bsi_stmt (bsi);
and later recursively manipulate it with walk_tree ().
The execution actually does not reach this part of the code. I had it
written but, decided to remove them until solvin the problem with the
correct initializa
more carefully.
Revital, thank you very much once again.
Ferad Zyulkyarov
advices and comments on how to do
that (traverse the statements in function). I also attach the
c-pragma.c file and C source file "demo_pragma_usage.c" to test the
pragma handler.
Thanks,
Ferad Zyulkyarov
/* Handle #pragma, system V.4 style. Supports #pragma weak and #pragma pack.
Cop
Thanks Diego,
I will throw more precise look on OMP.
And something more, what is the difference between c_register_pragma
and cpp_register_deferred_pragma functions? Unfortunately, I couldn't
fined a descriptive information about these two functions.
Ferad Zyulkyarov
On 12/15/06,
win it will
not work.. What I mean is if you have gcc compiled to be hosted in
linux it will not work under win and vice versa.
For more details you can refer to the configuration documentation of
gcc - http://gcc.gnu.org/install/configure.html.
Hope it was useful,
Ferad Zyulkyarov
, is it possible to get the declaration tree
node of that function.
e.g. using maybe_get_identifier("name"), i get the identifier node.
similarly are there any functions or macros available to get the
declaration tree node.
Regards,
Rohit
--
Ferad Zyulkyarov
Barcelona Supercomputing Center
l be appreciated very much. Thanks a lot.
--
Ferad Zyulkyarov
Barcelona Supercomputing Center
Hi again,
I think that the type of type_node is missing. Try to add
TREE_TYPE (type_node); For example TREE_TYPE (type_node) =
integer_type_node. (if MyType is int).
"MyType" is a struct (of other again coumpound types) and will not
work with already existing type nodes like integer_type_node
r_decl = build(VAR_DECL, get_identifier("t"), type_ptr);
I tried similar codes like the above, but I don't know how to retrieve
the "type" from the type declaration. Any help, ideas are highly
appreciated.
Ferad Zyulkyarov
w it works.
On 1/16/07, Ferad Zyulkyarov <[EMAIL PROTECTED]> wrote:
Hi,
> Best way to figure this out is to write a simple 5 line testcase that
> defines a structure type and also defines a pointer to that type, and
> then step through gcc to see what it does. Try putting
d
not very logic given the parser generators in existence today.
Can someone comment this? (which issues led to this decision?)
Regards,
--
Paulo Jorge Matos - pocm at soton.ac.uk
http://www.personal.soton.ac.uk/pocm
PhD Student @ ECS
University of Southampton, UK
--
Ferad Zyulkyarov
Barcelon
lly is to modify "var->field", i.e.
var->field = 10;
but I couldn't find any useful functions to use for doing that.
Any suggestions are welcome. Thanks a lot.
--
Ferad Zyulkyarov
kup_name(get_identifier("var"));
And I suppose that, having "var_decl" I can get a tree to the "field1"
field of "var". Is there any function e.g. lookup_decl_field that does
it?
Ferad Zyulkyarov
1 = build_component_ref(build_indirect_ref(var_decl,
"var"), get_identifier("field1"));
"var_field1" is the "var->field1" tree node.
--
Ferad Zyulkyarov
Barcelona Supercomputing Center
t; is not maintained (used) by
gcc any more. Instead build, what else may I use to create a
conditional expression node?
Thanks, for your advices.
--
Ferad Zyulkyarov
Thanks a lot, that's it
On 1/23/07, Steven Bosscher <[EMAIL PROTECTED]> wrote:
On 1/23/07, Ferad Zyulkyarov <[EMAIL PROTECTED]> wrote:
> But, as I noticed this function "build" is not maintained (used) by
> gcc any more. Instead build, what else may I use to
ate if you can recommend me
any tutorial about gcc. For the next months I will have to do some
modifications for my project in fornt-end and back-end.
Thanks a lot
--
Ferad Zyulkyarov
an e-mail directly, why didn't you post
this to GCC mailing list? In this case the other readers could be
also helpful.
--
Ferad Zyulkyarov
round your method
declarations with
extern "C" {...}
This may help. If you don't have the c++ sources, create wrappers
either to C object files or C++. For now I don't know any other
alternative.
--
Ferad Zyulkyarov
Barcelona Supercomputing Center
Stop.
>> make[2]: Leaving directory `/home/sudheer/bhaskar/mtp/build386/gcc'
>> make[1]: *** [all-gcc] Error 2
>> make[1]: Leaving directory `/home/sudheer/bhaskar/mtp/build386'
>> make: *** [all] Error 2
>>
>>
>> How to fix it?
>>
>> thanks in advance.
>>
>>
>
>
--
Bhaskar G. Reddy,
Graduate Student,
Department of CSE,
IIT Bombay
--
Ferad Zyulkyarov
Barcelona Supercomputing Center
rad
On 2/9/07, Kai Ruottu <[EMAIL PROTECTED]> wrote:
Ferad Zyulkyarov wrote :
> To build a GCC corss compiler it would be good to use a specail tool
> that is called "crosstool". You may look at the following links:
>
> 1. http://kegel.com/crosstool/
> 2. ht
uot;myintrinsics.h"
int main(void)
{
myintrinsic();
printf("Hello world!\n");
}
I got an error that __builtin_alspa_myintrinsic is not defined in this
scope. I think that my implementaion does not work. I don't know where
the problem is, but I am sure that I miss some
Hi,
I am not sure if this message is still relevant. Anyhow, I think
following another built-in under zero_arg_builtins ("__builtin_alpha_rpcc"
in alpha.c for example) could help in finding the missing part in this
implementation.
the message is still relevant. I tried to use as example the
30 matches
Mail list logo