libt/tSIntegerW.tea
changeset 19 7597503194b8
equal deleted inserted replaced
18:e2168260b75a 19:7597503194b8
       
     1 nil subclass: #tSIntegerW
       
     2     category: 't-Kernel'
       
     3 !
       
     4 
       
     5 !tSIntegerW methodsFor: 'comparing'!
       
     6 < another <tSIntegerW> <^tBoolean>
       
     7     <primitive: [:asm |
       
     8     	asm ret: (asm icmp: self _: another cond: LLVMIntSLT)
       
     9     ]>
       
    10 !
       
    11 
       
    12 > another <tSIntegerW> <^tBoolean>
       
    13     <primitive: [:asm |
       
    14     	asm ret: (asm icmp: self _: another cond: LLVMIntSGT)
       
    15     ]>
       
    16 !
       
    17 
       
    18 = another <tSIntegerW> <^tBoolean>
       
    19     <primitive: [:asm |
       
    20     	asm ret: (asm icmp: self _: another cond: LLVMIntEQ)
       
    21     ]>
       
    22 ! !
       
    23 
       
    24 !tSIntegerW methodsFor: 'arithmetic'!
       
    25 + another <tSIntegerW> <^tSIntegerW>
       
    26     <primitive: [:asm |
       
    27     	asm ret: (asm add: self _: another)
       
    28     ]>
       
    29 !
       
    30 
       
    31 - another <tSIntegerW> <^tSIntegerW>
       
    32     <primitive: [:asm |
       
    33     	asm ret: (asm sub: self _: another)
       
    34     ]>    
       
    35 !
       
    36 
       
    37 * another <tSIntegerW> <^tSIntegerW>
       
    38     <primitive: [:asm |
       
    39     	asm ret: (asm mul: self _: another)
       
    40     ]>        
       
    41 ! !