(ctxt: *mut c_void, reg: u32, result: *mut BNRegisterInfo)
| 2711 | } |
| 2712 | |
| 2713 | extern "C" fn cb_register_info<A>(ctxt: *mut c_void, reg: u32, result: *mut BNRegisterInfo) |
| 2714 | where |
| 2715 | A: 'static + Architecture<Handle = CustomArchitectureHandle<A>> + Send + Sync, |
| 2716 | { |
| 2717 | let custom_arch = unsafe { &*(ctxt as *mut A) }; |
| 2718 | let result = unsafe { &mut *result }; |
| 2719 | |
| 2720 | if let Some(reg) = custom_arch.register_from_id(RegisterId(reg)) { |
| 2721 | let info = reg.info(); |
| 2722 | |
| 2723 | result.fullWidthRegister = match info.parent() { |
| 2724 | Some(p) => p.id().0, |
| 2725 | None => reg.id().0, |
| 2726 | }; |
| 2727 | |
| 2728 | result.offset = info.offset(); |
| 2729 | result.size = info.size(); |
| 2730 | result.extend = info.implicit_extend(); |
| 2731 | } |
| 2732 | } |
| 2733 | |
| 2734 | extern "C" fn cb_stack_pointer<A>(ctxt: *mut c_void) -> u32 |
| 2735 | where |
nothing calls this directly
no test coverage detected