Fix finding entry point unwind record for a method with fragmented un… (#22202)
authorAndy Ayers <andya@microsoft.com>
Mon, 28 Jan 2019 18:45:45 +0000 (10:45 -0800)
committerGitHub <noreply@github.com>
Mon, 28 Jan 2019 18:45:45 +0000 (10:45 -0800)
commit1b8df831c0513c0f84327cfb82e71ab03c263873
treec6a2c32dfc901e449c092f65521447650392a41c
parentddd85a9cc1375177b8e68e956fdcbdb76fce4e6a
Fix finding entry point unwind record for a method with fragmented un… (#22202)

On Arm and Arm64 unwind records can only cover a limited range of code
(512K and 1MB respectively). So for methods larger than this the jit
will emit multiple "fragment" unwind records to cover the full method code
range. Only the first of these describes the behavior of the method prolog.

When mapping an offset back to a method's entry point unwind, make sure to
find this "root" unwind record instead of one of the internal fragments.

Fixes #19209.
src/vm/codeman.cpp