Re: [PATCH] D13304: Avoid inlining in throw statement

2015-10-27 Thread Jun Bum Lim via cfe-commits
junbuml added a comment. Did you mean to add the Cold in the exception handling region itself instead of callsite in throw statements ? http://reviews.llvm.org/D13304 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

Re: [PATCH] D13304: Avoid inlining in throw statement

2015-10-27 Thread Jun Bum Lim via cfe-commits
junbuml added a comment. I see what you mean. Now, I doubt if BranchProbabilityInfo::calcColdCallHeuristics() set the Cold before inliner. As far as I check, BranchProbabilityInfo is executed after inliner. Another issue is that even if we can add the Cold in callsites in exception handling

Re: [PATCH] D13304: Avoid inlining in throw statement

2015-11-03 Thread Jun Bum Lim via cfe-commits
junbuml added a comment. The basic idea of this change is to avoid inlining callsites invoked in exception handling regions (EHR) so that we can reduce code size blow-up in very cold regions and indirectly increase inline opportunities for functions containing exception handling code. I think

Re: [PATCH] D13304: Avoid inlining in throw statement

2015-11-04 Thread Jun Bum Lim via cfe-commits
junbuml added a comment. If we want to add a check for CallSites in EHRs in inliner, we may be able to borrow things done in BranchProbabilityInfo::calcColdCallHeuristics, but for exception handing intrinsics, not for cold, and make getInlineThreshold() return a lower threshold so that we can

Re: [PATCH] D13304: Avoid inlining in throw statement

2015-11-03 Thread Jun Bum Lim via cfe-commits
junbuml added a comment. Thanks Richard for your comment ! If the frond-end is not a good to place for this, I think there are two places we can consider : inliner or prune-eh. 1. In inliner, we can directly check if a CallSite branches an exception region, and then make getInlineThreshold()

Re: [PATCH] D13304: Avoid inlining in throw statement

2015-11-06 Thread Jun Bum Lim via cfe-commits
junbuml added a comment. Just ping to see if there is any objection about adding the extra check for CallSites in EHRs in inliner. I will be happy to hear any opinion, suggestion, or objection. http://reviews.llvm.org/D13304 ___ cfe-commits

Re: [PATCH] D13304: Avoid inlining in throw statement

2015-10-16 Thread Jun Bum Lim via cfe-commits
junbuml added a comment. I just want to ping one more time to see if there is any objection about the basic idea of this change. If the basic idea itself is acceptable, then I want to find the best way to get idea in. Please let me know any new suggestion or any opinion about moving this

Re: [PATCH] D13304: Avoid inlining in throw statement

2015-10-07 Thread Jun Bum Lim via cfe-commits
junbuml added a comment. Thanks Richard for the comment. Initially, I intended to implement this in inliner by checking if a callsite is in exception handling regions. However, I decided not to implement this in inliner because this kind of check should be performed for all callsites if we

Re: [PATCH] D13304: Avoid inlining in throw statement

2015-10-12 Thread Jun Bum Lim via cfe-commits
junbuml added a comment. Just want to hear if there is any opinion about moving this implementation back to PrunceEH.cpp like http://reviews.llvm.org/D12979 and adding the minimum callee size check to avoid marking noinlines on trivial constrictor calls. Please let me know any objection or

Re: [PATCH] D13304: Avoid inlining in throw statement

2015-10-07 Thread Jun Bum Lim via cfe-commits
junbuml added a comment. Is there any comment on this change? Note that with change, I observed about 6% performance improvement in spec2006/xalancbmk. I will address any comment to get this in. http://reviews.llvm.org/D13304 ___ cfe-commits

Re: [PATCH] D12979: Avoid inlining in exception handling context

2015-09-30 Thread Jun Bum Lim via cfe-commits
junbuml abandoned this revision. junbuml added a comment. Move this clang change in http://reviews.llvm.org/D13304 http://reviews.llvm.org/D12979 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[PATCH] D13304: Avoid inlining in throw statement

2015-09-30 Thread Jun Bum Lim via cfe-commits
junbuml created this revision. junbuml added reviewers: hfinkel, mcrosier, reames, ashutosh.nema, majnemer. junbuml added subscribers: gberry, cfe-commits. It might be reasonably to avoid inlining CallSites invoked in exception handling context so that we can reduce code size blow-up in EH

Re: [PATCH] D12979: Avoid inlining in exception handling context

2015-09-30 Thread Jun Bum Lim via cfe-commits
junbuml added a comment. In this clang change, I added a state flag (bool IsColdRegion) in CodeGenFunction and set/reset the flag in EmitCXXThrowExpr(). In EmitCall(), the NoInline attribute would be added if IsColdRegion is true. As of now, this change only handles throw statements because I

Re: [PATCH] D12979: Avoid inlining in exception handling context

2015-09-30 Thread Jun Bum Lim via cfe-commits
junbuml edited subscribers, added: cfe-commits; removed: llvm-commits. junbuml updated this revision to Diff 36107. http://reviews.llvm.org/D12979 Files: lib/CodeGen/CGCall.cpp lib/CodeGen/CGException.cpp lib/CodeGen/CodeGenFunction.cpp lib/CodeGen/CodeGenFunction.h

Re: [PATCH] D13304: Avoid inlining in throw statement

2015-10-05 Thread Jun Bum Lim via cfe-commits
junbuml updated this revision to Diff 36551. junbuml added a comment. Just minor cleaning. Please let me know any comment. http://reviews.llvm.org/D13304 Files: lib/CodeGen/CGCall.cpp lib/CodeGen/CGException.cpp lib/CodeGen/CodeGenFunction.cpp lib/CodeGen/CodeGenFunction.h

Re: [PATCH] D13304: Avoid inlining in throw statement

2016-01-12 Thread Jun Bum Lim via cfe-commits
junbuml abandoned this revision. junbuml added a comment. Abandon this based the last comment in http://reviews.llvm.org/D15289. http://reviews.llvm.org/D13304 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

Re: [PATCH] D19484: [OpenCL] Add supported OpenCL extensions to target info.

2016-05-13 Thread Jun Bum Lim via cfe-commits
junbuml added a subscriber: junbuml. junbuml added a comment. In current trunk, I got build error : llvm/tools/clang/lib/Basic/Targets.cpp:2090:9: error: 'setSupportedOpenCLOpts' overrides a member function but is not marked 'override' [-Werror,-Winconsistent-missing-override] void

Re: [PATCH] D17820: Clang Code Completion Filtering

2016-07-27 Thread Jun Bum Lim via cfe-commits
junbuml added a subscriber: junbuml. junbuml added a comment. It appears that build fails due to this change : llvm/tools/clang/lib/Sema/CodeCompleteConsumer.cpp:448:3: error: default label in switch which covers all enumeration values [-Werror,-Wcovered-switch-default] default: