@@ -142,7 +142,9 @@ namespace lsp
142142 : __IF_32 (
143143 [ptr_re] " =&r" (ptr_re), [ptr_im] " =&r" (ptr_im),
144144 )
145- [count] __ASM_ARG_RW (count), [off] " =&r" (off)
145+ __IF_32 ([count] " +g" (count),)
146+ __IF_64 ([count] " +r" (count),)
147+ [off] " =&r" (off)
146148 : __IF_32 (
147149 [dst_re] " g" (dst_re), [dst_im] " g" (dst_im),
148150 [src1_re] " g" (src1_re), [src1_im] " g" (src1_im),
@@ -168,7 +170,9 @@ namespace lsp
168170 : __IF_32 (
169171 [ptr_re] " =&r" (ptr_re), [ptr_im] " =&r" (ptr_im),
170172 )
171- [count] __ASM_ARG_RW (count), [off] " =&r" (off)
173+ __IF_32 ([count] " +g" (count),)
174+ __IF_64 ([count] " +r" (count),)
175+ [off] " =&r" (off)
172176 : __IF_32 (
173177 [dst_re] " g" (dst_re), [dst_im] " g" (dst_im),
174178 [src1_re] " g" (src1_re), [src1_im] " g" (src1_im),
@@ -259,7 +263,9 @@ namespace lsp
259263 ARCH_X86_ASM
260264 (
261265 COMPLEX_MUL2_CORE (" dst" , " src" , FMA_OFF)
262- : [count] __ASM_ARG_RW (count), [off] " =&r" (off)
266+ : __IF_32 ([count] " +g" (count),)
267+ __IF_64 ([count] " +r" (count),)
268+ [off] " =&r" (off)
263269 : [dst_re] " r" (dst_re), [dst_im] " r" (dst_im),
264270 [src_re] " r" (src_re), [src_im] " r" (src_im)
265271 : " cc" , " memory" ,
@@ -274,7 +280,9 @@ namespace lsp
274280 ARCH_X86_ASM
275281 (
276282 COMPLEX_MUL2_CORE (" dst" , " src" , FMA_ON)
277- : [count] __ASM_ARG_RW (count), [off] " =&r" (off)
283+ : __IF_32 ([count] " +g" (count),)
284+ __IF_64 ([count] " +r" (count),)
285+ [off] " =&r" (off)
278286 : [dst_re] " r" (dst_re), [dst_im] " r" (dst_im),
279287 [src_re] " r" (src_re), [src_im] " r" (src_im)
280288 : " cc" , " memory" ,
@@ -507,7 +515,9 @@ namespace lsp
507515 : __IF_32 (
508516 [ptr_re] " =&r" (ptr_re), [ptr_im] " =&r" (ptr_im),
509517 )
510- [count] __ASM_ARG_RW (count), [off] " =&r" (off)
518+ __IF_32 ([count] " +g" (count),)
519+ __IF_64 ([count] " +r" (count),)
520+ [off] " =&r" (off)
511521 : __IF_32 (
512522 [dst_re] " g" (dst_re), [dst_im] " g" (dst_im),
513523 [src1_re] " g" (src1_re), [src1_im] " g" (src1_im),
@@ -537,7 +547,9 @@ namespace lsp
537547 : __IF_32 (
538548 [ptr_re] " =&r" (ptr_re), [ptr_im] " =&r" (ptr_im),
539549 )
540- [count] __ASM_ARG_RW (count), [off] " =&r" (off)
550+ __IF_32 ([count] " +g" (count),)
551+ __IF_64 ([count] " +r" (count),)
552+ [off] " =&r" (off)
541553 : __IF_32 (
542554 [dst_re] " g" (dst_re), [dst_im] " g" (dst_im),
543555 [src1_re] " g" (src1_re), [src1_im] " g" (src1_im),
@@ -653,7 +665,9 @@ namespace lsp
653665 ARCH_X86_ASM
654666 (
655667 COMPLEX_DIV2_CORE (" dst" , " dst" , " src" , FMA_OFF)
656- : [count] __ASM_ARG_RW (count), [off] " =&r" (off)
668+ : __IF_32 ([count] " +g" (count),)
669+ __IF_64 ([count] " +r" (count),)
670+ [off] " =&r" (off)
657671 : [dst_re] " r" (dst_re), [dst_im] " r" (dst_im),
658672 [src_re] " r" (src_re), [src_im] " r" (src_im),
659673 [CC] " m" (complex_div_const)
@@ -669,7 +683,9 @@ namespace lsp
669683 ARCH_X86_ASM
670684 (
671685 COMPLEX_DIV2_CORE (" dst" , " dst" , " src" , FMA_ON)
672- : [count] __ASM_ARG_RW (count), [off] " =&r" (off)
686+ : __IF_32 ([count] " +g" (count),)
687+ __IF_64 ([count] " +r" (count),)
688+ [off] " =&r" (off)
673689 : [dst_re] " r" (dst_re), [dst_im] " r" (dst_im),
674690 [src_re] " r" (src_re), [src_im] " r" (src_im),
675691 [CC] " m" (complex_div_const)
@@ -685,7 +701,9 @@ namespace lsp
685701 ARCH_X86_ASM
686702 (
687703 COMPLEX_DIV2_CORE (" dst" , " src" , " dst" , FMA_OFF)
688- : [count] __ASM_ARG_RW (count), [off] " =&r" (off)
704+ : __IF_32 ([count] " +g" (count),)
705+ __IF_64 ([count] " +r" (count),)
706+ [off] " =&r" (off)
689707 : [dst_re] " r" (dst_re), [dst_im] " r" (dst_im),
690708 [src_re] " r" (src_re), [src_im] " r" (src_im),
691709 [CC] " m" (complex_div_const)
@@ -701,7 +719,9 @@ namespace lsp
701719 ARCH_X86_ASM
702720 (
703721 COMPLEX_DIV2_CORE (" dst" , " src" , " dst" , FMA_ON)
704- : [count] __ASM_ARG_RW (count), [off] " =&r" (off)
722+ : __IF_32 ([count] " +g" (count),)
723+ __IF_64 ([count] " +r" (count),)
724+ [off] " =&r" (off)
705725 : [dst_re] " r" (dst_re), [dst_im] " r" (dst_im),
706726 [src_re] " r" (src_re), [src_im] " r" (src_im),
707727 [CC] " m" (complex_div_const)
@@ -847,7 +867,9 @@ namespace lsp
847867 ARCH_X86_ASM
848868 (
849869 COMPLEX_RCP_CORE (" dst" , " src" , FMA_OFF)
850- : [count] __ASM_ARG_RW (count), [off] " =&r" (off)
870+ : __IF_32 ([count] " +g" (count),)
871+ __IF_64 ([count] " +r" (count),)
872+ [off] " =&r" (off)
851873 : [dst_re] " r" (dst_re), [dst_im] " r" (dst_im),
852874 [src_re] " r" (src_re), [src_im] " r" (src_im),
853875 [CC] " m" (complex_div_const)
@@ -863,7 +885,9 @@ namespace lsp
863885 ARCH_X86_ASM
864886 (
865887 COMPLEX_RCP_CORE (" dst" , " src" , FMA_ON)
866- : [count] __ASM_ARG_RW (count), [off] " =&r" (off)
888+ : __IF_32 ([count] " +g" (count),)
889+ __IF_64 ([count] " +r" (count),)
890+ [off] " =&r" (off)
867891 : [dst_re] " r" (dst_re), [dst_im] " r" (dst_im),
868892 [src_re] " r" (src_re), [src_im] " r" (src_im),
869893 [CC] " m" (complex_div_const)
0 commit comments