From f9dbb051797a809ae407e9e752e1f3e673baa504 Mon Sep 17 00:00:00 2001 From: Doug Nazar Date: Sun, 25 Aug 2019 15:41:59 -0400 Subject: [PATCH] orc: Consolidate orc_program_has_float() --- orc/orcinternal.h | 1 + orc/orcprogram-altivec.c | 13 +------------ orc/orcprogram-mmx.c | 14 -------------- orc/orcprogram-sse.c | 14 -------------- orc/orcprogram.c | 12 ++++++++++++ 5 files changed, 14 insertions(+), 40 deletions(-) diff --git a/orc/orcinternal.h b/orc/orcinternal.h index 91de08a..cd778c3 100644 --- a/orc/orcinternal.h +++ b/orc/orcinternal.h @@ -35,6 +35,7 @@ extern int _orc_cpu_stepping; extern const char *_orc_cpu_name; void orc_compiler_emit_invariants (OrcCompiler *compiler); +int orc_program_has_float (OrcCompiler *compiler); #endif ORC_END_DECLS diff --git a/orc/orcprogram-altivec.c b/orc/orcprogram-altivec.c index 5f945f6..c3ab64d 100644 --- a/orc/orcprogram-altivec.c +++ b/orc/orcprogram-altivec.c @@ -10,6 +10,7 @@ #include #include #include +#include void orc_compiler_powerpc_register_rules (OrcTarget *target); @@ -174,18 +175,6 @@ powerpc_load_inner_constants (OrcCompiler *compiler) } } -static int -orc_program_has_float (OrcCompiler *compiler) -{ - int j; - for(j=0;jn_insns;j++){ - OrcInstruction *insn = compiler->insns + j; - OrcStaticOpcode *opcode = insn->opcode; - if (opcode->flags & ORC_STATIC_OPCODE_FLOAT) return TRUE; - } - return FALSE; -} - static void orc_compiler_powerpc_assemble (OrcCompiler *compiler) { diff --git a/orc/orcprogram-mmx.c b/orc/orcprogram-mmx.c index 80bd608..d3a03e9 100644 --- a/orc/orcprogram-mmx.c +++ b/orc/orcprogram-mmx.c @@ -739,20 +739,6 @@ orc_emit_split_2_regions (OrcCompiler *compiler) (int)ORC_STRUCT_OFFSET(OrcExecutor,counter3), compiler->exec_reg); } -#ifndef MMX -static int -orc_program_has_float (OrcCompiler *compiler) -{ - int j; - for(j=0;jn_insns;j++){ - OrcInstruction *insn = compiler->insns + j; - OrcStaticOpcode *opcode = insn->opcode; - if (opcode->flags & ORC_STATIC_OPCODE_FLOAT) return TRUE; - } - return FALSE; -} -#endif - #define LABEL_REGION1_SKIP 1 #define LABEL_INNER_LOOP_START 2 #define LABEL_REGION2_SKIP 3 diff --git a/orc/orcprogram-sse.c b/orc/orcprogram-sse.c index 7907f43..412891a 100644 --- a/orc/orcprogram-sse.c +++ b/orc/orcprogram-sse.c @@ -739,20 +739,6 @@ orc_emit_split_2_regions (OrcCompiler *compiler) (int)ORC_STRUCT_OFFSET(OrcExecutor,counter3), compiler->exec_reg); } -#ifndef MMX -static int -orc_program_has_float (OrcCompiler *compiler) -{ - int j; - for(j=0;jn_insns;j++){ - OrcInstruction *insn = compiler->insns + j; - OrcStaticOpcode *opcode = insn->opcode; - if (opcode->flags & ORC_STATIC_OPCODE_FLOAT) return TRUE; - } - return FALSE; -} -#endif - #define LABEL_REGION1_SKIP 1 #define LABEL_INNER_LOOP_START 2 #define LABEL_REGION2_SKIP 3 diff --git a/orc/orcprogram.c b/orc/orcprogram.c index c8e3d47..54f8684 100644 --- a/orc/orcprogram.c +++ b/orc/orcprogram.c @@ -8,6 +8,7 @@ #include #include +#include /** * SECTION:orcprogram @@ -1190,3 +1191,14 @@ orc_program_take_code (OrcProgram *program) return code; } +int +orc_program_has_float (OrcCompiler *compiler) +{ + int j; + for(j=0;jn_insns;j++){ + OrcInstruction *insn = compiler->insns + j; + OrcStaticOpcode *opcode = insn->opcode; + if (opcode->flags & ORC_STATIC_OPCODE_FLOAT) return TRUE; + } + return FALSE; +} -- 2.7.4