tb (rastreamento para o próximo branch)

O comando tb executa o programa até que uma instrução de ramificação seja atingida.

tb [r] [= StartAddress] [Count] 

Parâmetros

R
Ativa e desativa a exibição de registros e sinalizadores. Por padrão, os registros e sinalizadores são exibidos. Você pode desabilitar a exibição de registro usando os comandos tbr, pr, tr ou .prompt_allow -reg. Todos esses comandos controlam a mesma configuração e você pode usar qualquer um deles para substituir qualquer uso anterior desses comandos.

Você também pode desabilitar a exibição de registro usando o comando l-os. Essa configuração é separada dos outros quatro comandos. Para controlar quais registros e sinalizadores são exibidos, use o comando rm (Máscara de Registro).

Startaddress
Especifica o endereço em que o depurador inicia a execução. Se você não usar StartAddress, a execução começará na instrução para a qual o ponteiro de instrução aponta. Para obter mais informações sobre a sintaxe, consulte Sintaxe de intervalo de endereços e endereços.

Contar
Especifica o número de branches a serem permitidos. Sempre que um branch é encontrado, o endereço de instrução e a instrução são exibidos. Se você omitir Count, o número padrão será 1.

Ambiente

Modos

Baseado em x86: Modo kernel somente baseado em x64: modo de usuário, modo kernel

Destinos

Somente depuração dinâmica

Plataformas

Baseado em x86 (Família de processadores GenuineIntel 6 e posterior), baseado em x64

Informações adicionais

Para obter mais informações sobre comandos relacionados, consulte Controlando o destino.

Comentários

O comando tb faz com que o destino comece a ser executado. Essa execução continua até que um comando branch seja atingido.

A execução é interrompida em qualquer comando de branch a ser tomado. Essa interrupção da execução é sempre baseada no código de desmontagem , mesmo quando o depurador está no modo de origem.

As instruções de ramificação incluem chamadas, retornos, saltos, loops contados e loops while. Se o depurador encontrar um branch incondicional ou um branch condicional para o qual a condição é verdadeira, a execução será interrompida. Se o depurador encontrar um branch condicional cuja condição é falsa, a execução continuará.

Quando a execução é interrompida, o endereço da instrução branch e os símbolos associados são exibidos. Essas informações são seguidas por uma seta e, em seguida, o endereço e as instruções do novo local do contador do programa.

O comando tb funciona apenas no processador atual. Se você usar tb em um sistema multiprocessador, a execução será interrompida quando um comando de branch for atingido ou quando ocorrer o evento de outro processador, o que ocorrer primeiro.

Normalmente, o rastreamento de ramificação é habilitado depois que o PRCB (bloco de controle do processador) é inicializado. (O PRCB é inicializado no início do processo de inicialização.) No entanto, se você precisar usar o comando tb antes desse ponto, poderá usar .force_tb (Permitir rastreamento forçado de ramificação) para habilitar o rastreamento de branch anteriormente. Use o comando .force_tb com cautela, pois ele pode corromper o estado do processador.