./Ultimate.py --spec ../sv-benchmarks/c/properties/unreach-call.prp --file ../sv-benchmarks/c/ldv-validator-v0.8/linux-stable-af3071a-1-130_7a-drivers--hwmon--s3c-hwmon.ko-entry_point_ldv-val-v0.8.cil.out.i --full-output -ea --architecture 64bit -------------------------------------------------------------------------------- Checking for ERROR reachability Using default analysis Version 03d7b7b3 Calling Ultimate with: /usr/bin/java -Dosgi.configuration.area=/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/config -Xmx15G -Xms4m -ea -jar /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data -tc /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/AutomizerReach.xml -i ../sv-benchmarks/c/ldv-validator-v0.8/linux-stable-af3071a-1-130_7a-drivers--hwmon--s3c-hwmon.ko-entry_point_ldv-val-v0.8.cil.out.i -s /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-64bit-Automizer_Default.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux --witnessprinter.witness.filename witness.graphml --witnessprinter.write.witness.besides.input.file false --witnessprinter.graph.data.specification CHECK( init(main()), LTL(G ! call(reach_error())) ) --witnessprinter.graph.data.producer Automizer --witnessprinter.graph.data.architecture 64bit --witnessprinter.graph.data.programhash 88f19b088f98626e870666f9633d9e7e34156d2b7ba315c9b1bc3979a22f8d34 --- Real Ultimate output --- This is Ultimate 0.2.2-dev-03d7b7b [2022-02-20 22:06:56,578 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-02-20 22:06:56,580 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-02-20 22:06:56,613 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-02-20 22:06:56,614 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-02-20 22:06:56,616 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-02-20 22:06:56,617 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-02-20 22:06:56,619 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-02-20 22:06:56,621 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-02-20 22:06:56,624 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-02-20 22:06:56,624 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-02-20 22:06:56,625 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-02-20 22:06:56,626 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-02-20 22:06:56,628 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-02-20 22:06:56,629 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-02-20 22:06:56,631 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-02-20 22:06:56,647 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-02-20 22:06:56,648 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-02-20 22:06:56,649 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-02-20 22:06:56,650 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-02-20 22:06:56,651 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-02-20 22:06:56,652 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-02-20 22:06:56,653 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-02-20 22:06:56,653 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-02-20 22:06:56,655 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-02-20 22:06:56,655 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-02-20 22:06:56,655 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-02-20 22:06:56,655 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-02-20 22:06:56,656 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-02-20 22:06:56,656 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-02-20 22:06:56,656 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-02-20 22:06:56,657 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-02-20 22:06:56,657 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-02-20 22:06:56,658 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-02-20 22:06:56,658 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-02-20 22:06:56,659 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-02-20 22:06:56,662 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-02-20 22:06:56,662 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-02-20 22:06:56,663 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-02-20 22:06:56,664 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-02-20 22:06:56,664 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-02-20 22:06:56,665 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-64bit-Automizer_Default.epf [2022-02-20 22:06:56,678 INFO L113 SettingsManager]: Loading preferences was successful [2022-02-20 22:06:56,681 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-02-20 22:06:56,681 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-02-20 22:06:56,682 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-02-20 22:06:56,682 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-02-20 22:06:56,682 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-02-20 22:06:56,683 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-02-20 22:06:56,683 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-02-20 22:06:56,683 INFO L138 SettingsManager]: * Use SBE=true [2022-02-20 22:06:56,683 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-02-20 22:06:56,684 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-02-20 22:06:56,684 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-02-20 22:06:56,684 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-02-20 22:06:56,684 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-02-20 22:06:56,685 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-02-20 22:06:56,685 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-02-20 22:06:56,685 INFO L138 SettingsManager]: * Use constant arrays=true [2022-02-20 22:06:56,685 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-02-20 22:06:56,685 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-02-20 22:06:56,685 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-02-20 22:06:56,685 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-02-20 22:06:56,686 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 22:06:56,686 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-02-20 22:06:56,686 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-02-20 22:06:56,686 INFO L138 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2022-02-20 22:06:56,686 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-02-20 22:06:56,686 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-02-20 22:06:56,687 INFO L138 SettingsManager]: * Large block encoding in concurrent analysis=OFF [2022-02-20 22:06:56,688 INFO L138 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2022-02-20 22:06:56,688 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-02-20 22:06:56,688 INFO L138 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 (file:/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/com.sun.xml.bind_2.2.0.v201505121915.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator: Entry function -> main Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness directory -> /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness filename -> witness.graphml Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Write witness besides input file -> false Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data specification -> CHECK( init(main()), LTL(G ! call(reach_error())) ) Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data producer -> Automizer Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data architecture -> 64bit Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data programhash -> 88f19b088f98626e870666f9633d9e7e34156d2b7ba315c9b1bc3979a22f8d34 [2022-02-20 22:06:56,857 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-02-20 22:06:56,871 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-02-20 22:06:56,873 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-02-20 22:06:56,873 INFO L271 PluginConnector]: Initializing CDTParser... [2022-02-20 22:06:56,874 INFO L275 PluginConnector]: CDTParser initialized [2022-02-20 22:06:56,875 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/ldv-validator-v0.8/linux-stable-af3071a-1-130_7a-drivers--hwmon--s3c-hwmon.ko-entry_point_ldv-val-v0.8.cil.out.i [2022-02-20 22:06:56,932 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/27e38fbc9/c4078e4a23064177b79c11681464b0f0/FLAG72f49d2e8 [2022-02-20 22:06:57,342 INFO L306 CDTParser]: Found 1 translation units. [2022-02-20 22:06:57,342 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/ldv-validator-v0.8/linux-stable-af3071a-1-130_7a-drivers--hwmon--s3c-hwmon.ko-entry_point_ldv-val-v0.8.cil.out.i [2022-02-20 22:06:57,363 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/27e38fbc9/c4078e4a23064177b79c11681464b0f0/FLAG72f49d2e8 [2022-02-20 22:06:57,374 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/27e38fbc9/c4078e4a23064177b79c11681464b0f0 [2022-02-20 22:06:57,376 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-02-20 22:06:57,378 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2022-02-20 22:06:57,380 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-02-20 22:06:57,380 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-02-20 22:06:57,382 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-02-20 22:06:57,383 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 10:06:57" (1/1) ... [2022-02-20 22:06:57,384 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@6468b057 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 10:06:57, skipping insertion in model container [2022-02-20 22:06:57,384 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 10:06:57" (1/1) ... [2022-02-20 22:06:57,389 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-02-20 22:06:57,441 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-02-20 22:06:57,787 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/ldv-validator-v0.8/linux-stable-af3071a-1-130_7a-drivers--hwmon--s3c-hwmon.ko-entry_point_ldv-val-v0.8.cil.out.i[37767,37780] [2022-02-20 22:06:57,806 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 22:06:57,837 INFO L203 MainTranslator]: Completed pre-run [2022-02-20 22:06:57,933 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/ldv-validator-v0.8/linux-stable-af3071a-1-130_7a-drivers--hwmon--s3c-hwmon.ko-entry_point_ldv-val-v0.8.cil.out.i[37767,37780] [2022-02-20 22:06:57,957 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 22:06:57,978 INFO L208 MainTranslator]: Completed translation [2022-02-20 22:06:57,978 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 10:06:57 WrapperNode [2022-02-20 22:06:57,978 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-02-20 22:06:57,979 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2022-02-20 22:06:57,979 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2022-02-20 22:06:57,979 INFO L275 PluginConnector]: Boogie Procedure Inliner initialized [2022-02-20 22:06:57,986 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 10:06:57" (1/1) ... [2022-02-20 22:06:57,999 INFO L185 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 10:06:57" (1/1) ... [2022-02-20 22:06:58,042 INFO L137 Inliner]: procedures = 83, calls = 176, calls flagged for inlining = 31, calls inlined = 25, statements flattened = 509 [2022-02-20 22:06:58,042 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2022-02-20 22:06:58,043 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-02-20 22:06:58,043 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-02-20 22:06:58,043 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-02-20 22:06:58,049 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 10:06:57" (1/1) ... [2022-02-20 22:06:58,049 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 10:06:57" (1/1) ... [2022-02-20 22:06:58,054 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 10:06:57" (1/1) ... [2022-02-20 22:06:58,054 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 10:06:57" (1/1) ... [2022-02-20 22:06:58,068 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 10:06:57" (1/1) ... [2022-02-20 22:06:58,071 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 10:06:57" (1/1) ... [2022-02-20 22:06:58,101 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 10:06:57" (1/1) ... [2022-02-20 22:06:58,105 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-02-20 22:06:58,117 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-02-20 22:06:58,117 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-02-20 22:06:58,129 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-02-20 22:06:58,131 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 10:06:57" (1/1) ... [2022-02-20 22:06:58,137 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 22:06:58,145 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 22:06:58,209 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) [2022-02-20 22:06:58,229 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Waiting until timeout for monitored process [2022-02-20 22:06:58,286 INFO L130 BoogieDeclarations]: Found specification of procedure s3c_hwmon_remove_raw [2022-02-20 22:06:58,287 INFO L138 BoogieDeclarations]: Found implementation of procedure s3c_hwmon_remove_raw [2022-02-20 22:06:58,287 INFO L130 BoogieDeclarations]: Found specification of procedure s3c_hwmon_probe [2022-02-20 22:06:58,287 INFO L138 BoogieDeclarations]: Found implementation of procedure s3c_hwmon_probe [2022-02-20 22:06:58,287 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-02-20 22:06:58,287 INFO L130 BoogieDeclarations]: Found specification of procedure ldv_undef_int [2022-02-20 22:06:58,287 INFO L138 BoogieDeclarations]: Found implementation of procedure ldv_undef_int [2022-02-20 22:06:58,288 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnStack [2022-02-20 22:06:58,288 INFO L130 BoogieDeclarations]: Found specification of procedure write~$Pointer$ [2022-02-20 22:06:58,288 INFO L130 BoogieDeclarations]: Found specification of procedure ldv_stop [2022-02-20 22:06:58,288 INFO L138 BoogieDeclarations]: Found implementation of procedure ldv_stop [2022-02-20 22:06:58,288 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-02-20 22:06:58,289 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.meminit [2022-02-20 22:06:58,289 INFO L138 BoogieDeclarations]: Found implementation of procedure #Ultimate.meminit [2022-02-20 22:06:58,289 INFO L130 BoogieDeclarations]: Found specification of procedure read~$Pointer$ [2022-02-20 22:06:58,289 INFO L130 BoogieDeclarations]: Found specification of procedure PTR_ERR [2022-02-20 22:06:58,289 INFO L138 BoogieDeclarations]: Found implementation of procedure PTR_ERR [2022-02-20 22:06:58,289 INFO L130 BoogieDeclarations]: Found specification of procedure ldv_is_err [2022-02-20 22:06:58,289 INFO L138 BoogieDeclarations]: Found implementation of procedure ldv_is_err [2022-02-20 22:06:58,289 INFO L130 BoogieDeclarations]: Found specification of procedure ldv_malloc [2022-02-20 22:06:58,290 INFO L138 BoogieDeclarations]: Found implementation of procedure ldv_malloc [2022-02-20 22:06:58,290 INFO L130 BoogieDeclarations]: Found specification of procedure s3c_hwmon_remove_attr [2022-02-20 22:06:58,290 INFO L138 BoogieDeclarations]: Found implementation of procedure s3c_hwmon_remove_attr [2022-02-20 22:06:58,290 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-02-20 22:06:58,290 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~$Pointer$ [2022-02-20 22:06:58,290 INFO L130 BoogieDeclarations]: Found specification of procedure platform_get_drvdata [2022-02-20 22:06:58,290 INFO L138 BoogieDeclarations]: Found implementation of procedure platform_get_drvdata [2022-02-20 22:06:58,290 INFO L130 BoogieDeclarations]: Found specification of procedure hwmon_device_unregister [2022-02-20 22:06:58,291 INFO L138 BoogieDeclarations]: Found implementation of procedure hwmon_device_unregister [2022-02-20 22:06:58,291 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-02-20 22:06:58,291 INFO L130 BoogieDeclarations]: Found specification of procedure s3c_adc_release [2022-02-20 22:06:58,291 INFO L138 BoogieDeclarations]: Found implementation of procedure s3c_adc_release [2022-02-20 22:06:58,292 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-02-20 22:06:58,292 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-02-20 22:06:58,292 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-02-20 22:06:58,292 INFO L130 BoogieDeclarations]: Found specification of procedure s3c_hwmon_remove [2022-02-20 22:06:58,292 INFO L138 BoogieDeclarations]: Found implementation of procedure s3c_hwmon_remove [2022-02-20 22:06:58,292 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnHeap [2022-02-20 22:06:58,292 INFO L130 BoogieDeclarations]: Found specification of procedure device_remove_file [2022-02-20 22:06:58,293 INFO L138 BoogieDeclarations]: Found implementation of procedure device_remove_file [2022-02-20 22:06:58,293 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-02-20 22:06:58,293 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-02-20 22:06:58,293 INFO L130 BoogieDeclarations]: Found specification of procedure ldv_device_create_file [2022-02-20 22:06:58,293 INFO L138 BoogieDeclarations]: Found implementation of procedure ldv_device_create_file [2022-02-20 22:06:58,293 INFO L130 BoogieDeclarations]: Found specification of procedure IS_ERR [2022-02-20 22:06:58,294 INFO L138 BoogieDeclarations]: Found implementation of procedure IS_ERR [2022-02-20 22:06:58,520 INFO L234 CfgBuilder]: Building ICFG [2022-02-20 22:06:58,521 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-02-20 22:06:58,894 INFO L766 $ProcedureCfgBuilder]: dead code at ProgramPoint ldv_stopFINAL: assume true; [2022-02-20 22:06:59,050 INFO L275 CfgBuilder]: Performing block encoding [2022-02-20 22:06:59,057 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-02-20 22:06:59,057 INFO L299 CfgBuilder]: Removed 0 assume(true) statements. [2022-02-20 22:06:59,059 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 10:06:59 BoogieIcfgContainer [2022-02-20 22:06:59,059 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-02-20 22:06:59,060 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-02-20 22:06:59,060 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-02-20 22:06:59,062 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-02-20 22:06:59,063 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 20.02 10:06:57" (1/3) ... [2022-02-20 22:06:59,063 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@7b441380 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 10:06:59, skipping insertion in model container [2022-02-20 22:06:59,063 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 10:06:57" (2/3) ... [2022-02-20 22:06:59,063 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@7b441380 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 10:06:59, skipping insertion in model container [2022-02-20 22:06:59,064 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 10:06:59" (3/3) ... [2022-02-20 22:06:59,064 INFO L111 eAbstractionObserver]: Analyzing ICFG linux-stable-af3071a-1-130_7a-drivers--hwmon--s3c-hwmon.ko-entry_point_ldv-val-v0.8.cil.out.i [2022-02-20 22:06:59,068 INFO L205 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-02-20 22:06:59,068 INFO L164 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-02-20 22:06:59,106 INFO L338 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-02-20 22:06:59,113 INFO L339 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=FPandBP, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mHoare=true, mAutomataTypeConcurrency=PETRI_NET, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=LoopsAndPotentialCycles, mDumpOnlyReuseAutomata=false, mLimitTraceHistogram=0, mErrorLocTimeLimit=0, mLimitPathProgramCount=0, mCollectInterpolantStatistics=true, mHeuristicEmptinessCheck=false, mHeuristicEmptinessCheckAStarHeuristic=ZERO, mHeuristicEmptinessCheckAStarHeuristicRandomSeed=1337, mHeuristicEmptinessCheckSmtFeatureScoringMethod=DAGSIZE, mSMTFeatureExtraction=false, mSMTFeatureExtractionDumpPath=., mOverrideInterpolantAutomaton=false, mMcrInterpolantMethod=WP, mLoopAccelerationTechnique=FAST_UPR [2022-02-20 22:06:59,113 INFO L340 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-02-20 22:06:59,150 INFO L276 IsEmpty]: Start isEmpty. Operand has 206 states, 148 states have (on average 1.2905405405405406) internal successors, (191), 154 states have internal predecessors, (191), 40 states have call successors, (40), 17 states have call predecessors, (40), 16 states have return successors, (36), 36 states have call predecessors, (36), 36 states have call successors, (36) [2022-02-20 22:06:59,168 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 73 [2022-02-20 22:06:59,168 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 22:06:59,169 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 22:06:59,169 INFO L402 AbstractCegarLoop]: === Iteration 1 === Targeting ldv_device_create_fileErr0ASSERT_VIOLATIONERROR_FUNCTION === [ldv_device_create_fileErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 22:06:59,173 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 22:06:59,173 INFO L85 PathProgramCache]: Analyzing trace with hash 1866237492, now seen corresponding path program 1 times [2022-02-20 22:06:59,180 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 22:06:59,180 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1875258462] [2022-02-20 22:06:59,182 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 22:06:59,183 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 22:06:59,414 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:06:59,521 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 18 [2022-02-20 22:06:59,528 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:06:59,553 INFO L290 TraceCheckUtils]: 0: Hoare triple {239#(and (= |old(#length)| |#length|) (= |old(#valid)| |#valid|))} ~size := #in~size;havoc ~p~0.base, ~p~0.offset;havoc ~tmp~0.base, ~tmp~0.offset;havoc ~tmp___0~0;assume -2147483648 <= #t~nondet29 && #t~nondet29 <= 2147483647;~tmp___0~0 := #t~nondet29;havoc #t~nondet29; {209#true} is VALID [2022-02-20 22:06:59,553 INFO L290 TraceCheckUtils]: 1: Hoare triple {209#true} assume 0 != ~tmp___0~0;#res.base, #res.offset := 0, 0; {209#true} is VALID [2022-02-20 22:06:59,554 INFO L290 TraceCheckUtils]: 2: Hoare triple {209#true} assume true; {209#true} is VALID [2022-02-20 22:06:59,554 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {209#true} {210#false} #424#return; {210#false} is VALID [2022-02-20 22:06:59,555 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 25 [2022-02-20 22:06:59,572 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:06:59,582 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 1 [2022-02-20 22:06:59,584 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:06:59,604 INFO L290 TraceCheckUtils]: 0: Hoare triple {209#true} ~ptr.base, ~ptr.offset := #in~ptr.base, #in~ptr.offset;#res := (if 0 == (if (~ptr.base + ~ptr.offset) % 18446744073709551616 > 2012 then 1 else 0) then 0 else 1); {209#true} is VALID [2022-02-20 22:06:59,605 INFO L290 TraceCheckUtils]: 1: Hoare triple {209#true} assume true; {209#true} is VALID [2022-02-20 22:06:59,605 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {209#true} {209#true} #494#return; {209#true} is VALID [2022-02-20 22:06:59,605 INFO L290 TraceCheckUtils]: 0: Hoare triple {209#true} ~ptr.base, ~ptr.offset := #in~ptr.base, #in~ptr.offset;havoc ~tmp~15; {209#true} is VALID [2022-02-20 22:06:59,605 INFO L272 TraceCheckUtils]: 1: Hoare triple {209#true} call #t~ret121 := ldv_is_err(~ptr.base, ~ptr.offset); {209#true} is VALID [2022-02-20 22:06:59,606 INFO L290 TraceCheckUtils]: 2: Hoare triple {209#true} ~ptr.base, ~ptr.offset := #in~ptr.base, #in~ptr.offset;#res := (if 0 == (if (~ptr.base + ~ptr.offset) % 18446744073709551616 > 2012 then 1 else 0) then 0 else 1); {209#true} is VALID [2022-02-20 22:06:59,606 INFO L290 TraceCheckUtils]: 3: Hoare triple {209#true} assume true; {209#true} is VALID [2022-02-20 22:06:59,606 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {209#true} {209#true} #494#return; {209#true} is VALID [2022-02-20 22:06:59,606 INFO L290 TraceCheckUtils]: 5: Hoare triple {209#true} ~tmp~15 := #t~ret121;havoc #t~ret121;#res := ~tmp~15 % 256; {209#true} is VALID [2022-02-20 22:06:59,606 INFO L290 TraceCheckUtils]: 6: Hoare triple {209#true} assume true; {209#true} is VALID [2022-02-20 22:06:59,607 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {209#true} {210#false} #426#return; {210#false} is VALID [2022-02-20 22:06:59,607 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 38 [2022-02-20 22:06:59,609 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:06:59,621 INFO L290 TraceCheckUtils]: 0: Hoare triple {239#(and (= |old(#length)| |#length|) (= |old(#valid)| |#valid|))} ~size := #in~size;havoc ~p~0.base, ~p~0.offset;havoc ~tmp~0.base, ~tmp~0.offset;havoc ~tmp___0~0;assume -2147483648 <= #t~nondet29 && #t~nondet29 <= 2147483647;~tmp___0~0 := #t~nondet29;havoc #t~nondet29; {209#true} is VALID [2022-02-20 22:06:59,622 INFO L290 TraceCheckUtils]: 1: Hoare triple {209#true} assume 0 != ~tmp___0~0;#res.base, #res.offset := 0, 0; {209#true} is VALID [2022-02-20 22:06:59,622 INFO L290 TraceCheckUtils]: 2: Hoare triple {209#true} assume true; {209#true} is VALID [2022-02-20 22:06:59,622 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {209#true} {210#false} #430#return; {210#false} is VALID [2022-02-20 22:06:59,622 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 45 [2022-02-20 22:06:59,627 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:06:59,635 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 1 [2022-02-20 22:06:59,637 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:06:59,643 INFO L290 TraceCheckUtils]: 0: Hoare triple {209#true} ~ptr.base, ~ptr.offset := #in~ptr.base, #in~ptr.offset;#res := (if 0 == (if (~ptr.base + ~ptr.offset) % 18446744073709551616 > 2012 then 1 else 0) then 0 else 1); {209#true} is VALID [2022-02-20 22:06:59,643 INFO L290 TraceCheckUtils]: 1: Hoare triple {209#true} assume true; {209#true} is VALID [2022-02-20 22:06:59,644 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {209#true} {209#true} #494#return; {209#true} is VALID [2022-02-20 22:06:59,644 INFO L290 TraceCheckUtils]: 0: Hoare triple {209#true} ~ptr.base, ~ptr.offset := #in~ptr.base, #in~ptr.offset;havoc ~tmp~15; {209#true} is VALID [2022-02-20 22:06:59,645 INFO L272 TraceCheckUtils]: 1: Hoare triple {209#true} call #t~ret121 := ldv_is_err(~ptr.base, ~ptr.offset); {209#true} is VALID [2022-02-20 22:06:59,645 INFO L290 TraceCheckUtils]: 2: Hoare triple {209#true} ~ptr.base, ~ptr.offset := #in~ptr.base, #in~ptr.offset;#res := (if 0 == (if (~ptr.base + ~ptr.offset) % 18446744073709551616 > 2012 then 1 else 0) then 0 else 1); {209#true} is VALID [2022-02-20 22:06:59,645 INFO L290 TraceCheckUtils]: 3: Hoare triple {209#true} assume true; {209#true} is VALID [2022-02-20 22:06:59,646 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {209#true} {209#true} #494#return; {209#true} is VALID [2022-02-20 22:06:59,646 INFO L290 TraceCheckUtils]: 5: Hoare triple {209#true} ~tmp~15 := #t~ret121;havoc #t~ret121;#res := ~tmp~15 % 256; {209#true} is VALID [2022-02-20 22:06:59,647 INFO L290 TraceCheckUtils]: 6: Hoare triple {209#true} assume true; {209#true} is VALID [2022-02-20 22:06:59,647 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {209#true} {210#false} #432#return; {210#false} is VALID [2022-02-20 22:06:59,647 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 64 [2022-02-20 22:06:59,650 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:06:59,655 INFO L290 TraceCheckUtils]: 0: Hoare triple {209#true} havoc ~tmp~4;assume -2147483648 <= #t~nondet37 && #t~nondet37 <= 2147483647;~tmp~4 := #t~nondet37;havoc #t~nondet37;#res := ~tmp~4; {209#true} is VALID [2022-02-20 22:06:59,656 INFO L290 TraceCheckUtils]: 1: Hoare triple {209#true} assume true; {209#true} is VALID [2022-02-20 22:06:59,656 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {209#true} {210#false} #488#return; {210#false} is VALID [2022-02-20 22:06:59,660 INFO L290 TraceCheckUtils]: 0: Hoare triple {209#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(94, 2);call #Ultimate.allocInit(4, 3);call write~init~int(60, 3, 0, 1);call write~init~int(55, 3, 1, 1);call write~init~int(62, 3, 2, 1);call write~init~int(0, 3, 3, 1);call #Ultimate.allocInit(20, 4);call #Ultimate.allocInit(4, 5);call write~init~int(37, 5, 0, 1);call write~init~int(100, 5, 1, 1);call write~init~int(10, 5, 2, 1);call write~init~int(0, 5, 3, 1);call #Ultimate.allocInit(4, 6);call write~init~int(37, 6, 0, 1);call write~init~int(115, 6, 1, 1);call write~init~int(10, 6, 2, 1);call write~init~int(0, 6, 3, 1);call #Ultimate.allocInit(11, 7);call #Ultimate.allocInit(34, 8);call #Ultimate.allocInit(11, 9);call #Ultimate.allocInit(34, 10);call #Ultimate.allocInit(27, 11);call #Ultimate.allocInit(11, 12);call #Ultimate.allocInit(13, 13);call #Ultimate.allocInit(21, 14);call #Ultimate.allocInit(30, 15);call #Ultimate.allocInit(33, 16);call #Ultimate.allocInit(25, 17);call #Ultimate.allocInit(27, 18);call #Ultimate.allocInit(10, 19);~LDV_IN_INTERRUPT~0 := 1;~ref_cnt~0 := 0;~ldv_state_variable_1~0 := 0;~s3c_hwmon_driver_group1~0.base, ~s3c_hwmon_driver_group1~0.offset := 0, 0;~probed_1~0 := 0;~ldv_state_variable_0~0 := 0;~#s3c_hwmon_driver~0.base, ~#s3c_hwmon_driver~0.offset := 20, 0;call #Ultimate.allocInit(153, 20);call write~init~$Pointer$(#funAddr~s3c_hwmon_probe.base, #funAddr~s3c_hwmon_probe.offset, ~#s3c_hwmon_driver~0.base, ~#s3c_hwmon_driver~0.offset, 8);call write~init~$Pointer$(#funAddr~s3c_hwmon_remove.base, #funAddr~s3c_hwmon_remove.offset, ~#s3c_hwmon_driver~0.base, 8 + ~#s3c_hwmon_driver~0.offset, 8);call write~init~$Pointer$(0, 0, ~#s3c_hwmon_driver~0.base, 16 + ~#s3c_hwmon_driver~0.offset, 8);call write~init~$Pointer$(0, 0, ~#s3c_hwmon_driver~0.base, 24 + ~#s3c_hwmon_driver~0.offset, 8);call write~init~$Pointer$(0, 0, ~#s3c_hwmon_driver~0.base, 32 + ~#s3c_hwmon_driver~0.offset, 8);call write~init~$Pointer$(19, 0, ~#s3c_hwmon_driver~0.base, 40 + ~#s3c_hwmon_driver~0.offset, 8);call write~init~$Pointer$(0, 0, ~#s3c_hwmon_driver~0.base, 48 + ~#s3c_hwmon_driver~0.offset, 8);call write~init~$Pointer$(~#__this_module~0.base, ~#__this_module~0.offset, ~#s3c_hwmon_driver~0.base, 56 + ~#s3c_hwmon_driver~0.offset, 8);call write~init~$Pointer$(0, 0, ~#s3c_hwmon_driver~0.base, 64 + ~#s3c_hwmon_driver~0.offset, 8);call write~init~int(0, ~#s3c_hwmon_driver~0.base, 72 + ~#s3c_hwmon_driver~0.offset, 1);call write~init~$Pointer$(0, 0, ~#s3c_hwmon_driver~0.base, 73 + ~#s3c_hwmon_driver~0.offset, 8);call write~init~$Pointer$(0, 0, ~#s3c_hwmon_driver~0.base, 81 + ~#s3c_hwmon_driver~0.offset, 8);call write~init~$Pointer$(0, 0, ~#s3c_hwmon_driver~0.base, 89 + ~#s3c_hwmon_driver~0.offset, 8);call write~init~$Pointer$(0, 0, ~#s3c_hwmon_driver~0.base, 97 + ~#s3c_hwmon_driver~0.offset, 8);call write~init~$Pointer$(0, 0, ~#s3c_hwmon_driver~0.base, 105 + ~#s3c_hwmon_driver~0.offset, 8);call write~init~$Pointer$(0, 0, ~#s3c_hwmon_driver~0.base, 113 + ~#s3c_hwmon_driver~0.offset, 8);call write~init~$Pointer$(0, 0, ~#s3c_hwmon_driver~0.base, 121 + ~#s3c_hwmon_driver~0.offset, 8);call write~init~$Pointer$(0, 0, ~#s3c_hwmon_driver~0.base, 129 + ~#s3c_hwmon_driver~0.offset, 8);call write~init~$Pointer$(0, 0, ~#s3c_hwmon_driver~0.base, 137 + ~#s3c_hwmon_driver~0.offset, 8);call write~init~$Pointer$(0, 0, ~#s3c_hwmon_driver~0.base, 145 + ~#s3c_hwmon_driver~0.offset, 8);~ldv_retval_0~0 := 0;~ldv_retval_1~0 := 0;~ldv_retval_2~0 := 0;~ldv_count_1~0 := 0;~ldv_count_2~0 := 0; {209#true} is VALID [2022-02-20 22:06:59,660 INFO L290 TraceCheckUtils]: 1: Hoare triple {209#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet110#1, main_#t~switch111#1, main_#t~nondet112#1, main_#t~switch113#1, main_#t~ret114#1, main_#t~ret115#1, main_#t~ret116#1, main_#t~nondet117#1, main_#t~switch118#1, main_#t~ret119#1, main_~tmp~13#1, main_~tmp___0~4#1, main_~tmp___1~1#1;havoc main_~tmp~13#1;havoc main_~tmp___0~4#1;havoc main_~tmp___1~1#1;assume { :begin_inline_ldv_initialize } true; {209#true} is VALID [2022-02-20 22:06:59,661 INFO L290 TraceCheckUtils]: 2: Hoare triple {209#true} assume { :end_inline_ldv_initialize } true;~ldv_state_variable_1~0 := 0;~ref_cnt~0 := 0;~ldv_state_variable_0~0 := 1; {211#(= ~ldv_state_variable_1~0 0)} is VALID [2022-02-20 22:06:59,662 INFO L290 TraceCheckUtils]: 3: Hoare triple {211#(= ~ldv_state_variable_1~0 0)} assume -2147483648 <= main_#t~nondet110#1 && main_#t~nondet110#1 <= 2147483647;main_~tmp~13#1 := main_#t~nondet110#1;havoc main_#t~nondet110#1;main_#t~switch111#1 := 0 == main_~tmp~13#1; {211#(= ~ldv_state_variable_1~0 0)} is VALID [2022-02-20 22:06:59,662 INFO L290 TraceCheckUtils]: 4: Hoare triple {211#(= ~ldv_state_variable_1~0 0)} assume main_#t~switch111#1; {211#(= ~ldv_state_variable_1~0 0)} is VALID [2022-02-20 22:06:59,663 INFO L290 TraceCheckUtils]: 5: Hoare triple {211#(= ~ldv_state_variable_1~0 0)} assume 0 != ~ldv_state_variable_1~0;assume -2147483648 <= main_#t~nondet112#1 && main_#t~nondet112#1 <= 2147483647;main_~tmp___0~4#1 := main_#t~nondet112#1;havoc main_#t~nondet112#1;main_#t~switch113#1 := 0 == main_~tmp___0~4#1; {210#false} is VALID [2022-02-20 22:06:59,663 INFO L290 TraceCheckUtils]: 6: Hoare triple {210#false} assume main_#t~switch113#1; {210#false} is VALID [2022-02-20 22:06:59,663 INFO L290 TraceCheckUtils]: 7: Hoare triple {210#false} assume 1 == ~ldv_state_variable_1~0; {210#false} is VALID [2022-02-20 22:06:59,664 INFO L272 TraceCheckUtils]: 8: Hoare triple {210#false} call main_#t~ret114#1 := s3c_hwmon_probe(~s3c_hwmon_driver_group1~0.base, ~s3c_hwmon_driver_group1~0.offset); {210#false} is VALID [2022-02-20 22:06:59,664 INFO L290 TraceCheckUtils]: 9: Hoare triple {210#false} ~dev#1.base, ~dev#1.offset := #in~dev#1.base, #in~dev#1.offset;havoc ~pdata~2#1.base, ~pdata~2#1.offset;havoc ~hwmon~1#1.base, ~hwmon~1#1.offset;havoc ~ret~3#1;havoc ~i~0#1;havoc ~tmp~9#1.base, ~tmp~9#1.offset;call ~#__key~0#1.base, ~#__key~0#1.offset := #Ultimate.allocOnStack(8);havoc ~tmp___0~3#1;havoc ~tmp___1~0#1;havoc ~tmp___2~0#1;havoc ~tmp___3~0#1;havoc ~cfg~2#1.base, ~cfg~2#1.offset;call #t~mem76#1.base, #t~mem76#1.offset := read~$Pointer$(~dev#1.base, 277 + ~dev#1.offset, 8);~pdata~2#1.base, ~pdata~2#1.offset := #t~mem76#1.base, #t~mem76#1.offset;havoc #t~mem76#1.base, #t~mem76#1.offset;~ret~3#1 := 0; {210#false} is VALID [2022-02-20 22:06:59,664 INFO L290 TraceCheckUtils]: 10: Hoare triple {210#false} assume !(0 == (~pdata~2#1.base + ~pdata~2#1.offset) % 18446744073709551616);assume { :begin_inline_ldv_kzalloc_9 } true;ldv_kzalloc_9_#in~size#1, ldv_kzalloc_9_#in~flags#1 := 800, 208;havoc ldv_kzalloc_9_#res#1.base, ldv_kzalloc_9_#res#1.offset;havoc ldv_kzalloc_9_#t~ret124#1.base, ldv_kzalloc_9_#t~ret124#1.offset, ldv_kzalloc_9_~size#1, ldv_kzalloc_9_~flags#1, ldv_kzalloc_9_~tmp~18#1.base, ldv_kzalloc_9_~tmp~18#1.offset;ldv_kzalloc_9_~size#1 := ldv_kzalloc_9_#in~size#1;ldv_kzalloc_9_~flags#1 := ldv_kzalloc_9_#in~flags#1;havoc ldv_kzalloc_9_~tmp~18#1.base, ldv_kzalloc_9_~tmp~18#1.offset;assume { :begin_inline_ldv_zalloc } true;ldv_zalloc_#in~size#1 := ldv_kzalloc_9_~size#1;havoc ldv_zalloc_#res#1.base, ldv_zalloc_#res#1.offset;havoc ldv_zalloc_#t~nondet32#1, ldv_zalloc_#t~malloc33#1.base, ldv_zalloc_#t~malloc33#1.offset, ldv_zalloc_#t~ret34#1, ldv_zalloc_~size#1, ldv_zalloc_~p~1#1.base, ldv_zalloc_~p~1#1.offset, ldv_zalloc_~tmp~1#1.base, ldv_zalloc_~tmp~1#1.offset, ldv_zalloc_~tmp___0~1#1;ldv_zalloc_~size#1 := ldv_zalloc_#in~size#1;havoc ldv_zalloc_~p~1#1.base, ldv_zalloc_~p~1#1.offset;havoc ldv_zalloc_~tmp~1#1.base, ldv_zalloc_~tmp~1#1.offset;havoc ldv_zalloc_~tmp___0~1#1;assume -2147483648 <= ldv_zalloc_#t~nondet32#1 && ldv_zalloc_#t~nondet32#1 <= 2147483647;ldv_zalloc_~tmp___0~1#1 := ldv_zalloc_#t~nondet32#1;havoc ldv_zalloc_#t~nondet32#1; {210#false} is VALID [2022-02-20 22:06:59,665 INFO L290 TraceCheckUtils]: 11: Hoare triple {210#false} assume 0 != ldv_zalloc_~tmp___0~1#1;ldv_zalloc_#res#1.base, ldv_zalloc_#res#1.offset := 0, 0; {210#false} is VALID [2022-02-20 22:06:59,665 INFO L290 TraceCheckUtils]: 12: Hoare triple {210#false} ldv_kzalloc_9_#t~ret124#1.base, ldv_kzalloc_9_#t~ret124#1.offset := ldv_zalloc_#res#1.base, ldv_zalloc_#res#1.offset;assume { :end_inline_ldv_zalloc } true;ldv_kzalloc_9_~tmp~18#1.base, ldv_kzalloc_9_~tmp~18#1.offset := ldv_kzalloc_9_#t~ret124#1.base, ldv_kzalloc_9_#t~ret124#1.offset;havoc ldv_kzalloc_9_#t~ret124#1.base, ldv_kzalloc_9_#t~ret124#1.offset;ldv_kzalloc_9_#res#1.base, ldv_kzalloc_9_#res#1.offset := ldv_kzalloc_9_~tmp~18#1.base, ldv_kzalloc_9_~tmp~18#1.offset; {210#false} is VALID [2022-02-20 22:06:59,665 INFO L290 TraceCheckUtils]: 13: Hoare triple {210#false} #t~ret78#1.base, #t~ret78#1.offset := ldv_kzalloc_9_#res#1.base, ldv_kzalloc_9_#res#1.offset;assume { :end_inline_ldv_kzalloc_9 } true;~tmp~9#1.base, ~tmp~9#1.offset := #t~ret78#1.base, #t~ret78#1.offset;havoc #t~ret78#1.base, #t~ret78#1.offset;~hwmon~1#1.base, ~hwmon~1#1.offset := ~tmp~9#1.base, ~tmp~9#1.offset; {210#false} is VALID [2022-02-20 22:06:59,666 INFO L290 TraceCheckUtils]: 14: Hoare triple {210#false} assume !(0 == (~hwmon~1#1.base + ~hwmon~1#1.offset) % 18446744073709551616);assume { :begin_inline_platform_set_drvdata } true;platform_set_drvdata_#in~pdev#1.base, platform_set_drvdata_#in~pdev#1.offset, platform_set_drvdata_#in~data#1.base, platform_set_drvdata_#in~data#1.offset := ~dev#1.base, ~dev#1.offset, ~hwmon~1#1.base, ~hwmon~1#1.offset;havoc platform_set_drvdata_~pdev#1.base, platform_set_drvdata_~pdev#1.offset, platform_set_drvdata_~data#1.base, platform_set_drvdata_~data#1.offset;platform_set_drvdata_~pdev#1.base, platform_set_drvdata_~pdev#1.offset := platform_set_drvdata_#in~pdev#1.base, platform_set_drvdata_#in~pdev#1.offset;platform_set_drvdata_~data#1.base, platform_set_drvdata_~data#1.offset := platform_set_drvdata_#in~data#1.base, platform_set_drvdata_#in~data#1.offset;assume { :begin_inline_dev_set_drvdata } true;dev_set_drvdata_#in~arg0#1.base, dev_set_drvdata_#in~arg0#1.offset, dev_set_drvdata_#in~arg1#1.base, dev_set_drvdata_#in~arg1#1.offset := platform_set_drvdata_~pdev#1.base, 12 + platform_set_drvdata_~pdev#1.offset, platform_set_drvdata_~data#1.base, platform_set_drvdata_~data#1.offset;havoc dev_set_drvdata_~arg0#1.base, dev_set_drvdata_~arg0#1.offset, dev_set_drvdata_~arg1#1.base, dev_set_drvdata_~arg1#1.offset;dev_set_drvdata_~arg0#1.base, dev_set_drvdata_~arg0#1.offset := dev_set_drvdata_#in~arg0#1.base, dev_set_drvdata_#in~arg0#1.offset;dev_set_drvdata_~arg1#1.base, dev_set_drvdata_~arg1#1.offset := dev_set_drvdata_#in~arg1#1.base, dev_set_drvdata_#in~arg1#1.offset; {210#false} is VALID [2022-02-20 22:06:59,666 INFO L290 TraceCheckUtils]: 15: Hoare triple {210#false} assume { :end_inline_dev_set_drvdata } true; {210#false} is VALID [2022-02-20 22:06:59,668 INFO L290 TraceCheckUtils]: 16: Hoare triple {210#false} assume { :end_inline_platform_set_drvdata } true;assume { :begin_inline___mutex_init } true;__mutex_init_#in~arg0#1.base, __mutex_init_#in~arg0#1.offset, __mutex_init_#in~arg1#1.base, __mutex_init_#in~arg1#1.offset, __mutex_init_#in~arg2#1.base, __mutex_init_#in~arg2#1.offset := ~hwmon~1#1.base, ~hwmon~1#1.offset, 13, 0, ~#__key~0#1.base, ~#__key~0#1.offset;havoc __mutex_init_~arg0#1.base, __mutex_init_~arg0#1.offset, __mutex_init_~arg1#1.base, __mutex_init_~arg1#1.offset, __mutex_init_~arg2#1.base, __mutex_init_~arg2#1.offset;__mutex_init_~arg0#1.base, __mutex_init_~arg0#1.offset := __mutex_init_#in~arg0#1.base, __mutex_init_#in~arg0#1.offset;__mutex_init_~arg1#1.base, __mutex_init_~arg1#1.offset := __mutex_init_#in~arg1#1.base, __mutex_init_#in~arg1#1.offset;__mutex_init_~arg2#1.base, __mutex_init_~arg2#1.offset := __mutex_init_#in~arg2#1.base, __mutex_init_#in~arg2#1.offset; {210#false} is VALID [2022-02-20 22:06:59,668 INFO L290 TraceCheckUtils]: 17: Hoare triple {210#false} assume { :end_inline___mutex_init } true;assume { :begin_inline_s3c_adc_register } true;s3c_adc_register_#in~arg0#1.base, s3c_adc_register_#in~arg0#1.offset, s3c_adc_register_#in~arg1#1.base, s3c_adc_register_#in~arg1#1.offset, s3c_adc_register_#in~arg2#1.base, s3c_adc_register_#in~arg2#1.offset, s3c_adc_register_#in~arg3#1 := ~dev#1.base, ~dev#1.offset, 0, 0, 0, 0, 0;havoc s3c_adc_register_#res#1.base, s3c_adc_register_#res#1.offset;havoc s3c_adc_register_#t~ret137#1.base, s3c_adc_register_#t~ret137#1.offset, s3c_adc_register_~arg0#1.base, s3c_adc_register_~arg0#1.offset, s3c_adc_register_~arg1#1.base, s3c_adc_register_~arg1#1.offset, s3c_adc_register_~arg2#1.base, s3c_adc_register_~arg2#1.offset, s3c_adc_register_~arg3#1;s3c_adc_register_~arg0#1.base, s3c_adc_register_~arg0#1.offset := s3c_adc_register_#in~arg0#1.base, s3c_adc_register_#in~arg0#1.offset;s3c_adc_register_~arg1#1.base, s3c_adc_register_~arg1#1.offset := s3c_adc_register_#in~arg1#1.base, s3c_adc_register_#in~arg1#1.offset;s3c_adc_register_~arg2#1.base, s3c_adc_register_~arg2#1.offset := s3c_adc_register_#in~arg2#1.base, s3c_adc_register_#in~arg2#1.offset;s3c_adc_register_~arg3#1 := s3c_adc_register_#in~arg3#1; {210#false} is VALID [2022-02-20 22:06:59,669 INFO L272 TraceCheckUtils]: 18: Hoare triple {210#false} call s3c_adc_register_#t~ret137#1.base, s3c_adc_register_#t~ret137#1.offset := ldv_malloc(0); {239#(and (= |old(#length)| |#length|) (= |old(#valid)| |#valid|))} is VALID [2022-02-20 22:06:59,669 INFO L290 TraceCheckUtils]: 19: Hoare triple {239#(and (= |old(#length)| |#length|) (= |old(#valid)| |#valid|))} ~size := #in~size;havoc ~p~0.base, ~p~0.offset;havoc ~tmp~0.base, ~tmp~0.offset;havoc ~tmp___0~0;assume -2147483648 <= #t~nondet29 && #t~nondet29 <= 2147483647;~tmp___0~0 := #t~nondet29;havoc #t~nondet29; {209#true} is VALID [2022-02-20 22:06:59,670 INFO L290 TraceCheckUtils]: 20: Hoare triple {209#true} assume 0 != ~tmp___0~0;#res.base, #res.offset := 0, 0; {209#true} is VALID [2022-02-20 22:06:59,671 INFO L290 TraceCheckUtils]: 21: Hoare triple {209#true} assume true; {209#true} is VALID [2022-02-20 22:06:59,671 INFO L284 TraceCheckUtils]: 22: Hoare quadruple {209#true} {210#false} #424#return; {210#false} is VALID [2022-02-20 22:06:59,671 INFO L290 TraceCheckUtils]: 23: Hoare triple {210#false} s3c_adc_register_#res#1.base, s3c_adc_register_#res#1.offset := s3c_adc_register_#t~ret137#1.base, s3c_adc_register_#t~ret137#1.offset;havoc s3c_adc_register_#t~ret137#1.base, s3c_adc_register_#t~ret137#1.offset; {210#false} is VALID [2022-02-20 22:06:59,671 INFO L290 TraceCheckUtils]: 24: Hoare triple {210#false} #t~ret80#1.base, #t~ret80#1.offset := s3c_adc_register_#res#1.base, s3c_adc_register_#res#1.offset;assume { :end_inline_s3c_adc_register } true;call write~$Pointer$(#t~ret80#1.base, #t~ret80#1.offset, ~hwmon~1#1.base, 152 + ~hwmon~1#1.offset, 8);havoc #t~ret80#1.base, #t~ret80#1.offset;call #t~mem81#1.base, #t~mem81#1.offset := read~$Pointer$(~hwmon~1#1.base, 152 + ~hwmon~1#1.offset, 8); {210#false} is VALID [2022-02-20 22:06:59,671 INFO L272 TraceCheckUtils]: 25: Hoare triple {210#false} call #t~ret82#1 := IS_ERR(#t~mem81#1.base, #t~mem81#1.offset); {209#true} is VALID [2022-02-20 22:06:59,672 INFO L290 TraceCheckUtils]: 26: Hoare triple {209#true} ~ptr.base, ~ptr.offset := #in~ptr.base, #in~ptr.offset;havoc ~tmp~15; {209#true} is VALID [2022-02-20 22:06:59,672 INFO L272 TraceCheckUtils]: 27: Hoare triple {209#true} call #t~ret121 := ldv_is_err(~ptr.base, ~ptr.offset); {209#true} is VALID [2022-02-20 22:06:59,672 INFO L290 TraceCheckUtils]: 28: Hoare triple {209#true} ~ptr.base, ~ptr.offset := #in~ptr.base, #in~ptr.offset;#res := (if 0 == (if (~ptr.base + ~ptr.offset) % 18446744073709551616 > 2012 then 1 else 0) then 0 else 1); {209#true} is VALID [2022-02-20 22:06:59,672 INFO L290 TraceCheckUtils]: 29: Hoare triple {209#true} assume true; {209#true} is VALID [2022-02-20 22:06:59,672 INFO L284 TraceCheckUtils]: 30: Hoare quadruple {209#true} {209#true} #494#return; {209#true} is VALID [2022-02-20 22:06:59,673 INFO L290 TraceCheckUtils]: 31: Hoare triple {209#true} ~tmp~15 := #t~ret121;havoc #t~ret121;#res := ~tmp~15 % 256; {209#true} is VALID [2022-02-20 22:06:59,673 INFO L290 TraceCheckUtils]: 32: Hoare triple {209#true} assume true; {209#true} is VALID [2022-02-20 22:06:59,673 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {209#true} {210#false} #426#return; {210#false} is VALID [2022-02-20 22:06:59,673 INFO L290 TraceCheckUtils]: 34: Hoare triple {210#false} assume -9223372036854775808 <= #t~ret82#1 && #t~ret82#1 <= 9223372036854775807;~tmp___1~0#1 := #t~ret82#1;havoc #t~mem81#1.base, #t~mem81#1.offset;havoc #t~ret82#1; {210#false} is VALID [2022-02-20 22:06:59,673 INFO L290 TraceCheckUtils]: 35: Hoare triple {210#false} assume !(0 != ~tmp___1~0#1);assume { :begin_inline_s3c_hwmon_add_raw } true;s3c_hwmon_add_raw_#in~dev#1.base, s3c_hwmon_add_raw_#in~dev#1.offset := ~dev#1.base, 12 + ~dev#1.offset;havoc s3c_hwmon_add_raw_#res#1;havoc s3c_hwmon_add_raw_~dev#1.base, s3c_hwmon_add_raw_~dev#1.offset;s3c_hwmon_add_raw_~dev#1.base, s3c_hwmon_add_raw_~dev#1.offset := s3c_hwmon_add_raw_#in~dev#1.base, s3c_hwmon_add_raw_#in~dev#1.offset;s3c_hwmon_add_raw_#res#1 := 0; {210#false} is VALID [2022-02-20 22:06:59,674 INFO L290 TraceCheckUtils]: 36: Hoare triple {210#false} #t~ret86#1 := s3c_hwmon_add_raw_#res#1;assume { :end_inline_s3c_hwmon_add_raw } true;assume -2147483648 <= #t~ret86#1 && #t~ret86#1 <= 2147483647;~ret~3#1 := #t~ret86#1;havoc #t~ret86#1; {210#false} is VALID [2022-02-20 22:06:59,674 INFO L290 TraceCheckUtils]: 37: Hoare triple {210#false} assume !(0 != ~ret~3#1);assume { :begin_inline_hwmon_device_register } true;hwmon_device_register_#in~arg0#1.base, hwmon_device_register_#in~arg0#1.offset := ~dev#1.base, 12 + ~dev#1.offset;havoc hwmon_device_register_#res#1.base, hwmon_device_register_#res#1.offset;havoc hwmon_device_register_#t~ret133#1.base, hwmon_device_register_#t~ret133#1.offset, hwmon_device_register_~arg0#1.base, hwmon_device_register_~arg0#1.offset;hwmon_device_register_~arg0#1.base, hwmon_device_register_~arg0#1.offset := hwmon_device_register_#in~arg0#1.base, hwmon_device_register_#in~arg0#1.offset; {210#false} is VALID [2022-02-20 22:06:59,674 INFO L272 TraceCheckUtils]: 38: Hoare triple {210#false} call hwmon_device_register_#t~ret133#1.base, hwmon_device_register_#t~ret133#1.offset := ldv_malloc(1003); {239#(and (= |old(#length)| |#length|) (= |old(#valid)| |#valid|))} is VALID [2022-02-20 22:06:59,674 INFO L290 TraceCheckUtils]: 39: Hoare triple {239#(and (= |old(#length)| |#length|) (= |old(#valid)| |#valid|))} ~size := #in~size;havoc ~p~0.base, ~p~0.offset;havoc ~tmp~0.base, ~tmp~0.offset;havoc ~tmp___0~0;assume -2147483648 <= #t~nondet29 && #t~nondet29 <= 2147483647;~tmp___0~0 := #t~nondet29;havoc #t~nondet29; {209#true} is VALID [2022-02-20 22:06:59,675 INFO L290 TraceCheckUtils]: 40: Hoare triple {209#true} assume 0 != ~tmp___0~0;#res.base, #res.offset := 0, 0; {209#true} is VALID [2022-02-20 22:06:59,675 INFO L290 TraceCheckUtils]: 41: Hoare triple {209#true} assume true; {209#true} is VALID [2022-02-20 22:06:59,675 INFO L284 TraceCheckUtils]: 42: Hoare quadruple {209#true} {210#false} #430#return; {210#false} is VALID [2022-02-20 22:06:59,676 INFO L290 TraceCheckUtils]: 43: Hoare triple {210#false} hwmon_device_register_#res#1.base, hwmon_device_register_#res#1.offset := hwmon_device_register_#t~ret133#1.base, hwmon_device_register_#t~ret133#1.offset;havoc hwmon_device_register_#t~ret133#1.base, hwmon_device_register_#t~ret133#1.offset; {210#false} is VALID [2022-02-20 22:06:59,676 INFO L290 TraceCheckUtils]: 44: Hoare triple {210#false} #t~ret87#1.base, #t~ret87#1.offset := hwmon_device_register_#res#1.base, hwmon_device_register_#res#1.offset;assume { :end_inline_hwmon_device_register } true;call write~$Pointer$(#t~ret87#1.base, #t~ret87#1.offset, ~hwmon~1#1.base, 160 + ~hwmon~1#1.offset, 8);havoc #t~ret87#1.base, #t~ret87#1.offset;call #t~mem88#1.base, #t~mem88#1.offset := read~$Pointer$(~hwmon~1#1.base, 160 + ~hwmon~1#1.offset, 8); {210#false} is VALID [2022-02-20 22:06:59,676 INFO L272 TraceCheckUtils]: 45: Hoare triple {210#false} call #t~ret89#1 := IS_ERR(#t~mem88#1.base, #t~mem88#1.offset); {209#true} is VALID [2022-02-20 22:06:59,676 INFO L290 TraceCheckUtils]: 46: Hoare triple {209#true} ~ptr.base, ~ptr.offset := #in~ptr.base, #in~ptr.offset;havoc ~tmp~15; {209#true} is VALID [2022-02-20 22:06:59,676 INFO L272 TraceCheckUtils]: 47: Hoare triple {209#true} call #t~ret121 := ldv_is_err(~ptr.base, ~ptr.offset); {209#true} is VALID [2022-02-20 22:06:59,677 INFO L290 TraceCheckUtils]: 48: Hoare triple {209#true} ~ptr.base, ~ptr.offset := #in~ptr.base, #in~ptr.offset;#res := (if 0 == (if (~ptr.base + ~ptr.offset) % 18446744073709551616 > 2012 then 1 else 0) then 0 else 1); {209#true} is VALID [2022-02-20 22:06:59,677 INFO L290 TraceCheckUtils]: 49: Hoare triple {209#true} assume true; {209#true} is VALID [2022-02-20 22:06:59,677 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {209#true} {209#true} #494#return; {209#true} is VALID [2022-02-20 22:06:59,677 INFO L290 TraceCheckUtils]: 51: Hoare triple {209#true} ~tmp~15 := #t~ret121;havoc #t~ret121;#res := ~tmp~15 % 256; {209#true} is VALID [2022-02-20 22:06:59,678 INFO L290 TraceCheckUtils]: 52: Hoare triple {209#true} assume true; {209#true} is VALID [2022-02-20 22:06:59,678 INFO L284 TraceCheckUtils]: 53: Hoare quadruple {209#true} {210#false} #432#return; {210#false} is VALID [2022-02-20 22:06:59,678 INFO L290 TraceCheckUtils]: 54: Hoare triple {210#false} assume -9223372036854775808 <= #t~ret89#1 && #t~ret89#1 <= 9223372036854775807;~tmp___3~0#1 := #t~ret89#1;havoc #t~mem88#1.base, #t~mem88#1.offset;havoc #t~ret89#1; {210#false} is VALID [2022-02-20 22:06:59,678 INFO L290 TraceCheckUtils]: 55: Hoare triple {210#false} assume !(0 != ~tmp___3~0#1);~i~0#1 := 0; {210#false} is VALID [2022-02-20 22:06:59,678 INFO L290 TraceCheckUtils]: 56: Hoare triple {210#false} assume ~i~0#1 % 4294967296 <= 7; {210#false} is VALID [2022-02-20 22:06:59,679 INFO L290 TraceCheckUtils]: 57: Hoare triple {210#false} call #t~mem93#1.base, #t~mem93#1.offset := read~$Pointer$(~pdata~2#1.base, ~pdata~2#1.offset + 8 * ~i~0#1, 8);~cfg~2#1.base, ~cfg~2#1.offset := #t~mem93#1.base, #t~mem93#1.offset;havoc #t~mem93#1.base, #t~mem93#1.offset; {210#false} is VALID [2022-02-20 22:06:59,679 INFO L290 TraceCheckUtils]: 58: Hoare triple {210#false} assume !(0 == (~cfg~2#1.base + ~cfg~2#1.offset) % 18446744073709551616);call #t~mem94#1 := read~int(~cfg~2#1.base, 8 + ~cfg~2#1.offset, 4); {210#false} is VALID [2022-02-20 22:06:59,679 INFO L290 TraceCheckUtils]: 59: Hoare triple {210#false} assume #t~mem94#1 % 4294967296 > 65535;havoc #t~mem94#1;havoc #t~nondet95#1; {210#false} is VALID [2022-02-20 22:06:59,679 INFO L290 TraceCheckUtils]: 60: Hoare triple {210#false} call #t~mem96#1 := read~int(~cfg~2#1.base, 12 + ~cfg~2#1.offset, 4); {210#false} is VALID [2022-02-20 22:06:59,680 INFO L290 TraceCheckUtils]: 61: Hoare triple {210#false} assume !(0 == #t~mem96#1 % 4294967296);havoc #t~mem96#1;call #t~mem98#1.base, #t~mem98#1.offset := read~$Pointer$(~pdata~2#1.base, ~pdata~2#1.offset + 8 * ~i~0#1, 8);assume { :begin_inline_s3c_hwmon_create_attr } true;s3c_hwmon_create_attr_#in~dev#1.base, s3c_hwmon_create_attr_#in~dev#1.offset, s3c_hwmon_create_attr_#in~cfg#1.base, s3c_hwmon_create_attr_#in~cfg#1.offset, s3c_hwmon_create_attr_#in~attrs#1.base, s3c_hwmon_create_attr_#in~attrs#1.offset, s3c_hwmon_create_attr_#in~channel#1 := ~dev#1.base, 12 + ~dev#1.offset, #t~mem98#1.base, #t~mem98#1.offset, ~hwmon~1#1.base, 168 + ~hwmon~1#1.offset + 120 * (~i~0#1 % 4294967296), ~i~0#1;havoc s3c_hwmon_create_attr_#res#1;havoc s3c_hwmon_create_attr_#t~nondet69#1, s3c_hwmon_create_attr_#t~ret70#1, s3c_hwmon_create_attr_#t~nondet71#1, s3c_hwmon_create_attr_#t~mem72#1.base, s3c_hwmon_create_attr_#t~mem72#1.offset, s3c_hwmon_create_attr_#t~nondet73#1, s3c_hwmon_create_attr_#t~ret74#1, s3c_hwmon_create_attr_#t~nondet75#1, s3c_hwmon_create_attr_~dev#1.base, s3c_hwmon_create_attr_~dev#1.offset, s3c_hwmon_create_attr_~cfg#1.base, s3c_hwmon_create_attr_~cfg#1.offset, s3c_hwmon_create_attr_~attrs#1.base, s3c_hwmon_create_attr_~attrs#1.offset, s3c_hwmon_create_attr_~channel#1, s3c_hwmon_create_attr_~attr~0#1.base, s3c_hwmon_create_attr_~attr~0#1.offset, s3c_hwmon_create_attr_~ret~2#1;s3c_hwmon_create_attr_~dev#1.base, s3c_hwmon_create_attr_~dev#1.offset := s3c_hwmon_create_attr_#in~dev#1.base, s3c_hwmon_create_attr_#in~dev#1.offset;s3c_hwmon_create_attr_~cfg#1.base, s3c_hwmon_create_attr_~cfg#1.offset := s3c_hwmon_create_attr_#in~cfg#1.base, s3c_hwmon_create_attr_#in~cfg#1.offset;s3c_hwmon_create_attr_~attrs#1.base, s3c_hwmon_create_attr_~attrs#1.offset := s3c_hwmon_create_attr_#in~attrs#1.base, s3c_hwmon_create_attr_#in~attrs#1.offset;s3c_hwmon_create_attr_~channel#1 := s3c_hwmon_create_attr_#in~channel#1;havoc s3c_hwmon_create_attr_~attr~0#1.base, s3c_hwmon_create_attr_~attr~0#1.offset;havoc s3c_hwmon_create_attr_~ret~2#1;havoc s3c_hwmon_create_attr_#t~nondet69#1;s3c_hwmon_create_attr_~attr~0#1.base, s3c_hwmon_create_attr_~attr~0#1.offset := s3c_hwmon_create_attr_~attrs#1.base, s3c_hwmon_create_attr_~attrs#1.offset;call write~int(s3c_hwmon_create_attr_~channel#1, s3c_hwmon_create_attr_~attr~0#1.base, 44 + s3c_hwmon_create_attr_~attr~0#1.offset, 4);call write~$Pointer$(s3c_hwmon_create_attr_~attrs#1.base, 96 + s3c_hwmon_create_attr_~attrs#1.offset, s3c_hwmon_create_attr_~attr~0#1.base, s3c_hwmon_create_attr_~attr~0#1.offset, 8);call write~int(292, s3c_hwmon_create_attr_~attr~0#1.base, 8 + s3c_hwmon_create_attr_~attr~0#1.offset, 4);call write~$Pointer$(#funAddr~s3c_hwmon_ch_show.base, #funAddr~s3c_hwmon_ch_show.offset, s3c_hwmon_create_attr_~attr~0#1.base, 28 + s3c_hwmon_create_attr_~attr~0#1.offset, 8);assume { :begin_inline_ldv_device_create_file_7 } true;ldv_device_create_file_7_#in~ldv_func_arg1#1.base, ldv_device_create_file_7_#in~ldv_func_arg1#1.offset, ldv_device_create_file_7_#in~ldv_func_arg2#1.base, ldv_device_create_file_7_#in~ldv_func_arg2#1.offset := s3c_hwmon_create_attr_~dev#1.base, s3c_hwmon_create_attr_~dev#1.offset, s3c_hwmon_create_attr_~attr~0#1.base, s3c_hwmon_create_attr_~attr~0#1.offset;havoc ldv_device_create_file_7_#res#1;havoc ldv_device_create_file_7_#t~ret122#1, ldv_device_create_file_7_~ldv_func_arg1#1.base, ldv_device_create_file_7_~ldv_func_arg1#1.offset, ldv_device_create_file_7_~ldv_func_arg2#1.base, ldv_device_create_file_7_~ldv_func_arg2#1.offset, ldv_device_create_file_7_~tmp~16#1;ldv_device_create_file_7_~ldv_func_arg1#1.base, ldv_device_create_file_7_~ldv_func_arg1#1.offset := ldv_device_create_file_7_#in~ldv_func_arg1#1.base, ldv_device_create_file_7_#in~ldv_func_arg1#1.offset;ldv_device_create_file_7_~ldv_func_arg2#1.base, ldv_device_create_file_7_~ldv_func_arg2#1.offset := ldv_device_create_file_7_#in~ldv_func_arg2#1.base, ldv_device_create_file_7_#in~ldv_func_arg2#1.offset;havoc ldv_device_create_file_7_~tmp~16#1; {210#false} is VALID [2022-02-20 22:06:59,680 INFO L272 TraceCheckUtils]: 62: Hoare triple {210#false} call ldv_device_create_file_7_#t~ret122#1 := ldv_device_create_file(); {210#false} is VALID [2022-02-20 22:06:59,681 INFO L290 TraceCheckUtils]: 63: Hoare triple {210#false} havoc ~nondetermined~0#1;havoc ~tmp~21#1; {210#false} is VALID [2022-02-20 22:06:59,681 INFO L272 TraceCheckUtils]: 64: Hoare triple {210#false} call #t~ret127#1 := ldv_undef_int(); {209#true} is VALID [2022-02-20 22:06:59,681 INFO L290 TraceCheckUtils]: 65: Hoare triple {209#true} havoc ~tmp~4;assume -2147483648 <= #t~nondet37 && #t~nondet37 <= 2147483647;~tmp~4 := #t~nondet37;havoc #t~nondet37;#res := ~tmp~4; {209#true} is VALID [2022-02-20 22:06:59,681 INFO L290 TraceCheckUtils]: 66: Hoare triple {209#true} assume true; {209#true} is VALID [2022-02-20 22:06:59,682 INFO L284 TraceCheckUtils]: 67: Hoare quadruple {209#true} {210#false} #488#return; {210#false} is VALID [2022-02-20 22:06:59,683 INFO L290 TraceCheckUtils]: 68: Hoare triple {210#false} assume -2147483648 <= #t~ret127#1 && #t~ret127#1 <= 2147483647;~nondetermined~0#1 := #t~ret127#1;havoc #t~ret127#1; {210#false} is VALID [2022-02-20 22:06:59,683 INFO L290 TraceCheckUtils]: 69: Hoare triple {210#false} assume 0 != ~nondetermined~0#1;~ldv_count_2~0 := 1 + ~ldv_count_2~0; {210#false} is VALID [2022-02-20 22:06:59,684 INFO L290 TraceCheckUtils]: 70: Hoare triple {210#false} assume ~ldv_count_1~0 < ~ldv_count_2~0;assume { :begin_inline_ldv_error } true; {210#false} is VALID [2022-02-20 22:06:59,684 INFO L290 TraceCheckUtils]: 71: Hoare triple {210#false} assume !false; {210#false} is VALID [2022-02-20 22:06:59,684 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2022-02-20 22:06:59,685 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 22:06:59,685 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1875258462] [2022-02-20 22:06:59,686 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1875258462] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 22:06:59,686 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 22:06:59,686 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-02-20 22:06:59,687 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [120686646] [2022-02-20 22:06:59,688 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 22:06:59,693 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 12.0) internal successors, (48), 3 states have internal predecessors, (48), 2 states have call successors, (8), 3 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) Word has length 72 [2022-02-20 22:06:59,695 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 22:06:59,698 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 4 states, 4 states have (on average 12.0) internal successors, (48), 3 states have internal predecessors, (48), 2 states have call successors, (8), 3 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2022-02-20 22:06:59,754 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 62 edges. 62 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 22:06:59,754 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-20 22:06:59,754 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 22:06:59,767 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-20 22:06:59,768 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-02-20 22:06:59,770 INFO L87 Difference]: Start difference. First operand has 206 states, 148 states have (on average 1.2905405405405406) internal successors, (191), 154 states have internal predecessors, (191), 40 states have call successors, (40), 17 states have call predecessors, (40), 16 states have return successors, (36), 36 states have call predecessors, (36), 36 states have call successors, (36) Second operand has 4 states, 4 states have (on average 12.0) internal successors, (48), 3 states have internal predecessors, (48), 2 states have call successors, (8), 3 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2022-02-20 22:07:00,462 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 22:07:00,463 INFO L93 Difference]: Finished difference Result 453 states and 610 transitions. [2022-02-20 22:07:00,463 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-02-20 22:07:00,463 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 12.0) internal successors, (48), 3 states have internal predecessors, (48), 2 states have call successors, (8), 3 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) Word has length 72 [2022-02-20 22:07:00,463 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 22:07:00,464 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 12.0) internal successors, (48), 3 states have internal predecessors, (48), 2 states have call successors, (8), 3 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2022-02-20 22:07:00,479 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 610 transitions. [2022-02-20 22:07:00,479 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 12.0) internal successors, (48), 3 states have internal predecessors, (48), 2 states have call successors, (8), 3 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2022-02-20 22:07:00,489 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 610 transitions. [2022-02-20 22:07:00,489 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 610 transitions. [2022-02-20 22:07:00,921 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 610 edges. 610 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 22:07:00,934 INFO L225 Difference]: With dead ends: 453 [2022-02-20 22:07:00,935 INFO L226 Difference]: Without dead ends: 228 [2022-02-20 22:07:00,938 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 18 GetRequests, 15 SyntacticMatches, 0 SemanticMatches, 3 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=9, Invalid=11, Unknown=0, NotChecked=0, Total=20 [2022-02-20 22:07:00,940 INFO L933 BasicCegarLoop]: 254 mSDtfsCounter, 92 mSDsluCounter, 306 mSDsCounter, 0 mSdLazyCounter, 147 mSolverCounterSat, 50 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 101 SdHoareTripleChecker+Valid, 560 SdHoareTripleChecker+Invalid, 197 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 50 IncrementalHoareTripleChecker+Valid, 147 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-02-20 22:07:00,940 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [101 Valid, 560 Invalid, 197 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [50 Valid, 147 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-02-20 22:07:00,951 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 228 states. [2022-02-20 22:07:00,977 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 228 to 210. [2022-02-20 22:07:00,977 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 22:07:00,978 INFO L82 GeneralOperation]: Start isEquivalent. First operand 228 states. Second operand has 210 states, 157 states have (on average 1.267515923566879) internal successors, (199), 158 states have internal predecessors, (199), 36 states have call successors, (36), 16 states have call predecessors, (36), 16 states have return successors, (36), 36 states have call predecessors, (36), 36 states have call successors, (36) [2022-02-20 22:07:00,979 INFO L74 IsIncluded]: Start isIncluded. First operand 228 states. Second operand has 210 states, 157 states have (on average 1.267515923566879) internal successors, (199), 158 states have internal predecessors, (199), 36 states have call successors, (36), 16 states have call predecessors, (36), 16 states have return successors, (36), 36 states have call predecessors, (36), 36 states have call successors, (36) [2022-02-20 22:07:00,980 INFO L87 Difference]: Start difference. First operand 228 states. Second operand has 210 states, 157 states have (on average 1.267515923566879) internal successors, (199), 158 states have internal predecessors, (199), 36 states have call successors, (36), 16 states have call predecessors, (36), 16 states have return successors, (36), 36 states have call predecessors, (36), 36 states have call successors, (36) [2022-02-20 22:07:00,989 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 22:07:00,989 INFO L93 Difference]: Finished difference Result 228 states and 298 transitions. [2022-02-20 22:07:00,989 INFO L276 IsEmpty]: Start isEmpty. Operand 228 states and 298 transitions. [2022-02-20 22:07:00,990 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 22:07:00,990 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 22:07:00,991 INFO L74 IsIncluded]: Start isIncluded. First operand has 210 states, 157 states have (on average 1.267515923566879) internal successors, (199), 158 states have internal predecessors, (199), 36 states have call successors, (36), 16 states have call predecessors, (36), 16 states have return successors, (36), 36 states have call predecessors, (36), 36 states have call successors, (36) Second operand 228 states. [2022-02-20 22:07:00,992 INFO L87 Difference]: Start difference. First operand has 210 states, 157 states have (on average 1.267515923566879) internal successors, (199), 158 states have internal predecessors, (199), 36 states have call successors, (36), 16 states have call predecessors, (36), 16 states have return successors, (36), 36 states have call predecessors, (36), 36 states have call successors, (36) Second operand 228 states. [2022-02-20 22:07:00,999 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 22:07:00,999 INFO L93 Difference]: Finished difference Result 228 states and 298 transitions. [2022-02-20 22:07:01,000 INFO L276 IsEmpty]: Start isEmpty. Operand 228 states and 298 transitions. [2022-02-20 22:07:01,000 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 22:07:01,001 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 22:07:01,001 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 22:07:01,001 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 22:07:01,002 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 210 states, 157 states have (on average 1.267515923566879) internal successors, (199), 158 states have internal predecessors, (199), 36 states have call successors, (36), 16 states have call predecessors, (36), 16 states have return successors, (36), 36 states have call predecessors, (36), 36 states have call successors, (36) [2022-02-20 22:07:01,008 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 210 states to 210 states and 271 transitions. [2022-02-20 22:07:01,009 INFO L78 Accepts]: Start accepts. Automaton has 210 states and 271 transitions. Word has length 72 [2022-02-20 22:07:01,009 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 22:07:01,009 INFO L470 AbstractCegarLoop]: Abstraction has 210 states and 271 transitions. [2022-02-20 22:07:01,010 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 12.0) internal successors, (48), 3 states have internal predecessors, (48), 2 states have call successors, (8), 3 states have call predecessors, (8), 1 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2022-02-20 22:07:01,010 INFO L276 IsEmpty]: Start isEmpty. Operand 210 states and 271 transitions. [2022-02-20 22:07:01,012 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 97 [2022-02-20 22:07:01,012 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 22:07:01,012 INFO L514 BasicCegarLoop]: trace histogram [3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 22:07:01,012 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-02-20 22:07:01,013 INFO L402 AbstractCegarLoop]: === Iteration 2 === Targeting ldv_device_create_fileErr0ASSERT_VIOLATIONERROR_FUNCTION === [ldv_device_create_fileErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 22:07:01,013 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 22:07:01,013 INFO L85 PathProgramCache]: Analyzing trace with hash 1443440411, now seen corresponding path program 1 times [2022-02-20 22:07:01,014 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 22:07:01,014 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1420395778] [2022-02-20 22:07:01,014 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 22:07:01,014 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 22:07:01,077 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:07:01,176 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 14 [2022-02-20 22:07:01,178 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:07:01,181 INFO L290 TraceCheckUtils]: 0: Hoare triple {1685#(and (= |old(#length)| |#length|) (= |old(#valid)| |#valid|))} ~size := #in~size;havoc ~p~0.base, ~p~0.offset;havoc ~tmp~0.base, ~tmp~0.offset;havoc ~tmp___0~0;assume -2147483648 <= #t~nondet29 && #t~nondet29 <= 2147483647;~tmp___0~0 := #t~nondet29;havoc #t~nondet29; {1645#true} is VALID [2022-02-20 22:07:01,182 INFO L290 TraceCheckUtils]: 1: Hoare triple {1645#true} assume 0 != ~tmp___0~0;#res.base, #res.offset := 0, 0; {1645#true} is VALID [2022-02-20 22:07:01,182 INFO L290 TraceCheckUtils]: 2: Hoare triple {1645#true} assume true; {1645#true} is VALID [2022-02-20 22:07:01,182 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1645#true} {1645#true} #476#return; {1645#true} is VALID [2022-02-20 22:07:01,182 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 20 [2022-02-20 22:07:01,183 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:07:01,185 INFO L290 TraceCheckUtils]: 0: Hoare triple {1645#true} ~cond := #in~cond; {1645#true} is VALID [2022-02-20 22:07:01,186 INFO L290 TraceCheckUtils]: 1: Hoare triple {1645#true} assume !(0 == ~cond); {1645#true} is VALID [2022-02-20 22:07:01,186 INFO L290 TraceCheckUtils]: 2: Hoare triple {1645#true} assume true; {1645#true} is VALID [2022-02-20 22:07:01,186 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1645#true} {1645#true} #478#return; {1645#true} is VALID [2022-02-20 22:07:01,186 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 42 [2022-02-20 22:07:01,188 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:07:01,190 INFO L290 TraceCheckUtils]: 0: Hoare triple {1685#(and (= |old(#length)| |#length|) (= |old(#valid)| |#valid|))} ~size := #in~size;havoc ~p~0.base, ~p~0.offset;havoc ~tmp~0.base, ~tmp~0.offset;havoc ~tmp___0~0;assume -2147483648 <= #t~nondet29 && #t~nondet29 <= 2147483647;~tmp___0~0 := #t~nondet29;havoc #t~nondet29; {1645#true} is VALID [2022-02-20 22:07:01,190 INFO L290 TraceCheckUtils]: 1: Hoare triple {1645#true} assume 0 != ~tmp___0~0;#res.base, #res.offset := 0, 0; {1645#true} is VALID [2022-02-20 22:07:01,190 INFO L290 TraceCheckUtils]: 2: Hoare triple {1645#true} assume true; {1645#true} is VALID [2022-02-20 22:07:01,191 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1645#true} {1646#false} #424#return; {1646#false} is VALID [2022-02-20 22:07:01,191 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 49 [2022-02-20 22:07:01,193 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:07:01,195 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 1 [2022-02-20 22:07:01,196 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:07:01,199 INFO L290 TraceCheckUtils]: 0: Hoare triple {1645#true} ~ptr.base, ~ptr.offset := #in~ptr.base, #in~ptr.offset;#res := (if 0 == (if (~ptr.base + ~ptr.offset) % 18446744073709551616 > 2012 then 1 else 0) then 0 else 1); {1645#true} is VALID [2022-02-20 22:07:01,199 INFO L290 TraceCheckUtils]: 1: Hoare triple {1645#true} assume true; {1645#true} is VALID [2022-02-20 22:07:01,199 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {1645#true} {1645#true} #494#return; {1645#true} is VALID [2022-02-20 22:07:01,199 INFO L290 TraceCheckUtils]: 0: Hoare triple {1645#true} ~ptr.base, ~ptr.offset := #in~ptr.base, #in~ptr.offset;havoc ~tmp~15; {1645#true} is VALID [2022-02-20 22:07:01,199 INFO L272 TraceCheckUtils]: 1: Hoare triple {1645#true} call #t~ret121 := ldv_is_err(~ptr.base, ~ptr.offset); {1645#true} is VALID [2022-02-20 22:07:01,199 INFO L290 TraceCheckUtils]: 2: Hoare triple {1645#true} ~ptr.base, ~ptr.offset := #in~ptr.base, #in~ptr.offset;#res := (if 0 == (if (~ptr.base + ~ptr.offset) % 18446744073709551616 > 2012 then 1 else 0) then 0 else 1); {1645#true} is VALID [2022-02-20 22:07:01,200 INFO L290 TraceCheckUtils]: 3: Hoare triple {1645#true} assume true; {1645#true} is VALID [2022-02-20 22:07:01,200 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {1645#true} {1645#true} #494#return; {1645#true} is VALID [2022-02-20 22:07:01,200 INFO L290 TraceCheckUtils]: 5: Hoare triple {1645#true} ~tmp~15 := #t~ret121;havoc #t~ret121;#res := ~tmp~15 % 256; {1645#true} is VALID [2022-02-20 22:07:01,200 INFO L290 TraceCheckUtils]: 6: Hoare triple {1645#true} assume true; {1645#true} is VALID [2022-02-20 22:07:01,200 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {1645#true} {1646#false} #426#return; {1646#false} is VALID [2022-02-20 22:07:01,200 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 62 [2022-02-20 22:07:01,202 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:07:01,204 INFO L290 TraceCheckUtils]: 0: Hoare triple {1685#(and (= |old(#length)| |#length|) (= |old(#valid)| |#valid|))} ~size := #in~size;havoc ~p~0.base, ~p~0.offset;havoc ~tmp~0.base, ~tmp~0.offset;havoc ~tmp___0~0;assume -2147483648 <= #t~nondet29 && #t~nondet29 <= 2147483647;~tmp___0~0 := #t~nondet29;havoc #t~nondet29; {1645#true} is VALID [2022-02-20 22:07:01,204 INFO L290 TraceCheckUtils]: 1: Hoare triple {1645#true} assume 0 != ~tmp___0~0;#res.base, #res.offset := 0, 0; {1645#true} is VALID [2022-02-20 22:07:01,204 INFO L290 TraceCheckUtils]: 2: Hoare triple {1645#true} assume true; {1645#true} is VALID [2022-02-20 22:07:01,205 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1645#true} {1646#false} #430#return; {1646#false} is VALID [2022-02-20 22:07:01,205 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 69 [2022-02-20 22:07:01,206 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:07:01,209 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 1 [2022-02-20 22:07:01,210 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:07:01,212 INFO L290 TraceCheckUtils]: 0: Hoare triple {1645#true} ~ptr.base, ~ptr.offset := #in~ptr.base, #in~ptr.offset;#res := (if 0 == (if (~ptr.base + ~ptr.offset) % 18446744073709551616 > 2012 then 1 else 0) then 0 else 1); {1645#true} is VALID [2022-02-20 22:07:01,212 INFO L290 TraceCheckUtils]: 1: Hoare triple {1645#true} assume true; {1645#true} is VALID [2022-02-20 22:07:01,213 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {1645#true} {1645#true} #494#return; {1645#true} is VALID [2022-02-20 22:07:01,213 INFO L290 TraceCheckUtils]: 0: Hoare triple {1645#true} ~ptr.base, ~ptr.offset := #in~ptr.base, #in~ptr.offset;havoc ~tmp~15; {1645#true} is VALID [2022-02-20 22:07:01,213 INFO L272 TraceCheckUtils]: 1: Hoare triple {1645#true} call #t~ret121 := ldv_is_err(~ptr.base, ~ptr.offset); {1645#true} is VALID [2022-02-20 22:07:01,213 INFO L290 TraceCheckUtils]: 2: Hoare triple {1645#true} ~ptr.base, ~ptr.offset := #in~ptr.base, #in~ptr.offset;#res := (if 0 == (if (~ptr.base + ~ptr.offset) % 18446744073709551616 > 2012 then 1 else 0) then 0 else 1); {1645#true} is VALID [2022-02-20 22:07:01,213 INFO L290 TraceCheckUtils]: 3: Hoare triple {1645#true} assume true; {1645#true} is VALID [2022-02-20 22:07:01,213 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {1645#true} {1645#true} #494#return; {1645#true} is VALID [2022-02-20 22:07:01,214 INFO L290 TraceCheckUtils]: 5: Hoare triple {1645#true} ~tmp~15 := #t~ret121;havoc #t~ret121;#res := ~tmp~15 % 256; {1645#true} is VALID [2022-02-20 22:07:01,214 INFO L290 TraceCheckUtils]: 6: Hoare triple {1645#true} assume true; {1645#true} is VALID [2022-02-20 22:07:01,214 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {1645#true} {1646#false} #432#return; {1646#false} is VALID [2022-02-20 22:07:01,214 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 88 [2022-02-20 22:07:01,215 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:07:01,217 INFO L290 TraceCheckUtils]: 0: Hoare triple {1645#true} havoc ~tmp~4;assume -2147483648 <= #t~nondet37 && #t~nondet37 <= 2147483647;~tmp~4 := #t~nondet37;havoc #t~nondet37;#res := ~tmp~4; {1645#true} is VALID [2022-02-20 22:07:01,217 INFO L290 TraceCheckUtils]: 1: Hoare triple {1645#true} assume true; {1645#true} is VALID [2022-02-20 22:07:01,218 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {1645#true} {1646#false} #488#return; {1646#false} is VALID [2022-02-20 22:07:01,218 INFO L290 TraceCheckUtils]: 0: Hoare triple {1645#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(94, 2);call #Ultimate.allocInit(4, 3);call write~init~int(60, 3, 0, 1);call write~init~int(55, 3, 1, 1);call write~init~int(62, 3, 2, 1);call write~init~int(0, 3, 3, 1);call #Ultimate.allocInit(20, 4);call #Ultimate.allocInit(4, 5);call write~init~int(37, 5, 0, 1);call write~init~int(100, 5, 1, 1);call write~init~int(10, 5, 2, 1);call write~init~int(0, 5, 3, 1);call #Ultimate.allocInit(4, 6);call write~init~int(37, 6, 0, 1);call write~init~int(115, 6, 1, 1);call write~init~int(10, 6, 2, 1);call write~init~int(0, 6, 3, 1);call #Ultimate.allocInit(11, 7);call #Ultimate.allocInit(34, 8);call #Ultimate.allocInit(11, 9);call #Ultimate.allocInit(34, 10);call #Ultimate.allocInit(27, 11);call #Ultimate.allocInit(11, 12);call #Ultimate.allocInit(13, 13);call #Ultimate.allocInit(21, 14);call #Ultimate.allocInit(30, 15);call #Ultimate.allocInit(33, 16);call #Ultimate.allocInit(25, 17);call #Ultimate.allocInit(27, 18);call #Ultimate.allocInit(10, 19);~LDV_IN_INTERRUPT~0 := 1;~ref_cnt~0 := 0;~ldv_state_variable_1~0 := 0;~s3c_hwmon_driver_group1~0.base, ~s3c_hwmon_driver_group1~0.offset := 0, 0;~probed_1~0 := 0;~ldv_state_variable_0~0 := 0;~#s3c_hwmon_driver~0.base, ~#s3c_hwmon_driver~0.offset := 20, 0;call #Ultimate.allocInit(153, 20);call write~init~$Pointer$(#funAddr~s3c_hwmon_probe.base, #funAddr~s3c_hwmon_probe.offset, ~#s3c_hwmon_driver~0.base, ~#s3c_hwmon_driver~0.offset, 8);call write~init~$Pointer$(#funAddr~s3c_hwmon_remove.base, #funAddr~s3c_hwmon_remove.offset, ~#s3c_hwmon_driver~0.base, 8 + ~#s3c_hwmon_driver~0.offset, 8);call write~init~$Pointer$(0, 0, ~#s3c_hwmon_driver~0.base, 16 + ~#s3c_hwmon_driver~0.offset, 8);call write~init~$Pointer$(0, 0, ~#s3c_hwmon_driver~0.base, 24 + ~#s3c_hwmon_driver~0.offset, 8);call write~init~$Pointer$(0, 0, ~#s3c_hwmon_driver~0.base, 32 + ~#s3c_hwmon_driver~0.offset, 8);call write~init~$Pointer$(19, 0, ~#s3c_hwmon_driver~0.base, 40 + ~#s3c_hwmon_driver~0.offset, 8);call write~init~$Pointer$(0, 0, ~#s3c_hwmon_driver~0.base, 48 + ~#s3c_hwmon_driver~0.offset, 8);call write~init~$Pointer$(~#__this_module~0.base, ~#__this_module~0.offset, ~#s3c_hwmon_driver~0.base, 56 + ~#s3c_hwmon_driver~0.offset, 8);call write~init~$Pointer$(0, 0, ~#s3c_hwmon_driver~0.base, 64 + ~#s3c_hwmon_driver~0.offset, 8);call write~init~int(0, ~#s3c_hwmon_driver~0.base, 72 + ~#s3c_hwmon_driver~0.offset, 1);call write~init~$Pointer$(0, 0, ~#s3c_hwmon_driver~0.base, 73 + ~#s3c_hwmon_driver~0.offset, 8);call write~init~$Pointer$(0, 0, ~#s3c_hwmon_driver~0.base, 81 + ~#s3c_hwmon_driver~0.offset, 8);call write~init~$Pointer$(0, 0, ~#s3c_hwmon_driver~0.base, 89 + ~#s3c_hwmon_driver~0.offset, 8);call write~init~$Pointer$(0, 0, ~#s3c_hwmon_driver~0.base, 97 + ~#s3c_hwmon_driver~0.offset, 8);call write~init~$Pointer$(0, 0, ~#s3c_hwmon_driver~0.base, 105 + ~#s3c_hwmon_driver~0.offset, 8);call write~init~$Pointer$(0, 0, ~#s3c_hwmon_driver~0.base, 113 + ~#s3c_hwmon_driver~0.offset, 8);call write~init~$Pointer$(0, 0, ~#s3c_hwmon_driver~0.base, 121 + ~#s3c_hwmon_driver~0.offset, 8);call write~init~$Pointer$(0, 0, ~#s3c_hwmon_driver~0.base, 129 + ~#s3c_hwmon_driver~0.offset, 8);call write~init~$Pointer$(0, 0, ~#s3c_hwmon_driver~0.base, 137 + ~#s3c_hwmon_driver~0.offset, 8);call write~init~$Pointer$(0, 0, ~#s3c_hwmon_driver~0.base, 145 + ~#s3c_hwmon_driver~0.offset, 8);~ldv_retval_0~0 := 0;~ldv_retval_1~0 := 0;~ldv_retval_2~0 := 0;~ldv_count_1~0 := 0;~ldv_count_2~0 := 0; {1645#true} is VALID [2022-02-20 22:07:01,218 INFO L290 TraceCheckUtils]: 1: Hoare triple {1645#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet110#1, main_#t~switch111#1, main_#t~nondet112#1, main_#t~switch113#1, main_#t~ret114#1, main_#t~ret115#1, main_#t~ret116#1, main_#t~nondet117#1, main_#t~switch118#1, main_#t~ret119#1, main_~tmp~13#1, main_~tmp___0~4#1, main_~tmp___1~1#1;havoc main_~tmp~13#1;havoc main_~tmp___0~4#1;havoc main_~tmp___1~1#1;assume { :begin_inline_ldv_initialize } true; {1645#true} is VALID [2022-02-20 22:07:01,218 INFO L290 TraceCheckUtils]: 2: Hoare triple {1645#true} assume { :end_inline_ldv_initialize } true;~ldv_state_variable_1~0 := 0;~ref_cnt~0 := 0;~ldv_state_variable_0~0 := 1; {1645#true} is VALID [2022-02-20 22:07:01,218 INFO L290 TraceCheckUtils]: 3: Hoare triple {1645#true} assume -2147483648 <= main_#t~nondet110#1 && main_#t~nondet110#1 <= 2147483647;main_~tmp~13#1 := main_#t~nondet110#1;havoc main_#t~nondet110#1;main_#t~switch111#1 := 0 == main_~tmp~13#1; {1645#true} is VALID [2022-02-20 22:07:01,218 INFO L290 TraceCheckUtils]: 4: Hoare triple {1645#true} assume !main_#t~switch111#1;main_#t~switch111#1 := main_#t~switch111#1 || 1 == main_~tmp~13#1; {1645#true} is VALID [2022-02-20 22:07:01,219 INFO L290 TraceCheckUtils]: 5: Hoare triple {1645#true} assume main_#t~switch111#1; {1645#true} is VALID [2022-02-20 22:07:01,219 INFO L290 TraceCheckUtils]: 6: Hoare triple {1645#true} assume 0 != ~ldv_state_variable_0~0;assume -2147483648 <= main_#t~nondet117#1 && main_#t~nondet117#1 <= 2147483647;main_~tmp___1~1#1 := main_#t~nondet117#1;havoc main_#t~nondet117#1;main_#t~switch118#1 := 0 == main_~tmp___1~1#1; {1645#true} is VALID [2022-02-20 22:07:01,219 INFO L290 TraceCheckUtils]: 7: Hoare triple {1645#true} assume !main_#t~switch118#1;main_#t~switch118#1 := main_#t~switch118#1 || 1 == main_~tmp___1~1#1; {1645#true} is VALID [2022-02-20 22:07:01,219 INFO L290 TraceCheckUtils]: 8: Hoare triple {1645#true} assume main_#t~switch118#1; {1645#true} is VALID [2022-02-20 22:07:01,219 INFO L290 TraceCheckUtils]: 9: Hoare triple {1645#true} assume 1 == ~ldv_state_variable_0~0;assume { :begin_inline_s3c_hwmon_init } true;havoc s3c_hwmon_init_#res#1;havoc s3c_hwmon_init_#t~ret106#1, s3c_hwmon_init_~tmp~11#1;havoc s3c_hwmon_init_~tmp~11#1;assume { :begin_inline_platform_driver_register } true;platform_driver_register_#in~arg0#1.base, platform_driver_register_#in~arg0#1.offset := ~#s3c_hwmon_driver~0.base, ~#s3c_hwmon_driver~0.offset;havoc platform_driver_register_#res#1;havoc platform_driver_register_#t~nondet135#1, platform_driver_register_~arg0#1.base, platform_driver_register_~arg0#1.offset;platform_driver_register_~arg0#1.base, platform_driver_register_~arg0#1.offset := platform_driver_register_#in~arg0#1.base, platform_driver_register_#in~arg0#1.offset;assume -2147483648 <= platform_driver_register_#t~nondet135#1 && platform_driver_register_#t~nondet135#1 <= 2147483647;platform_driver_register_#res#1 := platform_driver_register_#t~nondet135#1;havoc platform_driver_register_#t~nondet135#1; {1645#true} is VALID [2022-02-20 22:07:01,220 INFO L290 TraceCheckUtils]: 10: Hoare triple {1645#true} s3c_hwmon_init_#t~ret106#1 := platform_driver_register_#res#1;assume { :end_inline_platform_driver_register } true;assume -2147483648 <= s3c_hwmon_init_#t~ret106#1 && s3c_hwmon_init_#t~ret106#1 <= 2147483647;s3c_hwmon_init_~tmp~11#1 := s3c_hwmon_init_#t~ret106#1;havoc s3c_hwmon_init_#t~ret106#1;s3c_hwmon_init_#res#1 := s3c_hwmon_init_~tmp~11#1; {1645#true} is VALID [2022-02-20 22:07:01,220 INFO L290 TraceCheckUtils]: 11: Hoare triple {1645#true} main_#t~ret119#1 := s3c_hwmon_init_#res#1;assume { :end_inline_s3c_hwmon_init } true;assume -2147483648 <= main_#t~ret119#1 && main_#t~ret119#1 <= 2147483647;~ldv_retval_2~0 := main_#t~ret119#1;havoc main_#t~ret119#1; {1645#true} is VALID [2022-02-20 22:07:01,220 INFO L290 TraceCheckUtils]: 12: Hoare triple {1645#true} assume !(0 != ~ldv_retval_2~0); {1645#true} is VALID [2022-02-20 22:07:01,220 INFO L290 TraceCheckUtils]: 13: Hoare triple {1645#true} assume 0 == ~ldv_retval_2~0;~ldv_state_variable_0~0 := 2;~ldv_state_variable_1~0 := 1;assume { :begin_inline_ldv_platform_driver_init_1 } true;havoc ldv_platform_driver_init_1_#t~ret109#1.base, ldv_platform_driver_init_1_#t~ret109#1.offset, ldv_platform_driver_init_1_~tmp~12#1.base, ldv_platform_driver_init_1_~tmp~12#1.offset;havoc ldv_platform_driver_init_1_~tmp~12#1.base, ldv_platform_driver_init_1_~tmp~12#1.offset; {1645#true} is VALID [2022-02-20 22:07:01,221 INFO L272 TraceCheckUtils]: 14: Hoare triple {1645#true} call ldv_platform_driver_init_1_#t~ret109#1.base, ldv_platform_driver_init_1_#t~ret109#1.offset := ldv_malloc(624); {1685#(and (= |old(#length)| |#length|) (= |old(#valid)| |#valid|))} is VALID [2022-02-20 22:07:01,221 INFO L290 TraceCheckUtils]: 15: Hoare triple {1685#(and (= |old(#length)| |#length|) (= |old(#valid)| |#valid|))} ~size := #in~size;havoc ~p~0.base, ~p~0.offset;havoc ~tmp~0.base, ~tmp~0.offset;havoc ~tmp___0~0;assume -2147483648 <= #t~nondet29 && #t~nondet29 <= 2147483647;~tmp___0~0 := #t~nondet29;havoc #t~nondet29; {1645#true} is VALID [2022-02-20 22:07:01,221 INFO L290 TraceCheckUtils]: 16: Hoare triple {1645#true} assume 0 != ~tmp___0~0;#res.base, #res.offset := 0, 0; {1645#true} is VALID [2022-02-20 22:07:01,221 INFO L290 TraceCheckUtils]: 17: Hoare triple {1645#true} assume true; {1645#true} is VALID [2022-02-20 22:07:01,221 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {1645#true} {1645#true} #476#return; {1645#true} is VALID [2022-02-20 22:07:01,222 INFO L290 TraceCheckUtils]: 19: Hoare triple {1645#true} ldv_platform_driver_init_1_~tmp~12#1.base, ldv_platform_driver_init_1_~tmp~12#1.offset := ldv_platform_driver_init_1_#t~ret109#1.base, ldv_platform_driver_init_1_#t~ret109#1.offset;havoc ldv_platform_driver_init_1_#t~ret109#1.base, ldv_platform_driver_init_1_#t~ret109#1.offset; {1645#true} is VALID [2022-02-20 22:07:01,222 INFO L272 TraceCheckUtils]: 20: Hoare triple {1645#true} call assume_abort_if_not((if 0 != (ldv_platform_driver_init_1_~tmp~12#1.base + ldv_platform_driver_init_1_~tmp~12#1.offset) % 18446744073709551616 then 1 else 0)); {1645#true} is VALID [2022-02-20 22:07:01,222 INFO L290 TraceCheckUtils]: 21: Hoare triple {1645#true} ~cond := #in~cond; {1645#true} is VALID [2022-02-20 22:07:01,222 INFO L290 TraceCheckUtils]: 22: Hoare triple {1645#true} assume !(0 == ~cond); {1645#true} is VALID [2022-02-20 22:07:01,222 INFO L290 TraceCheckUtils]: 23: Hoare triple {1645#true} assume true; {1645#true} is VALID [2022-02-20 22:07:01,222 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {1645#true} {1645#true} #478#return; {1645#true} is VALID [2022-02-20 22:07:01,223 INFO L290 TraceCheckUtils]: 25: Hoare triple {1645#true} ~s3c_hwmon_driver_group1~0.base, ~s3c_hwmon_driver_group1~0.offset := ldv_platform_driver_init_1_~tmp~12#1.base, ldv_platform_driver_init_1_~tmp~12#1.offset; {1645#true} is VALID [2022-02-20 22:07:01,223 INFO L290 TraceCheckUtils]: 26: Hoare triple {1645#true} assume { :end_inline_ldv_platform_driver_init_1 } true; {1645#true} is VALID [2022-02-20 22:07:01,223 INFO L290 TraceCheckUtils]: 27: Hoare triple {1645#true} assume -2147483648 <= main_#t~nondet110#1 && main_#t~nondet110#1 <= 2147483647;main_~tmp~13#1 := main_#t~nondet110#1;havoc main_#t~nondet110#1;main_#t~switch111#1 := 0 == main_~tmp~13#1; {1645#true} is VALID [2022-02-20 22:07:01,223 INFO L290 TraceCheckUtils]: 28: Hoare triple {1645#true} assume main_#t~switch111#1; {1645#true} is VALID [2022-02-20 22:07:01,223 INFO L290 TraceCheckUtils]: 29: Hoare triple {1645#true} assume 0 != ~ldv_state_variable_1~0;assume -2147483648 <= main_#t~nondet112#1 && main_#t~nondet112#1 <= 2147483647;main_~tmp___0~4#1 := main_#t~nondet112#1;havoc main_#t~nondet112#1;main_#t~switch113#1 := 0 == main_~tmp___0~4#1; {1645#true} is VALID [2022-02-20 22:07:01,223 INFO L290 TraceCheckUtils]: 30: Hoare triple {1645#true} assume main_#t~switch113#1; {1645#true} is VALID [2022-02-20 22:07:01,224 INFO L290 TraceCheckUtils]: 31: Hoare triple {1645#true} assume 1 == ~ldv_state_variable_1~0; {1645#true} is VALID [2022-02-20 22:07:01,224 INFO L272 TraceCheckUtils]: 32: Hoare triple {1645#true} call main_#t~ret114#1 := s3c_hwmon_probe(~s3c_hwmon_driver_group1~0.base, ~s3c_hwmon_driver_group1~0.offset); {1645#true} is VALID [2022-02-20 22:07:01,224 INFO L290 TraceCheckUtils]: 33: Hoare triple {1645#true} ~dev#1.base, ~dev#1.offset := #in~dev#1.base, #in~dev#1.offset;havoc ~pdata~2#1.base, ~pdata~2#1.offset;havoc ~hwmon~1#1.base, ~hwmon~1#1.offset;havoc ~ret~3#1;havoc ~i~0#1;havoc ~tmp~9#1.base, ~tmp~9#1.offset;call ~#__key~0#1.base, ~#__key~0#1.offset := #Ultimate.allocOnStack(8);havoc ~tmp___0~3#1;havoc ~tmp___1~0#1;havoc ~tmp___2~0#1;havoc ~tmp___3~0#1;havoc ~cfg~2#1.base, ~cfg~2#1.offset;call #t~mem76#1.base, #t~mem76#1.offset := read~$Pointer$(~dev#1.base, 277 + ~dev#1.offset, 8);~pdata~2#1.base, ~pdata~2#1.offset := #t~mem76#1.base, #t~mem76#1.offset;havoc #t~mem76#1.base, #t~mem76#1.offset;~ret~3#1 := 0; {1645#true} is VALID [2022-02-20 22:07:01,224 INFO L290 TraceCheckUtils]: 34: Hoare triple {1645#true} assume !(0 == (~pdata~2#1.base + ~pdata~2#1.offset) % 18446744073709551616);assume { :begin_inline_ldv_kzalloc_9 } true;ldv_kzalloc_9_#in~size#1, ldv_kzalloc_9_#in~flags#1 := 800, 208;havoc ldv_kzalloc_9_#res#1.base, ldv_kzalloc_9_#res#1.offset;havoc ldv_kzalloc_9_#t~ret124#1.base, ldv_kzalloc_9_#t~ret124#1.offset, ldv_kzalloc_9_~size#1, ldv_kzalloc_9_~flags#1, ldv_kzalloc_9_~tmp~18#1.base, ldv_kzalloc_9_~tmp~18#1.offset;ldv_kzalloc_9_~size#1 := ldv_kzalloc_9_#in~size#1;ldv_kzalloc_9_~flags#1 := ldv_kzalloc_9_#in~flags#1;havoc ldv_kzalloc_9_~tmp~18#1.base, ldv_kzalloc_9_~tmp~18#1.offset;assume { :begin_inline_ldv_zalloc } true;ldv_zalloc_#in~size#1 := ldv_kzalloc_9_~size#1;havoc ldv_zalloc_#res#1.base, ldv_zalloc_#res#1.offset;havoc ldv_zalloc_#t~nondet32#1, ldv_zalloc_#t~malloc33#1.base, ldv_zalloc_#t~malloc33#1.offset, ldv_zalloc_#t~ret34#1, ldv_zalloc_~size#1, ldv_zalloc_~p~1#1.base, ldv_zalloc_~p~1#1.offset, ldv_zalloc_~tmp~1#1.base, ldv_zalloc_~tmp~1#1.offset, ldv_zalloc_~tmp___0~1#1;ldv_zalloc_~size#1 := ldv_zalloc_#in~size#1;havoc ldv_zalloc_~p~1#1.base, ldv_zalloc_~p~1#1.offset;havoc ldv_zalloc_~tmp~1#1.base, ldv_zalloc_~tmp~1#1.offset;havoc ldv_zalloc_~tmp___0~1#1;assume -2147483648 <= ldv_zalloc_#t~nondet32#1 && ldv_zalloc_#t~nondet32#1 <= 2147483647;ldv_zalloc_~tmp___0~1#1 := ldv_zalloc_#t~nondet32#1;havoc ldv_zalloc_#t~nondet32#1; {1645#true} is VALID [2022-02-20 22:07:01,225 INFO L290 TraceCheckUtils]: 35: Hoare triple {1645#true} assume 0 != ldv_zalloc_~tmp___0~1#1;ldv_zalloc_#res#1.base, ldv_zalloc_#res#1.offset := 0, 0; {1655#(and (= |s3c_hwmon_probe_ldv_zalloc_#res#1.base| 0) (= |s3c_hwmon_probe_ldv_zalloc_#res#1.offset| 0))} is VALID [2022-02-20 22:07:01,225 INFO L290 TraceCheckUtils]: 36: Hoare triple {1655#(and (= |s3c_hwmon_probe_ldv_zalloc_#res#1.base| 0) (= |s3c_hwmon_probe_ldv_zalloc_#res#1.offset| 0))} ldv_kzalloc_9_#t~ret124#1.base, ldv_kzalloc_9_#t~ret124#1.offset := ldv_zalloc_#res#1.base, ldv_zalloc_#res#1.offset;assume { :end_inline_ldv_zalloc } true;ldv_kzalloc_9_~tmp~18#1.base, ldv_kzalloc_9_~tmp~18#1.offset := ldv_kzalloc_9_#t~ret124#1.base, ldv_kzalloc_9_#t~ret124#1.offset;havoc ldv_kzalloc_9_#t~ret124#1.base, ldv_kzalloc_9_#t~ret124#1.offset;ldv_kzalloc_9_#res#1.base, ldv_kzalloc_9_#res#1.offset := ldv_kzalloc_9_~tmp~18#1.base, ldv_kzalloc_9_~tmp~18#1.offset; {1656#(and (= |s3c_hwmon_probe_ldv_kzalloc_9_#res#1.offset| 0) (= |s3c_hwmon_probe_ldv_kzalloc_9_#res#1.base| 0))} is VALID [2022-02-20 22:07:01,225 INFO L290 TraceCheckUtils]: 37: Hoare triple {1656#(and (= |s3c_hwmon_probe_ldv_kzalloc_9_#res#1.offset| 0) (= |s3c_hwmon_probe_ldv_kzalloc_9_#res#1.base| 0))} #t~ret78#1.base, #t~ret78#1.offset := ldv_kzalloc_9_#res#1.base, ldv_kzalloc_9_#res#1.offset;assume { :end_inline_ldv_kzalloc_9 } true;~tmp~9#1.base, ~tmp~9#1.offset := #t~ret78#1.base, #t~ret78#1.offset;havoc #t~ret78#1.base, #t~ret78#1.offset;~hwmon~1#1.base, ~hwmon~1#1.offset := ~tmp~9#1.base, ~tmp~9#1.offset; {1657#(and (= |s3c_hwmon_probe_~hwmon~1#1.offset| 0) (= |s3c_hwmon_probe_~hwmon~1#1.base| 0))} is VALID [2022-02-20 22:07:01,226 INFO L290 TraceCheckUtils]: 38: Hoare triple {1657#(and (= |s3c_hwmon_probe_~hwmon~1#1.offset| 0) (= |s3c_hwmon_probe_~hwmon~1#1.base| 0))} assume !(0 == (~hwmon~1#1.base + ~hwmon~1#1.offset) % 18446744073709551616);assume { :begin_inline_platform_set_drvdata } true;platform_set_drvdata_#in~pdev#1.base, platform_set_drvdata_#in~pdev#1.offset, platform_set_drvdata_#in~data#1.base, platform_set_drvdata_#in~data#1.offset := ~dev#1.base, ~dev#1.offset, ~hwmon~1#1.base, ~hwmon~1#1.offset;havoc platform_set_drvdata_~pdev#1.base, platform_set_drvdata_~pdev#1.offset, platform_set_drvdata_~data#1.base, platform_set_drvdata_~data#1.offset;platform_set_drvdata_~pdev#1.base, platform_set_drvdata_~pdev#1.offset := platform_set_drvdata_#in~pdev#1.base, platform_set_drvdata_#in~pdev#1.offset;platform_set_drvdata_~data#1.base, platform_set_drvdata_~data#1.offset := platform_set_drvdata_#in~data#1.base, platform_set_drvdata_#in~data#1.offset;assume { :begin_inline_dev_set_drvdata } true;dev_set_drvdata_#in~arg0#1.base, dev_set_drvdata_#in~arg0#1.offset, dev_set_drvdata_#in~arg1#1.base, dev_set_drvdata_#in~arg1#1.offset := platform_set_drvdata_~pdev#1.base, 12 + platform_set_drvdata_~pdev#1.offset, platform_set_drvdata_~data#1.base, platform_set_drvdata_~data#1.offset;havoc dev_set_drvdata_~arg0#1.base, dev_set_drvdata_~arg0#1.offset, dev_set_drvdata_~arg1#1.base, dev_set_drvdata_~arg1#1.offset;dev_set_drvdata_~arg0#1.base, dev_set_drvdata_~arg0#1.offset := dev_set_drvdata_#in~arg0#1.base, dev_set_drvdata_#in~arg0#1.offset;dev_set_drvdata_~arg1#1.base, dev_set_drvdata_~arg1#1.offset := dev_set_drvdata_#in~arg1#1.base, dev_set_drvdata_#in~arg1#1.offset; {1646#false} is VALID [2022-02-20 22:07:01,226 INFO L290 TraceCheckUtils]: 39: Hoare triple {1646#false} assume { :end_inline_dev_set_drvdata } true; {1646#false} is VALID [2022-02-20 22:07:01,226 INFO L290 TraceCheckUtils]: 40: Hoare triple {1646#false} assume { :end_inline_platform_set_drvdata } true;assume { :begin_inline___mutex_init } true;__mutex_init_#in~arg0#1.base, __mutex_init_#in~arg0#1.offset, __mutex_init_#in~arg1#1.base, __mutex_init_#in~arg1#1.offset, __mutex_init_#in~arg2#1.base, __mutex_init_#in~arg2#1.offset := ~hwmon~1#1.base, ~hwmon~1#1.offset, 13, 0, ~#__key~0#1.base, ~#__key~0#1.offset;havoc __mutex_init_~arg0#1.base, __mutex_init_~arg0#1.offset, __mutex_init_~arg1#1.base, __mutex_init_~arg1#1.offset, __mutex_init_~arg2#1.base, __mutex_init_~arg2#1.offset;__mutex_init_~arg0#1.base, __mutex_init_~arg0#1.offset := __mutex_init_#in~arg0#1.base, __mutex_init_#in~arg0#1.offset;__mutex_init_~arg1#1.base, __mutex_init_~arg1#1.offset := __mutex_init_#in~arg1#1.base, __mutex_init_#in~arg1#1.offset;__mutex_init_~arg2#1.base, __mutex_init_~arg2#1.offset := __mutex_init_#in~arg2#1.base, __mutex_init_#in~arg2#1.offset; {1646#false} is VALID [2022-02-20 22:07:01,227 INFO L290 TraceCheckUtils]: 41: Hoare triple {1646#false} assume { :end_inline___mutex_init } true;assume { :begin_inline_s3c_adc_register } true;s3c_adc_register_#in~arg0#1.base, s3c_adc_register_#in~arg0#1.offset, s3c_adc_register_#in~arg1#1.base, s3c_adc_register_#in~arg1#1.offset, s3c_adc_register_#in~arg2#1.base, s3c_adc_register_#in~arg2#1.offset, s3c_adc_register_#in~arg3#1 := ~dev#1.base, ~dev#1.offset, 0, 0, 0, 0, 0;havoc s3c_adc_register_#res#1.base, s3c_adc_register_#res#1.offset;havoc s3c_adc_register_#t~ret137#1.base, s3c_adc_register_#t~ret137#1.offset, s3c_adc_register_~arg0#1.base, s3c_adc_register_~arg0#1.offset, s3c_adc_register_~arg1#1.base, s3c_adc_register_~arg1#1.offset, s3c_adc_register_~arg2#1.base, s3c_adc_register_~arg2#1.offset, s3c_adc_register_~arg3#1;s3c_adc_register_~arg0#1.base, s3c_adc_register_~arg0#1.offset := s3c_adc_register_#in~arg0#1.base, s3c_adc_register_#in~arg0#1.offset;s3c_adc_register_~arg1#1.base, s3c_adc_register_~arg1#1.offset := s3c_adc_register_#in~arg1#1.base, s3c_adc_register_#in~arg1#1.offset;s3c_adc_register_~arg2#1.base, s3c_adc_register_~arg2#1.offset := s3c_adc_register_#in~arg2#1.base, s3c_adc_register_#in~arg2#1.offset;s3c_adc_register_~arg3#1 := s3c_adc_register_#in~arg3#1; {1646#false} is VALID [2022-02-20 22:07:01,227 INFO L272 TraceCheckUtils]: 42: Hoare triple {1646#false} call s3c_adc_register_#t~ret137#1.base, s3c_adc_register_#t~ret137#1.offset := ldv_malloc(0); {1685#(and (= |old(#length)| |#length|) (= |old(#valid)| |#valid|))} is VALID [2022-02-20 22:07:01,227 INFO L290 TraceCheckUtils]: 43: Hoare triple {1685#(and (= |old(#length)| |#length|) (= |old(#valid)| |#valid|))} ~size := #in~size;havoc ~p~0.base, ~p~0.offset;havoc ~tmp~0.base, ~tmp~0.offset;havoc ~tmp___0~0;assume -2147483648 <= #t~nondet29 && #t~nondet29 <= 2147483647;~tmp___0~0 := #t~nondet29;havoc #t~nondet29; {1645#true} is VALID [2022-02-20 22:07:01,227 INFO L290 TraceCheckUtils]: 44: Hoare triple {1645#true} assume 0 != ~tmp___0~0;#res.base, #res.offset := 0, 0; {1645#true} is VALID [2022-02-20 22:07:01,227 INFO L290 TraceCheckUtils]: 45: Hoare triple {1645#true} assume true; {1645#true} is VALID [2022-02-20 22:07:01,227 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {1645#true} {1646#false} #424#return; {1646#false} is VALID [2022-02-20 22:07:01,228 INFO L290 TraceCheckUtils]: 47: Hoare triple {1646#false} s3c_adc_register_#res#1.base, s3c_adc_register_#res#1.offset := s3c_adc_register_#t~ret137#1.base, s3c_adc_register_#t~ret137#1.offset;havoc s3c_adc_register_#t~ret137#1.base, s3c_adc_register_#t~ret137#1.offset; {1646#false} is VALID [2022-02-20 22:07:01,228 INFO L290 TraceCheckUtils]: 48: Hoare triple {1646#false} #t~ret80#1.base, #t~ret80#1.offset := s3c_adc_register_#res#1.base, s3c_adc_register_#res#1.offset;assume { :end_inline_s3c_adc_register } true;call write~$Pointer$(#t~ret80#1.base, #t~ret80#1.offset, ~hwmon~1#1.base, 152 + ~hwmon~1#1.offset, 8);havoc #t~ret80#1.base, #t~ret80#1.offset;call #t~mem81#1.base, #t~mem81#1.offset := read~$Pointer$(~hwmon~1#1.base, 152 + ~hwmon~1#1.offset, 8); {1646#false} is VALID [2022-02-20 22:07:01,228 INFO L272 TraceCheckUtils]: 49: Hoare triple {1646#false} call #t~ret82#1 := IS_ERR(#t~mem81#1.base, #t~mem81#1.offset); {1645#true} is VALID [2022-02-20 22:07:01,228 INFO L290 TraceCheckUtils]: 50: Hoare triple {1645#true} ~ptr.base, ~ptr.offset := #in~ptr.base, #in~ptr.offset;havoc ~tmp~15; {1645#true} is VALID [2022-02-20 22:07:01,228 INFO L272 TraceCheckUtils]: 51: Hoare triple {1645#true} call #t~ret121 := ldv_is_err(~ptr.base, ~ptr.offset); {1645#true} is VALID [2022-02-20 22:07:01,228 INFO L290 TraceCheckUtils]: 52: Hoare triple {1645#true} ~ptr.base, ~ptr.offset := #in~ptr.base, #in~ptr.offset;#res := (if 0 == (if (~ptr.base + ~ptr.offset) % 18446744073709551616 > 2012 then 1 else 0) then 0 else 1); {1645#true} is VALID [2022-02-20 22:07:01,229 INFO L290 TraceCheckUtils]: 53: Hoare triple {1645#true} assume true; {1645#true} is VALID [2022-02-20 22:07:01,229 INFO L284 TraceCheckUtils]: 54: Hoare quadruple {1645#true} {1645#true} #494#return; {1645#true} is VALID [2022-02-20 22:07:01,229 INFO L290 TraceCheckUtils]: 55: Hoare triple {1645#true} ~tmp~15 := #t~ret121;havoc #t~ret121;#res := ~tmp~15 % 256; {1645#true} is VALID [2022-02-20 22:07:01,229 INFO L290 TraceCheckUtils]: 56: Hoare triple {1645#true} assume true; {1645#true} is VALID [2022-02-20 22:07:01,229 INFO L284 TraceCheckUtils]: 57: Hoare quadruple {1645#true} {1646#false} #426#return; {1646#false} is VALID [2022-02-20 22:07:01,229 INFO L290 TraceCheckUtils]: 58: Hoare triple {1646#false} assume -9223372036854775808 <= #t~ret82#1 && #t~ret82#1 <= 9223372036854775807;~tmp___1~0#1 := #t~ret82#1;havoc #t~mem81#1.base, #t~mem81#1.offset;havoc #t~ret82#1; {1646#false} is VALID [2022-02-20 22:07:01,230 INFO L290 TraceCheckUtils]: 59: Hoare triple {1646#false} assume !(0 != ~tmp___1~0#1);assume { :begin_inline_s3c_hwmon_add_raw } true;s3c_hwmon_add_raw_#in~dev#1.base, s3c_hwmon_add_raw_#in~dev#1.offset := ~dev#1.base, 12 + ~dev#1.offset;havoc s3c_hwmon_add_raw_#res#1;havoc s3c_hwmon_add_raw_~dev#1.base, s3c_hwmon_add_raw_~dev#1.offset;s3c_hwmon_add_raw_~dev#1.base, s3c_hwmon_add_raw_~dev#1.offset := s3c_hwmon_add_raw_#in~dev#1.base, s3c_hwmon_add_raw_#in~dev#1.offset;s3c_hwmon_add_raw_#res#1 := 0; {1646#false} is VALID [2022-02-20 22:07:01,230 INFO L290 TraceCheckUtils]: 60: Hoare triple {1646#false} #t~ret86#1 := s3c_hwmon_add_raw_#res#1;assume { :end_inline_s3c_hwmon_add_raw } true;assume -2147483648 <= #t~ret86#1 && #t~ret86#1 <= 2147483647;~ret~3#1 := #t~ret86#1;havoc #t~ret86#1; {1646#false} is VALID [2022-02-20 22:07:01,230 INFO L290 TraceCheckUtils]: 61: Hoare triple {1646#false} assume !(0 != ~ret~3#1);assume { :begin_inline_hwmon_device_register } true;hwmon_device_register_#in~arg0#1.base, hwmon_device_register_#in~arg0#1.offset := ~dev#1.base, 12 + ~dev#1.offset;havoc hwmon_device_register_#res#1.base, hwmon_device_register_#res#1.offset;havoc hwmon_device_register_#t~ret133#1.base, hwmon_device_register_#t~ret133#1.offset, hwmon_device_register_~arg0#1.base, hwmon_device_register_~arg0#1.offset;hwmon_device_register_~arg0#1.base, hwmon_device_register_~arg0#1.offset := hwmon_device_register_#in~arg0#1.base, hwmon_device_register_#in~arg0#1.offset; {1646#false} is VALID [2022-02-20 22:07:01,230 INFO L272 TraceCheckUtils]: 62: Hoare triple {1646#false} call hwmon_device_register_#t~ret133#1.base, hwmon_device_register_#t~ret133#1.offset := ldv_malloc(1003); {1685#(and (= |old(#length)| |#length|) (= |old(#valid)| |#valid|))} is VALID [2022-02-20 22:07:01,230 INFO L290 TraceCheckUtils]: 63: Hoare triple {1685#(and (= |old(#length)| |#length|) (= |old(#valid)| |#valid|))} ~size := #in~size;havoc ~p~0.base, ~p~0.offset;havoc ~tmp~0.base, ~tmp~0.offset;havoc ~tmp___0~0;assume -2147483648 <= #t~nondet29 && #t~nondet29 <= 2147483647;~tmp___0~0 := #t~nondet29;havoc #t~nondet29; {1645#true} is VALID [2022-02-20 22:07:01,231 INFO L290 TraceCheckUtils]: 64: Hoare triple {1645#true} assume 0 != ~tmp___0~0;#res.base, #res.offset := 0, 0; {1645#true} is VALID [2022-02-20 22:07:01,231 INFO L290 TraceCheckUtils]: 65: Hoare triple {1645#true} assume true; {1645#true} is VALID [2022-02-20 22:07:01,231 INFO L284 TraceCheckUtils]: 66: Hoare quadruple {1645#true} {1646#false} #430#return; {1646#false} is VALID [2022-02-20 22:07:01,231 INFO L290 TraceCheckUtils]: 67: Hoare triple {1646#false} hwmon_device_register_#res#1.base, hwmon_device_register_#res#1.offset := hwmon_device_register_#t~ret133#1.base, hwmon_device_register_#t~ret133#1.offset;havoc hwmon_device_register_#t~ret133#1.base, hwmon_device_register_#t~ret133#1.offset; {1646#false} is VALID [2022-02-20 22:07:01,231 INFO L290 TraceCheckUtils]: 68: Hoare triple {1646#false} #t~ret87#1.base, #t~ret87#1.offset := hwmon_device_register_#res#1.base, hwmon_device_register_#res#1.offset;assume { :end_inline_hwmon_device_register } true;call write~$Pointer$(#t~ret87#1.base, #t~ret87#1.offset, ~hwmon~1#1.base, 160 + ~hwmon~1#1.offset, 8);havoc #t~ret87#1.base, #t~ret87#1.offset;call #t~mem88#1.base, #t~mem88#1.offset := read~$Pointer$(~hwmon~1#1.base, 160 + ~hwmon~1#1.offset, 8); {1646#false} is VALID [2022-02-20 22:07:01,231 INFO L272 TraceCheckUtils]: 69: Hoare triple {1646#false} call #t~ret89#1 := IS_ERR(#t~mem88#1.base, #t~mem88#1.offset); {1645#true} is VALID [2022-02-20 22:07:01,232 INFO L290 TraceCheckUtils]: 70: Hoare triple {1645#true} ~ptr.base, ~ptr.offset := #in~ptr.base, #in~ptr.offset;havoc ~tmp~15; {1645#true} is VALID [2022-02-20 22:07:01,232 INFO L272 TraceCheckUtils]: 71: Hoare triple {1645#true} call #t~ret121 := ldv_is_err(~ptr.base, ~ptr.offset); {1645#true} is VALID [2022-02-20 22:07:01,232 INFO L290 TraceCheckUtils]: 72: Hoare triple {1645#true} ~ptr.base, ~ptr.offset := #in~ptr.base, #in~ptr.offset;#res := (if 0 == (if (~ptr.base + ~ptr.offset) % 18446744073709551616 > 2012 then 1 else 0) then 0 else 1); {1645#true} is VALID [2022-02-20 22:07:01,232 INFO L290 TraceCheckUtils]: 73: Hoare triple {1645#true} assume true; {1645#true} is VALID [2022-02-20 22:07:01,232 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {1645#true} {1645#true} #494#return; {1645#true} is VALID [2022-02-20 22:07:01,232 INFO L290 TraceCheckUtils]: 75: Hoare triple {1645#true} ~tmp~15 := #t~ret121;havoc #t~ret121;#res := ~tmp~15 % 256; {1645#true} is VALID [2022-02-20 22:07:01,233 INFO L290 TraceCheckUtils]: 76: Hoare triple {1645#true} assume true; {1645#true} is VALID [2022-02-20 22:07:01,233 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {1645#true} {1646#false} #432#return; {1646#false} is VALID [2022-02-20 22:07:01,233 INFO L290 TraceCheckUtils]: 78: Hoare triple {1646#false} assume -9223372036854775808 <= #t~ret89#1 && #t~ret89#1 <= 9223372036854775807;~tmp___3~0#1 := #t~ret89#1;havoc #t~mem88#1.base, #t~mem88#1.offset;havoc #t~ret89#1; {1646#false} is VALID [2022-02-20 22:07:01,233 INFO L290 TraceCheckUtils]: 79: Hoare triple {1646#false} assume !(0 != ~tmp___3~0#1);~i~0#1 := 0; {1646#false} is VALID [2022-02-20 22:07:01,233 INFO L290 TraceCheckUtils]: 80: Hoare triple {1646#false} assume ~i~0#1 % 4294967296 <= 7; {1646#false} is VALID [2022-02-20 22:07:01,233 INFO L290 TraceCheckUtils]: 81: Hoare triple {1646#false} call #t~mem93#1.base, #t~mem93#1.offset := read~$Pointer$(~pdata~2#1.base, ~pdata~2#1.offset + 8 * ~i~0#1, 8);~cfg~2#1.base, ~cfg~2#1.offset := #t~mem93#1.base, #t~mem93#1.offset;havoc #t~mem93#1.base, #t~mem93#1.offset; {1646#false} is VALID [2022-02-20 22:07:01,233 INFO L290 TraceCheckUtils]: 82: Hoare triple {1646#false} assume !(0 == (~cfg~2#1.base + ~cfg~2#1.offset) % 18446744073709551616);call #t~mem94#1 := read~int(~cfg~2#1.base, 8 + ~cfg~2#1.offset, 4); {1646#false} is VALID [2022-02-20 22:07:01,234 INFO L290 TraceCheckUtils]: 83: Hoare triple {1646#false} assume #t~mem94#1 % 4294967296 > 65535;havoc #t~mem94#1;havoc #t~nondet95#1; {1646#false} is VALID [2022-02-20 22:07:01,234 INFO L290 TraceCheckUtils]: 84: Hoare triple {1646#false} call #t~mem96#1 := read~int(~cfg~2#1.base, 12 + ~cfg~2#1.offset, 4); {1646#false} is VALID [2022-02-20 22:07:01,234 INFO L290 TraceCheckUtils]: 85: Hoare triple {1646#false} assume !(0 == #t~mem96#1 % 4294967296);havoc #t~mem96#1;call #t~mem98#1.base, #t~mem98#1.offset := read~$Pointer$(~pdata~2#1.base, ~pdata~2#1.offset + 8 * ~i~0#1, 8);assume { :begin_inline_s3c_hwmon_create_attr } true;s3c_hwmon_create_attr_#in~dev#1.base, s3c_hwmon_create_attr_#in~dev#1.offset, s3c_hwmon_create_attr_#in~cfg#1.base, s3c_hwmon_create_attr_#in~cfg#1.offset, s3c_hwmon_create_attr_#in~attrs#1.base, s3c_hwmon_create_attr_#in~attrs#1.offset, s3c_hwmon_create_attr_#in~channel#1 := ~dev#1.base, 12 + ~dev#1.offset, #t~mem98#1.base, #t~mem98#1.offset, ~hwmon~1#1.base, 168 + ~hwmon~1#1.offset + 120 * (~i~0#1 % 4294967296), ~i~0#1;havoc s3c_hwmon_create_attr_#res#1;havoc s3c_hwmon_create_attr_#t~nondet69#1, s3c_hwmon_create_attr_#t~ret70#1, s3c_hwmon_create_attr_#t~nondet71#1, s3c_hwmon_create_attr_#t~mem72#1.base, s3c_hwmon_create_attr_#t~mem72#1.offset, s3c_hwmon_create_attr_#t~nondet73#1, s3c_hwmon_create_attr_#t~ret74#1, s3c_hwmon_create_attr_#t~nondet75#1, s3c_hwmon_create_attr_~dev#1.base, s3c_hwmon_create_attr_~dev#1.offset, s3c_hwmon_create_attr_~cfg#1.base, s3c_hwmon_create_attr_~cfg#1.offset, s3c_hwmon_create_attr_~attrs#1.base, s3c_hwmon_create_attr_~attrs#1.offset, s3c_hwmon_create_attr_~channel#1, s3c_hwmon_create_attr_~attr~0#1.base, s3c_hwmon_create_attr_~attr~0#1.offset, s3c_hwmon_create_attr_~ret~2#1;s3c_hwmon_create_attr_~dev#1.base, s3c_hwmon_create_attr_~dev#1.offset := s3c_hwmon_create_attr_#in~dev#1.base, s3c_hwmon_create_attr_#in~dev#1.offset;s3c_hwmon_create_attr_~cfg#1.base, s3c_hwmon_create_attr_~cfg#1.offset := s3c_hwmon_create_attr_#in~cfg#1.base, s3c_hwmon_create_attr_#in~cfg#1.offset;s3c_hwmon_create_attr_~attrs#1.base, s3c_hwmon_create_attr_~attrs#1.offset := s3c_hwmon_create_attr_#in~attrs#1.base, s3c_hwmon_create_attr_#in~attrs#1.offset;s3c_hwmon_create_attr_~channel#1 := s3c_hwmon_create_attr_#in~channel#1;havoc s3c_hwmon_create_attr_~attr~0#1.base, s3c_hwmon_create_attr_~attr~0#1.offset;havoc s3c_hwmon_create_attr_~ret~2#1;havoc s3c_hwmon_create_attr_#t~nondet69#1;s3c_hwmon_create_attr_~attr~0#1.base, s3c_hwmon_create_attr_~attr~0#1.offset := s3c_hwmon_create_attr_~attrs#1.base, s3c_hwmon_create_attr_~attrs#1.offset;call write~int(s3c_hwmon_create_attr_~channel#1, s3c_hwmon_create_attr_~attr~0#1.base, 44 + s3c_hwmon_create_attr_~attr~0#1.offset, 4);call write~$Pointer$(s3c_hwmon_create_attr_~attrs#1.base, 96 + s3c_hwmon_create_attr_~attrs#1.offset, s3c_hwmon_create_attr_~attr~0#1.base, s3c_hwmon_create_attr_~attr~0#1.offset, 8);call write~int(292, s3c_hwmon_create_attr_~attr~0#1.base, 8 + s3c_hwmon_create_attr_~attr~0#1.offset, 4);call write~$Pointer$(#funAddr~s3c_hwmon_ch_show.base, #funAddr~s3c_hwmon_ch_show.offset, s3c_hwmon_create_attr_~attr~0#1.base, 28 + s3c_hwmon_create_attr_~attr~0#1.offset, 8);assume { :begin_inline_ldv_device_create_file_7 } true;ldv_device_create_file_7_#in~ldv_func_arg1#1.base, ldv_device_create_file_7_#in~ldv_func_arg1#1.offset, ldv_device_create_file_7_#in~ldv_func_arg2#1.base, ldv_device_create_file_7_#in~ldv_func_arg2#1.offset := s3c_hwmon_create_attr_~dev#1.base, s3c_hwmon_create_attr_~dev#1.offset, s3c_hwmon_create_attr_~attr~0#1.base, s3c_hwmon_create_attr_~attr~0#1.offset;havoc ldv_device_create_file_7_#res#1;havoc ldv_device_create_file_7_#t~ret122#1, ldv_device_create_file_7_~ldv_func_arg1#1.base, ldv_device_create_file_7_~ldv_func_arg1#1.offset, ldv_device_create_file_7_~ldv_func_arg2#1.base, ldv_device_create_file_7_~ldv_func_arg2#1.offset, ldv_device_create_file_7_~tmp~16#1;ldv_device_create_file_7_~ldv_func_arg1#1.base, ldv_device_create_file_7_~ldv_func_arg1#1.offset := ldv_device_create_file_7_#in~ldv_func_arg1#1.base, ldv_device_create_file_7_#in~ldv_func_arg1#1.offset;ldv_device_create_file_7_~ldv_func_arg2#1.base, ldv_device_create_file_7_~ldv_func_arg2#1.offset := ldv_device_create_file_7_#in~ldv_func_arg2#1.base, ldv_device_create_file_7_#in~ldv_func_arg2#1.offset;havoc ldv_device_create_file_7_~tmp~16#1; {1646#false} is VALID [2022-02-20 22:07:01,234 INFO L272 TraceCheckUtils]: 86: Hoare triple {1646#false} call ldv_device_create_file_7_#t~ret122#1 := ldv_device_create_file(); {1646#false} is VALID [2022-02-20 22:07:01,234 INFO L290 TraceCheckUtils]: 87: Hoare triple {1646#false} havoc ~nondetermined~0#1;havoc ~tmp~21#1; {1646#false} is VALID [2022-02-20 22:07:01,234 INFO L272 TraceCheckUtils]: 88: Hoare triple {1646#false} call #t~ret127#1 := ldv_undef_int(); {1645#true} is VALID [2022-02-20 22:07:01,235 INFO L290 TraceCheckUtils]: 89: Hoare triple {1645#true} havoc ~tmp~4;assume -2147483648 <= #t~nondet37 && #t~nondet37 <= 2147483647;~tmp~4 := #t~nondet37;havoc #t~nondet37;#res := ~tmp~4; {1645#true} is VALID [2022-02-20 22:07:01,235 INFO L290 TraceCheckUtils]: 90: Hoare triple {1645#true} assume true; {1645#true} is VALID [2022-02-20 22:07:01,235 INFO L284 TraceCheckUtils]: 91: Hoare quadruple {1645#true} {1646#false} #488#return; {1646#false} is VALID [2022-02-20 22:07:01,235 INFO L290 TraceCheckUtils]: 92: Hoare triple {1646#false} assume -2147483648 <= #t~ret127#1 && #t~ret127#1 <= 2147483647;~nondetermined~0#1 := #t~ret127#1;havoc #t~ret127#1; {1646#false} is VALID [2022-02-20 22:07:01,235 INFO L290 TraceCheckUtils]: 93: Hoare triple {1646#false} assume 0 != ~nondetermined~0#1;~ldv_count_2~0 := 1 + ~ldv_count_2~0; {1646#false} is VALID [2022-02-20 22:07:01,235 INFO L290 TraceCheckUtils]: 94: Hoare triple {1646#false} assume ~ldv_count_1~0 < ~ldv_count_2~0;assume { :begin_inline_ldv_error } true; {1646#false} is VALID [2022-02-20 22:07:01,236 INFO L290 TraceCheckUtils]: 95: Hoare triple {1646#false} assume !false; {1646#false} is VALID [2022-02-20 22:07:01,236 INFO L134 CoverageAnalysis]: Checked inductivity of 22 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 22 trivial. 0 not checked. [2022-02-20 22:07:01,236 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 22:07:01,236 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1420395778] [2022-02-20 22:07:01,236 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1420395778] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 22:07:01,237 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 22:07:01,237 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-02-20 22:07:01,237 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1408632272] [2022-02-20 22:07:01,237 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 22:07:01,238 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 10.666666666666666) internal successors, (64), 5 states have internal predecessors, (64), 2 states have call successors, (10), 3 states have call predecessors, (10), 1 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) Word has length 96 [2022-02-20 22:07:01,238 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 22:07:01,239 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 6 states, 6 states have (on average 10.666666666666666) internal successors, (64), 5 states have internal predecessors, (64), 2 states have call successors, (10), 3 states have call predecessors, (10), 1 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) [2022-02-20 22:07:01,296 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 82 edges. 82 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 22:07:01,296 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-02-20 22:07:01,296 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 22:07:01,297 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-02-20 22:07:01,297 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2022-02-20 22:07:01,297 INFO L87 Difference]: Start difference. First operand 210 states and 271 transitions. Second operand has 6 states, 6 states have (on average 10.666666666666666) internal successors, (64), 5 states have internal predecessors, (64), 2 states have call successors, (10), 3 states have call predecessors, (10), 1 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) [2022-02-20 22:07:02,255 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 22:07:02,271 INFO L93 Difference]: Finished difference Result 440 states and 573 transitions. [2022-02-20 22:07:02,271 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-02-20 22:07:02,272 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 10.666666666666666) internal successors, (64), 5 states have internal predecessors, (64), 2 states have call successors, (10), 3 states have call predecessors, (10), 1 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) Word has length 96 [2022-02-20 22:07:02,273 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 22:07:02,273 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 10.666666666666666) internal successors, (64), 5 states have internal predecessors, (64), 2 states have call successors, (10), 3 states have call predecessors, (10), 1 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) [2022-02-20 22:07:02,280 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 525 transitions. [2022-02-20 22:07:02,280 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 10.666666666666666) internal successors, (64), 5 states have internal predecessors, (64), 2 states have call successors, (10), 3 states have call predecessors, (10), 1 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) [2022-02-20 22:07:02,288 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 525 transitions. [2022-02-20 22:07:02,288 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 525 transitions. [2022-02-20 22:07:02,641 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 525 edges. 525 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 22:07:02,646 INFO L225 Difference]: With dead ends: 440 [2022-02-20 22:07:02,646 INFO L226 Difference]: Without dead ends: 233 [2022-02-20 22:07:02,647 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 26 GetRequests, 20 SyntacticMatches, 0 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=19, Invalid=37, Unknown=0, NotChecked=0, Total=56 [2022-02-20 22:07:02,648 INFO L933 BasicCegarLoop]: 237 mSDtfsCounter, 63 mSDsluCounter, 624 mSDsCounter, 0 mSdLazyCounter, 313 mSolverCounterSat, 41 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 72 SdHoareTripleChecker+Valid, 861 SdHoareTripleChecker+Invalid, 354 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 41 IncrementalHoareTripleChecker+Valid, 313 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-02-20 22:07:02,648 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [72 Valid, 861 Invalid, 354 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [41 Valid, 313 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-02-20 22:07:02,649 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 233 states. [2022-02-20 22:07:02,657 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 233 to 213. [2022-02-20 22:07:02,657 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 22:07:02,658 INFO L82 GeneralOperation]: Start isEquivalent. First operand 233 states. Second operand has 213 states, 160 states have (on average 1.2625) internal successors, (202), 161 states have internal predecessors, (202), 36 states have call successors, (36), 16 states have call predecessors, (36), 16 states have return successors, (36), 36 states have call predecessors, (36), 36 states have call successors, (36) [2022-02-20 22:07:02,658 INFO L74 IsIncluded]: Start isIncluded. First operand 233 states. Second operand has 213 states, 160 states have (on average 1.2625) internal successors, (202), 161 states have internal predecessors, (202), 36 states have call successors, (36), 16 states have call predecessors, (36), 16 states have return successors, (36), 36 states have call predecessors, (36), 36 states have call successors, (36) [2022-02-20 22:07:02,659 INFO L87 Difference]: Start difference. First operand 233 states. Second operand has 213 states, 160 states have (on average 1.2625) internal successors, (202), 161 states have internal predecessors, (202), 36 states have call successors, (36), 16 states have call predecessors, (36), 16 states have return successors, (36), 36 states have call predecessors, (36), 36 states have call successors, (36) [2022-02-20 22:07:02,665 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 22:07:02,665 INFO L93 Difference]: Finished difference Result 233 states and 303 transitions. [2022-02-20 22:07:02,665 INFO L276 IsEmpty]: Start isEmpty. Operand 233 states and 303 transitions. [2022-02-20 22:07:02,666 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 22:07:02,666 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 22:07:02,667 INFO L74 IsIncluded]: Start isIncluded. First operand has 213 states, 160 states have (on average 1.2625) internal successors, (202), 161 states have internal predecessors, (202), 36 states have call successors, (36), 16 states have call predecessors, (36), 16 states have return successors, (36), 36 states have call predecessors, (36), 36 states have call successors, (36) Second operand 233 states. [2022-02-20 22:07:02,668 INFO L87 Difference]: Start difference. First operand has 213 states, 160 states have (on average 1.2625) internal successors, (202), 161 states have internal predecessors, (202), 36 states have call successors, (36), 16 states have call predecessors, (36), 16 states have return successors, (36), 36 states have call predecessors, (36), 36 states have call successors, (36) Second operand 233 states. [2022-02-20 22:07:02,693 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 22:07:02,707 INFO L93 Difference]: Finished difference Result 233 states and 303 transitions. [2022-02-20 22:07:02,707 INFO L276 IsEmpty]: Start isEmpty. Operand 233 states and 303 transitions. [2022-02-20 22:07:02,708 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 22:07:02,708 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 22:07:02,708 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 22:07:02,708 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 22:07:02,709 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 213 states, 160 states have (on average 1.2625) internal successors, (202), 161 states have internal predecessors, (202), 36 states have call successors, (36), 16 states have call predecessors, (36), 16 states have return successors, (36), 36 states have call predecessors, (36), 36 states have call successors, (36) [2022-02-20 22:07:02,715 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 213 states to 213 states and 274 transitions. [2022-02-20 22:07:02,715 INFO L78 Accepts]: Start accepts. Automaton has 213 states and 274 transitions. Word has length 96 [2022-02-20 22:07:02,715 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 22:07:02,715 INFO L470 AbstractCegarLoop]: Abstraction has 213 states and 274 transitions. [2022-02-20 22:07:02,715 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 10.666666666666666) internal successors, (64), 5 states have internal predecessors, (64), 2 states have call successors, (10), 3 states have call predecessors, (10), 1 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) [2022-02-20 22:07:02,716 INFO L276 IsEmpty]: Start isEmpty. Operand 213 states and 274 transitions. [2022-02-20 22:07:02,717 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 123 [2022-02-20 22:07:02,717 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 22:07:02,718 INFO L514 BasicCegarLoop]: trace histogram [3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 22:07:02,718 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2022-02-20 22:07:02,718 INFO L402 AbstractCegarLoop]: === Iteration 3 === Targeting ldv_device_create_fileErr0ASSERT_VIOLATIONERROR_FUNCTION === [ldv_device_create_fileErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 22:07:02,719 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 22:07:02,719 INFO L85 PathProgramCache]: Analyzing trace with hash -375956961, now seen corresponding path program 1 times [2022-02-20 22:07:02,719 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 22:07:02,719 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [810958104] [2022-02-20 22:07:02,719 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 22:07:02,719 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 22:07:02,797 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:07:02,850 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 14 [2022-02-20 22:07:02,853 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:07:02,865 INFO L290 TraceCheckUtils]: 0: Hoare triple {3130#(and (= |old(#length)| |#length|) (= |old(#valid)| |#valid|))} ~size := #in~size;havoc ~p~0.base, ~p~0.offset;havoc ~tmp~0.base, ~tmp~0.offset;havoc ~tmp___0~0;assume -2147483648 <= #t~nondet29 && #t~nondet29 <= 2147483647;~tmp___0~0 := #t~nondet29;havoc #t~nondet29; {3072#true} is VALID [2022-02-20 22:07:02,865 INFO L290 TraceCheckUtils]: 1: Hoare triple {3072#true} assume 0 != ~tmp___0~0;#res.base, #res.offset := 0, 0; {3131#(and (= |ldv_malloc_#res.base| 0) (= |ldv_malloc_#res.offset| 0))} is VALID [2022-02-20 22:07:02,866 INFO L290 TraceCheckUtils]: 2: Hoare triple {3131#(and (= |ldv_malloc_#res.base| 0) (= |ldv_malloc_#res.offset| 0))} assume true; {3131#(and (= |ldv_malloc_#res.base| 0) (= |ldv_malloc_#res.offset| 0))} is VALID [2022-02-20 22:07:02,868 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3131#(and (= |ldv_malloc_#res.base| 0) (= |ldv_malloc_#res.offset| 0))} {3072#true} #476#return; {3078#(and (= |ULTIMATE.start_ldv_platform_driver_init_1_#t~ret109#1.offset| 0) (= |ULTIMATE.start_ldv_platform_driver_init_1_#t~ret109#1.base| 0))} is VALID [2022-02-20 22:07:02,868 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 20 [2022-02-20 22:07:02,870 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:07:02,885 INFO L290 TraceCheckUtils]: 0: Hoare triple {3072#true} ~cond := #in~cond; {3132#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-02-20 22:07:02,885 INFO L290 TraceCheckUtils]: 1: Hoare triple {3132#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {3133#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-02-20 22:07:02,886 INFO L290 TraceCheckUtils]: 2: Hoare triple {3133#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {3133#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-02-20 22:07:02,886 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3133#(not (= |assume_abort_if_not_#in~cond| 0))} {3079#(and (= |ULTIMATE.start_ldv_platform_driver_init_1_~tmp~12#1.base| 0) (= |ULTIMATE.start_ldv_platform_driver_init_1_~tmp~12#1.offset| 0))} #478#return; {3073#false} is VALID [2022-02-20 22:07:02,892 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 36 [2022-02-20 22:07:02,893 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:07:02,897 INFO L290 TraceCheckUtils]: 0: Hoare triple {3134#(= |#memory_int| |old(#memory_int)|)} #memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, #ptr.base); {3072#true} is VALID [2022-02-20 22:07:02,897 INFO L290 TraceCheckUtils]: 1: Hoare triple {3072#true} assume true; {3072#true} is VALID [2022-02-20 22:07:02,897 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {3072#true} {3073#false} #416#return; {3073#false} is VALID [2022-02-20 22:07:02,898 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 41 [2022-02-20 22:07:02,898 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:07:02,901 INFO L290 TraceCheckUtils]: 0: Hoare triple {3072#true} ~cond := #in~cond; {3072#true} is VALID [2022-02-20 22:07:02,901 INFO L290 TraceCheckUtils]: 1: Hoare triple {3072#true} assume !(0 == ~cond); {3072#true} is VALID [2022-02-20 22:07:02,901 INFO L290 TraceCheckUtils]: 2: Hoare triple {3072#true} assume true; {3072#true} is VALID [2022-02-20 22:07:02,901 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3072#true} {3073#false} #418#return; {3073#false} is VALID [2022-02-20 22:07:02,902 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 46 [2022-02-20 22:07:02,906 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:07:02,919 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 1 [2022-02-20 22:07:02,920 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:07:02,924 INFO L290 TraceCheckUtils]: 0: Hoare triple {3072#true} ~ptr.base, ~ptr.offset := #in~ptr.base, #in~ptr.offset;#res := (if 0 == (if (~ptr.base + ~ptr.offset) % 18446744073709551616 > 2012 then 1 else 0) then 0 else 1); {3072#true} is VALID [2022-02-20 22:07:02,924 INFO L290 TraceCheckUtils]: 1: Hoare triple {3072#true} assume true; {3072#true} is VALID [2022-02-20 22:07:02,924 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {3072#true} {3072#true} #494#return; {3072#true} is VALID [2022-02-20 22:07:02,924 INFO L290 TraceCheckUtils]: 0: Hoare triple {3072#true} ~ptr.base, ~ptr.offset := #in~ptr.base, #in~ptr.offset;havoc ~tmp~15; {3072#true} is VALID [2022-02-20 22:07:02,924 INFO L272 TraceCheckUtils]: 1: Hoare triple {3072#true} call #t~ret121 := ldv_is_err(~ptr.base, ~ptr.offset); {3072#true} is VALID [2022-02-20 22:07:02,924 INFO L290 TraceCheckUtils]: 2: Hoare triple {3072#true} ~ptr.base, ~ptr.offset := #in~ptr.base, #in~ptr.offset;#res := (if 0 == (if (~ptr.base + ~ptr.offset) % 18446744073709551616 > 2012 then 1 else 0) then 0 else 1); {3072#true} is VALID [2022-02-20 22:07:02,925 INFO L290 TraceCheckUtils]: 3: Hoare triple {3072#true} assume true; {3072#true} is VALID [2022-02-20 22:07:02,925 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {3072#true} {3072#true} #494#return; {3072#true} is VALID [2022-02-20 22:07:02,925 INFO L290 TraceCheckUtils]: 5: Hoare triple {3072#true} ~tmp~15 := #t~ret121;havoc #t~ret121;#res := ~tmp~15 % 256; {3072#true} is VALID [2022-02-20 22:07:02,925 INFO L290 TraceCheckUtils]: 6: Hoare triple {3072#true} assume true; {3072#true} is VALID [2022-02-20 22:07:02,925 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {3072#true} {3073#false} #420#return; {3073#false} is VALID [2022-02-20 22:07:02,925 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 56 [2022-02-20 22:07:02,927 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:07:02,932 INFO L290 TraceCheckUtils]: 0: Hoare triple {3072#true} ~cond := #in~cond; {3072#true} is VALID [2022-02-20 22:07:02,932 INFO L290 TraceCheckUtils]: 1: Hoare triple {3072#true} assume !(0 == ~cond); {3072#true} is VALID [2022-02-20 22:07:02,932 INFO L290 TraceCheckUtils]: 2: Hoare triple {3072#true} assume true; {3072#true} is VALID [2022-02-20 22:07:02,932 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3072#true} {3073#false} #422#return; {3073#false} is VALID [2022-02-20 22:07:02,932 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 68 [2022-02-20 22:07:02,934 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:07:02,938 INFO L290 TraceCheckUtils]: 0: Hoare triple {3130#(and (= |old(#length)| |#length|) (= |old(#valid)| |#valid|))} ~size := #in~size;havoc ~p~0.base, ~p~0.offset;havoc ~tmp~0.base, ~tmp~0.offset;havoc ~tmp___0~0;assume -2147483648 <= #t~nondet29 && #t~nondet29 <= 2147483647;~tmp___0~0 := #t~nondet29;havoc #t~nondet29; {3072#true} is VALID [2022-02-20 22:07:02,938 INFO L290 TraceCheckUtils]: 1: Hoare triple {3072#true} assume 0 != ~tmp___0~0;#res.base, #res.offset := 0, 0; {3072#true} is VALID [2022-02-20 22:07:02,938 INFO L290 TraceCheckUtils]: 2: Hoare triple {3072#true} assume true; {3072#true} is VALID [2022-02-20 22:07:02,938 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3072#true} {3073#false} #424#return; {3073#false} is VALID [2022-02-20 22:07:02,938 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 75 [2022-02-20 22:07:02,940 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:07:02,943 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 1 [2022-02-20 22:07:02,944 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:07:02,949 INFO L290 TraceCheckUtils]: 0: Hoare triple {3072#true} ~ptr.base, ~ptr.offset := #in~ptr.base, #in~ptr.offset;#res := (if 0 == (if (~ptr.base + ~ptr.offset) % 18446744073709551616 > 2012 then 1 else 0) then 0 else 1); {3072#true} is VALID [2022-02-20 22:07:02,950 INFO L290 TraceCheckUtils]: 1: Hoare triple {3072#true} assume true; {3072#true} is VALID [2022-02-20 22:07:02,950 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {3072#true} {3072#true} #494#return; {3072#true} is VALID [2022-02-20 22:07:02,950 INFO L290 TraceCheckUtils]: 0: Hoare triple {3072#true} ~ptr.base, ~ptr.offset := #in~ptr.base, #in~ptr.offset;havoc ~tmp~15; {3072#true} is VALID [2022-02-20 22:07:02,950 INFO L272 TraceCheckUtils]: 1: Hoare triple {3072#true} call #t~ret121 := ldv_is_err(~ptr.base, ~ptr.offset); {3072#true} is VALID [2022-02-20 22:07:02,950 INFO L290 TraceCheckUtils]: 2: Hoare triple {3072#true} ~ptr.base, ~ptr.offset := #in~ptr.base, #in~ptr.offset;#res := (if 0 == (if (~ptr.base + ~ptr.offset) % 18446744073709551616 > 2012 then 1 else 0) then 0 else 1); {3072#true} is VALID [2022-02-20 22:07:02,950 INFO L290 TraceCheckUtils]: 3: Hoare triple {3072#true} assume true; {3072#true} is VALID [2022-02-20 22:07:02,950 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {3072#true} {3072#true} #494#return; {3072#true} is VALID [2022-02-20 22:07:02,951 INFO L290 TraceCheckUtils]: 5: Hoare triple {3072#true} ~tmp~15 := #t~ret121;havoc #t~ret121;#res := ~tmp~15 % 256; {3072#true} is VALID [2022-02-20 22:07:02,951 INFO L290 TraceCheckUtils]: 6: Hoare triple {3072#true} assume true; {3072#true} is VALID [2022-02-20 22:07:02,951 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {3072#true} {3073#false} #426#return; {3073#false} is VALID [2022-02-20 22:07:02,952 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 88 [2022-02-20 22:07:02,954 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:07:02,956 INFO L290 TraceCheckUtils]: 0: Hoare triple {3130#(and (= |old(#length)| |#length|) (= |old(#valid)| |#valid|))} ~size := #in~size;havoc ~p~0.base, ~p~0.offset;havoc ~tmp~0.base, ~tmp~0.offset;havoc ~tmp___0~0;assume -2147483648 <= #t~nondet29 && #t~nondet29 <= 2147483647;~tmp___0~0 := #t~nondet29;havoc #t~nondet29; {3072#true} is VALID [2022-02-20 22:07:02,956 INFO L290 TraceCheckUtils]: 1: Hoare triple {3072#true} assume 0 != ~tmp___0~0;#res.base, #res.offset := 0, 0; {3072#true} is VALID [2022-02-20 22:07:02,956 INFO L290 TraceCheckUtils]: 2: Hoare triple {3072#true} assume true; {3072#true} is VALID [2022-02-20 22:07:02,956 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3072#true} {3073#false} #430#return; {3073#false} is VALID [2022-02-20 22:07:02,956 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 95 [2022-02-20 22:07:02,959 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:07:02,963 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 1 [2022-02-20 22:07:02,964 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:07:02,966 INFO L290 TraceCheckUtils]: 0: Hoare triple {3072#true} ~ptr.base, ~ptr.offset := #in~ptr.base, #in~ptr.offset;#res := (if 0 == (if (~ptr.base + ~ptr.offset) % 18446744073709551616 > 2012 then 1 else 0) then 0 else 1); {3072#true} is VALID [2022-02-20 22:07:02,967 INFO L290 TraceCheckUtils]: 1: Hoare triple {3072#true} assume true; {3072#true} is VALID [2022-02-20 22:07:02,967 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {3072#true} {3072#true} #494#return; {3072#true} is VALID [2022-02-20 22:07:02,967 INFO L290 TraceCheckUtils]: 0: Hoare triple {3072#true} ~ptr.base, ~ptr.offset := #in~ptr.base, #in~ptr.offset;havoc ~tmp~15; {3072#true} is VALID [2022-02-20 22:07:02,967 INFO L272 TraceCheckUtils]: 1: Hoare triple {3072#true} call #t~ret121 := ldv_is_err(~ptr.base, ~ptr.offset); {3072#true} is VALID [2022-02-20 22:07:02,967 INFO L290 TraceCheckUtils]: 2: Hoare triple {3072#true} ~ptr.base, ~ptr.offset := #in~ptr.base, #in~ptr.offset;#res := (if 0 == (if (~ptr.base + ~ptr.offset) % 18446744073709551616 > 2012 then 1 else 0) then 0 else 1); {3072#true} is VALID [2022-02-20 22:07:02,967 INFO L290 TraceCheckUtils]: 3: Hoare triple {3072#true} assume true; {3072#true} is VALID [2022-02-20 22:07:02,967 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {3072#true} {3072#true} #494#return; {3072#true} is VALID [2022-02-20 22:07:02,968 INFO L290 TraceCheckUtils]: 5: Hoare triple {3072#true} ~tmp~15 := #t~ret121;havoc #t~ret121;#res := ~tmp~15 % 256; {3072#true} is VALID [2022-02-20 22:07:02,968 INFO L290 TraceCheckUtils]: 6: Hoare triple {3072#true} assume true; {3072#true} is VALID [2022-02-20 22:07:02,968 INFO L284 TraceCheckUtils]: 7: Hoare quadruple {3072#true} {3073#false} #432#return; {3073#false} is VALID [2022-02-20 22:07:02,968 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 114 [2022-02-20 22:07:02,970 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:07:02,973 INFO L290 TraceCheckUtils]: 0: Hoare triple {3072#true} havoc ~tmp~4;assume -2147483648 <= #t~nondet37 && #t~nondet37 <= 2147483647;~tmp~4 := #t~nondet37;havoc #t~nondet37;#res := ~tmp~4; {3072#true} is VALID [2022-02-20 22:07:02,973 INFO L290 TraceCheckUtils]: 1: Hoare triple {3072#true} assume true; {3072#true} is VALID [2022-02-20 22:07:02,974 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {3072#true} {3073#false} #488#return; {3073#false} is VALID [2022-02-20 22:07:02,974 INFO L290 TraceCheckUtils]: 0: Hoare triple {3072#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(94, 2);call #Ultimate.allocInit(4, 3);call write~init~int(60, 3, 0, 1);call write~init~int(55, 3, 1, 1);call write~init~int(62, 3, 2, 1);call write~init~int(0, 3, 3, 1);call #Ultimate.allocInit(20, 4);call #Ultimate.allocInit(4, 5);call write~init~int(37, 5, 0, 1);call write~init~int(100, 5, 1, 1);call write~init~int(10, 5, 2, 1);call write~init~int(0, 5, 3, 1);call #Ultimate.allocInit(4, 6);call write~init~int(37, 6, 0, 1);call write~init~int(115, 6, 1, 1);call write~init~int(10, 6, 2, 1);call write~init~int(0, 6, 3, 1);call #Ultimate.allocInit(11, 7);call #Ultimate.allocInit(34, 8);call #Ultimate.allocInit(11, 9);call #Ultimate.allocInit(34, 10);call #Ultimate.allocInit(27, 11);call #Ultimate.allocInit(11, 12);call #Ultimate.allocInit(13, 13);call #Ultimate.allocInit(21, 14);call #Ultimate.allocInit(30, 15);call #Ultimate.allocInit(33, 16);call #Ultimate.allocInit(25, 17);call #Ultimate.allocInit(27, 18);call #Ultimate.allocInit(10, 19);~LDV_IN_INTERRUPT~0 := 1;~ref_cnt~0 := 0;~ldv_state_variable_1~0 := 0;~s3c_hwmon_driver_group1~0.base, ~s3c_hwmon_driver_group1~0.offset := 0, 0;~probed_1~0 := 0;~ldv_state_variable_0~0 := 0;~#s3c_hwmon_driver~0.base, ~#s3c_hwmon_driver~0.offset := 20, 0;call #Ultimate.allocInit(153, 20);call write~init~$Pointer$(#funAddr~s3c_hwmon_probe.base, #funAddr~s3c_hwmon_probe.offset, ~#s3c_hwmon_driver~0.base, ~#s3c_hwmon_driver~0.offset, 8);call write~init~$Pointer$(#funAddr~s3c_hwmon_remove.base, #funAddr~s3c_hwmon_remove.offset, ~#s3c_hwmon_driver~0.base, 8 + ~#s3c_hwmon_driver~0.offset, 8);call write~init~$Pointer$(0, 0, ~#s3c_hwmon_driver~0.base, 16 + ~#s3c_hwmon_driver~0.offset, 8);call write~init~$Pointer$(0, 0, ~#s3c_hwmon_driver~0.base, 24 + ~#s3c_hwmon_driver~0.offset, 8);call write~init~$Pointer$(0, 0, ~#s3c_hwmon_driver~0.base, 32 + ~#s3c_hwmon_driver~0.offset, 8);call write~init~$Pointer$(19, 0, ~#s3c_hwmon_driver~0.base, 40 + ~#s3c_hwmon_driver~0.offset, 8);call write~init~$Pointer$(0, 0, ~#s3c_hwmon_driver~0.base, 48 + ~#s3c_hwmon_driver~0.offset, 8);call write~init~$Pointer$(~#__this_module~0.base, ~#__this_module~0.offset, ~#s3c_hwmon_driver~0.base, 56 + ~#s3c_hwmon_driver~0.offset, 8);call write~init~$Pointer$(0, 0, ~#s3c_hwmon_driver~0.base, 64 + ~#s3c_hwmon_driver~0.offset, 8);call write~init~int(0, ~#s3c_hwmon_driver~0.base, 72 + ~#s3c_hwmon_driver~0.offset, 1);call write~init~$Pointer$(0, 0, ~#s3c_hwmon_driver~0.base, 73 + ~#s3c_hwmon_driver~0.offset, 8);call write~init~$Pointer$(0, 0, ~#s3c_hwmon_driver~0.base, 81 + ~#s3c_hwmon_driver~0.offset, 8);call write~init~$Pointer$(0, 0, ~#s3c_hwmon_driver~0.base, 89 + ~#s3c_hwmon_driver~0.offset, 8);call write~init~$Pointer$(0, 0, ~#s3c_hwmon_driver~0.base, 97 + ~#s3c_hwmon_driver~0.offset, 8);call write~init~$Pointer$(0, 0, ~#s3c_hwmon_driver~0.base, 105 + ~#s3c_hwmon_driver~0.offset, 8);call write~init~$Pointer$(0, 0, ~#s3c_hwmon_driver~0.base, 113 + ~#s3c_hwmon_driver~0.offset, 8);call write~init~$Pointer$(0, 0, ~#s3c_hwmon_driver~0.base, 121 + ~#s3c_hwmon_driver~0.offset, 8);call write~init~$Pointer$(0, 0, ~#s3c_hwmon_driver~0.base, 129 + ~#s3c_hwmon_driver~0.offset, 8);call write~init~$Pointer$(0, 0, ~#s3c_hwmon_driver~0.base, 137 + ~#s3c_hwmon_driver~0.offset, 8);call write~init~$Pointer$(0, 0, ~#s3c_hwmon_driver~0.base, 145 + ~#s3c_hwmon_driver~0.offset, 8);~ldv_retval_0~0 := 0;~ldv_retval_1~0 := 0;~ldv_retval_2~0 := 0;~ldv_count_1~0 := 0;~ldv_count_2~0 := 0; {3072#true} is VALID [2022-02-20 22:07:02,974 INFO L290 TraceCheckUtils]: 1: Hoare triple {3072#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet110#1, main_#t~switch111#1, main_#t~nondet112#1, main_#t~switch113#1, main_#t~ret114#1, main_#t~ret115#1, main_#t~ret116#1, main_#t~nondet117#1, main_#t~switch118#1, main_#t~ret119#1, main_~tmp~13#1, main_~tmp___0~4#1, main_~tmp___1~1#1;havoc main_~tmp~13#1;havoc main_~tmp___0~4#1;havoc main_~tmp___1~1#1;assume { :begin_inline_ldv_initialize } true; {3072#true} is VALID [2022-02-20 22:07:02,974 INFO L290 TraceCheckUtils]: 2: Hoare triple {3072#true} assume { :end_inline_ldv_initialize } true;~ldv_state_variable_1~0 := 0;~ref_cnt~0 := 0;~ldv_state_variable_0~0 := 1; {3072#true} is VALID [2022-02-20 22:07:02,974 INFO L290 TraceCheckUtils]: 3: Hoare triple {3072#true} assume -2147483648 <= main_#t~nondet110#1 && main_#t~nondet110#1 <= 2147483647;main_~tmp~13#1 := main_#t~nondet110#1;havoc main_#t~nondet110#1;main_#t~switch111#1 := 0 == main_~tmp~13#1; {3072#true} is VALID [2022-02-20 22:07:02,974 INFO L290 TraceCheckUtils]: 4: Hoare triple {3072#true} assume !main_#t~switch111#1;main_#t~switch111#1 := main_#t~switch111#1 || 1 == main_~tmp~13#1; {3072#true} is VALID [2022-02-20 22:07:02,974 INFO L290 TraceCheckUtils]: 5: Hoare triple {3072#true} assume main_#t~switch111#1; {3072#true} is VALID [2022-02-20 22:07:02,975 INFO L290 TraceCheckUtils]: 6: Hoare triple {3072#true} assume 0 != ~ldv_state_variable_0~0;assume -2147483648 <= main_#t~nondet117#1 && main_#t~nondet117#1 <= 2147483647;main_~tmp___1~1#1 := main_#t~nondet117#1;havoc main_#t~nondet117#1;main_#t~switch118#1 := 0 == main_~tmp___1~1#1; {3072#true} is VALID [2022-02-20 22:07:02,975 INFO L290 TraceCheckUtils]: 7: Hoare triple {3072#true} assume !main_#t~switch118#1;main_#t~switch118#1 := main_#t~switch118#1 || 1 == main_~tmp___1~1#1; {3072#true} is VALID [2022-02-20 22:07:02,975 INFO L290 TraceCheckUtils]: 8: Hoare triple {3072#true} assume main_#t~switch118#1; {3072#true} is VALID [2022-02-20 22:07:02,975 INFO L290 TraceCheckUtils]: 9: Hoare triple {3072#true} assume 1 == ~ldv_state_variable_0~0;assume { :begin_inline_s3c_hwmon_init } true;havoc s3c_hwmon_init_#res#1;havoc s3c_hwmon_init_#t~ret106#1, s3c_hwmon_init_~tmp~11#1;havoc s3c_hwmon_init_~tmp~11#1;assume { :begin_inline_platform_driver_register } true;platform_driver_register_#in~arg0#1.base, platform_driver_register_#in~arg0#1.offset := ~#s3c_hwmon_driver~0.base, ~#s3c_hwmon_driver~0.offset;havoc platform_driver_register_#res#1;havoc platform_driver_register_#t~nondet135#1, platform_driver_register_~arg0#1.base, platform_driver_register_~arg0#1.offset;platform_driver_register_~arg0#1.base, platform_driver_register_~arg0#1.offset := platform_driver_register_#in~arg0#1.base, platform_driver_register_#in~arg0#1.offset;assume -2147483648 <= platform_driver_register_#t~nondet135#1 && platform_driver_register_#t~nondet135#1 <= 2147483647;platform_driver_register_#res#1 := platform_driver_register_#t~nondet135#1;havoc platform_driver_register_#t~nondet135#1; {3072#true} is VALID [2022-02-20 22:07:02,975 INFO L290 TraceCheckUtils]: 10: Hoare triple {3072#true} s3c_hwmon_init_#t~ret106#1 := platform_driver_register_#res#1;assume { :end_inline_platform_driver_register } true;assume -2147483648 <= s3c_hwmon_init_#t~ret106#1 && s3c_hwmon_init_#t~ret106#1 <= 2147483647;s3c_hwmon_init_~tmp~11#1 := s3c_hwmon_init_#t~ret106#1;havoc s3c_hwmon_init_#t~ret106#1;s3c_hwmon_init_#res#1 := s3c_hwmon_init_~tmp~11#1; {3072#true} is VALID [2022-02-20 22:07:02,975 INFO L290 TraceCheckUtils]: 11: Hoare triple {3072#true} main_#t~ret119#1 := s3c_hwmon_init_#res#1;assume { :end_inline_s3c_hwmon_init } true;assume -2147483648 <= main_#t~ret119#1 && main_#t~ret119#1 <= 2147483647;~ldv_retval_2~0 := main_#t~ret119#1;havoc main_#t~ret119#1; {3072#true} is VALID [2022-02-20 22:07:02,975 INFO L290 TraceCheckUtils]: 12: Hoare triple {3072#true} assume !(0 != ~ldv_retval_2~0); {3072#true} is VALID [2022-02-20 22:07:02,975 INFO L290 TraceCheckUtils]: 13: Hoare triple {3072#true} assume 0 == ~ldv_retval_2~0;~ldv_state_variable_0~0 := 2;~ldv_state_variable_1~0 := 1;assume { :begin_inline_ldv_platform_driver_init_1 } true;havoc ldv_platform_driver_init_1_#t~ret109#1.base, ldv_platform_driver_init_1_#t~ret109#1.offset, ldv_platform_driver_init_1_~tmp~12#1.base, ldv_platform_driver_init_1_~tmp~12#1.offset;havoc ldv_platform_driver_init_1_~tmp~12#1.base, ldv_platform_driver_init_1_~tmp~12#1.offset; {3072#true} is VALID [2022-02-20 22:07:02,976 INFO L272 TraceCheckUtils]: 14: Hoare triple {3072#true} call ldv_platform_driver_init_1_#t~ret109#1.base, ldv_platform_driver_init_1_#t~ret109#1.offset := ldv_malloc(624); {3130#(and (= |old(#length)| |#length|) (= |old(#valid)| |#valid|))} is VALID [2022-02-20 22:07:02,976 INFO L290 TraceCheckUtils]: 15: Hoare triple {3130#(and (= |old(#length)| |#length|) (= |old(#valid)| |#valid|))} ~size := #in~size;havoc ~p~0.base, ~p~0.offset;havoc ~tmp~0.base, ~tmp~0.offset;havoc ~tmp___0~0;assume -2147483648 <= #t~nondet29 && #t~nondet29 <= 2147483647;~tmp___0~0 := #t~nondet29;havoc #t~nondet29; {3072#true} is VALID [2022-02-20 22:07:02,976 INFO L290 TraceCheckUtils]: 16: Hoare triple {3072#true} assume 0 != ~tmp___0~0;#res.base, #res.offset := 0, 0; {3131#(and (= |ldv_malloc_#res.base| 0) (= |ldv_malloc_#res.offset| 0))} is VALID [2022-02-20 22:07:02,977 INFO L290 TraceCheckUtils]: 17: Hoare triple {3131#(and (= |ldv_malloc_#res.base| 0) (= |ldv_malloc_#res.offset| 0))} assume true; {3131#(and (= |ldv_malloc_#res.base| 0) (= |ldv_malloc_#res.offset| 0))} is VALID [2022-02-20 22:07:02,977 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {3131#(and (= |ldv_malloc_#res.base| 0) (= |ldv_malloc_#res.offset| 0))} {3072#true} #476#return; {3078#(and (= |ULTIMATE.start_ldv_platform_driver_init_1_#t~ret109#1.offset| 0) (= |ULTIMATE.start_ldv_platform_driver_init_1_#t~ret109#1.base| 0))} is VALID [2022-02-20 22:07:02,978 INFO L290 TraceCheckUtils]: 19: Hoare triple {3078#(and (= |ULTIMATE.start_ldv_platform_driver_init_1_#t~ret109#1.offset| 0) (= |ULTIMATE.start_ldv_platform_driver_init_1_#t~ret109#1.base| 0))} ldv_platform_driver_init_1_~tmp~12#1.base, ldv_platform_driver_init_1_~tmp~12#1.offset := ldv_platform_driver_init_1_#t~ret109#1.base, ldv_platform_driver_init_1_#t~ret109#1.offset;havoc ldv_platform_driver_init_1_#t~ret109#1.base, ldv_platform_driver_init_1_#t~ret109#1.offset; {3079#(and (= |ULTIMATE.start_ldv_platform_driver_init_1_~tmp~12#1.base| 0) (= |ULTIMATE.start_ldv_platform_driver_init_1_~tmp~12#1.offset| 0))} is VALID [2022-02-20 22:07:02,978 INFO L272 TraceCheckUtils]: 20: Hoare triple {3079#(and (= |ULTIMATE.start_ldv_platform_driver_init_1_~tmp~12#1.base| 0) (= |ULTIMATE.start_ldv_platform_driver_init_1_~tmp~12#1.offset| 0))} call assume_abort_if_not((if 0 != (ldv_platform_driver_init_1_~tmp~12#1.base + ldv_platform_driver_init_1_~tmp~12#1.offset) % 18446744073709551616 then 1 else 0)); {3072#true} is VALID [2022-02-20 22:07:02,982 INFO L290 TraceCheckUtils]: 21: Hoare triple {3072#true} ~cond := #in~cond; {3132#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-02-20 22:07:02,983 INFO L290 TraceCheckUtils]: 22: Hoare triple {3132#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {3133#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-02-20 22:07:02,983 INFO L290 TraceCheckUtils]: 23: Hoare triple {3133#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {3133#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-02-20 22:07:02,986 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {3133#(not (= |assume_abort_if_not_#in~cond| 0))} {3079#(and (= |ULTIMATE.start_ldv_platform_driver_init_1_~tmp~12#1.base| 0) (= |ULTIMATE.start_ldv_platform_driver_init_1_~tmp~12#1.offset| 0))} #478#return; {3073#false} is VALID [2022-02-20 22:07:02,986 INFO L290 TraceCheckUtils]: 25: Hoare triple {3073#false} ~s3c_hwmon_driver_group1~0.base, ~s3c_hwmon_driver_group1~0.offset := ldv_platform_driver_init_1_~tmp~12#1.base, ldv_platform_driver_init_1_~tmp~12#1.offset; {3073#false} is VALID [2022-02-20 22:07:02,987 INFO L290 TraceCheckUtils]: 26: Hoare triple {3073#false} assume { :end_inline_ldv_platform_driver_init_1 } true; {3073#false} is VALID [2022-02-20 22:07:02,987 INFO L290 TraceCheckUtils]: 27: Hoare triple {3073#false} assume -2147483648 <= main_#t~nondet110#1 && main_#t~nondet110#1 <= 2147483647;main_~tmp~13#1 := main_#t~nondet110#1;havoc main_#t~nondet110#1;main_#t~switch111#1 := 0 == main_~tmp~13#1; {3073#false} is VALID [2022-02-20 22:07:02,987 INFO L290 TraceCheckUtils]: 28: Hoare triple {3073#false} assume main_#t~switch111#1; {3073#false} is VALID [2022-02-20 22:07:02,987 INFO L290 TraceCheckUtils]: 29: Hoare triple {3073#false} assume 0 != ~ldv_state_variable_1~0;assume -2147483648 <= main_#t~nondet112#1 && main_#t~nondet112#1 <= 2147483647;main_~tmp___0~4#1 := main_#t~nondet112#1;havoc main_#t~nondet112#1;main_#t~switch113#1 := 0 == main_~tmp___0~4#1; {3073#false} is VALID [2022-02-20 22:07:02,987 INFO L290 TraceCheckUtils]: 30: Hoare triple {3073#false} assume main_#t~switch113#1; {3073#false} is VALID [2022-02-20 22:07:02,987 INFO L290 TraceCheckUtils]: 31: Hoare triple {3073#false} assume 1 == ~ldv_state_variable_1~0; {3073#false} is VALID [2022-02-20 22:07:02,987 INFO L272 TraceCheckUtils]: 32: Hoare triple {3073#false} call main_#t~ret114#1 := s3c_hwmon_probe(~s3c_hwmon_driver_group1~0.base, ~s3c_hwmon_driver_group1~0.offset); {3073#false} is VALID [2022-02-20 22:07:02,987 INFO L290 TraceCheckUtils]: 33: Hoare triple {3073#false} ~dev#1.base, ~dev#1.offset := #in~dev#1.base, #in~dev#1.offset;havoc ~pdata~2#1.base, ~pdata~2#1.offset;havoc ~hwmon~1#1.base, ~hwmon~1#1.offset;havoc ~ret~3#1;havoc ~i~0#1;havoc ~tmp~9#1.base, ~tmp~9#1.offset;call ~#__key~0#1.base, ~#__key~0#1.offset := #Ultimate.allocOnStack(8);havoc ~tmp___0~3#1;havoc ~tmp___1~0#1;havoc ~tmp___2~0#1;havoc ~tmp___3~0#1;havoc ~cfg~2#1.base, ~cfg~2#1.offset;call #t~mem76#1.base, #t~mem76#1.offset := read~$Pointer$(~dev#1.base, 277 + ~dev#1.offset, 8);~pdata~2#1.base, ~pdata~2#1.offset := #t~mem76#1.base, #t~mem76#1.offset;havoc #t~mem76#1.base, #t~mem76#1.offset;~ret~3#1 := 0; {3073#false} is VALID [2022-02-20 22:07:02,988 INFO L290 TraceCheckUtils]: 34: Hoare triple {3073#false} assume !(0 == (~pdata~2#1.base + ~pdata~2#1.offset) % 18446744073709551616);assume { :begin_inline_ldv_kzalloc_9 } true;ldv_kzalloc_9_#in~size#1, ldv_kzalloc_9_#in~flags#1 := 800, 208;havoc ldv_kzalloc_9_#res#1.base, ldv_kzalloc_9_#res#1.offset;havoc ldv_kzalloc_9_#t~ret124#1.base, ldv_kzalloc_9_#t~ret124#1.offset, ldv_kzalloc_9_~size#1, ldv_kzalloc_9_~flags#1, ldv_kzalloc_9_~tmp~18#1.base, ldv_kzalloc_9_~tmp~18#1.offset;ldv_kzalloc_9_~size#1 := ldv_kzalloc_9_#in~size#1;ldv_kzalloc_9_~flags#1 := ldv_kzalloc_9_#in~flags#1;havoc ldv_kzalloc_9_~tmp~18#1.base, ldv_kzalloc_9_~tmp~18#1.offset;assume { :begin_inline_ldv_zalloc } true;ldv_zalloc_#in~size#1 := ldv_kzalloc_9_~size#1;havoc ldv_zalloc_#res#1.base, ldv_zalloc_#res#1.offset;havoc ldv_zalloc_#t~nondet32#1, ldv_zalloc_#t~malloc33#1.base, ldv_zalloc_#t~malloc33#1.offset, ldv_zalloc_#t~ret34#1, ldv_zalloc_~size#1, ldv_zalloc_~p~1#1.base, ldv_zalloc_~p~1#1.offset, ldv_zalloc_~tmp~1#1.base, ldv_zalloc_~tmp~1#1.offset, ldv_zalloc_~tmp___0~1#1;ldv_zalloc_~size#1 := ldv_zalloc_#in~size#1;havoc ldv_zalloc_~p~1#1.base, ldv_zalloc_~p~1#1.offset;havoc ldv_zalloc_~tmp~1#1.base, ldv_zalloc_~tmp~1#1.offset;havoc ldv_zalloc_~tmp___0~1#1;assume -2147483648 <= ldv_zalloc_#t~nondet32#1 && ldv_zalloc_#t~nondet32#1 <= 2147483647;ldv_zalloc_~tmp___0~1#1 := ldv_zalloc_#t~nondet32#1;havoc ldv_zalloc_#t~nondet32#1; {3073#false} is VALID [2022-02-20 22:07:02,988 INFO L290 TraceCheckUtils]: 35: Hoare triple {3073#false} assume !(0 != ldv_zalloc_~tmp___0~1#1);call ldv_zalloc_#t~malloc33#1.base, ldv_zalloc_#t~malloc33#1.offset := #Ultimate.allocOnHeap(ldv_zalloc_~size#1); {3073#false} is VALID [2022-02-20 22:07:02,988 INFO L272 TraceCheckUtils]: 36: Hoare triple {3073#false} call #Ultimate.meminit(ldv_zalloc_#t~malloc33#1.base, ldv_zalloc_#t~malloc33#1.offset, 1, ldv_zalloc_~size#1, ldv_zalloc_~size#1); {3134#(= |#memory_int| |old(#memory_int)|)} is VALID [2022-02-20 22:07:02,988 INFO L290 TraceCheckUtils]: 37: Hoare triple {3134#(= |#memory_int| |old(#memory_int)|)} #memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, #ptr.base); {3072#true} is VALID [2022-02-20 22:07:02,988 INFO L290 TraceCheckUtils]: 38: Hoare triple {3072#true} assume true; {3072#true} is VALID [2022-02-20 22:07:02,988 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {3072#true} {3073#false} #416#return; {3073#false} is VALID [2022-02-20 22:07:02,989 INFO L290 TraceCheckUtils]: 40: Hoare triple {3073#false} ldv_zalloc_~tmp~1#1.base, ldv_zalloc_~tmp~1#1.offset := ldv_zalloc_#t~malloc33#1.base, ldv_zalloc_#t~malloc33#1.offset;ldv_zalloc_~p~1#1.base, ldv_zalloc_~p~1#1.offset := ldv_zalloc_~tmp~1#1.base, ldv_zalloc_~tmp~1#1.offset; {3073#false} is VALID [2022-02-20 22:07:02,989 INFO L272 TraceCheckUtils]: 41: Hoare triple {3073#false} call assume_abort_if_not((if 0 != (ldv_zalloc_~p~1#1.base + ldv_zalloc_~p~1#1.offset) % 18446744073709551616 then 1 else 0)); {3072#true} is VALID [2022-02-20 22:07:02,989 INFO L290 TraceCheckUtils]: 42: Hoare triple {3072#true} ~cond := #in~cond; {3072#true} is VALID [2022-02-20 22:07:02,989 INFO L290 TraceCheckUtils]: 43: Hoare triple {3072#true} assume !(0 == ~cond); {3072#true} is VALID [2022-02-20 22:07:02,989 INFO L290 TraceCheckUtils]: 44: Hoare triple {3072#true} assume true; {3072#true} is VALID [2022-02-20 22:07:02,989 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {3072#true} {3073#false} #418#return; {3073#false} is VALID [2022-02-20 22:07:02,989 INFO L272 TraceCheckUtils]: 46: Hoare triple {3073#false} call ldv_zalloc_#t~ret34#1 := IS_ERR(ldv_zalloc_~p~1#1.base, ldv_zalloc_~p~1#1.offset); {3072#true} is VALID [2022-02-20 22:07:02,989 INFO L290 TraceCheckUtils]: 47: Hoare triple {3072#true} ~ptr.base, ~ptr.offset := #in~ptr.base, #in~ptr.offset;havoc ~tmp~15; {3072#true} is VALID [2022-02-20 22:07:02,990 INFO L272 TraceCheckUtils]: 48: Hoare triple {3072#true} call #t~ret121 := ldv_is_err(~ptr.base, ~ptr.offset); {3072#true} is VALID [2022-02-20 22:07:02,990 INFO L290 TraceCheckUtils]: 49: Hoare triple {3072#true} ~ptr.base, ~ptr.offset := #in~ptr.base, #in~ptr.offset;#res := (if 0 == (if (~ptr.base + ~ptr.offset) % 18446744073709551616 > 2012 then 1 else 0) then 0 else 1); {3072#true} is VALID [2022-02-20 22:07:02,990 INFO L290 TraceCheckUtils]: 50: Hoare triple {3072#true} assume true; {3072#true} is VALID [2022-02-20 22:07:02,990 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {3072#true} {3072#true} #494#return; {3072#true} is VALID [2022-02-20 22:07:02,990 INFO L290 TraceCheckUtils]: 52: Hoare triple {3072#true} ~tmp~15 := #t~ret121;havoc #t~ret121;#res := ~tmp~15 % 256; {3072#true} is VALID [2022-02-20 22:07:02,990 INFO L290 TraceCheckUtils]: 53: Hoare triple {3072#true} assume true; {3072#true} is VALID [2022-02-20 22:07:02,990 INFO L284 TraceCheckUtils]: 54: Hoare quadruple {3072#true} {3073#false} #420#return; {3073#false} is VALID [2022-02-20 22:07:02,990 INFO L290 TraceCheckUtils]: 55: Hoare triple {3073#false} assume -9223372036854775808 <= ldv_zalloc_#t~ret34#1 && ldv_zalloc_#t~ret34#1 <= 9223372036854775807; {3073#false} is VALID [2022-02-20 22:07:02,991 INFO L272 TraceCheckUtils]: 56: Hoare triple {3073#false} call assume_abort_if_not((if 0 == ldv_zalloc_#t~ret34#1 then 1 else 0)); {3072#true} is VALID [2022-02-20 22:07:02,991 INFO L290 TraceCheckUtils]: 57: Hoare triple {3072#true} ~cond := #in~cond; {3072#true} is VALID [2022-02-20 22:07:02,991 INFO L290 TraceCheckUtils]: 58: Hoare triple {3072#true} assume !(0 == ~cond); {3072#true} is VALID [2022-02-20 22:07:02,991 INFO L290 TraceCheckUtils]: 59: Hoare triple {3072#true} assume true; {3072#true} is VALID [2022-02-20 22:07:02,991 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {3072#true} {3073#false} #422#return; {3073#false} is VALID [2022-02-20 22:07:02,991 INFO L290 TraceCheckUtils]: 61: Hoare triple {3073#false} havoc ldv_zalloc_#t~ret34#1;ldv_zalloc_#res#1.base, ldv_zalloc_#res#1.offset := ldv_zalloc_~p~1#1.base, ldv_zalloc_~p~1#1.offset; {3073#false} is VALID [2022-02-20 22:07:02,991 INFO L290 TraceCheckUtils]: 62: Hoare triple {3073#false} ldv_kzalloc_9_#t~ret124#1.base, ldv_kzalloc_9_#t~ret124#1.offset := ldv_zalloc_#res#1.base, ldv_zalloc_#res#1.offset;assume { :end_inline_ldv_zalloc } true;ldv_kzalloc_9_~tmp~18#1.base, ldv_kzalloc_9_~tmp~18#1.offset := ldv_kzalloc_9_#t~ret124#1.base, ldv_kzalloc_9_#t~ret124#1.offset;havoc ldv_kzalloc_9_#t~ret124#1.base, ldv_kzalloc_9_#t~ret124#1.offset;ldv_kzalloc_9_#res#1.base, ldv_kzalloc_9_#res#1.offset := ldv_kzalloc_9_~tmp~18#1.base, ldv_kzalloc_9_~tmp~18#1.offset; {3073#false} is VALID [2022-02-20 22:07:02,992 INFO L290 TraceCheckUtils]: 63: Hoare triple {3073#false} #t~ret78#1.base, #t~ret78#1.offset := ldv_kzalloc_9_#res#1.base, ldv_kzalloc_9_#res#1.offset;assume { :end_inline_ldv_kzalloc_9 } true;~tmp~9#1.base, ~tmp~9#1.offset := #t~ret78#1.base, #t~ret78#1.offset;havoc #t~ret78#1.base, #t~ret78#1.offset;~hwmon~1#1.base, ~hwmon~1#1.offset := ~tmp~9#1.base, ~tmp~9#1.offset; {3073#false} is VALID [2022-02-20 22:07:02,992 INFO L290 TraceCheckUtils]: 64: Hoare triple {3073#false} assume !(0 == (~hwmon~1#1.base + ~hwmon~1#1.offset) % 18446744073709551616);assume { :begin_inline_platform_set_drvdata } true;platform_set_drvdata_#in~pdev#1.base, platform_set_drvdata_#in~pdev#1.offset, platform_set_drvdata_#in~data#1.base, platform_set_drvdata_#in~data#1.offset := ~dev#1.base, ~dev#1.offset, ~hwmon~1#1.base, ~hwmon~1#1.offset;havoc platform_set_drvdata_~pdev#1.base, platform_set_drvdata_~pdev#1.offset, platform_set_drvdata_~data#1.base, platform_set_drvdata_~data#1.offset;platform_set_drvdata_~pdev#1.base, platform_set_drvdata_~pdev#1.offset := platform_set_drvdata_#in~pdev#1.base, platform_set_drvdata_#in~pdev#1.offset;platform_set_drvdata_~data#1.base, platform_set_drvdata_~data#1.offset := platform_set_drvdata_#in~data#1.base, platform_set_drvdata_#in~data#1.offset;assume { :begin_inline_dev_set_drvdata } true;dev_set_drvdata_#in~arg0#1.base, dev_set_drvdata_#in~arg0#1.offset, dev_set_drvdata_#in~arg1#1.base, dev_set_drvdata_#in~arg1#1.offset := platform_set_drvdata_~pdev#1.base, 12 + platform_set_drvdata_~pdev#1.offset, platform_set_drvdata_~data#1.base, platform_set_drvdata_~data#1.offset;havoc dev_set_drvdata_~arg0#1.base, dev_set_drvdata_~arg0#1.offset, dev_set_drvdata_~arg1#1.base, dev_set_drvdata_~arg1#1.offset;dev_set_drvdata_~arg0#1.base, dev_set_drvdata_~arg0#1.offset := dev_set_drvdata_#in~arg0#1.base, dev_set_drvdata_#in~arg0#1.offset;dev_set_drvdata_~arg1#1.base, dev_set_drvdata_~arg1#1.offset := dev_set_drvdata_#in~arg1#1.base, dev_set_drvdata_#in~arg1#1.offset; {3073#false} is VALID [2022-02-20 22:07:02,992 INFO L290 TraceCheckUtils]: 65: Hoare triple {3073#false} assume { :end_inline_dev_set_drvdata } true; {3073#false} is VALID [2022-02-20 22:07:02,994 INFO L290 TraceCheckUtils]: 66: Hoare triple {3073#false} assume { :end_inline_platform_set_drvdata } true;assume { :begin_inline___mutex_init } true;__mutex_init_#in~arg0#1.base, __mutex_init_#in~arg0#1.offset, __mutex_init_#in~arg1#1.base, __mutex_init_#in~arg1#1.offset, __mutex_init_#in~arg2#1.base, __mutex_init_#in~arg2#1.offset := ~hwmon~1#1.base, ~hwmon~1#1.offset, 13, 0, ~#__key~0#1.base, ~#__key~0#1.offset;havoc __mutex_init_~arg0#1.base, __mutex_init_~arg0#1.offset, __mutex_init_~arg1#1.base, __mutex_init_~arg1#1.offset, __mutex_init_~arg2#1.base, __mutex_init_~arg2#1.offset;__mutex_init_~arg0#1.base, __mutex_init_~arg0#1.offset := __mutex_init_#in~arg0#1.base, __mutex_init_#in~arg0#1.offset;__mutex_init_~arg1#1.base, __mutex_init_~arg1#1.offset := __mutex_init_#in~arg1#1.base, __mutex_init_#in~arg1#1.offset;__mutex_init_~arg2#1.base, __mutex_init_~arg2#1.offset := __mutex_init_#in~arg2#1.base, __mutex_init_#in~arg2#1.offset; {3073#false} is VALID [2022-02-20 22:07:02,995 INFO L290 TraceCheckUtils]: 67: Hoare triple {3073#false} assume { :end_inline___mutex_init } true;assume { :begin_inline_s3c_adc_register } true;s3c_adc_register_#in~arg0#1.base, s3c_adc_register_#in~arg0#1.offset, s3c_adc_register_#in~arg1#1.base, s3c_adc_register_#in~arg1#1.offset, s3c_adc_register_#in~arg2#1.base, s3c_adc_register_#in~arg2#1.offset, s3c_adc_register_#in~arg3#1 := ~dev#1.base, ~dev#1.offset, 0, 0, 0, 0, 0;havoc s3c_adc_register_#res#1.base, s3c_adc_register_#res#1.offset;havoc s3c_adc_register_#t~ret137#1.base, s3c_adc_register_#t~ret137#1.offset, s3c_adc_register_~arg0#1.base, s3c_adc_register_~arg0#1.offset, s3c_adc_register_~arg1#1.base, s3c_adc_register_~arg1#1.offset, s3c_adc_register_~arg2#1.base, s3c_adc_register_~arg2#1.offset, s3c_adc_register_~arg3#1;s3c_adc_register_~arg0#1.base, s3c_adc_register_~arg0#1.offset := s3c_adc_register_#in~arg0#1.base, s3c_adc_register_#in~arg0#1.offset;s3c_adc_register_~arg1#1.base, s3c_adc_register_~arg1#1.offset := s3c_adc_register_#in~arg1#1.base, s3c_adc_register_#in~arg1#1.offset;s3c_adc_register_~arg2#1.base, s3c_adc_register_~arg2#1.offset := s3c_adc_register_#in~arg2#1.base, s3c_adc_register_#in~arg2#1.offset;s3c_adc_register_~arg3#1 := s3c_adc_register_#in~arg3#1; {3073#false} is VALID [2022-02-20 22:07:02,996 INFO L272 TraceCheckUtils]: 68: Hoare triple {3073#false} call s3c_adc_register_#t~ret137#1.base, s3c_adc_register_#t~ret137#1.offset := ldv_malloc(0); {3130#(and (= |old(#length)| |#length|) (= |old(#valid)| |#valid|))} is VALID [2022-02-20 22:07:02,996 INFO L290 TraceCheckUtils]: 69: Hoare triple {3130#(and (= |old(#length)| |#length|) (= |old(#valid)| |#valid|))} ~size := #in~size;havoc ~p~0.base, ~p~0.offset;havoc ~tmp~0.base, ~tmp~0.offset;havoc ~tmp___0~0;assume -2147483648 <= #t~nondet29 && #t~nondet29 <= 2147483647;~tmp___0~0 := #t~nondet29;havoc #t~nondet29; {3072#true} is VALID [2022-02-20 22:07:02,996 INFO L290 TraceCheckUtils]: 70: Hoare triple {3072#true} assume 0 != ~tmp___0~0;#res.base, #res.offset := 0, 0; {3072#true} is VALID [2022-02-20 22:07:02,996 INFO L290 TraceCheckUtils]: 71: Hoare triple {3072#true} assume true; {3072#true} is VALID [2022-02-20 22:07:02,997 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {3072#true} {3073#false} #424#return; {3073#false} is VALID [2022-02-20 22:07:02,997 INFO L290 TraceCheckUtils]: 73: Hoare triple {3073#false} s3c_adc_register_#res#1.base, s3c_adc_register_#res#1.offset := s3c_adc_register_#t~ret137#1.base, s3c_adc_register_#t~ret137#1.offset;havoc s3c_adc_register_#t~ret137#1.base, s3c_adc_register_#t~ret137#1.offset; {3073#false} is VALID [2022-02-20 22:07:02,997 INFO L290 TraceCheckUtils]: 74: Hoare triple {3073#false} #t~ret80#1.base, #t~ret80#1.offset := s3c_adc_register_#res#1.base, s3c_adc_register_#res#1.offset;assume { :end_inline_s3c_adc_register } true;call write~$Pointer$(#t~ret80#1.base, #t~ret80#1.offset, ~hwmon~1#1.base, 152 + ~hwmon~1#1.offset, 8);havoc #t~ret80#1.base, #t~ret80#1.offset;call #t~mem81#1.base, #t~mem81#1.offset := read~$Pointer$(~hwmon~1#1.base, 152 + ~hwmon~1#1.offset, 8); {3073#false} is VALID [2022-02-20 22:07:02,997 INFO L272 TraceCheckUtils]: 75: Hoare triple {3073#false} call #t~ret82#1 := IS_ERR(#t~mem81#1.base, #t~mem81#1.offset); {3072#true} is VALID [2022-02-20 22:07:02,997 INFO L290 TraceCheckUtils]: 76: Hoare triple {3072#true} ~ptr.base, ~ptr.offset := #in~ptr.base, #in~ptr.offset;havoc ~tmp~15; {3072#true} is VALID [2022-02-20 22:07:02,997 INFO L272 TraceCheckUtils]: 77: Hoare triple {3072#true} call #t~ret121 := ldv_is_err(~ptr.base, ~ptr.offset); {3072#true} is VALID [2022-02-20 22:07:02,998 INFO L290 TraceCheckUtils]: 78: Hoare triple {3072#true} ~ptr.base, ~ptr.offset := #in~ptr.base, #in~ptr.offset;#res := (if 0 == (if (~ptr.base + ~ptr.offset) % 18446744073709551616 > 2012 then 1 else 0) then 0 else 1); {3072#true} is VALID [2022-02-20 22:07:02,998 INFO L290 TraceCheckUtils]: 79: Hoare triple {3072#true} assume true; {3072#true} is VALID [2022-02-20 22:07:02,998 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {3072#true} {3072#true} #494#return; {3072#true} is VALID [2022-02-20 22:07:02,998 INFO L290 TraceCheckUtils]: 81: Hoare triple {3072#true} ~tmp~15 := #t~ret121;havoc #t~ret121;#res := ~tmp~15 % 256; {3072#true} is VALID [2022-02-20 22:07:02,998 INFO L290 TraceCheckUtils]: 82: Hoare triple {3072#true} assume true; {3072#true} is VALID [2022-02-20 22:07:02,998 INFO L284 TraceCheckUtils]: 83: Hoare quadruple {3072#true} {3073#false} #426#return; {3073#false} is VALID [2022-02-20 22:07:02,999 INFO L290 TraceCheckUtils]: 84: Hoare triple {3073#false} assume -9223372036854775808 <= #t~ret82#1 && #t~ret82#1 <= 9223372036854775807;~tmp___1~0#1 := #t~ret82#1;havoc #t~mem81#1.base, #t~mem81#1.offset;havoc #t~ret82#1; {3073#false} is VALID [2022-02-20 22:07:02,999 INFO L290 TraceCheckUtils]: 85: Hoare triple {3073#false} assume !(0 != ~tmp___1~0#1);assume { :begin_inline_s3c_hwmon_add_raw } true;s3c_hwmon_add_raw_#in~dev#1.base, s3c_hwmon_add_raw_#in~dev#1.offset := ~dev#1.base, 12 + ~dev#1.offset;havoc s3c_hwmon_add_raw_#res#1;havoc s3c_hwmon_add_raw_~dev#1.base, s3c_hwmon_add_raw_~dev#1.offset;s3c_hwmon_add_raw_~dev#1.base, s3c_hwmon_add_raw_~dev#1.offset := s3c_hwmon_add_raw_#in~dev#1.base, s3c_hwmon_add_raw_#in~dev#1.offset;s3c_hwmon_add_raw_#res#1 := 0; {3073#false} is VALID [2022-02-20 22:07:02,999 INFO L290 TraceCheckUtils]: 86: Hoare triple {3073#false} #t~ret86#1 := s3c_hwmon_add_raw_#res#1;assume { :end_inline_s3c_hwmon_add_raw } true;assume -2147483648 <= #t~ret86#1 && #t~ret86#1 <= 2147483647;~ret~3#1 := #t~ret86#1;havoc #t~ret86#1; {3073#false} is VALID [2022-02-20 22:07:02,999 INFO L290 TraceCheckUtils]: 87: Hoare triple {3073#false} assume !(0 != ~ret~3#1);assume { :begin_inline_hwmon_device_register } true;hwmon_device_register_#in~arg0#1.base, hwmon_device_register_#in~arg0#1.offset := ~dev#1.base, 12 + ~dev#1.offset;havoc hwmon_device_register_#res#1.base, hwmon_device_register_#res#1.offset;havoc hwmon_device_register_#t~ret133#1.base, hwmon_device_register_#t~ret133#1.offset, hwmon_device_register_~arg0#1.base, hwmon_device_register_~arg0#1.offset;hwmon_device_register_~arg0#1.base, hwmon_device_register_~arg0#1.offset := hwmon_device_register_#in~arg0#1.base, hwmon_device_register_#in~arg0#1.offset; {3073#false} is VALID [2022-02-20 22:07:02,999 INFO L272 TraceCheckUtils]: 88: Hoare triple {3073#false} call hwmon_device_register_#t~ret133#1.base, hwmon_device_register_#t~ret133#1.offset := ldv_malloc(1003); {3130#(and (= |old(#length)| |#length|) (= |old(#valid)| |#valid|))} is VALID [2022-02-20 22:07:02,999 INFO L290 TraceCheckUtils]: 89: Hoare triple {3130#(and (= |old(#length)| |#length|) (= |old(#valid)| |#valid|))} ~size := #in~size;havoc ~p~0.base, ~p~0.offset;havoc ~tmp~0.base, ~tmp~0.offset;havoc ~tmp___0~0;assume -2147483648 <= #t~nondet29 && #t~nondet29 <= 2147483647;~tmp___0~0 := #t~nondet29;havoc #t~nondet29; {3072#true} is VALID [2022-02-20 22:07:02,999 INFO L290 TraceCheckUtils]: 90: Hoare triple {3072#true} assume 0 != ~tmp___0~0;#res.base, #res.offset := 0, 0; {3072#true} is VALID [2022-02-20 22:07:02,999 INFO L290 TraceCheckUtils]: 91: Hoare triple {3072#true} assume true; {3072#true} is VALID [2022-02-20 22:07:03,000 INFO L284 TraceCheckUtils]: 92: Hoare quadruple {3072#true} {3073#false} #430#return; {3073#false} is VALID [2022-02-20 22:07:03,000 INFO L290 TraceCheckUtils]: 93: Hoare triple {3073#false} hwmon_device_register_#res#1.base, hwmon_device_register_#res#1.offset := hwmon_device_register_#t~ret133#1.base, hwmon_device_register_#t~ret133#1.offset;havoc hwmon_device_register_#t~ret133#1.base, hwmon_device_register_#t~ret133#1.offset; {3073#false} is VALID [2022-02-20 22:07:03,000 INFO L290 TraceCheckUtils]: 94: Hoare triple {3073#false} #t~ret87#1.base, #t~ret87#1.offset := hwmon_device_register_#res#1.base, hwmon_device_register_#res#1.offset;assume { :end_inline_hwmon_device_register } true;call write~$Pointer$(#t~ret87#1.base, #t~ret87#1.offset, ~hwmon~1#1.base, 160 + ~hwmon~1#1.offset, 8);havoc #t~ret87#1.base, #t~ret87#1.offset;call #t~mem88#1.base, #t~mem88#1.offset := read~$Pointer$(~hwmon~1#1.base, 160 + ~hwmon~1#1.offset, 8); {3073#false} is VALID [2022-02-20 22:07:03,000 INFO L272 TraceCheckUtils]: 95: Hoare triple {3073#false} call #t~ret89#1 := IS_ERR(#t~mem88#1.base, #t~mem88#1.offset); {3072#true} is VALID [2022-02-20 22:07:03,000 INFO L290 TraceCheckUtils]: 96: Hoare triple {3072#true} ~ptr.base, ~ptr.offset := #in~ptr.base, #in~ptr.offset;havoc ~tmp~15; {3072#true} is VALID [2022-02-20 22:07:03,000 INFO L272 TraceCheckUtils]: 97: Hoare triple {3072#true} call #t~ret121 := ldv_is_err(~ptr.base, ~ptr.offset); {3072#true} is VALID [2022-02-20 22:07:03,000 INFO L290 TraceCheckUtils]: 98: Hoare triple {3072#true} ~ptr.base, ~ptr.offset := #in~ptr.base, #in~ptr.offset;#res := (if 0 == (if (~ptr.base + ~ptr.offset) % 18446744073709551616 > 2012 then 1 else 0) then 0 else 1); {3072#true} is VALID [2022-02-20 22:07:03,000 INFO L290 TraceCheckUtils]: 99: Hoare triple {3072#true} assume true; {3072#true} is VALID [2022-02-20 22:07:03,001 INFO L284 TraceCheckUtils]: 100: Hoare quadruple {3072#true} {3072#true} #494#return; {3072#true} is VALID [2022-02-20 22:07:03,001 INFO L290 TraceCheckUtils]: 101: Hoare triple {3072#true} ~tmp~15 := #t~ret121;havoc #t~ret121;#res := ~tmp~15 % 256; {3072#true} is VALID [2022-02-20 22:07:03,001 INFO L290 TraceCheckUtils]: 102: Hoare triple {3072#true} assume true; {3072#true} is VALID [2022-02-20 22:07:03,001 INFO L284 TraceCheckUtils]: 103: Hoare quadruple {3072#true} {3073#false} #432#return; {3073#false} is VALID [2022-02-20 22:07:03,001 INFO L290 TraceCheckUtils]: 104: Hoare triple {3073#false} assume -9223372036854775808 <= #t~ret89#1 && #t~ret89#1 <= 9223372036854775807;~tmp___3~0#1 := #t~ret89#1;havoc #t~mem88#1.base, #t~mem88#1.offset;havoc #t~ret89#1; {3073#false} is VALID [2022-02-20 22:07:03,001 INFO L290 TraceCheckUtils]: 105: Hoare triple {3073#false} assume !(0 != ~tmp___3~0#1);~i~0#1 := 0; {3073#false} is VALID [2022-02-20 22:07:03,001 INFO L290 TraceCheckUtils]: 106: Hoare triple {3073#false} assume ~i~0#1 % 4294967296 <= 7; {3073#false} is VALID [2022-02-20 22:07:03,001 INFO L290 TraceCheckUtils]: 107: Hoare triple {3073#false} call #t~mem93#1.base, #t~mem93#1.offset := read~$Pointer$(~pdata~2#1.base, ~pdata~2#1.offset + 8 * ~i~0#1, 8);~cfg~2#1.base, ~cfg~2#1.offset := #t~mem93#1.base, #t~mem93#1.offset;havoc #t~mem93#1.base, #t~mem93#1.offset; {3073#false} is VALID [2022-02-20 22:07:03,001 INFO L290 TraceCheckUtils]: 108: Hoare triple {3073#false} assume !(0 == (~cfg~2#1.base + ~cfg~2#1.offset) % 18446744073709551616);call #t~mem94#1 := read~int(~cfg~2#1.base, 8 + ~cfg~2#1.offset, 4); {3073#false} is VALID [2022-02-20 22:07:03,002 INFO L290 TraceCheckUtils]: 109: Hoare triple {3073#false} assume #t~mem94#1 % 4294967296 > 65535;havoc #t~mem94#1;havoc #t~nondet95#1; {3073#false} is VALID [2022-02-20 22:07:03,002 INFO L290 TraceCheckUtils]: 110: Hoare triple {3073#false} call #t~mem96#1 := read~int(~cfg~2#1.base, 12 + ~cfg~2#1.offset, 4); {3073#false} is VALID [2022-02-20 22:07:03,002 INFO L290 TraceCheckUtils]: 111: Hoare triple {3073#false} assume !(0 == #t~mem96#1 % 4294967296);havoc #t~mem96#1;call #t~mem98#1.base, #t~mem98#1.offset := read~$Pointer$(~pdata~2#1.base, ~pdata~2#1.offset + 8 * ~i~0#1, 8);assume { :begin_inline_s3c_hwmon_create_attr } true;s3c_hwmon_create_attr_#in~dev#1.base, s3c_hwmon_create_attr_#in~dev#1.offset, s3c_hwmon_create_attr_#in~cfg#1.base, s3c_hwmon_create_attr_#in~cfg#1.offset, s3c_hwmon_create_attr_#in~attrs#1.base, s3c_hwmon_create_attr_#in~attrs#1.offset, s3c_hwmon_create_attr_#in~channel#1 := ~dev#1.base, 12 + ~dev#1.offset, #t~mem98#1.base, #t~mem98#1.offset, ~hwmon~1#1.base, 168 + ~hwmon~1#1.offset + 120 * (~i~0#1 % 4294967296), ~i~0#1;havoc s3c_hwmon_create_attr_#res#1;havoc s3c_hwmon_create_attr_#t~nondet69#1, s3c_hwmon_create_attr_#t~ret70#1, s3c_hwmon_create_attr_#t~nondet71#1, s3c_hwmon_create_attr_#t~mem72#1.base, s3c_hwmon_create_attr_#t~mem72#1.offset, s3c_hwmon_create_attr_#t~nondet73#1, s3c_hwmon_create_attr_#t~ret74#1, s3c_hwmon_create_attr_#t~nondet75#1, s3c_hwmon_create_attr_~dev#1.base, s3c_hwmon_create_attr_~dev#1.offset, s3c_hwmon_create_attr_~cfg#1.base, s3c_hwmon_create_attr_~cfg#1.offset, s3c_hwmon_create_attr_~attrs#1.base, s3c_hwmon_create_attr_~attrs#1.offset, s3c_hwmon_create_attr_~channel#1, s3c_hwmon_create_attr_~attr~0#1.base, s3c_hwmon_create_attr_~attr~0#1.offset, s3c_hwmon_create_attr_~ret~2#1;s3c_hwmon_create_attr_~dev#1.base, s3c_hwmon_create_attr_~dev#1.offset := s3c_hwmon_create_attr_#in~dev#1.base, s3c_hwmon_create_attr_#in~dev#1.offset;s3c_hwmon_create_attr_~cfg#1.base, s3c_hwmon_create_attr_~cfg#1.offset := s3c_hwmon_create_attr_#in~cfg#1.base, s3c_hwmon_create_attr_#in~cfg#1.offset;s3c_hwmon_create_attr_~attrs#1.base, s3c_hwmon_create_attr_~attrs#1.offset := s3c_hwmon_create_attr_#in~attrs#1.base, s3c_hwmon_create_attr_#in~attrs#1.offset;s3c_hwmon_create_attr_~channel#1 := s3c_hwmon_create_attr_#in~channel#1;havoc s3c_hwmon_create_attr_~attr~0#1.base, s3c_hwmon_create_attr_~attr~0#1.offset;havoc s3c_hwmon_create_attr_~ret~2#1;havoc s3c_hwmon_create_attr_#t~nondet69#1;s3c_hwmon_create_attr_~attr~0#1.base, s3c_hwmon_create_attr_~attr~0#1.offset := s3c_hwmon_create_attr_~attrs#1.base, s3c_hwmon_create_attr_~attrs#1.offset;call write~int(s3c_hwmon_create_attr_~channel#1, s3c_hwmon_create_attr_~attr~0#1.base, 44 + s3c_hwmon_create_attr_~attr~0#1.offset, 4);call write~$Pointer$(s3c_hwmon_create_attr_~attrs#1.base, 96 + s3c_hwmon_create_attr_~attrs#1.offset, s3c_hwmon_create_attr_~attr~0#1.base, s3c_hwmon_create_attr_~attr~0#1.offset, 8);call write~int(292, s3c_hwmon_create_attr_~attr~0#1.base, 8 + s3c_hwmon_create_attr_~attr~0#1.offset, 4);call write~$Pointer$(#funAddr~s3c_hwmon_ch_show.base, #funAddr~s3c_hwmon_ch_show.offset, s3c_hwmon_create_attr_~attr~0#1.base, 28 + s3c_hwmon_create_attr_~attr~0#1.offset, 8);assume { :begin_inline_ldv_device_create_file_7 } true;ldv_device_create_file_7_#in~ldv_func_arg1#1.base, ldv_device_create_file_7_#in~ldv_func_arg1#1.offset, ldv_device_create_file_7_#in~ldv_func_arg2#1.base, ldv_device_create_file_7_#in~ldv_func_arg2#1.offset := s3c_hwmon_create_attr_~dev#1.base, s3c_hwmon_create_attr_~dev#1.offset, s3c_hwmon_create_attr_~attr~0#1.base, s3c_hwmon_create_attr_~attr~0#1.offset;havoc ldv_device_create_file_7_#res#1;havoc ldv_device_create_file_7_#t~ret122#1, ldv_device_create_file_7_~ldv_func_arg1#1.base, ldv_device_create_file_7_~ldv_func_arg1#1.offset, ldv_device_create_file_7_~ldv_func_arg2#1.base, ldv_device_create_file_7_~ldv_func_arg2#1.offset, ldv_device_create_file_7_~tmp~16#1;ldv_device_create_file_7_~ldv_func_arg1#1.base, ldv_device_create_file_7_~ldv_func_arg1#1.offset := ldv_device_create_file_7_#in~ldv_func_arg1#1.base, ldv_device_create_file_7_#in~ldv_func_arg1#1.offset;ldv_device_create_file_7_~ldv_func_arg2#1.base, ldv_device_create_file_7_~ldv_func_arg2#1.offset := ldv_device_create_file_7_#in~ldv_func_arg2#1.base, ldv_device_create_file_7_#in~ldv_func_arg2#1.offset;havoc ldv_device_create_file_7_~tmp~16#1; {3073#false} is VALID [2022-02-20 22:07:03,002 INFO L272 TraceCheckUtils]: 112: Hoare triple {3073#false} call ldv_device_create_file_7_#t~ret122#1 := ldv_device_create_file(); {3073#false} is VALID [2022-02-20 22:07:03,002 INFO L290 TraceCheckUtils]: 113: Hoare triple {3073#false} havoc ~nondetermined~0#1;havoc ~tmp~21#1; {3073#false} is VALID [2022-02-20 22:07:03,002 INFO L272 TraceCheckUtils]: 114: Hoare triple {3073#false} call #t~ret127#1 := ldv_undef_int(); {3072#true} is VALID [2022-02-20 22:07:03,002 INFO L290 TraceCheckUtils]: 115: Hoare triple {3072#true} havoc ~tmp~4;assume -2147483648 <= #t~nondet37 && #t~nondet37 <= 2147483647;~tmp~4 := #t~nondet37;havoc #t~nondet37;#res := ~tmp~4; {3072#true} is VALID [2022-02-20 22:07:03,002 INFO L290 TraceCheckUtils]: 116: Hoare triple {3072#true} assume true; {3072#true} is VALID [2022-02-20 22:07:03,003 INFO L284 TraceCheckUtils]: 117: Hoare quadruple {3072#true} {3073#false} #488#return; {3073#false} is VALID [2022-02-20 22:07:03,003 INFO L290 TraceCheckUtils]: 118: Hoare triple {3073#false} assume -2147483648 <= #t~ret127#1 && #t~ret127#1 <= 2147483647;~nondetermined~0#1 := #t~ret127#1;havoc #t~ret127#1; {3073#false} is VALID [2022-02-20 22:07:03,003 INFO L290 TraceCheckUtils]: 119: Hoare triple {3073#false} assume 0 != ~nondetermined~0#1;~ldv_count_2~0 := 1 + ~ldv_count_2~0; {3073#false} is VALID [2022-02-20 22:07:03,003 INFO L290 TraceCheckUtils]: 120: Hoare triple {3073#false} assume ~ldv_count_1~0 < ~ldv_count_2~0;assume { :begin_inline_ldv_error } true; {3073#false} is VALID [2022-02-20 22:07:03,003 INFO L290 TraceCheckUtils]: 121: Hoare triple {3073#false} assume !false; {3073#false} is VALID [2022-02-20 22:07:03,004 INFO L134 CoverageAnalysis]: Checked inductivity of 50 backedges. 2 proven. 10 refuted. 0 times theorem prover too weak. 38 trivial. 0 not checked. [2022-02-20 22:07:03,004 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 22:07:03,004 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [810958104] [2022-02-20 22:07:03,005 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [810958104] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 22:07:03,005 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [742908945] [2022-02-20 22:07:03,005 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 22:07:03,005 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 22:07:03,005 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 22:07:03,020 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-02-20 22:07:03,027 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Waiting until timeout for monitored process [2022-02-20 22:07:03,210 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:07:03,215 INFO L263 TraceCheckSpWp]: Trace formula consists of 900 conjuncts, 17 conjunts are in the unsatisfiable core [2022-02-20 22:07:03,251 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 22:07:03,256 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 22:07:03,507 INFO L290 TraceCheckUtils]: 0: Hoare triple {3072#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(94, 2);call #Ultimate.allocInit(4, 3);call write~init~int(60, 3, 0, 1);call write~init~int(55, 3, 1, 1);call write~init~int(62, 3, 2, 1);call write~init~int(0, 3, 3, 1);call #Ultimate.allocInit(20, 4);call #Ultimate.allocInit(4, 5);call write~init~int(37, 5, 0, 1);call write~init~int(100, 5, 1, 1);call write~init~int(10, 5, 2, 1);call write~init~int(0, 5, 3, 1);call #Ultimate.allocInit(4, 6);call write~init~int(37, 6, 0, 1);call write~init~int(115, 6, 1, 1);call write~init~int(10, 6, 2, 1);call write~init~int(0, 6, 3, 1);call #Ultimate.allocInit(11, 7);call #Ultimate.allocInit(34, 8);call #Ultimate.allocInit(11, 9);call #Ultimate.allocInit(34, 10);call #Ultimate.allocInit(27, 11);call #Ultimate.allocInit(11, 12);call #Ultimate.allocInit(13, 13);call #Ultimate.allocInit(21, 14);call #Ultimate.allocInit(30, 15);call #Ultimate.allocInit(33, 16);call #Ultimate.allocInit(25, 17);call #Ultimate.allocInit(27, 18);call #Ultimate.allocInit(10, 19);~LDV_IN_INTERRUPT~0 := 1;~ref_cnt~0 := 0;~ldv_state_variable_1~0 := 0;~s3c_hwmon_driver_group1~0.base, ~s3c_hwmon_driver_group1~0.offset := 0, 0;~probed_1~0 := 0;~ldv_state_variable_0~0 := 0;~#s3c_hwmon_driver~0.base, ~#s3c_hwmon_driver~0.offset := 20, 0;call #Ultimate.allocInit(153, 20);call write~init~$Pointer$(#funAddr~s3c_hwmon_probe.base, #funAddr~s3c_hwmon_probe.offset, ~#s3c_hwmon_driver~0.base, ~#s3c_hwmon_driver~0.offset, 8);call write~init~$Pointer$(#funAddr~s3c_hwmon_remove.base, #funAddr~s3c_hwmon_remove.offset, ~#s3c_hwmon_driver~0.base, 8 + ~#s3c_hwmon_driver~0.offset, 8);call write~init~$Pointer$(0, 0, ~#s3c_hwmon_driver~0.base, 16 + ~#s3c_hwmon_driver~0.offset, 8);call write~init~$Pointer$(0, 0, ~#s3c_hwmon_driver~0.base, 24 + ~#s3c_hwmon_driver~0.offset, 8);call write~init~$Pointer$(0, 0, ~#s3c_hwmon_driver~0.base, 32 + ~#s3c_hwmon_driver~0.offset, 8);call write~init~$Pointer$(19, 0, ~#s3c_hwmon_driver~0.base, 40 + ~#s3c_hwmon_driver~0.offset, 8);call write~init~$Pointer$(0, 0, ~#s3c_hwmon_driver~0.base, 48 + ~#s3c_hwmon_driver~0.offset, 8);call write~init~$Pointer$(~#__this_module~0.base, ~#__this_module~0.offset, ~#s3c_hwmon_driver~0.base, 56 + ~#s3c_hwmon_driver~0.offset, 8);call write~init~$Pointer$(0, 0, ~#s3c_hwmon_driver~0.base, 64 + ~#s3c_hwmon_driver~0.offset, 8);call write~init~int(0, ~#s3c_hwmon_driver~0.base, 72 + ~#s3c_hwmon_driver~0.offset, 1);call write~init~$Pointer$(0, 0, ~#s3c_hwmon_driver~0.base, 73 + ~#s3c_hwmon_driver~0.offset, 8);call write~init~$Pointer$(0, 0, ~#s3c_hwmon_driver~0.base, 81 + ~#s3c_hwmon_driver~0.offset, 8);call write~init~$Pointer$(0, 0, ~#s3c_hwmon_driver~0.base, 89 + ~#s3c_hwmon_driver~0.offset, 8);call write~init~$Pointer$(0, 0, ~#s3c_hwmon_driver~0.base, 97 + ~#s3c_hwmon_driver~0.offset, 8);call write~init~$Pointer$(0, 0, ~#s3c_hwmon_driver~0.base, 105 + ~#s3c_hwmon_driver~0.offset, 8);call write~init~$Pointer$(0, 0, ~#s3c_hwmon_driver~0.base, 113 + ~#s3c_hwmon_driver~0.offset, 8);call write~init~$Pointer$(0, 0, ~#s3c_hwmon_driver~0.base, 121 + ~#s3c_hwmon_driver~0.offset, 8);call write~init~$Pointer$(0, 0, ~#s3c_hwmon_driver~0.base, 129 + ~#s3c_hwmon_driver~0.offset, 8);call write~init~$Pointer$(0, 0, ~#s3c_hwmon_driver~0.base, 137 + ~#s3c_hwmon_driver~0.offset, 8);call write~init~$Pointer$(0, 0, ~#s3c_hwmon_driver~0.base, 145 + ~#s3c_hwmon_driver~0.offset, 8);~ldv_retval_0~0 := 0;~ldv_retval_1~0 := 0;~ldv_retval_2~0 := 0;~ldv_count_1~0 := 0;~ldv_count_2~0 := 0; {3072#true} is VALID [2022-02-20 22:07:03,507 INFO L290 TraceCheckUtils]: 1: Hoare triple {3072#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet110#1, main_#t~switch111#1, main_#t~nondet112#1, main_#t~switch113#1, main_#t~ret114#1, main_#t~ret115#1, main_#t~ret116#1, main_#t~nondet117#1, main_#t~switch118#1, main_#t~ret119#1, main_~tmp~13#1, main_~tmp___0~4#1, main_~tmp___1~1#1;havoc main_~tmp~13#1;havoc main_~tmp___0~4#1;havoc main_~tmp___1~1#1;assume { :begin_inline_ldv_initialize } true; {3072#true} is VALID [2022-02-20 22:07:03,507 INFO L290 TraceCheckUtils]: 2: Hoare triple {3072#true} assume { :end_inline_ldv_initialize } true;~ldv_state_variable_1~0 := 0;~ref_cnt~0 := 0;~ldv_state_variable_0~0 := 1; {3072#true} is VALID [2022-02-20 22:07:03,507 INFO L290 TraceCheckUtils]: 3: Hoare triple {3072#true} assume -2147483648 <= main_#t~nondet110#1 && main_#t~nondet110#1 <= 2147483647;main_~tmp~13#1 := main_#t~nondet110#1;havoc main_#t~nondet110#1;main_#t~switch111#1 := 0 == main_~tmp~13#1; {3072#true} is VALID [2022-02-20 22:07:03,508 INFO L290 TraceCheckUtils]: 4: Hoare triple {3072#true} assume !main_#t~switch111#1;main_#t~switch111#1 := main_#t~switch111#1 || 1 == main_~tmp~13#1; {3072#true} is VALID [2022-02-20 22:07:03,508 INFO L290 TraceCheckUtils]: 5: Hoare triple {3072#true} assume main_#t~switch111#1; {3072#true} is VALID [2022-02-20 22:07:03,508 INFO L290 TraceCheckUtils]: 6: Hoare triple {3072#true} assume 0 != ~ldv_state_variable_0~0;assume -2147483648 <= main_#t~nondet117#1 && main_#t~nondet117#1 <= 2147483647;main_~tmp___1~1#1 := main_#t~nondet117#1;havoc main_#t~nondet117#1;main_#t~switch118#1 := 0 == main_~tmp___1~1#1; {3072#true} is VALID [2022-02-20 22:07:03,508 INFO L290 TraceCheckUtils]: 7: Hoare triple {3072#true} assume !main_#t~switch118#1;main_#t~switch118#1 := main_#t~switch118#1 || 1 == main_~tmp___1~1#1; {3072#true} is VALID [2022-02-20 22:07:03,508 INFO L290 TraceCheckUtils]: 8: Hoare triple {3072#true} assume main_#t~switch118#1; {3072#true} is VALID [2022-02-20 22:07:03,508 INFO L290 TraceCheckUtils]: 9: Hoare triple {3072#true} assume 1 == ~ldv_state_variable_0~0;assume { :begin_inline_s3c_hwmon_init } true;havoc s3c_hwmon_init_#res#1;havoc s3c_hwmon_init_#t~ret106#1, s3c_hwmon_init_~tmp~11#1;havoc s3c_hwmon_init_~tmp~11#1;assume { :begin_inline_platform_driver_register } true;platform_driver_register_#in~arg0#1.base, platform_driver_register_#in~arg0#1.offset := ~#s3c_hwmon_driver~0.base, ~#s3c_hwmon_driver~0.offset;havoc platform_driver_register_#res#1;havoc platform_driver_register_#t~nondet135#1, platform_driver_register_~arg0#1.base, platform_driver_register_~arg0#1.offset;platform_driver_register_~arg0#1.base, platform_driver_register_~arg0#1.offset := platform_driver_register_#in~arg0#1.base, platform_driver_register_#in~arg0#1.offset;assume -2147483648 <= platform_driver_register_#t~nondet135#1 && platform_driver_register_#t~nondet135#1 <= 2147483647;platform_driver_register_#res#1 := platform_driver_register_#t~nondet135#1;havoc platform_driver_register_#t~nondet135#1; {3072#true} is VALID [2022-02-20 22:07:03,508 INFO L290 TraceCheckUtils]: 10: Hoare triple {3072#true} s3c_hwmon_init_#t~ret106#1 := platform_driver_register_#res#1;assume { :end_inline_platform_driver_register } true;assume -2147483648 <= s3c_hwmon_init_#t~ret106#1 && s3c_hwmon_init_#t~ret106#1 <= 2147483647;s3c_hwmon_init_~tmp~11#1 := s3c_hwmon_init_#t~ret106#1;havoc s3c_hwmon_init_#t~ret106#1;s3c_hwmon_init_#res#1 := s3c_hwmon_init_~tmp~11#1; {3072#true} is VALID [2022-02-20 22:07:03,508 INFO L290 TraceCheckUtils]: 11: Hoare triple {3072#true} main_#t~ret119#1 := s3c_hwmon_init_#res#1;assume { :end_inline_s3c_hwmon_init } true;assume -2147483648 <= main_#t~ret119#1 && main_#t~ret119#1 <= 2147483647;~ldv_retval_2~0 := main_#t~ret119#1;havoc main_#t~ret119#1; {3072#true} is VALID [2022-02-20 22:07:03,509 INFO L290 TraceCheckUtils]: 12: Hoare triple {3072#true} assume !(0 != ~ldv_retval_2~0); {3072#true} is VALID [2022-02-20 22:07:03,509 INFO L290 TraceCheckUtils]: 13: Hoare triple {3072#true} assume 0 == ~ldv_retval_2~0;~ldv_state_variable_0~0 := 2;~ldv_state_variable_1~0 := 1;assume { :begin_inline_ldv_platform_driver_init_1 } true;havoc ldv_platform_driver_init_1_#t~ret109#1.base, ldv_platform_driver_init_1_#t~ret109#1.offset, ldv_platform_driver_init_1_~tmp~12#1.base, ldv_platform_driver_init_1_~tmp~12#1.offset;havoc ldv_platform_driver_init_1_~tmp~12#1.base, ldv_platform_driver_init_1_~tmp~12#1.offset; {3072#true} is VALID [2022-02-20 22:07:03,509 INFO L272 TraceCheckUtils]: 14: Hoare triple {3072#true} call ldv_platform_driver_init_1_#t~ret109#1.base, ldv_platform_driver_init_1_#t~ret109#1.offset := ldv_malloc(624); {3072#true} is VALID [2022-02-20 22:07:03,509 INFO L290 TraceCheckUtils]: 15: Hoare triple {3072#true} ~size := #in~size;havoc ~p~0.base, ~p~0.offset;havoc ~tmp~0.base, ~tmp~0.offset;havoc ~tmp___0~0;assume -2147483648 <= #t~nondet29 && #t~nondet29 <= 2147483647;~tmp___0~0 := #t~nondet29;havoc #t~nondet29; {3072#true} is VALID [2022-02-20 22:07:03,509 INFO L290 TraceCheckUtils]: 16: Hoare triple {3072#true} assume 0 != ~tmp___0~0;#res.base, #res.offset := 0, 0; {3131#(and (= |ldv_malloc_#res.base| 0) (= |ldv_malloc_#res.offset| 0))} is VALID [2022-02-20 22:07:03,510 INFO L290 TraceCheckUtils]: 17: Hoare triple {3131#(and (= |ldv_malloc_#res.base| 0) (= |ldv_malloc_#res.offset| 0))} assume true; {3131#(and (= |ldv_malloc_#res.base| 0) (= |ldv_malloc_#res.offset| 0))} is VALID [2022-02-20 22:07:03,511 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {3131#(and (= |ldv_malloc_#res.base| 0) (= |ldv_malloc_#res.offset| 0))} {3072#true} #476#return; {3078#(and (= |ULTIMATE.start_ldv_platform_driver_init_1_#t~ret109#1.offset| 0) (= |ULTIMATE.start_ldv_platform_driver_init_1_#t~ret109#1.base| 0))} is VALID [2022-02-20 22:07:03,511 INFO L290 TraceCheckUtils]: 19: Hoare triple {3078#(and (= |ULTIMATE.start_ldv_platform_driver_init_1_#t~ret109#1.offset| 0) (= |ULTIMATE.start_ldv_platform_driver_init_1_#t~ret109#1.base| 0))} ldv_platform_driver_init_1_~tmp~12#1.base, ldv_platform_driver_init_1_~tmp~12#1.offset := ldv_platform_driver_init_1_#t~ret109#1.base, ldv_platform_driver_init_1_#t~ret109#1.offset;havoc ldv_platform_driver_init_1_#t~ret109#1.base, ldv_platform_driver_init_1_#t~ret109#1.offset; {3079#(and (= |ULTIMATE.start_ldv_platform_driver_init_1_~tmp~12#1.base| 0) (= |ULTIMATE.start_ldv_platform_driver_init_1_~tmp~12#1.offset| 0))} is VALID [2022-02-20 22:07:03,511 INFO L272 TraceCheckUtils]: 20: Hoare triple {3079#(and (= |ULTIMATE.start_ldv_platform_driver_init_1_~tmp~12#1.base| 0) (= |ULTIMATE.start_ldv_platform_driver_init_1_~tmp~12#1.offset| 0))} call assume_abort_if_not((if 0 != (ldv_platform_driver_init_1_~tmp~12#1.base + ldv_platform_driver_init_1_~tmp~12#1.offset) % 18446744073709551616 then 1 else 0)); {3072#true} is VALID [2022-02-20 22:07:03,511 INFO L290 TraceCheckUtils]: 21: Hoare triple {3072#true} ~cond := #in~cond; {3132#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-02-20 22:07:03,512 INFO L290 TraceCheckUtils]: 22: Hoare triple {3132#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {3133#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-02-20 22:07:03,512 INFO L290 TraceCheckUtils]: 23: Hoare triple {3133#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {3133#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-02-20 22:07:03,513 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {3133#(not (= |assume_abort_if_not_#in~cond| 0))} {3079#(and (= |ULTIMATE.start_ldv_platform_driver_init_1_~tmp~12#1.base| 0) (= |ULTIMATE.start_ldv_platform_driver_init_1_~tmp~12#1.offset| 0))} #478#return; {3073#false} is VALID [2022-02-20 22:07:03,513 INFO L290 TraceCheckUtils]: 25: Hoare triple {3073#false} ~s3c_hwmon_driver_group1~0.base, ~s3c_hwmon_driver_group1~0.offset := ldv_platform_driver_init_1_~tmp~12#1.base, ldv_platform_driver_init_1_~tmp~12#1.offset; {3073#false} is VALID [2022-02-20 22:07:03,513 INFO L290 TraceCheckUtils]: 26: Hoare triple {3073#false} assume { :end_inline_ldv_platform_driver_init_1 } true; {3073#false} is VALID [2022-02-20 22:07:03,513 INFO L290 TraceCheckUtils]: 27: Hoare triple {3073#false} assume -2147483648 <= main_#t~nondet110#1 && main_#t~nondet110#1 <= 2147483647;main_~tmp~13#1 := main_#t~nondet110#1;havoc main_#t~nondet110#1;main_#t~switch111#1 := 0 == main_~tmp~13#1; {3073#false} is VALID [2022-02-20 22:07:03,513 INFO L290 TraceCheckUtils]: 28: Hoare triple {3073#false} assume main_#t~switch111#1; {3073#false} is VALID [2022-02-20 22:07:03,513 INFO L290 TraceCheckUtils]: 29: Hoare triple {3073#false} assume 0 != ~ldv_state_variable_1~0;assume -2147483648 <= main_#t~nondet112#1 && main_#t~nondet112#1 <= 2147483647;main_~tmp___0~4#1 := main_#t~nondet112#1;havoc main_#t~nondet112#1;main_#t~switch113#1 := 0 == main_~tmp___0~4#1; {3073#false} is VALID [2022-02-20 22:07:03,513 INFO L290 TraceCheckUtils]: 30: Hoare triple {3073#false} assume main_#t~switch113#1; {3073#false} is VALID [2022-02-20 22:07:03,514 INFO L290 TraceCheckUtils]: 31: Hoare triple {3073#false} assume 1 == ~ldv_state_variable_1~0; {3073#false} is VALID [2022-02-20 22:07:03,514 INFO L272 TraceCheckUtils]: 32: Hoare triple {3073#false} call main_#t~ret114#1 := s3c_hwmon_probe(~s3c_hwmon_driver_group1~0.base, ~s3c_hwmon_driver_group1~0.offset); {3073#false} is VALID [2022-02-20 22:07:03,514 INFO L290 TraceCheckUtils]: 33: Hoare triple {3073#false} ~dev#1.base, ~dev#1.offset := #in~dev#1.base, #in~dev#1.offset;havoc ~pdata~2#1.base, ~pdata~2#1.offset;havoc ~hwmon~1#1.base, ~hwmon~1#1.offset;havoc ~ret~3#1;havoc ~i~0#1;havoc ~tmp~9#1.base, ~tmp~9#1.offset;call ~#__key~0#1.base, ~#__key~0#1.offset := #Ultimate.allocOnStack(8);havoc ~tmp___0~3#1;havoc ~tmp___1~0#1;havoc ~tmp___2~0#1;havoc ~tmp___3~0#1;havoc ~cfg~2#1.base, ~cfg~2#1.offset;call #t~mem76#1.base, #t~mem76#1.offset := read~$Pointer$(~dev#1.base, 277 + ~dev#1.offset, 8);~pdata~2#1.base, ~pdata~2#1.offset := #t~mem76#1.base, #t~mem76#1.offset;havoc #t~mem76#1.base, #t~mem76#1.offset;~ret~3#1 := 0; {3073#false} is VALID [2022-02-20 22:07:03,514 INFO L290 TraceCheckUtils]: 34: Hoare triple {3073#false} assume !(0 == (~pdata~2#1.base + ~pdata~2#1.offset) % 18446744073709551616);assume { :begin_inline_ldv_kzalloc_9 } true;ldv_kzalloc_9_#in~size#1, ldv_kzalloc_9_#in~flags#1 := 800, 208;havoc ldv_kzalloc_9_#res#1.base, ldv_kzalloc_9_#res#1.offset;havoc ldv_kzalloc_9_#t~ret124#1.base, ldv_kzalloc_9_#t~ret124#1.offset, ldv_kzalloc_9_~size#1, ldv_kzalloc_9_~flags#1, ldv_kzalloc_9_~tmp~18#1.base, ldv_kzalloc_9_~tmp~18#1.offset;ldv_kzalloc_9_~size#1 := ldv_kzalloc_9_#in~size#1;ldv_kzalloc_9_~flags#1 := ldv_kzalloc_9_#in~flags#1;havoc ldv_kzalloc_9_~tmp~18#1.base, ldv_kzalloc_9_~tmp~18#1.offset;assume { :begin_inline_ldv_zalloc } true;ldv_zalloc_#in~size#1 := ldv_kzalloc_9_~size#1;havoc ldv_zalloc_#res#1.base, ldv_zalloc_#res#1.offset;havoc ldv_zalloc_#t~nondet32#1, ldv_zalloc_#t~malloc33#1.base, ldv_zalloc_#t~malloc33#1.offset, ldv_zalloc_#t~ret34#1, ldv_zalloc_~size#1, ldv_zalloc_~p~1#1.base, ldv_zalloc_~p~1#1.offset, ldv_zalloc_~tmp~1#1.base, ldv_zalloc_~tmp~1#1.offset, ldv_zalloc_~tmp___0~1#1;ldv_zalloc_~size#1 := ldv_zalloc_#in~size#1;havoc ldv_zalloc_~p~1#1.base, ldv_zalloc_~p~1#1.offset;havoc ldv_zalloc_~tmp~1#1.base, ldv_zalloc_~tmp~1#1.offset;havoc ldv_zalloc_~tmp___0~1#1;assume -2147483648 <= ldv_zalloc_#t~nondet32#1 && ldv_zalloc_#t~nondet32#1 <= 2147483647;ldv_zalloc_~tmp___0~1#1 := ldv_zalloc_#t~nondet32#1;havoc ldv_zalloc_#t~nondet32#1; {3073#false} is VALID [2022-02-20 22:07:03,514 INFO L290 TraceCheckUtils]: 35: Hoare triple {3073#false} assume !(0 != ldv_zalloc_~tmp___0~1#1);call ldv_zalloc_#t~malloc33#1.base, ldv_zalloc_#t~malloc33#1.offset := #Ultimate.allocOnHeap(ldv_zalloc_~size#1); {3073#false} is VALID [2022-02-20 22:07:03,514 INFO L272 TraceCheckUtils]: 36: Hoare triple {3073#false} call #Ultimate.meminit(ldv_zalloc_#t~malloc33#1.base, ldv_zalloc_#t~malloc33#1.offset, 1, ldv_zalloc_~size#1, ldv_zalloc_~size#1); {3073#false} is VALID [2022-02-20 22:07:03,514 INFO L290 TraceCheckUtils]: 37: Hoare triple {3073#false} #memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, #ptr.base); {3073#false} is VALID [2022-02-20 22:07:03,514 INFO L290 TraceCheckUtils]: 38: Hoare triple {3073#false} assume true; {3073#false} is VALID [2022-02-20 22:07:03,515 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {3073#false} {3073#false} #416#return; {3073#false} is VALID [2022-02-20 22:07:03,515 INFO L290 TraceCheckUtils]: 40: Hoare triple {3073#false} ldv_zalloc_~tmp~1#1.base, ldv_zalloc_~tmp~1#1.offset := ldv_zalloc_#t~malloc33#1.base, ldv_zalloc_#t~malloc33#1.offset;ldv_zalloc_~p~1#1.base, ldv_zalloc_~p~1#1.offset := ldv_zalloc_~tmp~1#1.base, ldv_zalloc_~tmp~1#1.offset; {3073#false} is VALID [2022-02-20 22:07:03,515 INFO L272 TraceCheckUtils]: 41: Hoare triple {3073#false} call assume_abort_if_not((if 0 != (ldv_zalloc_~p~1#1.base + ldv_zalloc_~p~1#1.offset) % 18446744073709551616 then 1 else 0)); {3073#false} is VALID [2022-02-20 22:07:03,515 INFO L290 TraceCheckUtils]: 42: Hoare triple {3073#false} ~cond := #in~cond; {3073#false} is VALID [2022-02-20 22:07:03,515 INFO L290 TraceCheckUtils]: 43: Hoare triple {3073#false} assume !(0 == ~cond); {3073#false} is VALID [2022-02-20 22:07:03,515 INFO L290 TraceCheckUtils]: 44: Hoare triple {3073#false} assume true; {3073#false} is VALID [2022-02-20 22:07:03,515 INFO L284 TraceCheckUtils]: 45: Hoare quadruple {3073#false} {3073#false} #418#return; {3073#false} is VALID [2022-02-20 22:07:03,515 INFO L272 TraceCheckUtils]: 46: Hoare triple {3073#false} call ldv_zalloc_#t~ret34#1 := IS_ERR(ldv_zalloc_~p~1#1.base, ldv_zalloc_~p~1#1.offset); {3073#false} is VALID [2022-02-20 22:07:03,516 INFO L290 TraceCheckUtils]: 47: Hoare triple {3073#false} ~ptr.base, ~ptr.offset := #in~ptr.base, #in~ptr.offset;havoc ~tmp~15; {3073#false} is VALID [2022-02-20 22:07:03,516 INFO L272 TraceCheckUtils]: 48: Hoare triple {3073#false} call #t~ret121 := ldv_is_err(~ptr.base, ~ptr.offset); {3073#false} is VALID [2022-02-20 22:07:03,516 INFO L290 TraceCheckUtils]: 49: Hoare triple {3073#false} ~ptr.base, ~ptr.offset := #in~ptr.base, #in~ptr.offset;#res := (if 0 == (if (~ptr.base + ~ptr.offset) % 18446744073709551616 > 2012 then 1 else 0) then 0 else 1); {3073#false} is VALID [2022-02-20 22:07:03,516 INFO L290 TraceCheckUtils]: 50: Hoare triple {3073#false} assume true; {3073#false} is VALID [2022-02-20 22:07:03,516 INFO L284 TraceCheckUtils]: 51: Hoare quadruple {3073#false} {3073#false} #494#return; {3073#false} is VALID [2022-02-20 22:07:03,516 INFO L290 TraceCheckUtils]: 52: Hoare triple {3073#false} ~tmp~15 := #t~ret121;havoc #t~ret121;#res := ~tmp~15 % 256; {3073#false} is VALID [2022-02-20 22:07:03,516 INFO L290 TraceCheckUtils]: 53: Hoare triple {3073#false} assume true; {3073#false} is VALID [2022-02-20 22:07:03,516 INFO L284 TraceCheckUtils]: 54: Hoare quadruple {3073#false} {3073#false} #420#return; {3073#false} is VALID [2022-02-20 22:07:03,517 INFO L290 TraceCheckUtils]: 55: Hoare triple {3073#false} assume -9223372036854775808 <= ldv_zalloc_#t~ret34#1 && ldv_zalloc_#t~ret34#1 <= 9223372036854775807; {3073#false} is VALID [2022-02-20 22:07:03,517 INFO L272 TraceCheckUtils]: 56: Hoare triple {3073#false} call assume_abort_if_not((if 0 == ldv_zalloc_#t~ret34#1 then 1 else 0)); {3073#false} is VALID [2022-02-20 22:07:03,517 INFO L290 TraceCheckUtils]: 57: Hoare triple {3073#false} ~cond := #in~cond; {3073#false} is VALID [2022-02-20 22:07:03,517 INFO L290 TraceCheckUtils]: 58: Hoare triple {3073#false} assume !(0 == ~cond); {3073#false} is VALID [2022-02-20 22:07:03,517 INFO L290 TraceCheckUtils]: 59: Hoare triple {3073#false} assume true; {3073#false} is VALID [2022-02-20 22:07:03,517 INFO L284 TraceCheckUtils]: 60: Hoare quadruple {3073#false} {3073#false} #422#return; {3073#false} is VALID [2022-02-20 22:07:03,517 INFO L290 TraceCheckUtils]: 61: Hoare triple {3073#false} havoc ldv_zalloc_#t~ret34#1;ldv_zalloc_#res#1.base, ldv_zalloc_#res#1.offset := ldv_zalloc_~p~1#1.base, ldv_zalloc_~p~1#1.offset; {3073#false} is VALID [2022-02-20 22:07:03,517 INFO L290 TraceCheckUtils]: 62: Hoare triple {3073#false} ldv_kzalloc_9_#t~ret124#1.base, ldv_kzalloc_9_#t~ret124#1.offset := ldv_zalloc_#res#1.base, ldv_zalloc_#res#1.offset;assume { :end_inline_ldv_zalloc } true;ldv_kzalloc_9_~tmp~18#1.base, ldv_kzalloc_9_~tmp~18#1.offset := ldv_kzalloc_9_#t~ret124#1.base, ldv_kzalloc_9_#t~ret124#1.offset;havoc ldv_kzalloc_9_#t~ret124#1.base, ldv_kzalloc_9_#t~ret124#1.offset;ldv_kzalloc_9_#res#1.base, ldv_kzalloc_9_#res#1.offset := ldv_kzalloc_9_~tmp~18#1.base, ldv_kzalloc_9_~tmp~18#1.offset; {3073#false} is VALID [2022-02-20 22:07:03,518 INFO L290 TraceCheckUtils]: 63: Hoare triple {3073#false} #t~ret78#1.base, #t~ret78#1.offset := ldv_kzalloc_9_#res#1.base, ldv_kzalloc_9_#res#1.offset;assume { :end_inline_ldv_kzalloc_9 } true;~tmp~9#1.base, ~tmp~9#1.offset := #t~ret78#1.base, #t~ret78#1.offset;havoc #t~ret78#1.base, #t~ret78#1.offset;~hwmon~1#1.base, ~hwmon~1#1.offset := ~tmp~9#1.base, ~tmp~9#1.offset; {3073#false} is VALID [2022-02-20 22:07:03,518 INFO L290 TraceCheckUtils]: 64: Hoare triple {3073#false} assume !(0 == (~hwmon~1#1.base + ~hwmon~1#1.offset) % 18446744073709551616);assume { :begin_inline_platform_set_drvdata } true;platform_set_drvdata_#in~pdev#1.base, platform_set_drvdata_#in~pdev#1.offset, platform_set_drvdata_#in~data#1.base, platform_set_drvdata_#in~data#1.offset := ~dev#1.base, ~dev#1.offset, ~hwmon~1#1.base, ~hwmon~1#1.offset;havoc platform_set_drvdata_~pdev#1.base, platform_set_drvdata_~pdev#1.offset, platform_set_drvdata_~data#1.base, platform_set_drvdata_~data#1.offset;platform_set_drvdata_~pdev#1.base, platform_set_drvdata_~pdev#1.offset := platform_set_drvdata_#in~pdev#1.base, platform_set_drvdata_#in~pdev#1.offset;platform_set_drvdata_~data#1.base, platform_set_drvdata_~data#1.offset := platform_set_drvdata_#in~data#1.base, platform_set_drvdata_#in~data#1.offset;assume { :begin_inline_dev_set_drvdata } true;dev_set_drvdata_#in~arg0#1.base, dev_set_drvdata_#in~arg0#1.offset, dev_set_drvdata_#in~arg1#1.base, dev_set_drvdata_#in~arg1#1.offset := platform_set_drvdata_~pdev#1.base, 12 + platform_set_drvdata_~pdev#1.offset, platform_set_drvdata_~data#1.base, platform_set_drvdata_~data#1.offset;havoc dev_set_drvdata_~arg0#1.base, dev_set_drvdata_~arg0#1.offset, dev_set_drvdata_~arg1#1.base, dev_set_drvdata_~arg1#1.offset;dev_set_drvdata_~arg0#1.base, dev_set_drvdata_~arg0#1.offset := dev_set_drvdata_#in~arg0#1.base, dev_set_drvdata_#in~arg0#1.offset;dev_set_drvdata_~arg1#1.base, dev_set_drvdata_~arg1#1.offset := dev_set_drvdata_#in~arg1#1.base, dev_set_drvdata_#in~arg1#1.offset; {3073#false} is VALID [2022-02-20 22:07:03,518 INFO L290 TraceCheckUtils]: 65: Hoare triple {3073#false} assume { :end_inline_dev_set_drvdata } true; {3073#false} is VALID [2022-02-20 22:07:03,518 INFO L290 TraceCheckUtils]: 66: Hoare triple {3073#false} assume { :end_inline_platform_set_drvdata } true;assume { :begin_inline___mutex_init } true;__mutex_init_#in~arg0#1.base, __mutex_init_#in~arg0#1.offset, __mutex_init_#in~arg1#1.base, __mutex_init_#in~arg1#1.offset, __mutex_init_#in~arg2#1.base, __mutex_init_#in~arg2#1.offset := ~hwmon~1#1.base, ~hwmon~1#1.offset, 13, 0, ~#__key~0#1.base, ~#__key~0#1.offset;havoc __mutex_init_~arg0#1.base, __mutex_init_~arg0#1.offset, __mutex_init_~arg1#1.base, __mutex_init_~arg1#1.offset, __mutex_init_~arg2#1.base, __mutex_init_~arg2#1.offset;__mutex_init_~arg0#1.base, __mutex_init_~arg0#1.offset := __mutex_init_#in~arg0#1.base, __mutex_init_#in~arg0#1.offset;__mutex_init_~arg1#1.base, __mutex_init_~arg1#1.offset := __mutex_init_#in~arg1#1.base, __mutex_init_#in~arg1#1.offset;__mutex_init_~arg2#1.base, __mutex_init_~arg2#1.offset := __mutex_init_#in~arg2#1.base, __mutex_init_#in~arg2#1.offset; {3073#false} is VALID [2022-02-20 22:07:03,518 INFO L290 TraceCheckUtils]: 67: Hoare triple {3073#false} assume { :end_inline___mutex_init } true;assume { :begin_inline_s3c_adc_register } true;s3c_adc_register_#in~arg0#1.base, s3c_adc_register_#in~arg0#1.offset, s3c_adc_register_#in~arg1#1.base, s3c_adc_register_#in~arg1#1.offset, s3c_adc_register_#in~arg2#1.base, s3c_adc_register_#in~arg2#1.offset, s3c_adc_register_#in~arg3#1 := ~dev#1.base, ~dev#1.offset, 0, 0, 0, 0, 0;havoc s3c_adc_register_#res#1.base, s3c_adc_register_#res#1.offset;havoc s3c_adc_register_#t~ret137#1.base, s3c_adc_register_#t~ret137#1.offset, s3c_adc_register_~arg0#1.base, s3c_adc_register_~arg0#1.offset, s3c_adc_register_~arg1#1.base, s3c_adc_register_~arg1#1.offset, s3c_adc_register_~arg2#1.base, s3c_adc_register_~arg2#1.offset, s3c_adc_register_~arg3#1;s3c_adc_register_~arg0#1.base, s3c_adc_register_~arg0#1.offset := s3c_adc_register_#in~arg0#1.base, s3c_adc_register_#in~arg0#1.offset;s3c_adc_register_~arg1#1.base, s3c_adc_register_~arg1#1.offset := s3c_adc_register_#in~arg1#1.base, s3c_adc_register_#in~arg1#1.offset;s3c_adc_register_~arg2#1.base, s3c_adc_register_~arg2#1.offset := s3c_adc_register_#in~arg2#1.base, s3c_adc_register_#in~arg2#1.offset;s3c_adc_register_~arg3#1 := s3c_adc_register_#in~arg3#1; {3073#false} is VALID [2022-02-20 22:07:03,518 INFO L272 TraceCheckUtils]: 68: Hoare triple {3073#false} call s3c_adc_register_#t~ret137#1.base, s3c_adc_register_#t~ret137#1.offset := ldv_malloc(0); {3073#false} is VALID [2022-02-20 22:07:03,518 INFO L290 TraceCheckUtils]: 69: Hoare triple {3073#false} ~size := #in~size;havoc ~p~0.base, ~p~0.offset;havoc ~tmp~0.base, ~tmp~0.offset;havoc ~tmp___0~0;assume -2147483648 <= #t~nondet29 && #t~nondet29 <= 2147483647;~tmp___0~0 := #t~nondet29;havoc #t~nondet29; {3073#false} is VALID [2022-02-20 22:07:03,518 INFO L290 TraceCheckUtils]: 70: Hoare triple {3073#false} assume 0 != ~tmp___0~0;#res.base, #res.offset := 0, 0; {3073#false} is VALID [2022-02-20 22:07:03,519 INFO L290 TraceCheckUtils]: 71: Hoare triple {3073#false} assume true; {3073#false} is VALID [2022-02-20 22:07:03,519 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {3073#false} {3073#false} #424#return; {3073#false} is VALID [2022-02-20 22:07:03,519 INFO L290 TraceCheckUtils]: 73: Hoare triple {3073#false} s3c_adc_register_#res#1.base, s3c_adc_register_#res#1.offset := s3c_adc_register_#t~ret137#1.base, s3c_adc_register_#t~ret137#1.offset;havoc s3c_adc_register_#t~ret137#1.base, s3c_adc_register_#t~ret137#1.offset; {3073#false} is VALID [2022-02-20 22:07:03,519 INFO L290 TraceCheckUtils]: 74: Hoare triple {3073#false} #t~ret80#1.base, #t~ret80#1.offset := s3c_adc_register_#res#1.base, s3c_adc_register_#res#1.offset;assume { :end_inline_s3c_adc_register } true;call write~$Pointer$(#t~ret80#1.base, #t~ret80#1.offset, ~hwmon~1#1.base, 152 + ~hwmon~1#1.offset, 8);havoc #t~ret80#1.base, #t~ret80#1.offset;call #t~mem81#1.base, #t~mem81#1.offset := read~$Pointer$(~hwmon~1#1.base, 152 + ~hwmon~1#1.offset, 8); {3073#false} is VALID [2022-02-20 22:07:03,519 INFO L272 TraceCheckUtils]: 75: Hoare triple {3073#false} call #t~ret82#1 := IS_ERR(#t~mem81#1.base, #t~mem81#1.offset); {3073#false} is VALID [2022-02-20 22:07:03,519 INFO L290 TraceCheckUtils]: 76: Hoare triple {3073#false} ~ptr.base, ~ptr.offset := #in~ptr.base, #in~ptr.offset;havoc ~tmp~15; {3073#false} is VALID [2022-02-20 22:07:03,519 INFO L272 TraceCheckUtils]: 77: Hoare triple {3073#false} call #t~ret121 := ldv_is_err(~ptr.base, ~ptr.offset); {3073#false} is VALID [2022-02-20 22:07:03,519 INFO L290 TraceCheckUtils]: 78: Hoare triple {3073#false} ~ptr.base, ~ptr.offset := #in~ptr.base, #in~ptr.offset;#res := (if 0 == (if (~ptr.base + ~ptr.offset) % 18446744073709551616 > 2012 then 1 else 0) then 0 else 1); {3073#false} is VALID [2022-02-20 22:07:03,520 INFO L290 TraceCheckUtils]: 79: Hoare triple {3073#false} assume true; {3073#false} is VALID [2022-02-20 22:07:03,520 INFO L284 TraceCheckUtils]: 80: Hoare quadruple {3073#false} {3073#false} #494#return; {3073#false} is VALID [2022-02-20 22:07:03,520 INFO L290 TraceCheckUtils]: 81: Hoare triple {3073#false} ~tmp~15 := #t~ret121;havoc #t~ret121;#res := ~tmp~15 % 256; {3073#false} is VALID [2022-02-20 22:07:03,520 INFO L290 TraceCheckUtils]: 82: Hoare triple {3073#false} assume true; {3073#false} is VALID [2022-02-20 22:07:03,520 INFO L284 TraceCheckUtils]: 83: Hoare quadruple {3073#false} {3073#false} #426#return; {3073#false} is VALID [2022-02-20 22:07:03,520 INFO L290 TraceCheckUtils]: 84: Hoare triple {3073#false} assume -9223372036854775808 <= #t~ret82#1 && #t~ret82#1 <= 9223372036854775807;~tmp___1~0#1 := #t~ret82#1;havoc #t~mem81#1.base, #t~mem81#1.offset;havoc #t~ret82#1; {3073#false} is VALID [2022-02-20 22:07:03,520 INFO L290 TraceCheckUtils]: 85: Hoare triple {3073#false} assume !(0 != ~tmp___1~0#1);assume { :begin_inline_s3c_hwmon_add_raw } true;s3c_hwmon_add_raw_#in~dev#1.base, s3c_hwmon_add_raw_#in~dev#1.offset := ~dev#1.base, 12 + ~dev#1.offset;havoc s3c_hwmon_add_raw_#res#1;havoc s3c_hwmon_add_raw_~dev#1.base, s3c_hwmon_add_raw_~dev#1.offset;s3c_hwmon_add_raw_~dev#1.base, s3c_hwmon_add_raw_~dev#1.offset := s3c_hwmon_add_raw_#in~dev#1.base, s3c_hwmon_add_raw_#in~dev#1.offset;s3c_hwmon_add_raw_#res#1 := 0; {3073#false} is VALID [2022-02-20 22:07:03,520 INFO L290 TraceCheckUtils]: 86: Hoare triple {3073#false} #t~ret86#1 := s3c_hwmon_add_raw_#res#1;assume { :end_inline_s3c_hwmon_add_raw } true;assume -2147483648 <= #t~ret86#1 && #t~ret86#1 <= 2147483647;~ret~3#1 := #t~ret86#1;havoc #t~ret86#1; {3073#false} is VALID [2022-02-20 22:07:03,521 INFO L290 TraceCheckUtils]: 87: Hoare triple {3073#false} assume !(0 != ~ret~3#1);assume { :begin_inline_hwmon_device_register } true;hwmon_device_register_#in~arg0#1.base, hwmon_device_register_#in~arg0#1.offset := ~dev#1.base, 12 + ~dev#1.offset;havoc hwmon_device_register_#res#1.base, hwmon_device_register_#res#1.offset;havoc hwmon_device_register_#t~ret133#1.base, hwmon_device_register_#t~ret133#1.offset, hwmon_device_register_~arg0#1.base, hwmon_device_register_~arg0#1.offset;hwmon_device_register_~arg0#1.base, hwmon_device_register_~arg0#1.offset := hwmon_device_register_#in~arg0#1.base, hwmon_device_register_#in~arg0#1.offset; {3073#false} is VALID [2022-02-20 22:07:03,521 INFO L272 TraceCheckUtils]: 88: Hoare triple {3073#false} call hwmon_device_register_#t~ret133#1.base, hwmon_device_register_#t~ret133#1.offset := ldv_malloc(1003); {3073#false} is VALID [2022-02-20 22:07:03,521 INFO L290 TraceCheckUtils]: 89: Hoare triple {3073#false} ~size := #in~size;havoc ~p~0.base, ~p~0.offset;havoc ~tmp~0.base, ~tmp~0.offset;havoc ~tmp___0~0;assume -2147483648 <= #t~nondet29 && #t~nondet29 <= 2147483647;~tmp___0~0 := #t~nondet29;havoc #t~nondet29; {3073#false} is VALID [2022-02-20 22:07:03,521 INFO L290 TraceCheckUtils]: 90: Hoare triple {3073#false} assume 0 != ~tmp___0~0;#res.base, #res.offset := 0, 0; {3073#false} is VALID [2022-02-20 22:07:03,521 INFO L290 TraceCheckUtils]: 91: Hoare triple {3073#false} assume true; {3073#false} is VALID [2022-02-20 22:07:03,521 INFO L284 TraceCheckUtils]: 92: Hoare quadruple {3073#false} {3073#false} #430#return; {3073#false} is VALID [2022-02-20 22:07:03,521 INFO L290 TraceCheckUtils]: 93: Hoare triple {3073#false} hwmon_device_register_#res#1.base, hwmon_device_register_#res#1.offset := hwmon_device_register_#t~ret133#1.base, hwmon_device_register_#t~ret133#1.offset;havoc hwmon_device_register_#t~ret133#1.base, hwmon_device_register_#t~ret133#1.offset; {3073#false} is VALID [2022-02-20 22:07:03,521 INFO L290 TraceCheckUtils]: 94: Hoare triple {3073#false} #t~ret87#1.base, #t~ret87#1.offset := hwmon_device_register_#res#1.base, hwmon_device_register_#res#1.offset;assume { :end_inline_hwmon_device_register } true;call write~$Pointer$(#t~ret87#1.base, #t~ret87#1.offset, ~hwmon~1#1.base, 160 + ~hwmon~1#1.offset, 8);havoc #t~ret87#1.base, #t~ret87#1.offset;call #t~mem88#1.base, #t~mem88#1.offset := read~$Pointer$(~hwmon~1#1.base, 160 + ~hwmon~1#1.offset, 8); {3073#false} is VALID [2022-02-20 22:07:03,522 INFO L272 TraceCheckUtils]: 95: Hoare triple {3073#false} call #t~ret89#1 := IS_ERR(#t~mem88#1.base, #t~mem88#1.offset); {3073#false} is VALID [2022-02-20 22:07:03,522 INFO L290 TraceCheckUtils]: 96: Hoare triple {3073#false} ~ptr.base, ~ptr.offset := #in~ptr.base, #in~ptr.offset;havoc ~tmp~15; {3073#false} is VALID [2022-02-20 22:07:03,522 INFO L272 TraceCheckUtils]: 97: Hoare triple {3073#false} call #t~ret121 := ldv_is_err(~ptr.base, ~ptr.offset); {3073#false} is VALID [2022-02-20 22:07:03,522 INFO L290 TraceCheckUtils]: 98: Hoare triple {3073#false} ~ptr.base, ~ptr.offset := #in~ptr.base, #in~ptr.offset;#res := (if 0 == (if (~ptr.base + ~ptr.offset) % 18446744073709551616 > 2012 then 1 else 0) then 0 else 1); {3073#false} is VALID [2022-02-20 22:07:03,522 INFO L290 TraceCheckUtils]: 99: Hoare triple {3073#false} assume true; {3073#false} is VALID [2022-02-20 22:07:03,522 INFO L284 TraceCheckUtils]: 100: Hoare quadruple {3073#false} {3073#false} #494#return; {3073#false} is VALID [2022-02-20 22:07:03,522 INFO L290 TraceCheckUtils]: 101: Hoare triple {3073#false} ~tmp~15 := #t~ret121;havoc #t~ret121;#res := ~tmp~15 % 256; {3073#false} is VALID [2022-02-20 22:07:03,522 INFO L290 TraceCheckUtils]: 102: Hoare triple {3073#false} assume true; {3073#false} is VALID [2022-02-20 22:07:03,523 INFO L284 TraceCheckUtils]: 103: Hoare quadruple {3073#false} {3073#false} #432#return; {3073#false} is VALID [2022-02-20 22:07:03,523 INFO L290 TraceCheckUtils]: 104: Hoare triple {3073#false} assume -9223372036854775808 <= #t~ret89#1 && #t~ret89#1 <= 9223372036854775807;~tmp___3~0#1 := #t~ret89#1;havoc #t~mem88#1.base, #t~mem88#1.offset;havoc #t~ret89#1; {3073#false} is VALID [2022-02-20 22:07:03,523 INFO L290 TraceCheckUtils]: 105: Hoare triple {3073#false} assume !(0 != ~tmp___3~0#1);~i~0#1 := 0; {3073#false} is VALID [2022-02-20 22:07:03,523 INFO L290 TraceCheckUtils]: 106: Hoare triple {3073#false} assume ~i~0#1 % 4294967296 <= 7; {3073#false} is VALID [2022-02-20 22:07:03,523 INFO L290 TraceCheckUtils]: 107: Hoare triple {3073#false} call #t~mem93#1.base, #t~mem93#1.offset := read~$Pointer$(~pdata~2#1.base, ~pdata~2#1.offset + 8 * ~i~0#1, 8);~cfg~2#1.base, ~cfg~2#1.offset := #t~mem93#1.base, #t~mem93#1.offset;havoc #t~mem93#1.base, #t~mem93#1.offset; {3073#false} is VALID [2022-02-20 22:07:03,523 INFO L290 TraceCheckUtils]: 108: Hoare triple {3073#false} assume !(0 == (~cfg~2#1.base + ~cfg~2#1.offset) % 18446744073709551616);call #t~mem94#1 := read~int(~cfg~2#1.base, 8 + ~cfg~2#1.offset, 4); {3073#false} is VALID [2022-02-20 22:07:03,523 INFO L290 TraceCheckUtils]: 109: Hoare triple {3073#false} assume #t~mem94#1 % 4294967296 > 65535;havoc #t~mem94#1;havoc #t~nondet95#1; {3073#false} is VALID [2022-02-20 22:07:03,523 INFO L290 TraceCheckUtils]: 110: Hoare triple {3073#false} call #t~mem96#1 := read~int(~cfg~2#1.base, 12 + ~cfg~2#1.offset, 4); {3073#false} is VALID [2022-02-20 22:07:03,524 INFO L290 TraceCheckUtils]: 111: Hoare triple {3073#false} assume !(0 == #t~mem96#1 % 4294967296);havoc #t~mem96#1;call #t~mem98#1.base, #t~mem98#1.offset := read~$Pointer$(~pdata~2#1.base, ~pdata~2#1.offset + 8 * ~i~0#1, 8);assume { :begin_inline_s3c_hwmon_create_attr } true;s3c_hwmon_create_attr_#in~dev#1.base, s3c_hwmon_create_attr_#in~dev#1.offset, s3c_hwmon_create_attr_#in~cfg#1.base, s3c_hwmon_create_attr_#in~cfg#1.offset, s3c_hwmon_create_attr_#in~attrs#1.base, s3c_hwmon_create_attr_#in~attrs#1.offset, s3c_hwmon_create_attr_#in~channel#1 := ~dev#1.base, 12 + ~dev#1.offset, #t~mem98#1.base, #t~mem98#1.offset, ~hwmon~1#1.base, 168 + ~hwmon~1#1.offset + 120 * (~i~0#1 % 4294967296), ~i~0#1;havoc s3c_hwmon_create_attr_#res#1;havoc s3c_hwmon_create_attr_#t~nondet69#1, s3c_hwmon_create_attr_#t~ret70#1, s3c_hwmon_create_attr_#t~nondet71#1, s3c_hwmon_create_attr_#t~mem72#1.base, s3c_hwmon_create_attr_#t~mem72#1.offset, s3c_hwmon_create_attr_#t~nondet73#1, s3c_hwmon_create_attr_#t~ret74#1, s3c_hwmon_create_attr_#t~nondet75#1, s3c_hwmon_create_attr_~dev#1.base, s3c_hwmon_create_attr_~dev#1.offset, s3c_hwmon_create_attr_~cfg#1.base, s3c_hwmon_create_attr_~cfg#1.offset, s3c_hwmon_create_attr_~attrs#1.base, s3c_hwmon_create_attr_~attrs#1.offset, s3c_hwmon_create_attr_~channel#1, s3c_hwmon_create_attr_~attr~0#1.base, s3c_hwmon_create_attr_~attr~0#1.offset, s3c_hwmon_create_attr_~ret~2#1;s3c_hwmon_create_attr_~dev#1.base, s3c_hwmon_create_attr_~dev#1.offset := s3c_hwmon_create_attr_#in~dev#1.base, s3c_hwmon_create_attr_#in~dev#1.offset;s3c_hwmon_create_attr_~cfg#1.base, s3c_hwmon_create_attr_~cfg#1.offset := s3c_hwmon_create_attr_#in~cfg#1.base, s3c_hwmon_create_attr_#in~cfg#1.offset;s3c_hwmon_create_attr_~attrs#1.base, s3c_hwmon_create_attr_~attrs#1.offset := s3c_hwmon_create_attr_#in~attrs#1.base, s3c_hwmon_create_attr_#in~attrs#1.offset;s3c_hwmon_create_attr_~channel#1 := s3c_hwmon_create_attr_#in~channel#1;havoc s3c_hwmon_create_attr_~attr~0#1.base, s3c_hwmon_create_attr_~attr~0#1.offset;havoc s3c_hwmon_create_attr_~ret~2#1;havoc s3c_hwmon_create_attr_#t~nondet69#1;s3c_hwmon_create_attr_~attr~0#1.base, s3c_hwmon_create_attr_~attr~0#1.offset := s3c_hwmon_create_attr_~attrs#1.base, s3c_hwmon_create_attr_~attrs#1.offset;call write~int(s3c_hwmon_create_attr_~channel#1, s3c_hwmon_create_attr_~attr~0#1.base, 44 + s3c_hwmon_create_attr_~attr~0#1.offset, 4);call write~$Pointer$(s3c_hwmon_create_attr_~attrs#1.base, 96 + s3c_hwmon_create_attr_~attrs#1.offset, s3c_hwmon_create_attr_~attr~0#1.base, s3c_hwmon_create_attr_~attr~0#1.offset, 8);call write~int(292, s3c_hwmon_create_attr_~attr~0#1.base, 8 + s3c_hwmon_create_attr_~attr~0#1.offset, 4);call write~$Pointer$(#funAddr~s3c_hwmon_ch_show.base, #funAddr~s3c_hwmon_ch_show.offset, s3c_hwmon_create_attr_~attr~0#1.base, 28 + s3c_hwmon_create_attr_~attr~0#1.offset, 8);assume { :begin_inline_ldv_device_create_file_7 } true;ldv_device_create_file_7_#in~ldv_func_arg1#1.base, ldv_device_create_file_7_#in~ldv_func_arg1#1.offset, ldv_device_create_file_7_#in~ldv_func_arg2#1.base, ldv_device_create_file_7_#in~ldv_func_arg2#1.offset := s3c_hwmon_create_attr_~dev#1.base, s3c_hwmon_create_attr_~dev#1.offset, s3c_hwmon_create_attr_~attr~0#1.base, s3c_hwmon_create_attr_~attr~0#1.offset;havoc ldv_device_create_file_7_#res#1;havoc ldv_device_create_file_7_#t~ret122#1, ldv_device_create_file_7_~ldv_func_arg1#1.base, ldv_device_create_file_7_~ldv_func_arg1#1.offset, ldv_device_create_file_7_~ldv_func_arg2#1.base, ldv_device_create_file_7_~ldv_func_arg2#1.offset, ldv_device_create_file_7_~tmp~16#1;ldv_device_create_file_7_~ldv_func_arg1#1.base, ldv_device_create_file_7_~ldv_func_arg1#1.offset := ldv_device_create_file_7_#in~ldv_func_arg1#1.base, ldv_device_create_file_7_#in~ldv_func_arg1#1.offset;ldv_device_create_file_7_~ldv_func_arg2#1.base, ldv_device_create_file_7_~ldv_func_arg2#1.offset := ldv_device_create_file_7_#in~ldv_func_arg2#1.base, ldv_device_create_file_7_#in~ldv_func_arg2#1.offset;havoc ldv_device_create_file_7_~tmp~16#1; {3073#false} is VALID [2022-02-20 22:07:03,524 INFO L272 TraceCheckUtils]: 112: Hoare triple {3073#false} call ldv_device_create_file_7_#t~ret122#1 := ldv_device_create_file(); {3073#false} is VALID [2022-02-20 22:07:03,524 INFO L290 TraceCheckUtils]: 113: Hoare triple {3073#false} havoc ~nondetermined~0#1;havoc ~tmp~21#1; {3073#false} is VALID [2022-02-20 22:07:03,524 INFO L272 TraceCheckUtils]: 114: Hoare triple {3073#false} call #t~ret127#1 := ldv_undef_int(); {3073#false} is VALID [2022-02-20 22:07:03,524 INFO L290 TraceCheckUtils]: 115: Hoare triple {3073#false} havoc ~tmp~4;assume -2147483648 <= #t~nondet37 && #t~nondet37 <= 2147483647;~tmp~4 := #t~nondet37;havoc #t~nondet37;#res := ~tmp~4; {3073#false} is VALID [2022-02-20 22:07:03,524 INFO L290 TraceCheckUtils]: 116: Hoare triple {3073#false} assume true; {3073#false} is VALID [2022-02-20 22:07:03,524 INFO L284 TraceCheckUtils]: 117: Hoare quadruple {3073#false} {3073#false} #488#return; {3073#false} is VALID [2022-02-20 22:07:03,524 INFO L290 TraceCheckUtils]: 118: Hoare triple {3073#false} assume -2147483648 <= #t~ret127#1 && #t~ret127#1 <= 2147483647;~nondetermined~0#1 := #t~ret127#1;havoc #t~ret127#1; {3073#false} is VALID [2022-02-20 22:07:03,525 INFO L290 TraceCheckUtils]: 119: Hoare triple {3073#false} assume 0 != ~nondetermined~0#1;~ldv_count_2~0 := 1 + ~ldv_count_2~0; {3073#false} is VALID [2022-02-20 22:07:03,525 INFO L290 TraceCheckUtils]: 120: Hoare triple {3073#false} assume ~ldv_count_1~0 < ~ldv_count_2~0;assume { :begin_inline_ldv_error } true; {3073#false} is VALID [2022-02-20 22:07:03,525 INFO L290 TraceCheckUtils]: 121: Hoare triple {3073#false} assume !false; {3073#false} is VALID [2022-02-20 22:07:03,525 INFO L134 CoverageAnalysis]: Checked inductivity of 50 backedges. 18 proven. 0 refuted. 0 times theorem prover too weak. 32 trivial. 0 not checked. [2022-02-20 22:07:03,525 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 22:07:03,526 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [742908945] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 22:07:03,526 INFO L191 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-02-20 22:07:03,526 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [9] total 9 [2022-02-20 22:07:03,526 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [677450027] [2022-02-20 22:07:03,526 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 22:07:03,527 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 6 states have (on average 12.666666666666666) internal successors, (76), 6 states have internal predecessors, (76), 3 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 2 states have call predecessors, (12), 3 states have call successors, (12) Word has length 122 [2022-02-20 22:07:03,527 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 22:07:03,527 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 7 states, 6 states have (on average 12.666666666666666) internal successors, (76), 6 states have internal predecessors, (76), 3 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 2 states have call predecessors, (12), 3 states have call successors, (12) [2022-02-20 22:07:03,600 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 102 edges. 102 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 22:07:03,600 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-02-20 22:07:03,600 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 22:07:03,601 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-02-20 22:07:03,601 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=15, Invalid=57, Unknown=0, NotChecked=0, Total=72 [2022-02-20 22:07:03,601 INFO L87 Difference]: Start difference. First operand 213 states and 274 transitions. Second operand has 7 states, 6 states have (on average 12.666666666666666) internal successors, (76), 6 states have internal predecessors, (76), 3 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 2 states have call predecessors, (12), 3 states have call successors, (12) [2022-02-20 22:07:04,377 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 22:07:04,377 INFO L93 Difference]: Finished difference Result 427 states and 553 transitions. [2022-02-20 22:07:04,378 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-02-20 22:07:04,378 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 6 states have (on average 12.666666666666666) internal successors, (76), 6 states have internal predecessors, (76), 3 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 2 states have call predecessors, (12), 3 states have call successors, (12) Word has length 122 [2022-02-20 22:07:04,378 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 22:07:04,378 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 6 states have (on average 12.666666666666666) internal successors, (76), 6 states have internal predecessors, (76), 3 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 2 states have call predecessors, (12), 3 states have call successors, (12) [2022-02-20 22:07:04,384 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 499 transitions. [2022-02-20 22:07:04,384 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 6 states have (on average 12.666666666666666) internal successors, (76), 6 states have internal predecessors, (76), 3 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 2 states have call predecessors, (12), 3 states have call successors, (12) [2022-02-20 22:07:04,389 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 499 transitions. [2022-02-20 22:07:04,389 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 7 states and 499 transitions. [2022-02-20 22:07:04,709 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 499 edges. 499 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 22:07:04,714 INFO L225 Difference]: With dead ends: 427 [2022-02-20 22:07:04,714 INFO L226 Difference]: Without dead ends: 215 [2022-02-20 22:07:04,714 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 157 GetRequests, 149 SyntacticMatches, 0 SemanticMatches, 8 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=19, Invalid=71, Unknown=0, NotChecked=0, Total=90 [2022-02-20 22:07:04,715 INFO L933 BasicCegarLoop]: 240 mSDtfsCounter, 2 mSDsluCounter, 1181 mSDsCounter, 0 mSdLazyCounter, 55 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 2 SdHoareTripleChecker+Valid, 1421 SdHoareTripleChecker+Invalid, 55 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 55 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 22:07:04,715 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [2 Valid, 1421 Invalid, 55 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 55 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 22:07:04,716 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 215 states. [2022-02-20 22:07:04,722 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 215 to 215. [2022-02-20 22:07:04,722 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 22:07:04,723 INFO L82 GeneralOperation]: Start isEquivalent. First operand 215 states. Second operand has 215 states, 161 states have (on average 1.2608695652173914) internal successors, (203), 163 states have internal predecessors, (203), 36 states have call successors, (36), 16 states have call predecessors, (36), 17 states have return successors, (39), 36 states have call predecessors, (39), 36 states have call successors, (39) [2022-02-20 22:07:04,723 INFO L74 IsIncluded]: Start isIncluded. First operand 215 states. Second operand has 215 states, 161 states have (on average 1.2608695652173914) internal successors, (203), 163 states have internal predecessors, (203), 36 states have call successors, (36), 16 states have call predecessors, (36), 17 states have return successors, (39), 36 states have call predecessors, (39), 36 states have call successors, (39) [2022-02-20 22:07:04,723 INFO L87 Difference]: Start difference. First operand 215 states. Second operand has 215 states, 161 states have (on average 1.2608695652173914) internal successors, (203), 163 states have internal predecessors, (203), 36 states have call successors, (36), 16 states have call predecessors, (36), 17 states have return successors, (39), 36 states have call predecessors, (39), 36 states have call successors, (39) [2022-02-20 22:07:04,729 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 22:07:04,729 INFO L93 Difference]: Finished difference Result 215 states and 278 transitions. [2022-02-20 22:07:04,729 INFO L276 IsEmpty]: Start isEmpty. Operand 215 states and 278 transitions. [2022-02-20 22:07:04,730 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 22:07:04,730 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 22:07:04,731 INFO L74 IsIncluded]: Start isIncluded. First operand has 215 states, 161 states have (on average 1.2608695652173914) internal successors, (203), 163 states have internal predecessors, (203), 36 states have call successors, (36), 16 states have call predecessors, (36), 17 states have return successors, (39), 36 states have call predecessors, (39), 36 states have call successors, (39) Second operand 215 states. [2022-02-20 22:07:04,731 INFO L87 Difference]: Start difference. First operand has 215 states, 161 states have (on average 1.2608695652173914) internal successors, (203), 163 states have internal predecessors, (203), 36 states have call successors, (36), 16 states have call predecessors, (36), 17 states have return successors, (39), 36 states have call predecessors, (39), 36 states have call successors, (39) Second operand 215 states. [2022-02-20 22:07:04,737 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 22:07:04,737 INFO L93 Difference]: Finished difference Result 215 states and 278 transitions. [2022-02-20 22:07:04,737 INFO L276 IsEmpty]: Start isEmpty. Operand 215 states and 278 transitions. [2022-02-20 22:07:04,737 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 22:07:04,738 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 22:07:04,738 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 22:07:04,738 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 22:07:04,738 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 215 states, 161 states have (on average 1.2608695652173914) internal successors, (203), 163 states have internal predecessors, (203), 36 states have call successors, (36), 16 states have call predecessors, (36), 17 states have return successors, (39), 36 states have call predecessors, (39), 36 states have call successors, (39) [2022-02-20 22:07:04,744 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 215 states to 215 states and 278 transitions. [2022-02-20 22:07:04,745 INFO L78 Accepts]: Start accepts. Automaton has 215 states and 278 transitions. Word has length 122 [2022-02-20 22:07:04,745 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 22:07:04,745 INFO L470 AbstractCegarLoop]: Abstraction has 215 states and 278 transitions. [2022-02-20 22:07:04,745 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 6 states have (on average 12.666666666666666) internal successors, (76), 6 states have internal predecessors, (76), 3 states have call successors, (14), 2 states have call predecessors, (14), 3 states have return successors, (12), 2 states have call predecessors, (12), 3 states have call successors, (12) [2022-02-20 22:07:04,745 INFO L276 IsEmpty]: Start isEmpty. Operand 215 states and 278 transitions. [2022-02-20 22:07:04,746 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 144 [2022-02-20 22:07:04,746 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 22:07:04,747 INFO L514 BasicCegarLoop]: trace histogram [5, 5, 5, 4, 4, 4, 4, 4, 4, 4, 3, 3, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 22:07:04,766 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Forceful destruction successful, exit code 0 [2022-02-20 22:07:04,964 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2,2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 22:07:04,964 INFO L402 AbstractCegarLoop]: === Iteration 4 === Targeting ldv_device_create_fileErr0ASSERT_VIOLATIONERROR_FUNCTION === [ldv_device_create_fileErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 22:07:04,965 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 22:07:04,965 INFO L85 PathProgramCache]: Analyzing trace with hash -59889623, now seen corresponding path program 1 times [2022-02-20 22:07:04,965 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 22:07:04,965 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1991679093] [2022-02-20 22:07:04,965 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 22:07:04,965 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 22:07:05,122 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-02-20 22:07:05,122 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-02-20 22:07:05,220 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-02-20 22:07:05,276 INFO L138 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-02-20 22:07:05,276 INFO L628 BasicCegarLoop]: Counterexample is feasible [2022-02-20 22:07:05,277 INFO L764 garLoopResultBuilder]: Registering result UNSAFE for location ldv_device_create_fileErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2022-02-20 22:07:05,278 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3 [2022-02-20 22:07:05,280 INFO L732 BasicCegarLoop]: Path program histogram: [1, 1, 1, 1] [2022-02-20 22:07:05,282 INFO L180 ceAbstractionStarter]: Computing trace abstraction results [2022-02-20 22:07:05,339 FATAL L489 DefaultTranslator]: Callstack has procedure call flag but succeeding procedure is empty at [CALL] call #t~ret109 := ldv_malloc(624); [2022-02-20 22:07:05,339 FATAL L? ?]: The Plugin de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction has thrown an exception: java.lang.AssertionError: callstack broken after backtranslation by InlinerBacktranslator at de.uni_freiburg.informatik.ultimate.boogie.procedureinliner.backtranslation.InlinerBacktranslator.translateProgramExecution(InlinerBacktranslator.java:230) at de.uni_freiburg.informatik.ultimate.core.coreplugin.services.ModelTranslationContainer.translateProgramExecution(ModelTranslationContainer.java:216) at de.uni_freiburg.informatik.ultimate.core.coreplugin.services.ModelTranslationContainer.translateProgramExecution(ModelTranslationContainer.java:225) at de.uni_freiburg.informatik.ultimate.core.coreplugin.services.ModelTranslationContainer.translateProgramExecution(ModelTranslationContainer.java:225) at de.uni_freiburg.informatik.ultimate.core.coreplugin.services.ModelTranslationContainer.translateProgramExecution(ModelTranslationContainer.java:206) at de.uni_freiburg.informatik.ultimate.core.lib.results.UnprovableResult.getProgramExecutionAsString(UnprovableResult.java:132) at de.uni_freiburg.informatik.ultimate.core.lib.results.UnprovableResult.getLongDescription(UnprovableResult.java:125) at de.uni_freiburg.informatik.ultimate.core.coreplugin.services.ResultService.reportResult(ResultService.java:86) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.CegarLoopResultReporter.reportResult(CegarLoopResultReporter.java:141) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.reportLocationResults(TraceAbstractionStarter.java:607) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.runCegarLoops(TraceAbstractionStarter.java:182) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.(TraceAbstractionStarter.java:156) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver.finish(TraceAbstractionObserver.java:123) at de.uni_freiburg.informatik.ultimate.core.coreplugin.PluginConnector.runObserver(PluginConnector.java:168) at de.uni_freiburg.informatik.ultimate.core.coreplugin.PluginConnector.runTool(PluginConnector.java:151) at de.uni_freiburg.informatik.ultimate.core.coreplugin.PluginConnector.run(PluginConnector.java:128) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.executePluginConnector(ToolchainWalker.java:232) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.processPlugin(ToolchainWalker.java:226) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.walkUnprotected(ToolchainWalker.java:142) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.walk(ToolchainWalker.java:104) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainManager$Toolchain.processToolchain(ToolchainManager.java:320) at de.uni_freiburg.informatik.ultimate.core.coreplugin.toolchain.DefaultToolchainJob.run(DefaultToolchainJob.java:145) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63) [2022-02-20 22:07:05,342 INFO L158 Benchmark]: Toolchain (without parser) took 7964.49ms. Allocated memory was 117.4MB in the beginning and 245.4MB in the end (delta: 127.9MB). Free memory was 88.1MB in the beginning and 129.8MB in the end (delta: -41.8MB). Peak memory consumption was 86.9MB. Max. memory is 16.1GB. [2022-02-20 22:07:05,343 INFO L158 Benchmark]: CDTParser took 0.15ms. Allocated memory is still 117.4MB. Free memory is still 72.9MB. There was no memory consumed. Max. memory is 16.1GB. [2022-02-20 22:07:05,343 INFO L158 Benchmark]: CACSL2BoogieTranslator took 598.57ms. Allocated memory is still 117.4MB. Free memory was 87.8MB in the beginning and 69.2MB in the end (delta: 18.6MB). Peak memory consumption was 18.9MB. Max. memory is 16.1GB. [2022-02-20 22:07:05,343 INFO L158 Benchmark]: Boogie Procedure Inliner took 62.99ms. Allocated memory is still 117.4MB. Free memory was 69.2MB in the beginning and 63.8MB in the end (delta: 5.3MB). Peak memory consumption was 4.2MB. Max. memory is 16.1GB. [2022-02-20 22:07:05,344 INFO L158 Benchmark]: Boogie Preprocessor took 63.41ms. Allocated memory was 117.4MB in the beginning and 192.9MB in the end (delta: 75.5MB). Free memory was 63.8MB in the beginning and 167.4MB in the end (delta: -103.5MB). Peak memory consumption was 12.6MB. Max. memory is 16.1GB. [2022-02-20 22:07:05,344 INFO L158 Benchmark]: RCFGBuilder took 942.31ms. Allocated memory is still 192.9MB. Free memory was 167.4MB in the beginning and 120.8MB in the end (delta: 46.6MB). Peak memory consumption was 46.1MB. Max. memory is 16.1GB. [2022-02-20 22:07:05,344 INFO L158 Benchmark]: TraceAbstraction took 6281.66ms. Allocated memory was 192.9MB in the beginning and 245.4MB in the end (delta: 52.4MB). Free memory was 120.2MB in the beginning and 129.8MB in the end (delta: -9.7MB). Peak memory consumption was 43.8MB. Max. memory is 16.1GB. [2022-02-20 22:07:05,345 INFO L339 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - AssertionsEnabledResult: Assertions are enabled Assertions are enabled - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.15ms. Allocated memory is still 117.4MB. Free memory is still 72.9MB. There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 598.57ms. Allocated memory is still 117.4MB. Free memory was 87.8MB in the beginning and 69.2MB in the end (delta: 18.6MB). Peak memory consumption was 18.9MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 62.99ms. Allocated memory is still 117.4MB. Free memory was 69.2MB in the beginning and 63.8MB in the end (delta: 5.3MB). Peak memory consumption was 4.2MB. Max. memory is 16.1GB. * Boogie Preprocessor took 63.41ms. Allocated memory was 117.4MB in the beginning and 192.9MB in the end (delta: 75.5MB). Free memory was 63.8MB in the beginning and 167.4MB in the end (delta: -103.5MB). Peak memory consumption was 12.6MB. Max. memory is 16.1GB. * RCFGBuilder took 942.31ms. Allocated memory is still 192.9MB. Free memory was 167.4MB in the beginning and 120.8MB in the end (delta: 46.6MB). Peak memory consumption was 46.1MB. Max. memory is 16.1GB. * TraceAbstraction took 6281.66ms. Allocated memory was 192.9MB in the beginning and 245.4MB in the end (delta: 52.4MB). Free memory was 120.2MB in the beginning and 129.8MB in the end (delta: -9.7MB). Peak memory consumption was 43.8MB. Max. memory is 16.1GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - StatisticsResult: ErrorAutomatonStatistics NumberErrorTraces: 0, NumberStatementsAllTraces: 0, NumberRelevantStatements: 0, 0.0s ErrorAutomatonConstructionTimeTotal, 0.0s FaulLocalizationTime, NumberStatementsFirstTrace: -1, TraceLengthAvg: 0, 0.0s ErrorAutomatonConstructionTimeAvg, 0.0s ErrorAutomatonDifferenceTimeAvg, 0.0s ErrorAutomatonDifferenceTimeTotal, NumberOfNoEnhancement: 0, NumberOfFiniteEnhancement: 0, NumberOfInfiniteEnhancement: 0 - ExceptionOrErrorResult: AssertionError: callstack broken after backtranslation by InlinerBacktranslator de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: AssertionError: callstack broken after backtranslation by InlinerBacktranslator: de.uni_freiburg.informatik.ultimate.boogie.procedureinliner.backtranslation.InlinerBacktranslator.translateProgramExecution(InlinerBacktranslator.java:230) RESULT: Ultimate could not prove your program: Toolchain returned no result. [2022-02-20 22:07:05,369 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Forceful destruction successful, exit code 0 Received shutdown request... --- End real Ultimate output --- Execution finished normally Using bit-precise analysis Retrying with bit-precise analysis ### Bit-precise run ### Calling Ultimate with: /usr/bin/java -Dosgi.configuration.area=/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/config -Xmx15G -Xms4m -ea -jar /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data -tc /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/AutomizerReach.xml -i ../sv-benchmarks/c/ldv-validator-v0.8/linux-stable-af3071a-1-130_7a-drivers--hwmon--s3c-hwmon.ko-entry_point_ldv-val-v0.8.cil.out.i -s /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-64bit-Automizer_Bitvector.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux --witnessprinter.witness.filename witness.graphml --witnessprinter.write.witness.besides.input.file false --witnessprinter.graph.data.specification CHECK( init(main()), LTL(G ! call(reach_error())) ) --witnessprinter.graph.data.producer Automizer --witnessprinter.graph.data.architecture 64bit --witnessprinter.graph.data.programhash 88f19b088f98626e870666f9633d9e7e34156d2b7ba315c9b1bc3979a22f8d34 --- Real Ultimate output --- This is Ultimate 0.2.2-dev-03d7b7b [2022-02-20 22:07:07,137 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-02-20 22:07:07,140 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-02-20 22:07:07,175 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-02-20 22:07:07,175 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-02-20 22:07:07,178 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-02-20 22:07:07,179 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-02-20 22:07:07,183 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-02-20 22:07:07,185 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-02-20 22:07:07,190 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-02-20 22:07:07,191 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-02-20 22:07:07,192 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-02-20 22:07:07,192 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-02-20 22:07:07,194 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-02-20 22:07:07,195 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-02-20 22:07:07,201 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-02-20 22:07:07,201 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-02-20 22:07:07,202 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-02-20 22:07:07,203 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-02-20 22:07:07,206 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-02-20 22:07:07,208 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-02-20 22:07:07,209 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-02-20 22:07:07,210 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-02-20 22:07:07,211 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-02-20 22:07:07,213 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-02-20 22:07:07,215 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-02-20 22:07:07,215 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-02-20 22:07:07,216 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-02-20 22:07:07,216 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-02-20 22:07:07,217 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-02-20 22:07:07,217 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-02-20 22:07:07,218 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-02-20 22:07:07,219 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-02-20 22:07:07,219 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-02-20 22:07:07,220 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-02-20 22:07:07,220 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-02-20 22:07:07,221 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-02-20 22:07:07,221 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-02-20 22:07:07,221 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-02-20 22:07:07,224 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-02-20 22:07:07,224 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-02-20 22:07:07,225 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-64bit-Automizer_Bitvector.epf [2022-02-20 22:07:07,255 INFO L113 SettingsManager]: Loading preferences was successful [2022-02-20 22:07:07,255 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-02-20 22:07:07,256 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-02-20 22:07:07,256 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-02-20 22:07:07,257 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-02-20 22:07:07,257 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-02-20 22:07:07,257 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-02-20 22:07:07,258 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-02-20 22:07:07,258 INFO L138 SettingsManager]: * Use SBE=true [2022-02-20 22:07:07,258 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-02-20 22:07:07,258 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-02-20 22:07:07,259 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-02-20 22:07:07,259 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-02-20 22:07:07,259 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-02-20 22:07:07,259 INFO L138 SettingsManager]: * Adapt memory model on pointer casts if necessary=true [2022-02-20 22:07:07,259 INFO L138 SettingsManager]: * Use bitvectors instead of ints=true [2022-02-20 22:07:07,259 INFO L138 SettingsManager]: * Memory model=HoenickeLindenmann_4ByteResolution [2022-02-20 22:07:07,259 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-02-20 22:07:07,260 INFO L138 SettingsManager]: * Use constant arrays=true [2022-02-20 22:07:07,260 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-02-20 22:07:07,260 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-02-20 22:07:07,260 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-02-20 22:07:07,260 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-02-20 22:07:07,260 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 22:07:07,260 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-02-20 22:07:07,261 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-02-20 22:07:07,261 INFO L138 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2022-02-20 22:07:07,261 INFO L138 SettingsManager]: * Trace refinement strategy=WOLF [2022-02-20 22:07:07,261 INFO L138 SettingsManager]: * Command for external solver=cvc4 --incremental --print-success --lang smt [2022-02-20 22:07:07,261 INFO L138 SettingsManager]: * Large block encoding in concurrent analysis=OFF [2022-02-20 22:07:07,261 INFO L138 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2022-02-20 22:07:07,261 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-02-20 22:07:07,262 INFO L138 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2022-02-20 22:07:07,262 INFO L138 SettingsManager]: * Logic for external solver=AUFBV WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 (file:/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/com.sun.xml.bind_2.2.0.v201505121915.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator: Entry function -> main Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness directory -> /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness filename -> witness.graphml Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Write witness besides input file -> false Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data specification -> CHECK( init(main()), LTL(G ! call(reach_error())) ) Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data producer -> Automizer Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data architecture -> 64bit Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data programhash -> 88f19b088f98626e870666f9633d9e7e34156d2b7ba315c9b1bc3979a22f8d34 [2022-02-20 22:07:07,520 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-02-20 22:07:07,536 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-02-20 22:07:07,538 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-02-20 22:07:07,539 INFO L271 PluginConnector]: Initializing CDTParser... [2022-02-20 22:07:07,540 INFO L275 PluginConnector]: CDTParser initialized [2022-02-20 22:07:07,540 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/ldv-validator-v0.8/linux-stable-af3071a-1-130_7a-drivers--hwmon--s3c-hwmon.ko-entry_point_ldv-val-v0.8.cil.out.i [2022-02-20 22:07:07,583 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/c55e97f5a/53724ac60d224ca5bd3b1c03b476142a/FLAG6d9eac0f6 [2022-02-20 22:07:07,993 INFO L306 CDTParser]: Found 1 translation units. [2022-02-20 22:07:07,994 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/ldv-validator-v0.8/linux-stable-af3071a-1-130_7a-drivers--hwmon--s3c-hwmon.ko-entry_point_ldv-val-v0.8.cil.out.i [2022-02-20 22:07:08,019 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/c55e97f5a/53724ac60d224ca5bd3b1c03b476142a/FLAG6d9eac0f6 [2022-02-20 22:07:08,032 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/c55e97f5a/53724ac60d224ca5bd3b1c03b476142a [2022-02-20 22:07:08,033 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-02-20 22:07:08,036 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2022-02-20 22:07:08,037 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-02-20 22:07:08,037 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-02-20 22:07:08,040 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-02-20 22:07:08,040 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 10:07:08" (1/1) ... [2022-02-20 22:07:08,041 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@11754df2 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 10:07:08, skipping insertion in model container [2022-02-20 22:07:08,041 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 10:07:08" (1/1) ... [2022-02-20 22:07:08,046 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-02-20 22:07:08,093 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-02-20 22:07:08,347 FATAL L? ?]: The Plugin de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator has thrown an exception: java.lang.IllegalArgumentException: cannot determine size of incomplete type at de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.base.chandler.TypeSizeAndOffsetComputer.constructSizeTValueAndOffsets_StructAndUnion(TypeSizeAndOffsetComputer.java:256) at de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.base.chandler.TypeSizeAndOffsetComputer.computeSize(TypeSizeAndOffsetComputer.java:203) at de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.base.chandler.TypeSizeAndOffsetComputer.constructBytesizeExpression(TypeSizeAndOffsetComputer.java:121) at de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.base.CHandler.checkIfNecessaryMemoryModelAdaption(CHandler.java:1000) at de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.base.CHandler.visit(CHandler.java:968) at de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.base.PRDispatcher.dispatch(PRDispatcher.java:279) at de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.result.ExpressionResultTransformer.transformDispatchDecaySwitchRexBoolToInt(ExpressionResultTransformer.java:177) at de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.base.chandler.FunctionHandler.handleFunctionCallGivenNameAndArguments(FunctionHandler.java:675) at de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.base.chandler.FunctionHandler.handleFunctionCallExpression(FunctionHandler.java:509) at de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.base.CHandler.visit(CHandler.java:1449) at de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.base.PRDispatcher.dispatch(PRDispatcher.java:267) at de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.base.CHandler.visit(CHandler.java:729) at de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.base.PRDispatcher.dispatch(PRDispatcher.java:282) at de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.base.CHandler.visit(CHandler.java:1392) at de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.base.PRDispatcher.dispatch(PRDispatcher.java:220) at de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.base.CHandler.visit(CHandler.java:1076) at de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.base.PRDispatcher.dispatch(PRDispatcher.java:232) at de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.base.CHandler.visit(CHandler.java:1076) at de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.base.PRDispatcher.dispatch(PRDispatcher.java:232) at de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.base.chandler.FunctionHandler.handleFunctionDefinition(FunctionHandler.java:371) at de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.base.CHandler.visit(CHandler.java:1465) at de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.base.PRDispatcher.dispatch(PRDispatcher.java:155) at de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.base.CHandler.processTUchild(CHandler.java:3271) at de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.base.CHandler.visit(CHandler.java:2356) at de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.base.CHandler.visit(CHandler.java:601) at de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.base.PRDispatcher.dispatch(PRDispatcher.java:134) at de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.base.MainTranslator.translate(MainTranslator.java:192) at de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.base.MainTranslator.run(MainTranslator.java:115) at de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.base.MainTranslator.(MainTranslator.java:93) at de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.CACSL2BoogieTranslatorObserver.finish(CACSL2BoogieTranslatorObserver.java:128) at de.uni_freiburg.informatik.ultimate.core.coreplugin.PluginConnector.runObserver(PluginConnector.java:168) at de.uni_freiburg.informatik.ultimate.core.coreplugin.PluginConnector.runTool(PluginConnector.java:151) at de.uni_freiburg.informatik.ultimate.core.coreplugin.PluginConnector.run(PluginConnector.java:128) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.executePluginConnector(ToolchainWalker.java:232) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.processPlugin(ToolchainWalker.java:226) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.walkUnprotected(ToolchainWalker.java:142) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.walk(ToolchainWalker.java:104) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainManager$Toolchain.processToolchain(ToolchainManager.java:320) at de.uni_freiburg.informatik.ultimate.core.coreplugin.toolchain.DefaultToolchainJob.run(DefaultToolchainJob.java:145) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63) [2022-02-20 22:07:08,350 INFO L158 Benchmark]: Toolchain (without parser) took 313.47ms. Allocated memory was 54.5MB in the beginning and 67.1MB in the end (delta: 12.6MB). Free memory was 28.5MB in the beginning and 41.7MB in the end (delta: -13.2MB). Peak memory consumption was 8.1MB. Max. memory is 16.1GB. [2022-02-20 22:07:08,351 INFO L158 Benchmark]: CDTParser took 0.14ms. Allocated memory is still 54.5MB. Free memory was 34.9MB in the beginning and 34.8MB in the end (delta: 34.1kB). There was no memory consumed. Max. memory is 16.1GB. [2022-02-20 22:07:08,351 INFO L158 Benchmark]: CACSL2BoogieTranslator took 311.74ms. Allocated memory was 54.5MB in the beginning and 67.1MB in the end (delta: 12.6MB). Free memory was 28.3MB in the beginning and 41.7MB in the end (delta: -13.4MB). Peak memory consumption was 8.1MB. Max. memory is 16.1GB. [2022-02-20 22:07:08,352 INFO L339 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - AssertionsEnabledResult: Assertions are enabled Assertions are enabled - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.14ms. Allocated memory is still 54.5MB. Free memory was 34.9MB in the beginning and 34.8MB in the end (delta: 34.1kB). There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 311.74ms. Allocated memory was 54.5MB in the beginning and 67.1MB in the end (delta: 12.6MB). Free memory was 28.3MB in the beginning and 41.7MB in the end (delta: -13.4MB). Peak memory consumption was 8.1MB. Max. memory is 16.1GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator: - ExceptionOrErrorResult: IllegalArgumentException: cannot determine size of incomplete type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator: IllegalArgumentException: cannot determine size of incomplete type: de.uni_freiburg.informatik.ultimate.cdt.translation.implementation.base.chandler.TypeSizeAndOffsetComputer.constructSizeTValueAndOffsets_StructAndUnion(TypeSizeAndOffsetComputer.java:256) RESULT: Ultimate could not prove your program: Toolchain returned no result. Received shutdown request... --- End real Ultimate output --- Execution finished normally Writing output log to file Ultimate.log Result: ERROR: ExceptionOrErrorResult: IllegalArgumentException: cannot determine size of incomplete type