This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: optimisation question


Andreas Schwab wrote:
"Remy X.O. Martin" <vsxo@hotmail.com> writes:


Here's another 'trick' I learned in those days: use a=b, c=d, e=f; rather
than a=b; c=d; e=f; (like in the initialisation expression of a for
loop). "The first version might be executed in parallel. Of course we
don't have parellel machines here, but you never know..."

Also nonsense of course


And of course it is wrong, because the comma operator creates a sequence
point (but K&R C didn't have sequence points yet).

Irrelevant, the assignments can be done in parallel regardless of which form they are written in. Sequence points create as-if sequencing, but a compiler can always reorder etc if it has no effect on the result.

Note in fact that most modern superscalar machines will extract
this kind of parallelism on the fly without the compiler doing
anything much.

Andreas.





Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]