Symbols are broken in asan debug builds of v8 |
||
Issue descriptionRunning v8 built with asan in gdb produces these warnings (v8 revision 2237106ae2c507d32a199d1a039ffae6a5619eb6): > warning: (Internal error: pc 0x5a9f605c in read in psymtab, but not in symtab.) When I try to inspect a variable I get the error. Example: > 5544 void Simulator::InstructionDecode(Instruction* instr) { > (gdb) p instr > No symbol "instr" in current context. Steps to reproduce: 1. cd v8 2. gn args out/Debug is_asan = true is_component_build = false is_debug = true sanitizer_coverage_flags = "edge" target_cpu = "x86" use_goma = true v8_enable_backtrace = true v8_enable_slow_dchecks = true v8_target_cpu = "arm" symbol_level=2 v8_optimized_debug=false 3. ninja -C out/Debug d8 -j30 4. gdb --args out/Debug/d8 any_js_file.js 5. break in gdb and try to inspect any variable in a v8 function on the stack. Expected: gdb prints variable contents Actual: gdb prints error message. Setting "is_asan = false" fixes this issue. glider@, I saw that you own asan related issues here. Would you be the right person to triage this?
,
Feb 10 2017
It seems to have debug sections (see objdump output below).
Note that "is_asan = false" fixes the gdb issue with all other gn flags being the same.
out/Debug/d8: file format elf32-i386
Sections:
Idx Name Size VMA LMA File off Algn
0 .interp 00000013 00000174 00000174 00000174 2**0
CONTENTS, ALLOC, LOAD, READONLY, DATA
1 .note.ABI-tag 00000020 00000188 00000188 00000188 2**2
CONTENTS, ALLOC, LOAD, READONLY, DATA
2 .note.gnu.build-id 00000024 000001a8 000001a8 000001a8 2**2
CONTENTS, ALLOC, LOAD, READONLY, DATA
3 .dynsym 000794d0 000001cc 000001cc 000001cc 2**2
CONTENTS, ALLOC, LOAD, READONLY, DATA
4 .dynstr 0025efd9 0007969c 0007969c 0007969c 2**0
CONTENTS, ALLOC, LOAD, READONLY, DATA
5 .gnu.hash 00036130 002d8678 002d8678 002d8678 2**2
CONTENTS, ALLOC, LOAD, READONLY, DATA
6 .gnu.version 0000f29a 0030e7a8 0030e7a8 0030e7a8 2**1
CONTENTS, ALLOC, LOAD, READONLY, DATA
7 .gnu.version_r 000001d0 0031da44 0031da44 0031da44 2**2
CONTENTS, ALLOC, LOAD, READONLY, DATA
8 .rel.dyn 002b6fe0 0031dc14 0031dc14 0031dc14 2**2
CONTENTS, ALLOC, LOAD, READONLY, DATA
9 .rel.plt 00000768 005d4bf4 005d4bf4 005d4bf4 2**2
CONTENTS, ALLOC, LOAD, READONLY, DATA
10 .init 00000030 005d535c 005d535c 005d535c 2**2
CONTENTS, ALLOC, LOAD, READONLY, CODE
11 .plt 00000ee0 005d5390 005d5390 005d5390 2**4
CONTENTS, ALLOC, LOAD, READONLY, CODE
12 .text 053131b8 005d6270 005d6270 005d6270 2**4
CONTENTS, ALLOC, LOAD, READONLY, CODE
13 .fini 0000001c 058e9428 058e9428 058e9428 2**2
CONTENTS, ALLOC, LOAD, READONLY, CODE
14 .rodata 0075f562 058e9460 058e9460 058e9460 2**5
CONTENTS, ALLOC, LOAD, READONLY, DATA
15 .eh_frame 002ab3e0 060489c4 060489c4 060489c4 2**2
CONTENTS, ALLOC, LOAD, READONLY, DATA
16 .eh_frame_hdr 000ab3b4 062f3da4 062f3da4 062f3da4 2**2
CONTENTS, ALLOC, LOAD, READONLY, DATA
17 .tbss 00000028 063a10c0 063a10c0 063a00c0 2**2
ALLOC, THREAD_LOCAL
18 .ctors 00000008 063a10c0 063a10c0 063a00c0 2**2
CONTENTS, ALLOC, LOAD, DATA
19 .dtors 00000008 063a10c8 063a10c8 063a00c8 2**2
CONTENTS, ALLOC, LOAD, DATA
20 .jcr 00000004 063a10d0 063a10d0 063a00d0 2**2
CONTENTS, ALLOC, LOAD, DATA
21 .preinit_array 00000004 063a10d4 063a10d4 063a00d4 2**2
CONTENTS, ALLOC, LOAD, DATA
22 .init_array 00001828 063a10d8 063a10d8 063a00d8 2**2
CONTENTS, ALLOC, LOAD, DATA
23 .data.rel.ro 0013c5ec 063a2900 063a2900 063a1900 2**5
CONTENTS, ALLOC, LOAD, DATA
24 .fini_array 00000b4c 064deeec 064deeec 064ddeec 2**2
CONTENTS, ALLOC, LOAD, DATA
25 .dynamic 00000150 064dfa38 064dfa38 064dea38 2**2
CONTENTS, ALLOC, LOAD, DATA
26 .got 000000b8 064dfb88 064dfb88 064deb88 2**2
CONTENTS, ALLOC, LOAD, DATA
27 .got.plt 000003c0 064dfc40 064dfc40 064dec40 2**2
CONTENTS, ALLOC, LOAD, DATA
28 .data 001f97a0 064e0000 064e0000 064df000 2**5
CONTENTS, ALLOC, LOAD, DATA
29 .bss 006992b8 066d97c0 066d97c0 066d87c0 2**6
ALLOC
30 .comment 0000005d 00000000 00000000 066d87a0 2**0
CONTENTS, READONLY
31 .debug_str 002014fa 00000000 00000000 066d87fd 2**0
CONTENTS, READONLY, DEBUGGING
32 .debug_loc 00000000 00000000 00000000 068d9cf7 2**0
CONTENTS, READONLY, DEBUGGING
33 .debug_abbrev 00014307 00000000 00000000 068d9cf7 2**0
CONTENTS, READONLY, DEBUGGING
34 .debug_info 005b3118 00000000 00000000 068edffe 2**0
CONTENTS, READONLY, DEBUGGING
35 .debug_ranges 00137e00 00000000 00000000 06ea1116 2**0
CONTENTS, READONLY, DEBUGGING
36 .debug_macinfo 00000304 00000000 00000000 06fd8f16 2**0
CONTENTS, READONLY, DEBUGGING
37 .debug_line 01d6efa4 00000000 00000000 06fd921a 2**0
CONTENTS, READONLY, DEBUGGING
38 .debug_addr 00000014 00000000 00000000 08d481be 2**0
CONTENTS, READONLY, DEBUGGING
39 .debug_pubnames 000000b7 00000000 00000000 08d481d2 2**0
CONTENTS, READONLY, DEBUGGING
40 .debug_pubtypes 00000036 00000000 00000000 08d48289 2**0
CONTENTS, READONLY, DEBUGGING
41 .note.gnu.gold-version 0000001c 00000000 00000000 08d482c0 2**2
CONTENTS, READONLY
,
Jan 10
Archiving P3s older than 1 year with no owner or component. |
||
►
Sign in to add a comment |
||
Comment 1 by glider@chromium.org
, Feb 10 2017