changing function type

Is there any way to change the type of a function in LLVM without creating a copy of the function and replacing all references of the old function with the new function. For example, if I wanted to remove a parameter from the function, how could I accomplish that?

Thanks,
Ryan

Is there any way to change the type of a function in LLVM without
creating a copy of the function and replacing all references of the old
function with the new function.

Nope.

For example, if I wanted to remove a
parameter from the function, how could I accomplish that?

You'd have to do what you describe above. Check out the IPO/DeadArgElim.cpp transformation, which does just this.

-Chris