| Thread Tools | Search this thread |
|---|
srimks
| April 25, 2009 7:50 PM PDT Vectorization - pragma asm interpretation | ||||
Hello, Simply looking to interpret below things - (a) For multiple C++ package file, when I do vectorizations (calling of pragma's) within that file within section of code, I get starting and ending asm as - { 44d960: 55 push %rbp 44d961: 48 83 ec 50 sub $0x50,%rsp 44d965: 49 89 f0 mov %rsi,%r8 44d968: 4c 63 c9 movslq %ecx,%r9 ... ... 44dc84: 48 83 c4 50 add $0x50,%rsp 44dc88: 5d pop %rbp 44dc89: c3 retq 44dc8a: 90 nop 44dc8b: 48 8d 74 26 00 lea 0x0(%rsi),%rsi } (b) But the same code w/o using any pragma's call, the starting & ending asm are as - { 44d960: 48 83 ec 68 sub $0x68,%rsp 44d964: 49 89 f9 mov %rdi,%r9 44d967: 49 89 d0 mov %rdx,%r8 44d96a: 4c 63 d1 movslq %ecx,%r10 .. .. .. 44dc4e: 48 83 c4 68 add $0x68,%rsp 44dc52: c3 retq 44dc53: 90 nop 44dc54: 48 8d 74 26 00 lea 0x0(%rsi),%rsi 44dc59: 48 8d bf 00 00 00 00 lea 0x0(%rdi),%rdi } --- Query: (1) Could the difference between having PUSH/POP call with pragma vectorization calls and not having w/o it be differentiated? (2) W/o pragma calls, the asm in (b) has "lea" calls twice and also the during starting it has - sub, mov, mov & movslq than with pragma calls, why pragma calls bring such a difference? ~BR | |||||
|
|||||||||||||
|
|||||||||||||
|
|||||||||||||
| 8445 users have contributed to 31553 threads and 100400 posts to date. |
|---|
| In the past 24 hours, we have 10 new thread(s) 32 new posts(s), and 42 new user(s). In the past 3 days, the most popular thread for everyone has been Lost in MKL The most posts were made to TBB on linux segfaulting The post with the most views is Hi,if you were using imsl yo Please welcome our newest member nonamez |