summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorWim Taymans <wim.taymans@collabora.co.uk>2009-09-23 17:16:04 +0200
committerColin Guthrie <cguthrie@mandriva.org>2009-09-25 18:26:35 +0100
commit33d8ca0178005146071548de98b6e79419789aaf (patch)
tree670cf89ba759520047eabdef585d8632ec00410f
parentd47547355cd25b009aa35fa6ebe70aaeb08e09ac (diff)
svolume: tweak constraints for 32 bits0.9.18-stable
Tweak the constraints a little so that register starved 32bit systems can select a stack variable for the channel paramter instead of reusing one of the registers we're using in the code.
-rw-r--r--src/pulsecore/svolume_mmx.c4
-rw-r--r--src/pulsecore/svolume_sse.c4
2 files changed, 4 insertions, 4 deletions
diff --git a/src/pulsecore/svolume_mmx.c b/src/pulsecore/svolume_mmx.c
index 62f3397e..1768eb50 100644
--- a/src/pulsecore/svolume_mmx.c
+++ b/src/pulsecore/svolume_mmx.c
@@ -152,7 +152,7 @@ pa_volume_s16ne_mmx (int16_t *samples, int32_t *volumes, unsigned channels, unsi
" emms \n\t"
: "+r" (samples), "+r" (volumes), "+r" (length), "=D" ((pa_reg_x86)channel), "=&r" (temp)
- : "r" ((pa_reg_x86)channels)
+ : "X" ((pa_reg_x86)channels)
: "cc"
);
}
@@ -228,7 +228,7 @@ pa_volume_s16re_mmx (int16_t *samples, int32_t *volumes, unsigned channels, unsi
" emms \n\t"
: "+r" (samples), "+r" (volumes), "+r" (length), "=D" ((pa_reg_x86)channel), "=&r" (temp)
- : "r" ((pa_reg_x86)channels)
+ : "X" ((pa_reg_x86)channels)
: "cc"
);
}
diff --git a/src/pulsecore/svolume_sse.c b/src/pulsecore/svolume_sse.c
index 5276bda4..ab9394fb 100644
--- a/src/pulsecore/svolume_sse.c
+++ b/src/pulsecore/svolume_sse.c
@@ -149,7 +149,7 @@ pa_volume_s16ne_sse2 (int16_t *samples, int32_t *volumes, unsigned channels, uns
"8: \n\t"
: "+r" (samples), "+r" (volumes), "+r" (length), "=D" (channel), "=&r" (temp)
- : "r" ((pa_reg_x86)channels)
+ : "X" ((pa_reg_x86)channels)
: "cc"
);
}
@@ -237,7 +237,7 @@ pa_volume_s16re_sse2 (int16_t *samples, int32_t *volumes, unsigned channels, uns
"8: \n\t"
: "+r" (samples), "+r" (volumes), "+r" (length), "=D" (channel), "=&r" (temp)
- : "r" ((pa_reg_x86)channels)
+ : "X" ((pa_reg_x86)channels)
: "cc"
);
}