- 
                Notifications
    You must be signed in to change notification settings 
- Fork 5.2k
[RISC-V] Introduce Zbs #115335
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
          
     Open
      
      
            tomeksowi
  wants to merge
  59
  commits into
  dotnet:main
  
    
      
        
          
  
    
      Choose a base branch
      
     
    
      
        
      
      
        
          
          
        
        
          
            
              
              
              
  
           
        
        
          
            
              
              
           
        
       
     
  
        
          
            
          
            
          
        
       
    
      
from
tomeksowi:zbs
  
      
      
   
  
    
  
  
  
 
  
      
    base: main
Could not load branches
            
              
  
    Branch not found: {{ refName }}
  
            
                
      Loading
              
            Could not load tags
            
            
              Nothing to show
            
              
  
            
                
      Loading
              
            Are you sure you want to change the base?
            Some commits from the old base branch may be removed from the timeline,
            and old review comments may become outdated.
          
          
  
     Open
                    [RISC-V] Introduce Zbs #115335
Changes from all commits
      Commits
    
    
            Show all changes
          
          
            59 commits
          
        
        Select commit
          Hold shift + click to select a range
      
      ca72510
              
                Detect Zbs
              
              
                tomeksowi 96762df
              
                Emitter
              
              
                tomeksowi 53d04b3
              
                Test
              
              
                tomeksowi 2eb54ac
              
                bseti, binvi
              
              
                tomeksowi d66c4ef
              
                Fix IntrinsicConstants Zbs flag
              
              
                tomeksowi 8bf36ca
              
                Remove brace indent in JITEEVersionIdentifier
              
              
                tomeksowi 90aa3ee
              
                Fix test
              
              
                tomeksowi 2c35e03
              
                binvi
              
              
                tomeksowi 7a4fd78
              
                Simplify ExtractShift test
              
              
                tomeksowi 4c3a319
              
                Simple bexti lowering
              
              
                tomeksowi 10e542f
              
                Revert "Remove brace indent in JITEEVersionIdentifier"
              
              
                tomeksowi 2ea339b
              
                remove debug log
              
              
                tomeksowi 6455785
              
                Make GT_BIT_EXTRACT TYP_INT as it is 0 or 1
              
              
                tomeksowi 5fa51b2
              
                Lower to bexti also for log2 < 11
              
              
                tomeksowi 81d70a5
              
                Bit extract patterns where the argument is shifted right by constant
              
              
                tomeksowi 8056db9
              
                bset, bclr
              
              
                tomeksowi 6ff88fb
              
                Merge branch 'main' into zbs
              
              
                tomeksowi e0ca030
              
                Merge branch 'main' into zbs
              
              
                tomeksowi 3e8fb2f
              
                bclr
              
              
                tomeksowi e6555f0
              
                bext
              
              
                tomeksowi 4dbd2d7
              
                Lower a & (1 << b) != 0 to bext
              
              
                tomeksowi 12a163a
              
                Fix ClearNeg
              
              
                tomeksowi e246937
              
                Simplify assigning shamt in bset, bclr, binv
              
              
                tomeksowi 282f679
              
                Wrap shift amount in bset/binv/bclr
              
              
                tomeksowi 49e731f
              
                Prevent bit index overflow in bexti
              
              
                tomeksowi fc387d3
              
                Don't add log2 to variable bit index in bext because it may exceed 32…
              
              
                tomeksowi dee3557
              
                Fix assertion
              
              
                tomeksowi aca58ec
              
                Fix bext shift amount wrapping to 32 bits
              
              
                tomeksowi 701f346
              
                Fix right shift so the bool value is not sign-extended
              
              
                tomeksowi 102edd8
              
                Pull (a & bit) == bit => (a & bit) != 0 transformation out of Zbs block
              
              
                tomeksowi 9385a83
              
                Pull (a & bit) != 0 => (a >> log2(bit)) & 1 out of Zbs lowering
              
              
                tomeksowi 2407778
              
                Don't emit bexti 0 because andi 1 can do
              
              
                tomeksowi ced90c7
              
                Pull transformation a & (1 << N) => (a >> N) & 1 out of Zbs
              
              
                tomeksowi b0c8882
              
                Insert wrapping shamt to 5 bits in a single place
              
              
                tomeksowi bd77263
              
                Clean up constant bit branch
              
              
                tomeksowi 8e1e1c6
              
                Don't emit bext for 32-bit types because it needs andi 31 to wrap the…
              
              
                tomeksowi fb5375e
              
                Expand (a & C) == C transformation to any constant, block (a & bit) !…
              
              
                tomeksowi 6e21193
              
                Don't change the sign bit with bseti/bclri/binvi as it affects sign e…
              
              
                tomeksowi 08c7bff
              
                Merge branch 'main' into zbs
              
              
                tomeksowi 9f974c7
              
                Fix (a & bit) == bit transformation
              
              
                tomeksowi 781ea58
              
                Fix maxBitIndex assertion
              
              
                tomeksowi ce82ba3
              
                Merge branch 'main' into zbs
              
              
                tomeksowi 2d81f1f
              
                Merge branch 'main' into zbs
              
              
                tomeksowi a1b3e7b
              
                Merge branch 'main' into zbs
              
              
                tomeksowi c89c962
              
                Merge branch 'main' into zbs
              
              
                tomeksowi 8f2330d
              
                Merge branch 'main' into zbs
              
              
                tomeksowi 8edd7ba
              
                Merge branch 'main' into zbs
              
              
                tomeksowi 269b114
              
                Remove GT_BIT_EXTRACT
              
              
                tomeksowi 1041040
              
                Clear containment when lowered to negated bin ops
              
              
                tomeksowi f92829c
              
                Simplify lowering for variable bit index, fix corner cases when both …
              
              
                tomeksowi 4aead69
              
                Remove BIT_EXTRACT tests
              
              
                tomeksowi 848c99e
              
                Merge branch 'main' into zbs
              
              
                tomeksowi 332906e
              
                Merge branch 'main' into zbs
              
              
                tomeksowi 5a67429
              
                Merge branch 'main' into zbs
              
              
                tomeksowi 04294c4
              
                Merge branch 'main' into zbs
              
              
                tomeksowi 396de73
              
                Merge branch 'main' into zbs (resolve conflicts)
              
              
                tomeksowi 6f64593
              
                Merge branch 'main' into zbs (resolve conflicts)
              
              
                tomeksowi 090266d
              
                Merge branch 'main' into zbs (resolve conflicts)
              
              
                tomeksowi f1602cd
              
                Merge branch 'main' into zbs (resolve conflicts)
              
              
                tomeksowi File filter
Filter by extension
Conversations
          Failed to load comments.   
        
        
          
      Loading
        
  Jump to
        
          Jump to file
        
      
      
          Failed to load files.   
        
        
          
      Loading
        
  Diff view
Diff view
There are no files selected for viewing
  
    
      This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
      Learn more about bidirectional Unicode characters
    
  
  
    
              
  
    
      This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
      Learn more about bidirectional Unicode characters
    
  
  
    
              
  
    
      This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
      Learn more about bidirectional Unicode characters
    
  
  
    
              
  
    
      This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
      Learn more about bidirectional Unicode characters
    
  
  
    
              
  
    
      This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
      Learn more about bidirectional Unicode characters
    
  
  
    
              
  
    
      This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
      Learn more about bidirectional Unicode characters
    
  
  
    
              
  
    
      This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
      Learn more about bidirectional Unicode characters
    
  
  
    
              
  
    
      This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
      Learn more about bidirectional Unicode characters
    
  
  
    
              
  
    
      This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
      Learn more about bidirectional Unicode characters
    
  
  
    
              
      
      Oops, something went wrong.
        
    
  
      
      Oops, something went wrong.
        
    
  
  Add this suggestion to a batch that can be applied as a single commit.
  This suggestion is invalid because no changes were made to the code.
  Suggestions cannot be applied while the pull request is closed.
  Suggestions cannot be applied while viewing a subset of changes.
  Only one suggestion per line can be applied in a batch.
  Add this suggestion to a batch that can be applied as a single commit.
  Applying suggestions on deleted lines is not supported.
  You must change the existing code in this line in order to create a valid suggestion.
  Outdated suggestions cannot be applied.
  This suggestion has been applied or marked resolved.
  Suggestions cannot be applied from pending reviews.
  Suggestions cannot be applied on multi-line comments.
  Suggestions cannot be applied while the pull request is queued to merge.
  Suggestion cannot be applied right now. Please check back later.
  
    
  
    
Uh oh!
There was an error while loading. Please reload this page.