Perl 6 - the future is here, just unevenly distributed

IRC log for #divine, 2013-09-07

| Channels | #divine index | Today | | Search | Google Search | Plain-Text | summary

All times shown according to UTC.

Time Nick Message
06:42 xstill mornfall: Já se na to podívám.
06:49 xstill co je špatně?
08:01 spito joined #divine
08:21 xstill mornfall: dostal jsem SEGV v AtomicRMW (execution.h:588), ta dereference vedla na null.
08:42 mornfall no, špatně je že ty asserty by mělo jít zvrátit tím assertFailure -- lepší by bylo dát do toho destruktoru __divine_assert( 0 ) místo abort()
08:45 mornfall každopádně včera jsem přeložil divine clangem
08:45 mornfall teď buildím clangem kterej je už libstdc++-free
08:46 xstill no, já jsem se chtěl vyhnout #ifdef-ování všech těch streamů. Ale udělám to teda tak přes ten assertFailure a pak ti ten pathch dodám znova.
08:46 xstill ty ostatní jsou ok?
08:46 mornfall hm, streamy
08:47 xstill takže libc++ funguje? to je dobré
08:47 mornfall funguje, aj s c++abi
08:47 xstill on je tam asi jen sstream, ale ani ten momentálně nefunguje
08:47 xstill super :-)
08:47 mornfall a nejde tomu natypedefovat stream globálně?
08:48 xstill dělal jsi ten clang ručně nebo na to máš nix-expression?
08:48 xstill nějek ty testy vyřeším aby to moc nebolelo
08:48 mornfall mám na to expression
08:48 xstill ono mě se na tom nechtělo moc přemíšlet když jsem ten patch dělal
08:48 xstill a mohl bys mi to expression poskytnout?
08:49 mornfall jo, já to zacommituju a pushnu dneska
08:49 mornfall potřebujeme to aj v hydře, totiž :)
08:49 xstill jo to jo, tak já si to pak vytáhnu z tvých nixpkgs
08:50 mornfall 7 files changed, 62 insertions(+), 12 deletions(-)
08:50 xstill to je dost
08:52 mornfall a už mám divine bez libstdc++
08:52 mornfall a běží
08:52 mornfall dobrý
08:53 xstill :-)
08:56 xstill proč se vlastně ten abort volá v destruktoru?
09:07 mornfall protože to AssertFailed je stream
09:07 mornfall do kterýho nasypeš co se stalo
09:08 mornfall (co vlastně znamená, že ifdef ti stačí v implementaci AssertFailed ...)
09:09 mornfall v destruktoru to je proto aby se to někde nezapomnělo zavolat :-)
09:10 mornfall xstill: ty patche jsou v githubu, mělo by to být navrchu
09:11 mornfall git cherry-pick 0e2c0f1b6b2631ae31b1db01d169e89105330435 6247c1b392b7893a7cb6641b0a206398d992bbeb 25bc1a63c67349e2caf39ab5d696999b539429da 0e0e6f67ebda4760df34c40cfa4c281cbd8f138a 5959923e4709e2b87003a284dde32d64be1fa992 184c0478969d8863e7c9c8fe1313b0b51018e685 asi
09:14 mornfall chceš pak instanci clangSelf nejspíš
09:27 xstill dík
10:40 xstill hm, tak jsem předělal ten wibble assert a dostal jsem "/home/xstill/DiVinE/mainline/divine/llvm/program.h:285: int divine::llvm::ProgramInfo::globalPointerOffset(divine::llvm::Pointer): Assertion `globalPointerInBounds( p )' failed."
10:43 mornfall to chce celej backtrace
10:43 mornfall nebo bitkód kterej to reprodukuje :)
10:43 xstill jo
10:43 xstill moment
10:44 mornfall ten atomicrmw by měl dát invalid dereference teda
10:44 mornfall (to opravim)
10:44 xstill antea:/tmp/wibbleassert.bc
10:45 xstill pokud teda máš llvm 3.3
10:45 xstill jinak nevím jestli to bude fungovat
10:51 mornfall jo, funguje, vidím problém
11:03 mornfall teď to padá na unknown opcode 7 :-)
11:03 xstill to je asi exit
11:04 xstill https://divine.fi.muni.cz/trac/ticket/227
11:34 mornfall exit čeká na unwinder :-)
11:34 mornfall ale hned přidám podporu unreachable a budu to normálně hlásit
11:40 xstill proč potřebuje exit unwinder?
11:41 mornfall aby na to nemusel být speciální builtin
11:41 mornfall když máš unwinder tak to můžeš udělat celý v userspace
11:44 xstill aha
11:45 xstill ale když to bude dělat unwinding nebude to volat destruktory?
11:46 mornfall nebude :)
11:46 mornfall když uděláš „forced“ unwind tak se nevolá nic
11:46 mornfall to je de-facto longjmp
11:46 xstill ok
11:46 xstill je to magie
12:30 xstill ha, mám divine nabuildovaný clangem s libc++ :-)
12:39 mornfall dobrý ne? :)
12:39 mornfall freebsd 10 bude prý přeložený clangem
12:46 xstill :-)
18:45 xstill akorát teda clang strašně žere paměť v RelWithDebInfo
19:21 xstill to je tak dobře že používáme cmake a ne autoconf nebo co to je. Člověku se nedělá špatně když vidí build.
19:49 mornfall :-P
20:04 mornfall no, jednothreadovej exit už bychom měli ;-)
20:07 xstill :-)
20:10 mornfall co se stane když skončí main thread? ostatní se pobijou, ne?
20:13 xstill asi jo. Ale nevím co je přesně ve standardu.
20:18 mornfall note that this will create a 5MB(!) file named 'very_large_data_file', so make sure you have enough free disk-space before performing this operation.
20:18 mornfall olol
20:18 mornfall to asi není úplně novej dokument :-)
20:19 xstill :-D
20:20 mornfall Size of each tutorial is given in ammount of screen-pages when viewed using the lynx text-based web browser (assuming 25 lines per page):
20:20 mornfall to je fakt treasure trove :]
20:20 mornfall ale zjistil jsem kulový
20:20 mornfall zatím to nechám být
20:20 mornfall jdu radši vymyslet ty výjimky
20:20 mornfall resp. dovymyslet
20:21 mornfall není úplně ideální aby se __cxa_throw zacyklilo kdykoliv na zásobníku není landingpad...
20:21 mornfall (a navíc s počítadlem, takže divine skončí až když mu dojde paměť...)
20:22 xstill co to máš za veselej dokument?
20:22 mornfall http://www.cs.kent.edu/~ruttan/sysprog/lectures/multi-thread/multi-thread.html a odkazuje to na http://users.actcom.co.il/~choo/lupg/tutorials/
20:40 mornfall argument proč libc++/libc++abi -- implementace v C++11 :-)
20:40 mornfall psát C++98 je otrava
20:42 xstill jo C++11 je silně návykový
20:45 mornfall -INT_MIN = INT_MIN ... to je docela hustej jev :]
20:47 mornfall (-INT_MIN by bylo o 1 větší než INT_MAX totiž)

| Channels | #divine index | Today | | Search | Google Search | Plain-Text | summary