Index: trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Front_end/Front_end/Prediction_unit/SelfTest/src/main.cpp
===================================================================
--- trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Front_end/Front_end/Prediction_unit/SelfTest/src/main.cpp	(revision 111)
+++ trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_Front_end/Front_end/Prediction_unit/SelfTest/src/main.cpp	(revision 146)
@@ -8,5 +8,5 @@
 #include "Behavioural/Core/Multi_Front_end/Front_end/Prediction_unit/SelfTest/include/test.h"
 
-#define NB_PARAMS (12+3*7)
+#define NB_PARAMS (12+3*8)
 
 void usage (int argc, char * argv[])
@@ -14,28 +14,29 @@
   err (_("<Usage> %s name_instance list_params.\n"),argv[0]);
   err (_("list_params is :\n"));
-  err (_(" * nb_context                                (uint32_t    )\n"));
-  err (_(" * nb_decod_unit                             (uint32_t    )\n"));
-  err (_(" * size_address                              (uint32_t    )\n"));
-  err (_(" * nb_instruction             [nb_context]   (uint32_t    )\n"));
-  err (_(" * nb_inst_decod              [nb_decod_unit](uint32_t    )\n"));
-  err (_(" * nb_inst_branch_predict                    (uint32_t    )\n"));
-  err (_(" * nb_inst_branch_decod                      (uint32_t    )\n"));
-  err (_(" * nb_inst_branch_update                     (uint32_t    )\n"));
-  err (_(" * nb_inst_branch_complete                   (uint32_t    )\n"));
-  err (_(" * btb_size_queue                            (uint32_t    )\n"));
-  err (_(" * btb_associativity                         (uint32_t    )\n"));
-  err (_(" * btb_size_counter                          (uint32_t    )\n"));
-  err (_(" * btb_victim_scheme                         (Tvictim_t   )\n"));
-  err (_(" * dir_predictor_scheme                      (Tpredictor_t)\n"));
-  err (_(" * dir_have_bht               [3]            (bool        )\n"));
-  err (_(" * dir_bht_size_shifter       [3]            (uint32_t    )\n"));
-  err (_(" * dir_bht_nb_shifter         [3]            (uint32_t    )\n"));
-  err (_(" * dir_have_pht               [3]            (bool        )\n"));
-  err (_(" * dir_pht_size_counter       [3]            (uint32_t    )\n"));
-  err (_(" * dir_pht_nb_counter         [3]            (uint32_t    )\n"));
-  err (_(" * dir_pht_size_address_share [3]            (uint32_t    )\n"));
-  err (_(" * ras_size_queue             [nb_context]   (uint32_t    )\n"));
-  err (_(" * upt_size_queue             [nb_context]   (uint32_t    )\n"));
-  err (_(" * ufpt_size_queue            [nb_context]   (uint32_t    )\n"));
+  err (_(" * nb_context                                (uint32_t     )\n"));
+  err (_(" * nb_decod_unit                             (uint32_t     )\n"));
+  err (_(" * size_address                              (uint32_t     )\n"));
+  err (_(" * nb_instruction             [nb_context]   (uint32_t     )\n"));
+  err (_(" * nb_inst_decod              [nb_decod_unit](uint32_t     )\n"));
+  err (_(" * nb_inst_branch_predict                    (uint32_t     )\n"));
+  err (_(" * nb_inst_branch_decod                      (uint32_t     )\n"));
+  err (_(" * nb_inst_branch_update                     (uint32_t     )\n"));
+  err (_(" * nb_inst_branch_complete                   (uint32_t     )\n"));
+  err (_(" * btb_size_queue                            (uint32_t     )\n"));
+  err (_(" * btb_associativity                         (uint32_t     )\n"));
+  err (_(" * btb_size_counter                          (uint32_t     )\n"));
+  err (_(" * btb_victim_scheme                         (Tvictim_t    )\n"));
+  err (_(" * dir_predictor_scheme                      (Tpredictor_t )\n"));
+  err (_(" * dir_have_bht               [3]            (bool         )\n"));
+  err (_(" * dir_bht_size_shifter       [3]            (uint32_t     )\n"));
+  err (_(" * dir_bht_nb_shifter         [3]            (uint32_t     )\n"));
+  err (_(" * dir_have_pht               [3]            (bool         )\n"));
+  err (_(" * dir_pht_size_counter       [3]            (uint32_t     )\n"));
+  err (_(" * dir_pht_nb_counter         [3]            (uint32_t     )\n"));
+  err (_(" * dir_pht_size_address_share [3]            (uint32_t     )\n"));
+  err (_(" * dir_pht_scheme             [3]            (Tpht_scheme_t)\n"));
+  err (_(" * ras_size_queue             [nb_context]   (uint32_t     )\n"));
+  err (_(" * upt_size_queue             [nb_context]   (uint32_t     )\n"));
+  err (_(" * ufpt_size_queue            [nb_context]   (uint32_t     )\n"));
 
   exit (1);
@@ -97,4 +98,7 @@
   for (uint32_t i=0; i<3; i++)
     _dir_pht_size_address_share [i]            = fromString<uint32_t    >(argv[x++]);
+  Tpht_scheme_t _dir_pht_scheme             [3];
+  for (uint32_t i=0; i<3; i++)
+    _dir_pht_scheme [i]                        = fromString<Tpht_scheme_t>(argv[x++]);
   uint32_t *   _ras_size_queue                 = new uint32_t    [_nb_context];
   for (uint32_t i=0; i<_nb_context; i++)
@@ -137,4 +141,5 @@
 	 _dir_pht_nb_counter        ,
 	 _dir_pht_size_address_share,
+	 _dir_pht_scheme            ,
 	 _ras_size_queue            ,
 	 _upt_size_queue            ,
