<div class="__aliyun_email_body_block"><div  style="clear:both;"><span  style="font-family:Tahoma,Arial,STHeiti,SimSun;font-size:14.0px;color:#000000;">Now if we use --hot-cold-split, the compiler would tell us `unsupported option`. So I can't find simple example from compiler explorer.</span></div><div  style="clear:both;"><span  style="font-family:Tahoma,Arial,STHeiti,SimSun;font-size:14.0px;color:#000000;">Here is the slides from the web: https://llvm.org/devmtg/2019-10/slides/Kumar-HotColdSplitting.pdf</span></div><div  style="clear:both;"><span  style="font-family:Tahoma,Arial,STHeiti,SimSun;font-size:14.0px;color:#000000;">BTW, may I ask what's the intention for the question? Do we find that it is a performance gap from clang and gcc?</span></div><div  style="clear:both;"><span  style="font-family:Tahoma,Arial,STHeiti,SimSun;font-size:14.0px;color:#000000;"><br ></span></div><div  style="clear:both;"><span  style="font-family:Tahoma,Arial,STHeiti,SimSun;font-size:14.0px;color:#000000;">Thanks,</span></div><div  style="clear:both;"><span  style="font-family:Tahoma,Arial,STHeiti,SimSun;font-size:14.0px;color:#000000;">Chuanqi</span></div><div  style="clear:both;"><span  style="font-family:Tahoma,Arial,STHeiti,SimSun;font-size:14.0px;color:#000000;"><br ></span></div><blockquote  style="margin-right:0;margin-top:0;margin-bottom:0;"><div  style="clear:both;"><span  style="font-family:Tahoma,Arial,STHeiti,SimSun;font-size:14.0px;color:#000000;">------------------------------------------------------------------</span></div><div  style="clear:both;"><span  style="font-family:Tahoma,Arial,STHeiti,SimSun;font-size:14.0px;color:#000000;">From:陈云星 <chen.yunxing@me.com></span></div><div  style="clear:both;"><span  style="font-family:Tahoma,Arial,STHeiti,SimSun;font-size:14.0px;color:#000000;">Send Time:2021年5月6日(星期四) 17:49</span></div><div  style="clear:both;"><span  style="font-family:Tahoma,Arial,STHeiti,SimSun;font-size:14.0px;color:#000000;">To:chuanqi.xcq <yedeng.yd@linux.alibaba.com></span></div><div  style="clear:both;"><span  style="font-family:Tahoma,Arial,STHeiti,SimSun;font-size:14.0px;color:#000000;">Cc:cfe-dev <cfe-dev@lists.llvm.org></span></div><div  style="clear:both;"><span  style="font-family:Tahoma,Arial,STHeiti,SimSun;font-size:14.0px;color:#000000;">Subject:Re: [cfe-dev] split hot and cold part of a function into separate function</span></div><div  style="clear:both;"><span  style="font-family:Tahoma,Arial,STHeiti,SimSun;font-size:14.0px;color:#000000;"><br ></span></div>are there some example ?<div  class=""><span  class=" __aliyun_node_has_color __aliyun_node_has_bgcolor" style="color:#242729;font-family:Consolas,Menlo,Monaco,Lucida Console,Liberation Mono,DejaVu Sans Mono,Bitstream Vera Sans Mono,Courier New,monospace,sans-serif;font-size:13.0px;font-variant-ligatures:normal;widows:2;background-color:#e4e6e8;text-decoration-thickness:initial;">And this option -hot-cold-split need profile data ?</span><br  class=""><div ><br  class=""><div  class="">2021年5月6日 下午5:16,chuanqi.xcq <<a  class="" href="mailto:yedeng.yd@linux.alibaba.com" target="_blank">yedeng.yd@linux.alibaba.com</a>> 写道:</div><br  class="Apple-interchange-newline"><div  class=""><div  class="" style="clear:both;"><span  class="" style="font-family:Tahoma,Arial,STHeiti,SimSun;font-size:14.0px;">Hi,</span></div><div  class="" style="clear:both;"><span  class="" style="font-family:Tahoma,Arial,STHeiti,SimSun;font-size:14.0px;"><br  class=""></span></div><div  class="" style="clear:both;">IIRC, clang/llvm has HotColdSplit and partial inline passes which has similar functionality. However, these two passes are not enabled by default for some reasons.</div><div  class="" style="clear:both;"><br  class=""></div><div  class="" style="clear:both;">Thanks,</div><div  class="" style="clear:both;">Chuanqi</div><div  class="" style="clear:both;"><span  class="" style="font-family:Tahoma,Arial,STHeiti,SimSun;font-size:14.0px;"><br  class=""></span></div><div  class="" style="clear:both;"><span  class="" style="font-family:Tahoma,Arial,STHeiti,SimSun;font-size:14.0px;">------------------------------------------------------------------</span></div><div  class="" style="clear:both;"><span  class="" style="font-family:Tahoma,Arial,STHeiti,SimSun;font-size:14.0px;">From:陈云星 via cfe-dev <<a  class="" href="mailto:cfe-dev@lists.llvm.org" target="_blank">cfe-dev@lists.llvm.org</a>></span></div><div  class="" style="clear:both;"><span  class="" style="font-family:Tahoma,Arial,STHeiti,SimSun;font-size:14.0px;">Send Time:2021年5月6日(星期四) 17:11</span></div><div  class="" style="clear:both;"><span  class="" style="font-family:Tahoma,Arial,STHeiti,SimSun;font-size:14.0px;">To:cfe-dev <<a  class="" href="mailto:cfe-dev@lists.llvm.org" target="_blank">cfe-dev@lists.llvm.org</a>></span></div><div  class="" style="clear:both;"><span  class="" style="font-family:Tahoma,Arial,STHeiti,SimSun;font-size:14.0px;">Subject:[cfe-dev] split hot and cold part of a function into separate function</span></div><div  class="" style="clear:both;"><span  class="" style="font-family:Tahoma,Arial,STHeiti,SimSun;font-size:14.0px;"><br  class=""></span></div>currently, gcc support function attribute “cold”, which can hint compiler split caller function’s cold into two separate function, one is hot the other is cold.<div  class=""><br  class=""></div><div  class="">One example is here: <a  class="" href="https://godbolt.org/z/j7sK4hd48" target="_blank">https://godbolt.org/z/j7sK4hd48</a></div><div  class=""><br  class=""></div><div  class="">my question is Clang/llvm has such function/capability ?</div><div  class=""><br  class=""></div></div></div><br  class=""></div></blockquote><div ><br ></div></div>