On Monday, 1 April 2013 at 11:10:56 UTC, Artur Skawina wrote:
On 04/01/13 12:24, js.mdnq wrote:
On Monday, 1 April 2013 at 01:54:10 UTC, John Colvin wrote:
What's after the code?
The 0x76 call is an inline call function, the ret returns it.
The stuff before it is setting up the registers for t
On 04/01/13 12:24, js.mdnq wrote:
> On Monday, 1 April 2013 at 01:54:10 UTC, John Colvin wrote:
> What's after the code?
>
> The 0x76 call is an inline call function, the ret returns it. The stuff
> before it is setting up the registers for the call and what comes after
>
>> 0x0076 <
On Monday, 1 April 2013 at 01:54:10 UTC, John Colvin wrote:
I've been learning assembler a bit and I decided to have a look
at what dmd spits out. I tried a simple function with arrays to
see what vectorization gets done
void addto(int[] a, int[] b) {
a[] += b[];
}
dmd -O -release -inline
On Monday, 1 April 2013 at 01:54:10 UTC, John Colvin wrote:
I've been learning assembler a bit and I decided to have a look
at what dmd spits out. I tried a simple function with arrays to
see what vectorization gets done
void addto(int[] a, int[] b) {
a[] += b[];
}
dmd -O -release -inline
On Monday, 1 April 2013 at 02:03:12 UTC, bearophile wrote:
In what you are seeing I think something is not recognizing
the SSE+ instructions.
Sorry, I was wrong. The SSE ops are done elsewhere. You see
that "call 0x7b <_D3sse5addtoFAiAiZv+59>".
Bye,
bearophile
Woops, sorry the actual fil
In what you are seeing I think something is not recognizing the
SSE+ instructions.
Sorry, I was wrong. The SSE ops are done elsewhere. You see that
"call 0x7b <_D3sse5addtoFAiAiZv+59>".
Bye,
bearophile
John Colvin:
Can anyone explain what on earth is going on here?
In the dmd sources there are the sources for those array
operations too.
In what you are seeing I think something is not recognizing the
SSE+ instructions.
Bye,
bearophile
I've been learning assembler a bit and I decided to have a look
at what dmd spits out. I tried a simple function with arrays to
see what vectorization gets done
void addto(int[] a, int[] b) {
a[] += b[];
}
dmd -O -release -inline -noboundscheck -gc -c test.d
disassembled with gdb:
_D3sse5