gcc源码中cfg_hooks的函数指针所指向的函数体在哪里可以找到?

问题描述 投票:0回答:1

在 gcc cfghooks.cc 中

void
predict_edge (edge e, enum br_predictor predictor, int probability)
{
  if (!cfg_hooks->predict_edge)
    internal_error ("%s does not support predict_edge", cfg_hooks->name);

  cfg_hooks->predict_edge (e, predictor, probability);
}

我找到了这条线

cfg_hooks->predict_edge (e, predictor, probability);
, Predict_edge 是 cfghooks.h 中定义的函数指针

  /* Predict edge E using PREDICTOR to given PROBABILITY.  */
  void (*predict_edge) (edge e, enum br_predictor predictor, int probability);

我找不到这个指针指向哪个函数...


我想知道在哪里可以找到这个函数体。谢谢你的帮助。

gcc compiler-construction
1个回答
0
投票

对于两个不同的 IR 有两种实现,

rtl_predict_edge
中的
gcc/cfgrtl.cc
gimple_predict_edge
中的
gcc/predict.cc

© www.soinside.com 2019 - 2024. All rights reserved.