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.
Comentários
https://aka.ms/ContentUserFeedback.
Em breve: Ao longo de 2024, eliminaremos os problemas do GitHub como o mecanismo de comentários para conteúdo e o substituiremos por um novo sistema de comentários. Para obter mais informações, consulteEnviar e exibir comentários de