value = 2; goto trigonometry; value2: ;
save return addressload the sub address into the program counter
to avoid a lot void calls that results variables must be saved outside void setup, void loop, and other calls functions which leads bigger program size.
It is able to define the function as naked ( __attribute__ ((naked)) ) in avr-gcc. Compiler doesn't provide any prolog and epilog for such function - save/restore the registers. In C it is still function, in result it is replaced by jump.Maybe this helps.
I doubt it. A jump would be the result of a goto.Also, I wonder if the optimizer doesn't already remove all the overhead automatically when a function is a void f(void);