00:08:58  * joyeejoined
00:13:06  * joyeequit (Ping timeout: 240 seconds)
00:18:12  * unixpicklejoined
00:25:16  * plutoniixjoined
00:25:21  * plutoniixquit (Max SendQ exceeded)
00:25:55  * plutoniixjoined
00:30:17  * ncthom91quit (Quit: Textual IRC Client: www.textualapp.com)
01:15:33  * unixpicklequit (Quit: My Mac has gone to sleep. ZZZzzz…)
02:13:01  * joyeejoined
02:13:13  * unixpicklejoined
02:14:21  * joyeequit (Remote host closed the connection)
02:14:34  * joyeejoined
02:20:14  * unixpicklequit (Quit: My Mac has gone to sleep. ZZZzzz…)
02:25:37  * joyeequit (Read error: Connection reset by peer)
02:30:03  * joyeejoined
03:43:28  * joyeequit (Remote host closed the connection)
03:59:42  * joyeejoined
04:20:05  * joyee_joined
04:20:05  * joyeequit (Read error: Connection reset by peer)
04:30:45  * joyee_quit (Read error: Connection reset by peer)
04:34:19  * joyeejoined
05:00:48  * joyeequit (Remote host closed the connection)
05:52:08  * joyeejoined
05:55:14  * joyeequit (Remote host closed the connection)
05:55:28  * joyeejoined
07:25:31  * s1341joined
07:34:11  * joyeequit (Remote host closed the connection)
07:48:15  * joyeejoined
08:01:58  * joyeequit (Remote host closed the connection)
08:02:47  * joyeejoined
08:33:42  * joyeequit (Remote host closed the connection)
09:34:14  * joyeejoined
09:34:55  * joyeequit (Remote host closed the connection)
09:35:08  * joyeejoined
10:23:24  * plutoniixquit (Quit: Leaving)
10:35:54  * joyeequit (Remote host closed the connection)
10:39:07  * joyeejoined
10:57:46  * joyeequit (Remote host closed the connection)
10:58:47  * joyeejoined
11:00:14  * joyeequit (Remote host closed the connection)
11:04:36  * joyeejoined
11:09:11  * joyeequit (Ping timeout: 256 seconds)
11:25:10  * mylesborinsquit (Quit: farewell for now)
11:25:41  * mylesborinsjoined
12:00:05  * ilyaigpetrovjoined
12:28:34  * joyeejoined
12:45:32  * joyeequit (Read error: Connection reset by peer)
12:46:36  * joyeejoined
12:47:56  * joyeequit (Remote host closed the connection)
12:48:49  * joyeejoined
13:09:21  * joyeequit (Read error: Connection reset by peer)
13:09:53  * joyeejoined
13:52:51  * unixpicklejoined
14:03:05  * bobmcwjoined
14:03:05  * bobmcwquit (Changing host)
14:03:05  * bobmcwjoined
14:05:52  * bradleymeckjoined
15:55:23  * RT|Chatzillaquit (Quit: ChatZilla [Firefox])
16:09:47  * joyeequit (Read error: Connection reset by peer)
16:10:23  * joyeejoined
16:32:13  * joyee_joined
16:33:01  * joyeequit (Read error: Connection reset by peer)
16:56:26  * bradleymeckquit (Quit: bradleymeck)
16:58:03  * seventhjoined
17:05:06  * seventhquit (Ping timeout: 240 seconds)
17:37:22  <trungl-bot>Tree closed by [email protected]: closed (http://build.chromium.org/p/client.v8/builders/V8%20Linux%20-%20arm64%20-%20sim%20-%20MSAN/builds/13731 from 1338ae97ded61c7d7315d9736d4c442979951bb7)
17:39:18  * bradleymeckjoined
17:41:35  * joyee_quit (Remote host closed the connection)
18:05:20  * seventhjoined
18:08:54  * unixpicklequit (Quit: My Mac has gone to sleep. ZZZzzz…)
18:37:15  * unixpicklejoined
19:34:53  <bradleymeck>do empty `Persistent`s affect GC?
19:43:54  * ilyaigpetrovquit (Quit: Connection closed for inactivity)
20:00:11  * seventhquit (Remote host closed the connection)
20:46:37  <trungl-bot>Tree opened by [email protected]: open (fix in flight)
20:48:38  <trungl-bot>Tree opened by [email protected]: open
21:14:36  * decoderquit (Ping timeout: 240 seconds)
21:16:26  * decoderjoined
21:54:46  <jwolfe>i've concluded that there's no difference between symbol_level=1 and symbol_level=2. the built binaries are literally identical. and they don't appear to have symbols for local variables making debugging pretty unusable.
22:00:51  * unixpicklequit (Quit: My Mac has gone to sleep. ZZZzzz…)
22:18:32  * unixpicklejoined
22:25:57  * Guest59joined
22:30:44  * unixpicklequit (Quit: My Mac has gone to sleep. ZZZzzz…)
22:41:41  <caitp>jwolfe: you can see the different flags passed to your compiler depending on symbol_level in build/config/compiler/
22:45:06  * RT|Chatzillajoined
22:53:11  * unixpicklejoined
23:00:33  <jwolfe>caitp: thanks for the pointer. that led me to discover the difference between symbol_level 1 and 2 is passing -g1 or -g2 to clang. reading clang's command line documentation, they do not support -g1 or -g2; those are both invalid flags. and then a random person on stackoverflow said the source converts any -g<something> that it doesn't recognize into regular -g, which the clang documentation says is to enable all debug symbols.
23:01:26  <jwolfe>so gn is being a little silly passing illegal options to clang, but all this still doesn't solve the mystery of why i don't get useful debug symbols in my build. the evidence says that gn isn't the problem, so i'm stuck again.
23:08:29  <aklein>bradleymeck: no, empty persistents aren't "hooked up" to the GC
23:09:20  <aklein>jwolfe: what's in your gn args?
23:09:32  <aklein>no local variables sounds very strange
23:09:56  <jwolfe>v8_use_snapshot=false
23:09:57  <jwolfe>symbol_level=2
23:10:41  <jwolfe>i'll try omiting the snapshot option to see if that's making a difference.
23:15:24  <aklein>those aren't your only gn args, are they?
23:16:59  <jwolfe>aklein: yep.
23:17:07  <jwolfe>and removing all of them has the same result
23:18:50  <jwolfe>if i set symbol_level=0, i actually get no symbols. like i can't set breakpoints at file:line. that's expected. the other symbol_level settings let me set file:line breakpoints (and step through the source), but the local variables are all missing.
23:19:05  <aklein>I've never set symbol_level
23:19:25  <jwolfe>aklein: do you recommend particular settings in my gn args?
23:20:56  <aklein>I think all you should need is v8_optimized_debug = false
23:21:23  <caitp>i think he's trying to get debug symbols in a release build
23:21:36  <aklein>oh if it's a release build then the local variables might just be optimized out
23:21:55  <aklein>will read the scrollback
23:22:37  <aklein>jwolfe: if caitp's thinking is right, my first question is, what are you trying to do?
23:23:50  <jwolfe>from https://www.chromium.org/developers/gn-build-configuration : The default GN build is debug. To do a release build: is_debug = false
23:25:03  <jwolfe>i'm trying to run a debugger with a gn build. i've had no trouble with the gyp/make build, but i want to try disabling the snapshot to debug some of the code that runs at that time. i know there's an option for that with gn, and i should probably switch to gn eventually anyway, but every time i try i run into some little problem like this.
23:25:15  <jwolfe>so i guess the short answer is: i'm trying to use the debugger.
23:25:19  <aklein>v8_optimized_debug = true
23:25:22  <aklein>er
23:25:23  <aklein>false
23:25:24  <aklein>is what you want
23:25:32  <aklein>the advice above is for Chromium developers in general
23:25:59  <aklein>it turns out that if you build a debug Chromium with a debug v8, it's unnecessarily slow for the 95% of Chromium developers who aren't debugging v8
23:26:10  <aklein>since it slows down the JS running on websites
23:26:16  <caitp>you can also just debug the mksnapshot step of the build, if you're talking about debugging stuff that happens during snapshot creation
23:27:40  <aklein>if you want to know less about the implementation of the build system, v8gen.py is your friend, see https://github.com/v8/v8/wiki/Building-with-GN
23:31:38  <aklein>using that tool to set up a debug build should _definitely_ work (and if it doesn't, filing a v8 bug with details will be useful to our infrastructure folks who can help fix it)
23:37:54  * joyeejoined
23:50:57  <jwolfe>alright, v8_optimized_debug=false resulted in local variable symbols. from what i know about clang, that shouldn't actually affect anything, since llvm takes great care to preserve debug symbols through optimizations. but maybe i'm being too naive. anyway, disabling optimizations was the trick to getting local variable symbols.
23:52:11  <jwolfe>but my debug symbols still have problem. the namespace v8::internal:: is replaced by (anonymous namespace)::(anonymous namespace):: . that has been the case in every gn build so far. i was hoping that was due to the same problem as the local variable symbols, but i've now resolved the local variable issue and this issue remains.
23:52:21  <jwolfe>is this not a bug? is this how it's supposed to be?
23:54:54  <aklein>jwolfe: that's not something I've ever seen, so it sounds like either a bug or a further configuration knob that needs turning
23:55:57  <aklein>this is assuming the symbol you're talking about isn't, in fact, in an anonymous namespace
23:58:51  <aklein>jwolfe: remind me, what platform is this on?
23:59:44  <jwolfe>i'm in linux. i believe ubuntu 16.04.
23:59:46  <jwolfe>x64 of course.