[parrot/parrot] f32525: [imcc] fix -O2 used_once: keep side-effecting ops ...

GitHub noreply at github.com
Thu Feb 27 03:47:59 UTC 2014


  Branch: refs/heads/rurban/imccO2
  Home:   https://github.com/parrot/parrot
  Commit: f32525e974fc67ea693ad8892fc5e3c8ae0f0b29
      https://github.com/parrot/parrot/commit/f32525e974fc67ea693ad8892fc5e3c8ae0f0b29
  Author: Reini Urban <rurban at cpanel.net>
  Date:   2014-02-26 (Wed, 26 Feb 2014)

  Changed paths:
    M compilers/imcc/imcc.y
    M compilers/imcc/instructions.h
    M compilers/imcc/optimizer.c
    M t/compilers/imcc/reg/alloc.t
    M t/compilers/imcc/reg/spill_old.t
    M t/op/calling.t

  Log Message:
  -----------
  [imcc] fix -O2 used_once: keep side-effecting ops #1036

allow used_once elimination only for purely functional ops
without side-effects.
Fixes t/compilers/imcc/reg/alloc.t test 2 alligator 2 - r9629
      t/compilers/imcc/reg/spill_old.t test 1 bug \#32996
and some more.

set ITPUREFUNC in the parser, as this is the best place to find them:
logical un_op and null; artithmetic bin_op and assign_op




More information about the parrot-commits mailing list