Changeset 760 for trunk


Ignore:
Timestamp:
2011-04-17T12:23:55+02:00 (4 years ago)
Author:
moo
Message:

Decompiler: jmp_set/jmpz adjust

Location:
trunk
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/Decompiler.class.php

    r758 r760  
    897897                continue; 
    898898            } 
    899             // $this->dumpop($op, $EX); //var_dump($op); 
     899            // echo $i; $this->dumpop($op, $EX); //var_dump($op); 
    900900 
    901901            $resvar = null; 
     
    15001500                    break; 
    15011501                case XC_JMP_SET: // ?: 
     1502                    $resvar = $this->getOpVal($op1, $EX); 
     1503                    $op['cond'] = $resvar;  
     1504                    $op['isjmp'] = true; 
     1505                    break; 
    15021506                case XC_JMPNZ: // while 
    15031507                case XC_JMPZNZ: // for 
     
    15211525                        var_dump($op);// exit; 
    15221526                    } 
    1523                     if ($opc == XC_JMPZ_EX || $opc == XC_JMPNZ_EX || $opc == XC_JMPZ) { 
     1527                    if ($opc == XC_JMPZ_EX || $opc == XC_JMPNZ_EX) { 
    15241528                        $targetop = &$EX['opcodes'][$op2['opline_num']]; 
    15251529                        if ($opc == XC_JMPNZ_EX) { 
  • trunk/decompilesample.php

    r758 r760  
    206206$a = $b xor $c; 
    207207$a = !$b; 
     208$a = $b ? $c : $d; 
     209$a = f1() ? f2() : f3(); 
    208210$a = $b and $c; 
    209211$a = $b or $c; 
    210212$a = $b && $c; 
    211213$a = $b || $c; 
    212 $a = $b ? $c : $d; 
    213 $a = f1() ? f2() : f3(); 
    214214 
    215215try { 
     
    294294 
    295295$a = $b ?: $d; 
     296$a = ($b ?: $d) + $c; 
    296297$a = f1() ?: f2(); 
    297298 
Note: See TracChangeset for help on using the changeset viewer.