FreeCalypso > hg > freecalypso-sw
view target-utils/libcommon/cmd_jump.c @ 1015:9ced8e13cf91
fc-shell tch-dl command implementation: brown paper bag
author | Mychaela Falconia <falcon@ivan.Harhan.ORG> |
---|---|
date | Sun, 20 Mar 2016 23:07:46 +0000 |
parents | 1a3bbab2ea26 |
children |
line wrap: on
line source
/* * jump hexaddr -- transfer control with BX */ #include <sys/types.h> #include "types.h" void cmd_jump(argbulk) char *argbulk; { char *argv[2]; u_long addr; if (parse_args(argbulk, 1, 1, argv, 0) < 0) return; if (parse_hexarg(argv[0], 8, &addr) < 0) { printf("ERROR: argument must be a valid 32-bit hex address\n"); return; } serial_flush(); asm volatile ("bx %0" : : "r" (addr)); __builtin_unreachable(); }