scripts/cpa.sh -heap 3000M -noout -disable-java-assertions -predicateAnalysis-PredAbsRefiner-ABEl -setprop cpa.predicate.handlePointerAliasing=false -64 -timelimit 900s -stats -spec test/programs/benchmarks/ldv-linux-3.4-simple/ALL.prp test/programs/benchmarks/ldv-linux-3.4-simple/32_1_cilled_true-unreach-call_ok_nondet_linux-3.4-32_1-drivers--ide--cmd640.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out.c -------------------------------------------------------------------------------- Running CPAchecker with Java heap of size 3000M. Using the following resource limits: CPU-time limit of 900s (ResourceLimitChecker.fromConfiguration, INFO) CPAchecker 1.4-svn (OpenJDK 64-Bit Server VM 1.7.0_65) started (CPAchecker.run, INFO) Inline assembler ignored, analysis is probably unsound! (CFABuilder.createCFA, WARNING) line 4957: Function pointer *__cil_tmp2 with type void (*)() is called, but no possible target functions were found. (CFunctionPointerResolver.replaceFunctionPointerCall, WARNING) Handling of pointer aliasing is disabled, analysis is unsound if aliased pointers exist. (PredicateCPA:PathFormulaManagerImpl., WARNING) Using predicate analysis with SMTInterpol 2.1-174-ga199d47-comp and JFactory 1.21. (PredicateCPA:PredicateCPA., INFO) Using refinement for predicate analysis with PredicateAbstractionRefinementStrategy strategy. (PredicateCPA:PredicateCPARefiner., INFO) The following configuration options were specified but are not used: cpa.predicate.memoryAllocationsAlwaysSucceed cpa.predicate.maxPreFilledAllocationSize (CPAchecker.printConfigurationWarnings, WARNING) Starting analysis ... (CPAchecker.runAlgorithm, INFO) Program contains array, or pointer (multiple level of indirection), or field (enable handleFieldAccess and handleFieldAliasing) access; analysis is imprecise in case of aliasing. (PredicateCPA:CtoFormulaConverter.makeVariableUnsafe, WARNING) Assuming external function ldv_initialize to be a constant function. (PredicateCPA:ExpressionToFormulaVisitor.visit, INFO) Assuming external function _raw_spin_lock_irqsave to be a pure function. (PredicateCPA:ExpressionToFormulaVisitor.visit, INFO) line 4957: Ignoring call via function pointer slow_down_io::__cil_tmp2 for which no suitable target was found in line: (*__cil_tmp2)(); (FunctionPointerCPA:FunctionPointerTransferRelation.getAbstractSuccessorsForEdge, WARNING) line 4957: Ignoring function call through function pointer *__cil_tmp2: (*__cil_tmp2)(); (PredicateCPA:ExpressionToFormulaVisitor.visit, WARNING) Assuming external function _raw_spin_unlock_irqrestore to be a pure function. (PredicateCPA:ExpressionToFormulaVisitor.visit, INFO) Assuming external function __request_region to be a pure function. (PredicateCPA:ExpressionToFormulaVisitor.visit, INFO) Assuming external function __release_region to be a pure function. (PredicateCPA:ExpressionToFormulaVisitor.visit, INFO) Assuming external function memset to be a pure function. (PredicateCPA:ExpressionToFormulaVisitor.visit, INFO) Assuming external function __const_udelay to be a pure function. (PredicateCPA:ExpressionToFormulaVisitor.visit, INFO) Assuming external function ide_host_add to be a pure function. (PredicateCPA:ExpressionToFormulaVisitor.visit, INFO) line 5529: Ignoring call via function pointer __get_cmd640_reg for which no suitable target was found in line: b = (*__get_cmd640_reg)(reg); (FunctionPointerCPA:FunctionPointerTransferRelation.getAbstractSuccessorsForEdge, WARNING) line 5529: Ignoring function call through function pointer *__get_cmd640_reg: b = (*__get_cmd640_reg)(reg); (PredicateCPA:ExpressionToFormulaVisitor.visit, WARNING) Assuming external function ide_pio_cycle_time to be a pure function. (PredicateCPA:ExpressionToFormulaVisitor.visit, INFO) Assuming external function ide_timing_find_mode to be a pure function. (PredicateCPA:ExpressionToFormulaVisitor.visit, INFO) line 6555: Ignoring call via function pointer __get_cmd640_reg for which no suitable target was found in line: tmp___9 = (*__get_cmd640_reg)(__cil_tmp45); (FunctionPointerCPA:FunctionPointerTransferRelation.getAbstractSuccessorsForEdge, WARNING) line 6555: Ignoring function call through function pointer *__get_cmd640_reg: tmp___9 = (*__get_cmd640_reg)(__cil_tmp45); (PredicateCPA:ExpressionToFormulaVisitor.visit, WARNING) line 6575: Ignoring call via function pointer __put_cmd640_reg for which no suitable target was found in line: (*__put_cmd640_reg)(__cil_tmp53, setup_count); (FunctionPointerCPA:FunctionPointerTransferRelation.getAbstractSuccessorsForEdge, WARNING) line 6575: Ignoring function call through function pointer *__put_cmd640_reg: (*__put_cmd640_reg)(__cil_tmp53, setup_count); (PredicateCPA:ExpressionToFormulaVisitor.visit, WARNING) line 6587: Ignoring call via function pointer __put_cmd640_reg for which no suitable target was found in line: (*__put_cmd640_reg)(__cil_tmp57, tmp___10); (FunctionPointerCPA:FunctionPointerTransferRelation.getAbstractSuccessorsForEdge, WARNING) line 6587: Ignoring function call through function pointer *__put_cmd640_reg: (*__put_cmd640_reg)(__cil_tmp57, tmp___10); (PredicateCPA:ExpressionToFormulaVisitor.visit, WARNING) line 6123: Ignoring call via function pointer __get_cmd640_reg for which no suitable target was found in line: b = (*__get_cmd640_reg)(__cil_tmp13); (FunctionPointerCPA:FunctionPointerTransferRelation.getAbstractSuccessorsForEdge, WARNING) line 6123: Ignoring function call through function pointer *__get_cmd640_reg: b = (*__get_cmd640_reg)(__cil_tmp13); (PredicateCPA:ExpressionToFormulaVisitor.visit, WARNING) line 6165: Ignoring call via function pointer __put_cmd640_reg for which no suitable target was found in line: (*__put_cmd640_reg)(__cil_tmp27, b); (FunctionPointerCPA:FunctionPointerTransferRelation.getAbstractSuccessorsForEdge, WARNING) line 6165: Ignoring function call through function pointer *__put_cmd640_reg: (*__put_cmd640_reg)(__cil_tmp27, b); (PredicateCPA:ExpressionToFormulaVisitor.visit, WARNING) line 5569: Ignoring call via function pointer __put_cmd640_reg for which no suitable target was found in line: (*__put_cmd640_reg)(reg, val); (FunctionPointerCPA:FunctionPointerTransferRelation.getAbstractSuccessorsForEdge, WARNING) line 5569: Ignoring function call through function pointer *__put_cmd640_reg: (*__put_cmd640_reg)(reg, val); (PredicateCPA:ExpressionToFormulaVisitor.visit, WARNING) Stopping analysis ... (CPAchecker.runAlgorithm, INFO) PredicateCPA statistics ----------------------- Number of abstractions: 224 (1% of all post computations) Times abstraction was reused: 0 Because of function entry/exit: 0 (0%) Because of loop head: 224 (100%) Because of join nodes: 0 (0%) Because of threshold: 0 (0%) Times precision was empty: 139 (62%) Times precision was {false}: 0 (0%) Times result was cached: 18 (8%) Times cartesian abs was used: 0 (0%) Times boolean abs was used: 67 (30%) Times result was 'false': 8 (4%) Number of strengthen sat checks: 26 Times result was 'false': 25 (96%) Number of coverage checks: 2236 BDD entailment checks: 132 Number of SMT sat checks: 26 trivial: 0 cached: 3 Max ABE block size: 175 Number of predicates discovered: 2 Number of abstraction locations: 0 Max number of predicates per location: 0 Avg number of predicates per location: 0 Total predicates per abstraction: 134 Max number of predicates per abstraction: 2 Avg number of predicates per abstraction: 2.00 Number of irrelevant predicates: 0 (0%) Number of preds handled by boolean abs: 134 (100%) Total number of models for allsat: 59 Max number of models for allsat: 1 Avg number of models for allsat: 0.88 Number of path formula cache hits: 16725 (41%) Time for post operator: 2.821s Time for path formula creation: 2.622s Actual computation: 2.458s Time for strengthen operator: 0.384s Time for satisfiability checks: 0.317s Time for prec operator: 9.026s Time for abstraction: 9.011s (Max: 1.673s, Count: 224) Boolean abstraction: 5.614s Solving time: 5.363s (Max: 1.546s) Model enumeration time: 0.167s Time for BDD construction: 0.016s (Max: 0.008s) Time for merge operator: 0.954s Time for coverage check: 0.017s Time for BDD entailment checks: 0.009s Total time for SMT solver (w/o itp): 5.847s Number of BDD nodes: 203 Size of BDD node table: 10007 Size of BDD node cleanup queue: 47 (count: 546, min: 0, max: 47, avg: 0,09) Time for BDD node cleanup: 0.000s Time for BDD garbage collection: 0.000s (in 0 runs) PrecisionBootstrap statistics ----------------------------- Init. function predicates: 0 Init. global predicates: 0 Init. location predicates: 0 AutomatonAnalysis (SVCOMP) statistics ------------------------------------- Number of states: 1 Total time for successor computation: 0.260s Automaton transfers with branching: 0 Automaton transfer successors: 73880 (count: 73880, min: 1, max: 1, avg: 1,00) [1 x 73880] CPA algorithm statistics ------------------------ Number of iterations: 38739 Max size of waitlist: 137 Average size of waitlist: 57 Number of computed successors: 39961 Max successors for one state: 2 Number of times merged: 1052 Number of times stopped: 1184 Number of times breaked: 1 Total time for CPA algorithm: 15.972s (Max: 9.181s) Time for choose from waitlist: 0.096s Time for precision adjustment: 9.271s Time for transfer relation: 4.375s Time for merge operator: 1.083s Time for stop operator: 0.161s Time for adding to reached set: 0.339s Predicate-Abstraction Refiner statistics ---------------------------------------- Avg. length of target path (in blocks): 3 (count: 1, min: 3, max: 3, avg: 3,00) Time for refinement: 0.666s Counterexample analysis: 0.121s (Max: 0.121s, Calls: 1) Refinement sat check: 0.118s Interpolant computation: 0.000s Error path post-processing: 0.000s Path-formulas extraction: 0.000s Building the counterexample trace: 0.121s Extracting precise counterexample: 0.000s Predicate creation: 0.000s Precision update: 0.000s ARG update: 0.000s Length of refined path (in blocks): 0 (count: 0, min: 0, max: 0, avg: 0,00) Number of affected states: 0 (count: 0, min: 0, max: 0, avg: 0,00) Length (states) of path with itp 'true': 0 (count: 0, min: 0, max: 0, avg: 0,00) Length (states) of path with itp non-trivial itp: 0 (count: 0, min: 0, max: 0, avg: 0,00) Length (states) of path with itp 'false': 0 (count: 0, min: 0, max: 0, avg: 0,00) Different non-trivial interpolants along paths: 0 (count: 0, min: 0, max: 0, avg: 0,00) Equal non-trivial interpolants along paths: 0 (count: 0, min: 0, max: 0, avg: 0,00) Different precisions along paths: 0 (count: 0, min: 0, max: 0, avg: 0,00) Equal precisions along paths: 0 (count: 0, min: 0, max: 0, avg: 0,00) Number of refs with location-based cutoff: 0 CEGAR algorithm statistics -------------------------- Number of refinements: 1 Number of successful refinements: 1 Number of failed refinements: 0 Max. size of reached set before ref.: 23231 Max. size of reached set after ref.: 1 Avg. size of reached set before ref.: 23231.00 Avg. size of reached set after ref.: 1.00 Total time for CEGAR algorithm: 16.646s Time for refinements: 0.672s Average time for refinement: 0.672s Max time for refinement: 0.672s Counterexample-Check Algorithm statistics ----------------------------------------- Number of counterexample checks: 0 CPAchecker general statistics ----------------------------- Number of program locations: 783 Number of functions: 49 Number of loops: 5 Size of reached set: 15548 Number of reached locations: 714 (91%) Avg states per location: 21 Max states per location: 484 (at node N0) Number of reached functions: 41 (84%) Number of partitions: 15529 Avg size of partitions: 1 Max size of partitions: 4 (with key [N1693 (before lines 8029-8095), Function main called from node N1677, stack depth 1 [3c4f7563], stack [main], Init]) Number of target states: 0 Time for analysis setup: 3.984s Time for loading CPAs: 0.698s Time for loading parser: 0.730s Time for CFA construction: 2.501s Time for parsing file(s): 1.202s Time for AST to CFA: 0.754s Time for CFA sanity check: 0.000s Time for post-processing: 0.360s Time for var class.: 0.000s Time for Analysis: 16.690s CPU time for analysis: 16.680s Total time for CPAchecker: 20.675s Total CPU time for CPAchecker: 20.660s Time for Garbage Collector: 0.353s (in 3 runs) Garbage Collector(s) used: PS MarkSweep, PS Scavenge Used heap memory: 294MB ( 280 MiB) max; 133MB ( 127 MiB) avg; 305MB ( 291 MiB) peak Used non-heap memory: 26MB ( 25 MiB) max; 21MB ( 20 MiB) avg; 26MB ( 25 MiB) peak Used in PS Old Gen pool: 18MB ( 18 MiB) max; 8MB ( 8 MiB) avg; 18MB ( 18 MiB) peak Allocated heap memory: 637MB ( 607 MiB) max; 588MB ( 561 MiB) avg Allocated non-heap memory: 27MB ( 26 MiB) max; 25MB ( 24 MiB) avg Total process virtual memory: 4900MB ( 4673 MiB) max; 4899MB ( 4672 MiB) avg Verification result: TRUE. No property violation found by chosen configuration. More details about the verification run can be found in the directory "./output".