GCC 8: adding, thru a plugin, an analyzing RTL pass after pro_and_epilogue issue with its reference_pass_name

Basile Starynkevitch basile@starynkevitch.net
Thu Apr 11 07:55:00 GMT 2019


On 4/10/19 8:44 PM, David Malcolm wrote:
> On Wed, 2019-04-10 at 17:53 +0200, Basile Starynkevitch wrote:


I don't want to pollute the mailing list archive. My previous email is 
on https://gcc.gnu.org/ml/gcc/2019-04/msg00133.html so please refer to 
it. And that previous email mentions 
http://starynkevitch.net/Basile/chariotdemo-2019-Apr-10-5414f7e3a173.tar.bz2 
which is my self-contained example code.


Thanks for your help. I finally found my bug. It was my fault. I 
incorrectly coded:


const pass_data pass_data_chariot_framesize =
{
   GIMPLE_PASS, /* type */ ///@@@@@@@@@@@@ WRONG should be RTL_PASS
   "chariot_framesize", /* name */
   OPTGROUP_NONE, /* optinfo_flags */
   TV_NONE, /* tv_id */
   PROP_ssa, /* properties_required */
   0, /* properties_provided */
   0, /* properties_destroyed */
   0, /* todo_flags_start */
   0, /* todo_flags_finish */
};

and then I inserted such a wrong pass (it is not possible to insert a GIMPLE_PASS after an existing RTL_PASS).

However, the result error message is very cryptic:

cc1: fatal error: pass ‘pro_and_epilogue’ not found but is referenced by 
new pass ‘chariot_framesize’


perhaps the error message should mention a type mismatch.


Thanks for your help.


Cheers


-- 
Basile STARYNKEVITCH   == http://starynkevitch.net/Basile
opinions are mine only - les opinions sont seulement miennes
Bourg La Reine, France



More information about the Gcc mailing list