Displaying 4 results from an estimated 4 matches for "succ_empty".
2013 Feb 06
0
[LLVMdev] Incorrect Simple pattern matching in lib/CodeGen/IfConversion.cpp
...new
block, and the fallthrough block of TBB is no longer reached. This
causes the compiled program to execute FBB instead of the
fallthrough-block of TBB, leading to incorrect behaviour.
I added the following check to IfConverter::ValidSimple(), which fixes
my problems:
if (!TrueBBI.BB->succ_empty())
return false;
but I have no idea if there is a less conservative way of checking for
the Simple pattern (e.g., an unconditional indirect jump might still be
allowed at the end of TBB).
I use the code from the LLVM 3.2 release, but it is basically the same
in LLVM 3.1 and in head.
Rega...
2009 Jul 01
0
[LLVMdev] Profiling in LLVM Patch
...essor
> + return 2;
> + }
> + } else {
> + return 0;
> + }
> +}
This routine is only used in one place, and its result is compared against 0. I
think it should be removed and the code should just check (succ_begin(BB) ==
succ_end(BB)), or for better readability add a succ_empty to CFG.h and use that.
> --- llvm-van/lib/Analysis/ProfileEstimatorPass.cpp 1970-01-01 01:00:00.000000000 +0100
> +++ llvm-c7/lib/Analysis/ProfileEstimatorPass.cpp 2009-06-26 16:47:01.000000000 +0200
...
> +bool OptimalEdgeProfiler::runOnModule(Module &M) {
> + Function *Ma...
2009 Jun 29
7
[LLVMdev] Profiling in LLVM Patch
Hi all,
as proposed in
http://lists.cs.uiuc.edu/pipermail/llvmdev/2009-February/020396.html
I implemented the algorithm presented in [Ball94]. It only instruments
the minimal number of edges necessary for edge profiling.
The main changes introduced by this patch are:
*) a interface compatible rewrite of ProfileInfo
*) a cleanup of ProfileInfoLoader
(some functionality in ProfileInfoLoader
2009 Jul 01
12
[LLVMdev] Profiling in LLVM Patch
...}
>> + } else {
>> + return 0;
>> + }
>> +}
>
> This routine is only used in one place, and its result is compared against 0. I
> think it should be removed and the code should just check (succ_begin(BB) ==
> succ_end(BB)), or for better readability add a succ_empty to CFG.h and use that.
Okay.
>> --- llvm-van/lib/Analysis/ProfileEstimatorPass.cpp 1970-01-01 01:00:00.000000000 +0100
>> +++ llvm-c7/lib/Analysis/ProfileEstimatorPass.cpp 2009-06-26 16:47:01.000000000 +0200
> ...
>> +bool OptimalEdgeProfiler::runOnModule(Module &M)...