From 7af4a072cd198f7d10c3f9235d09a3922d8bb793 Mon Sep 17 00:00:00 2001 From: Matthias Braun Date: Thu, 13 Sep 2012 12:02:52 +0200 Subject: [PATCH] sparc: use 128bit long double even for softfloat We can't handle 128bit long double in softfloat yet, but most libraries are compiled like this. It's better to have the compiler fail than to produce code with a mismatching ABI in the default setting. --- ir/be/sparc/bearch_sparc.c | 13 ++++--------- 1 file changed, 4 insertions(+), 9 deletions(-) diff --git a/ir/be/sparc/bearch_sparc.c b/ir/be/sparc/bearch_sparc.c index a5c4eaf5f..46065967e 100644 --- a/ir/be/sparc/bearch_sparc.c +++ b/ir/be/sparc/bearch_sparc.c @@ -546,16 +546,11 @@ static const backend_params *sparc_get_backend_params(void) p.type_long_long = type_long_long; p.type_unsigned_long_long = type_unsigned_long_long; - if (sparc_isa_template.fpu_arch == SPARC_FPU_ARCH_SOFTFLOAT) { - p.mode_float_arithmetic = NULL; - p.type_long_double = NULL; - } else { - ir_type *type_long_double = new_type_primitive(mode_Q); + ir_type *type_long_double = new_type_primitive(mode_Q); - set_type_alignment_bytes(type_long_double, 8); - set_type_size_bytes(type_long_double, 16); - p.type_long_double = type_long_double; - } + set_type_alignment_bytes(type_long_double, 8); + set_type_size_bytes(type_long_double, 16); + p.type_long_double = type_long_double; return &p; } -- 2.20.1