Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

What does trampoline mean in this context?


Usually just a piece of code to jump to another piece of code with certain necessary register modifications, ie: https://gcc.gnu.org/onlinedocs/gccint/Trampolines.html


A trampoline is a useful pattern in software https://en.m.wikipedia.org/wiki/Trampoline_(computing)


A trampoline in code is something you jump off of - essentially, a redirection snippet. You jump into it and it bounces you somewhere else.

In this case, the use is documented where it's implemented: https://github.com/raspberrypi/pico-bootrom/blob/master/boot... . It's a custom wrapper to call ROM functions. When the ROM function returns, the trampoline executes a debugger breakpoint. This is done so that the debugger can call into ROM easily without needing to set a hardware breakpoint.


if u go up it looks like there is a `debug_trampoline` function. so they are saying the `debug_trampoline_end` is a precompiled version of the `debug_trampoline` one. not sure if this is true or not


It is not. debug_trampoline_end is just a label in this context.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: