alok marked an inline comment as done. alok added inline comments.
================ Comment at: clang/lib/Frontend/CompilerInvocation.cpp:1648 - if (Opts.OptimizationLevel > 0 && Opts.hasReducedDebugInfo() && + if (Opts.hasReducedDebugInfo() && llvm::is_contained(DebugEntryValueArchs, T.getArch())) ---------------- dblaikie wrote: > alok wrote: > > alok wrote: > > > dblaikie wrote: > > > > probinson wrote: > > > > > I think we don't want this enabled by default at -O0. It doesn't run > > > > > any optimizations that should eliminate parameters, so this is going > > > > > to increase debug info size for no real benefit to the debugging > > > > > experience. > > > > +1 to @probinson here. That's generally been the thinking behind why > > > > this was only enabled when optimizations are enabled. (there's some > > > > minor tradeoff here: call site descriptions in unoptimized code can > > > > still be useful if they call into optimized code, so this is a bit > > > > heuristical - assuming that all code will be compiled with the same > > > > optimization level) > > > > > > > > If flang is in a different situation and enables some optimizations at > > > > -O0 that make call site parameter descriptions beneficial even there, > > > > then maybe we'll need some different way to differentiate optimizations > > > > V no optimizations for the purpose of this feature. > > > Thanks Paul for the comment. I shall probably add an option to enable in > > > such cases which should remain off by default, Flang driver can pass that > > > to compiler to turn it on. > > Thanks David for your explanation and thoughts. Please also look at trigger > > to this https://reviews.llvm.org/D99160 > > > > It is needed in a Fortran case. I shall probably drop to enable it by > > default and add an option which by default is disabled and Fortran driver > > can pass that to make use of it. > Sounds like @djtodoro is suggesting in > https://reviews.llvm.org/D99160#2666106 that the "Bug" to fix here is the > presence of DW_OP_call_value at -O0, it seems that could be an issue for the > existing/original use of call_site_parameter/call_value (in C++/clang) as it > would be for flang - so the fix should probably not be flang-specific if the > issue isn't flang-specific. Understanding why we produce DW_OP_call_values at > -O0, whether we can/should avoid that, what it costs (how much larger the > debug info gets by adding DW_TAG_call_sites at -O0) would be necessary to > determine the right path forward here. Thanks David for clarification. I shall look at it and get back. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D99238/new/ https://reviews.llvm.org/D99238 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits