Phung Nguyen schrieb: > Thank you for your reply, > > As I know, operand 0 of call is the address of called function; > operand 1 is the number of arguments; operand 2 is the number of args > as registers. Therefore, where is the info passed to call ??? As I > would like to change the target instruction of call based on the > attribute of the called function, I need the info passed to call > pattern name. > > Could you please explain more about your idea.
Just have a look at the blachfin backend in bfin.c and search for 'cookie'. I use a similar machanism and it works (as far as I can tell) in all situations, even if the source messes around with pointers like casting a void pointer to an attributed function pointer. Greets > Phung