05.02.2013 Views

ARM Architecture Reference Manual ARMv7-A and ARMv7-R edition

ARM Architecture Reference Manual ARMv7-A and ARMv7-R edition

ARM Architecture Reference Manual ARMv7-A and ARMv7-R edition

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

ThumbEE<br />

A9.5.4 HBP<br />

HBP (H<strong>and</strong>ler Branch with Parameter) causes a branch to a specified h<strong>and</strong>ler. It passes a 3-bit parameter to<br />

the h<strong>and</strong>ler in R8.<br />

Encoding E1 ThumbEE<br />

HBP #, #<br />

15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0<br />

1 1 0 0 0 0 0 0 imm3 h<strong>and</strong>ler<br />

imm32 = ZeroExtend(imm3, 32); h<strong>and</strong>ler_offset = ZeroExtend(h<strong>and</strong>ler:’00000’, 32);<br />

Assembler syntax<br />

HBP #, #<br />

where:<br />

See St<strong>and</strong>ard assembler syntax fields on page A8-7.<br />

The parameter to pass to the h<strong>and</strong>ler, in the range 0-7.<br />

The index number of the h<strong>and</strong>ler to be called, in the range 0-31.<br />

Operation<br />

if ConditionPassed() then<br />

EncodingSpecificOperations();<br />

R[8] = imm32;<br />

BranchWritePC(TEEHBR + h<strong>and</strong>ler_offset);<br />

Exceptions<br />

None.<br />

A9-18 Copyright © 1996-1998, 2000, 2004-2008 <strong>ARM</strong> Limited. All rights reserved. <strong>ARM</strong> DDI 0406B

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!