| 
    
      
  | 
  
 Chromium Code Reviews
        
  DescriptionTidy up SkNx_neon.
This takes advantage of the fact that all the compilers we use that
support NEON implement it with their own vector extensions.  This means
normal things like c = a + b work on the underlying vector types already.
Odd instructions like min or saturated add need to stay intrinsics.
Also, rearrange functions to a more consistent order.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2196773002
CQ_INCLUDE_TRYBOTS=master.client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot
Committed: https://skia.googlesource.com/skia/+/6ad22315eb6eacfcd35497cd118440a619d05b18
   
  Patch Set 1 #Patch Set 2 : more #Patch Set 3 : rebase #Messages
    Total messages: 19 (11 generated)
     
  
  
 Description was changed from ========== Tidy up SkNx_neon. This takes advantage of the fact that all the compilers we use that support NEON implement it with their own vector extensions. This means normal things like c = a + b work on the underlying vector types already. Odd instructions like min or saturated add need to stay intrinsics. BUG=skia: ========== to ========== Tidy up SkNx_neon. This takes advantage of the fact that all the compilers we use that support NEON implement it with their own vector extensions. This means normal things like c = a + b work on the underlying vector types already. Odd instructions like min or saturated add need to stay intrinsics. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2196773002 CQ_INCLUDE_TRYBOTS=master.client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot ========== 
 Description was changed from ========== Tidy up SkNx_neon. This takes advantage of the fact that all the compilers we use that support NEON implement it with their own vector extensions. This means normal things like c = a + b work on the underlying vector types already. Odd instructions like min or saturated add need to stay intrinsics. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2196773002 CQ_INCLUDE_TRYBOTS=master.client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot ========== to ========== Tidy up SkNx_neon. This takes advantage of the fact that all the compilers we use that support NEON implement it with their own vector extensions. This means normal things like c = a + b work on the underlying vector types already. Odd instructions like min or saturated add need to stay intrinsics. Also, rearrange functions to a more consistent order. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2196773002 CQ_INCLUDE_TRYBOTS=master.client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot ========== 
 The CQ bit was checked by mtklein@chromium.org to run a CQ dry run 
 Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or... 
 mtklein@chromium.org changed reviewers: + msarett@google.com 
 
 lgtm 
 The CQ bit was unchecked by mtklein@chromium.org 
 The CQ bit was checked by mtklein@chromium.org 
 CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or... 
 The CQ bit was unchecked by mtklein@chromium.org 
 The CQ bit was checked by mtklein@chromium.org 
 CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or... 
 
            
              
                Message was sent while issue was closed.
              
            
             
          
        Description was changed from ========== Tidy up SkNx_neon. This takes advantage of the fact that all the compilers we use that support NEON implement it with their own vector extensions. This means normal things like c = a + b work on the underlying vector types already. Odd instructions like min or saturated add need to stay intrinsics. Also, rearrange functions to a more consistent order. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2196773002 CQ_INCLUDE_TRYBOTS=master.client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot ========== to ========== Tidy up SkNx_neon. This takes advantage of the fact that all the compilers we use that support NEON implement it with their own vector extensions. This means normal things like c = a + b work on the underlying vector types already. Odd instructions like min or saturated add need to stay intrinsics. Also, rearrange functions to a more consistent order. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2196773002 CQ_INCLUDE_TRYBOTS=master.client.skia:Test-Ubuntu-GCC-GCE-CPU-AVX2-x86_64-Release-SKNX_NO_SIMD-Trybot Committed: https://skia.googlesource.com/skia/+/6ad22315eb6eacfcd35497cd118440a619d05b18 ========== 
 
            
              
                Message was sent while issue was closed.
              
            
             
          
        Committed patchset #3 (id:40001) as https://skia.googlesource.com/skia/+/6ad22315eb6eacfcd35497cd118440a619d05b18 
 
            
              
                Message was sent while issue was closed.
              
            
             
          
        A revert of this CL (patchset #3 id:40001) has been created in https://codereview.chromium.org/2196953002/ by mtklein@google.com. The reason for reverting is: https://luci-milo.appspot.com/swarming/task/3055149a25621b10 Not Nexus 5 specific. Reproduces on Pixel C with --gcc -t Debug -d arm_v7_neon. Not sure about other configs yet.. 
 
            
              
                Message was sent while issue was closed.
              
            
             
          
        mtklein@google.com changed reviewers: + mtklein@google.com 
 
            
              
                Message was sent while issue was closed.
              
            
             
          
        Problem does not reproduce with -t Debug -d arm_v7_neon --clang -t Debug -d arm64 --clang -t Debug -d arm64 --gcc -t Release_Developer -d arm_v7_neon --gcc does reproduce the problem, ruling out optimization level as the problem. The problem's an assert, so no point testing Release. 
 
            
              
                Message was sent while issue was closed.
              
            
             
          
        On 2016/07/30 21:48:13, mtklein wrote: > Problem does not reproduce with > -t Debug -d arm_v7_neon --clang > -t Debug -d arm64 --clang > -t Debug -d arm64 --gcc > > -t Release_Developer -d arm_v7_neon --gcc does reproduce the problem, ruling out > optimization level as the problem. > > The problem's an assert, so no point testing Release. Also looked like this triggered a perf regression. Up when landed, back down when reverted: https://perf.skia.org/#5393  | 
    
