Hi,
Is there any reason why HFmode is not there in arm_preferred_simd_mode?
NEON does support this.
Cross regression tested for arm-none-linux-gnueabi with qemu and no new
regressions.
Attached patch enables this. Is this OK for stage1.
Thanks,
Kugan
gcc/
+2014-02-14 Kugan Vivekanandarajah <[email protected]>
+
+ * config/arm/arm.c (arm_preferred_simd_mode): Add HFmode to
+ preferred modes.
diff --git a/gcc/config/arm/arm.c b/gcc/config/arm/arm.c
index b49f43e..bd90e85 100644
--- a/gcc/config/arm/arm.c
+++ b/gcc/config/arm/arm.c
@@ -28564,6 +28564,10 @@ arm_preferred_simd_mode (enum machine_mode mode)
if (TARGET_NEON)
switch (mode)
{
+ case HFmode:
+ if (arm_fp16_format)
+ return TARGET_NEON_VECTORIZE_DOUBLE ? V4HFmode : V8HFmode;
+ break;
case SFmode:
return TARGET_NEON_VECTORIZE_DOUBLE ? V2SFmode : V4SFmode;
case SImode: