Re: D at 20: Hits and Misses, and what I learned along the way Oct 19

2019-09-24 Thread Walter Bright via Digitalmars-d-announce
On 9/23/2019 3:01 PM, H. S. Teoh wrote: On Mon, Sep 23, 2019 at 02:55:00PM -0700, Walter Bright via Digitalmars-d-announce wrote: On 9/23/2019 10:49 AM, H. S. Teoh wrote: Will this talk be posted somewhere like Youtube afterwards? Yes, though sometimes it doesn't due to various failure

Re: LDC 1.18.0-beta1

2019-09-24 Thread Ivan Butygin via Digitalmars-d-announce
On Tuesday, 24 September 2019 at 19:17:25 UTC, jmh530 wrote: On Tuesday, 24 September 2019 at 18:24:36 UTC, Ivan Butygin wrote: On Tuesday, 24 September 2019 at 17:49:13 UTC, jmh530 wrote: About bind call overhead, bind object hold pointer to shared payload, which is allocated via malloc.

Re: LDC 1.18.0-beta1

2019-09-24 Thread jmh530 via Digitalmars-d-announce
On Tuesday, 24 September 2019 at 18:24:36 UTC, Ivan Butygin wrote: On Tuesday, 24 September 2019 at 17:49:13 UTC, jmh530 wrote: About bind call overhead, bind object hold pointer to shared payload, which is allocated via malloc. This payload has function pointer (initially null). During

Re: LDC 1.18.0-beta1

2019-09-24 Thread Ivan Butygin via Digitalmars-d-announce
On Tuesday, 24 September 2019 at 17:49:13 UTC, jmh530 wrote: About bind call overhead, bind object hold pointer to shared payload, which is allocated via malloc. This payload has function pointer (initially null). During compileDynamicCode call runtime will update this pointer to generated

Re: LDC 1.18.0-beta1

2019-09-24 Thread jmh530 via Digitalmars-d-announce
On Tuesday, 24 September 2019 at 16:48:48 UTC, kinke wrote: [snip] If you don't want to ship 10 fine-tuned binaries for 10 different CPUs (see `-mcpu=?`), you can use JIT to compile and tune performance-critical pieces for the executing/target CPU. E.g., letting the auto-vectorizer exploit

Re: LDC 1.18.0-beta1

2019-09-24 Thread kinke via Digitalmars-d-announce
On Tuesday, 24 September 2019 at 07:41:35 UTC, Martin Tschierschke wrote: Thank you, I found this too, but it is more an example of the principle, but what is the use case? It is only useful if the instruction set of the compiling computer differ from target hardware and by this you get

Re: LDC 1.18.0-beta1

2019-09-24 Thread jmh530 via Digitalmars-d-announce
On Monday, 23 September 2019 at 20:57:49 UTC, Ivan Butygin wrote: [snip] With @dynamicCompileEmit normal calls to function will go to static version but these functions can still be targets for bind. The confusing thing is that if I add a normal call to foo and then change

Re: LDC 1.18.0-beta1

2019-09-24 Thread Martin Tschierschke via Digitalmars-d-announce
On Monday, 23 September 2019 at 19:40:13 UTC, Ivan Butygin wrote: On Monday, 23 September 2019 at 12:22:47 UTC, Martin Tschierschke wrote: Can you please give (again?) a link or a more detailed description of the JIT, explaining some use cases?