Perl 6 - the future is here, just unevenly distributed

IRC log for #divine, 2015-07-16

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

All times shown according to UTC.

Time Nick Message
01:48 ilbot3 joined #divine
01:48 Topic for #divine is now DIVINE: A Parallel LTL Model Checker (http://divine.fi.muni.cz) | http://irclog.perlgeek.de/divine/
07:57 xstill btw. drží si interpret u registrů typy? počítám že spíš ne, pak by se asi daly při alokaci registrů registry které se na sebe bitcastují ukládat do jedné lokace (jen by se musela vyřešit, že se pak nemá ten bitcast skutečně dělat)
08:11 xstill i když momentálně to teda vypadá, že bitcast někdy mění memory flagy (01111111 -> 00000000), což je mi trochu podezřelé
08:59 xstill nojo, ono totiž kopírování pointrů po bajtech nefunguje pořád
09:05 spito xstill: kdy bude hotový patch na zprovoznění kompilace na OS X
09:05 spito ?
09:06 xstill spito: nevím, někdy, teď potřebuju spíš ten memics
09:06 xstill ale jako ne za moc dlouho, nebude to těžké asi
09:06 spito mám to udělat?
09:07 spito mělo by snad stačit kouknout se na ty Laarmanovy patche a učesat je, ne?
09:07 xstill no, já to mám rozdělané, tak bych ti to musel nějak předat (budu na FI tak za hodinu asi)
09:07 xstill jo mělo by stačit ty patche učest a přerecordovat podle našich konvencí
09:08 xstill teda ten RT patch bude asi potřeba udělat úplně jinak
09:12 xstill jakože teď to mám ve stavu že se ten divine na macu zkompiluje, ale ještě nevím jestli funguje
09:41 mornfall_ joined #divine
09:42 zbeasnyy no, kopírování pointru po bajtech nebude fungovat nikdy, protože nemůže
09:45 xstill zbeasnyy: http://irclog.perlgeek.de/divine/2015-07-06#i_10856402
09:45 zbeasnyy s tím trunc si to ještě musim rozmyslet
09:45 xstill s trunc tam momentálně mám sizeof( L ) < sizeof( Pointer )
09:46 xstill a to funguje teď řeším jiný problémy
09:46 zbeasnyy mně se tam původně nechtělo psát že trunc = true pokud je width result-u menší než width v datalayout pro pointr
09:46 zbeasnyy ale asi to tam budu muset napsat takhle
09:46 zbeasnyy protože jinak to bude vždycky blbě
09:46 xstill jakto?
09:47 zbeasnyy protože sizeof( Pointer ) je 4 aj pro 64b bitkód
09:47 zbeasnyy takže kód kterej uřízne půlku pointru teď bude náhodou fungovat
09:47 zbeasnyy teda teď = když se tam dá sizeof( Pointer )
09:47 xstill jo, jenomže když děláš cast long -> pointer tak chceš aby to fungovao
09:49 zbeasnyy však jo, ono to bude fungovat s trunc = i.result().width < TD.getPointerSize (plusminus syntaxe)
09:50 xstill a i.result().width je pro pointer 8, jo? (na x86_64)
09:50 zbeasnyy jo
09:50 xstill tak to pak jo
10:53 xstill mornfall: ten trunc opravím
11:12 xstill mornfall: ad Laarmanův patch, budu ho přerecordovávat, mám ty části co neměním recordovat jeho jménem?
11:19 xstill ach ty makra
11:58 xstill mornfall: to že kopírování pointrů po bajtech pozpátku funguje je ale taky dobrá past
12:08 xstill ten assert na econtext.validate v implement_load/store je stejně takovej dost vadnej, protože ono je možný ho rozbít chybou v userspace
12:52 xstill hmm, dobrý, mám zasebou assert( *y == 42 ) a assert( *y != 42 ) a divine mi říká property holds…
13:09 zbeasnyy joined #divine
13:46 mornfall xstill: a dostane se to k nim?
13:49 xstill ne
13:49 xstill jakože na to už jsem přišel, ale jinak jsem se až tak moc neposunul :-/
13:50 xstill pořád mi to někde v userspace cyklí nebo co
13:51 mornfall to s tím peterson_tso.bc už je ale vyřešený? (to byl ten trunc?)
14:06 zbeasnyy joined #divine
14:19 xstill no, teď to pro změnu cyklí
14:19 xstill takže není
14:20 xstill repsektive simulate mi tu běží už podezřele dlouho teda
14:20 xstill (a generuje další stavy)
14:20 xstill takže vlastně nevím
14:21 xstill aha tak ne, jen čas od času se jeden stav generuje několik desítek vteřin (v release :-/)
14:25 xstill jakože třeba 40
15:34 xstill tak jsem to přeložil s -O2 a najednou to běží úplně v pohodě :-)
16:16 xstill hm, llvm testy timeoutují
17:09 mornfall kdybychom to tady už neřešili...
17:10 xstill já vím
17:10 xstill za chvíli pošlu patch na mac a patch ty weakmem, už to i docela funguje zdá se
17:11 xstill ne, že by to bylo hotové, ale už se s tím dá něco dělat
17:11 xstill (weakmem myslím, na apple ty testy co stihnou proběhnout projdou)
17:12 xstill jinak překládám userspace s __unix na apple, jinak by se musel portovat, není to ideální, ale příjde mi to (alespoň zatím) lepší
18:19 xstill mornfall: zítra v 9 teda?
18:26 mornfall jo, cca
18:32 xstill mornfall: máš tam dvoje (disjunktní) patche, ten první je otestovanej, ale na tom applu mi ti testy pořád běží :-/
18:43 mornfall xstill: určitě je to __environ dobře?
18:43 mornfall teda, zkusil jsi to aj na non-OSX?
18:43 xstill kde, co?
18:43 mornfall #if __unix return __environ
18:44 xstill no teď si uvědomuju, že unity jsem na linuxu nepouštěl
18:44 mornfall jmenuje se to environ
18:44 xstill sakra
18:44 xstill tak to ještě opravím
18:45 mornfall jo a když už na to hrabeš, environ není deklarovaný v žádným headeru (podle standardu)
18:45 mornfall ] hunk ./bricks/brick-process.h 80
18:45 mornfall +extern char **environ;
18:45 mornfall to tady mám lokálně
18:45 xstill dobře, tenhle patch ještě projdu znova pořádně, ty ostatní by snad měly být OK
18:45 mornfall jo a execvpe nechybí jen na applu :)
18:46 mornfall je to nějaký GNU rozšíření myslim
18:46 mornfall nebo možná Linuxismus
18:46 mornfall execvpe(): _GNU_SOURCE
18:46 mornfall jop
18:47 xstill aha, takže i BSD by ho mohlo chtít, jo?
18:47 mornfall no, cokoliv co nemá glibc
18:47 xstill tak to chce jen jiný ifdef
18:47 mornfall jo
18:47 xstill #ifdef _GNU_SOURCE je validní možnost?
18:47 mornfall taky máš různě #if __APPLE__ vs #ifdef __APPLE__
18:47 mornfall nemyslim
18:48 mornfall _GNU_SOURCE funguje obráceně
18:48 mornfall http://linux.die.net/man/7/feature_test_macros
18:48 xstill sem si to myslel (GNU_SOURCE) ok, projdu si všechny ty apple patche pořádně ještě jednou
18:48 xstill jen nevím jestli ještě dneska

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