| 
        
       | 
      
        
  
   Start adding an integrated assembler.
Patchset 1 is more or less the original dart assembler code (revision 39313)
The other patches show the modifications.
Handling:
* adc, add, sbb, sub
* and, or, xor
* addss/sd, divss/sd, mulss/sd, subss/sd
* addps, divps, mulps, subps
* padd, psub
* sqrtss/sd
* cbw, cwd, cdq
* cmov
* cmpps
* cmp
* ucomiss/sd
* movsxb/w
* movzxb/w
* nop
* pop
* ret
Sort of handling:
* Call (can't force PC-rel reloc w/ llvm-mc)
Jumps need to be handled last because they require
accurate instruction distances.
BUG=xxx
   
  
  
  
  
   
  
  
  
  
  
   
  
  
  
  
  
   
  
  
  
  
  
   
  
  
  
  
  
   
  
  
  
  
  
   
  
  
  
  
  
   
  
  
  
  
  
   
  
  
  
  
  
   
  
  
  
    
      Total comments: 6
      
     
  
  
  
   
  
  
  
  
  
   
  
  
  
  
  
   
  
  
  
  
  
   
  
  
  
  
  
   
  
  
  
  
  
   
  
  
  
  
  
   
  
  
  
  
  
   
  
  
  
    
      Total comments: 6
      
     
  
  
  
   
  
  
  
  
  
   
  
  
  
  
  
   
  
  
  
  
  
   
  
  
  
  
    
  
  
    
       | 
      Unified diffs | 
      Side-by-side diffs | 
      Delta from patch set | 
      Stats (+4497 lines, -140 lines) | 
      Patch | 
     
    
      
          | 
        M | 
        
          
            Makefile.standalone
          
         | 
        
          
            View
          
         | 
        
        
          1
        
          2
        
          3
        
          4
        
          5
        
          6
        
          7
        
          8
        
          9
        
          10
        
          11
        
          12
        
          13
        
          14
        
          15
        
          16
        
          17
        
          18
        
          19
        
          20
        
          21
        
         | 
        
          1 chunk | 
          +3 lines, -1 line | 
        
        
          
            0 comments
            
            
          
         | 
        
          
            Download
          
         | 
       
    
      
          | 
        M | 
        
          
            src/IceCfg.h
          
         | 
        
          
            View
          
         | 
        
        
          1
        
          2
        
          3
        
          4
        
         | 
        
          3 chunks | 
          +10 lines, -0 lines | 
        
        
          
            0 comments
            
            
          
         | 
        
          
            Download
          
         | 
       
    
      
          | 
        M | 
        
          
            src/IceCfg.cpp
          
         | 
        
          
            View
          
         | 
        
        
          1
        
          2
        
          3
        
          4
        
         | 
        
          1 chunk | 
          +2 lines, -0 lines | 
        
        
          
            0 comments
            
            
          
         | 
        
          
            Download
          
         | 
       
    
      
          | 
        M | 
        
          
            src/IceCfgNode.cpp
          
         | 
        
          
            View
          
         | 
        
        
          1
        
          2
        
          3
        
          4
        
          5
        
          6
        
          7
        
          8
        
          9
        
          10
        
          11
        
          12
        
          13
        
          14
        
          15
        
          16
        
          17
        
          18
        
          19
        
          20
        
          21
        
         | 
        
          1 chunk | 
          +5 lines, -1 line | 
        
        
          
            0 comments
            
            
          
         | 
        
          
            Download
          
         | 
       
    
      
          | 
        M | 
        
          
            src/IceClFlags.h
          
         | 
        
          
            View
          
         | 
        
        
          1
        
          2
        
          3
        
          4
        
          5
        
          6
        
          7
        
          8
        
          9
        
          10
        
          11
        
          12
        
          13
        
          14
        
          15
        
          16
        
          17
        
          18
        
          19
        
          20
        
          21
        
         | 
        
          1 chunk | 
          +3 lines, -1 line | 
        
        
          
            0 comments
            
            
          
         | 
        
          
            Download
          
         | 
       
    
      
          | 
        M | 
        
          
            src/IceConverter.cpp
          
         | 
        
          
            View
          
         | 
        
        
          1
        
          2
        
          3
        
          4
        
          5
        
          6
        
          7
        
          8
        
          9
        
          10
        
          11
        
          12
        
          13
        
          14
        
          15
        
          16
        
          17
        
          18
        
          19
        
          20
        
          21
        
         | 
        
          1 chunk | 
          +6 lines, -2 lines | 
        
        
          
            0 comments
            
            
          
         | 
        
          
            Download
          
         | 
       
    
      
          | 
        A | 
        
          
            src/IceFixups.h
          
         | 
        
          
            View
          
         | 
        
        
          1
        
          2
        
          3
        
          4
        
          5
        
          6
        
          7
        
          8
        
          9
        
          10
        
          11
        
          12
        
          13
        
          14
        
          15
        
          16
        
          17
        
          18
        
          19
        
          20
        
          21
        
         | 
        
          1 chunk | 
          +32 lines, -0 lines | 
        
        
          
            0 comments
            
            
          
         | 
        
          
            Download
          
         | 
       
    
      
          | 
        M | 
        
          
            src/IceGlobalContext.h
          
         | 
        
          
            View
          
         | 
        
        
          1
        
          2
        
          3
        
          4
        
          5
        
          6
        
          7
        
          8
        
          9
        
          10
        
          11
        
          12
        
          13
        
          14
        
          15
        
          16
        
          17
        
          18
        
          19
        
          20
        
          21
        
         | 
        
          1 chunk | 
          +2 lines, -1 line | 
        
        
          
            0 comments
            
            
          
         | 
        
          
            Download
          
         | 
       
    
      
          | 
        M | 
        
          
            src/IceGlobalContext.cpp
          
         | 
        
          
            View
          
         | 
        
        
          1
        
          2
        
          3
        
          4
        
          5
        
          6
        
          7
        
          8
        
          9
        
          10
        
          11
        
          12
        
          13
        
          14
        
          15
        
          16
        
          17
        
          18
        
          19
        
          20
        
          21
        
         | 
        
          4 chunks | 
          +14 lines, -6 lines | 
        
        
          
            0 comments
            
            
          
         | 
        
          
            Download
          
         | 
       
    
      
          | 
        M | 
        
          
            src/IceInst.h
          
         | 
        
          
            View
          
         | 
        
        
          1
        
          2
        
          3
        
          4
        
          5
        
          6
        
          7
        
          8
        
          9
        
          10
        
          11
        
          12
        
          13
        
          14
        
          15
        
          16
        
          17
        
          18
        
          19
        
          20
        
          21
        
         | 
        
          2 chunks | 
          +2 lines, -0 lines | 
        
        
          
            0 comments
            
            
          
         | 
        
          
            Download
          
         | 
       
    
      
          | 
        M | 
        
          
            src/IceInst.cpp
          
         | 
        
          
            View
          
         | 
        
        
          1
        
          2
        
          3
        
          4
        
          5
        
          6
        
          7
        
          8
        
          9
        
          10
        
          11
        
          12
        
          13
        
          14
        
          15
        
          16
        
          17
        
          18
        
          19
        
          20
        
          21
        
         | 
        
          1 chunk | 
          +2 lines, -0 lines | 
        
        
          
            0 comments
            
            
          
         | 
        
          
            Download
          
         | 
       
    
      
          | 
        M | 
        
          
            src/IceInstX8632.h
          
         | 
        
          
            View
          
         | 
        
        
          1
        
          2
        
          3
        
          4
        
          5
        
          6
        
          7
        
          8
        
          9
        
          10
        
          11
        
          12
        
          13
        
          14
        
          15
        
          16
        
          17
        
          18
        
          19
        
          20
        
          21
        
         | 
        
          21 chunks | 
          +41 lines, -0 lines | 
        
        
          
            0 comments
            
            
          
         | 
        
          
            Download
          
         | 
       
    
      
          | 
        M | 
        
          
            src/IceInstX8632.cpp
          
         | 
        
          
            View
          
         | 
        
        
          1
        
          2
        
          3
        
          4
        
          5
        
          6
        
          7
        
          8
        
          9
        
          10
        
          11
        
          12
        
          13
        
          14
        
          15
        
          16
        
          17
        
          18
        
          19
        
          20
        
          21
        
         | 
        
          29 chunks | 
          +678 lines, -4 lines | 
        
        
          
            0 comments
            
            
          
         | 
        
          
            Download
          
         | 
       
    
      
          | 
        M | 
        
          
            src/IceInstX8632.def
          
         | 
        
          
            View
          
         | 
        
        
          1
        
          2
        
          3
        
          4
        
          5
        
          6
        
          7
        
         | 
        
          1 chunk | 
          +21 lines, -15 lines | 
        
        
          
            0 comments
            
            
          
         | 
        
          
            Download
          
         | 
       
    
      
          | 
        A | 
        
          
            src/IceMemoryRegion.h
          
         | 
        
          
            View
          
         | 
        
        
          1
        
          2
        
          3
        
          4
        
          5
        
          6
        
          7
        
          8
        
          9
        
          10
        
         | 
        
          1 chunk | 
          +100 lines, -0 lines | 
        
        
          
            0 comments
            
            
          
         | 
        
          
            Download
          
         | 
       
    
      
          | 
        M | 
        
          
            src/IceOperand.h
          
         | 
        
          
            View
          
         | 
        
        
          1
        
          2
        
          3
        
          4
        
          5
        
          6
        
          7
        
          8
        
          9
        
          10
        
          11
        
          12
        
          13
        
          14
        
          15
        
          16
        
          17
        
          18
        
          19
        
          20
        
          21
        
         | 
        
          2 chunks | 
          +12 lines, -4 lines | 
        
        
          
            0 comments
            
            
          
         | 
        
          
            Download
          
         | 
       
    
      
          | 
        M | 
        
          
            src/IceTargetLowering.h
          
         | 
        
          
            View
          
         | 
        
        
          1
        
          2
        
          3
        
          4
        
          5
        
          6
        
          7
        
          8
        
          9
        
          10
        
          11
        
          12
        
          13
        
          14
        
          15
        
          16
        
          17
        
          18
        
          19
        
          20
        
          21
        
         | 
        
          2 chunks | 
          +3 lines, -0 lines | 
        
        
          
            0 comments
            
            
          
         | 
        
          
            Download
          
         | 
       
    
      
          | 
        M | 
        
          
            src/IceTargetLowering.cpp
          
         | 
        
          
            View
          
         | 
        
        
          1
        
          2
        
          3
        
          4
        
          5
        
          6
        
          7
        
          8
        
          9
        
          10
        
          11
        
          12
        
          13
        
          14
        
          15
        
          16
        
          17
        
          18
        
          19
        
          20
        
          21
        
         | 
        
          2 chunks | 
          +10 lines, -0 lines | 
        
        
          
            0 comments
            
            
          
         | 
        
          
            Download
          
         | 
       
    
      
          | 
        M | 
        
          
            src/IceTargetLoweringX8632.h
          
         | 
        
          
            View
          
         | 
        
        
          1
        
          2
        
          3
        
          4
        
          5
        
          6
        
          7
        
          8
        
          9
        
          10
        
          11
        
          12
        
          13
        
          14
        
          15
        
          16
        
          17
        
          18
        
          19
        
          20
        
          21
        
         | 
        
          3 chunks | 
          +4 lines, -1 line | 
        
        
          
            0 comments
            
            
          
         | 
        
          
            Download
          
         | 
       
    
      
          | 
        M | 
        
          
            src/IceTargetLoweringX8632.cpp
          
         | 
        
          
            View
          
         | 
        
        
          1
        
          2
        
          3
        
          4
        
          5
        
          6
        
          7
        
          8
        
          9
        
          10
        
          11
        
          12
        
          13
        
          14
        
          15
        
          16
        
          17
        
          18
        
          19
        
          20
        
          21
        
         | 
        
          49 chunks | 
          +95 lines, -78 lines | 
        
        
          
            0 comments
            
            
          
         | 
        
          
            Download
          
         | 
       
    
      
          | 
        A | 
        
          
            src/IceUtils.h
          
         | 
        
          
            View
          
         | 
        
        
          1
        
          2
        
          3
        
          4
        
          5
        
          6
        
          7
        
          8
        
          9
        
          10
        
          11
        
          12
        
          13
        
          14
        
          15
        
          16
        
          17
        
          18
        
          19
        
         | 
        
          1 chunk | 
          +54 lines, -0 lines | 
        
        
          
            0 comments
            
            
          
         | 
        
          
            Download
          
         | 
       
    
      
          | 
        M | 
        
          
            src/PNaClTranslator.cpp
          
         | 
        
          
            View
          
         | 
        
        
          1
        
          2
        
          3
        
          4
        
          5
        
          6
        
          7
        
          8
        
          9
        
          10
        
          11
        
          12
        
          13
        
          14
        
          15
        
          16
        
          17
        
          18
        
          19
        
          20
        
          21
        
         | 
        
          1 chunk | 
          +5 lines, -2 lines | 
        
        
          
            0 comments
            
            
          
         | 
        
          
            Download
          
         | 
       
    
      
          | 
        A | 
        
          
            src/assembler.h
          
         | 
        
          
            View
          
         | 
        
        
          1
        
          2
        
          3
        
          4
        
          5
        
          6
        
          7
        
          8
        
          9
        
          10
        
          11
        
          12
        
          13
        
          14
        
          15
        
          16
        
          17
        
          18
        
          19
        
          20
        
          21
        
         | 
        
          1 chunk | 
          +222 lines, -0 lines | 
        
        
          
            0 comments
            
            
          
         | 
        
          
            Download
          
         | 
       
    
      
          | 
        A | 
        
          
            src/assembler.cpp
          
         | 
        
          
            View
          
         | 
        
        
          1
        
          2
        
          3
        
          4
        
          5
        
          6
        
          7
        
          8
        
          9
        
          10
        
          11
        
          12
        
          13
        
          14
        
          15
        
          16
        
          17
        
          18
        
          19
        
          20
        
          21
        
         | 
        
          1 chunk | 
          +129 lines, -0 lines | 
        
        
          
            0 comments
            
            
          
         | 
        
          
            Download
          
         | 
       
    
      
          | 
        A | 
        
          
            src/assembler_constants_ia32.h
          
         | 
        
          
            View
          
         | 
        
        
          1
        
          2
        
          3
        
          4
        
          5
        
          6
        
          7
        
          8
        
          9
        
          10
        
          11
        
          12
        
          13
        
          14
        
          15
        
          16
        
         | 
        
          1 chunk | 
          +105 lines, -0 lines | 
        
        
          
            0 comments
            
            
          
         | 
        
          
            Download
          
         | 
       
    
      
          | 
        A | 
        
          
            src/assembler_ia32.h
          
         | 
        
          
            View
          
         | 
        
        
          1
        
          2
        
          3
        
          4
        
          5
        
          6
        
          7
        
          8
        
          9
        
          10
        
          11
        
          12
        
          13
        
          14
        
          15
        
          16
        
          17
        
          18
        
          19
        
          20
        
          21
        
         | 
        
          1 chunk | 
          +739 lines, -0 lines | 
        
        
          
            0 comments
            
            
          
         | 
        
          
            Download
          
         | 
       
    
      
          | 
        A | 
        
          
            src/assembler_ia32.cpp
          
         | 
        
          
            View
          
         | 
        
        
          1
        
          2
        
          3
        
          4
        
          5
        
          6
        
          7
        
          8
        
          9
        
          10
        
          11
        
          12
        
          13
        
          14
        
          15
        
          16
        
          17
        
          18
        
          19
        
          20
        
          21
        
         | 
        
          1 chunk | 
          +2044 lines, -0 lines | 
        
        
          
            0 comments
            
            
          
         | 
        
          
            Download
          
         | 
       
    
      
          | 
        M | 
        
          
            src/llvm2ice.cpp
          
         | 
        
          
            View
          
         | 
        
        
          1
        
          2
        
          3
        
          4
        
          5
        
          6
        
          7
        
          8
        
          9
        
          10
        
          11
        
          12
        
          13
        
          14
        
          15
        
          16
        
          17
        
          18
        
          19
        
          20
        
          21
        
         | 
        
          2 chunks | 
          +5 lines, -0 lines | 
        
        
          
            0 comments
            
            
          
         | 
        
          
            Download
          
         | 
       
    
      
          | 
        A | 
        
          
            tests_lit/assembler/x86/immediate_encodings.ll
          
         | 
        
          
            View
          
         | 
        
        
          1
        
          2
        
          3
        
          4
        
          5
        
          6
        
          7
        
          8
        
          9
        
          10
        
          11
        
          12
        
          13
        
          14
        
          15
        
          16
        
          17
        
          18
        
         | 
        
          1 chunk | 
          +94 lines, -0 lines | 
        
        
          
            0 comments
            
            
          
         | 
        
          
            Download
          
         | 
       
    
      
          | 
        M | 
        
          
            tests_lit/llvm2ice_tests/align-spill-locations.ll
          
         | 
        
          
            View
          
         | 
        
        
          1
        
          2
        
          3
        
          4
        
          5
        
          6
        
         | 
        
          4 chunks | 
          +11 lines, -6 lines | 
        
        
          
            0 comments
            
            
          
         | 
        
          
            Download
          
         | 
       
    
      
          | 
        M | 
        
          
            tests_lit/llvm2ice_tests/ebp_args.ll
          
         | 
        
          
            View
          
         | 
        
        
          1
        
          2
        
          3
        
          4
        
          5
        
          6
        
         | 
        
          2 chunks | 
          +16 lines, -14 lines | 
        
        
          
            0 comments
            
            
          
         | 
        
          
            Download
          
         | 
       
    
      
          | 
        M | 
        
          
            tests_lit/llvm2ice_tests/fp.pnacl.ll
          
         | 
        
          
            View
          
         | 
        
        
          1
        
          2
        
          3
        
          4
        
          5
        
          6
        
          7
        
          8
        
          9
        
          10
        
          11
        
          12
        
          13
        
          14
        
          15
        
         | 
        
          2 chunks | 
          +19 lines, -0 lines | 
        
        
          
            0 comments
            
            
          
         | 
        
          
            Download
          
         | 
       
    
      
          | 
        M | 
        
          
            tests_lit/llvm2ice_tests/nop-insertion.ll
          
         | 
        
          
            View
          
         | 
        
        
          1
        
          2
        
          3
        
          4
        
          5
        
          6
        
          7
        
          8
        
          9
        
          10
        
         | 
        
          1 chunk | 
          +8 lines, -3 lines | 
        
        
          
            0 comments
            
            
          
         | 
        
          
            Download
          
         | 
       
    
      
          | 
        M | 
        
          
            tests_lit/llvm2ice_tests/test_i1.ll
          
         | 
        
          
            View
          
         | 
        
        
          1
        
          2
        
          3
        
          4
        
          5
        
          6
        
          7
        
          8
        
          9
        
          10
        
          11
        
          12
        
          13
        
          14
        
          15
        
         | 
        
          1 chunk | 
          +1 line, -1 line | 
        
        
          
            0 comments
            
            
          
         | 
        
          
            Download
          
         | 
       
    
   
  
  
 
  
   
  
    
  
  
  
    
    Total messages: 20 (12 generated)
     
  
  
       |