summaryrefslogtreecommitdiff
path: root/src/arch/arm/v7/core.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/arch/arm/v7/core.c')
-rw-r--r--src/arch/arm/v7/core.c57
1 files changed, 56 insertions, 1 deletions
diff --git a/src/arch/arm/v7/core.c b/src/arch/arm/v7/core.c
index 299b9bd..ee43366 100644
--- a/src/arch/arm/v7/core.c
+++ b/src/arch/arm/v7/core.c
@@ -24,6 +24,17 @@
#include "core.h"
+#include "register.h"
+#include "operands/coproc.h"
+#include "operands/estate.h"
+#include "operands/limitation.h"
+#include "operands/maccess.h"
+#include "operands/offset.h"
+#include "operands/reglist.h"
+#include "operands/rotation.h"
+#include "operands/shift.h"
+
+
/******************************************************************************
* *
@@ -41,7 +52,31 @@ bool init_armv7_core(void)
{
bool result; /* Bilan à renvoyer */
- result = true;
+ result = init_armv7_register_sharing();
+
+ if (result)
+ result = init_armv7_coproc_operand_sharing();
+
+ if (result)
+ result = init_armv7_endian_operand_sharing();
+
+ if (result)
+ result = init_armv7_limitation_operand_sharing();
+
+ if (result)
+ result = init_armv7_maccess_operand_sharing();
+
+ if (result)
+ result = init_armv7_offset_operand_sharing();
+
+ if (result)
+ result = init_armv7_reglist_operand_sharing();
+
+ if (result)
+ result = init_armv7_rotation_operand_sharing();
+
+ if (result)
+ result = init_armv7_shift_operand_sharing();
return result;
@@ -62,6 +97,16 @@ bool init_armv7_core(void)
#ifdef DEBUG_DUMP_STATS
void dump_armv7_share_stats(void)
{
+ dump_armv7_register_share_stats();
+
+ dump_armv7_coproc_operand_share_stats();
+ dump_armv7_endian_operand_share_stats();
+ dump_armv7_limitation_operand_share_stats();
+ dump_armv7_maccess_operand_share_stats();
+ dump_armv7_offset_operand_share_stats();
+ dump_armv7_reglist_operand_share_stats();
+ dump_armv7_rotation_operand_share_stats();
+ dump_armv7_shift_operand_share_stats();
}
#endif
@@ -81,5 +126,15 @@ void dump_armv7_share_stats(void)
void exit_armv7_core(void)
{
+ exit_armv7_register_sharing();
+
+ exit_armv7_coproc_operand_sharing();
+ exit_armv7_endian_operand_sharing();
+ exit_armv7_limitation_operand_sharing();
+ exit_armv7_maccess_operand_sharing();
+ exit_armv7_offset_operand_sharing();
+ exit_armv7_reglist_operand_sharing();
+ exit_armv7_rotation_operand_sharing();
+ exit_armv7_shift_operand_sharing();
}