---
title: "hv_vcpu_set_trap_debug_reg_accesses(_:_:)"
framework: Hypervisor
role: symbol
role_heading: Function
platforms: [macOS 11.0+]
path: "hypervisor/hv_vcpu_set_trap_debug_reg_accesses(_:_:)"
---

# hv_vcpu_set_trap_debug_reg_accesses(_:_:)

Sets whether debug-register accesses exit the guest.

## Declaration

```swift
func hv_vcpu_set_trap_debug_reg_accesses(_ vcpu: hv_vcpu_t, _ value: Bool) -> hv_return_t
```

## Parameters

- `vcpu`: The instance of the vCPU.
- `value`: A Boolean value that if true indicates debug-register accesses in the guest trap to the host.

## Return Value

Return Value HV_SUCCESS if the operation was successful, otherwise an error code specified in hv_return_t.

## Discussion

Discussion The trapped registers includes DBGBCR<n>_EL1, DBGBVR<n>_EL1, DBGWCR<n>_EL1, DBGWVR<n>_EL1. and MDSCR_EL1. The equivalent system register is MDCR_EL2.TDA. important: This function must be called by the owning thread.

## See Also

### Trap configuration

- [hv_vcpu_get_trap_debug_exceptions(_:_:)](hypervisor/hv_vcpu_get_trap_debug_exceptions(_:_:).md)
- [hv_vcpu_set_trap_debug_exceptions(_:_:)](hypervisor/hv_vcpu_set_trap_debug_exceptions(_:_:).md)
- [hv_vcpu_get_trap_debug_reg_accesses(_:_:)](hypervisor/hv_vcpu_get_trap_debug_reg_accesses(_:_:).md)
