Search
Tuesday, 3rd of December 2019, 7:26:08 UTC
13:39:34
drmeister
I tried an experiment that failed
13:41:47
Bike
with the empty object files?
13:46:21
drmeister
I've been trying to cconnect to the internet for the last 5 min.
13:48:06
drmeister
My cconnection is effing useless as is my keyboard.
13:48:52
drmeister
I tried: ar -r foo.o foo_1.o foo_2.o ...
13:48:57
drmeister
Then I tried to link with that
13:49:24
drmeister
dsymutil on the fasl reports no debug info
13:55:59
drmeister
But I think we have to ditch Mac for development or ditch ld64 and use object files directly.
13:56:29
drmeister
Or live with serial compilation.
13:56:57
Bike
i don't really have a problem with serial compilation
13:57:02
Bike
we could conditionalize it by OS or something
14:13:24
Bike
drmeister: it's OutputFile.cpp, line 5803 "//need SO's..." and that if
14:13:44
Bike
drmeister: the object file information is actually written a few lines below on 5834
14:16:22
drmeister
Yeah - none of this should be a problem on linux. It's just macOS
14:18:49
drmeister
https://www.irccloud.com/pastebin/KxItmnqL/
14:21:36
Bike
yeah. basically it only does the N_OSO thing when the source file changes.
14:28:16
Bike
i'm not sure if that can just be moved out of the conditional, because stabs seem to be ordered
14:29:01
Bike
plus there's stuff about "N_AST debug notes"
14:38:28
Bike
a type of stab that apparently records the object file information in a debug note.
14:39:53
drmeister
I don't understand why my hack of alternating an empty object file didn't work.
14:39:53
Bike
the objStab thing a bit lower in the file.
14:40:04
Bike
well if the object file is actually empty there won't be any atoms in it.
14:40:07
drmeister
I'd have to build this code and put some print statements in to see what's going on.
14:40:43
Bike
this linker works on a finer grain than files, it reduces each file to a series of definitions (and stuff) and works with those.
14:40:48
Bike
so an empty file is just nothing.
14:41:31
Bike
if you put those structs in it or something, it might generate atoms but not ones with debug info, so they won't show up in this loop.
15:16:47
drmeister
Speculative compilation in ORC: https://www.youtube.com/watch?v=MUyf2466PbI
15:18:20
drmeister
I have no idea how we could use this at this point.
15:29:01
drmeister
This talk is interesting - its on a new constexpr interpreter for clang.
15:29:02
drmeister
https://www.youtube.com/watch?v=LgrgYD4aibg&feature=youtu.be
17:53:10
Bike
drmeister: is apply0 like apply, except (a) its function argument must be a function, and (b) it only takes one more argument, which is a list or valist or whatever?
17:54:05
Bike
apply still seems like kind of a mess of cases. i could throw in some compiler macros for obvious cases
17:54:16
Bike
like knowing the number of fixed arguments ahead of time, and making the function an actual function
17:54:56
Bike
or knowing ahead of time whether it gets a list or nil or valist or etc
17:55:14
Bike
i guess if the list is nil it can just be rewritten as funcall. kind of unlikely to matter of course
Tuesday, 3rd of December 2019, 19:26:08 UTC