| 
        
       | 
      
        
  
  [turbofan] Add backend support for float32 operations.
This adds the basics necessary to support float32 operations in TurboFan.
The actual functionality required to detect safe float32 operations will
be added based on this later. Therefore this does not affect production
code except for some cleanup/refactoring.
In detail, this patchset contains the following features:
- Add support for float32 operations to arm, arm64, ia32 and x64
  backends.
- Add float32 machine operators.
- Add support for float32 constants to simplified lowering.
- Handle float32 representation for phis in simplified lowering.
In addition, contains the following (related) cleanups:
- Fix/unify naming of backend instructions.
- Use AVX comparisons when available.
- Extend ArchOpcodeField to 9 bits (required for arm64).
- Refactor some code duplication in instruction selectors.
BUG= v8:3589
LOG=n
 R=dcarney@chromium.org
Committed:  https://crrev.com/8dad78cdbd21c2cd02d6e0645313bd4b9983c78e
Cr-Commit-Position: refs/heads/master@{#27509}
    
  
  
  
  
   
  
  
  
    
      Total comments: 1
      
     
  
  
    
  
  
    
       | 
      Unified diffs | 
      Side-by-side diffs | 
      Delta from patch set | 
      Stats (+2893 lines, -657 lines) | 
      Patch | 
     
    
      
          | 
        M | 
        
          
            src/arm/assembler-arm.h
          
         | 
        
          
            View
          
         | 
        
        
         | 
        
          1 chunk | 
          +24 lines, -3 lines | 
        
        
          
            0 comments
            
            
          
         | 
        
          
            Download
          
         | 
       
    
      
          | 
        M | 
        
          
            src/arm/assembler-arm.cc
          
         | 
        
          
            View
          
         | 
        
        
         | 
        
          11 chunks | 
          +189 lines, -15 lines | 
        
        
          
            0 comments
            
            
          
         | 
        
          
            Download
          
         | 
       
    
      
          | 
        M | 
        
          
            src/arm/disasm-arm.cc
          
         | 
        
          
            View
          
         | 
        
        
         | 
        
          6 chunks | 
          +45 lines, -12 lines | 
        
        
          
            0 comments
            
            
          
         | 
        
          
            Download
          
         | 
       
    
      
          | 
        M | 
        
          
            src/arm/macro-assembler-arm.h
          
         | 
        
          
            View
          
         | 
        
        
         | 
        
          2 chunks | 
          +15 lines, -0 lines | 
        
        
          
            0 comments
            
            
          
         | 
        
          
            Download
          
         | 
       
    
      
          | 
        M | 
        
          
            src/arm/macro-assembler-arm.cc
          
         | 
        
          
            View
          
         | 
        
        
         | 
        
          3 chunks | 
          +35 lines, -0 lines | 
        
        
          
            0 comments
            
            
          
         | 
        
          
            Download
          
         | 
       
    
      
          | 
        M | 
        
          
            src/arm/simulator-arm.h
          
         | 
        
          
            View
          
         | 
        
        
         | 
        
          1 chunk | 
          +2 lines, -0 lines | 
        
        
          
            0 comments
            
            
          
         | 
        
          
            Download
          
         | 
       
    
      
          | 
        M | 
        
          
            src/arm/simulator-arm.cc
          
         | 
        
          
            View
          
         | 
        
        
         | 
        
          8 chunks | 
          +182 lines, -71 lines | 
        
        
          
            0 comments
            
            
          
         | 
        
          
            Download
          
         | 
       
    
      
          | 
        M | 
        
          
            src/compiler/arm/code-generator-arm.cc
          
         | 
        
          
            View
          
         | 
        
        
         | 
        
          3 chunks | 
          +51 lines, -3 lines | 
        
        
          
            0 comments
            
            
          
         | 
        
          
            Download
          
         | 
       
    
      
          | 
        M | 
        
          
            src/compiler/arm/instruction-codes-arm.h
          
         | 
        
          
            View
          
         | 
        
        
         | 
        
          1 chunk | 
          +9 lines, -0 lines | 
        
        
          
            0 comments
            
            
          
         | 
        
          
            Download
          
         | 
       
    
      
          | 
        M | 
        
          
            src/compiler/arm/instruction-selector-arm.cc
          
         | 
        
          
            View
          
         | 
        
        
         | 
        
          14 chunks | 
          +179 lines, -98 lines | 
        
        
          
            0 comments
            
            
          
         | 
        
          
            Download
          
         | 
       
    
      
          | 
        M | 
        
          
            src/compiler/arm64/code-generator-arm64.cc
          
         | 
        
          
            View
          
         | 
        
        
         | 
        
          3 chunks | 
          +45 lines, -8 lines | 
        
        
          
            0 comments
            
            
          
         | 
        
          
            Download
          
         | 
       
    
      
          | 
        M | 
        
          
            src/compiler/arm64/instruction-codes-arm64.h
          
         | 
        
          
            View
          
         | 
        
        
         | 
        
          2 chunks | 
          +10 lines, -2 lines | 
        
        
          
            0 comments
            
            
          
         | 
        
          
            Download
          
         | 
       
    
      
          | 
        M | 
        
          
            src/compiler/arm64/instruction-selector-arm64.cc
          
         | 
        
          
            View
          
         | 
        
        
         | 
        
          19 chunks | 
          +141 lines, -85 lines | 
        
        
          
            0 comments
            
            
          
         | 
        
          
            Download
          
         | 
       
    
      
          | 
        M | 
        
          
            src/compiler/ia32/code-generator-ia32.cc
          
         | 
        
          
            View
          
         | 
        
        
         | 
        
          4 chunks | 
          +63 lines, -3 lines | 
        
        
          
            0 comments
            
            
          
         | 
        
          
            Download
          
         | 
       
    
      
          | 
        M | 
        
          
            src/compiler/ia32/instruction-codes-ia32.h
          
         | 
        
          
            View
          
         | 
        
        
         | 
        
          3 chunks | 
          +16 lines, -2 lines | 
        
        
          
            0 comments
            
            
          
         | 
        
          
            Download
          
         | 
       
    
      
          | 
        M | 
        
          
            src/compiler/ia32/instruction-selector-ia32.cc
          
         | 
        
          
            View
          
         | 
        
        
         | 
        
          9 chunks | 
          +110 lines, -56 lines | 
        
        
          
            0 comments
            
            
          
         | 
        
          
            Download
          
         | 
       
    
      
          | 
        M | 
        
          
            src/compiler/instruction-codes.h
          
         | 
        
          
            View
          
         | 
        
        
         | 
        
          1 chunk | 
          +5 lines, -5 lines | 
        
        
          
            0 comments
            
            
          
         | 
        
          
            Download
          
         | 
       
    
      
          | 
        M | 
        
          
            src/compiler/instruction-selector.cc
          
         | 
        
          
            View
          
         | 
        
        
         | 
        
          1 chunk | 
          +20 lines, -0 lines | 
        
        
          
            0 comments
            
            
          
         | 
        
          
            Download
          
         | 
       
    
      
          | 
        M | 
        
          
            src/compiler/machine-operator.h
          
         | 
        
          
            View
          
         | 
        
        
         | 
        
          3 chunks | 
          +33 lines, -11 lines | 
        
        
          
            0 comments
            
            
          
         | 
        
          
            Download
          
         | 
       
    
      
          | 
        M | 
        
          
            src/compiler/machine-operator.cc
          
         | 
        
          
            View
          
         | 
        
        
         | 
        
          3 chunks | 
          +10 lines, -0 lines | 
        
        
          
            0 comments
            
            
          
         | 
        
          
            Download
          
         | 
       
    
      
          | 
        M | 
        
          
            src/compiler/node-matchers.h
          
         | 
        
          
            View
          
         | 
        
        
         | 
        
          1 chunk | 
          +1 line, -0 lines | 
        
        
          
            0 comments
            
            
          
         | 
        
          
            Download
          
         | 
       
    
      
          | 
        M | 
        
          
            src/compiler/opcodes.h
          
         | 
        
          
            View
          
         | 
        
        
         | 
        
          2 chunks | 
          +10 lines, -0 lines | 
        
        
          
            0 comments
            
            
          
         | 
        
          
            Download
          
         | 
       
    
      
          | 
        M | 
        
          
            src/compiler/raw-machine-assembler.h
          
         | 
        
          
            View
          
         | 
        
        
         | 
        
          2 chunks | 
          +31 lines, -0 lines | 
        
        
          
            0 comments
            
            
          
         | 
        
          
            Download
          
         | 
       
    
      
          | 
        M | 
        
          
            src/compiler/simplified-lowering.cc
          
         | 
        
          
            View
          
         | 
        
        
         | 
        
          2 chunks | 
          +10 lines, -5 lines | 
        
        
          
            0 comments
            
            
          
         | 
        
          
            Download
          
         | 
       
    
      
          | 
        M | 
        
          
            src/compiler/typer.cc
          
         | 
        
          
            View
          
         | 
        
        
         | 
        
          1 chunk | 
          +50 lines, -0 lines | 
        
        
          
            0 comments
            
            
          
         | 
        
          
            Download
          
         | 
       
    
      
          | 
        M | 
        
          
            src/compiler/verifier.cc
          
         | 
        
          
            View
          
         | 
        
        
         | 
        
          1 chunk | 
          +10 lines, -0 lines | 
        
        
          
            0 comments
            
            
          
         | 
        
          
            Download
          
         | 
       
    
      
          | 
        M | 
        
          
            src/compiler/x64/code-generator-x64.cc
          
         | 
        
          
            View
          
         | 
        
        
         | 
        
          6 chunks | 
          +91 lines, -33 lines | 
        
        
          
            0 comments
            
            
          
         | 
        
          
            Download
          
         | 
       
    
      
          | 
        M | 
        
          
            src/compiler/x64/instruction-codes-x64.h
          
         | 
        
          
            View
          
         | 
        
        
         | 
        
          3 chunks | 
          +18 lines, -2 lines | 
        
        
          
            0 comments
            
            
          
         | 
        
          
            Download
          
         | 
       
    
      
          | 
        M | 
        
          
            src/compiler/x64/instruction-selector-x64.cc
          
         | 
        
          
            View
          
         | 
        
        
         | 
        
          9 chunks | 
          +103 lines, -49 lines | 
        
        
          
            0 comments
            
            
          
         | 
        
          
            Download
          
         | 
       
    
      
          | 
        M | 
        
          
            src/ia32/assembler-ia32.h
          
         | 
        
          
            View
          
         | 
        
        
         | 
        
          2 chunks | 
          +45 lines, -0 lines | 
        
        
          
            0 comments
            
            
          
         | 
        
          
            Download
          
         | 
       
    
      
          | 
        M | 
        
          
            src/ia32/assembler-ia32.cc
          
         | 
        
          
            View
          
         | 
        
        
         | 
        
          3 chunks | 
          +37 lines, -0 lines | 
        
        
          
            0 comments
            
            
          
         | 
        
          
            Download
          
         | 
       
    
      
          | 
        M | 
        
          
            src/ia32/disasm-ia32.cc
          
         | 
        
          
            View
          
         | 
        
        
         | 
        
          4 chunks | 
          +115 lines, -39 lines | 
        
        
          
            0 comments
            
            
          
         | 
        
          
            Download
          
         | 
       
    
      
          | 
        M | 
        
          
            src/x64/assembler-x64.h
          
         | 
        
          
            View
          
         | 
        
        
         | 
        
          4 chunks | 
          +56 lines, -5 lines | 
        
        
          
            0 comments
            
            
          
         | 
        
          
            Download
          
         | 
       
    
      
          | 
        M | 
        
          
            src/x64/assembler-x64.cc
          
         | 
        
          
            View
          
         | 
        
        
         | 
        
          5 chunks | 
          +156 lines, -40 lines | 
        
        
          
            0 comments
            
            
          
         | 
        
          
            Download
          
         | 
       
    
      
          | 
        M | 
        
          
            src/x64/disasm-x64.cc
          
         | 
        
          
            View
          
         | 
        
        
         | 
        
          6 chunks | 
          +76 lines, -44 lines | 
        
        
          
            0 comments
            
            
          
         | 
        
          
            Download
          
         | 
       
    
      
          | 
        M | 
        
          
            test/cctest/compiler/codegen-tester.h
          
         | 
        
          
            View
          
         | 
        
        
         | 
        
          3 chunks | 
          +20 lines, -1 line | 
        
        
          
            0 comments
            
            
          
         | 
        
          
            Download
          
         | 
       
    
      
          | 
        M | 
        
          
            test/cctest/compiler/test-run-machops.cc
          
         | 
        
          
            View
          
         | 
        
        
         | 
        
          11 chunks | 
          +196 lines, -4 lines | 
        
        
          
            0 comments
            
            
          
         | 
        
          
            Download
          
         | 
       
    
      
          | 
        M | 
        
          
            test/cctest/test-assembler-x64.cc
          
         | 
        
          
            View
          
         | 
        
        
         | 
        
          1 chunk | 
          +223 lines, -0 lines | 
        
        
          
            0 comments
            
            
          
         | 
        
          
            Download
          
         | 
       
    
      
          | 
        M | 
        
          
            test/cctest/test-disasm-arm.cc
          
         | 
        
          
            View
          
         | 
        
        
         | 
        
          3 chunks | 
          +52 lines, -0 lines | 
        
        
          
            1 comment
            
            
          
         | 
        
          
            Download
          
         | 
       
    
      
          | 
        M | 
        
          
            test/cctest/test-disasm-ia32.cc
          
         | 
        
          
            View
          
         | 
        
        
         | 
        
          2 chunks | 
          +19 lines, -0 lines | 
        
        
          
            0 comments
            
            
          
         | 
        
          
            Download
          
         | 
       
    
      
          | 
        M | 
        
          
            test/cctest/test-disasm-x64.cc
          
         | 
        
          
            View
          
         | 
        
        
         | 
        
          3 chunks | 
          +21 lines, -0 lines | 
        
        
          
            0 comments
            
            
          
         | 
        
          
            Download
          
         | 
       
    
      
          | 
        M | 
        
          
            test/unittests/compiler/arm/instruction-selector-arm-unittest.cc
          
         | 
        
          
            View
          
         | 
        
        
         | 
        
          11 chunks | 
          +357 lines, -54 lines | 
        
        
          
            0 comments
            
            
          
         | 
        
          
            Download
          
         | 
       
    
      
          | 
        M | 
        
          
            test/unittests/compiler/ia32/instruction-selector-ia32-unittest.cc
          
         | 
        
          
            View
          
         | 
        
        
         | 
        
          2 chunks | 
          +2 lines, -2 lines | 
        
        
          
            0 comments
            
            
          
         | 
        
          
            Download
          
         | 
       
    
      
          | 
        M | 
        
          
            test/unittests/compiler/machine-operator-unittest.cc
          
         | 
        
          
            View
          
         | 
        
        
          1
        
         | 
        
          1 chunk | 
          +8 lines, -3 lines | 
        
        
          
            0 comments
            
            
          
         | 
        
          
            Download
          
         | 
       
    
      
          | 
        M | 
        
          
            test/unittests/compiler/x64/instruction-selector-x64-unittest.cc
          
         | 
        
          
            View
          
         | 
        
        
         | 
        
          2 chunks | 
          +2 lines, -2 lines | 
        
        
          
            0 comments
            
            
          
         | 
        
          
            Download
          
         | 
       
    
   
  
  
 
  
   
  
    
  
  
  
    
    Total messages: 9 (2 generated)
     
  
  
       |