mirror of
https://git.suyu.dev/suyu/breakpad.git
synced 2025-12-26 01:05:07 +01:00
Add a CFIFrameInfo class (named for symmetry with WindowsFrameInfo) to represent the set of STACK CFI rules in effect at a given instruction, and apply them to a set of register values. Provide a SimpleCFIWalker class template, to allow the essential CFI code to be shared amongst the different architectures. Teach BasicSourceLineResolver to partially parse 'STACK CFI' records, and produce the set of rules in effect at a given instruction on demand, by combining the initial rule set and the appropriate rule deltas in a CFIFrameInfo object. Adapt StackwalkerX86 and StackFrameX86 to retrieve, store, and apply CFI stack walking information. Add validity flags for all the general-purpose registers to StackFrameX86::ContextValidity. a=jimblandy, r=mmentovai git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@549 4c0a9323-5329-0410-9bdc-e9ce6186880e
23 lines
663 B
Text
23 lines
663 B
Text
MODULE windows x86 222222222 module2.pdb
|
|
FILE 1 file2_1.cc
|
|
FILE 2 file2_2.cc
|
|
FILE 3 file2_3.cc
|
|
FUNC 2000 c 4 Function2_1
|
|
1000 4 54 1
|
|
1004 4 55 1
|
|
1008 4 56 1
|
|
PUBLIC 2160 0 Public2_1
|
|
FUNC 2170 14 4 Function2_2
|
|
2170 6 10 2
|
|
2176 4 12 2
|
|
217a 6 13 2
|
|
2180 4 21 2
|
|
PUBLIC 21a0 0 Public2_2
|
|
STACK WIN 4 2000 c 1 0 0 0 0 0 1 $eip 4 + ^ = $esp $ebp 8 + = $ebp $ebp ^ =
|
|
STACK WIN 4 2170 14 1 0 0 0 0 0 1 $eip 4 + ^ = $esp $ebp 8 + = $ebp $ebp ^ =
|
|
STACK CFI INIT 3df0 af .cfa: $esp 4 + .ra: .cfa 4 - ^
|
|
STACK CFI 3df1 .cfa: $esp 8 +
|
|
STACK CFI 3df3 .cfa: $ebp 8 + $ebp: .cfa 8 - ^
|
|
STACK CFI 3e04 $ebx: .cfa 20 - ^
|
|
STACK CFI 3e0a $esi: .cfa 16 - ^
|
|
STACK CFI 3e34 $edi: .cfa 12 - ^
|