80386

31

BREAKPOINT 0 LINEAR ADDRESS BREAKPOINT 1 LINEAR ADDRESS BREAKPOINT 2 LINEAR ADDRESS BREAKPOINT 3 LINEAR ADDRESS Intel reserved. Do not define.

Intel reserved. Do not define.

0

16

15

 

 

 

0

 

 

 

 

 

 

 

ORO

 

 

 

 

 

 

DR1

 

 

 

 

 

 

DR2

 

 

 

 

 

 

DR3

 

 

 

 

 

 

DR4

 

 

 

 

 

 

DR5

 

B

B B

o 0 o 0

o 0 o 0

o B B B B

DR6

 

T

S 0

3 210

 

LEN I~IW I LEN IR IwI LEN IR IwI LEN IR Iw

0

o G o 0

OG L G L G L G L G L

DR?

 

333222111000

 

0

E E 3 322 1 100

 

31

16

15

 

0

 

NOTE: ~ indicates Intel reserved: Do not define; SEE SECTION 2.3.10

Figure 2-13. Debug Registers

tion breakpoints must have a length of 1 (LENi

00). Encoding of the LENi field is as follows:

 

 

Usage of Least

LENi

Brealcpoint

Significant Bits in

Encoding

Field Width

Brea!cpoint Address

 

 

Register i, (i = 0 - 3)

00

1 byte

All 32-bits used to

 

 

specify a single·byte

 

 

breakpoint field.

01

2 bytes

A1-A31 used to

 

 

specify a two·byte,

 

 

word·aligned

 

 

breakpoint field. AD in

 

 

Breakpoint Address

 

 

Register is not used.

10Undefined- do not use

 

this encoding

 

11

4 bytes

A2-A31 used to

 

 

specify a four·byte,

 

 

dword-aligned

breakpoint field. AD and A1 in Breakpoint Address Register are not used.

The following is an example of various size break- point fields. Assume the breakpoint linear address in DR2 is 00000005H. In that situation, the following illustration indicates the region of the breakpoint field for lengths of 1, 2, or 4 bytes.

DR2 = 00000005H; LEN2 = OOB

P !=31===!==!b=kt=fld2:!=:0!:::::::;:

DR2 = 00000005H; LEN2 = 01B

31o

I

I 00000008H

-bkpt fld2 ~ 00000004H

L -____ ____L -____IOOOOOOOOH

~L ___~

DR2 = 00000005H; LEN2 = 11B

310

The LENi field controls the size of breakpoint field i by controlling whether all low·order linear address bits in the breakpoint address register are used to detect the breakpoint event. Therefore, all break· point fields are aligned; 2·byte breakpoint fields be- gin on Word boundaries, and 4-byte breakpoint fields begin on Dword boundaries.

I

I

I

 

-

I

I

00000008H

bkpt fld2

--l>

00000004H

I

I

OOOOOOOOH

29

Page 90
Image 90
Intel 80386 manual DR1, DR2, DR3, DR4, DR5, DR6, Og L G L G L G L G L Dr?