Comment 68 for bug 1711337

Revision history for this message
Chituc Georgian (dianaxxyyzz) wrote :

I disasm the SkJumper_generated.o generated by clang : objdump -d SkJumper_generated.o

00000318 <_sk_xor__vfp4>:
     318: f2c70f10 vmov.f32 d16, #1 ; 0x3f800000
     31c: e4913004 ldr r3, [r1], #4
     320: f2603d83 vsub.f32 d19, d16, d3
     324: f2604d87 vsub.f32 d20, d16, d7
     328: f3430d94 vmul.f32 d16, d19, d4
     32c: f3431d95 vmul.f32 d17, d19, d5
     330: f3432d96 vmul.f32 d18, d19, d6
     334: f3433d97 vmul.f32 d19, d19, d7
     338: f2440c90 vfma.f32 d16, d20, d0
     33c: f2441c91 vfma.f32 d17, d20, d1
     340: f2442c92 vfma.f32 d18, d20, d2
     344: f2443c93 vfma.f32 d19, d20, d3
     348: f22001b0 vorr d0, d16, d16
     34c: f22111b1 vorr d1, d17, d17
     350: f22221b2 vorr d2, d18, d18
     354: f22331b3 vorr d3, d19, d19
     358: e12fff13 bx r3

And orriginal SkJumper_generated.S have
HIDDEN _sk_xor__vfp4
.globl _sk_xor__vfp4
_sk_xor__vfp4:
  .long 0xf2c70f10 // vmov.f32 d16, #1
  .long 0xe4913004 // ldr r3, [r1], #4
  .long 0xf2603d83 // vsub.f32 d19, d16, d3
  .long 0xf2604d87 // vsub.f32 d20, d16, d7
  .long 0xf3430d94 // vmul.f32 d16, d19, d4
  .long 0xf3431d95 // vmul.f32 d17, d19, d5
  .long 0xf3432d96 // vmul.f32 d18, d19, d6
  .long 0xf3433d97 // vmul.f32 d19, d19, d7
  .long 0xf2440c90 // vfma.f32 d16, d20, d0
  .long 0xf2441c91 // vfma.f32 d17, d20, d1
  .long 0xf2442c92 // vfma.f32 d18, d20, d2
  .long 0xf2443c93 // vfma.f32 d19, d20, d3
  .long 0xf22001b0 // vorr d0, d16, d16
  .long 0xf22111b1 // vorr d1, d17, d17
  .long 0xf22221b2 // vorr d2, d18, d18
  .long 0xf22331b3 // vorr d3, d19, d19
  .long 0xe12fff13 // bx r3

So it looks the same .I do not have one SkJumper_generated.o build by gcc to compare it with .
Somebody have one ?