/usr/bin/java -ea -Xmx8000000000 -Xss4m -jar ./plugins/org.eclipse.equinox.launcher_1.3.100.v20150511-1540.jar -data @noDefault -ultimatedata ./data -tc ../../../trunk/examples/toolchains/AutomizerC.xml -s ../../../trunk/examples/settings/default/automizer/svcomp-Reach-32bit-Automizer_Default.epf -i ../../../trunk/examples/svcomp/heap-manipulation/dll_of_dll-2.i -------------------------------------------------------------------------------- This is Ultimate 0.1.25-8fc6572 [2020-07-10 15:04:17,662 INFO L177 SettingsManager]: Resetting all preferences to default values... [2020-07-10 15:04:17,664 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2020-07-10 15:04:17,677 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2020-07-10 15:04:17,678 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2020-07-10 15:04:17,679 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2020-07-10 15:04:17,680 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2020-07-10 15:04:17,682 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2020-07-10 15:04:17,684 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2020-07-10 15:04:17,685 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2020-07-10 15:04:17,686 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2020-07-10 15:04:17,687 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2020-07-10 15:04:17,687 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2020-07-10 15:04:17,688 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2020-07-10 15:04:17,690 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2020-07-10 15:04:17,691 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2020-07-10 15:04:17,692 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2020-07-10 15:04:17,693 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2020-07-10 15:04:17,695 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2020-07-10 15:04:17,697 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2020-07-10 15:04:17,698 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2020-07-10 15:04:17,699 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2020-07-10 15:04:17,701 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2020-07-10 15:04:17,701 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2020-07-10 15:04:17,704 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2020-07-10 15:04:17,704 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2020-07-10 15:04:17,705 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2020-07-10 15:04:17,706 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2020-07-10 15:04:17,706 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2020-07-10 15:04:17,707 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2020-07-10 15:04:17,708 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2020-07-10 15:04:17,708 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2020-07-10 15:04:17,709 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2020-07-10 15:04:17,710 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2020-07-10 15:04:17,711 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2020-07-10 15:04:17,712 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2020-07-10 15:04:17,712 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2020-07-10 15:04:17,713 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2020-07-10 15:04:17,713 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2020-07-10 15:04:17,714 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2020-07-10 15:04:17,714 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2020-07-10 15:04:17,715 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/default/automizer/svcomp-Reach-32bit-Automizer_Default.epf [2020-07-10 15:04:17,731 INFO L113 SettingsManager]: Loading preferences was successful [2020-07-10 15:04:17,731 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2020-07-10 15:04:17,732 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2020-07-10 15:04:17,732 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2020-07-10 15:04:17,733 INFO L138 SettingsManager]: * Use SBE=true [2020-07-10 15:04:17,733 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2020-07-10 15:04:17,733 INFO L138 SettingsManager]: * sizeof long=4 [2020-07-10 15:04:17,733 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2020-07-10 15:04:17,733 INFO L138 SettingsManager]: * sizeof POINTER=4 [2020-07-10 15:04:17,734 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2020-07-10 15:04:17,734 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2020-07-10 15:04:17,734 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2020-07-10 15:04:17,734 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2020-07-10 15:04:17,734 INFO L138 SettingsManager]: * sizeof long double=12 [2020-07-10 15:04:17,735 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2020-07-10 15:04:17,735 INFO L138 SettingsManager]: * Use constant arrays=true [2020-07-10 15:04:17,735 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2020-07-10 15:04:17,735 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2020-07-10 15:04:17,735 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2020-07-10 15:04:17,736 INFO L138 SettingsManager]: * To the following directory=./dump/ [2020-07-10 15:04:17,736 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2020-07-10 15:04:17,736 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2020-07-10 15:04:17,736 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2020-07-10 15:04:17,736 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2020-07-10 15:04:17,737 INFO L138 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2020-07-10 15:04:17,737 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2020-07-10 15:04:17,737 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2020-07-10 15:04:17,737 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2020-07-10 15:04:17,737 INFO L138 SettingsManager]: * Trace refinement exception blacklist=NONE [2020-07-10 15:04:17,738 INFO L138 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2020-07-10 15:04:18,044 INFO L81 nceAwareModelManager]: Repository-Root is: /tmp [2020-07-10 15:04:18,063 INFO L258 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2020-07-10 15:04:18,066 INFO L214 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2020-07-10 15:04:18,067 INFO L271 PluginConnector]: Initializing CDTParser... [2020-07-10 15:04:18,067 INFO L275 PluginConnector]: CDTParser initialized [2020-07-10 15:04:18,068 INFO L429 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/heap-manipulation/dll_of_dll-2.i [2020-07-10 15:04:18,133 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/8c2dec185/0d7f7fb884e745dc87c7cf1b7376fdb4/FLAGdd0e9e27a [2020-07-10 15:04:18,627 INFO L306 CDTParser]: Found 1 translation units. [2020-07-10 15:04:18,628 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/heap-manipulation/dll_of_dll-2.i [2020-07-10 15:04:18,647 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/8c2dec185/0d7f7fb884e745dc87c7cf1b7376fdb4/FLAGdd0e9e27a [2020-07-10 15:04:18,906 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/8c2dec185/0d7f7fb884e745dc87c7cf1b7376fdb4 [2020-07-10 15:04:18,914 INFO L296 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2020-07-10 15:04:18,917 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2020-07-10 15:04:18,918 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2020-07-10 15:04:18,918 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2020-07-10 15:04:18,921 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2020-07-10 15:04:18,925 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 10.07 03:04:18" (1/1) ... [2020-07-10 15:04:18,929 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@281e858e and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.07 03:04:18, skipping insertion in model container [2020-07-10 15:04:18,929 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 10.07 03:04:18" (1/1) ... [2020-07-10 15:04:18,937 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2020-07-10 15:04:19,008 INFO L178 MainTranslator]: Built tables and reachable declarations [2020-07-10 15:04:19,514 INFO L206 PostProcessor]: Analyzing one entry point: main [2020-07-10 15:04:19,527 INFO L203 MainTranslator]: Completed pre-run [2020-07-10 15:04:19,601 INFO L206 PostProcessor]: Analyzing one entry point: main [2020-07-10 15:04:19,687 INFO L208 MainTranslator]: Completed translation [2020-07-10 15:04:19,689 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.07 03:04:19 WrapperNode [2020-07-10 15:04:19,689 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2020-07-10 15:04:19,690 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2020-07-10 15:04:19,690 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2020-07-10 15:04:19,690 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2020-07-10 15:04:19,706 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.07 03:04:19" (1/1) ... [2020-07-10 15:04:19,708 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.07 03:04:19" (1/1) ... [2020-07-10 15:04:19,731 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.07 03:04:19" (1/1) ... [2020-07-10 15:04:19,732 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.07 03:04:19" (1/1) ... [2020-07-10 15:04:19,772 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.07 03:04:19" (1/1) ... [2020-07-10 15:04:19,797 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.07 03:04:19" (1/1) ... [2020-07-10 15:04:19,807 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.07 03:04:19" (1/1) ... [2020-07-10 15:04:19,818 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2020-07-10 15:04:19,819 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2020-07-10 15:04:19,819 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2020-07-10 15:04:19,819 INFO L275 PluginConnector]: RCFGBuilder initialized [2020-07-10 15:04:19,820 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.07 03:04:19" (1/1) ... No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 1 with z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 1 with z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2020-07-10 15:04:19,895 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2020-07-10 15:04:19,896 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2020-07-10 15:04:19,896 INFO L138 BoogieDeclarations]: Found implementation of procedure ##fun~$Pointer$~TO~VOID [2020-07-10 15:04:19,896 INFO L138 BoogieDeclarations]: Found implementation of procedure __bswap_32 [2020-07-10 15:04:19,896 INFO L138 BoogieDeclarations]: Found implementation of procedure __bswap_64 [2020-07-10 15:04:19,896 INFO L138 BoogieDeclarations]: Found implementation of procedure fail [2020-07-10 15:04:19,897 INFO L138 BoogieDeclarations]: Found implementation of procedure alloc_or_die_slave [2020-07-10 15:04:19,897 INFO L138 BoogieDeclarations]: Found implementation of procedure alloc_or_die_master [2020-07-10 15:04:19,897 INFO L138 BoogieDeclarations]: Found implementation of procedure dll_insert_slave [2020-07-10 15:04:19,897 INFO L138 BoogieDeclarations]: Found implementation of procedure dll_create_generic [2020-07-10 15:04:19,897 INFO L138 BoogieDeclarations]: Found implementation of procedure dll_create_slave [2020-07-10 15:04:19,897 INFO L138 BoogieDeclarations]: Found implementation of procedure dll_destroy_slave [2020-07-10 15:04:19,898 INFO L138 BoogieDeclarations]: Found implementation of procedure dll_destroy_nested_lists [2020-07-10 15:04:19,898 INFO L138 BoogieDeclarations]: Found implementation of procedure dll_reinit_nested_lists [2020-07-10 15:04:19,898 INFO L138 BoogieDeclarations]: Found implementation of procedure dll_destroy_master [2020-07-10 15:04:19,898 INFO L138 BoogieDeclarations]: Found implementation of procedure dll_insert_master [2020-07-10 15:04:19,898 INFO L138 BoogieDeclarations]: Found implementation of procedure dll_create_master [2020-07-10 15:04:19,898 INFO L138 BoogieDeclarations]: Found implementation of procedure inspect_base [2020-07-10 15:04:19,899 INFO L138 BoogieDeclarations]: Found implementation of procedure inspect_full [2020-07-10 15:04:19,899 INFO L138 BoogieDeclarations]: Found implementation of procedure inspect_dangling [2020-07-10 15:04:19,899 INFO L138 BoogieDeclarations]: Found implementation of procedure inspect_init [2020-07-10 15:04:19,899 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2020-07-10 15:04:19,899 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_error [2020-07-10 15:04:19,900 INFO L130 BoogieDeclarations]: Found specification of procedure __ctype_get_mb_cur_max [2020-07-10 15:04:19,900 INFO L130 BoogieDeclarations]: Found specification of procedure atof [2020-07-10 15:04:19,900 INFO L130 BoogieDeclarations]: Found specification of procedure atoi [2020-07-10 15:04:19,900 INFO L130 BoogieDeclarations]: Found specification of procedure atol [2020-07-10 15:04:19,900 INFO L130 BoogieDeclarations]: Found specification of procedure atoll [2020-07-10 15:04:19,900 INFO L130 BoogieDeclarations]: Found specification of procedure strtod [2020-07-10 15:04:19,900 INFO L130 BoogieDeclarations]: Found specification of procedure strtof [2020-07-10 15:04:19,901 INFO L130 BoogieDeclarations]: Found specification of procedure strtold [2020-07-10 15:04:19,901 INFO L130 BoogieDeclarations]: Found specification of procedure strtol [2020-07-10 15:04:19,901 INFO L130 BoogieDeclarations]: Found specification of procedure strtoul [2020-07-10 15:04:19,901 INFO L130 BoogieDeclarations]: Found specification of procedure strtoq [2020-07-10 15:04:19,901 INFO L130 BoogieDeclarations]: Found specification of procedure strtouq [2020-07-10 15:04:19,901 INFO L130 BoogieDeclarations]: Found specification of procedure strtoll [2020-07-10 15:04:19,902 INFO L130 BoogieDeclarations]: Found specification of procedure strtoull [2020-07-10 15:04:19,902 INFO L130 BoogieDeclarations]: Found specification of procedure l64a [2020-07-10 15:04:19,902 INFO L130 BoogieDeclarations]: Found specification of procedure a64l [2020-07-10 15:04:19,902 INFO L130 BoogieDeclarations]: Found specification of procedure __bswap_32 [2020-07-10 15:04:19,902 INFO L130 BoogieDeclarations]: Found specification of procedure __bswap_64 [2020-07-10 15:04:19,902 INFO L130 BoogieDeclarations]: Found specification of procedure select [2020-07-10 15:04:19,903 INFO L130 BoogieDeclarations]: Found specification of procedure pselect [2020-07-10 15:04:19,903 INFO L130 BoogieDeclarations]: Found specification of procedure gnu_dev_major [2020-07-10 15:04:19,903 INFO L130 BoogieDeclarations]: Found specification of procedure gnu_dev_minor [2020-07-10 15:04:19,903 INFO L130 BoogieDeclarations]: Found specification of procedure gnu_dev_makedev [2020-07-10 15:04:19,903 INFO L130 BoogieDeclarations]: Found specification of procedure random [2020-07-10 15:04:19,903 INFO L130 BoogieDeclarations]: Found specification of procedure srandom [2020-07-10 15:04:19,904 INFO L130 BoogieDeclarations]: Found specification of procedure initstate [2020-07-10 15:04:19,904 INFO L130 BoogieDeclarations]: Found specification of procedure setstate [2020-07-10 15:04:19,904 INFO L130 BoogieDeclarations]: Found specification of procedure random_r [2020-07-10 15:04:19,904 INFO L130 BoogieDeclarations]: Found specification of procedure srandom_r [2020-07-10 15:04:19,904 INFO L130 BoogieDeclarations]: Found specification of procedure initstate_r [2020-07-10 15:04:19,905 INFO L130 BoogieDeclarations]: Found specification of procedure setstate_r [2020-07-10 15:04:19,905 INFO L130 BoogieDeclarations]: Found specification of procedure rand [2020-07-10 15:04:19,905 INFO L130 BoogieDeclarations]: Found specification of procedure srand [2020-07-10 15:04:19,905 INFO L130 BoogieDeclarations]: Found specification of procedure rand_r [2020-07-10 15:04:19,905 INFO L130 BoogieDeclarations]: Found specification of procedure drand48 [2020-07-10 15:04:19,905 INFO L130 BoogieDeclarations]: Found specification of procedure erand48 [2020-07-10 15:04:19,906 INFO L130 BoogieDeclarations]: Found specification of procedure lrand48 [2020-07-10 15:04:19,906 INFO L130 BoogieDeclarations]: Found specification of procedure nrand48 [2020-07-10 15:04:19,906 INFO L130 BoogieDeclarations]: Found specification of procedure mrand48 [2020-07-10 15:04:19,906 INFO L130 BoogieDeclarations]: Found specification of procedure jrand48 [2020-07-10 15:04:19,906 INFO L130 BoogieDeclarations]: Found specification of procedure srand48 [2020-07-10 15:04:19,906 INFO L130 BoogieDeclarations]: Found specification of procedure seed48 [2020-07-10 15:04:19,907 INFO L130 BoogieDeclarations]: Found specification of procedure lcong48 [2020-07-10 15:04:19,907 INFO L130 BoogieDeclarations]: Found specification of procedure drand48_r [2020-07-10 15:04:19,907 INFO L130 BoogieDeclarations]: Found specification of procedure erand48_r [2020-07-10 15:04:19,907 INFO L130 BoogieDeclarations]: Found specification of procedure lrand48_r [2020-07-10 15:04:19,907 INFO L130 BoogieDeclarations]: Found specification of procedure nrand48_r [2020-07-10 15:04:19,907 INFO L130 BoogieDeclarations]: Found specification of procedure mrand48_r [2020-07-10 15:04:19,908 INFO L130 BoogieDeclarations]: Found specification of procedure jrand48_r [2020-07-10 15:04:19,908 INFO L130 BoogieDeclarations]: Found specification of procedure srand48_r [2020-07-10 15:04:19,908 INFO L130 BoogieDeclarations]: Found specification of procedure seed48_r [2020-07-10 15:04:19,908 INFO L130 BoogieDeclarations]: Found specification of procedure lcong48_r [2020-07-10 15:04:19,908 INFO L130 BoogieDeclarations]: Found specification of procedure malloc [2020-07-10 15:04:19,908 INFO L130 BoogieDeclarations]: Found specification of procedure calloc [2020-07-10 15:04:19,909 INFO L130 BoogieDeclarations]: Found specification of procedure realloc [2020-07-10 15:04:19,909 INFO L130 BoogieDeclarations]: Found specification of procedure free [2020-07-10 15:04:19,909 INFO L130 BoogieDeclarations]: Found specification of procedure cfree [2020-07-10 15:04:19,909 INFO L130 BoogieDeclarations]: Found specification of procedure alloca [2020-07-10 15:04:19,909 INFO L130 BoogieDeclarations]: Found specification of procedure valloc [2020-07-10 15:04:19,909 INFO L130 BoogieDeclarations]: Found specification of procedure posix_memalign [2020-07-10 15:04:19,909 INFO L130 BoogieDeclarations]: Found specification of procedure aligned_alloc [2020-07-10 15:04:19,910 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2020-07-10 15:04:19,910 INFO L130 BoogieDeclarations]: Found specification of procedure atexit [2020-07-10 15:04:19,910 INFO L130 BoogieDeclarations]: Found specification of procedure at_quick_exit [2020-07-10 15:04:19,910 INFO L130 BoogieDeclarations]: Found specification of procedure on_exit [2020-07-10 15:04:19,910 INFO L130 BoogieDeclarations]: Found specification of procedure exit [2020-07-10 15:04:19,910 INFO L130 BoogieDeclarations]: Found specification of procedure quick_exit [2020-07-10 15:04:19,911 INFO L130 BoogieDeclarations]: Found specification of procedure _Exit [2020-07-10 15:04:19,911 INFO L130 BoogieDeclarations]: Found specification of procedure getenv [2020-07-10 15:04:19,911 INFO L130 BoogieDeclarations]: Found specification of procedure putenv [2020-07-10 15:04:19,911 INFO L130 BoogieDeclarations]: Found specification of procedure setenv [2020-07-10 15:04:19,911 INFO L130 BoogieDeclarations]: Found specification of procedure unsetenv [2020-07-10 15:04:19,911 INFO L130 BoogieDeclarations]: Found specification of procedure clearenv [2020-07-10 15:04:19,911 INFO L130 BoogieDeclarations]: Found specification of procedure mktemp [2020-07-10 15:04:19,912 INFO L130 BoogieDeclarations]: Found specification of procedure mkstemp [2020-07-10 15:04:19,912 INFO L130 BoogieDeclarations]: Found specification of procedure mkstemps [2020-07-10 15:04:19,912 INFO L130 BoogieDeclarations]: Found specification of procedure mkdtemp [2020-07-10 15:04:19,912 INFO L130 BoogieDeclarations]: Found specification of procedure system [2020-07-10 15:04:19,912 INFO L130 BoogieDeclarations]: Found specification of procedure realpath [2020-07-10 15:04:19,912 INFO L130 BoogieDeclarations]: Found specification of procedure bsearch [2020-07-10 15:04:19,913 INFO L130 BoogieDeclarations]: Found specification of procedure qsort [2020-07-10 15:04:19,913 INFO L130 BoogieDeclarations]: Found specification of procedure abs [2020-07-10 15:04:19,913 INFO L130 BoogieDeclarations]: Found specification of procedure labs [2020-07-10 15:04:19,913 INFO L130 BoogieDeclarations]: Found specification of procedure llabs [2020-07-10 15:04:19,913 INFO L130 BoogieDeclarations]: Found specification of procedure div [2020-07-10 15:04:19,913 INFO L130 BoogieDeclarations]: Found specification of procedure ldiv [2020-07-10 15:04:19,913 INFO L130 BoogieDeclarations]: Found specification of procedure lldiv [2020-07-10 15:04:19,914 INFO L130 BoogieDeclarations]: Found specification of procedure ecvt [2020-07-10 15:04:19,914 INFO L130 BoogieDeclarations]: Found specification of procedure fcvt [2020-07-10 15:04:19,914 INFO L130 BoogieDeclarations]: Found specification of procedure gcvt [2020-07-10 15:04:19,914 INFO L130 BoogieDeclarations]: Found specification of procedure qecvt [2020-07-10 15:04:19,914 INFO L130 BoogieDeclarations]: Found specification of procedure qfcvt [2020-07-10 15:04:19,914 INFO L130 BoogieDeclarations]: Found specification of procedure qgcvt [2020-07-10 15:04:19,915 INFO L130 BoogieDeclarations]: Found specification of procedure ecvt_r [2020-07-10 15:04:19,915 INFO L130 BoogieDeclarations]: Found specification of procedure fcvt_r [2020-07-10 15:04:19,915 INFO L130 BoogieDeclarations]: Found specification of procedure qecvt_r [2020-07-10 15:04:19,915 INFO L130 BoogieDeclarations]: Found specification of procedure qfcvt_r [2020-07-10 15:04:19,915 INFO L130 BoogieDeclarations]: Found specification of procedure mblen [2020-07-10 15:04:19,915 INFO L130 BoogieDeclarations]: Found specification of procedure mbtowc [2020-07-10 15:04:19,916 INFO L130 BoogieDeclarations]: Found specification of procedure wctomb [2020-07-10 15:04:19,916 INFO L130 BoogieDeclarations]: Found specification of procedure mbstowcs [2020-07-10 15:04:19,916 INFO L130 BoogieDeclarations]: Found specification of procedure wcstombs [2020-07-10 15:04:19,916 INFO L130 BoogieDeclarations]: Found specification of procedure rpmatch [2020-07-10 15:04:19,916 INFO L130 BoogieDeclarations]: Found specification of procedure getsubopt [2020-07-10 15:04:19,916 INFO L130 BoogieDeclarations]: Found specification of procedure getloadavg [2020-07-10 15:04:19,916 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2020-07-10 15:04:19,917 INFO L130 BoogieDeclarations]: Found specification of procedure fail [2020-07-10 15:04:19,917 INFO L130 BoogieDeclarations]: Found specification of procedure alloc_or_die_slave [2020-07-10 15:04:19,917 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnHeap [2020-07-10 15:04:19,917 INFO L130 BoogieDeclarations]: Found specification of procedure write~$Pointer$ [2020-07-10 15:04:19,917 INFO L130 BoogieDeclarations]: Found specification of procedure alloc_or_die_master [2020-07-10 15:04:19,918 INFO L130 BoogieDeclarations]: Found specification of procedure dll_insert_slave [2020-07-10 15:04:19,918 INFO L130 BoogieDeclarations]: Found specification of procedure read~$Pointer$ [2020-07-10 15:04:19,918 INFO L130 BoogieDeclarations]: Found specification of procedure dll_create_generic [2020-07-10 15:04:19,918 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnStack [2020-07-10 15:04:19,918 INFO L130 BoogieDeclarations]: Found specification of procedure ##fun~$Pointer$~TO~VOID [2020-07-10 15:04:19,918 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~$Pointer$ [2020-07-10 15:04:19,918 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2020-07-10 15:04:19,919 INFO L130 BoogieDeclarations]: Found specification of procedure dll_create_slave [2020-07-10 15:04:19,919 INFO L130 BoogieDeclarations]: Found specification of procedure dll_destroy_slave [2020-07-10 15:04:19,919 INFO L130 BoogieDeclarations]: Found specification of procedure dll_destroy_nested_lists [2020-07-10 15:04:19,919 INFO L130 BoogieDeclarations]: Found specification of procedure dll_reinit_nested_lists [2020-07-10 15:04:19,919 INFO L130 BoogieDeclarations]: Found specification of procedure dll_destroy_master [2020-07-10 15:04:19,920 INFO L130 BoogieDeclarations]: Found specification of procedure dll_insert_master [2020-07-10 15:04:19,920 INFO L130 BoogieDeclarations]: Found specification of procedure dll_create_master [2020-07-10 15:04:19,920 INFO L130 BoogieDeclarations]: Found specification of procedure inspect_base [2020-07-10 15:04:19,920 INFO L130 BoogieDeclarations]: Found specification of procedure inspect_full [2020-07-10 15:04:19,920 INFO L130 BoogieDeclarations]: Found specification of procedure inspect_dangling [2020-07-10 15:04:19,920 INFO L130 BoogieDeclarations]: Found specification of procedure inspect_init [2020-07-10 15:04:19,920 INFO L130 BoogieDeclarations]: Found specification of procedure main [2020-07-10 15:04:19,921 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2020-07-10 15:04:19,921 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2020-07-10 15:04:21,183 INFO L290 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2020-07-10 15:04:21,183 INFO L295 CfgBuilder]: Removed 38 assume(true) statements. [2020-07-10 15:04:21,188 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 10.07 03:04:21 BoogieIcfgContainer [2020-07-10 15:04:21,189 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2020-07-10 15:04:21,190 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2020-07-10 15:04:21,190 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2020-07-10 15:04:21,194 INFO L275 PluginConnector]: TraceAbstraction initialized [2020-07-10 15:04:21,194 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 10.07 03:04:18" (1/3) ... [2020-07-10 15:04:21,196 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@56c79e99 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 10.07 03:04:21, skipping insertion in model container [2020-07-10 15:04:21,196 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 10.07 03:04:19" (2/3) ... [2020-07-10 15:04:21,196 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@56c79e99 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 10.07 03:04:21, skipping insertion in model container [2020-07-10 15:04:21,196 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 10.07 03:04:21" (3/3) ... [2020-07-10 15:04:21,198 INFO L109 eAbstractionObserver]: Analyzing ICFG dll_of_dll-2.i [2020-07-10 15:04:21,209 INFO L157 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2020-07-10 15:04:21,225 INFO L169 ceAbstractionStarter]: Appying trace abstraction to program that has 1 error locations. [2020-07-10 15:04:21,242 INFO L251 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2020-07-10 15:04:21,268 INFO L375 AbstractCegarLoop]: Interprodecural is true [2020-07-10 15:04:21,268 INFO L376 AbstractCegarLoop]: Hoare is true [2020-07-10 15:04:21,268 INFO L377 AbstractCegarLoop]: Compute interpolants for FPandBP [2020-07-10 15:04:21,269 INFO L378 AbstractCegarLoop]: Backedges is STRAIGHT_LINE [2020-07-10 15:04:21,269 INFO L379 AbstractCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2020-07-10 15:04:21,269 INFO L380 AbstractCegarLoop]: Difference is false [2020-07-10 15:04:21,269 INFO L381 AbstractCegarLoop]: Minimize is MINIMIZE_SEVPA [2020-07-10 15:04:21,270 INFO L385 AbstractCegarLoop]: ======== Iteration 0==of CEGAR loop == AllErrorsAtOnce======== [2020-07-10 15:04:21,294 INFO L276 IsEmpty]: Start isEmpty. Operand 169 states. [2020-07-10 15:04:21,305 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 60 [2020-07-10 15:04:21,305 INFO L414 BasicCegarLoop]: Found error trace [2020-07-10 15:04:21,307 INFO L422 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 2, 2, 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] [2020-07-10 15:04:21,307 INFO L427 AbstractCegarLoop]: === Iteration 1 === [failErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-10 15:04:21,314 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-10 15:04:21,314 INFO L82 PathProgramCache]: Analyzing trace with hash -1405399524, now seen corresponding path program 1 times [2020-07-10 15:04:21,327 INFO L163 FreeRefinementEngine]: Executing refinement strategy CAMEL [2020-07-10 15:04:21,328 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1001727652] [2020-07-10 15:04:21,328 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-10 15:04:21,483 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 15:04:21,579 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 15:04:21,592 INFO L280 TraceCheckUtils]: 0: Hoare triple {222#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];assume 0 < #StackHeapBarrier; {172#true} is VALID [2020-07-10 15:04:21,592 INFO L280 TraceCheckUtils]: 1: Hoare triple {172#true} assume true; {172#true} is VALID [2020-07-10 15:04:21,593 INFO L275 TraceCheckUtils]: 2: Hoare quadruple {172#true} {172#true} #542#return; {172#true} is VALID [2020-07-10 15:04:21,627 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 15:04:21,676 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 15:04:21,739 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 15:04:21,758 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 15:04:21,777 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 15:04:21,785 INFO L280 TraceCheckUtils]: 0: Hoare triple {223#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {172#true} is VALID [2020-07-10 15:04:21,787 INFO L280 TraceCheckUtils]: 1: Hoare triple {172#true} assume ~ptr~0.base == 0 && ~ptr~0.offset == 0;assume false; {173#false} is VALID [2020-07-10 15:04:21,787 INFO L280 TraceCheckUtils]: 2: Hoare triple {173#false} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {173#false} is VALID [2020-07-10 15:04:21,787 INFO L280 TraceCheckUtils]: 3: Hoare triple {173#false} assume true; {173#false} is VALID [2020-07-10 15:04:21,788 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {173#false} {172#true} #490#return; {173#false} is VALID [2020-07-10 15:04:21,788 INFO L280 TraceCheckUtils]: 0: Hoare triple {223#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {172#true} is VALID [2020-07-10 15:04:21,790 INFO L263 TraceCheckUtils]: 1: Hoare triple {172#true} call #t~ret4.base, #t~ret4.offset := alloc_or_die_slave(); {223#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:21,791 INFO L280 TraceCheckUtils]: 2: Hoare triple {223#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {172#true} is VALID [2020-07-10 15:04:21,792 INFO L280 TraceCheckUtils]: 3: Hoare triple {172#true} assume ~ptr~0.base == 0 && ~ptr~0.offset == 0;assume false; {173#false} is VALID [2020-07-10 15:04:21,792 INFO L280 TraceCheckUtils]: 4: Hoare triple {173#false} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {173#false} is VALID [2020-07-10 15:04:21,792 INFO L280 TraceCheckUtils]: 5: Hoare triple {173#false} assume true; {173#false} is VALID [2020-07-10 15:04:21,793 INFO L275 TraceCheckUtils]: 6: Hoare quadruple {173#false} {172#true} #490#return; {173#false} is VALID [2020-07-10 15:04:21,793 INFO L280 TraceCheckUtils]: 7: Hoare triple {173#false} ~item~0.base, ~item~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~0.base, ~next~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset;call write~$Pointer$(~next~0.base, ~next~0.offset, ~item~0.base, ~item~0.offset, 4); {173#false} is VALID [2020-07-10 15:04:21,794 INFO L280 TraceCheckUtils]: 8: Hoare triple {173#false} assume !(~next~0.base != 0 || ~next~0.offset != 0); {173#false} is VALID [2020-07-10 15:04:21,794 INFO L280 TraceCheckUtils]: 9: Hoare triple {173#false} call write~$Pointer$(~item~0.base, ~item~0.offset, ~dll.base, ~dll.offset, 4); {173#false} is VALID [2020-07-10 15:04:21,794 INFO L280 TraceCheckUtils]: 10: Hoare triple {173#false} assume true; {173#false} is VALID [2020-07-10 15:04:21,795 INFO L275 TraceCheckUtils]: 11: Hoare quadruple {173#false} {172#true} #514#return; {173#false} is VALID [2020-07-10 15:04:21,796 INFO L280 TraceCheckUtils]: 0: Hoare triple {223#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {172#true} is VALID [2020-07-10 15:04:21,797 INFO L280 TraceCheckUtils]: 1: Hoare triple {172#true} assume !(#in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset); {172#true} is VALID [2020-07-10 15:04:21,798 INFO L263 TraceCheckUtils]: 2: Hoare triple {172#true} call dll_insert_slave(#~9.base, #~9.offset); {223#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:21,799 INFO L280 TraceCheckUtils]: 3: Hoare triple {223#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {172#true} is VALID [2020-07-10 15:04:21,800 INFO L263 TraceCheckUtils]: 4: Hoare triple {172#true} call #t~ret4.base, #t~ret4.offset := alloc_or_die_slave(); {223#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:21,801 INFO L280 TraceCheckUtils]: 5: Hoare triple {223#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {172#true} is VALID [2020-07-10 15:04:21,801 INFO L280 TraceCheckUtils]: 6: Hoare triple {172#true} assume ~ptr~0.base == 0 && ~ptr~0.offset == 0;assume false; {173#false} is VALID [2020-07-10 15:04:21,802 INFO L280 TraceCheckUtils]: 7: Hoare triple {173#false} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {173#false} is VALID [2020-07-10 15:04:21,802 INFO L280 TraceCheckUtils]: 8: Hoare triple {173#false} assume true; {173#false} is VALID [2020-07-10 15:04:21,803 INFO L275 TraceCheckUtils]: 9: Hoare quadruple {173#false} {172#true} #490#return; {173#false} is VALID [2020-07-10 15:04:21,803 INFO L280 TraceCheckUtils]: 10: Hoare triple {173#false} ~item~0.base, ~item~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~0.base, ~next~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset;call write~$Pointer$(~next~0.base, ~next~0.offset, ~item~0.base, ~item~0.offset, 4); {173#false} is VALID [2020-07-10 15:04:21,803 INFO L280 TraceCheckUtils]: 11: Hoare triple {173#false} assume !(~next~0.base != 0 || ~next~0.offset != 0); {173#false} is VALID [2020-07-10 15:04:21,804 INFO L280 TraceCheckUtils]: 12: Hoare triple {173#false} call write~$Pointer$(~item~0.base, ~item~0.offset, ~dll.base, ~dll.offset, 4); {173#false} is VALID [2020-07-10 15:04:21,804 INFO L280 TraceCheckUtils]: 13: Hoare triple {173#false} assume true; {173#false} is VALID [2020-07-10 15:04:21,804 INFO L275 TraceCheckUtils]: 14: Hoare quadruple {173#false} {172#true} #514#return; {173#false} is VALID [2020-07-10 15:04:21,805 INFO L280 TraceCheckUtils]: 15: Hoare triple {173#false} assume true; {173#false} is VALID [2020-07-10 15:04:21,805 INFO L275 TraceCheckUtils]: 16: Hoare quadruple {173#false} {172#true} #534#return; {173#false} is VALID [2020-07-10 15:04:21,813 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 15:04:21,831 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 15:04:21,842 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 15:04:21,850 INFO L280 TraceCheckUtils]: 0: Hoare triple {223#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {172#true} is VALID [2020-07-10 15:04:21,851 INFO L280 TraceCheckUtils]: 1: Hoare triple {172#true} assume ~ptr~0.base == 0 && ~ptr~0.offset == 0;assume false; {173#false} is VALID [2020-07-10 15:04:21,852 INFO L280 TraceCheckUtils]: 2: Hoare triple {173#false} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {173#false} is VALID [2020-07-10 15:04:21,852 INFO L280 TraceCheckUtils]: 3: Hoare triple {173#false} assume true; {173#false} is VALID [2020-07-10 15:04:21,853 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {173#false} {172#true} #490#return; {173#false} is VALID [2020-07-10 15:04:21,853 INFO L280 TraceCheckUtils]: 0: Hoare triple {223#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {172#true} is VALID [2020-07-10 15:04:21,855 INFO L263 TraceCheckUtils]: 1: Hoare triple {172#true} call #t~ret4.base, #t~ret4.offset := alloc_or_die_slave(); {223#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:21,856 INFO L280 TraceCheckUtils]: 2: Hoare triple {223#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {172#true} is VALID [2020-07-10 15:04:21,857 INFO L280 TraceCheckUtils]: 3: Hoare triple {172#true} assume ~ptr~0.base == 0 && ~ptr~0.offset == 0;assume false; {173#false} is VALID [2020-07-10 15:04:21,857 INFO L280 TraceCheckUtils]: 4: Hoare triple {173#false} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {173#false} is VALID [2020-07-10 15:04:21,857 INFO L280 TraceCheckUtils]: 5: Hoare triple {173#false} assume true; {173#false} is VALID [2020-07-10 15:04:21,858 INFO L275 TraceCheckUtils]: 6: Hoare quadruple {173#false} {172#true} #490#return; {173#false} is VALID [2020-07-10 15:04:21,858 INFO L280 TraceCheckUtils]: 7: Hoare triple {173#false} ~item~0.base, ~item~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~0.base, ~next~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset;call write~$Pointer$(~next~0.base, ~next~0.offset, ~item~0.base, ~item~0.offset, 4); {173#false} is VALID [2020-07-10 15:04:21,859 INFO L280 TraceCheckUtils]: 8: Hoare triple {173#false} assume !(~next~0.base != 0 || ~next~0.offset != 0); {173#false} is VALID [2020-07-10 15:04:21,859 INFO L280 TraceCheckUtils]: 9: Hoare triple {173#false} call write~$Pointer$(~item~0.base, ~item~0.offset, ~dll.base, ~dll.offset, 4); {173#false} is VALID [2020-07-10 15:04:21,860 INFO L280 TraceCheckUtils]: 10: Hoare triple {173#false} assume true; {173#false} is VALID [2020-07-10 15:04:21,860 INFO L275 TraceCheckUtils]: 11: Hoare quadruple {173#false} {172#true} #514#return; {173#false} is VALID [2020-07-10 15:04:21,861 INFO L280 TraceCheckUtils]: 0: Hoare triple {223#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {172#true} is VALID [2020-07-10 15:04:21,861 INFO L280 TraceCheckUtils]: 1: Hoare triple {172#true} assume !(#in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset); {172#true} is VALID [2020-07-10 15:04:21,863 INFO L263 TraceCheckUtils]: 2: Hoare triple {172#true} call dll_insert_slave(#~9.base, #~9.offset); {223#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:21,864 INFO L280 TraceCheckUtils]: 3: Hoare triple {223#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {172#true} is VALID [2020-07-10 15:04:21,865 INFO L263 TraceCheckUtils]: 4: Hoare triple {172#true} call #t~ret4.base, #t~ret4.offset := alloc_or_die_slave(); {223#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:21,865 INFO L280 TraceCheckUtils]: 5: Hoare triple {223#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {172#true} is VALID [2020-07-10 15:04:21,866 INFO L280 TraceCheckUtils]: 6: Hoare triple {172#true} assume ~ptr~0.base == 0 && ~ptr~0.offset == 0;assume false; {173#false} is VALID [2020-07-10 15:04:21,867 INFO L280 TraceCheckUtils]: 7: Hoare triple {173#false} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {173#false} is VALID [2020-07-10 15:04:21,867 INFO L280 TraceCheckUtils]: 8: Hoare triple {173#false} assume true; {173#false} is VALID [2020-07-10 15:04:21,868 INFO L275 TraceCheckUtils]: 9: Hoare quadruple {173#false} {172#true} #490#return; {173#false} is VALID [2020-07-10 15:04:21,868 INFO L280 TraceCheckUtils]: 10: Hoare triple {173#false} ~item~0.base, ~item~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~0.base, ~next~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset;call write~$Pointer$(~next~0.base, ~next~0.offset, ~item~0.base, ~item~0.offset, 4); {173#false} is VALID [2020-07-10 15:04:21,868 INFO L280 TraceCheckUtils]: 11: Hoare triple {173#false} assume !(~next~0.base != 0 || ~next~0.offset != 0); {173#false} is VALID [2020-07-10 15:04:21,869 INFO L280 TraceCheckUtils]: 12: Hoare triple {173#false} call write~$Pointer$(~item~0.base, ~item~0.offset, ~dll.base, ~dll.offset, 4); {173#false} is VALID [2020-07-10 15:04:21,869 INFO L280 TraceCheckUtils]: 13: Hoare triple {173#false} assume true; {173#false} is VALID [2020-07-10 15:04:21,870 INFO L275 TraceCheckUtils]: 14: Hoare quadruple {173#false} {172#true} #514#return; {173#false} is VALID [2020-07-10 15:04:21,870 INFO L280 TraceCheckUtils]: 15: Hoare triple {173#false} assume true; {173#false} is VALID [2020-07-10 15:04:21,871 INFO L275 TraceCheckUtils]: 16: Hoare quadruple {173#false} {173#false} #536#return; {173#false} is VALID [2020-07-10 15:04:21,872 INFO L280 TraceCheckUtils]: 0: Hoare triple {223#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~insert_fnc.base, ~insert_fnc.offset := #in~insert_fnc.base, #in~insert_fnc.offset;call ~#dll~0.base, ~#dll~0.offset := #Ultimate.allocOnStack(4);call write~init~$Pointer$(0, 0, ~#dll~0.base, ~#dll~0.offset, 4); {172#true} is VALID [2020-07-10 15:04:21,875 INFO L263 TraceCheckUtils]: 1: Hoare triple {172#true} call ##fun~$Pointer$~TO~VOID(~#dll~0.base, ~#dll~0.offset, ~insert_fnc.base, ~insert_fnc.offset); {223#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:21,875 INFO L280 TraceCheckUtils]: 2: Hoare triple {223#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {172#true} is VALID [2020-07-10 15:04:21,876 INFO L280 TraceCheckUtils]: 3: Hoare triple {172#true} assume !(#in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset); {172#true} is VALID [2020-07-10 15:04:21,878 INFO L263 TraceCheckUtils]: 4: Hoare triple {172#true} call dll_insert_slave(#~9.base, #~9.offset); {223#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:21,878 INFO L280 TraceCheckUtils]: 5: Hoare triple {223#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {172#true} is VALID [2020-07-10 15:04:21,882 INFO L263 TraceCheckUtils]: 6: Hoare triple {172#true} call #t~ret4.base, #t~ret4.offset := alloc_or_die_slave(); {223#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:21,882 INFO L280 TraceCheckUtils]: 7: Hoare triple {223#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {172#true} is VALID [2020-07-10 15:04:21,883 INFO L280 TraceCheckUtils]: 8: Hoare triple {172#true} assume ~ptr~0.base == 0 && ~ptr~0.offset == 0;assume false; {173#false} is VALID [2020-07-10 15:04:21,883 INFO L280 TraceCheckUtils]: 9: Hoare triple {173#false} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {173#false} is VALID [2020-07-10 15:04:21,884 INFO L280 TraceCheckUtils]: 10: Hoare triple {173#false} assume true; {173#false} is VALID [2020-07-10 15:04:21,884 INFO L275 TraceCheckUtils]: 11: Hoare quadruple {173#false} {172#true} #490#return; {173#false} is VALID [2020-07-10 15:04:21,885 INFO L280 TraceCheckUtils]: 12: Hoare triple {173#false} ~item~0.base, ~item~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~0.base, ~next~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset;call write~$Pointer$(~next~0.base, ~next~0.offset, ~item~0.base, ~item~0.offset, 4); {173#false} is VALID [2020-07-10 15:04:21,885 INFO L280 TraceCheckUtils]: 13: Hoare triple {173#false} assume !(~next~0.base != 0 || ~next~0.offset != 0); {173#false} is VALID [2020-07-10 15:04:21,885 INFO L280 TraceCheckUtils]: 14: Hoare triple {173#false} call write~$Pointer$(~item~0.base, ~item~0.offset, ~dll.base, ~dll.offset, 4); {173#false} is VALID [2020-07-10 15:04:21,886 INFO L280 TraceCheckUtils]: 15: Hoare triple {173#false} assume true; {173#false} is VALID [2020-07-10 15:04:21,886 INFO L275 TraceCheckUtils]: 16: Hoare quadruple {173#false} {172#true} #514#return; {173#false} is VALID [2020-07-10 15:04:21,886 INFO L280 TraceCheckUtils]: 17: Hoare triple {173#false} assume true; {173#false} is VALID [2020-07-10 15:04:21,887 INFO L275 TraceCheckUtils]: 18: Hoare quadruple {173#false} {172#true} #534#return; {173#false} is VALID [2020-07-10 15:04:21,887 INFO L263 TraceCheckUtils]: 19: Hoare triple {173#false} call ##fun~$Pointer$~TO~VOID(~#dll~0.base, ~#dll~0.offset, ~insert_fnc.base, ~insert_fnc.offset); {223#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:21,888 INFO L280 TraceCheckUtils]: 20: Hoare triple {223#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {172#true} is VALID [2020-07-10 15:04:21,888 INFO L280 TraceCheckUtils]: 21: Hoare triple {172#true} assume !(#in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset); {172#true} is VALID [2020-07-10 15:04:21,890 INFO L263 TraceCheckUtils]: 22: Hoare triple {172#true} call dll_insert_slave(#~9.base, #~9.offset); {223#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:21,891 INFO L280 TraceCheckUtils]: 23: Hoare triple {223#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {172#true} is VALID [2020-07-10 15:04:21,892 INFO L263 TraceCheckUtils]: 24: Hoare triple {172#true} call #t~ret4.base, #t~ret4.offset := alloc_or_die_slave(); {223#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:21,893 INFO L280 TraceCheckUtils]: 25: Hoare triple {223#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {172#true} is VALID [2020-07-10 15:04:21,894 INFO L280 TraceCheckUtils]: 26: Hoare triple {172#true} assume ~ptr~0.base == 0 && ~ptr~0.offset == 0;assume false; {173#false} is VALID [2020-07-10 15:04:21,895 INFO L280 TraceCheckUtils]: 27: Hoare triple {173#false} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {173#false} is VALID [2020-07-10 15:04:21,895 INFO L280 TraceCheckUtils]: 28: Hoare triple {173#false} assume true; {173#false} is VALID [2020-07-10 15:04:21,895 INFO L275 TraceCheckUtils]: 29: Hoare quadruple {173#false} {172#true} #490#return; {173#false} is VALID [2020-07-10 15:04:21,896 INFO L280 TraceCheckUtils]: 30: Hoare triple {173#false} ~item~0.base, ~item~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~0.base, ~next~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset;call write~$Pointer$(~next~0.base, ~next~0.offset, ~item~0.base, ~item~0.offset, 4); {173#false} is VALID [2020-07-10 15:04:21,896 INFO L280 TraceCheckUtils]: 31: Hoare triple {173#false} assume !(~next~0.base != 0 || ~next~0.offset != 0); {173#false} is VALID [2020-07-10 15:04:21,896 INFO L280 TraceCheckUtils]: 32: Hoare triple {173#false} call write~$Pointer$(~item~0.base, ~item~0.offset, ~dll.base, ~dll.offset, 4); {173#false} is VALID [2020-07-10 15:04:21,897 INFO L280 TraceCheckUtils]: 33: Hoare triple {173#false} assume true; {173#false} is VALID [2020-07-10 15:04:21,897 INFO L275 TraceCheckUtils]: 34: Hoare quadruple {173#false} {172#true} #514#return; {173#false} is VALID [2020-07-10 15:04:21,898 INFO L280 TraceCheckUtils]: 35: Hoare triple {173#false} assume true; {173#false} is VALID [2020-07-10 15:04:21,898 INFO L275 TraceCheckUtils]: 36: Hoare quadruple {173#false} {173#false} #536#return; {173#false} is VALID [2020-07-10 15:04:21,898 INFO L280 TraceCheckUtils]: 37: Hoare triple {173#false} assume !true; {173#false} is VALID [2020-07-10 15:04:21,899 INFO L280 TraceCheckUtils]: 38: Hoare triple {173#false} call #t~mem10.base, #t~mem10.offset := read~$Pointer$(~#dll~0.base, ~#dll~0.offset, 4);#res.base, #res.offset := #t~mem10.base, #t~mem10.offset;havoc #t~mem10.base, #t~mem10.offset;call ULTIMATE.dealloc(~#dll~0.base, ~#dll~0.offset);havoc ~#dll~0.base, ~#dll~0.offset; {173#false} is VALID [2020-07-10 15:04:21,899 INFO L280 TraceCheckUtils]: 39: Hoare triple {173#false} assume true; {173#false} is VALID [2020-07-10 15:04:21,900 INFO L275 TraceCheckUtils]: 40: Hoare quadruple {173#false} {223#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #492#return; {173#false} is VALID [2020-07-10 15:04:21,906 INFO L263 TraceCheckUtils]: 0: Hoare triple {223#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~ret20.base, #t~ret20.offset := dll_create_generic(#funAddr~dll_insert_master.base, #funAddr~dll_insert_master.offset); {223#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:21,907 INFO L280 TraceCheckUtils]: 1: Hoare triple {223#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~insert_fnc.base, ~insert_fnc.offset := #in~insert_fnc.base, #in~insert_fnc.offset;call ~#dll~0.base, ~#dll~0.offset := #Ultimate.allocOnStack(4);call write~init~$Pointer$(0, 0, ~#dll~0.base, ~#dll~0.offset, 4); {172#true} is VALID [2020-07-10 15:04:21,909 INFO L263 TraceCheckUtils]: 2: Hoare triple {172#true} call ##fun~$Pointer$~TO~VOID(~#dll~0.base, ~#dll~0.offset, ~insert_fnc.base, ~insert_fnc.offset); {223#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:21,910 INFO L280 TraceCheckUtils]: 3: Hoare triple {223#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {172#true} is VALID [2020-07-10 15:04:21,910 INFO L280 TraceCheckUtils]: 4: Hoare triple {172#true} assume !(#in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset); {172#true} is VALID [2020-07-10 15:04:21,912 INFO L263 TraceCheckUtils]: 5: Hoare triple {172#true} call dll_insert_slave(#~9.base, #~9.offset); {223#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:21,913 INFO L280 TraceCheckUtils]: 6: Hoare triple {223#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {172#true} is VALID [2020-07-10 15:04:21,914 INFO L263 TraceCheckUtils]: 7: Hoare triple {172#true} call #t~ret4.base, #t~ret4.offset := alloc_or_die_slave(); {223#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:21,915 INFO L280 TraceCheckUtils]: 8: Hoare triple {223#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {172#true} is VALID [2020-07-10 15:04:21,916 INFO L280 TraceCheckUtils]: 9: Hoare triple {172#true} assume ~ptr~0.base == 0 && ~ptr~0.offset == 0;assume false; {173#false} is VALID [2020-07-10 15:04:21,916 INFO L280 TraceCheckUtils]: 10: Hoare triple {173#false} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {173#false} is VALID [2020-07-10 15:04:21,916 INFO L280 TraceCheckUtils]: 11: Hoare triple {173#false} assume true; {173#false} is VALID [2020-07-10 15:04:21,917 INFO L275 TraceCheckUtils]: 12: Hoare quadruple {173#false} {172#true} #490#return; {173#false} is VALID [2020-07-10 15:04:21,917 INFO L280 TraceCheckUtils]: 13: Hoare triple {173#false} ~item~0.base, ~item~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~0.base, ~next~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset;call write~$Pointer$(~next~0.base, ~next~0.offset, ~item~0.base, ~item~0.offset, 4); {173#false} is VALID [2020-07-10 15:04:21,918 INFO L280 TraceCheckUtils]: 14: Hoare triple {173#false} assume !(~next~0.base != 0 || ~next~0.offset != 0); {173#false} is VALID [2020-07-10 15:04:21,918 INFO L280 TraceCheckUtils]: 15: Hoare triple {173#false} call write~$Pointer$(~item~0.base, ~item~0.offset, ~dll.base, ~dll.offset, 4); {173#false} is VALID [2020-07-10 15:04:21,918 INFO L280 TraceCheckUtils]: 16: Hoare triple {173#false} assume true; {173#false} is VALID [2020-07-10 15:04:21,919 INFO L275 TraceCheckUtils]: 17: Hoare quadruple {173#false} {172#true} #514#return; {173#false} is VALID [2020-07-10 15:04:21,919 INFO L280 TraceCheckUtils]: 18: Hoare triple {173#false} assume true; {173#false} is VALID [2020-07-10 15:04:21,919 INFO L275 TraceCheckUtils]: 19: Hoare quadruple {173#false} {172#true} #534#return; {173#false} is VALID [2020-07-10 15:04:21,920 INFO L263 TraceCheckUtils]: 20: Hoare triple {173#false} call ##fun~$Pointer$~TO~VOID(~#dll~0.base, ~#dll~0.offset, ~insert_fnc.base, ~insert_fnc.offset); {223#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:21,920 INFO L280 TraceCheckUtils]: 21: Hoare triple {223#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {172#true} is VALID [2020-07-10 15:04:21,920 INFO L280 TraceCheckUtils]: 22: Hoare triple {172#true} assume !(#in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset); {172#true} is VALID [2020-07-10 15:04:21,922 INFO L263 TraceCheckUtils]: 23: Hoare triple {172#true} call dll_insert_slave(#~9.base, #~9.offset); {223#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:21,923 INFO L280 TraceCheckUtils]: 24: Hoare triple {223#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {172#true} is VALID [2020-07-10 15:04:21,924 INFO L263 TraceCheckUtils]: 25: Hoare triple {172#true} call #t~ret4.base, #t~ret4.offset := alloc_or_die_slave(); {223#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:21,925 INFO L280 TraceCheckUtils]: 26: Hoare triple {223#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {172#true} is VALID [2020-07-10 15:04:21,926 INFO L280 TraceCheckUtils]: 27: Hoare triple {172#true} assume ~ptr~0.base == 0 && ~ptr~0.offset == 0;assume false; {173#false} is VALID [2020-07-10 15:04:21,926 INFO L280 TraceCheckUtils]: 28: Hoare triple {173#false} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {173#false} is VALID [2020-07-10 15:04:21,927 INFO L280 TraceCheckUtils]: 29: Hoare triple {173#false} assume true; {173#false} is VALID [2020-07-10 15:04:21,927 INFO L275 TraceCheckUtils]: 30: Hoare quadruple {173#false} {172#true} #490#return; {173#false} is VALID [2020-07-10 15:04:21,927 INFO L280 TraceCheckUtils]: 31: Hoare triple {173#false} ~item~0.base, ~item~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~0.base, ~next~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset;call write~$Pointer$(~next~0.base, ~next~0.offset, ~item~0.base, ~item~0.offset, 4); {173#false} is VALID [2020-07-10 15:04:21,928 INFO L280 TraceCheckUtils]: 32: Hoare triple {173#false} assume !(~next~0.base != 0 || ~next~0.offset != 0); {173#false} is VALID [2020-07-10 15:04:21,928 INFO L280 TraceCheckUtils]: 33: Hoare triple {173#false} call write~$Pointer$(~item~0.base, ~item~0.offset, ~dll.base, ~dll.offset, 4); {173#false} is VALID [2020-07-10 15:04:21,928 INFO L280 TraceCheckUtils]: 34: Hoare triple {173#false} assume true; {173#false} is VALID [2020-07-10 15:04:21,929 INFO L275 TraceCheckUtils]: 35: Hoare quadruple {173#false} {172#true} #514#return; {173#false} is VALID [2020-07-10 15:04:21,929 INFO L280 TraceCheckUtils]: 36: Hoare triple {173#false} assume true; {173#false} is VALID [2020-07-10 15:04:21,929 INFO L275 TraceCheckUtils]: 37: Hoare quadruple {173#false} {173#false} #536#return; {173#false} is VALID [2020-07-10 15:04:21,930 INFO L280 TraceCheckUtils]: 38: Hoare triple {173#false} assume !true; {173#false} is VALID [2020-07-10 15:04:21,930 INFO L280 TraceCheckUtils]: 39: Hoare triple {173#false} call #t~mem10.base, #t~mem10.offset := read~$Pointer$(~#dll~0.base, ~#dll~0.offset, 4);#res.base, #res.offset := #t~mem10.base, #t~mem10.offset;havoc #t~mem10.base, #t~mem10.offset;call ULTIMATE.dealloc(~#dll~0.base, ~#dll~0.offset);havoc ~#dll~0.base, ~#dll~0.offset; {173#false} is VALID [2020-07-10 15:04:21,930 INFO L280 TraceCheckUtils]: 40: Hoare triple {173#false} assume true; {173#false} is VALID [2020-07-10 15:04:21,930 INFO L275 TraceCheckUtils]: 41: Hoare quadruple {173#false} {223#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #492#return; {173#false} is VALID [2020-07-10 15:04:21,931 INFO L280 TraceCheckUtils]: 42: Hoare triple {173#false} #res.base, #res.offset := #t~ret20.base, #t~ret20.offset;havoc #t~ret20.base, #t~ret20.offset; {173#false} is VALID [2020-07-10 15:04:21,931 INFO L280 TraceCheckUtils]: 43: Hoare triple {173#false} assume true; {173#false} is VALID [2020-07-10 15:04:21,932 INFO L275 TraceCheckUtils]: 44: Hoare quadruple {173#false} {172#true} #498#return; {173#false} is VALID [2020-07-10 15:04:21,940 INFO L263 TraceCheckUtils]: 0: Hoare triple {172#true} call ULTIMATE.init(); {222#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} is VALID [2020-07-10 15:04:21,940 INFO L280 TraceCheckUtils]: 1: Hoare triple {222#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];assume 0 < #StackHeapBarrier; {172#true} is VALID [2020-07-10 15:04:21,940 INFO L280 TraceCheckUtils]: 2: Hoare triple {172#true} assume true; {172#true} is VALID [2020-07-10 15:04:21,941 INFO L275 TraceCheckUtils]: 3: Hoare quadruple {172#true} {172#true} #542#return; {172#true} is VALID [2020-07-10 15:04:21,941 INFO L263 TraceCheckUtils]: 4: Hoare triple {172#true} call #t~ret46 := main(); {172#true} is VALID [2020-07-10 15:04:21,943 INFO L263 TraceCheckUtils]: 5: Hoare triple {172#true} call #t~ret45.base, #t~ret45.offset := dll_create_master(); {223#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:21,944 INFO L263 TraceCheckUtils]: 6: Hoare triple {223#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~ret20.base, #t~ret20.offset := dll_create_generic(#funAddr~dll_insert_master.base, #funAddr~dll_insert_master.offset); {223#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:21,945 INFO L280 TraceCheckUtils]: 7: Hoare triple {223#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~insert_fnc.base, ~insert_fnc.offset := #in~insert_fnc.base, #in~insert_fnc.offset;call ~#dll~0.base, ~#dll~0.offset := #Ultimate.allocOnStack(4);call write~init~$Pointer$(0, 0, ~#dll~0.base, ~#dll~0.offset, 4); {172#true} is VALID [2020-07-10 15:04:21,947 INFO L263 TraceCheckUtils]: 8: Hoare triple {172#true} call ##fun~$Pointer$~TO~VOID(~#dll~0.base, ~#dll~0.offset, ~insert_fnc.base, ~insert_fnc.offset); {223#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:21,948 INFO L280 TraceCheckUtils]: 9: Hoare triple {223#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {172#true} is VALID [2020-07-10 15:04:21,948 INFO L280 TraceCheckUtils]: 10: Hoare triple {172#true} assume !(#in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset); {172#true} is VALID [2020-07-10 15:04:21,950 INFO L263 TraceCheckUtils]: 11: Hoare triple {172#true} call dll_insert_slave(#~9.base, #~9.offset); {223#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:21,950 INFO L280 TraceCheckUtils]: 12: Hoare triple {223#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {172#true} is VALID [2020-07-10 15:04:21,952 INFO L263 TraceCheckUtils]: 13: Hoare triple {172#true} call #t~ret4.base, #t~ret4.offset := alloc_or_die_slave(); {223#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:21,952 INFO L280 TraceCheckUtils]: 14: Hoare triple {223#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {172#true} is VALID [2020-07-10 15:04:21,953 INFO L280 TraceCheckUtils]: 15: Hoare triple {172#true} assume ~ptr~0.base == 0 && ~ptr~0.offset == 0;assume false; {173#false} is VALID [2020-07-10 15:04:21,953 INFO L280 TraceCheckUtils]: 16: Hoare triple {173#false} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {173#false} is VALID [2020-07-10 15:04:21,954 INFO L280 TraceCheckUtils]: 17: Hoare triple {173#false} assume true; {173#false} is VALID [2020-07-10 15:04:21,954 INFO L275 TraceCheckUtils]: 18: Hoare quadruple {173#false} {172#true} #490#return; {173#false} is VALID [2020-07-10 15:04:21,954 INFO L280 TraceCheckUtils]: 19: Hoare triple {173#false} ~item~0.base, ~item~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~0.base, ~next~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset;call write~$Pointer$(~next~0.base, ~next~0.offset, ~item~0.base, ~item~0.offset, 4); {173#false} is VALID [2020-07-10 15:04:21,955 INFO L280 TraceCheckUtils]: 20: Hoare triple {173#false} assume !(~next~0.base != 0 || ~next~0.offset != 0); {173#false} is VALID [2020-07-10 15:04:21,955 INFO L280 TraceCheckUtils]: 21: Hoare triple {173#false} call write~$Pointer$(~item~0.base, ~item~0.offset, ~dll.base, ~dll.offset, 4); {173#false} is VALID [2020-07-10 15:04:21,955 INFO L280 TraceCheckUtils]: 22: Hoare triple {173#false} assume true; {173#false} is VALID [2020-07-10 15:04:21,956 INFO L275 TraceCheckUtils]: 23: Hoare quadruple {173#false} {172#true} #514#return; {173#false} is VALID [2020-07-10 15:04:21,956 INFO L280 TraceCheckUtils]: 24: Hoare triple {173#false} assume true; {173#false} is VALID [2020-07-10 15:04:21,956 INFO L275 TraceCheckUtils]: 25: Hoare quadruple {173#false} {172#true} #534#return; {173#false} is VALID [2020-07-10 15:04:21,979 INFO L263 TraceCheckUtils]: 26: Hoare triple {173#false} call ##fun~$Pointer$~TO~VOID(~#dll~0.base, ~#dll~0.offset, ~insert_fnc.base, ~insert_fnc.offset); {223#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:21,979 INFO L280 TraceCheckUtils]: 27: Hoare triple {223#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {172#true} is VALID [2020-07-10 15:04:21,980 INFO L280 TraceCheckUtils]: 28: Hoare triple {172#true} assume !(#in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset); {172#true} is VALID [2020-07-10 15:04:21,984 INFO L263 TraceCheckUtils]: 29: Hoare triple {172#true} call dll_insert_slave(#~9.base, #~9.offset); {223#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:21,984 INFO L280 TraceCheckUtils]: 30: Hoare triple {223#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {172#true} is VALID [2020-07-10 15:04:21,986 INFO L263 TraceCheckUtils]: 31: Hoare triple {172#true} call #t~ret4.base, #t~ret4.offset := alloc_or_die_slave(); {223#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:21,986 INFO L280 TraceCheckUtils]: 32: Hoare triple {223#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {172#true} is VALID [2020-07-10 15:04:21,993 INFO L280 TraceCheckUtils]: 33: Hoare triple {172#true} assume ~ptr~0.base == 0 && ~ptr~0.offset == 0;assume false; {173#false} is VALID [2020-07-10 15:04:21,993 INFO L280 TraceCheckUtils]: 34: Hoare triple {173#false} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {173#false} is VALID [2020-07-10 15:04:21,994 INFO L280 TraceCheckUtils]: 35: Hoare triple {173#false} assume true; {173#false} is VALID [2020-07-10 15:04:21,994 INFO L275 TraceCheckUtils]: 36: Hoare quadruple {173#false} {172#true} #490#return; {173#false} is VALID [2020-07-10 15:04:21,994 INFO L280 TraceCheckUtils]: 37: Hoare triple {173#false} ~item~0.base, ~item~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~0.base, ~next~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset;call write~$Pointer$(~next~0.base, ~next~0.offset, ~item~0.base, ~item~0.offset, 4); {173#false} is VALID [2020-07-10 15:04:21,994 INFO L280 TraceCheckUtils]: 38: Hoare triple {173#false} assume !(~next~0.base != 0 || ~next~0.offset != 0); {173#false} is VALID [2020-07-10 15:04:21,995 INFO L280 TraceCheckUtils]: 39: Hoare triple {173#false} call write~$Pointer$(~item~0.base, ~item~0.offset, ~dll.base, ~dll.offset, 4); {173#false} is VALID [2020-07-10 15:04:21,995 INFO L280 TraceCheckUtils]: 40: Hoare triple {173#false} assume true; {173#false} is VALID [2020-07-10 15:04:21,999 INFO L275 TraceCheckUtils]: 41: Hoare quadruple {173#false} {172#true} #514#return; {173#false} is VALID [2020-07-10 15:04:22,000 INFO L280 TraceCheckUtils]: 42: Hoare triple {173#false} assume true; {173#false} is VALID [2020-07-10 15:04:22,000 INFO L275 TraceCheckUtils]: 43: Hoare quadruple {173#false} {173#false} #536#return; {173#false} is VALID [2020-07-10 15:04:22,003 INFO L280 TraceCheckUtils]: 44: Hoare triple {173#false} assume !true; {173#false} is VALID [2020-07-10 15:04:22,003 INFO L280 TraceCheckUtils]: 45: Hoare triple {173#false} call #t~mem10.base, #t~mem10.offset := read~$Pointer$(~#dll~0.base, ~#dll~0.offset, 4);#res.base, #res.offset := #t~mem10.base, #t~mem10.offset;havoc #t~mem10.base, #t~mem10.offset;call ULTIMATE.dealloc(~#dll~0.base, ~#dll~0.offset);havoc ~#dll~0.base, ~#dll~0.offset; {173#false} is VALID [2020-07-10 15:04:22,003 INFO L280 TraceCheckUtils]: 46: Hoare triple {173#false} assume true; {173#false} is VALID [2020-07-10 15:04:22,004 INFO L275 TraceCheckUtils]: 47: Hoare quadruple {173#false} {223#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #492#return; {173#false} is VALID [2020-07-10 15:04:22,004 INFO L280 TraceCheckUtils]: 48: Hoare triple {173#false} #res.base, #res.offset := #t~ret20.base, #t~ret20.offset;havoc #t~ret20.base, #t~ret20.offset; {173#false} is VALID [2020-07-10 15:04:22,004 INFO L280 TraceCheckUtils]: 49: Hoare triple {173#false} assume true; {173#false} is VALID [2020-07-10 15:04:22,004 INFO L275 TraceCheckUtils]: 50: Hoare quadruple {173#false} {172#true} #498#return; {173#false} is VALID [2020-07-10 15:04:22,005 INFO L280 TraceCheckUtils]: 51: Hoare triple {173#false} ~dll~1.base, ~dll~1.offset := #t~ret45.base, #t~ret45.offset;havoc #t~ret45.base, #t~ret45.offset; {173#false} is VALID [2020-07-10 15:04:22,005 INFO L263 TraceCheckUtils]: 52: Hoare triple {173#false} call inspect_full(~dll~1.base, ~dll~1.offset); {173#false} is VALID [2020-07-10 15:04:22,007 INFO L280 TraceCheckUtils]: 53: Hoare triple {173#false} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {173#false} is VALID [2020-07-10 15:04:22,008 INFO L263 TraceCheckUtils]: 54: Hoare triple {173#false} call inspect_base(~dll.base, ~dll.offset); {173#false} is VALID [2020-07-10 15:04:22,008 INFO L280 TraceCheckUtils]: 55: Hoare triple {173#false} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {173#false} is VALID [2020-07-10 15:04:22,008 INFO L280 TraceCheckUtils]: 56: Hoare triple {173#false} assume ~dll.base == 0 && ~dll.offset == 0; {173#false} is VALID [2020-07-10 15:04:22,009 INFO L263 TraceCheckUtils]: 57: Hoare triple {173#false} call fail(); {173#false} is VALID [2020-07-10 15:04:22,009 INFO L280 TraceCheckUtils]: 58: Hoare triple {173#false} assume !false; {173#false} is VALID [2020-07-10 15:04:22,018 INFO L134 CoverageAnalysis]: Checked inductivity of 17 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 17 trivial. 0 not checked. [2020-07-10 15:04:22,019 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1001727652] [2020-07-10 15:04:22,020 INFO L220 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2020-07-10 15:04:22,021 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2020-07-10 15:04:22,022 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1207093524] [2020-07-10 15:04:22,030 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 59 [2020-07-10 15:04:22,036 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-10 15:04:22,041 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states. [2020-07-10 15:04:22,125 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 43 edges. 43 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-10 15:04:22,126 INFO L459 AbstractCegarLoop]: Interpolant automaton has 4 states [2020-07-10 15:04:22,126 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2020-07-10 15:04:22,136 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2020-07-10 15:04:22,138 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2020-07-10 15:04:22,141 INFO L87 Difference]: Start difference. First operand 169 states. Second operand 4 states. [2020-07-10 15:04:23,642 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-10 15:04:23,643 INFO L93 Difference]: Finished difference Result 343 states and 542 transitions. [2020-07-10 15:04:23,643 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2020-07-10 15:04:23,643 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 59 [2020-07-10 15:04:23,644 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-10 15:04:23,645 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2020-07-10 15:04:23,721 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 542 transitions. [2020-07-10 15:04:23,721 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2020-07-10 15:04:23,758 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 542 transitions. [2020-07-10 15:04:23,759 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 542 transitions. [2020-07-10 15:04:24,527 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 542 edges. 542 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-10 15:04:24,550 INFO L225 Difference]: With dead ends: 343 [2020-07-10 15:04:24,550 INFO L226 Difference]: Without dead ends: 166 [2020-07-10 15:04:24,557 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 29 GetRequests, 26 SyntacticMatches, 0 SemanticMatches, 3 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=9, Invalid=11, Unknown=0, NotChecked=0, Total=20 [2020-07-10 15:04:24,576 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 166 states. [2020-07-10 15:04:24,725 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 166 to 155. [2020-07-10 15:04:24,725 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-10 15:04:24,726 INFO L82 GeneralOperation]: Start isEquivalent. First operand 166 states. Second operand 155 states. [2020-07-10 15:04:24,727 INFO L74 IsIncluded]: Start isIncluded. First operand 166 states. Second operand 155 states. [2020-07-10 15:04:24,727 INFO L87 Difference]: Start difference. First operand 166 states. Second operand 155 states. [2020-07-10 15:04:24,741 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-10 15:04:24,741 INFO L93 Difference]: Finished difference Result 166 states and 200 transitions. [2020-07-10 15:04:24,741 INFO L276 IsEmpty]: Start isEmpty. Operand 166 states and 200 transitions. [2020-07-10 15:04:24,745 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-10 15:04:24,745 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-10 15:04:24,745 INFO L74 IsIncluded]: Start isIncluded. First operand 155 states. Second operand 166 states. [2020-07-10 15:04:24,746 INFO L87 Difference]: Start difference. First operand 155 states. Second operand 166 states. [2020-07-10 15:04:24,756 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-10 15:04:24,757 INFO L93 Difference]: Finished difference Result 166 states and 200 transitions. [2020-07-10 15:04:24,757 INFO L276 IsEmpty]: Start isEmpty. Operand 166 states and 200 transitions. [2020-07-10 15:04:24,760 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-10 15:04:24,760 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-10 15:04:24,761 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-10 15:04:24,761 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-10 15:04:24,761 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 155 states. [2020-07-10 15:04:24,792 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 155 states to 155 states and 184 transitions. [2020-07-10 15:04:24,794 INFO L78 Accepts]: Start accepts. Automaton has 155 states and 184 transitions. Word has length 59 [2020-07-10 15:04:24,795 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-10 15:04:24,795 INFO L479 AbstractCegarLoop]: Abstraction has 155 states and 184 transitions. [2020-07-10 15:04:24,795 INFO L480 AbstractCegarLoop]: Interpolant automaton has 4 states. [2020-07-10 15:04:24,795 INFO L276 IsEmpty]: Start isEmpty. Operand 155 states and 184 transitions. [2020-07-10 15:04:24,798 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 61 [2020-07-10 15:04:24,799 INFO L414 BasicCegarLoop]: Found error trace [2020-07-10 15:04:24,799 INFO L422 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 2, 2, 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] [2020-07-10 15:04:24,800 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2020-07-10 15:04:24,800 INFO L427 AbstractCegarLoop]: === Iteration 2 === [failErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-10 15:04:24,800 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-10 15:04:24,800 INFO L82 PathProgramCache]: Analyzing trace with hash 747676979, now seen corresponding path program 1 times [2020-07-10 15:04:24,801 INFO L163 FreeRefinementEngine]: Executing refinement strategy CAMEL [2020-07-10 15:04:24,801 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1272749026] [2020-07-10 15:04:24,801 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-10 15:04:24,878 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 15:04:25,008 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 15:04:25,014 INFO L280 TraceCheckUtils]: 0: Hoare triple {1429#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];assume 0 < #StackHeapBarrier; {1372#true} is VALID [2020-07-10 15:04:25,014 INFO L280 TraceCheckUtils]: 1: Hoare triple {1372#true} assume true; {1372#true} is VALID [2020-07-10 15:04:25,014 INFO L275 TraceCheckUtils]: 2: Hoare quadruple {1372#true} {1372#true} #542#return; {1372#true} is VALID [2020-07-10 15:04:25,056 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 15:04:25,107 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 15:04:25,178 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 15:04:25,230 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 15:04:25,239 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 15:04:25,245 INFO L280 TraceCheckUtils]: 0: Hoare triple {1430#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {1372#true} is VALID [2020-07-10 15:04:25,246 INFO L280 TraceCheckUtils]: 1: Hoare triple {1372#true} assume !(~ptr~0.base == 0 && ~ptr~0.offset == 0); {1372#true} is VALID [2020-07-10 15:04:25,246 INFO L280 TraceCheckUtils]: 2: Hoare triple {1372#true} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {1372#true} is VALID [2020-07-10 15:04:25,246 INFO L280 TraceCheckUtils]: 3: Hoare triple {1372#true} assume true; {1372#true} is VALID [2020-07-10 15:04:25,247 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {1372#true} {1372#true} #490#return; {1372#true} is VALID [2020-07-10 15:04:25,247 INFO L280 TraceCheckUtils]: 0: Hoare triple {1430#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {1372#true} is VALID [2020-07-10 15:04:25,248 INFO L263 TraceCheckUtils]: 1: Hoare triple {1372#true} call #t~ret4.base, #t~ret4.offset := alloc_or_die_slave(); {1430#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:25,248 INFO L280 TraceCheckUtils]: 2: Hoare triple {1430#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {1372#true} is VALID [2020-07-10 15:04:25,249 INFO L280 TraceCheckUtils]: 3: Hoare triple {1372#true} assume !(~ptr~0.base == 0 && ~ptr~0.offset == 0); {1372#true} is VALID [2020-07-10 15:04:25,249 INFO L280 TraceCheckUtils]: 4: Hoare triple {1372#true} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {1372#true} is VALID [2020-07-10 15:04:25,249 INFO L280 TraceCheckUtils]: 5: Hoare triple {1372#true} assume true; {1372#true} is VALID [2020-07-10 15:04:25,249 INFO L275 TraceCheckUtils]: 6: Hoare quadruple {1372#true} {1372#true} #490#return; {1372#true} is VALID [2020-07-10 15:04:25,250 INFO L280 TraceCheckUtils]: 7: Hoare triple {1372#true} ~item~0.base, ~item~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~0.base, ~next~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset;call write~$Pointer$(~next~0.base, ~next~0.offset, ~item~0.base, ~item~0.offset, 4); {1372#true} is VALID [2020-07-10 15:04:25,250 INFO L280 TraceCheckUtils]: 8: Hoare triple {1372#true} assume !(~next~0.base != 0 || ~next~0.offset != 0); {1372#true} is VALID [2020-07-10 15:04:25,250 INFO L280 TraceCheckUtils]: 9: Hoare triple {1372#true} call write~$Pointer$(~item~0.base, ~item~0.offset, ~dll.base, ~dll.offset, 4); {1372#true} is VALID [2020-07-10 15:04:25,251 INFO L280 TraceCheckUtils]: 10: Hoare triple {1372#true} assume true; {1372#true} is VALID [2020-07-10 15:04:25,252 INFO L275 TraceCheckUtils]: 11: Hoare quadruple {1372#true} {1509#(or (<= (+ |#funAddr~dll_insert_master.offset| 1) |##fun~$Pointer$~TO~VOID_#in~#fp.offset|) (<= (+ |#funAddr~dll_insert_master.base| 1) |##fun~$Pointer$~TO~VOID_#in~#fp.base|) (< |##fun~$Pointer$~TO~VOID_#in~#fp.base| |#funAddr~dll_insert_master.base|) (< |##fun~$Pointer$~TO~VOID_#in~#fp.offset| |#funAddr~dll_insert_master.offset|))} #514#return; {1509#(or (<= (+ |#funAddr~dll_insert_master.offset| 1) |##fun~$Pointer$~TO~VOID_#in~#fp.offset|) (<= (+ |#funAddr~dll_insert_master.base| 1) |##fun~$Pointer$~TO~VOID_#in~#fp.base|) (< |##fun~$Pointer$~TO~VOID_#in~#fp.base| |#funAddr~dll_insert_master.base|) (< |##fun~$Pointer$~TO~VOID_#in~#fp.offset| |#funAddr~dll_insert_master.offset|))} is VALID [2020-07-10 15:04:25,252 INFO L280 TraceCheckUtils]: 0: Hoare triple {1430#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {1372#true} is VALID [2020-07-10 15:04:25,253 INFO L280 TraceCheckUtils]: 1: Hoare triple {1372#true} assume !(#in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset); {1509#(or (<= (+ |#funAddr~dll_insert_master.offset| 1) |##fun~$Pointer$~TO~VOID_#in~#fp.offset|) (<= (+ |#funAddr~dll_insert_master.base| 1) |##fun~$Pointer$~TO~VOID_#in~#fp.base|) (< |##fun~$Pointer$~TO~VOID_#in~#fp.base| |#funAddr~dll_insert_master.base|) (< |##fun~$Pointer$~TO~VOID_#in~#fp.offset| |#funAddr~dll_insert_master.offset|))} is VALID [2020-07-10 15:04:25,255 INFO L263 TraceCheckUtils]: 2: Hoare triple {1509#(or (<= (+ |#funAddr~dll_insert_master.offset| 1) |##fun~$Pointer$~TO~VOID_#in~#fp.offset|) (<= (+ |#funAddr~dll_insert_master.base| 1) |##fun~$Pointer$~TO~VOID_#in~#fp.base|) (< |##fun~$Pointer$~TO~VOID_#in~#fp.base| |#funAddr~dll_insert_master.base|) (< |##fun~$Pointer$~TO~VOID_#in~#fp.offset| |#funAddr~dll_insert_master.offset|))} call dll_insert_slave(#~9.base, #~9.offset); {1430#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:25,255 INFO L280 TraceCheckUtils]: 3: Hoare triple {1430#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {1372#true} is VALID [2020-07-10 15:04:25,256 INFO L263 TraceCheckUtils]: 4: Hoare triple {1372#true} call #t~ret4.base, #t~ret4.offset := alloc_or_die_slave(); {1430#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:25,256 INFO L280 TraceCheckUtils]: 5: Hoare triple {1430#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {1372#true} is VALID [2020-07-10 15:04:25,257 INFO L280 TraceCheckUtils]: 6: Hoare triple {1372#true} assume !(~ptr~0.base == 0 && ~ptr~0.offset == 0); {1372#true} is VALID [2020-07-10 15:04:25,257 INFO L280 TraceCheckUtils]: 7: Hoare triple {1372#true} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {1372#true} is VALID [2020-07-10 15:04:25,257 INFO L280 TraceCheckUtils]: 8: Hoare triple {1372#true} assume true; {1372#true} is VALID [2020-07-10 15:04:25,257 INFO L275 TraceCheckUtils]: 9: Hoare quadruple {1372#true} {1372#true} #490#return; {1372#true} is VALID [2020-07-10 15:04:25,258 INFO L280 TraceCheckUtils]: 10: Hoare triple {1372#true} ~item~0.base, ~item~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~0.base, ~next~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset;call write~$Pointer$(~next~0.base, ~next~0.offset, ~item~0.base, ~item~0.offset, 4); {1372#true} is VALID [2020-07-10 15:04:25,258 INFO L280 TraceCheckUtils]: 11: Hoare triple {1372#true} assume !(~next~0.base != 0 || ~next~0.offset != 0); {1372#true} is VALID [2020-07-10 15:04:25,258 INFO L280 TraceCheckUtils]: 12: Hoare triple {1372#true} call write~$Pointer$(~item~0.base, ~item~0.offset, ~dll.base, ~dll.offset, 4); {1372#true} is VALID [2020-07-10 15:04:25,258 INFO L280 TraceCheckUtils]: 13: Hoare triple {1372#true} assume true; {1372#true} is VALID [2020-07-10 15:04:25,259 INFO L275 TraceCheckUtils]: 14: Hoare quadruple {1372#true} {1509#(or (<= (+ |#funAddr~dll_insert_master.offset| 1) |##fun~$Pointer$~TO~VOID_#in~#fp.offset|) (<= (+ |#funAddr~dll_insert_master.base| 1) |##fun~$Pointer$~TO~VOID_#in~#fp.base|) (< |##fun~$Pointer$~TO~VOID_#in~#fp.base| |#funAddr~dll_insert_master.base|) (< |##fun~$Pointer$~TO~VOID_#in~#fp.offset| |#funAddr~dll_insert_master.offset|))} #514#return; {1509#(or (<= (+ |#funAddr~dll_insert_master.offset| 1) |##fun~$Pointer$~TO~VOID_#in~#fp.offset|) (<= (+ |#funAddr~dll_insert_master.base| 1) |##fun~$Pointer$~TO~VOID_#in~#fp.base|) (< |##fun~$Pointer$~TO~VOID_#in~#fp.base| |#funAddr~dll_insert_master.base|) (< |##fun~$Pointer$~TO~VOID_#in~#fp.offset| |#funAddr~dll_insert_master.offset|))} is VALID [2020-07-10 15:04:25,260 INFO L280 TraceCheckUtils]: 15: Hoare triple {1509#(or (<= (+ |#funAddr~dll_insert_master.offset| 1) |##fun~$Pointer$~TO~VOID_#in~#fp.offset|) (<= (+ |#funAddr~dll_insert_master.base| 1) |##fun~$Pointer$~TO~VOID_#in~#fp.base|) (< |##fun~$Pointer$~TO~VOID_#in~#fp.base| |#funAddr~dll_insert_master.base|) (< |##fun~$Pointer$~TO~VOID_#in~#fp.offset| |#funAddr~dll_insert_master.offset|))} assume true; {1509#(or (<= (+ |#funAddr~dll_insert_master.offset| 1) |##fun~$Pointer$~TO~VOID_#in~#fp.offset|) (<= (+ |#funAddr~dll_insert_master.base| 1) |##fun~$Pointer$~TO~VOID_#in~#fp.base|) (< |##fun~$Pointer$~TO~VOID_#in~#fp.base| |#funAddr~dll_insert_master.base|) (< |##fun~$Pointer$~TO~VOID_#in~#fp.offset| |#funAddr~dll_insert_master.offset|))} is VALID [2020-07-10 15:04:25,262 INFO L275 TraceCheckUtils]: 16: Hoare quadruple {1509#(or (<= (+ |#funAddr~dll_insert_master.offset| 1) |##fun~$Pointer$~TO~VOID_#in~#fp.offset|) (<= (+ |#funAddr~dll_insert_master.base| 1) |##fun~$Pointer$~TO~VOID_#in~#fp.base|) (< |##fun~$Pointer$~TO~VOID_#in~#fp.base| |#funAddr~dll_insert_master.base|) (< |##fun~$Pointer$~TO~VOID_#in~#fp.offset| |#funAddr~dll_insert_master.offset|))} {1473#(and (= |dll_create_generic_#in~insert_fnc.offset| dll_create_generic_~insert_fnc.offset) (= dll_create_generic_~insert_fnc.base |dll_create_generic_#in~insert_fnc.base|))} #534#return; {1491#(or (not (= |#funAddr~dll_insert_master.base| |dll_create_generic_#in~insert_fnc.base|)) (not (= |dll_create_generic_#in~insert_fnc.offset| |#funAddr~dll_insert_master.offset|)))} is VALID [2020-07-10 15:04:25,268 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 15:04:25,279 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 15:04:25,287 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 15:04:25,292 INFO L280 TraceCheckUtils]: 0: Hoare triple {1430#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {1372#true} is VALID [2020-07-10 15:04:25,292 INFO L280 TraceCheckUtils]: 1: Hoare triple {1372#true} assume !(~ptr~0.base == 0 && ~ptr~0.offset == 0); {1372#true} is VALID [2020-07-10 15:04:25,293 INFO L280 TraceCheckUtils]: 2: Hoare triple {1372#true} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {1372#true} is VALID [2020-07-10 15:04:25,293 INFO L280 TraceCheckUtils]: 3: Hoare triple {1372#true} assume true; {1372#true} is VALID [2020-07-10 15:04:25,293 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {1372#true} {1372#true} #490#return; {1372#true} is VALID [2020-07-10 15:04:25,294 INFO L280 TraceCheckUtils]: 0: Hoare triple {1430#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {1372#true} is VALID [2020-07-10 15:04:25,295 INFO L263 TraceCheckUtils]: 1: Hoare triple {1372#true} call #t~ret4.base, #t~ret4.offset := alloc_or_die_slave(); {1430#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:25,295 INFO L280 TraceCheckUtils]: 2: Hoare triple {1430#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {1372#true} is VALID [2020-07-10 15:04:25,295 INFO L280 TraceCheckUtils]: 3: Hoare triple {1372#true} assume !(~ptr~0.base == 0 && ~ptr~0.offset == 0); {1372#true} is VALID [2020-07-10 15:04:25,296 INFO L280 TraceCheckUtils]: 4: Hoare triple {1372#true} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {1372#true} is VALID [2020-07-10 15:04:25,296 INFO L280 TraceCheckUtils]: 5: Hoare triple {1372#true} assume true; {1372#true} is VALID [2020-07-10 15:04:25,296 INFO L275 TraceCheckUtils]: 6: Hoare quadruple {1372#true} {1372#true} #490#return; {1372#true} is VALID [2020-07-10 15:04:25,297 INFO L280 TraceCheckUtils]: 7: Hoare triple {1372#true} ~item~0.base, ~item~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~0.base, ~next~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset;call write~$Pointer$(~next~0.base, ~next~0.offset, ~item~0.base, ~item~0.offset, 4); {1372#true} is VALID [2020-07-10 15:04:25,297 INFO L280 TraceCheckUtils]: 8: Hoare triple {1372#true} assume !(~next~0.base != 0 || ~next~0.offset != 0); {1372#true} is VALID [2020-07-10 15:04:25,297 INFO L280 TraceCheckUtils]: 9: Hoare triple {1372#true} call write~$Pointer$(~item~0.base, ~item~0.offset, ~dll.base, ~dll.offset, 4); {1372#true} is VALID [2020-07-10 15:04:25,297 INFO L280 TraceCheckUtils]: 10: Hoare triple {1372#true} assume true; {1372#true} is VALID [2020-07-10 15:04:25,298 INFO L275 TraceCheckUtils]: 11: Hoare quadruple {1372#true} {1372#true} #514#return; {1372#true} is VALID [2020-07-10 15:04:25,298 INFO L280 TraceCheckUtils]: 0: Hoare triple {1430#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {1372#true} is VALID [2020-07-10 15:04:25,298 INFO L280 TraceCheckUtils]: 1: Hoare triple {1372#true} assume !(#in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset); {1372#true} is VALID [2020-07-10 15:04:25,300 INFO L263 TraceCheckUtils]: 2: Hoare triple {1372#true} call dll_insert_slave(#~9.base, #~9.offset); {1430#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:25,300 INFO L280 TraceCheckUtils]: 3: Hoare triple {1430#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {1372#true} is VALID [2020-07-10 15:04:25,301 INFO L263 TraceCheckUtils]: 4: Hoare triple {1372#true} call #t~ret4.base, #t~ret4.offset := alloc_or_die_slave(); {1430#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:25,301 INFO L280 TraceCheckUtils]: 5: Hoare triple {1430#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {1372#true} is VALID [2020-07-10 15:04:25,302 INFO L280 TraceCheckUtils]: 6: Hoare triple {1372#true} assume !(~ptr~0.base == 0 && ~ptr~0.offset == 0); {1372#true} is VALID [2020-07-10 15:04:25,302 INFO L280 TraceCheckUtils]: 7: Hoare triple {1372#true} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {1372#true} is VALID [2020-07-10 15:04:25,302 INFO L280 TraceCheckUtils]: 8: Hoare triple {1372#true} assume true; {1372#true} is VALID [2020-07-10 15:04:25,302 INFO L275 TraceCheckUtils]: 9: Hoare quadruple {1372#true} {1372#true} #490#return; {1372#true} is VALID [2020-07-10 15:04:25,303 INFO L280 TraceCheckUtils]: 10: Hoare triple {1372#true} ~item~0.base, ~item~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~0.base, ~next~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset;call write~$Pointer$(~next~0.base, ~next~0.offset, ~item~0.base, ~item~0.offset, 4); {1372#true} is VALID [2020-07-10 15:04:25,303 INFO L280 TraceCheckUtils]: 11: Hoare triple {1372#true} assume !(~next~0.base != 0 || ~next~0.offset != 0); {1372#true} is VALID [2020-07-10 15:04:25,303 INFO L280 TraceCheckUtils]: 12: Hoare triple {1372#true} call write~$Pointer$(~item~0.base, ~item~0.offset, ~dll.base, ~dll.offset, 4); {1372#true} is VALID [2020-07-10 15:04:25,303 INFO L280 TraceCheckUtils]: 13: Hoare triple {1372#true} assume true; {1372#true} is VALID [2020-07-10 15:04:25,304 INFO L275 TraceCheckUtils]: 14: Hoare quadruple {1372#true} {1372#true} #514#return; {1372#true} is VALID [2020-07-10 15:04:25,304 INFO L280 TraceCheckUtils]: 15: Hoare triple {1372#true} assume true; {1372#true} is VALID [2020-07-10 15:04:25,305 INFO L275 TraceCheckUtils]: 16: Hoare quadruple {1372#true} {1491#(or (not (= |#funAddr~dll_insert_master.base| |dll_create_generic_#in~insert_fnc.base|)) (not (= |dll_create_generic_#in~insert_fnc.offset| |#funAddr~dll_insert_master.offset|)))} #536#return; {1491#(or (not (= |#funAddr~dll_insert_master.base| |dll_create_generic_#in~insert_fnc.base|)) (not (= |dll_create_generic_#in~insert_fnc.offset| |#funAddr~dll_insert_master.offset|)))} is VALID [2020-07-10 15:04:25,307 INFO L280 TraceCheckUtils]: 0: Hoare triple {1430#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~insert_fnc.base, ~insert_fnc.offset := #in~insert_fnc.base, #in~insert_fnc.offset;call ~#dll~0.base, ~#dll~0.offset := #Ultimate.allocOnStack(4);call write~init~$Pointer$(0, 0, ~#dll~0.base, ~#dll~0.offset, 4); {1473#(and (= |dll_create_generic_#in~insert_fnc.offset| dll_create_generic_~insert_fnc.offset) (= dll_create_generic_~insert_fnc.base |dll_create_generic_#in~insert_fnc.base|))} is VALID [2020-07-10 15:04:25,309 INFO L263 TraceCheckUtils]: 1: Hoare triple {1473#(and (= |dll_create_generic_#in~insert_fnc.offset| dll_create_generic_~insert_fnc.offset) (= dll_create_generic_~insert_fnc.base |dll_create_generic_#in~insert_fnc.base|))} call ##fun~$Pointer$~TO~VOID(~#dll~0.base, ~#dll~0.offset, ~insert_fnc.base, ~insert_fnc.offset); {1430#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:25,309 INFO L280 TraceCheckUtils]: 2: Hoare triple {1430#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {1372#true} is VALID [2020-07-10 15:04:25,310 INFO L280 TraceCheckUtils]: 3: Hoare triple {1372#true} assume !(#in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset); {1509#(or (<= (+ |#funAddr~dll_insert_master.offset| 1) |##fun~$Pointer$~TO~VOID_#in~#fp.offset|) (<= (+ |#funAddr~dll_insert_master.base| 1) |##fun~$Pointer$~TO~VOID_#in~#fp.base|) (< |##fun~$Pointer$~TO~VOID_#in~#fp.base| |#funAddr~dll_insert_master.base|) (< |##fun~$Pointer$~TO~VOID_#in~#fp.offset| |#funAddr~dll_insert_master.offset|))} is VALID [2020-07-10 15:04:25,312 INFO L263 TraceCheckUtils]: 4: Hoare triple {1509#(or (<= (+ |#funAddr~dll_insert_master.offset| 1) |##fun~$Pointer$~TO~VOID_#in~#fp.offset|) (<= (+ |#funAddr~dll_insert_master.base| 1) |##fun~$Pointer$~TO~VOID_#in~#fp.base|) (< |##fun~$Pointer$~TO~VOID_#in~#fp.base| |#funAddr~dll_insert_master.base|) (< |##fun~$Pointer$~TO~VOID_#in~#fp.offset| |#funAddr~dll_insert_master.offset|))} call dll_insert_slave(#~9.base, #~9.offset); {1430#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:25,312 INFO L280 TraceCheckUtils]: 5: Hoare triple {1430#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {1372#true} is VALID [2020-07-10 15:04:25,313 INFO L263 TraceCheckUtils]: 6: Hoare triple {1372#true} call #t~ret4.base, #t~ret4.offset := alloc_or_die_slave(); {1430#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:25,313 INFO L280 TraceCheckUtils]: 7: Hoare triple {1430#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {1372#true} is VALID [2020-07-10 15:04:25,314 INFO L280 TraceCheckUtils]: 8: Hoare triple {1372#true} assume !(~ptr~0.base == 0 && ~ptr~0.offset == 0); {1372#true} is VALID [2020-07-10 15:04:25,314 INFO L280 TraceCheckUtils]: 9: Hoare triple {1372#true} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {1372#true} is VALID [2020-07-10 15:04:25,314 INFO L280 TraceCheckUtils]: 10: Hoare triple {1372#true} assume true; {1372#true} is VALID [2020-07-10 15:04:25,314 INFO L275 TraceCheckUtils]: 11: Hoare quadruple {1372#true} {1372#true} #490#return; {1372#true} is VALID [2020-07-10 15:04:25,315 INFO L280 TraceCheckUtils]: 12: Hoare triple {1372#true} ~item~0.base, ~item~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~0.base, ~next~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset;call write~$Pointer$(~next~0.base, ~next~0.offset, ~item~0.base, ~item~0.offset, 4); {1372#true} is VALID [2020-07-10 15:04:25,315 INFO L280 TraceCheckUtils]: 13: Hoare triple {1372#true} assume !(~next~0.base != 0 || ~next~0.offset != 0); {1372#true} is VALID [2020-07-10 15:04:25,315 INFO L280 TraceCheckUtils]: 14: Hoare triple {1372#true} call write~$Pointer$(~item~0.base, ~item~0.offset, ~dll.base, ~dll.offset, 4); {1372#true} is VALID [2020-07-10 15:04:25,316 INFO L280 TraceCheckUtils]: 15: Hoare triple {1372#true} assume true; {1372#true} is VALID [2020-07-10 15:04:25,317 INFO L275 TraceCheckUtils]: 16: Hoare quadruple {1372#true} {1509#(or (<= (+ |#funAddr~dll_insert_master.offset| 1) |##fun~$Pointer$~TO~VOID_#in~#fp.offset|) (<= (+ |#funAddr~dll_insert_master.base| 1) |##fun~$Pointer$~TO~VOID_#in~#fp.base|) (< |##fun~$Pointer$~TO~VOID_#in~#fp.base| |#funAddr~dll_insert_master.base|) (< |##fun~$Pointer$~TO~VOID_#in~#fp.offset| |#funAddr~dll_insert_master.offset|))} #514#return; {1509#(or (<= (+ |#funAddr~dll_insert_master.offset| 1) |##fun~$Pointer$~TO~VOID_#in~#fp.offset|) (<= (+ |#funAddr~dll_insert_master.base| 1) |##fun~$Pointer$~TO~VOID_#in~#fp.base|) (< |##fun~$Pointer$~TO~VOID_#in~#fp.base| |#funAddr~dll_insert_master.base|) (< |##fun~$Pointer$~TO~VOID_#in~#fp.offset| |#funAddr~dll_insert_master.offset|))} is VALID [2020-07-10 15:04:25,317 INFO L280 TraceCheckUtils]: 17: Hoare triple {1509#(or (<= (+ |#funAddr~dll_insert_master.offset| 1) |##fun~$Pointer$~TO~VOID_#in~#fp.offset|) (<= (+ |#funAddr~dll_insert_master.base| 1) |##fun~$Pointer$~TO~VOID_#in~#fp.base|) (< |##fun~$Pointer$~TO~VOID_#in~#fp.base| |#funAddr~dll_insert_master.base|) (< |##fun~$Pointer$~TO~VOID_#in~#fp.offset| |#funAddr~dll_insert_master.offset|))} assume true; {1509#(or (<= (+ |#funAddr~dll_insert_master.offset| 1) |##fun~$Pointer$~TO~VOID_#in~#fp.offset|) (<= (+ |#funAddr~dll_insert_master.base| 1) |##fun~$Pointer$~TO~VOID_#in~#fp.base|) (< |##fun~$Pointer$~TO~VOID_#in~#fp.base| |#funAddr~dll_insert_master.base|) (< |##fun~$Pointer$~TO~VOID_#in~#fp.offset| |#funAddr~dll_insert_master.offset|))} is VALID [2020-07-10 15:04:25,319 INFO L275 TraceCheckUtils]: 18: Hoare quadruple {1509#(or (<= (+ |#funAddr~dll_insert_master.offset| 1) |##fun~$Pointer$~TO~VOID_#in~#fp.offset|) (<= (+ |#funAddr~dll_insert_master.base| 1) |##fun~$Pointer$~TO~VOID_#in~#fp.base|) (< |##fun~$Pointer$~TO~VOID_#in~#fp.base| |#funAddr~dll_insert_master.base|) (< |##fun~$Pointer$~TO~VOID_#in~#fp.offset| |#funAddr~dll_insert_master.offset|))} {1473#(and (= |dll_create_generic_#in~insert_fnc.offset| dll_create_generic_~insert_fnc.offset) (= dll_create_generic_~insert_fnc.base |dll_create_generic_#in~insert_fnc.base|))} #534#return; {1491#(or (not (= |#funAddr~dll_insert_master.base| |dll_create_generic_#in~insert_fnc.base|)) (not (= |dll_create_generic_#in~insert_fnc.offset| |#funAddr~dll_insert_master.offset|)))} is VALID [2020-07-10 15:04:25,321 INFO L263 TraceCheckUtils]: 19: Hoare triple {1491#(or (not (= |#funAddr~dll_insert_master.base| |dll_create_generic_#in~insert_fnc.base|)) (not (= |dll_create_generic_#in~insert_fnc.offset| |#funAddr~dll_insert_master.offset|)))} call ##fun~$Pointer$~TO~VOID(~#dll~0.base, ~#dll~0.offset, ~insert_fnc.base, ~insert_fnc.offset); {1430#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:25,321 INFO L280 TraceCheckUtils]: 20: Hoare triple {1430#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {1372#true} is VALID [2020-07-10 15:04:25,321 INFO L280 TraceCheckUtils]: 21: Hoare triple {1372#true} assume !(#in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset); {1372#true} is VALID [2020-07-10 15:04:25,323 INFO L263 TraceCheckUtils]: 22: Hoare triple {1372#true} call dll_insert_slave(#~9.base, #~9.offset); {1430#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:25,323 INFO L280 TraceCheckUtils]: 23: Hoare triple {1430#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {1372#true} is VALID [2020-07-10 15:04:25,324 INFO L263 TraceCheckUtils]: 24: Hoare triple {1372#true} call #t~ret4.base, #t~ret4.offset := alloc_or_die_slave(); {1430#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:25,324 INFO L280 TraceCheckUtils]: 25: Hoare triple {1430#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {1372#true} is VALID [2020-07-10 15:04:25,325 INFO L280 TraceCheckUtils]: 26: Hoare triple {1372#true} assume !(~ptr~0.base == 0 && ~ptr~0.offset == 0); {1372#true} is VALID [2020-07-10 15:04:25,325 INFO L280 TraceCheckUtils]: 27: Hoare triple {1372#true} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {1372#true} is VALID [2020-07-10 15:04:25,325 INFO L280 TraceCheckUtils]: 28: Hoare triple {1372#true} assume true; {1372#true} is VALID [2020-07-10 15:04:25,325 INFO L275 TraceCheckUtils]: 29: Hoare quadruple {1372#true} {1372#true} #490#return; {1372#true} is VALID [2020-07-10 15:04:25,326 INFO L280 TraceCheckUtils]: 30: Hoare triple {1372#true} ~item~0.base, ~item~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~0.base, ~next~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset;call write~$Pointer$(~next~0.base, ~next~0.offset, ~item~0.base, ~item~0.offset, 4); {1372#true} is VALID [2020-07-10 15:04:25,326 INFO L280 TraceCheckUtils]: 31: Hoare triple {1372#true} assume !(~next~0.base != 0 || ~next~0.offset != 0); {1372#true} is VALID [2020-07-10 15:04:25,326 INFO L280 TraceCheckUtils]: 32: Hoare triple {1372#true} call write~$Pointer$(~item~0.base, ~item~0.offset, ~dll.base, ~dll.offset, 4); {1372#true} is VALID [2020-07-10 15:04:25,326 INFO L280 TraceCheckUtils]: 33: Hoare triple {1372#true} assume true; {1372#true} is VALID [2020-07-10 15:04:25,327 INFO L275 TraceCheckUtils]: 34: Hoare quadruple {1372#true} {1372#true} #514#return; {1372#true} is VALID [2020-07-10 15:04:25,327 INFO L280 TraceCheckUtils]: 35: Hoare triple {1372#true} assume true; {1372#true} is VALID [2020-07-10 15:04:25,328 INFO L275 TraceCheckUtils]: 36: Hoare quadruple {1372#true} {1491#(or (not (= |#funAddr~dll_insert_master.base| |dll_create_generic_#in~insert_fnc.base|)) (not (= |dll_create_generic_#in~insert_fnc.offset| |#funAddr~dll_insert_master.offset|)))} #536#return; {1491#(or (not (= |#funAddr~dll_insert_master.base| |dll_create_generic_#in~insert_fnc.base|)) (not (= |dll_create_generic_#in~insert_fnc.offset| |#funAddr~dll_insert_master.offset|)))} is VALID [2020-07-10 15:04:25,329 INFO L280 TraceCheckUtils]: 37: Hoare triple {1491#(or (not (= |#funAddr~dll_insert_master.base| |dll_create_generic_#in~insert_fnc.base|)) (not (= |dll_create_generic_#in~insert_fnc.offset| |#funAddr~dll_insert_master.offset|)))} assume -2147483648 <= #t~nondet8 && #t~nondet8 <= 2147483647; {1491#(or (not (= |#funAddr~dll_insert_master.base| |dll_create_generic_#in~insert_fnc.base|)) (not (= |dll_create_generic_#in~insert_fnc.offset| |#funAddr~dll_insert_master.offset|)))} is VALID [2020-07-10 15:04:25,329 INFO L280 TraceCheckUtils]: 38: Hoare triple {1491#(or (not (= |#funAddr~dll_insert_master.base| |dll_create_generic_#in~insert_fnc.base|)) (not (= |dll_create_generic_#in~insert_fnc.offset| |#funAddr~dll_insert_master.offset|)))} assume !(0 != #t~nondet8);havoc #t~nondet8; {1491#(or (not (= |#funAddr~dll_insert_master.base| |dll_create_generic_#in~insert_fnc.base|)) (not (= |dll_create_generic_#in~insert_fnc.offset| |#funAddr~dll_insert_master.offset|)))} is VALID [2020-07-10 15:04:25,330 INFO L280 TraceCheckUtils]: 39: Hoare triple {1491#(or (not (= |#funAddr~dll_insert_master.base| |dll_create_generic_#in~insert_fnc.base|)) (not (= |dll_create_generic_#in~insert_fnc.offset| |#funAddr~dll_insert_master.offset|)))} call #t~mem10.base, #t~mem10.offset := read~$Pointer$(~#dll~0.base, ~#dll~0.offset, 4);#res.base, #res.offset := #t~mem10.base, #t~mem10.offset;havoc #t~mem10.base, #t~mem10.offset;call ULTIMATE.dealloc(~#dll~0.base, ~#dll~0.offset);havoc ~#dll~0.base, ~#dll~0.offset; {1491#(or (not (= |#funAddr~dll_insert_master.base| |dll_create_generic_#in~insert_fnc.base|)) (not (= |dll_create_generic_#in~insert_fnc.offset| |#funAddr~dll_insert_master.offset|)))} is VALID [2020-07-10 15:04:25,330 INFO L280 TraceCheckUtils]: 40: Hoare triple {1491#(or (not (= |#funAddr~dll_insert_master.base| |dll_create_generic_#in~insert_fnc.base|)) (not (= |dll_create_generic_#in~insert_fnc.offset| |#funAddr~dll_insert_master.offset|)))} assume true; {1491#(or (not (= |#funAddr~dll_insert_master.base| |dll_create_generic_#in~insert_fnc.base|)) (not (= |dll_create_generic_#in~insert_fnc.offset| |#funAddr~dll_insert_master.offset|)))} is VALID [2020-07-10 15:04:25,332 INFO L275 TraceCheckUtils]: 41: Hoare quadruple {1491#(or (not (= |#funAddr~dll_insert_master.base| |dll_create_generic_#in~insert_fnc.base|)) (not (= |dll_create_generic_#in~insert_fnc.offset| |#funAddr~dll_insert_master.offset|)))} {1430#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #492#return; {1373#false} is VALID [2020-07-10 15:04:25,337 INFO L263 TraceCheckUtils]: 0: Hoare triple {1430#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~ret20.base, #t~ret20.offset := dll_create_generic(#funAddr~dll_insert_master.base, #funAddr~dll_insert_master.offset); {1430#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:25,338 INFO L280 TraceCheckUtils]: 1: Hoare triple {1430#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~insert_fnc.base, ~insert_fnc.offset := #in~insert_fnc.base, #in~insert_fnc.offset;call ~#dll~0.base, ~#dll~0.offset := #Ultimate.allocOnStack(4);call write~init~$Pointer$(0, 0, ~#dll~0.base, ~#dll~0.offset, 4); {1473#(and (= |dll_create_generic_#in~insert_fnc.offset| dll_create_generic_~insert_fnc.offset) (= dll_create_generic_~insert_fnc.base |dll_create_generic_#in~insert_fnc.base|))} is VALID [2020-07-10 15:04:25,340 INFO L263 TraceCheckUtils]: 2: Hoare triple {1473#(and (= |dll_create_generic_#in~insert_fnc.offset| dll_create_generic_~insert_fnc.offset) (= dll_create_generic_~insert_fnc.base |dll_create_generic_#in~insert_fnc.base|))} call ##fun~$Pointer$~TO~VOID(~#dll~0.base, ~#dll~0.offset, ~insert_fnc.base, ~insert_fnc.offset); {1430#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:25,340 INFO L280 TraceCheckUtils]: 3: Hoare triple {1430#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {1372#true} is VALID [2020-07-10 15:04:25,341 INFO L280 TraceCheckUtils]: 4: Hoare triple {1372#true} assume !(#in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset); {1509#(or (<= (+ |#funAddr~dll_insert_master.offset| 1) |##fun~$Pointer$~TO~VOID_#in~#fp.offset|) (<= (+ |#funAddr~dll_insert_master.base| 1) |##fun~$Pointer$~TO~VOID_#in~#fp.base|) (< |##fun~$Pointer$~TO~VOID_#in~#fp.base| |#funAddr~dll_insert_master.base|) (< |##fun~$Pointer$~TO~VOID_#in~#fp.offset| |#funAddr~dll_insert_master.offset|))} is VALID [2020-07-10 15:04:25,342 INFO L263 TraceCheckUtils]: 5: Hoare triple {1509#(or (<= (+ |#funAddr~dll_insert_master.offset| 1) |##fun~$Pointer$~TO~VOID_#in~#fp.offset|) (<= (+ |#funAddr~dll_insert_master.base| 1) |##fun~$Pointer$~TO~VOID_#in~#fp.base|) (< |##fun~$Pointer$~TO~VOID_#in~#fp.base| |#funAddr~dll_insert_master.base|) (< |##fun~$Pointer$~TO~VOID_#in~#fp.offset| |#funAddr~dll_insert_master.offset|))} call dll_insert_slave(#~9.base, #~9.offset); {1430#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:25,343 INFO L280 TraceCheckUtils]: 6: Hoare triple {1430#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {1372#true} is VALID [2020-07-10 15:04:25,343 INFO L263 TraceCheckUtils]: 7: Hoare triple {1372#true} call #t~ret4.base, #t~ret4.offset := alloc_or_die_slave(); {1430#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:25,344 INFO L280 TraceCheckUtils]: 8: Hoare triple {1430#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {1372#true} is VALID [2020-07-10 15:04:25,344 INFO L280 TraceCheckUtils]: 9: Hoare triple {1372#true} assume !(~ptr~0.base == 0 && ~ptr~0.offset == 0); {1372#true} is VALID [2020-07-10 15:04:25,344 INFO L280 TraceCheckUtils]: 10: Hoare triple {1372#true} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {1372#true} is VALID [2020-07-10 15:04:25,344 INFO L280 TraceCheckUtils]: 11: Hoare triple {1372#true} assume true; {1372#true} is VALID [2020-07-10 15:04:25,344 INFO L275 TraceCheckUtils]: 12: Hoare quadruple {1372#true} {1372#true} #490#return; {1372#true} is VALID [2020-07-10 15:04:25,345 INFO L280 TraceCheckUtils]: 13: Hoare triple {1372#true} ~item~0.base, ~item~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~0.base, ~next~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset;call write~$Pointer$(~next~0.base, ~next~0.offset, ~item~0.base, ~item~0.offset, 4); {1372#true} is VALID [2020-07-10 15:04:25,345 INFO L280 TraceCheckUtils]: 14: Hoare triple {1372#true} assume !(~next~0.base != 0 || ~next~0.offset != 0); {1372#true} is VALID [2020-07-10 15:04:25,345 INFO L280 TraceCheckUtils]: 15: Hoare triple {1372#true} call write~$Pointer$(~item~0.base, ~item~0.offset, ~dll.base, ~dll.offset, 4); {1372#true} is VALID [2020-07-10 15:04:25,345 INFO L280 TraceCheckUtils]: 16: Hoare triple {1372#true} assume true; {1372#true} is VALID [2020-07-10 15:04:25,346 INFO L275 TraceCheckUtils]: 17: Hoare quadruple {1372#true} {1509#(or (<= (+ |#funAddr~dll_insert_master.offset| 1) |##fun~$Pointer$~TO~VOID_#in~#fp.offset|) (<= (+ |#funAddr~dll_insert_master.base| 1) |##fun~$Pointer$~TO~VOID_#in~#fp.base|) (< |##fun~$Pointer$~TO~VOID_#in~#fp.base| |#funAddr~dll_insert_master.base|) (< |##fun~$Pointer$~TO~VOID_#in~#fp.offset| |#funAddr~dll_insert_master.offset|))} #514#return; {1509#(or (<= (+ |#funAddr~dll_insert_master.offset| 1) |##fun~$Pointer$~TO~VOID_#in~#fp.offset|) (<= (+ |#funAddr~dll_insert_master.base| 1) |##fun~$Pointer$~TO~VOID_#in~#fp.base|) (< |##fun~$Pointer$~TO~VOID_#in~#fp.base| |#funAddr~dll_insert_master.base|) (< |##fun~$Pointer$~TO~VOID_#in~#fp.offset| |#funAddr~dll_insert_master.offset|))} is VALID [2020-07-10 15:04:25,347 INFO L280 TraceCheckUtils]: 18: Hoare triple {1509#(or (<= (+ |#funAddr~dll_insert_master.offset| 1) |##fun~$Pointer$~TO~VOID_#in~#fp.offset|) (<= (+ |#funAddr~dll_insert_master.base| 1) |##fun~$Pointer$~TO~VOID_#in~#fp.base|) (< |##fun~$Pointer$~TO~VOID_#in~#fp.base| |#funAddr~dll_insert_master.base|) (< |##fun~$Pointer$~TO~VOID_#in~#fp.offset| |#funAddr~dll_insert_master.offset|))} assume true; {1509#(or (<= (+ |#funAddr~dll_insert_master.offset| 1) |##fun~$Pointer$~TO~VOID_#in~#fp.offset|) (<= (+ |#funAddr~dll_insert_master.base| 1) |##fun~$Pointer$~TO~VOID_#in~#fp.base|) (< |##fun~$Pointer$~TO~VOID_#in~#fp.base| |#funAddr~dll_insert_master.base|) (< |##fun~$Pointer$~TO~VOID_#in~#fp.offset| |#funAddr~dll_insert_master.offset|))} is VALID [2020-07-10 15:04:25,348 INFO L275 TraceCheckUtils]: 19: Hoare quadruple {1509#(or (<= (+ |#funAddr~dll_insert_master.offset| 1) |##fun~$Pointer$~TO~VOID_#in~#fp.offset|) (<= (+ |#funAddr~dll_insert_master.base| 1) |##fun~$Pointer$~TO~VOID_#in~#fp.base|) (< |##fun~$Pointer$~TO~VOID_#in~#fp.base| |#funAddr~dll_insert_master.base|) (< |##fun~$Pointer$~TO~VOID_#in~#fp.offset| |#funAddr~dll_insert_master.offset|))} {1473#(and (= |dll_create_generic_#in~insert_fnc.offset| dll_create_generic_~insert_fnc.offset) (= dll_create_generic_~insert_fnc.base |dll_create_generic_#in~insert_fnc.base|))} #534#return; {1491#(or (not (= |#funAddr~dll_insert_master.base| |dll_create_generic_#in~insert_fnc.base|)) (not (= |dll_create_generic_#in~insert_fnc.offset| |#funAddr~dll_insert_master.offset|)))} is VALID [2020-07-10 15:04:25,350 INFO L263 TraceCheckUtils]: 20: Hoare triple {1491#(or (not (= |#funAddr~dll_insert_master.base| |dll_create_generic_#in~insert_fnc.base|)) (not (= |dll_create_generic_#in~insert_fnc.offset| |#funAddr~dll_insert_master.offset|)))} call ##fun~$Pointer$~TO~VOID(~#dll~0.base, ~#dll~0.offset, ~insert_fnc.base, ~insert_fnc.offset); {1430#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:25,350 INFO L280 TraceCheckUtils]: 21: Hoare triple {1430#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {1372#true} is VALID [2020-07-10 15:04:25,350 INFO L280 TraceCheckUtils]: 22: Hoare triple {1372#true} assume !(#in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset); {1372#true} is VALID [2020-07-10 15:04:25,351 INFO L263 TraceCheckUtils]: 23: Hoare triple {1372#true} call dll_insert_slave(#~9.base, #~9.offset); {1430#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:25,352 INFO L280 TraceCheckUtils]: 24: Hoare triple {1430#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {1372#true} is VALID [2020-07-10 15:04:25,352 INFO L263 TraceCheckUtils]: 25: Hoare triple {1372#true} call #t~ret4.base, #t~ret4.offset := alloc_or_die_slave(); {1430#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:25,353 INFO L280 TraceCheckUtils]: 26: Hoare triple {1430#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {1372#true} is VALID [2020-07-10 15:04:25,353 INFO L280 TraceCheckUtils]: 27: Hoare triple {1372#true} assume !(~ptr~0.base == 0 && ~ptr~0.offset == 0); {1372#true} is VALID [2020-07-10 15:04:25,353 INFO L280 TraceCheckUtils]: 28: Hoare triple {1372#true} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {1372#true} is VALID [2020-07-10 15:04:25,353 INFO L280 TraceCheckUtils]: 29: Hoare triple {1372#true} assume true; {1372#true} is VALID [2020-07-10 15:04:25,354 INFO L275 TraceCheckUtils]: 30: Hoare quadruple {1372#true} {1372#true} #490#return; {1372#true} is VALID [2020-07-10 15:04:25,354 INFO L280 TraceCheckUtils]: 31: Hoare triple {1372#true} ~item~0.base, ~item~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~0.base, ~next~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset;call write~$Pointer$(~next~0.base, ~next~0.offset, ~item~0.base, ~item~0.offset, 4); {1372#true} is VALID [2020-07-10 15:04:25,354 INFO L280 TraceCheckUtils]: 32: Hoare triple {1372#true} assume !(~next~0.base != 0 || ~next~0.offset != 0); {1372#true} is VALID [2020-07-10 15:04:25,354 INFO L280 TraceCheckUtils]: 33: Hoare triple {1372#true} call write~$Pointer$(~item~0.base, ~item~0.offset, ~dll.base, ~dll.offset, 4); {1372#true} is VALID [2020-07-10 15:04:25,355 INFO L280 TraceCheckUtils]: 34: Hoare triple {1372#true} assume true; {1372#true} is VALID [2020-07-10 15:04:25,355 INFO L275 TraceCheckUtils]: 35: Hoare quadruple {1372#true} {1372#true} #514#return; {1372#true} is VALID [2020-07-10 15:04:25,355 INFO L280 TraceCheckUtils]: 36: Hoare triple {1372#true} assume true; {1372#true} is VALID [2020-07-10 15:04:25,361 INFO L275 TraceCheckUtils]: 37: Hoare quadruple {1372#true} {1491#(or (not (= |#funAddr~dll_insert_master.base| |dll_create_generic_#in~insert_fnc.base|)) (not (= |dll_create_generic_#in~insert_fnc.offset| |#funAddr~dll_insert_master.offset|)))} #536#return; {1491#(or (not (= |#funAddr~dll_insert_master.base| |dll_create_generic_#in~insert_fnc.base|)) (not (= |dll_create_generic_#in~insert_fnc.offset| |#funAddr~dll_insert_master.offset|)))} is VALID [2020-07-10 15:04:25,361 INFO L280 TraceCheckUtils]: 38: Hoare triple {1491#(or (not (= |#funAddr~dll_insert_master.base| |dll_create_generic_#in~insert_fnc.base|)) (not (= |dll_create_generic_#in~insert_fnc.offset| |#funAddr~dll_insert_master.offset|)))} assume -2147483648 <= #t~nondet8 && #t~nondet8 <= 2147483647; {1491#(or (not (= |#funAddr~dll_insert_master.base| |dll_create_generic_#in~insert_fnc.base|)) (not (= |dll_create_generic_#in~insert_fnc.offset| |#funAddr~dll_insert_master.offset|)))} is VALID [2020-07-10 15:04:25,362 INFO L280 TraceCheckUtils]: 39: Hoare triple {1491#(or (not (= |#funAddr~dll_insert_master.base| |dll_create_generic_#in~insert_fnc.base|)) (not (= |dll_create_generic_#in~insert_fnc.offset| |#funAddr~dll_insert_master.offset|)))} assume !(0 != #t~nondet8);havoc #t~nondet8; {1491#(or (not (= |#funAddr~dll_insert_master.base| |dll_create_generic_#in~insert_fnc.base|)) (not (= |dll_create_generic_#in~insert_fnc.offset| |#funAddr~dll_insert_master.offset|)))} is VALID [2020-07-10 15:04:25,362 INFO L280 TraceCheckUtils]: 40: Hoare triple {1491#(or (not (= |#funAddr~dll_insert_master.base| |dll_create_generic_#in~insert_fnc.base|)) (not (= |dll_create_generic_#in~insert_fnc.offset| |#funAddr~dll_insert_master.offset|)))} call #t~mem10.base, #t~mem10.offset := read~$Pointer$(~#dll~0.base, ~#dll~0.offset, 4);#res.base, #res.offset := #t~mem10.base, #t~mem10.offset;havoc #t~mem10.base, #t~mem10.offset;call ULTIMATE.dealloc(~#dll~0.base, ~#dll~0.offset);havoc ~#dll~0.base, ~#dll~0.offset; {1491#(or (not (= |#funAddr~dll_insert_master.base| |dll_create_generic_#in~insert_fnc.base|)) (not (= |dll_create_generic_#in~insert_fnc.offset| |#funAddr~dll_insert_master.offset|)))} is VALID [2020-07-10 15:04:25,364 INFO L280 TraceCheckUtils]: 41: Hoare triple {1491#(or (not (= |#funAddr~dll_insert_master.base| |dll_create_generic_#in~insert_fnc.base|)) (not (= |dll_create_generic_#in~insert_fnc.offset| |#funAddr~dll_insert_master.offset|)))} assume true; {1491#(or (not (= |#funAddr~dll_insert_master.base| |dll_create_generic_#in~insert_fnc.base|)) (not (= |dll_create_generic_#in~insert_fnc.offset| |#funAddr~dll_insert_master.offset|)))} is VALID [2020-07-10 15:04:25,365 INFO L275 TraceCheckUtils]: 42: Hoare quadruple {1491#(or (not (= |#funAddr~dll_insert_master.base| |dll_create_generic_#in~insert_fnc.base|)) (not (= |dll_create_generic_#in~insert_fnc.offset| |#funAddr~dll_insert_master.offset|)))} {1430#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #492#return; {1373#false} is VALID [2020-07-10 15:04:25,365 INFO L280 TraceCheckUtils]: 43: Hoare triple {1373#false} #res.base, #res.offset := #t~ret20.base, #t~ret20.offset;havoc #t~ret20.base, #t~ret20.offset; {1373#false} is VALID [2020-07-10 15:04:25,365 INFO L280 TraceCheckUtils]: 44: Hoare triple {1373#false} assume true; {1373#false} is VALID [2020-07-10 15:04:25,366 INFO L275 TraceCheckUtils]: 45: Hoare quadruple {1373#false} {1372#true} #498#return; {1423#(not (= 0 |main_#t~ret45.base|))} is VALID [2020-07-10 15:04:25,370 INFO L263 TraceCheckUtils]: 0: Hoare triple {1372#true} call ULTIMATE.init(); {1429#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} is VALID [2020-07-10 15:04:25,371 INFO L280 TraceCheckUtils]: 1: Hoare triple {1429#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];assume 0 < #StackHeapBarrier; {1372#true} is VALID [2020-07-10 15:04:25,371 INFO L280 TraceCheckUtils]: 2: Hoare triple {1372#true} assume true; {1372#true} is VALID [2020-07-10 15:04:25,371 INFO L275 TraceCheckUtils]: 3: Hoare quadruple {1372#true} {1372#true} #542#return; {1372#true} is VALID [2020-07-10 15:04:25,371 INFO L263 TraceCheckUtils]: 4: Hoare triple {1372#true} call #t~ret46 := main(); {1372#true} is VALID [2020-07-10 15:04:25,372 INFO L263 TraceCheckUtils]: 5: Hoare triple {1372#true} call #t~ret45.base, #t~ret45.offset := dll_create_master(); {1430#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:25,374 INFO L263 TraceCheckUtils]: 6: Hoare triple {1430#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~ret20.base, #t~ret20.offset := dll_create_generic(#funAddr~dll_insert_master.base, #funAddr~dll_insert_master.offset); {1430#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:25,379 INFO L280 TraceCheckUtils]: 7: Hoare triple {1430#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~insert_fnc.base, ~insert_fnc.offset := #in~insert_fnc.base, #in~insert_fnc.offset;call ~#dll~0.base, ~#dll~0.offset := #Ultimate.allocOnStack(4);call write~init~$Pointer$(0, 0, ~#dll~0.base, ~#dll~0.offset, 4); {1473#(and (= |dll_create_generic_#in~insert_fnc.offset| dll_create_generic_~insert_fnc.offset) (= dll_create_generic_~insert_fnc.base |dll_create_generic_#in~insert_fnc.base|))} is VALID [2020-07-10 15:04:25,381 INFO L263 TraceCheckUtils]: 8: Hoare triple {1473#(and (= |dll_create_generic_#in~insert_fnc.offset| dll_create_generic_~insert_fnc.offset) (= dll_create_generic_~insert_fnc.base |dll_create_generic_#in~insert_fnc.base|))} call ##fun~$Pointer$~TO~VOID(~#dll~0.base, ~#dll~0.offset, ~insert_fnc.base, ~insert_fnc.offset); {1430#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:25,382 INFO L280 TraceCheckUtils]: 9: Hoare triple {1430#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {1372#true} is VALID [2020-07-10 15:04:25,383 INFO L280 TraceCheckUtils]: 10: Hoare triple {1372#true} assume !(#in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset); {1509#(or (<= (+ |#funAddr~dll_insert_master.offset| 1) |##fun~$Pointer$~TO~VOID_#in~#fp.offset|) (<= (+ |#funAddr~dll_insert_master.base| 1) |##fun~$Pointer$~TO~VOID_#in~#fp.base|) (< |##fun~$Pointer$~TO~VOID_#in~#fp.base| |#funAddr~dll_insert_master.base|) (< |##fun~$Pointer$~TO~VOID_#in~#fp.offset| |#funAddr~dll_insert_master.offset|))} is VALID [2020-07-10 15:04:25,384 INFO L263 TraceCheckUtils]: 11: Hoare triple {1509#(or (<= (+ |#funAddr~dll_insert_master.offset| 1) |##fun~$Pointer$~TO~VOID_#in~#fp.offset|) (<= (+ |#funAddr~dll_insert_master.base| 1) |##fun~$Pointer$~TO~VOID_#in~#fp.base|) (< |##fun~$Pointer$~TO~VOID_#in~#fp.base| |#funAddr~dll_insert_master.base|) (< |##fun~$Pointer$~TO~VOID_#in~#fp.offset| |#funAddr~dll_insert_master.offset|))} call dll_insert_slave(#~9.base, #~9.offset); {1430#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:25,385 INFO L280 TraceCheckUtils]: 12: Hoare triple {1430#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {1372#true} is VALID [2020-07-10 15:04:25,386 INFO L263 TraceCheckUtils]: 13: Hoare triple {1372#true} call #t~ret4.base, #t~ret4.offset := alloc_or_die_slave(); {1430#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:25,386 INFO L280 TraceCheckUtils]: 14: Hoare triple {1430#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {1372#true} is VALID [2020-07-10 15:04:25,386 INFO L280 TraceCheckUtils]: 15: Hoare triple {1372#true} assume !(~ptr~0.base == 0 && ~ptr~0.offset == 0); {1372#true} is VALID [2020-07-10 15:04:25,386 INFO L280 TraceCheckUtils]: 16: Hoare triple {1372#true} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {1372#true} is VALID [2020-07-10 15:04:25,386 INFO L280 TraceCheckUtils]: 17: Hoare triple {1372#true} assume true; {1372#true} is VALID [2020-07-10 15:04:25,387 INFO L275 TraceCheckUtils]: 18: Hoare quadruple {1372#true} {1372#true} #490#return; {1372#true} is VALID [2020-07-10 15:04:25,387 INFO L280 TraceCheckUtils]: 19: Hoare triple {1372#true} ~item~0.base, ~item~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~0.base, ~next~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset;call write~$Pointer$(~next~0.base, ~next~0.offset, ~item~0.base, ~item~0.offset, 4); {1372#true} is VALID [2020-07-10 15:04:25,387 INFO L280 TraceCheckUtils]: 20: Hoare triple {1372#true} assume !(~next~0.base != 0 || ~next~0.offset != 0); {1372#true} is VALID [2020-07-10 15:04:25,387 INFO L280 TraceCheckUtils]: 21: Hoare triple {1372#true} call write~$Pointer$(~item~0.base, ~item~0.offset, ~dll.base, ~dll.offset, 4); {1372#true} is VALID [2020-07-10 15:04:25,388 INFO L280 TraceCheckUtils]: 22: Hoare triple {1372#true} assume true; {1372#true} is VALID [2020-07-10 15:04:25,389 INFO L275 TraceCheckUtils]: 23: Hoare quadruple {1372#true} {1509#(or (<= (+ |#funAddr~dll_insert_master.offset| 1) |##fun~$Pointer$~TO~VOID_#in~#fp.offset|) (<= (+ |#funAddr~dll_insert_master.base| 1) |##fun~$Pointer$~TO~VOID_#in~#fp.base|) (< |##fun~$Pointer$~TO~VOID_#in~#fp.base| |#funAddr~dll_insert_master.base|) (< |##fun~$Pointer$~TO~VOID_#in~#fp.offset| |#funAddr~dll_insert_master.offset|))} #514#return; {1509#(or (<= (+ |#funAddr~dll_insert_master.offset| 1) |##fun~$Pointer$~TO~VOID_#in~#fp.offset|) (<= (+ |#funAddr~dll_insert_master.base| 1) |##fun~$Pointer$~TO~VOID_#in~#fp.base|) (< |##fun~$Pointer$~TO~VOID_#in~#fp.base| |#funAddr~dll_insert_master.base|) (< |##fun~$Pointer$~TO~VOID_#in~#fp.offset| |#funAddr~dll_insert_master.offset|))} is VALID [2020-07-10 15:04:25,389 INFO L280 TraceCheckUtils]: 24: Hoare triple {1509#(or (<= (+ |#funAddr~dll_insert_master.offset| 1) |##fun~$Pointer$~TO~VOID_#in~#fp.offset|) (<= (+ |#funAddr~dll_insert_master.base| 1) |##fun~$Pointer$~TO~VOID_#in~#fp.base|) (< |##fun~$Pointer$~TO~VOID_#in~#fp.base| |#funAddr~dll_insert_master.base|) (< |##fun~$Pointer$~TO~VOID_#in~#fp.offset| |#funAddr~dll_insert_master.offset|))} assume true; {1509#(or (<= (+ |#funAddr~dll_insert_master.offset| 1) |##fun~$Pointer$~TO~VOID_#in~#fp.offset|) (<= (+ |#funAddr~dll_insert_master.base| 1) |##fun~$Pointer$~TO~VOID_#in~#fp.base|) (< |##fun~$Pointer$~TO~VOID_#in~#fp.base| |#funAddr~dll_insert_master.base|) (< |##fun~$Pointer$~TO~VOID_#in~#fp.offset| |#funAddr~dll_insert_master.offset|))} is VALID [2020-07-10 15:04:25,391 INFO L275 TraceCheckUtils]: 25: Hoare quadruple {1509#(or (<= (+ |#funAddr~dll_insert_master.offset| 1) |##fun~$Pointer$~TO~VOID_#in~#fp.offset|) (<= (+ |#funAddr~dll_insert_master.base| 1) |##fun~$Pointer$~TO~VOID_#in~#fp.base|) (< |##fun~$Pointer$~TO~VOID_#in~#fp.base| |#funAddr~dll_insert_master.base|) (< |##fun~$Pointer$~TO~VOID_#in~#fp.offset| |#funAddr~dll_insert_master.offset|))} {1473#(and (= |dll_create_generic_#in~insert_fnc.offset| dll_create_generic_~insert_fnc.offset) (= dll_create_generic_~insert_fnc.base |dll_create_generic_#in~insert_fnc.base|))} #534#return; {1491#(or (not (= |#funAddr~dll_insert_master.base| |dll_create_generic_#in~insert_fnc.base|)) (not (= |dll_create_generic_#in~insert_fnc.offset| |#funAddr~dll_insert_master.offset|)))} is VALID [2020-07-10 15:04:25,393 INFO L263 TraceCheckUtils]: 26: Hoare triple {1491#(or (not (= |#funAddr~dll_insert_master.base| |dll_create_generic_#in~insert_fnc.base|)) (not (= |dll_create_generic_#in~insert_fnc.offset| |#funAddr~dll_insert_master.offset|)))} call ##fun~$Pointer$~TO~VOID(~#dll~0.base, ~#dll~0.offset, ~insert_fnc.base, ~insert_fnc.offset); {1430#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:25,393 INFO L280 TraceCheckUtils]: 27: Hoare triple {1430#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {1372#true} is VALID [2020-07-10 15:04:25,393 INFO L280 TraceCheckUtils]: 28: Hoare triple {1372#true} assume !(#in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset); {1372#true} is VALID [2020-07-10 15:04:25,394 INFO L263 TraceCheckUtils]: 29: Hoare triple {1372#true} call dll_insert_slave(#~9.base, #~9.offset); {1430#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:25,394 INFO L280 TraceCheckUtils]: 30: Hoare triple {1430#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {1372#true} is VALID [2020-07-10 15:04:25,395 INFO L263 TraceCheckUtils]: 31: Hoare triple {1372#true} call #t~ret4.base, #t~ret4.offset := alloc_or_die_slave(); {1430#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:25,396 INFO L280 TraceCheckUtils]: 32: Hoare triple {1430#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {1372#true} is VALID [2020-07-10 15:04:25,396 INFO L280 TraceCheckUtils]: 33: Hoare triple {1372#true} assume !(~ptr~0.base == 0 && ~ptr~0.offset == 0); {1372#true} is VALID [2020-07-10 15:04:25,396 INFO L280 TraceCheckUtils]: 34: Hoare triple {1372#true} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {1372#true} is VALID [2020-07-10 15:04:25,396 INFO L280 TraceCheckUtils]: 35: Hoare triple {1372#true} assume true; {1372#true} is VALID [2020-07-10 15:04:25,396 INFO L275 TraceCheckUtils]: 36: Hoare quadruple {1372#true} {1372#true} #490#return; {1372#true} is VALID [2020-07-10 15:04:25,396 INFO L280 TraceCheckUtils]: 37: Hoare triple {1372#true} ~item~0.base, ~item~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~0.base, ~next~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset;call write~$Pointer$(~next~0.base, ~next~0.offset, ~item~0.base, ~item~0.offset, 4); {1372#true} is VALID [2020-07-10 15:04:25,397 INFO L280 TraceCheckUtils]: 38: Hoare triple {1372#true} assume !(~next~0.base != 0 || ~next~0.offset != 0); {1372#true} is VALID [2020-07-10 15:04:25,397 INFO L280 TraceCheckUtils]: 39: Hoare triple {1372#true} call write~$Pointer$(~item~0.base, ~item~0.offset, ~dll.base, ~dll.offset, 4); {1372#true} is VALID [2020-07-10 15:04:25,397 INFO L280 TraceCheckUtils]: 40: Hoare triple {1372#true} assume true; {1372#true} is VALID [2020-07-10 15:04:25,397 INFO L275 TraceCheckUtils]: 41: Hoare quadruple {1372#true} {1372#true} #514#return; {1372#true} is VALID [2020-07-10 15:04:25,398 INFO L280 TraceCheckUtils]: 42: Hoare triple {1372#true} assume true; {1372#true} is VALID [2020-07-10 15:04:25,399 INFO L275 TraceCheckUtils]: 43: Hoare quadruple {1372#true} {1491#(or (not (= |#funAddr~dll_insert_master.base| |dll_create_generic_#in~insert_fnc.base|)) (not (= |dll_create_generic_#in~insert_fnc.offset| |#funAddr~dll_insert_master.offset|)))} #536#return; {1491#(or (not (= |#funAddr~dll_insert_master.base| |dll_create_generic_#in~insert_fnc.base|)) (not (= |dll_create_generic_#in~insert_fnc.offset| |#funAddr~dll_insert_master.offset|)))} is VALID [2020-07-10 15:04:25,399 INFO L280 TraceCheckUtils]: 44: Hoare triple {1491#(or (not (= |#funAddr~dll_insert_master.base| |dll_create_generic_#in~insert_fnc.base|)) (not (= |dll_create_generic_#in~insert_fnc.offset| |#funAddr~dll_insert_master.offset|)))} assume -2147483648 <= #t~nondet8 && #t~nondet8 <= 2147483647; {1491#(or (not (= |#funAddr~dll_insert_master.base| |dll_create_generic_#in~insert_fnc.base|)) (not (= |dll_create_generic_#in~insert_fnc.offset| |#funAddr~dll_insert_master.offset|)))} is VALID [2020-07-10 15:04:25,400 INFO L280 TraceCheckUtils]: 45: Hoare triple {1491#(or (not (= |#funAddr~dll_insert_master.base| |dll_create_generic_#in~insert_fnc.base|)) (not (= |dll_create_generic_#in~insert_fnc.offset| |#funAddr~dll_insert_master.offset|)))} assume !(0 != #t~nondet8);havoc #t~nondet8; {1491#(or (not (= |#funAddr~dll_insert_master.base| |dll_create_generic_#in~insert_fnc.base|)) (not (= |dll_create_generic_#in~insert_fnc.offset| |#funAddr~dll_insert_master.offset|)))} is VALID [2020-07-10 15:04:25,400 INFO L280 TraceCheckUtils]: 46: Hoare triple {1491#(or (not (= |#funAddr~dll_insert_master.base| |dll_create_generic_#in~insert_fnc.base|)) (not (= |dll_create_generic_#in~insert_fnc.offset| |#funAddr~dll_insert_master.offset|)))} call #t~mem10.base, #t~mem10.offset := read~$Pointer$(~#dll~0.base, ~#dll~0.offset, 4);#res.base, #res.offset := #t~mem10.base, #t~mem10.offset;havoc #t~mem10.base, #t~mem10.offset;call ULTIMATE.dealloc(~#dll~0.base, ~#dll~0.offset);havoc ~#dll~0.base, ~#dll~0.offset; {1491#(or (not (= |#funAddr~dll_insert_master.base| |dll_create_generic_#in~insert_fnc.base|)) (not (= |dll_create_generic_#in~insert_fnc.offset| |#funAddr~dll_insert_master.offset|)))} is VALID [2020-07-10 15:04:25,401 INFO L280 TraceCheckUtils]: 47: Hoare triple {1491#(or (not (= |#funAddr~dll_insert_master.base| |dll_create_generic_#in~insert_fnc.base|)) (not (= |dll_create_generic_#in~insert_fnc.offset| |#funAddr~dll_insert_master.offset|)))} assume true; {1491#(or (not (= |#funAddr~dll_insert_master.base| |dll_create_generic_#in~insert_fnc.base|)) (not (= |dll_create_generic_#in~insert_fnc.offset| |#funAddr~dll_insert_master.offset|)))} is VALID [2020-07-10 15:04:25,402 INFO L275 TraceCheckUtils]: 48: Hoare quadruple {1491#(or (not (= |#funAddr~dll_insert_master.base| |dll_create_generic_#in~insert_fnc.base|)) (not (= |dll_create_generic_#in~insert_fnc.offset| |#funAddr~dll_insert_master.offset|)))} {1430#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #492#return; {1373#false} is VALID [2020-07-10 15:04:25,403 INFO L280 TraceCheckUtils]: 49: Hoare triple {1373#false} #res.base, #res.offset := #t~ret20.base, #t~ret20.offset;havoc #t~ret20.base, #t~ret20.offset; {1373#false} is VALID [2020-07-10 15:04:25,403 INFO L280 TraceCheckUtils]: 50: Hoare triple {1373#false} assume true; {1373#false} is VALID [2020-07-10 15:04:25,403 INFO L275 TraceCheckUtils]: 51: Hoare quadruple {1373#false} {1372#true} #498#return; {1423#(not (= 0 |main_#t~ret45.base|))} is VALID [2020-07-10 15:04:25,404 INFO L280 TraceCheckUtils]: 52: Hoare triple {1423#(not (= 0 |main_#t~ret45.base|))} ~dll~1.base, ~dll~1.offset := #t~ret45.base, #t~ret45.offset;havoc #t~ret45.base, #t~ret45.offset; {1424#(not (= main_~dll~1.base 0))} is VALID [2020-07-10 15:04:25,405 INFO L263 TraceCheckUtils]: 53: Hoare triple {1424#(not (= main_~dll~1.base 0))} call inspect_full(~dll~1.base, ~dll~1.offset); {1425#(not (= 0 |inspect_full_#in~dll.base|))} is VALID [2020-07-10 15:04:25,405 INFO L280 TraceCheckUtils]: 54: Hoare triple {1425#(not (= 0 |inspect_full_#in~dll.base|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {1426#(not (= 0 inspect_full_~dll.base))} is VALID [2020-07-10 15:04:25,410 INFO L263 TraceCheckUtils]: 55: Hoare triple {1426#(not (= 0 inspect_full_~dll.base))} call inspect_base(~dll.base, ~dll.offset); {1427#(not (= 0 |inspect_base_#in~dll.base|))} is VALID [2020-07-10 15:04:25,411 INFO L280 TraceCheckUtils]: 56: Hoare triple {1427#(not (= 0 |inspect_base_#in~dll.base|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {1428#(not (= 0 inspect_base_~dll.base))} is VALID [2020-07-10 15:04:25,412 INFO L280 TraceCheckUtils]: 57: Hoare triple {1428#(not (= 0 inspect_base_~dll.base))} assume ~dll.base == 0 && ~dll.offset == 0; {1373#false} is VALID [2020-07-10 15:04:25,412 INFO L263 TraceCheckUtils]: 58: Hoare triple {1373#false} call fail(); {1373#false} is VALID [2020-07-10 15:04:25,412 INFO L280 TraceCheckUtils]: 59: Hoare triple {1373#false} assume !false; {1373#false} is VALID [2020-07-10 15:04:25,422 INFO L134 CoverageAnalysis]: Checked inductivity of 17 backedges. 0 proven. 3 refuted. 0 times theorem prover too weak. 14 trivial. 0 not checked. [2020-07-10 15:04:25,422 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1272749026] [2020-07-10 15:04:25,423 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [221071371] [2020-07-10 15:04:25,423 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 2 with z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 2 with z3 -smt2 -in SMTLIB2_COMPLIANT=true [2020-07-10 15:04:25,561 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 15:04:25,564 INFO L264 TraceCheckSpWp]: Trace formula consists of 302 conjuncts, 13 conjunts are in the unsatisfiable core [2020-07-10 15:04:25,590 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 15:04:25,598 INFO L287 TraceCheckSpWp]: Computing forward predicates... [2020-07-10 15:04:25,818 INFO L263 TraceCheckUtils]: 0: Hoare triple {1372#true} call ULTIMATE.init(); {1372#true} is VALID [2020-07-10 15:04:25,819 INFO L280 TraceCheckUtils]: 1: Hoare triple {1372#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];assume 0 < #StackHeapBarrier; {1372#true} is VALID [2020-07-10 15:04:25,819 INFO L280 TraceCheckUtils]: 2: Hoare triple {1372#true} assume true; {1372#true} is VALID [2020-07-10 15:04:25,819 INFO L275 TraceCheckUtils]: 3: Hoare quadruple {1372#true} {1372#true} #542#return; {1372#true} is VALID [2020-07-10 15:04:25,819 INFO L263 TraceCheckUtils]: 4: Hoare triple {1372#true} call #t~ret46 := main(); {1372#true} is VALID [2020-07-10 15:04:25,820 INFO L263 TraceCheckUtils]: 5: Hoare triple {1372#true} call #t~ret45.base, #t~ret45.offset := dll_create_master(); {1372#true} is VALID [2020-07-10 15:04:25,820 INFO L263 TraceCheckUtils]: 6: Hoare triple {1372#true} call #t~ret20.base, #t~ret20.offset := dll_create_generic(#funAddr~dll_insert_master.base, #funAddr~dll_insert_master.offset); {1372#true} is VALID [2020-07-10 15:04:25,821 INFO L280 TraceCheckUtils]: 7: Hoare triple {1372#true} ~insert_fnc.base, ~insert_fnc.offset := #in~insert_fnc.base, #in~insert_fnc.offset;call ~#dll~0.base, ~#dll~0.offset := #Ultimate.allocOnStack(4);call write~init~$Pointer$(0, 0, ~#dll~0.base, ~#dll~0.offset, 4); {1473#(and (= |dll_create_generic_#in~insert_fnc.offset| dll_create_generic_~insert_fnc.offset) (= dll_create_generic_~insert_fnc.base |dll_create_generic_#in~insert_fnc.base|))} is VALID [2020-07-10 15:04:25,821 INFO L263 TraceCheckUtils]: 8: Hoare triple {1473#(and (= |dll_create_generic_#in~insert_fnc.offset| dll_create_generic_~insert_fnc.offset) (= dll_create_generic_~insert_fnc.base |dll_create_generic_#in~insert_fnc.base|))} call ##fun~$Pointer$~TO~VOID(~#dll~0.base, ~#dll~0.offset, ~insert_fnc.base, ~insert_fnc.offset); {1372#true} is VALID [2020-07-10 15:04:25,821 INFO L280 TraceCheckUtils]: 9: Hoare triple {1372#true} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {1372#true} is VALID [2020-07-10 15:04:25,822 INFO L280 TraceCheckUtils]: 10: Hoare triple {1372#true} assume !(#in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset); {1509#(or (<= (+ |#funAddr~dll_insert_master.offset| 1) |##fun~$Pointer$~TO~VOID_#in~#fp.offset|) (<= (+ |#funAddr~dll_insert_master.base| 1) |##fun~$Pointer$~TO~VOID_#in~#fp.base|) (< |##fun~$Pointer$~TO~VOID_#in~#fp.base| |#funAddr~dll_insert_master.base|) (< |##fun~$Pointer$~TO~VOID_#in~#fp.offset| |#funAddr~dll_insert_master.offset|))} is VALID [2020-07-10 15:04:25,822 INFO L263 TraceCheckUtils]: 11: Hoare triple {1509#(or (<= (+ |#funAddr~dll_insert_master.offset| 1) |##fun~$Pointer$~TO~VOID_#in~#fp.offset|) (<= (+ |#funAddr~dll_insert_master.base| 1) |##fun~$Pointer$~TO~VOID_#in~#fp.base|) (< |##fun~$Pointer$~TO~VOID_#in~#fp.base| |#funAddr~dll_insert_master.base|) (< |##fun~$Pointer$~TO~VOID_#in~#fp.offset| |#funAddr~dll_insert_master.offset|))} call dll_insert_slave(#~9.base, #~9.offset); {1372#true} is VALID [2020-07-10 15:04:25,823 INFO L280 TraceCheckUtils]: 12: Hoare triple {1372#true} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {1372#true} is VALID [2020-07-10 15:04:25,823 INFO L263 TraceCheckUtils]: 13: Hoare triple {1372#true} call #t~ret4.base, #t~ret4.offset := alloc_or_die_slave(); {1372#true} is VALID [2020-07-10 15:04:25,823 INFO L280 TraceCheckUtils]: 14: Hoare triple {1372#true} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {1372#true} is VALID [2020-07-10 15:04:25,823 INFO L280 TraceCheckUtils]: 15: Hoare triple {1372#true} assume !(~ptr~0.base == 0 && ~ptr~0.offset == 0); {1372#true} is VALID [2020-07-10 15:04:25,823 INFO L280 TraceCheckUtils]: 16: Hoare triple {1372#true} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {1372#true} is VALID [2020-07-10 15:04:25,824 INFO L280 TraceCheckUtils]: 17: Hoare triple {1372#true} assume true; {1372#true} is VALID [2020-07-10 15:04:25,824 INFO L275 TraceCheckUtils]: 18: Hoare quadruple {1372#true} {1372#true} #490#return; {1372#true} is VALID [2020-07-10 15:04:25,824 INFO L280 TraceCheckUtils]: 19: Hoare triple {1372#true} ~item~0.base, ~item~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~0.base, ~next~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset;call write~$Pointer$(~next~0.base, ~next~0.offset, ~item~0.base, ~item~0.offset, 4); {1372#true} is VALID [2020-07-10 15:04:25,824 INFO L280 TraceCheckUtils]: 20: Hoare triple {1372#true} assume !(~next~0.base != 0 || ~next~0.offset != 0); {1372#true} is VALID [2020-07-10 15:04:25,824 INFO L280 TraceCheckUtils]: 21: Hoare triple {1372#true} call write~$Pointer$(~item~0.base, ~item~0.offset, ~dll.base, ~dll.offset, 4); {1372#true} is VALID [2020-07-10 15:04:25,824 INFO L280 TraceCheckUtils]: 22: Hoare triple {1372#true} assume true; {1372#true} is VALID [2020-07-10 15:04:25,826 INFO L275 TraceCheckUtils]: 23: Hoare quadruple {1372#true} {1509#(or (<= (+ |#funAddr~dll_insert_master.offset| 1) |##fun~$Pointer$~TO~VOID_#in~#fp.offset|) (<= (+ |#funAddr~dll_insert_master.base| 1) |##fun~$Pointer$~TO~VOID_#in~#fp.base|) (< |##fun~$Pointer$~TO~VOID_#in~#fp.base| |#funAddr~dll_insert_master.base|) (< |##fun~$Pointer$~TO~VOID_#in~#fp.offset| |#funAddr~dll_insert_master.offset|))} #514#return; {1509#(or (<= (+ |#funAddr~dll_insert_master.offset| 1) |##fun~$Pointer$~TO~VOID_#in~#fp.offset|) (<= (+ |#funAddr~dll_insert_master.base| 1) |##fun~$Pointer$~TO~VOID_#in~#fp.base|) (< |##fun~$Pointer$~TO~VOID_#in~#fp.base| |#funAddr~dll_insert_master.base|) (< |##fun~$Pointer$~TO~VOID_#in~#fp.offset| |#funAddr~dll_insert_master.offset|))} is VALID [2020-07-10 15:04:25,826 INFO L280 TraceCheckUtils]: 24: Hoare triple {1509#(or (<= (+ |#funAddr~dll_insert_master.offset| 1) |##fun~$Pointer$~TO~VOID_#in~#fp.offset|) (<= (+ |#funAddr~dll_insert_master.base| 1) |##fun~$Pointer$~TO~VOID_#in~#fp.base|) (< |##fun~$Pointer$~TO~VOID_#in~#fp.base| |#funAddr~dll_insert_master.base|) (< |##fun~$Pointer$~TO~VOID_#in~#fp.offset| |#funAddr~dll_insert_master.offset|))} assume true; {1509#(or (<= (+ |#funAddr~dll_insert_master.offset| 1) |##fun~$Pointer$~TO~VOID_#in~#fp.offset|) (<= (+ |#funAddr~dll_insert_master.base| 1) |##fun~$Pointer$~TO~VOID_#in~#fp.base|) (< |##fun~$Pointer$~TO~VOID_#in~#fp.base| |#funAddr~dll_insert_master.base|) (< |##fun~$Pointer$~TO~VOID_#in~#fp.offset| |#funAddr~dll_insert_master.offset|))} is VALID [2020-07-10 15:04:25,828 INFO L275 TraceCheckUtils]: 25: Hoare quadruple {1509#(or (<= (+ |#funAddr~dll_insert_master.offset| 1) |##fun~$Pointer$~TO~VOID_#in~#fp.offset|) (<= (+ |#funAddr~dll_insert_master.base| 1) |##fun~$Pointer$~TO~VOID_#in~#fp.base|) (< |##fun~$Pointer$~TO~VOID_#in~#fp.base| |#funAddr~dll_insert_master.base|) (< |##fun~$Pointer$~TO~VOID_#in~#fp.offset| |#funAddr~dll_insert_master.offset|))} {1473#(and (= |dll_create_generic_#in~insert_fnc.offset| dll_create_generic_~insert_fnc.offset) (= dll_create_generic_~insert_fnc.base |dll_create_generic_#in~insert_fnc.base|))} #534#return; {1491#(or (not (= |#funAddr~dll_insert_master.base| |dll_create_generic_#in~insert_fnc.base|)) (not (= |dll_create_generic_#in~insert_fnc.offset| |#funAddr~dll_insert_master.offset|)))} is VALID [2020-07-10 15:04:25,828 INFO L263 TraceCheckUtils]: 26: Hoare triple {1491#(or (not (= |#funAddr~dll_insert_master.base| |dll_create_generic_#in~insert_fnc.base|)) (not (= |dll_create_generic_#in~insert_fnc.offset| |#funAddr~dll_insert_master.offset|)))} call ##fun~$Pointer$~TO~VOID(~#dll~0.base, ~#dll~0.offset, ~insert_fnc.base, ~insert_fnc.offset); {1372#true} is VALID [2020-07-10 15:04:25,828 INFO L280 TraceCheckUtils]: 27: Hoare triple {1372#true} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {1372#true} is VALID [2020-07-10 15:04:25,828 INFO L280 TraceCheckUtils]: 28: Hoare triple {1372#true} assume !(#in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset); {1372#true} is VALID [2020-07-10 15:04:25,829 INFO L263 TraceCheckUtils]: 29: Hoare triple {1372#true} call dll_insert_slave(#~9.base, #~9.offset); {1372#true} is VALID [2020-07-10 15:04:25,829 INFO L280 TraceCheckUtils]: 30: Hoare triple {1372#true} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {1372#true} is VALID [2020-07-10 15:04:25,829 INFO L263 TraceCheckUtils]: 31: Hoare triple {1372#true} call #t~ret4.base, #t~ret4.offset := alloc_or_die_slave(); {1372#true} is VALID [2020-07-10 15:04:25,829 INFO L280 TraceCheckUtils]: 32: Hoare triple {1372#true} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {1372#true} is VALID [2020-07-10 15:04:25,829 INFO L280 TraceCheckUtils]: 33: Hoare triple {1372#true} assume !(~ptr~0.base == 0 && ~ptr~0.offset == 0); {1372#true} is VALID [2020-07-10 15:04:25,829 INFO L280 TraceCheckUtils]: 34: Hoare triple {1372#true} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {1372#true} is VALID [2020-07-10 15:04:25,830 INFO L280 TraceCheckUtils]: 35: Hoare triple {1372#true} assume true; {1372#true} is VALID [2020-07-10 15:04:25,830 INFO L275 TraceCheckUtils]: 36: Hoare quadruple {1372#true} {1372#true} #490#return; {1372#true} is VALID [2020-07-10 15:04:25,830 INFO L280 TraceCheckUtils]: 37: Hoare triple {1372#true} ~item~0.base, ~item~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~0.base, ~next~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset;call write~$Pointer$(~next~0.base, ~next~0.offset, ~item~0.base, ~item~0.offset, 4); {1372#true} is VALID [2020-07-10 15:04:25,830 INFO L280 TraceCheckUtils]: 38: Hoare triple {1372#true} assume !(~next~0.base != 0 || ~next~0.offset != 0); {1372#true} is VALID [2020-07-10 15:04:25,830 INFO L280 TraceCheckUtils]: 39: Hoare triple {1372#true} call write~$Pointer$(~item~0.base, ~item~0.offset, ~dll.base, ~dll.offset, 4); {1372#true} is VALID [2020-07-10 15:04:25,831 INFO L280 TraceCheckUtils]: 40: Hoare triple {1372#true} assume true; {1372#true} is VALID [2020-07-10 15:04:25,831 INFO L275 TraceCheckUtils]: 41: Hoare quadruple {1372#true} {1372#true} #514#return; {1372#true} is VALID [2020-07-10 15:04:25,831 INFO L280 TraceCheckUtils]: 42: Hoare triple {1372#true} assume true; {1372#true} is VALID [2020-07-10 15:04:25,832 INFO L275 TraceCheckUtils]: 43: Hoare quadruple {1372#true} {1491#(or (not (= |#funAddr~dll_insert_master.base| |dll_create_generic_#in~insert_fnc.base|)) (not (= |dll_create_generic_#in~insert_fnc.offset| |#funAddr~dll_insert_master.offset|)))} #536#return; {1491#(or (not (= |#funAddr~dll_insert_master.base| |dll_create_generic_#in~insert_fnc.base|)) (not (= |dll_create_generic_#in~insert_fnc.offset| |#funAddr~dll_insert_master.offset|)))} is VALID [2020-07-10 15:04:25,833 INFO L280 TraceCheckUtils]: 44: Hoare triple {1491#(or (not (= |#funAddr~dll_insert_master.base| |dll_create_generic_#in~insert_fnc.base|)) (not (= |dll_create_generic_#in~insert_fnc.offset| |#funAddr~dll_insert_master.offset|)))} assume -2147483648 <= #t~nondet8 && #t~nondet8 <= 2147483647; {1491#(or (not (= |#funAddr~dll_insert_master.base| |dll_create_generic_#in~insert_fnc.base|)) (not (= |dll_create_generic_#in~insert_fnc.offset| |#funAddr~dll_insert_master.offset|)))} is VALID [2020-07-10 15:04:25,833 INFO L280 TraceCheckUtils]: 45: Hoare triple {1491#(or (not (= |#funAddr~dll_insert_master.base| |dll_create_generic_#in~insert_fnc.base|)) (not (= |dll_create_generic_#in~insert_fnc.offset| |#funAddr~dll_insert_master.offset|)))} assume !(0 != #t~nondet8);havoc #t~nondet8; {1491#(or (not (= |#funAddr~dll_insert_master.base| |dll_create_generic_#in~insert_fnc.base|)) (not (= |dll_create_generic_#in~insert_fnc.offset| |#funAddr~dll_insert_master.offset|)))} is VALID [2020-07-10 15:04:25,834 INFO L280 TraceCheckUtils]: 46: Hoare triple {1491#(or (not (= |#funAddr~dll_insert_master.base| |dll_create_generic_#in~insert_fnc.base|)) (not (= |dll_create_generic_#in~insert_fnc.offset| |#funAddr~dll_insert_master.offset|)))} call #t~mem10.base, #t~mem10.offset := read~$Pointer$(~#dll~0.base, ~#dll~0.offset, 4);#res.base, #res.offset := #t~mem10.base, #t~mem10.offset;havoc #t~mem10.base, #t~mem10.offset;call ULTIMATE.dealloc(~#dll~0.base, ~#dll~0.offset);havoc ~#dll~0.base, ~#dll~0.offset; {1491#(or (not (= |#funAddr~dll_insert_master.base| |dll_create_generic_#in~insert_fnc.base|)) (not (= |dll_create_generic_#in~insert_fnc.offset| |#funAddr~dll_insert_master.offset|)))} is VALID [2020-07-10 15:04:25,834 INFO L280 TraceCheckUtils]: 47: Hoare triple {1491#(or (not (= |#funAddr~dll_insert_master.base| |dll_create_generic_#in~insert_fnc.base|)) (not (= |dll_create_generic_#in~insert_fnc.offset| |#funAddr~dll_insert_master.offset|)))} assume true; {1491#(or (not (= |#funAddr~dll_insert_master.base| |dll_create_generic_#in~insert_fnc.base|)) (not (= |dll_create_generic_#in~insert_fnc.offset| |#funAddr~dll_insert_master.offset|)))} is VALID [2020-07-10 15:04:25,835 INFO L275 TraceCheckUtils]: 48: Hoare quadruple {1491#(or (not (= |#funAddr~dll_insert_master.base| |dll_create_generic_#in~insert_fnc.base|)) (not (= |dll_create_generic_#in~insert_fnc.offset| |#funAddr~dll_insert_master.offset|)))} {1372#true} #492#return; {1373#false} is VALID [2020-07-10 15:04:25,836 INFO L280 TraceCheckUtils]: 49: Hoare triple {1373#false} #res.base, #res.offset := #t~ret20.base, #t~ret20.offset;havoc #t~ret20.base, #t~ret20.offset; {1373#false} is VALID [2020-07-10 15:04:25,836 INFO L280 TraceCheckUtils]: 50: Hoare triple {1373#false} assume true; {1373#false} is VALID [2020-07-10 15:04:25,836 INFO L275 TraceCheckUtils]: 51: Hoare quadruple {1373#false} {1372#true} #498#return; {1373#false} is VALID [2020-07-10 15:04:25,836 INFO L280 TraceCheckUtils]: 52: Hoare triple {1373#false} ~dll~1.base, ~dll~1.offset := #t~ret45.base, #t~ret45.offset;havoc #t~ret45.base, #t~ret45.offset; {1373#false} is VALID [2020-07-10 15:04:25,836 INFO L263 TraceCheckUtils]: 53: Hoare triple {1373#false} call inspect_full(~dll~1.base, ~dll~1.offset); {1373#false} is VALID [2020-07-10 15:04:25,837 INFO L280 TraceCheckUtils]: 54: Hoare triple {1373#false} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {1373#false} is VALID [2020-07-10 15:04:25,837 INFO L263 TraceCheckUtils]: 55: Hoare triple {1373#false} call inspect_base(~dll.base, ~dll.offset); {1373#false} is VALID [2020-07-10 15:04:25,837 INFO L280 TraceCheckUtils]: 56: Hoare triple {1373#false} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {1373#false} is VALID [2020-07-10 15:04:25,837 INFO L280 TraceCheckUtils]: 57: Hoare triple {1373#false} assume ~dll.base == 0 && ~dll.offset == 0; {1373#false} is VALID [2020-07-10 15:04:25,837 INFO L263 TraceCheckUtils]: 58: Hoare triple {1373#false} call fail(); {1373#false} is VALID [2020-07-10 15:04:25,838 INFO L280 TraceCheckUtils]: 59: Hoare triple {1373#false} assume !false; {1373#false} is VALID [2020-07-10 15:04:25,843 INFO L134 CoverageAnalysis]: Checked inductivity of 17 backedges. 0 proven. 3 refuted. 0 times theorem prover too weak. 14 trivial. 0 not checked. [2020-07-10 15:04:25,843 INFO L220 FreeRefinementEngine]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2020-07-10 15:04:25,844 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 5] total 13 [2020-07-10 15:04:25,845 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [972341996] [2020-07-10 15:04:25,846 INFO L78 Accepts]: Start accepts. Automaton has 13 states. Word has length 60 [2020-07-10 15:04:25,874 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-10 15:04:25,875 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 13 states. [2020-07-10 15:04:25,972 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 69 edges. 69 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-10 15:04:25,972 INFO L459 AbstractCegarLoop]: Interpolant automaton has 13 states [2020-07-10 15:04:25,973 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2020-07-10 15:04:25,973 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2020-07-10 15:04:25,973 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=23, Invalid=133, Unknown=0, NotChecked=0, Total=156 [2020-07-10 15:04:25,973 INFO L87 Difference]: Start difference. First operand 155 states and 184 transitions. Second operand 13 states. [2020-07-10 15:04:30,993 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-10 15:04:30,994 INFO L93 Difference]: Finished difference Result 327 states and 406 transitions. [2020-07-10 15:04:30,994 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2020-07-10 15:04:30,994 INFO L78 Accepts]: Start accepts. Automaton has 13 states. Word has length 60 [2020-07-10 15:04:30,994 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-10 15:04:30,994 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 13 states. [2020-07-10 15:04:31,009 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 406 transitions. [2020-07-10 15:04:31,010 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 13 states. [2020-07-10 15:04:31,023 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 406 transitions. [2020-07-10 15:04:31,023 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 9 states and 406 transitions. [2020-07-10 15:04:31,576 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 406 edges. 406 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-10 15:04:31,591 INFO L225 Difference]: With dead ends: 327 [2020-07-10 15:04:31,591 INFO L226 Difference]: Without dead ends: 179 [2020-07-10 15:04:31,595 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 93 GetRequests, 76 SyntacticMatches, 2 SemanticMatches, 15 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 4 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=43, Invalid=229, Unknown=0, NotChecked=0, Total=272 [2020-07-10 15:04:31,596 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 179 states. [2020-07-10 15:04:31,768 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 179 to 168. [2020-07-10 15:04:31,768 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-10 15:04:31,768 INFO L82 GeneralOperation]: Start isEquivalent. First operand 179 states. Second operand 168 states. [2020-07-10 15:04:31,769 INFO L74 IsIncluded]: Start isIncluded. First operand 179 states. Second operand 168 states. [2020-07-10 15:04:31,769 INFO L87 Difference]: Start difference. First operand 179 states. Second operand 168 states. [2020-07-10 15:04:31,777 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-10 15:04:31,777 INFO L93 Difference]: Finished difference Result 179 states and 215 transitions. [2020-07-10 15:04:31,778 INFO L276 IsEmpty]: Start isEmpty. Operand 179 states and 215 transitions. [2020-07-10 15:04:31,779 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-10 15:04:31,779 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-10 15:04:31,779 INFO L74 IsIncluded]: Start isIncluded. First operand 168 states. Second operand 179 states. [2020-07-10 15:04:31,779 INFO L87 Difference]: Start difference. First operand 168 states. Second operand 179 states. [2020-07-10 15:04:31,788 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-10 15:04:31,788 INFO L93 Difference]: Finished difference Result 179 states and 215 transitions. [2020-07-10 15:04:31,788 INFO L276 IsEmpty]: Start isEmpty. Operand 179 states and 215 transitions. [2020-07-10 15:04:31,789 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-10 15:04:31,790 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-10 15:04:31,790 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-10 15:04:31,790 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-10 15:04:31,790 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 168 states. [2020-07-10 15:04:31,797 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 168 states to 168 states and 199 transitions. [2020-07-10 15:04:31,797 INFO L78 Accepts]: Start accepts. Automaton has 168 states and 199 transitions. Word has length 60 [2020-07-10 15:04:31,798 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-10 15:04:31,798 INFO L479 AbstractCegarLoop]: Abstraction has 168 states and 199 transitions. [2020-07-10 15:04:31,798 INFO L480 AbstractCegarLoop]: Interpolant automaton has 13 states. [2020-07-10 15:04:31,798 INFO L276 IsEmpty]: Start isEmpty. Operand 168 states and 199 transitions. [2020-07-10 15:04:31,802 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 155 [2020-07-10 15:04:31,802 INFO L414 BasicCegarLoop]: Found error trace [2020-07-10 15:04:31,803 INFO L422 BasicCegarLoop]: trace histogram [6, 6, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 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] [2020-07-10 15:04:32,012 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 2 z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable1 [2020-07-10 15:04:32,013 INFO L427 AbstractCegarLoop]: === Iteration 3 === [failErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-10 15:04:32,014 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-10 15:04:32,014 INFO L82 PathProgramCache]: Analyzing trace with hash 586330229, now seen corresponding path program 1 times [2020-07-10 15:04:32,014 INFO L163 FreeRefinementEngine]: Executing refinement strategy CAMEL [2020-07-10 15:04:32,015 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1679160944] [2020-07-10 15:04:32,015 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-10 15:04:32,089 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 15:04:32,290 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 15:04:32,294 INFO L280 TraceCheckUtils]: 0: Hoare triple {2946#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];assume 0 < #StackHeapBarrier; {2795#true} is VALID [2020-07-10 15:04:32,294 INFO L280 TraceCheckUtils]: 1: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:32,294 INFO L275 TraceCheckUtils]: 2: Hoare quadruple {2795#true} {2795#true} #542#return; {2795#true} is VALID [2020-07-10 15:04:32,369 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 15:04:32,529 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 15:04:32,642 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 15:04:32,812 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 15:04:33,048 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 15:04:33,204 INFO L280 TraceCheckUtils]: 0: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc3.base, #t~malloc3.offset := #Ultimate.allocOnHeap(12);~ptr~1.base, ~ptr~1.offset := #t~malloc3.base, #t~malloc3.offset; {3329#(and (<= (+ alloc_or_die_master_~ptr~1.base 1) |#StackHeapBarrier|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:33,205 INFO L280 TraceCheckUtils]: 1: Hoare triple {3329#(and (<= (+ alloc_or_die_master_~ptr~1.base 1) |#StackHeapBarrier|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} assume !(~ptr~1.base == 0 && ~ptr~1.offset == 0); {3329#(and (<= (+ alloc_or_die_master_~ptr~1.base 1) |#StackHeapBarrier|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:33,209 INFO L280 TraceCheckUtils]: 2: Hoare triple {3329#(and (<= (+ alloc_or_die_master_~ptr~1.base 1) |#StackHeapBarrier|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call write~$Pointer$(0, 0, ~ptr~1.base, ~ptr~1.offset, 4);call write~$Pointer$(0, 0, ~ptr~1.base, 4 + ~ptr~1.offset, 4);call write~$Pointer$(0, 0, ~ptr~1.base, 8 + ~ptr~1.offset, 4);#res.base, #res.offset := ~ptr~1.base, ~ptr~1.offset; {3330#(and (= |#memory_$Pointer$.base| (store |old(#memory_$Pointer$.base)| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) (select |#memory_$Pointer$.base| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|)))) (or (<= (+ (@diff |old(#memory_$Pointer$.offset)| |#memory_$Pointer$.offset|) 1) |#StackHeapBarrier|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|)) (= (store |old(#memory_$Pointer$.offset)| (@diff |old(#memory_$Pointer$.offset)| |#memory_$Pointer$.offset|) (select |#memory_$Pointer$.offset| (@diff |old(#memory_$Pointer$.offset)| |#memory_$Pointer$.offset|))) |#memory_$Pointer$.offset|) (or (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (<= (+ (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) 1) |#StackHeapBarrier|)))} is VALID [2020-07-10 15:04:33,212 INFO L280 TraceCheckUtils]: 3: Hoare triple {3330#(and (= |#memory_$Pointer$.base| (store |old(#memory_$Pointer$.base)| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) (select |#memory_$Pointer$.base| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|)))) (or (<= (+ (@diff |old(#memory_$Pointer$.offset)| |#memory_$Pointer$.offset|) 1) |#StackHeapBarrier|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|)) (= (store |old(#memory_$Pointer$.offset)| (@diff |old(#memory_$Pointer$.offset)| |#memory_$Pointer$.offset|) (select |#memory_$Pointer$.offset| (@diff |old(#memory_$Pointer$.offset)| |#memory_$Pointer$.offset|))) |#memory_$Pointer$.offset|) (or (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (<= (+ (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) 1) |#StackHeapBarrier|)))} assume true; {3330#(and (= |#memory_$Pointer$.base| (store |old(#memory_$Pointer$.base)| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) (select |#memory_$Pointer$.base| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|)))) (or (<= (+ (@diff |old(#memory_$Pointer$.offset)| |#memory_$Pointer$.offset|) 1) |#StackHeapBarrier|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|)) (= (store |old(#memory_$Pointer$.offset)| (@diff |old(#memory_$Pointer$.offset)| |#memory_$Pointer$.offset|) (select |#memory_$Pointer$.offset| (@diff |old(#memory_$Pointer$.offset)| |#memory_$Pointer$.offset|))) |#memory_$Pointer$.offset|) (or (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (<= (+ (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) 1) |#StackHeapBarrier|)))} is VALID [2020-07-10 15:04:33,217 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {3330#(and (= |#memory_$Pointer$.base| (store |old(#memory_$Pointer$.base)| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) (select |#memory_$Pointer$.base| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|)))) (or (<= (+ (@diff |old(#memory_$Pointer$.offset)| |#memory_$Pointer$.offset|) 1) |#StackHeapBarrier|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|)) (= (store |old(#memory_$Pointer$.offset)| (@diff |old(#memory_$Pointer$.offset)| |#memory_$Pointer$.offset|) (select |#memory_$Pointer$.offset| (@diff |old(#memory_$Pointer$.offset)| |#memory_$Pointer$.offset|))) |#memory_$Pointer$.offset|) (or (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (<= (+ (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) 1) |#StackHeapBarrier|)))} {3274#(and (= dll_insert_master_~dll.offset |dll_insert_master_#in~dll.offset|) (= (select |#memory_$Pointer$.offset| dll_insert_master_~dll.base) (select |old(#memory_$Pointer$.offset)| dll_insert_master_~dll.base)) (= (select |#memory_$Pointer$.base| dll_insert_master_~dll.base) (select |old(#memory_$Pointer$.base)| dll_insert_master_~dll.base)) (= dll_insert_master_~dll.base |dll_insert_master_#in~dll.base|))} #494#return; {3280#(and (= dll_insert_master_~dll.offset |dll_insert_master_#in~dll.offset|) (or (= (select |#memory_$Pointer$.offset| dll_insert_master_~dll.base) (select |old(#memory_$Pointer$.offset)| dll_insert_master_~dll.base)) (<= (+ dll_insert_master_~dll.base 1) |#StackHeapBarrier|)) (or (= (select |#memory_$Pointer$.base| dll_insert_master_~dll.base) (select |old(#memory_$Pointer$.base)| dll_insert_master_~dll.base)) (<= (+ dll_insert_master_~dll.base 1) |#StackHeapBarrier|)) (= dll_insert_master_~dll.base |dll_insert_master_#in~dll.base|))} is VALID [2020-07-10 15:04:33,230 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 15:04:33,250 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 15:04:33,266 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 15:04:33,277 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 15:04:33,285 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 15:04:33,290 INFO L280 TraceCheckUtils]: 0: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {2795#true} is VALID [2020-07-10 15:04:33,291 INFO L280 TraceCheckUtils]: 1: Hoare triple {2795#true} assume !(~ptr~0.base == 0 && ~ptr~0.offset == 0); {2795#true} is VALID [2020-07-10 15:04:33,291 INFO L280 TraceCheckUtils]: 2: Hoare triple {2795#true} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {2795#true} is VALID [2020-07-10 15:04:33,292 INFO L280 TraceCheckUtils]: 3: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:33,292 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {2795#true} {2795#true} #490#return; {2795#true} is VALID [2020-07-10 15:04:33,293 INFO L280 TraceCheckUtils]: 0: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {2795#true} is VALID [2020-07-10 15:04:33,295 INFO L263 TraceCheckUtils]: 1: Hoare triple {2795#true} call #t~ret4.base, #t~ret4.offset := alloc_or_die_slave(); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:33,295 INFO L280 TraceCheckUtils]: 2: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {2795#true} is VALID [2020-07-10 15:04:33,296 INFO L280 TraceCheckUtils]: 3: Hoare triple {2795#true} assume !(~ptr~0.base == 0 && ~ptr~0.offset == 0); {2795#true} is VALID [2020-07-10 15:04:33,296 INFO L280 TraceCheckUtils]: 4: Hoare triple {2795#true} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {2795#true} is VALID [2020-07-10 15:04:33,296 INFO L280 TraceCheckUtils]: 5: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:33,296 INFO L275 TraceCheckUtils]: 6: Hoare quadruple {2795#true} {2795#true} #490#return; {2795#true} is VALID [2020-07-10 15:04:33,297 INFO L280 TraceCheckUtils]: 7: Hoare triple {2795#true} ~item~0.base, ~item~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~0.base, ~next~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset;call write~$Pointer$(~next~0.base, ~next~0.offset, ~item~0.base, ~item~0.offset, 4); {2795#true} is VALID [2020-07-10 15:04:33,297 INFO L280 TraceCheckUtils]: 8: Hoare triple {2795#true} assume !(~next~0.base != 0 || ~next~0.offset != 0); {2795#true} is VALID [2020-07-10 15:04:33,297 INFO L280 TraceCheckUtils]: 9: Hoare triple {2795#true} call write~$Pointer$(~item~0.base, ~item~0.offset, ~dll.base, ~dll.offset, 4); {2795#true} is VALID [2020-07-10 15:04:33,297 INFO L280 TraceCheckUtils]: 10: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:33,298 INFO L275 TraceCheckUtils]: 11: Hoare quadruple {2795#true} {2795#true} #514#return; {2795#true} is VALID [2020-07-10 15:04:33,298 INFO L280 TraceCheckUtils]: 0: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {2795#true} is VALID [2020-07-10 15:04:33,298 INFO L280 TraceCheckUtils]: 1: Hoare triple {2795#true} assume !(#in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset); {2795#true} is VALID [2020-07-10 15:04:33,300 INFO L263 TraceCheckUtils]: 2: Hoare triple {2795#true} call dll_insert_slave(#~9.base, #~9.offset); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:33,300 INFO L280 TraceCheckUtils]: 3: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {2795#true} is VALID [2020-07-10 15:04:33,301 INFO L263 TraceCheckUtils]: 4: Hoare triple {2795#true} call #t~ret4.base, #t~ret4.offset := alloc_or_die_slave(); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:33,301 INFO L280 TraceCheckUtils]: 5: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {2795#true} is VALID [2020-07-10 15:04:33,302 INFO L280 TraceCheckUtils]: 6: Hoare triple {2795#true} assume !(~ptr~0.base == 0 && ~ptr~0.offset == 0); {2795#true} is VALID [2020-07-10 15:04:33,302 INFO L280 TraceCheckUtils]: 7: Hoare triple {2795#true} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {2795#true} is VALID [2020-07-10 15:04:33,302 INFO L280 TraceCheckUtils]: 8: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:33,302 INFO L275 TraceCheckUtils]: 9: Hoare quadruple {2795#true} {2795#true} #490#return; {2795#true} is VALID [2020-07-10 15:04:33,303 INFO L280 TraceCheckUtils]: 10: Hoare triple {2795#true} ~item~0.base, ~item~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~0.base, ~next~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset;call write~$Pointer$(~next~0.base, ~next~0.offset, ~item~0.base, ~item~0.offset, 4); {2795#true} is VALID [2020-07-10 15:04:33,303 INFO L280 TraceCheckUtils]: 11: Hoare triple {2795#true} assume !(~next~0.base != 0 || ~next~0.offset != 0); {2795#true} is VALID [2020-07-10 15:04:33,303 INFO L280 TraceCheckUtils]: 12: Hoare triple {2795#true} call write~$Pointer$(~item~0.base, ~item~0.offset, ~dll.base, ~dll.offset, 4); {2795#true} is VALID [2020-07-10 15:04:33,303 INFO L280 TraceCheckUtils]: 13: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:33,304 INFO L275 TraceCheckUtils]: 14: Hoare quadruple {2795#true} {2795#true} #514#return; {2795#true} is VALID [2020-07-10 15:04:33,304 INFO L280 TraceCheckUtils]: 15: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:33,304 INFO L275 TraceCheckUtils]: 16: Hoare quadruple {2795#true} {2795#true} #534#return; {2795#true} is VALID [2020-07-10 15:04:33,306 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 15:04:33,316 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 15:04:33,324 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 15:04:33,330 INFO L280 TraceCheckUtils]: 0: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {2795#true} is VALID [2020-07-10 15:04:33,331 INFO L280 TraceCheckUtils]: 1: Hoare triple {2795#true} assume !(~ptr~0.base == 0 && ~ptr~0.offset == 0); {2795#true} is VALID [2020-07-10 15:04:33,331 INFO L280 TraceCheckUtils]: 2: Hoare triple {2795#true} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {2795#true} is VALID [2020-07-10 15:04:33,331 INFO L280 TraceCheckUtils]: 3: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:33,332 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {2795#true} {2795#true} #490#return; {2795#true} is VALID [2020-07-10 15:04:33,332 INFO L280 TraceCheckUtils]: 0: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {2795#true} is VALID [2020-07-10 15:04:33,334 INFO L263 TraceCheckUtils]: 1: Hoare triple {2795#true} call #t~ret4.base, #t~ret4.offset := alloc_or_die_slave(); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:33,334 INFO L280 TraceCheckUtils]: 2: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {2795#true} is VALID [2020-07-10 15:04:33,335 INFO L280 TraceCheckUtils]: 3: Hoare triple {2795#true} assume !(~ptr~0.base == 0 && ~ptr~0.offset == 0); {2795#true} is VALID [2020-07-10 15:04:33,335 INFO L280 TraceCheckUtils]: 4: Hoare triple {2795#true} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {2795#true} is VALID [2020-07-10 15:04:33,336 INFO L280 TraceCheckUtils]: 5: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:33,336 INFO L275 TraceCheckUtils]: 6: Hoare quadruple {2795#true} {2795#true} #490#return; {2795#true} is VALID [2020-07-10 15:04:33,336 INFO L280 TraceCheckUtils]: 7: Hoare triple {2795#true} ~item~0.base, ~item~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~0.base, ~next~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset;call write~$Pointer$(~next~0.base, ~next~0.offset, ~item~0.base, ~item~0.offset, 4); {2795#true} is VALID [2020-07-10 15:04:33,337 INFO L280 TraceCheckUtils]: 8: Hoare triple {2795#true} assume !(~next~0.base != 0 || ~next~0.offset != 0); {2795#true} is VALID [2020-07-10 15:04:33,337 INFO L280 TraceCheckUtils]: 9: Hoare triple {2795#true} call write~$Pointer$(~item~0.base, ~item~0.offset, ~dll.base, ~dll.offset, 4); {2795#true} is VALID [2020-07-10 15:04:33,338 INFO L280 TraceCheckUtils]: 10: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:33,338 INFO L275 TraceCheckUtils]: 11: Hoare quadruple {2795#true} {2795#true} #514#return; {2795#true} is VALID [2020-07-10 15:04:33,339 INFO L280 TraceCheckUtils]: 0: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {2795#true} is VALID [2020-07-10 15:04:33,339 INFO L280 TraceCheckUtils]: 1: Hoare triple {2795#true} assume !(#in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset); {2795#true} is VALID [2020-07-10 15:04:33,341 INFO L263 TraceCheckUtils]: 2: Hoare triple {2795#true} call dll_insert_slave(#~9.base, #~9.offset); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:33,341 INFO L280 TraceCheckUtils]: 3: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {2795#true} is VALID [2020-07-10 15:04:33,343 INFO L263 TraceCheckUtils]: 4: Hoare triple {2795#true} call #t~ret4.base, #t~ret4.offset := alloc_or_die_slave(); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:33,343 INFO L280 TraceCheckUtils]: 5: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {2795#true} is VALID [2020-07-10 15:04:33,343 INFO L280 TraceCheckUtils]: 6: Hoare triple {2795#true} assume !(~ptr~0.base == 0 && ~ptr~0.offset == 0); {2795#true} is VALID [2020-07-10 15:04:33,343 INFO L280 TraceCheckUtils]: 7: Hoare triple {2795#true} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {2795#true} is VALID [2020-07-10 15:04:33,344 INFO L280 TraceCheckUtils]: 8: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:33,344 INFO L275 TraceCheckUtils]: 9: Hoare quadruple {2795#true} {2795#true} #490#return; {2795#true} is VALID [2020-07-10 15:04:33,344 INFO L280 TraceCheckUtils]: 10: Hoare triple {2795#true} ~item~0.base, ~item~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~0.base, ~next~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset;call write~$Pointer$(~next~0.base, ~next~0.offset, ~item~0.base, ~item~0.offset, 4); {2795#true} is VALID [2020-07-10 15:04:33,344 INFO L280 TraceCheckUtils]: 11: Hoare triple {2795#true} assume !(~next~0.base != 0 || ~next~0.offset != 0); {2795#true} is VALID [2020-07-10 15:04:33,345 INFO L280 TraceCheckUtils]: 12: Hoare triple {2795#true} call write~$Pointer$(~item~0.base, ~item~0.offset, ~dll.base, ~dll.offset, 4); {2795#true} is VALID [2020-07-10 15:04:33,345 INFO L280 TraceCheckUtils]: 13: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:33,345 INFO L275 TraceCheckUtils]: 14: Hoare quadruple {2795#true} {2795#true} #514#return; {2795#true} is VALID [2020-07-10 15:04:33,345 INFO L280 TraceCheckUtils]: 15: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:33,346 INFO L275 TraceCheckUtils]: 16: Hoare quadruple {2795#true} {2795#true} #536#return; {2795#true} is VALID [2020-07-10 15:04:33,346 INFO L280 TraceCheckUtils]: 0: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~insert_fnc.base, ~insert_fnc.offset := #in~insert_fnc.base, #in~insert_fnc.offset;call ~#dll~0.base, ~#dll~0.offset := #Ultimate.allocOnStack(4);call write~init~$Pointer$(0, 0, ~#dll~0.base, ~#dll~0.offset, 4); {2795#true} is VALID [2020-07-10 15:04:33,348 INFO L263 TraceCheckUtils]: 1: Hoare triple {2795#true} call ##fun~$Pointer$~TO~VOID(~#dll~0.base, ~#dll~0.offset, ~insert_fnc.base, ~insert_fnc.offset); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:33,349 INFO L280 TraceCheckUtils]: 2: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {2795#true} is VALID [2020-07-10 15:04:33,349 INFO L280 TraceCheckUtils]: 3: Hoare triple {2795#true} assume !(#in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset); {2795#true} is VALID [2020-07-10 15:04:33,350 INFO L263 TraceCheckUtils]: 4: Hoare triple {2795#true} call dll_insert_slave(#~9.base, #~9.offset); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:33,350 INFO L280 TraceCheckUtils]: 5: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {2795#true} is VALID [2020-07-10 15:04:33,351 INFO L263 TraceCheckUtils]: 6: Hoare triple {2795#true} call #t~ret4.base, #t~ret4.offset := alloc_or_die_slave(); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:33,352 INFO L280 TraceCheckUtils]: 7: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {2795#true} is VALID [2020-07-10 15:04:33,352 INFO L280 TraceCheckUtils]: 8: Hoare triple {2795#true} assume !(~ptr~0.base == 0 && ~ptr~0.offset == 0); {2795#true} is VALID [2020-07-10 15:04:33,353 INFO L280 TraceCheckUtils]: 9: Hoare triple {2795#true} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {2795#true} is VALID [2020-07-10 15:04:33,353 INFO L280 TraceCheckUtils]: 10: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:33,353 INFO L275 TraceCheckUtils]: 11: Hoare quadruple {2795#true} {2795#true} #490#return; {2795#true} is VALID [2020-07-10 15:04:33,354 INFO L280 TraceCheckUtils]: 12: Hoare triple {2795#true} ~item~0.base, ~item~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~0.base, ~next~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset;call write~$Pointer$(~next~0.base, ~next~0.offset, ~item~0.base, ~item~0.offset, 4); {2795#true} is VALID [2020-07-10 15:04:33,354 INFO L280 TraceCheckUtils]: 13: Hoare triple {2795#true} assume !(~next~0.base != 0 || ~next~0.offset != 0); {2795#true} is VALID [2020-07-10 15:04:33,355 INFO L280 TraceCheckUtils]: 14: Hoare triple {2795#true} call write~$Pointer$(~item~0.base, ~item~0.offset, ~dll.base, ~dll.offset, 4); {2795#true} is VALID [2020-07-10 15:04:33,355 INFO L280 TraceCheckUtils]: 15: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:33,356 INFO L275 TraceCheckUtils]: 16: Hoare quadruple {2795#true} {2795#true} #514#return; {2795#true} is VALID [2020-07-10 15:04:33,356 INFO L280 TraceCheckUtils]: 17: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:33,356 INFO L275 TraceCheckUtils]: 18: Hoare quadruple {2795#true} {2795#true} #534#return; {2795#true} is VALID [2020-07-10 15:04:33,359 INFO L263 TraceCheckUtils]: 19: Hoare triple {2795#true} call ##fun~$Pointer$~TO~VOID(~#dll~0.base, ~#dll~0.offset, ~insert_fnc.base, ~insert_fnc.offset); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:33,360 INFO L280 TraceCheckUtils]: 20: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {2795#true} is VALID [2020-07-10 15:04:33,360 INFO L280 TraceCheckUtils]: 21: Hoare triple {2795#true} assume !(#in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset); {2795#true} is VALID [2020-07-10 15:04:33,362 INFO L263 TraceCheckUtils]: 22: Hoare triple {2795#true} call dll_insert_slave(#~9.base, #~9.offset); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:33,363 INFO L280 TraceCheckUtils]: 23: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {2795#true} is VALID [2020-07-10 15:04:33,364 INFO L263 TraceCheckUtils]: 24: Hoare triple {2795#true} call #t~ret4.base, #t~ret4.offset := alloc_or_die_slave(); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:33,364 INFO L280 TraceCheckUtils]: 25: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {2795#true} is VALID [2020-07-10 15:04:33,365 INFO L280 TraceCheckUtils]: 26: Hoare triple {2795#true} assume !(~ptr~0.base == 0 && ~ptr~0.offset == 0); {2795#true} is VALID [2020-07-10 15:04:33,365 INFO L280 TraceCheckUtils]: 27: Hoare triple {2795#true} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {2795#true} is VALID [2020-07-10 15:04:33,366 INFO L280 TraceCheckUtils]: 28: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:33,366 INFO L275 TraceCheckUtils]: 29: Hoare quadruple {2795#true} {2795#true} #490#return; {2795#true} is VALID [2020-07-10 15:04:33,366 INFO L280 TraceCheckUtils]: 30: Hoare triple {2795#true} ~item~0.base, ~item~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~0.base, ~next~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset;call write~$Pointer$(~next~0.base, ~next~0.offset, ~item~0.base, ~item~0.offset, 4); {2795#true} is VALID [2020-07-10 15:04:33,367 INFO L280 TraceCheckUtils]: 31: Hoare triple {2795#true} assume !(~next~0.base != 0 || ~next~0.offset != 0); {2795#true} is VALID [2020-07-10 15:04:33,367 INFO L280 TraceCheckUtils]: 32: Hoare triple {2795#true} call write~$Pointer$(~item~0.base, ~item~0.offset, ~dll.base, ~dll.offset, 4); {2795#true} is VALID [2020-07-10 15:04:33,368 INFO L280 TraceCheckUtils]: 33: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:33,368 INFO L275 TraceCheckUtils]: 34: Hoare quadruple {2795#true} {2795#true} #514#return; {2795#true} is VALID [2020-07-10 15:04:33,369 INFO L280 TraceCheckUtils]: 35: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:33,369 INFO L275 TraceCheckUtils]: 36: Hoare quadruple {2795#true} {2795#true} #536#return; {2795#true} is VALID [2020-07-10 15:04:33,369 INFO L280 TraceCheckUtils]: 37: Hoare triple {2795#true} assume -2147483648 <= #t~nondet8 && #t~nondet8 <= 2147483647; {2795#true} is VALID [2020-07-10 15:04:33,370 INFO L280 TraceCheckUtils]: 38: Hoare triple {2795#true} assume !(0 != #t~nondet8);havoc #t~nondet8; {2795#true} is VALID [2020-07-10 15:04:33,370 INFO L280 TraceCheckUtils]: 39: Hoare triple {2795#true} call #t~mem10.base, #t~mem10.offset := read~$Pointer$(~#dll~0.base, ~#dll~0.offset, 4);#res.base, #res.offset := #t~mem10.base, #t~mem10.offset;havoc #t~mem10.base, #t~mem10.offset;call ULTIMATE.dealloc(~#dll~0.base, ~#dll~0.offset);havoc ~#dll~0.base, ~#dll~0.offset; {2795#true} is VALID [2020-07-10 15:04:33,371 INFO L280 TraceCheckUtils]: 40: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:33,371 INFO L275 TraceCheckUtils]: 41: Hoare quadruple {2795#true} {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #540#return; {2795#true} is VALID [2020-07-10 15:04:33,378 INFO L263 TraceCheckUtils]: 0: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~ret11.base, #t~ret11.offset := dll_create_generic(#funAddr~dll_insert_slave.base, #funAddr~dll_insert_slave.offset); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:33,379 INFO L280 TraceCheckUtils]: 1: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~insert_fnc.base, ~insert_fnc.offset := #in~insert_fnc.base, #in~insert_fnc.offset;call ~#dll~0.base, ~#dll~0.offset := #Ultimate.allocOnStack(4);call write~init~$Pointer$(0, 0, ~#dll~0.base, ~#dll~0.offset, 4); {2795#true} is VALID [2020-07-10 15:04:33,381 INFO L263 TraceCheckUtils]: 2: Hoare triple {2795#true} call ##fun~$Pointer$~TO~VOID(~#dll~0.base, ~#dll~0.offset, ~insert_fnc.base, ~insert_fnc.offset); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:33,382 INFO L280 TraceCheckUtils]: 3: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {2795#true} is VALID [2020-07-10 15:04:33,382 INFO L280 TraceCheckUtils]: 4: Hoare triple {2795#true} assume !(#in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset); {2795#true} is VALID [2020-07-10 15:04:33,384 INFO L263 TraceCheckUtils]: 5: Hoare triple {2795#true} call dll_insert_slave(#~9.base, #~9.offset); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:33,385 INFO L280 TraceCheckUtils]: 6: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {2795#true} is VALID [2020-07-10 15:04:33,386 INFO L263 TraceCheckUtils]: 7: Hoare triple {2795#true} call #t~ret4.base, #t~ret4.offset := alloc_or_die_slave(); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:33,386 INFO L280 TraceCheckUtils]: 8: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {2795#true} is VALID [2020-07-10 15:04:33,387 INFO L280 TraceCheckUtils]: 9: Hoare triple {2795#true} assume !(~ptr~0.base == 0 && ~ptr~0.offset == 0); {2795#true} is VALID [2020-07-10 15:04:33,387 INFO L280 TraceCheckUtils]: 10: Hoare triple {2795#true} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {2795#true} is VALID [2020-07-10 15:04:33,388 INFO L280 TraceCheckUtils]: 11: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:33,388 INFO L275 TraceCheckUtils]: 12: Hoare quadruple {2795#true} {2795#true} #490#return; {2795#true} is VALID [2020-07-10 15:04:33,388 INFO L280 TraceCheckUtils]: 13: Hoare triple {2795#true} ~item~0.base, ~item~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~0.base, ~next~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset;call write~$Pointer$(~next~0.base, ~next~0.offset, ~item~0.base, ~item~0.offset, 4); {2795#true} is VALID [2020-07-10 15:04:33,389 INFO L280 TraceCheckUtils]: 14: Hoare triple {2795#true} assume !(~next~0.base != 0 || ~next~0.offset != 0); {2795#true} is VALID [2020-07-10 15:04:33,389 INFO L280 TraceCheckUtils]: 15: Hoare triple {2795#true} call write~$Pointer$(~item~0.base, ~item~0.offset, ~dll.base, ~dll.offset, 4); {2795#true} is VALID [2020-07-10 15:04:33,390 INFO L280 TraceCheckUtils]: 16: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:33,390 INFO L275 TraceCheckUtils]: 17: Hoare quadruple {2795#true} {2795#true} #514#return; {2795#true} is VALID [2020-07-10 15:04:33,390 INFO L280 TraceCheckUtils]: 18: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:33,391 INFO L275 TraceCheckUtils]: 19: Hoare quadruple {2795#true} {2795#true} #534#return; {2795#true} is VALID [2020-07-10 15:04:33,393 INFO L263 TraceCheckUtils]: 20: Hoare triple {2795#true} call ##fun~$Pointer$~TO~VOID(~#dll~0.base, ~#dll~0.offset, ~insert_fnc.base, ~insert_fnc.offset); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:33,393 INFO L280 TraceCheckUtils]: 21: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {2795#true} is VALID [2020-07-10 15:04:33,394 INFO L280 TraceCheckUtils]: 22: Hoare triple {2795#true} assume !(#in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset); {2795#true} is VALID [2020-07-10 15:04:33,396 INFO L263 TraceCheckUtils]: 23: Hoare triple {2795#true} call dll_insert_slave(#~9.base, #~9.offset); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:33,396 INFO L280 TraceCheckUtils]: 24: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {2795#true} is VALID [2020-07-10 15:04:33,398 INFO L263 TraceCheckUtils]: 25: Hoare triple {2795#true} call #t~ret4.base, #t~ret4.offset := alloc_or_die_slave(); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:33,398 INFO L280 TraceCheckUtils]: 26: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {2795#true} is VALID [2020-07-10 15:04:33,398 INFO L280 TraceCheckUtils]: 27: Hoare triple {2795#true} assume !(~ptr~0.base == 0 && ~ptr~0.offset == 0); {2795#true} is VALID [2020-07-10 15:04:33,399 INFO L280 TraceCheckUtils]: 28: Hoare triple {2795#true} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {2795#true} is VALID [2020-07-10 15:04:33,399 INFO L280 TraceCheckUtils]: 29: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:33,400 INFO L275 TraceCheckUtils]: 30: Hoare quadruple {2795#true} {2795#true} #490#return; {2795#true} is VALID [2020-07-10 15:04:33,400 INFO L280 TraceCheckUtils]: 31: Hoare triple {2795#true} ~item~0.base, ~item~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~0.base, ~next~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset;call write~$Pointer$(~next~0.base, ~next~0.offset, ~item~0.base, ~item~0.offset, 4); {2795#true} is VALID [2020-07-10 15:04:33,400 INFO L280 TraceCheckUtils]: 32: Hoare triple {2795#true} assume !(~next~0.base != 0 || ~next~0.offset != 0); {2795#true} is VALID [2020-07-10 15:04:33,401 INFO L280 TraceCheckUtils]: 33: Hoare triple {2795#true} call write~$Pointer$(~item~0.base, ~item~0.offset, ~dll.base, ~dll.offset, 4); {2795#true} is VALID [2020-07-10 15:04:33,401 INFO L280 TraceCheckUtils]: 34: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:33,401 INFO L275 TraceCheckUtils]: 35: Hoare quadruple {2795#true} {2795#true} #514#return; {2795#true} is VALID [2020-07-10 15:04:33,402 INFO L280 TraceCheckUtils]: 36: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:33,402 INFO L275 TraceCheckUtils]: 37: Hoare quadruple {2795#true} {2795#true} #536#return; {2795#true} is VALID [2020-07-10 15:04:33,403 INFO L280 TraceCheckUtils]: 38: Hoare triple {2795#true} assume -2147483648 <= #t~nondet8 && #t~nondet8 <= 2147483647; {2795#true} is VALID [2020-07-10 15:04:33,403 INFO L280 TraceCheckUtils]: 39: Hoare triple {2795#true} assume !(0 != #t~nondet8);havoc #t~nondet8; {2795#true} is VALID [2020-07-10 15:04:33,403 INFO L280 TraceCheckUtils]: 40: Hoare triple {2795#true} call #t~mem10.base, #t~mem10.offset := read~$Pointer$(~#dll~0.base, ~#dll~0.offset, 4);#res.base, #res.offset := #t~mem10.base, #t~mem10.offset;havoc #t~mem10.base, #t~mem10.offset;call ULTIMATE.dealloc(~#dll~0.base, ~#dll~0.offset);havoc ~#dll~0.base, ~#dll~0.offset; {2795#true} is VALID [2020-07-10 15:04:33,404 INFO L280 TraceCheckUtils]: 41: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:33,404 INFO L275 TraceCheckUtils]: 42: Hoare quadruple {2795#true} {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #540#return; {2795#true} is VALID [2020-07-10 15:04:33,405 INFO L280 TraceCheckUtils]: 43: Hoare triple {2795#true} #res.base, #res.offset := #t~ret11.base, #t~ret11.offset;havoc #t~ret11.base, #t~ret11.offset; {2795#true} is VALID [2020-07-10 15:04:33,405 INFO L280 TraceCheckUtils]: 44: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:33,407 INFO L275 TraceCheckUtils]: 45: Hoare quadruple {2795#true} {3282#(or (not (= (select (select |old(#memory_$Pointer$.offset)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|) 0)) (not (= 0 (select (select |old(#memory_$Pointer$.base)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|))) (<= (+ |dll_insert_master_#in~dll.base| 1) |#StackHeapBarrier|))} #496#return; {3282#(or (not (= (select (select |old(#memory_$Pointer$.offset)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|) 0)) (not (= 0 (select (select |old(#memory_$Pointer$.base)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|))) (<= (+ |dll_insert_master_#in~dll.base| 1) |#StackHeapBarrier|))} is VALID [2020-07-10 15:04:33,415 INFO L280 TraceCheckUtils]: 0: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {3274#(and (= dll_insert_master_~dll.offset |dll_insert_master_#in~dll.offset|) (= (select |#memory_$Pointer$.offset| dll_insert_master_~dll.base) (select |old(#memory_$Pointer$.offset)| dll_insert_master_~dll.base)) (= (select |#memory_$Pointer$.base| dll_insert_master_~dll.base) (select |old(#memory_$Pointer$.base)| dll_insert_master_~dll.base)) (= dll_insert_master_~dll.base |dll_insert_master_#in~dll.base|))} is VALID [2020-07-10 15:04:33,417 INFO L263 TraceCheckUtils]: 1: Hoare triple {3274#(and (= dll_insert_master_~dll.offset |dll_insert_master_#in~dll.offset|) (= (select |#memory_$Pointer$.offset| dll_insert_master_~dll.base) (select |old(#memory_$Pointer$.offset)| dll_insert_master_~dll.base)) (= (select |#memory_$Pointer$.base| dll_insert_master_~dll.base) (select |old(#memory_$Pointer$.base)| dll_insert_master_~dll.base)) (= dll_insert_master_~dll.base |dll_insert_master_#in~dll.base|))} call #t~ret17.base, #t~ret17.offset := alloc_or_die_master(); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:33,419 INFO L280 TraceCheckUtils]: 2: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc3.base, #t~malloc3.offset := #Ultimate.allocOnHeap(12);~ptr~1.base, ~ptr~1.offset := #t~malloc3.base, #t~malloc3.offset; {3329#(and (<= (+ alloc_or_die_master_~ptr~1.base 1) |#StackHeapBarrier|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:33,421 INFO L280 TraceCheckUtils]: 3: Hoare triple {3329#(and (<= (+ alloc_or_die_master_~ptr~1.base 1) |#StackHeapBarrier|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} assume !(~ptr~1.base == 0 && ~ptr~1.offset == 0); {3329#(and (<= (+ alloc_or_die_master_~ptr~1.base 1) |#StackHeapBarrier|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:33,425 INFO L280 TraceCheckUtils]: 4: Hoare triple {3329#(and (<= (+ alloc_or_die_master_~ptr~1.base 1) |#StackHeapBarrier|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call write~$Pointer$(0, 0, ~ptr~1.base, ~ptr~1.offset, 4);call write~$Pointer$(0, 0, ~ptr~1.base, 4 + ~ptr~1.offset, 4);call write~$Pointer$(0, 0, ~ptr~1.base, 8 + ~ptr~1.offset, 4);#res.base, #res.offset := ~ptr~1.base, ~ptr~1.offset; {3330#(and (= |#memory_$Pointer$.base| (store |old(#memory_$Pointer$.base)| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) (select |#memory_$Pointer$.base| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|)))) (or (<= (+ (@diff |old(#memory_$Pointer$.offset)| |#memory_$Pointer$.offset|) 1) |#StackHeapBarrier|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|)) (= (store |old(#memory_$Pointer$.offset)| (@diff |old(#memory_$Pointer$.offset)| |#memory_$Pointer$.offset|) (select |#memory_$Pointer$.offset| (@diff |old(#memory_$Pointer$.offset)| |#memory_$Pointer$.offset|))) |#memory_$Pointer$.offset|) (or (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (<= (+ (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) 1) |#StackHeapBarrier|)))} is VALID [2020-07-10 15:04:33,427 INFO L280 TraceCheckUtils]: 5: Hoare triple {3330#(and (= |#memory_$Pointer$.base| (store |old(#memory_$Pointer$.base)| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) (select |#memory_$Pointer$.base| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|)))) (or (<= (+ (@diff |old(#memory_$Pointer$.offset)| |#memory_$Pointer$.offset|) 1) |#StackHeapBarrier|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|)) (= (store |old(#memory_$Pointer$.offset)| (@diff |old(#memory_$Pointer$.offset)| |#memory_$Pointer$.offset|) (select |#memory_$Pointer$.offset| (@diff |old(#memory_$Pointer$.offset)| |#memory_$Pointer$.offset|))) |#memory_$Pointer$.offset|) (or (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (<= (+ (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) 1) |#StackHeapBarrier|)))} assume true; {3330#(and (= |#memory_$Pointer$.base| (store |old(#memory_$Pointer$.base)| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) (select |#memory_$Pointer$.base| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|)))) (or (<= (+ (@diff |old(#memory_$Pointer$.offset)| |#memory_$Pointer$.offset|) 1) |#StackHeapBarrier|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|)) (= (store |old(#memory_$Pointer$.offset)| (@diff |old(#memory_$Pointer$.offset)| |#memory_$Pointer$.offset|) (select |#memory_$Pointer$.offset| (@diff |old(#memory_$Pointer$.offset)| |#memory_$Pointer$.offset|))) |#memory_$Pointer$.offset|) (or (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (<= (+ (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) 1) |#StackHeapBarrier|)))} is VALID [2020-07-10 15:04:33,433 INFO L275 TraceCheckUtils]: 6: Hoare quadruple {3330#(and (= |#memory_$Pointer$.base| (store |old(#memory_$Pointer$.base)| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) (select |#memory_$Pointer$.base| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|)))) (or (<= (+ (@diff |old(#memory_$Pointer$.offset)| |#memory_$Pointer$.offset|) 1) |#StackHeapBarrier|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|)) (= (store |old(#memory_$Pointer$.offset)| (@diff |old(#memory_$Pointer$.offset)| |#memory_$Pointer$.offset|) (select |#memory_$Pointer$.offset| (@diff |old(#memory_$Pointer$.offset)| |#memory_$Pointer$.offset|))) |#memory_$Pointer$.offset|) (or (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (<= (+ (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) 1) |#StackHeapBarrier|)))} {3274#(and (= dll_insert_master_~dll.offset |dll_insert_master_#in~dll.offset|) (= (select |#memory_$Pointer$.offset| dll_insert_master_~dll.base) (select |old(#memory_$Pointer$.offset)| dll_insert_master_~dll.base)) (= (select |#memory_$Pointer$.base| dll_insert_master_~dll.base) (select |old(#memory_$Pointer$.base)| dll_insert_master_~dll.base)) (= dll_insert_master_~dll.base |dll_insert_master_#in~dll.base|))} #494#return; {3280#(and (= dll_insert_master_~dll.offset |dll_insert_master_#in~dll.offset|) (or (= (select |#memory_$Pointer$.offset| dll_insert_master_~dll.base) (select |old(#memory_$Pointer$.offset)| dll_insert_master_~dll.base)) (<= (+ dll_insert_master_~dll.base 1) |#StackHeapBarrier|)) (or (= (select |#memory_$Pointer$.base| dll_insert_master_~dll.base) (select |old(#memory_$Pointer$.base)| dll_insert_master_~dll.base)) (<= (+ dll_insert_master_~dll.base 1) |#StackHeapBarrier|)) (= dll_insert_master_~dll.base |dll_insert_master_#in~dll.base|))} is VALID [2020-07-10 15:04:33,435 INFO L280 TraceCheckUtils]: 7: Hoare triple {3280#(and (= dll_insert_master_~dll.offset |dll_insert_master_#in~dll.offset|) (or (= (select |#memory_$Pointer$.offset| dll_insert_master_~dll.base) (select |old(#memory_$Pointer$.offset)| dll_insert_master_~dll.base)) (<= (+ dll_insert_master_~dll.base 1) |#StackHeapBarrier|)) (or (= (select |#memory_$Pointer$.base| dll_insert_master_~dll.base) (select |old(#memory_$Pointer$.base)| dll_insert_master_~dll.base)) (<= (+ dll_insert_master_~dll.base 1) |#StackHeapBarrier|)) (= dll_insert_master_~dll.base |dll_insert_master_#in~dll.base|))} ~item~1.base, ~item~1.offset := #t~ret17.base, #t~ret17.offset;havoc #t~ret17.base, #t~ret17.offset;call #t~mem18.base, #t~mem18.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~3.base, ~next~3.offset := #t~mem18.base, #t~mem18.offset;havoc #t~mem18.base, #t~mem18.offset;call write~$Pointer$(~next~3.base, ~next~3.offset, ~item~1.base, ~item~1.offset, 4); {3281#(or (<= (+ |dll_insert_master_#in~dll.base| 1) |#StackHeapBarrier|) (and (= dll_insert_master_~next~3.base (select (select |old(#memory_$Pointer$.base)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|)) (= (select (select |old(#memory_$Pointer$.offset)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|) dll_insert_master_~next~3.offset)))} is VALID [2020-07-10 15:04:33,437 INFO L280 TraceCheckUtils]: 8: Hoare triple {3281#(or (<= (+ |dll_insert_master_#in~dll.base| 1) |#StackHeapBarrier|) (and (= dll_insert_master_~next~3.base (select (select |old(#memory_$Pointer$.base)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|)) (= (select (select |old(#memory_$Pointer$.offset)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|) dll_insert_master_~next~3.offset)))} assume ~next~3.base != 0 || ~next~3.offset != 0;call write~$Pointer$(~item~1.base, ~item~1.offset, ~next~3.base, 4 + ~next~3.offset, 4); {3282#(or (not (= (select (select |old(#memory_$Pointer$.offset)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|) 0)) (not (= 0 (select (select |old(#memory_$Pointer$.base)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|))) (<= (+ |dll_insert_master_#in~dll.base| 1) |#StackHeapBarrier|))} is VALID [2020-07-10 15:04:33,439 INFO L263 TraceCheckUtils]: 9: Hoare triple {3282#(or (not (= (select (select |old(#memory_$Pointer$.offset)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|) 0)) (not (= 0 (select (select |old(#memory_$Pointer$.base)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|))) (<= (+ |dll_insert_master_#in~dll.base| 1) |#StackHeapBarrier|))} call #t~ret19.base, #t~ret19.offset := dll_create_slave(); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:33,441 INFO L263 TraceCheckUtils]: 10: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~ret11.base, #t~ret11.offset := dll_create_generic(#funAddr~dll_insert_slave.base, #funAddr~dll_insert_slave.offset); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:33,441 INFO L280 TraceCheckUtils]: 11: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~insert_fnc.base, ~insert_fnc.offset := #in~insert_fnc.base, #in~insert_fnc.offset;call ~#dll~0.base, ~#dll~0.offset := #Ultimate.allocOnStack(4);call write~init~$Pointer$(0, 0, ~#dll~0.base, ~#dll~0.offset, 4); {2795#true} is VALID [2020-07-10 15:04:33,444 INFO L263 TraceCheckUtils]: 12: Hoare triple {2795#true} call ##fun~$Pointer$~TO~VOID(~#dll~0.base, ~#dll~0.offset, ~insert_fnc.base, ~insert_fnc.offset); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:33,444 INFO L280 TraceCheckUtils]: 13: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {2795#true} is VALID [2020-07-10 15:04:33,444 INFO L280 TraceCheckUtils]: 14: Hoare triple {2795#true} assume !(#in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset); {2795#true} is VALID [2020-07-10 15:04:33,446 INFO L263 TraceCheckUtils]: 15: Hoare triple {2795#true} call dll_insert_slave(#~9.base, #~9.offset); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:33,446 INFO L280 TraceCheckUtils]: 16: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {2795#true} is VALID [2020-07-10 15:04:33,447 INFO L263 TraceCheckUtils]: 17: Hoare triple {2795#true} call #t~ret4.base, #t~ret4.offset := alloc_or_die_slave(); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:33,447 INFO L280 TraceCheckUtils]: 18: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {2795#true} is VALID [2020-07-10 15:04:33,447 INFO L280 TraceCheckUtils]: 19: Hoare triple {2795#true} assume !(~ptr~0.base == 0 && ~ptr~0.offset == 0); {2795#true} is VALID [2020-07-10 15:04:33,448 INFO L280 TraceCheckUtils]: 20: Hoare triple {2795#true} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {2795#true} is VALID [2020-07-10 15:04:33,448 INFO L280 TraceCheckUtils]: 21: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:33,448 INFO L275 TraceCheckUtils]: 22: Hoare quadruple {2795#true} {2795#true} #490#return; {2795#true} is VALID [2020-07-10 15:04:33,448 INFO L280 TraceCheckUtils]: 23: Hoare triple {2795#true} ~item~0.base, ~item~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~0.base, ~next~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset;call write~$Pointer$(~next~0.base, ~next~0.offset, ~item~0.base, ~item~0.offset, 4); {2795#true} is VALID [2020-07-10 15:04:33,448 INFO L280 TraceCheckUtils]: 24: Hoare triple {2795#true} assume !(~next~0.base != 0 || ~next~0.offset != 0); {2795#true} is VALID [2020-07-10 15:04:33,449 INFO L280 TraceCheckUtils]: 25: Hoare triple {2795#true} call write~$Pointer$(~item~0.base, ~item~0.offset, ~dll.base, ~dll.offset, 4); {2795#true} is VALID [2020-07-10 15:04:33,449 INFO L280 TraceCheckUtils]: 26: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:33,449 INFO L275 TraceCheckUtils]: 27: Hoare quadruple {2795#true} {2795#true} #514#return; {2795#true} is VALID [2020-07-10 15:04:33,449 INFO L280 TraceCheckUtils]: 28: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:33,449 INFO L275 TraceCheckUtils]: 29: Hoare quadruple {2795#true} {2795#true} #534#return; {2795#true} is VALID [2020-07-10 15:04:33,451 INFO L263 TraceCheckUtils]: 30: Hoare triple {2795#true} call ##fun~$Pointer$~TO~VOID(~#dll~0.base, ~#dll~0.offset, ~insert_fnc.base, ~insert_fnc.offset); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:33,452 INFO L280 TraceCheckUtils]: 31: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {2795#true} is VALID [2020-07-10 15:04:33,452 INFO L280 TraceCheckUtils]: 32: Hoare triple {2795#true} assume !(#in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset); {2795#true} is VALID [2020-07-10 15:04:33,453 INFO L263 TraceCheckUtils]: 33: Hoare triple {2795#true} call dll_insert_slave(#~9.base, #~9.offset); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:33,454 INFO L280 TraceCheckUtils]: 34: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {2795#true} is VALID [2020-07-10 15:04:33,455 INFO L263 TraceCheckUtils]: 35: Hoare triple {2795#true} call #t~ret4.base, #t~ret4.offset := alloc_or_die_slave(); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:33,455 INFO L280 TraceCheckUtils]: 36: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {2795#true} is VALID [2020-07-10 15:04:33,455 INFO L280 TraceCheckUtils]: 37: Hoare triple {2795#true} assume !(~ptr~0.base == 0 && ~ptr~0.offset == 0); {2795#true} is VALID [2020-07-10 15:04:33,456 INFO L280 TraceCheckUtils]: 38: Hoare triple {2795#true} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {2795#true} is VALID [2020-07-10 15:04:33,456 INFO L280 TraceCheckUtils]: 39: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:33,456 INFO L275 TraceCheckUtils]: 40: Hoare quadruple {2795#true} {2795#true} #490#return; {2795#true} is VALID [2020-07-10 15:04:33,457 INFO L280 TraceCheckUtils]: 41: Hoare triple {2795#true} ~item~0.base, ~item~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~0.base, ~next~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset;call write~$Pointer$(~next~0.base, ~next~0.offset, ~item~0.base, ~item~0.offset, 4); {2795#true} is VALID [2020-07-10 15:04:33,457 INFO L280 TraceCheckUtils]: 42: Hoare triple {2795#true} assume !(~next~0.base != 0 || ~next~0.offset != 0); {2795#true} is VALID [2020-07-10 15:04:33,457 INFO L280 TraceCheckUtils]: 43: Hoare triple {2795#true} call write~$Pointer$(~item~0.base, ~item~0.offset, ~dll.base, ~dll.offset, 4); {2795#true} is VALID [2020-07-10 15:04:33,458 INFO L280 TraceCheckUtils]: 44: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:33,458 INFO L275 TraceCheckUtils]: 45: Hoare quadruple {2795#true} {2795#true} #514#return; {2795#true} is VALID [2020-07-10 15:04:33,458 INFO L280 TraceCheckUtils]: 46: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:33,458 INFO L275 TraceCheckUtils]: 47: Hoare quadruple {2795#true} {2795#true} #536#return; {2795#true} is VALID [2020-07-10 15:04:33,459 INFO L280 TraceCheckUtils]: 48: Hoare triple {2795#true} assume -2147483648 <= #t~nondet8 && #t~nondet8 <= 2147483647; {2795#true} is VALID [2020-07-10 15:04:33,459 INFO L280 TraceCheckUtils]: 49: Hoare triple {2795#true} assume !(0 != #t~nondet8);havoc #t~nondet8; {2795#true} is VALID [2020-07-10 15:04:33,459 INFO L280 TraceCheckUtils]: 50: Hoare triple {2795#true} call #t~mem10.base, #t~mem10.offset := read~$Pointer$(~#dll~0.base, ~#dll~0.offset, 4);#res.base, #res.offset := #t~mem10.base, #t~mem10.offset;havoc #t~mem10.base, #t~mem10.offset;call ULTIMATE.dealloc(~#dll~0.base, ~#dll~0.offset);havoc ~#dll~0.base, ~#dll~0.offset; {2795#true} is VALID [2020-07-10 15:04:33,460 INFO L280 TraceCheckUtils]: 51: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:33,460 INFO L275 TraceCheckUtils]: 52: Hoare quadruple {2795#true} {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #540#return; {2795#true} is VALID [2020-07-10 15:04:33,460 INFO L280 TraceCheckUtils]: 53: Hoare triple {2795#true} #res.base, #res.offset := #t~ret11.base, #t~ret11.offset;havoc #t~ret11.base, #t~ret11.offset; {2795#true} is VALID [2020-07-10 15:04:33,460 INFO L280 TraceCheckUtils]: 54: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:33,462 INFO L275 TraceCheckUtils]: 55: Hoare quadruple {2795#true} {3282#(or (not (= (select (select |old(#memory_$Pointer$.offset)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|) 0)) (not (= 0 (select (select |old(#memory_$Pointer$.base)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|))) (<= (+ |dll_insert_master_#in~dll.base| 1) |#StackHeapBarrier|))} #496#return; {3282#(or (not (= (select (select |old(#memory_$Pointer$.offset)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|) 0)) (not (= 0 (select (select |old(#memory_$Pointer$.base)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|))) (<= (+ |dll_insert_master_#in~dll.base| 1) |#StackHeapBarrier|))} is VALID [2020-07-10 15:04:33,463 INFO L280 TraceCheckUtils]: 56: Hoare triple {3282#(or (not (= (select (select |old(#memory_$Pointer$.offset)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|) 0)) (not (= 0 (select (select |old(#memory_$Pointer$.base)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|))) (<= (+ |dll_insert_master_#in~dll.base| 1) |#StackHeapBarrier|))} call write~$Pointer$(#t~ret19.base, #t~ret19.offset, ~item~1.base, 8 + ~item~1.offset, 4);havoc #t~ret19.base, #t~ret19.offset;call write~$Pointer$(~item~1.base, ~item~1.offset, ~dll.base, ~dll.offset, 4); {3282#(or (not (= (select (select |old(#memory_$Pointer$.offset)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|) 0)) (not (= 0 (select (select |old(#memory_$Pointer$.base)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|))) (<= (+ |dll_insert_master_#in~dll.base| 1) |#StackHeapBarrier|))} is VALID [2020-07-10 15:04:33,464 INFO L280 TraceCheckUtils]: 57: Hoare triple {3282#(or (not (= (select (select |old(#memory_$Pointer$.offset)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|) 0)) (not (= 0 (select (select |old(#memory_$Pointer$.base)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|))) (<= (+ |dll_insert_master_#in~dll.base| 1) |#StackHeapBarrier|))} assume true; {3282#(or (not (= (select (select |old(#memory_$Pointer$.offset)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|) 0)) (not (= 0 (select (select |old(#memory_$Pointer$.base)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|))) (<= (+ |dll_insert_master_#in~dll.base| 1) |#StackHeapBarrier|))} is VALID [2020-07-10 15:04:33,466 INFO L275 TraceCheckUtils]: 58: Hoare quadruple {3282#(or (not (= (select (select |old(#memory_$Pointer$.offset)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|) 0)) (not (= 0 (select (select |old(#memory_$Pointer$.base)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|))) (<= (+ |dll_insert_master_#in~dll.base| 1) |#StackHeapBarrier|))} {3213#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #512#return; {3273#(or (not (= 0 (select (select |old(#memory_$Pointer$.base)| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|))) (<= (+ |##fun~$Pointer$~TO~VOID_#in~9.base| 1) |#StackHeapBarrier|) (not (= 0 (select (select |old(#memory_$Pointer$.offset)| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|))))} is VALID [2020-07-10 15:04:33,483 INFO L280 TraceCheckUtils]: 0: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {3213#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:33,485 INFO L280 TraceCheckUtils]: 1: Hoare triple {3213#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} assume #in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset; {3213#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:33,487 INFO L263 TraceCheckUtils]: 2: Hoare triple {3213#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call dll_insert_master(#~9.base, #~9.offset); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:33,489 INFO L280 TraceCheckUtils]: 3: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {3274#(and (= dll_insert_master_~dll.offset |dll_insert_master_#in~dll.offset|) (= (select |#memory_$Pointer$.offset| dll_insert_master_~dll.base) (select |old(#memory_$Pointer$.offset)| dll_insert_master_~dll.base)) (= (select |#memory_$Pointer$.base| dll_insert_master_~dll.base) (select |old(#memory_$Pointer$.base)| dll_insert_master_~dll.base)) (= dll_insert_master_~dll.base |dll_insert_master_#in~dll.base|))} is VALID [2020-07-10 15:04:33,491 INFO L263 TraceCheckUtils]: 4: Hoare triple {3274#(and (= dll_insert_master_~dll.offset |dll_insert_master_#in~dll.offset|) (= (select |#memory_$Pointer$.offset| dll_insert_master_~dll.base) (select |old(#memory_$Pointer$.offset)| dll_insert_master_~dll.base)) (= (select |#memory_$Pointer$.base| dll_insert_master_~dll.base) (select |old(#memory_$Pointer$.base)| dll_insert_master_~dll.base)) (= dll_insert_master_~dll.base |dll_insert_master_#in~dll.base|))} call #t~ret17.base, #t~ret17.offset := alloc_or_die_master(); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:33,493 INFO L280 TraceCheckUtils]: 5: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc3.base, #t~malloc3.offset := #Ultimate.allocOnHeap(12);~ptr~1.base, ~ptr~1.offset := #t~malloc3.base, #t~malloc3.offset; {3329#(and (<= (+ alloc_or_die_master_~ptr~1.base 1) |#StackHeapBarrier|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:33,494 INFO L280 TraceCheckUtils]: 6: Hoare triple {3329#(and (<= (+ alloc_or_die_master_~ptr~1.base 1) |#StackHeapBarrier|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} assume !(~ptr~1.base == 0 && ~ptr~1.offset == 0); {3329#(and (<= (+ alloc_or_die_master_~ptr~1.base 1) |#StackHeapBarrier|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:33,498 INFO L280 TraceCheckUtils]: 7: Hoare triple {3329#(and (<= (+ alloc_or_die_master_~ptr~1.base 1) |#StackHeapBarrier|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call write~$Pointer$(0, 0, ~ptr~1.base, ~ptr~1.offset, 4);call write~$Pointer$(0, 0, ~ptr~1.base, 4 + ~ptr~1.offset, 4);call write~$Pointer$(0, 0, ~ptr~1.base, 8 + ~ptr~1.offset, 4);#res.base, #res.offset := ~ptr~1.base, ~ptr~1.offset; {3330#(and (= |#memory_$Pointer$.base| (store |old(#memory_$Pointer$.base)| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) (select |#memory_$Pointer$.base| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|)))) (or (<= (+ (@diff |old(#memory_$Pointer$.offset)| |#memory_$Pointer$.offset|) 1) |#StackHeapBarrier|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|)) (= (store |old(#memory_$Pointer$.offset)| (@diff |old(#memory_$Pointer$.offset)| |#memory_$Pointer$.offset|) (select |#memory_$Pointer$.offset| (@diff |old(#memory_$Pointer$.offset)| |#memory_$Pointer$.offset|))) |#memory_$Pointer$.offset|) (or (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (<= (+ (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) 1) |#StackHeapBarrier|)))} is VALID [2020-07-10 15:04:33,500 INFO L280 TraceCheckUtils]: 8: Hoare triple {3330#(and (= |#memory_$Pointer$.base| (store |old(#memory_$Pointer$.base)| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) (select |#memory_$Pointer$.base| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|)))) (or (<= (+ (@diff |old(#memory_$Pointer$.offset)| |#memory_$Pointer$.offset|) 1) |#StackHeapBarrier|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|)) (= (store |old(#memory_$Pointer$.offset)| (@diff |old(#memory_$Pointer$.offset)| |#memory_$Pointer$.offset|) (select |#memory_$Pointer$.offset| (@diff |old(#memory_$Pointer$.offset)| |#memory_$Pointer$.offset|))) |#memory_$Pointer$.offset|) (or (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (<= (+ (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) 1) |#StackHeapBarrier|)))} assume true; {3330#(and (= |#memory_$Pointer$.base| (store |old(#memory_$Pointer$.base)| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) (select |#memory_$Pointer$.base| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|)))) (or (<= (+ (@diff |old(#memory_$Pointer$.offset)| |#memory_$Pointer$.offset|) 1) |#StackHeapBarrier|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|)) (= (store |old(#memory_$Pointer$.offset)| (@diff |old(#memory_$Pointer$.offset)| |#memory_$Pointer$.offset|) (select |#memory_$Pointer$.offset| (@diff |old(#memory_$Pointer$.offset)| |#memory_$Pointer$.offset|))) |#memory_$Pointer$.offset|) (or (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (<= (+ (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) 1) |#StackHeapBarrier|)))} is VALID [2020-07-10 15:04:33,505 INFO L275 TraceCheckUtils]: 9: Hoare quadruple {3330#(and (= |#memory_$Pointer$.base| (store |old(#memory_$Pointer$.base)| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) (select |#memory_$Pointer$.base| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|)))) (or (<= (+ (@diff |old(#memory_$Pointer$.offset)| |#memory_$Pointer$.offset|) 1) |#StackHeapBarrier|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|)) (= (store |old(#memory_$Pointer$.offset)| (@diff |old(#memory_$Pointer$.offset)| |#memory_$Pointer$.offset|) (select |#memory_$Pointer$.offset| (@diff |old(#memory_$Pointer$.offset)| |#memory_$Pointer$.offset|))) |#memory_$Pointer$.offset|) (or (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (<= (+ (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) 1) |#StackHeapBarrier|)))} {3274#(and (= dll_insert_master_~dll.offset |dll_insert_master_#in~dll.offset|) (= (select |#memory_$Pointer$.offset| dll_insert_master_~dll.base) (select |old(#memory_$Pointer$.offset)| dll_insert_master_~dll.base)) (= (select |#memory_$Pointer$.base| dll_insert_master_~dll.base) (select |old(#memory_$Pointer$.base)| dll_insert_master_~dll.base)) (= dll_insert_master_~dll.base |dll_insert_master_#in~dll.base|))} #494#return; {3280#(and (= dll_insert_master_~dll.offset |dll_insert_master_#in~dll.offset|) (or (= (select |#memory_$Pointer$.offset| dll_insert_master_~dll.base) (select |old(#memory_$Pointer$.offset)| dll_insert_master_~dll.base)) (<= (+ dll_insert_master_~dll.base 1) |#StackHeapBarrier|)) (or (= (select |#memory_$Pointer$.base| dll_insert_master_~dll.base) (select |old(#memory_$Pointer$.base)| dll_insert_master_~dll.base)) (<= (+ dll_insert_master_~dll.base 1) |#StackHeapBarrier|)) (= dll_insert_master_~dll.base |dll_insert_master_#in~dll.base|))} is VALID [2020-07-10 15:04:33,507 INFO L280 TraceCheckUtils]: 10: Hoare triple {3280#(and (= dll_insert_master_~dll.offset |dll_insert_master_#in~dll.offset|) (or (= (select |#memory_$Pointer$.offset| dll_insert_master_~dll.base) (select |old(#memory_$Pointer$.offset)| dll_insert_master_~dll.base)) (<= (+ dll_insert_master_~dll.base 1) |#StackHeapBarrier|)) (or (= (select |#memory_$Pointer$.base| dll_insert_master_~dll.base) (select |old(#memory_$Pointer$.base)| dll_insert_master_~dll.base)) (<= (+ dll_insert_master_~dll.base 1) |#StackHeapBarrier|)) (= dll_insert_master_~dll.base |dll_insert_master_#in~dll.base|))} ~item~1.base, ~item~1.offset := #t~ret17.base, #t~ret17.offset;havoc #t~ret17.base, #t~ret17.offset;call #t~mem18.base, #t~mem18.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~3.base, ~next~3.offset := #t~mem18.base, #t~mem18.offset;havoc #t~mem18.base, #t~mem18.offset;call write~$Pointer$(~next~3.base, ~next~3.offset, ~item~1.base, ~item~1.offset, 4); {3281#(or (<= (+ |dll_insert_master_#in~dll.base| 1) |#StackHeapBarrier|) (and (= dll_insert_master_~next~3.base (select (select |old(#memory_$Pointer$.base)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|)) (= (select (select |old(#memory_$Pointer$.offset)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|) dll_insert_master_~next~3.offset)))} is VALID [2020-07-10 15:04:33,510 INFO L280 TraceCheckUtils]: 11: Hoare triple {3281#(or (<= (+ |dll_insert_master_#in~dll.base| 1) |#StackHeapBarrier|) (and (= dll_insert_master_~next~3.base (select (select |old(#memory_$Pointer$.base)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|)) (= (select (select |old(#memory_$Pointer$.offset)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|) dll_insert_master_~next~3.offset)))} assume ~next~3.base != 0 || ~next~3.offset != 0;call write~$Pointer$(~item~1.base, ~item~1.offset, ~next~3.base, 4 + ~next~3.offset, 4); {3282#(or (not (= (select (select |old(#memory_$Pointer$.offset)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|) 0)) (not (= 0 (select (select |old(#memory_$Pointer$.base)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|))) (<= (+ |dll_insert_master_#in~dll.base| 1) |#StackHeapBarrier|))} is VALID [2020-07-10 15:04:33,512 INFO L263 TraceCheckUtils]: 12: Hoare triple {3282#(or (not (= (select (select |old(#memory_$Pointer$.offset)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|) 0)) (not (= 0 (select (select |old(#memory_$Pointer$.base)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|))) (<= (+ |dll_insert_master_#in~dll.base| 1) |#StackHeapBarrier|))} call #t~ret19.base, #t~ret19.offset := dll_create_slave(); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:33,514 INFO L263 TraceCheckUtils]: 13: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~ret11.base, #t~ret11.offset := dll_create_generic(#funAddr~dll_insert_slave.base, #funAddr~dll_insert_slave.offset); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:33,514 INFO L280 TraceCheckUtils]: 14: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~insert_fnc.base, ~insert_fnc.offset := #in~insert_fnc.base, #in~insert_fnc.offset;call ~#dll~0.base, ~#dll~0.offset := #Ultimate.allocOnStack(4);call write~init~$Pointer$(0, 0, ~#dll~0.base, ~#dll~0.offset, 4); {2795#true} is VALID [2020-07-10 15:04:33,516 INFO L263 TraceCheckUtils]: 15: Hoare triple {2795#true} call ##fun~$Pointer$~TO~VOID(~#dll~0.base, ~#dll~0.offset, ~insert_fnc.base, ~insert_fnc.offset); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:33,517 INFO L280 TraceCheckUtils]: 16: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {2795#true} is VALID [2020-07-10 15:04:33,517 INFO L280 TraceCheckUtils]: 17: Hoare triple {2795#true} assume !(#in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset); {2795#true} is VALID [2020-07-10 15:04:33,519 INFO L263 TraceCheckUtils]: 18: Hoare triple {2795#true} call dll_insert_slave(#~9.base, #~9.offset); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:33,520 INFO L280 TraceCheckUtils]: 19: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {2795#true} is VALID [2020-07-10 15:04:33,521 INFO L263 TraceCheckUtils]: 20: Hoare triple {2795#true} call #t~ret4.base, #t~ret4.offset := alloc_or_die_slave(); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:33,521 INFO L280 TraceCheckUtils]: 21: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {2795#true} is VALID [2020-07-10 15:04:33,522 INFO L280 TraceCheckUtils]: 22: Hoare triple {2795#true} assume !(~ptr~0.base == 0 && ~ptr~0.offset == 0); {2795#true} is VALID [2020-07-10 15:04:33,522 INFO L280 TraceCheckUtils]: 23: Hoare triple {2795#true} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {2795#true} is VALID [2020-07-10 15:04:33,522 INFO L280 TraceCheckUtils]: 24: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:33,523 INFO L275 TraceCheckUtils]: 25: Hoare quadruple {2795#true} {2795#true} #490#return; {2795#true} is VALID [2020-07-10 15:04:33,523 INFO L280 TraceCheckUtils]: 26: Hoare triple {2795#true} ~item~0.base, ~item~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~0.base, ~next~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset;call write~$Pointer$(~next~0.base, ~next~0.offset, ~item~0.base, ~item~0.offset, 4); {2795#true} is VALID [2020-07-10 15:04:33,523 INFO L280 TraceCheckUtils]: 27: Hoare triple {2795#true} assume !(~next~0.base != 0 || ~next~0.offset != 0); {2795#true} is VALID [2020-07-10 15:04:33,524 INFO L280 TraceCheckUtils]: 28: Hoare triple {2795#true} call write~$Pointer$(~item~0.base, ~item~0.offset, ~dll.base, ~dll.offset, 4); {2795#true} is VALID [2020-07-10 15:04:33,524 INFO L280 TraceCheckUtils]: 29: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:33,525 INFO L275 TraceCheckUtils]: 30: Hoare quadruple {2795#true} {2795#true} #514#return; {2795#true} is VALID [2020-07-10 15:04:33,525 INFO L280 TraceCheckUtils]: 31: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:33,525 INFO L275 TraceCheckUtils]: 32: Hoare quadruple {2795#true} {2795#true} #534#return; {2795#true} is VALID [2020-07-10 15:04:33,528 INFO L263 TraceCheckUtils]: 33: Hoare triple {2795#true} call ##fun~$Pointer$~TO~VOID(~#dll~0.base, ~#dll~0.offset, ~insert_fnc.base, ~insert_fnc.offset); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:33,528 INFO L280 TraceCheckUtils]: 34: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {2795#true} is VALID [2020-07-10 15:04:33,529 INFO L280 TraceCheckUtils]: 35: Hoare triple {2795#true} assume !(#in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset); {2795#true} is VALID [2020-07-10 15:04:33,530 INFO L263 TraceCheckUtils]: 36: Hoare triple {2795#true} call dll_insert_slave(#~9.base, #~9.offset); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:33,531 INFO L280 TraceCheckUtils]: 37: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {2795#true} is VALID [2020-07-10 15:04:33,532 INFO L263 TraceCheckUtils]: 38: Hoare triple {2795#true} call #t~ret4.base, #t~ret4.offset := alloc_or_die_slave(); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:33,533 INFO L280 TraceCheckUtils]: 39: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {2795#true} is VALID [2020-07-10 15:04:33,533 INFO L280 TraceCheckUtils]: 40: Hoare triple {2795#true} assume !(~ptr~0.base == 0 && ~ptr~0.offset == 0); {2795#true} is VALID [2020-07-10 15:04:33,533 INFO L280 TraceCheckUtils]: 41: Hoare triple {2795#true} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {2795#true} is VALID [2020-07-10 15:04:33,534 INFO L280 TraceCheckUtils]: 42: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:33,534 INFO L275 TraceCheckUtils]: 43: Hoare quadruple {2795#true} {2795#true} #490#return; {2795#true} is VALID [2020-07-10 15:04:33,534 INFO L280 TraceCheckUtils]: 44: Hoare triple {2795#true} ~item~0.base, ~item~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~0.base, ~next~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset;call write~$Pointer$(~next~0.base, ~next~0.offset, ~item~0.base, ~item~0.offset, 4); {2795#true} is VALID [2020-07-10 15:04:33,535 INFO L280 TraceCheckUtils]: 45: Hoare triple {2795#true} assume !(~next~0.base != 0 || ~next~0.offset != 0); {2795#true} is VALID [2020-07-10 15:04:33,535 INFO L280 TraceCheckUtils]: 46: Hoare triple {2795#true} call write~$Pointer$(~item~0.base, ~item~0.offset, ~dll.base, ~dll.offset, 4); {2795#true} is VALID [2020-07-10 15:04:33,536 INFO L280 TraceCheckUtils]: 47: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:33,536 INFO L275 TraceCheckUtils]: 48: Hoare quadruple {2795#true} {2795#true} #514#return; {2795#true} is VALID [2020-07-10 15:04:33,536 INFO L280 TraceCheckUtils]: 49: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:33,537 INFO L275 TraceCheckUtils]: 50: Hoare quadruple {2795#true} {2795#true} #536#return; {2795#true} is VALID [2020-07-10 15:04:33,537 INFO L280 TraceCheckUtils]: 51: Hoare triple {2795#true} assume -2147483648 <= #t~nondet8 && #t~nondet8 <= 2147483647; {2795#true} is VALID [2020-07-10 15:04:33,537 INFO L280 TraceCheckUtils]: 52: Hoare triple {2795#true} assume !(0 != #t~nondet8);havoc #t~nondet8; {2795#true} is VALID [2020-07-10 15:04:33,538 INFO L280 TraceCheckUtils]: 53: Hoare triple {2795#true} call #t~mem10.base, #t~mem10.offset := read~$Pointer$(~#dll~0.base, ~#dll~0.offset, 4);#res.base, #res.offset := #t~mem10.base, #t~mem10.offset;havoc #t~mem10.base, #t~mem10.offset;call ULTIMATE.dealloc(~#dll~0.base, ~#dll~0.offset);havoc ~#dll~0.base, ~#dll~0.offset; {2795#true} is VALID [2020-07-10 15:04:33,538 INFO L280 TraceCheckUtils]: 54: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:33,538 INFO L275 TraceCheckUtils]: 55: Hoare quadruple {2795#true} {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #540#return; {2795#true} is VALID [2020-07-10 15:04:33,539 INFO L280 TraceCheckUtils]: 56: Hoare triple {2795#true} #res.base, #res.offset := #t~ret11.base, #t~ret11.offset;havoc #t~ret11.base, #t~ret11.offset; {2795#true} is VALID [2020-07-10 15:04:33,539 INFO L280 TraceCheckUtils]: 57: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:33,541 INFO L275 TraceCheckUtils]: 58: Hoare quadruple {2795#true} {3282#(or (not (= (select (select |old(#memory_$Pointer$.offset)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|) 0)) (not (= 0 (select (select |old(#memory_$Pointer$.base)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|))) (<= (+ |dll_insert_master_#in~dll.base| 1) |#StackHeapBarrier|))} #496#return; {3282#(or (not (= (select (select |old(#memory_$Pointer$.offset)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|) 0)) (not (= 0 (select (select |old(#memory_$Pointer$.base)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|))) (<= (+ |dll_insert_master_#in~dll.base| 1) |#StackHeapBarrier|))} is VALID [2020-07-10 15:04:33,542 INFO L280 TraceCheckUtils]: 59: Hoare triple {3282#(or (not (= (select (select |old(#memory_$Pointer$.offset)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|) 0)) (not (= 0 (select (select |old(#memory_$Pointer$.base)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|))) (<= (+ |dll_insert_master_#in~dll.base| 1) |#StackHeapBarrier|))} call write~$Pointer$(#t~ret19.base, #t~ret19.offset, ~item~1.base, 8 + ~item~1.offset, 4);havoc #t~ret19.base, #t~ret19.offset;call write~$Pointer$(~item~1.base, ~item~1.offset, ~dll.base, ~dll.offset, 4); {3282#(or (not (= (select (select |old(#memory_$Pointer$.offset)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|) 0)) (not (= 0 (select (select |old(#memory_$Pointer$.base)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|))) (<= (+ |dll_insert_master_#in~dll.base| 1) |#StackHeapBarrier|))} is VALID [2020-07-10 15:04:33,543 INFO L280 TraceCheckUtils]: 60: Hoare triple {3282#(or (not (= (select (select |old(#memory_$Pointer$.offset)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|) 0)) (not (= 0 (select (select |old(#memory_$Pointer$.base)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|))) (<= (+ |dll_insert_master_#in~dll.base| 1) |#StackHeapBarrier|))} assume true; {3282#(or (not (= (select (select |old(#memory_$Pointer$.offset)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|) 0)) (not (= 0 (select (select |old(#memory_$Pointer$.base)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|))) (<= (+ |dll_insert_master_#in~dll.base| 1) |#StackHeapBarrier|))} is VALID [2020-07-10 15:04:33,545 INFO L275 TraceCheckUtils]: 61: Hoare quadruple {3282#(or (not (= (select (select |old(#memory_$Pointer$.offset)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|) 0)) (not (= 0 (select (select |old(#memory_$Pointer$.base)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|))) (<= (+ |dll_insert_master_#in~dll.base| 1) |#StackHeapBarrier|))} {3213#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #512#return; {3273#(or (not (= 0 (select (select |old(#memory_$Pointer$.base)| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|))) (<= (+ |##fun~$Pointer$~TO~VOID_#in~9.base| 1) |#StackHeapBarrier|) (not (= 0 (select (select |old(#memory_$Pointer$.offset)| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|))))} is VALID [2020-07-10 15:04:33,546 INFO L280 TraceCheckUtils]: 62: Hoare triple {3273#(or (not (= 0 (select (select |old(#memory_$Pointer$.base)| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|))) (<= (+ |##fun~$Pointer$~TO~VOID_#in~9.base| 1) |#StackHeapBarrier|) (not (= 0 (select (select |old(#memory_$Pointer$.offset)| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|))))} assume true; {3273#(or (not (= 0 (select (select |old(#memory_$Pointer$.base)| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|))) (<= (+ |##fun~$Pointer$~TO~VOID_#in~9.base| 1) |#StackHeapBarrier|) (not (= 0 (select (select |old(#memory_$Pointer$.offset)| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|))))} is VALID [2020-07-10 15:04:33,549 INFO L275 TraceCheckUtils]: 63: Hoare quadruple {3273#(or (not (= 0 (select (select |old(#memory_$Pointer$.base)| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|))) (<= (+ |##fun~$Pointer$~TO~VOID_#in~9.base| 1) |#StackHeapBarrier|) (not (= 0 (select (select |old(#memory_$Pointer$.offset)| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|))))} {3084#(and (= 0 (select (select |#memory_$Pointer$.base| |dll_create_generic_~#dll~0.base|) |dll_create_generic_~#dll~0.offset|)) (<= (+ |#StackHeapBarrier| 1) |dll_create_generic_~#dll~0.base|) (= 0 (select (select |#memory_$Pointer$.offset| |dll_create_generic_~#dll~0.base|) |dll_create_generic_~#dll~0.offset|)))} #534#return; {2796#false} is VALID [2020-07-10 15:04:33,588 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 15:04:33,615 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 15:04:33,637 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 15:04:33,643 INFO L280 TraceCheckUtils]: 0: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc3.base, #t~malloc3.offset := #Ultimate.allocOnHeap(12);~ptr~1.base, ~ptr~1.offset := #t~malloc3.base, #t~malloc3.offset; {2795#true} is VALID [2020-07-10 15:04:33,643 INFO L280 TraceCheckUtils]: 1: Hoare triple {2795#true} assume !(~ptr~1.base == 0 && ~ptr~1.offset == 0); {2795#true} is VALID [2020-07-10 15:04:33,644 INFO L280 TraceCheckUtils]: 2: Hoare triple {2795#true} call write~$Pointer$(0, 0, ~ptr~1.base, ~ptr~1.offset, 4);call write~$Pointer$(0, 0, ~ptr~1.base, 4 + ~ptr~1.offset, 4);call write~$Pointer$(0, 0, ~ptr~1.base, 8 + ~ptr~1.offset, 4);#res.base, #res.offset := ~ptr~1.base, ~ptr~1.offset; {2795#true} is VALID [2020-07-10 15:04:33,644 INFO L280 TraceCheckUtils]: 3: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:33,644 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {2795#true} {2795#true} #494#return; {2795#true} is VALID [2020-07-10 15:04:33,650 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 15:04:33,667 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 15:04:33,691 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 15:04:33,714 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 15:04:33,727 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 15:04:33,735 INFO L280 TraceCheckUtils]: 0: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {2795#true} is VALID [2020-07-10 15:04:33,735 INFO L280 TraceCheckUtils]: 1: Hoare triple {2795#true} assume !(~ptr~0.base == 0 && ~ptr~0.offset == 0); {2795#true} is VALID [2020-07-10 15:04:33,735 INFO L280 TraceCheckUtils]: 2: Hoare triple {2795#true} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {2795#true} is VALID [2020-07-10 15:04:33,736 INFO L280 TraceCheckUtils]: 3: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:33,736 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {2795#true} {2795#true} #490#return; {2795#true} is VALID [2020-07-10 15:04:33,736 INFO L280 TraceCheckUtils]: 0: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {2795#true} is VALID [2020-07-10 15:04:33,738 INFO L263 TraceCheckUtils]: 1: Hoare triple {2795#true} call #t~ret4.base, #t~ret4.offset := alloc_or_die_slave(); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:33,738 INFO L280 TraceCheckUtils]: 2: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {2795#true} is VALID [2020-07-10 15:04:33,738 INFO L280 TraceCheckUtils]: 3: Hoare triple {2795#true} assume !(~ptr~0.base == 0 && ~ptr~0.offset == 0); {2795#true} is VALID [2020-07-10 15:04:33,738 INFO L280 TraceCheckUtils]: 4: Hoare triple {2795#true} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {2795#true} is VALID [2020-07-10 15:04:33,739 INFO L280 TraceCheckUtils]: 5: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:33,739 INFO L275 TraceCheckUtils]: 6: Hoare quadruple {2795#true} {2795#true} #490#return; {2795#true} is VALID [2020-07-10 15:04:33,739 INFO L280 TraceCheckUtils]: 7: Hoare triple {2795#true} ~item~0.base, ~item~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~0.base, ~next~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset;call write~$Pointer$(~next~0.base, ~next~0.offset, ~item~0.base, ~item~0.offset, 4); {2795#true} is VALID [2020-07-10 15:04:33,739 INFO L280 TraceCheckUtils]: 8: Hoare triple {2795#true} assume !(~next~0.base != 0 || ~next~0.offset != 0); {2795#true} is VALID [2020-07-10 15:04:33,740 INFO L280 TraceCheckUtils]: 9: Hoare triple {2795#true} call write~$Pointer$(~item~0.base, ~item~0.offset, ~dll.base, ~dll.offset, 4); {2795#true} is VALID [2020-07-10 15:04:33,740 INFO L280 TraceCheckUtils]: 10: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:33,741 INFO L275 TraceCheckUtils]: 11: Hoare quadruple {2795#true} {2795#true} #514#return; {2795#true} is VALID [2020-07-10 15:04:33,742 INFO L280 TraceCheckUtils]: 0: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {2795#true} is VALID [2020-07-10 15:04:33,742 INFO L280 TraceCheckUtils]: 1: Hoare triple {2795#true} assume !(#in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset); {2795#true} is VALID [2020-07-10 15:04:33,745 INFO L263 TraceCheckUtils]: 2: Hoare triple {2795#true} call dll_insert_slave(#~9.base, #~9.offset); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:33,745 INFO L280 TraceCheckUtils]: 3: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {2795#true} is VALID [2020-07-10 15:04:33,747 INFO L263 TraceCheckUtils]: 4: Hoare triple {2795#true} call #t~ret4.base, #t~ret4.offset := alloc_or_die_slave(); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:33,747 INFO L280 TraceCheckUtils]: 5: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {2795#true} is VALID [2020-07-10 15:04:33,748 INFO L280 TraceCheckUtils]: 6: Hoare triple {2795#true} assume !(~ptr~0.base == 0 && ~ptr~0.offset == 0); {2795#true} is VALID [2020-07-10 15:04:33,748 INFO L280 TraceCheckUtils]: 7: Hoare triple {2795#true} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {2795#true} is VALID [2020-07-10 15:04:33,748 INFO L280 TraceCheckUtils]: 8: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:33,749 INFO L275 TraceCheckUtils]: 9: Hoare quadruple {2795#true} {2795#true} #490#return; {2795#true} is VALID [2020-07-10 15:04:33,749 INFO L280 TraceCheckUtils]: 10: Hoare triple {2795#true} ~item~0.base, ~item~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~0.base, ~next~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset;call write~$Pointer$(~next~0.base, ~next~0.offset, ~item~0.base, ~item~0.offset, 4); {2795#true} is VALID [2020-07-10 15:04:33,750 INFO L280 TraceCheckUtils]: 11: Hoare triple {2795#true} assume !(~next~0.base != 0 || ~next~0.offset != 0); {2795#true} is VALID [2020-07-10 15:04:33,750 INFO L280 TraceCheckUtils]: 12: Hoare triple {2795#true} call write~$Pointer$(~item~0.base, ~item~0.offset, ~dll.base, ~dll.offset, 4); {2795#true} is VALID [2020-07-10 15:04:33,751 INFO L280 TraceCheckUtils]: 13: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:33,751 INFO L275 TraceCheckUtils]: 14: Hoare quadruple {2795#true} {2795#true} #514#return; {2795#true} is VALID [2020-07-10 15:04:33,752 INFO L280 TraceCheckUtils]: 15: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:33,752 INFO L275 TraceCheckUtils]: 16: Hoare quadruple {2795#true} {2795#true} #534#return; {2795#true} is VALID [2020-07-10 15:04:33,757 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 15:04:33,771 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 15:04:33,780 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 15:04:33,785 INFO L280 TraceCheckUtils]: 0: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {2795#true} is VALID [2020-07-10 15:04:33,786 INFO L280 TraceCheckUtils]: 1: Hoare triple {2795#true} assume !(~ptr~0.base == 0 && ~ptr~0.offset == 0); {2795#true} is VALID [2020-07-10 15:04:33,786 INFO L280 TraceCheckUtils]: 2: Hoare triple {2795#true} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {2795#true} is VALID [2020-07-10 15:04:33,787 INFO L280 TraceCheckUtils]: 3: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:33,787 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {2795#true} {2795#true} #490#return; {2795#true} is VALID [2020-07-10 15:04:33,788 INFO L280 TraceCheckUtils]: 0: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {2795#true} is VALID [2020-07-10 15:04:33,789 INFO L263 TraceCheckUtils]: 1: Hoare triple {2795#true} call #t~ret4.base, #t~ret4.offset := alloc_or_die_slave(); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:33,790 INFO L280 TraceCheckUtils]: 2: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {2795#true} is VALID [2020-07-10 15:04:33,790 INFO L280 TraceCheckUtils]: 3: Hoare triple {2795#true} assume !(~ptr~0.base == 0 && ~ptr~0.offset == 0); {2795#true} is VALID [2020-07-10 15:04:33,791 INFO L280 TraceCheckUtils]: 4: Hoare triple {2795#true} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {2795#true} is VALID [2020-07-10 15:04:33,791 INFO L280 TraceCheckUtils]: 5: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:33,792 INFO L275 TraceCheckUtils]: 6: Hoare quadruple {2795#true} {2795#true} #490#return; {2795#true} is VALID [2020-07-10 15:04:33,792 INFO L280 TraceCheckUtils]: 7: Hoare triple {2795#true} ~item~0.base, ~item~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~0.base, ~next~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset;call write~$Pointer$(~next~0.base, ~next~0.offset, ~item~0.base, ~item~0.offset, 4); {2795#true} is VALID [2020-07-10 15:04:33,793 INFO L280 TraceCheckUtils]: 8: Hoare triple {2795#true} assume !(~next~0.base != 0 || ~next~0.offset != 0); {2795#true} is VALID [2020-07-10 15:04:33,793 INFO L280 TraceCheckUtils]: 9: Hoare triple {2795#true} call write~$Pointer$(~item~0.base, ~item~0.offset, ~dll.base, ~dll.offset, 4); {2795#true} is VALID [2020-07-10 15:04:33,794 INFO L280 TraceCheckUtils]: 10: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:33,794 INFO L275 TraceCheckUtils]: 11: Hoare quadruple {2795#true} {2795#true} #514#return; {2795#true} is VALID [2020-07-10 15:04:33,795 INFO L280 TraceCheckUtils]: 0: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {2795#true} is VALID [2020-07-10 15:04:33,795 INFO L280 TraceCheckUtils]: 1: Hoare triple {2795#true} assume !(#in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset); {2795#true} is VALID [2020-07-10 15:04:33,798 INFO L263 TraceCheckUtils]: 2: Hoare triple {2795#true} call dll_insert_slave(#~9.base, #~9.offset); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:33,798 INFO L280 TraceCheckUtils]: 3: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {2795#true} is VALID [2020-07-10 15:04:33,800 INFO L263 TraceCheckUtils]: 4: Hoare triple {2795#true} call #t~ret4.base, #t~ret4.offset := alloc_or_die_slave(); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:33,800 INFO L280 TraceCheckUtils]: 5: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {2795#true} is VALID [2020-07-10 15:04:33,801 INFO L280 TraceCheckUtils]: 6: Hoare triple {2795#true} assume !(~ptr~0.base == 0 && ~ptr~0.offset == 0); {2795#true} is VALID [2020-07-10 15:04:33,801 INFO L280 TraceCheckUtils]: 7: Hoare triple {2795#true} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {2795#true} is VALID [2020-07-10 15:04:33,801 INFO L280 TraceCheckUtils]: 8: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:33,802 INFO L275 TraceCheckUtils]: 9: Hoare quadruple {2795#true} {2795#true} #490#return; {2795#true} is VALID [2020-07-10 15:04:33,802 INFO L280 TraceCheckUtils]: 10: Hoare triple {2795#true} ~item~0.base, ~item~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~0.base, ~next~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset;call write~$Pointer$(~next~0.base, ~next~0.offset, ~item~0.base, ~item~0.offset, 4); {2795#true} is VALID [2020-07-10 15:04:33,803 INFO L280 TraceCheckUtils]: 11: Hoare triple {2795#true} assume !(~next~0.base != 0 || ~next~0.offset != 0); {2795#true} is VALID [2020-07-10 15:04:33,803 INFO L280 TraceCheckUtils]: 12: Hoare triple {2795#true} call write~$Pointer$(~item~0.base, ~item~0.offset, ~dll.base, ~dll.offset, 4); {2795#true} is VALID [2020-07-10 15:04:33,804 INFO L280 TraceCheckUtils]: 13: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:33,804 INFO L275 TraceCheckUtils]: 14: Hoare quadruple {2795#true} {2795#true} #514#return; {2795#true} is VALID [2020-07-10 15:04:33,804 INFO L280 TraceCheckUtils]: 15: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:33,805 INFO L275 TraceCheckUtils]: 16: Hoare quadruple {2795#true} {2795#true} #536#return; {2795#true} is VALID [2020-07-10 15:04:33,806 INFO L280 TraceCheckUtils]: 0: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~insert_fnc.base, ~insert_fnc.offset := #in~insert_fnc.base, #in~insert_fnc.offset;call ~#dll~0.base, ~#dll~0.offset := #Ultimate.allocOnStack(4);call write~init~$Pointer$(0, 0, ~#dll~0.base, ~#dll~0.offset, 4); {2795#true} is VALID [2020-07-10 15:04:33,809 INFO L263 TraceCheckUtils]: 1: Hoare triple {2795#true} call ##fun~$Pointer$~TO~VOID(~#dll~0.base, ~#dll~0.offset, ~insert_fnc.base, ~insert_fnc.offset); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:33,810 INFO L280 TraceCheckUtils]: 2: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {2795#true} is VALID [2020-07-10 15:04:33,810 INFO L280 TraceCheckUtils]: 3: Hoare triple {2795#true} assume !(#in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset); {2795#true} is VALID [2020-07-10 15:04:33,812 INFO L263 TraceCheckUtils]: 4: Hoare triple {2795#true} call dll_insert_slave(#~9.base, #~9.offset); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:33,812 INFO L280 TraceCheckUtils]: 5: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {2795#true} is VALID [2020-07-10 15:04:33,814 INFO L263 TraceCheckUtils]: 6: Hoare triple {2795#true} call #t~ret4.base, #t~ret4.offset := alloc_or_die_slave(); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:33,814 INFO L280 TraceCheckUtils]: 7: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {2795#true} is VALID [2020-07-10 15:04:33,815 INFO L280 TraceCheckUtils]: 8: Hoare triple {2795#true} assume !(~ptr~0.base == 0 && ~ptr~0.offset == 0); {2795#true} is VALID [2020-07-10 15:04:33,815 INFO L280 TraceCheckUtils]: 9: Hoare triple {2795#true} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {2795#true} is VALID [2020-07-10 15:04:33,815 INFO L280 TraceCheckUtils]: 10: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:33,816 INFO L275 TraceCheckUtils]: 11: Hoare quadruple {2795#true} {2795#true} #490#return; {2795#true} is VALID [2020-07-10 15:04:33,816 INFO L280 TraceCheckUtils]: 12: Hoare triple {2795#true} ~item~0.base, ~item~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~0.base, ~next~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset;call write~$Pointer$(~next~0.base, ~next~0.offset, ~item~0.base, ~item~0.offset, 4); {2795#true} is VALID [2020-07-10 15:04:33,817 INFO L280 TraceCheckUtils]: 13: Hoare triple {2795#true} assume !(~next~0.base != 0 || ~next~0.offset != 0); {2795#true} is VALID [2020-07-10 15:04:33,817 INFO L280 TraceCheckUtils]: 14: Hoare triple {2795#true} call write~$Pointer$(~item~0.base, ~item~0.offset, ~dll.base, ~dll.offset, 4); {2795#true} is VALID [2020-07-10 15:04:33,817 INFO L280 TraceCheckUtils]: 15: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:33,818 INFO L275 TraceCheckUtils]: 16: Hoare quadruple {2795#true} {2795#true} #514#return; {2795#true} is VALID [2020-07-10 15:04:33,818 INFO L280 TraceCheckUtils]: 17: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:33,819 INFO L275 TraceCheckUtils]: 18: Hoare quadruple {2795#true} {2795#true} #534#return; {2795#true} is VALID [2020-07-10 15:04:33,822 INFO L263 TraceCheckUtils]: 19: Hoare triple {2795#true} call ##fun~$Pointer$~TO~VOID(~#dll~0.base, ~#dll~0.offset, ~insert_fnc.base, ~insert_fnc.offset); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:33,823 INFO L280 TraceCheckUtils]: 20: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {2795#true} is VALID [2020-07-10 15:04:33,823 INFO L280 TraceCheckUtils]: 21: Hoare triple {2795#true} assume !(#in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset); {2795#true} is VALID [2020-07-10 15:04:33,825 INFO L263 TraceCheckUtils]: 22: Hoare triple {2795#true} call dll_insert_slave(#~9.base, #~9.offset); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:33,825 INFO L280 TraceCheckUtils]: 23: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {2795#true} is VALID [2020-07-10 15:04:33,827 INFO L263 TraceCheckUtils]: 24: Hoare triple {2795#true} call #t~ret4.base, #t~ret4.offset := alloc_or_die_slave(); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:33,827 INFO L280 TraceCheckUtils]: 25: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {2795#true} is VALID [2020-07-10 15:04:33,828 INFO L280 TraceCheckUtils]: 26: Hoare triple {2795#true} assume !(~ptr~0.base == 0 && ~ptr~0.offset == 0); {2795#true} is VALID [2020-07-10 15:04:33,828 INFO L280 TraceCheckUtils]: 27: Hoare triple {2795#true} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {2795#true} is VALID [2020-07-10 15:04:33,828 INFO L280 TraceCheckUtils]: 28: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:33,829 INFO L275 TraceCheckUtils]: 29: Hoare quadruple {2795#true} {2795#true} #490#return; {2795#true} is VALID [2020-07-10 15:04:33,829 INFO L280 TraceCheckUtils]: 30: Hoare triple {2795#true} ~item~0.base, ~item~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~0.base, ~next~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset;call write~$Pointer$(~next~0.base, ~next~0.offset, ~item~0.base, ~item~0.offset, 4); {2795#true} is VALID [2020-07-10 15:04:33,830 INFO L280 TraceCheckUtils]: 31: Hoare triple {2795#true} assume !(~next~0.base != 0 || ~next~0.offset != 0); {2795#true} is VALID [2020-07-10 15:04:33,830 INFO L280 TraceCheckUtils]: 32: Hoare triple {2795#true} call write~$Pointer$(~item~0.base, ~item~0.offset, ~dll.base, ~dll.offset, 4); {2795#true} is VALID [2020-07-10 15:04:33,830 INFO L280 TraceCheckUtils]: 33: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:33,831 INFO L275 TraceCheckUtils]: 34: Hoare quadruple {2795#true} {2795#true} #514#return; {2795#true} is VALID [2020-07-10 15:04:33,831 INFO L280 TraceCheckUtils]: 35: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:33,832 INFO L275 TraceCheckUtils]: 36: Hoare quadruple {2795#true} {2795#true} #536#return; {2795#true} is VALID [2020-07-10 15:04:33,832 INFO L280 TraceCheckUtils]: 37: Hoare triple {2795#true} assume -2147483648 <= #t~nondet8 && #t~nondet8 <= 2147483647; {2795#true} is VALID [2020-07-10 15:04:33,832 INFO L280 TraceCheckUtils]: 38: Hoare triple {2795#true} assume !(0 != #t~nondet8);havoc #t~nondet8; {2795#true} is VALID [2020-07-10 15:04:33,833 INFO L280 TraceCheckUtils]: 39: Hoare triple {2795#true} call #t~mem10.base, #t~mem10.offset := read~$Pointer$(~#dll~0.base, ~#dll~0.offset, 4);#res.base, #res.offset := #t~mem10.base, #t~mem10.offset;havoc #t~mem10.base, #t~mem10.offset;call ULTIMATE.dealloc(~#dll~0.base, ~#dll~0.offset);havoc ~#dll~0.base, ~#dll~0.offset; {2795#true} is VALID [2020-07-10 15:04:33,833 INFO L280 TraceCheckUtils]: 40: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:33,834 INFO L275 TraceCheckUtils]: 41: Hoare quadruple {2795#true} {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #540#return; {2795#true} is VALID [2020-07-10 15:04:33,842 INFO L263 TraceCheckUtils]: 0: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~ret11.base, #t~ret11.offset := dll_create_generic(#funAddr~dll_insert_slave.base, #funAddr~dll_insert_slave.offset); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:33,843 INFO L280 TraceCheckUtils]: 1: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~insert_fnc.base, ~insert_fnc.offset := #in~insert_fnc.base, #in~insert_fnc.offset;call ~#dll~0.base, ~#dll~0.offset := #Ultimate.allocOnStack(4);call write~init~$Pointer$(0, 0, ~#dll~0.base, ~#dll~0.offset, 4); {2795#true} is VALID [2020-07-10 15:04:33,845 INFO L263 TraceCheckUtils]: 2: Hoare triple {2795#true} call ##fun~$Pointer$~TO~VOID(~#dll~0.base, ~#dll~0.offset, ~insert_fnc.base, ~insert_fnc.offset); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:33,846 INFO L280 TraceCheckUtils]: 3: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {2795#true} is VALID [2020-07-10 15:04:33,846 INFO L280 TraceCheckUtils]: 4: Hoare triple {2795#true} assume !(#in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset); {2795#true} is VALID [2020-07-10 15:04:33,848 INFO L263 TraceCheckUtils]: 5: Hoare triple {2795#true} call dll_insert_slave(#~9.base, #~9.offset); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:33,848 INFO L280 TraceCheckUtils]: 6: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {2795#true} is VALID [2020-07-10 15:04:33,849 INFO L263 TraceCheckUtils]: 7: Hoare triple {2795#true} call #t~ret4.base, #t~ret4.offset := alloc_or_die_slave(); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:33,849 INFO L280 TraceCheckUtils]: 8: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {2795#true} is VALID [2020-07-10 15:04:33,850 INFO L280 TraceCheckUtils]: 9: Hoare triple {2795#true} assume !(~ptr~0.base == 0 && ~ptr~0.offset == 0); {2795#true} is VALID [2020-07-10 15:04:33,850 INFO L280 TraceCheckUtils]: 10: Hoare triple {2795#true} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {2795#true} is VALID [2020-07-10 15:04:33,850 INFO L280 TraceCheckUtils]: 11: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:33,850 INFO L275 TraceCheckUtils]: 12: Hoare quadruple {2795#true} {2795#true} #490#return; {2795#true} is VALID [2020-07-10 15:04:33,850 INFO L280 TraceCheckUtils]: 13: Hoare triple {2795#true} ~item~0.base, ~item~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~0.base, ~next~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset;call write~$Pointer$(~next~0.base, ~next~0.offset, ~item~0.base, ~item~0.offset, 4); {2795#true} is VALID [2020-07-10 15:04:33,851 INFO L280 TraceCheckUtils]: 14: Hoare triple {2795#true} assume !(~next~0.base != 0 || ~next~0.offset != 0); {2795#true} is VALID [2020-07-10 15:04:33,851 INFO L280 TraceCheckUtils]: 15: Hoare triple {2795#true} call write~$Pointer$(~item~0.base, ~item~0.offset, ~dll.base, ~dll.offset, 4); {2795#true} is VALID [2020-07-10 15:04:33,851 INFO L280 TraceCheckUtils]: 16: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:33,851 INFO L275 TraceCheckUtils]: 17: Hoare quadruple {2795#true} {2795#true} #514#return; {2795#true} is VALID [2020-07-10 15:04:33,852 INFO L280 TraceCheckUtils]: 18: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:33,852 INFO L275 TraceCheckUtils]: 19: Hoare quadruple {2795#true} {2795#true} #534#return; {2795#true} is VALID [2020-07-10 15:04:33,854 INFO L263 TraceCheckUtils]: 20: Hoare triple {2795#true} call ##fun~$Pointer$~TO~VOID(~#dll~0.base, ~#dll~0.offset, ~insert_fnc.base, ~insert_fnc.offset); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:33,854 INFO L280 TraceCheckUtils]: 21: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {2795#true} is VALID [2020-07-10 15:04:33,854 INFO L280 TraceCheckUtils]: 22: Hoare triple {2795#true} assume !(#in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset); {2795#true} is VALID [2020-07-10 15:04:33,856 INFO L263 TraceCheckUtils]: 23: Hoare triple {2795#true} call dll_insert_slave(#~9.base, #~9.offset); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:33,857 INFO L280 TraceCheckUtils]: 24: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {2795#true} is VALID [2020-07-10 15:04:33,858 INFO L263 TraceCheckUtils]: 25: Hoare triple {2795#true} call #t~ret4.base, #t~ret4.offset := alloc_or_die_slave(); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:33,858 INFO L280 TraceCheckUtils]: 26: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {2795#true} is VALID [2020-07-10 15:04:33,859 INFO L280 TraceCheckUtils]: 27: Hoare triple {2795#true} assume !(~ptr~0.base == 0 && ~ptr~0.offset == 0); {2795#true} is VALID [2020-07-10 15:04:33,859 INFO L280 TraceCheckUtils]: 28: Hoare triple {2795#true} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {2795#true} is VALID [2020-07-10 15:04:33,860 INFO L280 TraceCheckUtils]: 29: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:33,860 INFO L275 TraceCheckUtils]: 30: Hoare quadruple {2795#true} {2795#true} #490#return; {2795#true} is VALID [2020-07-10 15:04:33,860 INFO L280 TraceCheckUtils]: 31: Hoare triple {2795#true} ~item~0.base, ~item~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~0.base, ~next~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset;call write~$Pointer$(~next~0.base, ~next~0.offset, ~item~0.base, ~item~0.offset, 4); {2795#true} is VALID [2020-07-10 15:04:33,861 INFO L280 TraceCheckUtils]: 32: Hoare triple {2795#true} assume !(~next~0.base != 0 || ~next~0.offset != 0); {2795#true} is VALID [2020-07-10 15:04:33,861 INFO L280 TraceCheckUtils]: 33: Hoare triple {2795#true} call write~$Pointer$(~item~0.base, ~item~0.offset, ~dll.base, ~dll.offset, 4); {2795#true} is VALID [2020-07-10 15:04:33,862 INFO L280 TraceCheckUtils]: 34: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:33,862 INFO L275 TraceCheckUtils]: 35: Hoare quadruple {2795#true} {2795#true} #514#return; {2795#true} is VALID [2020-07-10 15:04:33,862 INFO L280 TraceCheckUtils]: 36: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:33,863 INFO L275 TraceCheckUtils]: 37: Hoare quadruple {2795#true} {2795#true} #536#return; {2795#true} is VALID [2020-07-10 15:04:33,863 INFO L280 TraceCheckUtils]: 38: Hoare triple {2795#true} assume -2147483648 <= #t~nondet8 && #t~nondet8 <= 2147483647; {2795#true} is VALID [2020-07-10 15:04:33,865 INFO L280 TraceCheckUtils]: 39: Hoare triple {2795#true} assume !(0 != #t~nondet8);havoc #t~nondet8; {2795#true} is VALID [2020-07-10 15:04:33,865 INFO L280 TraceCheckUtils]: 40: Hoare triple {2795#true} call #t~mem10.base, #t~mem10.offset := read~$Pointer$(~#dll~0.base, ~#dll~0.offset, 4);#res.base, #res.offset := #t~mem10.base, #t~mem10.offset;havoc #t~mem10.base, #t~mem10.offset;call ULTIMATE.dealloc(~#dll~0.base, ~#dll~0.offset);havoc ~#dll~0.base, ~#dll~0.offset; {2795#true} is VALID [2020-07-10 15:04:33,866 INFO L280 TraceCheckUtils]: 41: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:33,866 INFO L275 TraceCheckUtils]: 42: Hoare quadruple {2795#true} {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #540#return; {2795#true} is VALID [2020-07-10 15:04:33,867 INFO L280 TraceCheckUtils]: 43: Hoare triple {2795#true} #res.base, #res.offset := #t~ret11.base, #t~ret11.offset;havoc #t~ret11.base, #t~ret11.offset; {2795#true} is VALID [2020-07-10 15:04:33,867 INFO L280 TraceCheckUtils]: 44: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:33,867 INFO L275 TraceCheckUtils]: 45: Hoare quadruple {2795#true} {2795#true} #496#return; {2795#true} is VALID [2020-07-10 15:04:33,874 INFO L280 TraceCheckUtils]: 0: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {2795#true} is VALID [2020-07-10 15:04:33,878 INFO L263 TraceCheckUtils]: 1: Hoare triple {2795#true} call #t~ret17.base, #t~ret17.offset := alloc_or_die_master(); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:33,879 INFO L280 TraceCheckUtils]: 2: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc3.base, #t~malloc3.offset := #Ultimate.allocOnHeap(12);~ptr~1.base, ~ptr~1.offset := #t~malloc3.base, #t~malloc3.offset; {2795#true} is VALID [2020-07-10 15:04:33,879 INFO L280 TraceCheckUtils]: 3: Hoare triple {2795#true} assume !(~ptr~1.base == 0 && ~ptr~1.offset == 0); {2795#true} is VALID [2020-07-10 15:04:33,880 INFO L280 TraceCheckUtils]: 4: Hoare triple {2795#true} call write~$Pointer$(0, 0, ~ptr~1.base, ~ptr~1.offset, 4);call write~$Pointer$(0, 0, ~ptr~1.base, 4 + ~ptr~1.offset, 4);call write~$Pointer$(0, 0, ~ptr~1.base, 8 + ~ptr~1.offset, 4);#res.base, #res.offset := ~ptr~1.base, ~ptr~1.offset; {2795#true} is VALID [2020-07-10 15:04:33,880 INFO L280 TraceCheckUtils]: 5: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:33,880 INFO L275 TraceCheckUtils]: 6: Hoare quadruple {2795#true} {2795#true} #494#return; {2795#true} is VALID [2020-07-10 15:04:33,881 INFO L280 TraceCheckUtils]: 7: Hoare triple {2795#true} ~item~1.base, ~item~1.offset := #t~ret17.base, #t~ret17.offset;havoc #t~ret17.base, #t~ret17.offset;call #t~mem18.base, #t~mem18.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~3.base, ~next~3.offset := #t~mem18.base, #t~mem18.offset;havoc #t~mem18.base, #t~mem18.offset;call write~$Pointer$(~next~3.base, ~next~3.offset, ~item~1.base, ~item~1.offset, 4); {2795#true} is VALID [2020-07-10 15:04:33,881 INFO L280 TraceCheckUtils]: 8: Hoare triple {2795#true} assume ~next~3.base != 0 || ~next~3.offset != 0;call write~$Pointer$(~item~1.base, ~item~1.offset, ~next~3.base, 4 + ~next~3.offset, 4); {2795#true} is VALID [2020-07-10 15:04:33,883 INFO L263 TraceCheckUtils]: 9: Hoare triple {2795#true} call #t~ret19.base, #t~ret19.offset := dll_create_slave(); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:33,884 INFO L263 TraceCheckUtils]: 10: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~ret11.base, #t~ret11.offset := dll_create_generic(#funAddr~dll_insert_slave.base, #funAddr~dll_insert_slave.offset); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:33,885 INFO L280 TraceCheckUtils]: 11: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~insert_fnc.base, ~insert_fnc.offset := #in~insert_fnc.base, #in~insert_fnc.offset;call ~#dll~0.base, ~#dll~0.offset := #Ultimate.allocOnStack(4);call write~init~$Pointer$(0, 0, ~#dll~0.base, ~#dll~0.offset, 4); {2795#true} is VALID [2020-07-10 15:04:33,887 INFO L263 TraceCheckUtils]: 12: Hoare triple {2795#true} call ##fun~$Pointer$~TO~VOID(~#dll~0.base, ~#dll~0.offset, ~insert_fnc.base, ~insert_fnc.offset); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:33,887 INFO L280 TraceCheckUtils]: 13: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {2795#true} is VALID [2020-07-10 15:04:33,888 INFO L280 TraceCheckUtils]: 14: Hoare triple {2795#true} assume !(#in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset); {2795#true} is VALID [2020-07-10 15:04:33,889 INFO L263 TraceCheckUtils]: 15: Hoare triple {2795#true} call dll_insert_slave(#~9.base, #~9.offset); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:33,890 INFO L280 TraceCheckUtils]: 16: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {2795#true} is VALID [2020-07-10 15:04:33,891 INFO L263 TraceCheckUtils]: 17: Hoare triple {2795#true} call #t~ret4.base, #t~ret4.offset := alloc_or_die_slave(); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:33,891 INFO L280 TraceCheckUtils]: 18: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {2795#true} is VALID [2020-07-10 15:04:33,892 INFO L280 TraceCheckUtils]: 19: Hoare triple {2795#true} assume !(~ptr~0.base == 0 && ~ptr~0.offset == 0); {2795#true} is VALID [2020-07-10 15:04:33,892 INFO L280 TraceCheckUtils]: 20: Hoare triple {2795#true} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {2795#true} is VALID [2020-07-10 15:04:33,892 INFO L280 TraceCheckUtils]: 21: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:33,893 INFO L275 TraceCheckUtils]: 22: Hoare quadruple {2795#true} {2795#true} #490#return; {2795#true} is VALID [2020-07-10 15:04:33,893 INFO L280 TraceCheckUtils]: 23: Hoare triple {2795#true} ~item~0.base, ~item~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~0.base, ~next~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset;call write~$Pointer$(~next~0.base, ~next~0.offset, ~item~0.base, ~item~0.offset, 4); {2795#true} is VALID [2020-07-10 15:04:33,894 INFO L280 TraceCheckUtils]: 24: Hoare triple {2795#true} assume !(~next~0.base != 0 || ~next~0.offset != 0); {2795#true} is VALID [2020-07-10 15:04:33,894 INFO L280 TraceCheckUtils]: 25: Hoare triple {2795#true} call write~$Pointer$(~item~0.base, ~item~0.offset, ~dll.base, ~dll.offset, 4); {2795#true} is VALID [2020-07-10 15:04:33,894 INFO L280 TraceCheckUtils]: 26: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:33,895 INFO L275 TraceCheckUtils]: 27: Hoare quadruple {2795#true} {2795#true} #514#return; {2795#true} is VALID [2020-07-10 15:04:33,895 INFO L280 TraceCheckUtils]: 28: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:33,895 INFO L275 TraceCheckUtils]: 29: Hoare quadruple {2795#true} {2795#true} #534#return; {2795#true} is VALID [2020-07-10 15:04:33,898 INFO L263 TraceCheckUtils]: 30: Hoare triple {2795#true} call ##fun~$Pointer$~TO~VOID(~#dll~0.base, ~#dll~0.offset, ~insert_fnc.base, ~insert_fnc.offset); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:33,898 INFO L280 TraceCheckUtils]: 31: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {2795#true} is VALID [2020-07-10 15:04:33,899 INFO L280 TraceCheckUtils]: 32: Hoare triple {2795#true} assume !(#in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset); {2795#true} is VALID [2020-07-10 15:04:33,901 INFO L263 TraceCheckUtils]: 33: Hoare triple {2795#true} call dll_insert_slave(#~9.base, #~9.offset); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:33,901 INFO L280 TraceCheckUtils]: 34: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {2795#true} is VALID [2020-07-10 15:04:33,902 INFO L263 TraceCheckUtils]: 35: Hoare triple {2795#true} call #t~ret4.base, #t~ret4.offset := alloc_or_die_slave(); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:33,903 INFO L280 TraceCheckUtils]: 36: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {2795#true} is VALID [2020-07-10 15:04:33,903 INFO L280 TraceCheckUtils]: 37: Hoare triple {2795#true} assume !(~ptr~0.base == 0 && ~ptr~0.offset == 0); {2795#true} is VALID [2020-07-10 15:04:33,903 INFO L280 TraceCheckUtils]: 38: Hoare triple {2795#true} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {2795#true} is VALID [2020-07-10 15:04:33,904 INFO L280 TraceCheckUtils]: 39: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:33,904 INFO L275 TraceCheckUtils]: 40: Hoare quadruple {2795#true} {2795#true} #490#return; {2795#true} is VALID [2020-07-10 15:04:33,904 INFO L280 TraceCheckUtils]: 41: Hoare triple {2795#true} ~item~0.base, ~item~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~0.base, ~next~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset;call write~$Pointer$(~next~0.base, ~next~0.offset, ~item~0.base, ~item~0.offset, 4); {2795#true} is VALID [2020-07-10 15:04:33,905 INFO L280 TraceCheckUtils]: 42: Hoare triple {2795#true} assume !(~next~0.base != 0 || ~next~0.offset != 0); {2795#true} is VALID [2020-07-10 15:04:33,905 INFO L280 TraceCheckUtils]: 43: Hoare triple {2795#true} call write~$Pointer$(~item~0.base, ~item~0.offset, ~dll.base, ~dll.offset, 4); {2795#true} is VALID [2020-07-10 15:04:33,906 INFO L280 TraceCheckUtils]: 44: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:33,906 INFO L275 TraceCheckUtils]: 45: Hoare quadruple {2795#true} {2795#true} #514#return; {2795#true} is VALID [2020-07-10 15:04:33,906 INFO L280 TraceCheckUtils]: 46: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:33,907 INFO L275 TraceCheckUtils]: 47: Hoare quadruple {2795#true} {2795#true} #536#return; {2795#true} is VALID [2020-07-10 15:04:33,907 INFO L280 TraceCheckUtils]: 48: Hoare triple {2795#true} assume -2147483648 <= #t~nondet8 && #t~nondet8 <= 2147483647; {2795#true} is VALID [2020-07-10 15:04:33,907 INFO L280 TraceCheckUtils]: 49: Hoare triple {2795#true} assume !(0 != #t~nondet8);havoc #t~nondet8; {2795#true} is VALID [2020-07-10 15:04:33,908 INFO L280 TraceCheckUtils]: 50: Hoare triple {2795#true} call #t~mem10.base, #t~mem10.offset := read~$Pointer$(~#dll~0.base, ~#dll~0.offset, 4);#res.base, #res.offset := #t~mem10.base, #t~mem10.offset;havoc #t~mem10.base, #t~mem10.offset;call ULTIMATE.dealloc(~#dll~0.base, ~#dll~0.offset);havoc ~#dll~0.base, ~#dll~0.offset; {2795#true} is VALID [2020-07-10 15:04:33,908 INFO L280 TraceCheckUtils]: 51: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:33,908 INFO L275 TraceCheckUtils]: 52: Hoare quadruple {2795#true} {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #540#return; {2795#true} is VALID [2020-07-10 15:04:33,909 INFO L280 TraceCheckUtils]: 53: Hoare triple {2795#true} #res.base, #res.offset := #t~ret11.base, #t~ret11.offset;havoc #t~ret11.base, #t~ret11.offset; {2795#true} is VALID [2020-07-10 15:04:33,909 INFO L280 TraceCheckUtils]: 54: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:33,910 INFO L275 TraceCheckUtils]: 55: Hoare quadruple {2795#true} {2795#true} #496#return; {2795#true} is VALID [2020-07-10 15:04:33,910 INFO L280 TraceCheckUtils]: 56: Hoare triple {2795#true} call write~$Pointer$(#t~ret19.base, #t~ret19.offset, ~item~1.base, 8 + ~item~1.offset, 4);havoc #t~ret19.base, #t~ret19.offset;call write~$Pointer$(~item~1.base, ~item~1.offset, ~dll.base, ~dll.offset, 4); {2795#true} is VALID [2020-07-10 15:04:33,910 INFO L280 TraceCheckUtils]: 57: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:33,911 INFO L275 TraceCheckUtils]: 58: Hoare quadruple {2795#true} {2795#true} #512#return; {2795#true} is VALID [2020-07-10 15:04:33,921 INFO L280 TraceCheckUtils]: 0: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {2795#true} is VALID [2020-07-10 15:04:33,922 INFO L280 TraceCheckUtils]: 1: Hoare triple {2795#true} assume #in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset; {2795#true} is VALID [2020-07-10 15:04:33,925 INFO L263 TraceCheckUtils]: 2: Hoare triple {2795#true} call dll_insert_master(#~9.base, #~9.offset); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:33,926 INFO L280 TraceCheckUtils]: 3: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {2795#true} is VALID [2020-07-10 15:04:33,927 INFO L263 TraceCheckUtils]: 4: Hoare triple {2795#true} call #t~ret17.base, #t~ret17.offset := alloc_or_die_master(); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:33,927 INFO L280 TraceCheckUtils]: 5: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc3.base, #t~malloc3.offset := #Ultimate.allocOnHeap(12);~ptr~1.base, ~ptr~1.offset := #t~malloc3.base, #t~malloc3.offset; {2795#true} is VALID [2020-07-10 15:04:33,928 INFO L280 TraceCheckUtils]: 6: Hoare triple {2795#true} assume !(~ptr~1.base == 0 && ~ptr~1.offset == 0); {2795#true} is VALID [2020-07-10 15:04:33,928 INFO L280 TraceCheckUtils]: 7: Hoare triple {2795#true} call write~$Pointer$(0, 0, ~ptr~1.base, ~ptr~1.offset, 4);call write~$Pointer$(0, 0, ~ptr~1.base, 4 + ~ptr~1.offset, 4);call write~$Pointer$(0, 0, ~ptr~1.base, 8 + ~ptr~1.offset, 4);#res.base, #res.offset := ~ptr~1.base, ~ptr~1.offset; {2795#true} is VALID [2020-07-10 15:04:33,929 INFO L280 TraceCheckUtils]: 8: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:33,929 INFO L275 TraceCheckUtils]: 9: Hoare quadruple {2795#true} {2795#true} #494#return; {2795#true} is VALID [2020-07-10 15:04:33,929 INFO L280 TraceCheckUtils]: 10: Hoare triple {2795#true} ~item~1.base, ~item~1.offset := #t~ret17.base, #t~ret17.offset;havoc #t~ret17.base, #t~ret17.offset;call #t~mem18.base, #t~mem18.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~3.base, ~next~3.offset := #t~mem18.base, #t~mem18.offset;havoc #t~mem18.base, #t~mem18.offset;call write~$Pointer$(~next~3.base, ~next~3.offset, ~item~1.base, ~item~1.offset, 4); {2795#true} is VALID [2020-07-10 15:04:33,930 INFO L280 TraceCheckUtils]: 11: Hoare triple {2795#true} assume ~next~3.base != 0 || ~next~3.offset != 0;call write~$Pointer$(~item~1.base, ~item~1.offset, ~next~3.base, 4 + ~next~3.offset, 4); {2795#true} is VALID [2020-07-10 15:04:33,931 INFO L263 TraceCheckUtils]: 12: Hoare triple {2795#true} call #t~ret19.base, #t~ret19.offset := dll_create_slave(); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:33,933 INFO L263 TraceCheckUtils]: 13: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~ret11.base, #t~ret11.offset := dll_create_generic(#funAddr~dll_insert_slave.base, #funAddr~dll_insert_slave.offset); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:33,933 INFO L280 TraceCheckUtils]: 14: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~insert_fnc.base, ~insert_fnc.offset := #in~insert_fnc.base, #in~insert_fnc.offset;call ~#dll~0.base, ~#dll~0.offset := #Ultimate.allocOnStack(4);call write~init~$Pointer$(0, 0, ~#dll~0.base, ~#dll~0.offset, 4); {2795#true} is VALID [2020-07-10 15:04:33,935 INFO L263 TraceCheckUtils]: 15: Hoare triple {2795#true} call ##fun~$Pointer$~TO~VOID(~#dll~0.base, ~#dll~0.offset, ~insert_fnc.base, ~insert_fnc.offset); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:33,935 INFO L280 TraceCheckUtils]: 16: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {2795#true} is VALID [2020-07-10 15:04:33,936 INFO L280 TraceCheckUtils]: 17: Hoare triple {2795#true} assume !(#in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset); {2795#true} is VALID [2020-07-10 15:04:33,938 INFO L263 TraceCheckUtils]: 18: Hoare triple {2795#true} call dll_insert_slave(#~9.base, #~9.offset); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:33,938 INFO L280 TraceCheckUtils]: 19: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {2795#true} is VALID [2020-07-10 15:04:33,939 INFO L263 TraceCheckUtils]: 20: Hoare triple {2795#true} call #t~ret4.base, #t~ret4.offset := alloc_or_die_slave(); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:33,940 INFO L280 TraceCheckUtils]: 21: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {2795#true} is VALID [2020-07-10 15:04:33,940 INFO L280 TraceCheckUtils]: 22: Hoare triple {2795#true} assume !(~ptr~0.base == 0 && ~ptr~0.offset == 0); {2795#true} is VALID [2020-07-10 15:04:33,940 INFO L280 TraceCheckUtils]: 23: Hoare triple {2795#true} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {2795#true} is VALID [2020-07-10 15:04:33,941 INFO L280 TraceCheckUtils]: 24: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:33,941 INFO L275 TraceCheckUtils]: 25: Hoare quadruple {2795#true} {2795#true} #490#return; {2795#true} is VALID [2020-07-10 15:04:33,941 INFO L280 TraceCheckUtils]: 26: Hoare triple {2795#true} ~item~0.base, ~item~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~0.base, ~next~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset;call write~$Pointer$(~next~0.base, ~next~0.offset, ~item~0.base, ~item~0.offset, 4); {2795#true} is VALID [2020-07-10 15:04:33,942 INFO L280 TraceCheckUtils]: 27: Hoare triple {2795#true} assume !(~next~0.base != 0 || ~next~0.offset != 0); {2795#true} is VALID [2020-07-10 15:04:33,942 INFO L280 TraceCheckUtils]: 28: Hoare triple {2795#true} call write~$Pointer$(~item~0.base, ~item~0.offset, ~dll.base, ~dll.offset, 4); {2795#true} is VALID [2020-07-10 15:04:33,942 INFO L280 TraceCheckUtils]: 29: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:33,943 INFO L275 TraceCheckUtils]: 30: Hoare quadruple {2795#true} {2795#true} #514#return; {2795#true} is VALID [2020-07-10 15:04:33,943 INFO L280 TraceCheckUtils]: 31: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:33,943 INFO L275 TraceCheckUtils]: 32: Hoare quadruple {2795#true} {2795#true} #534#return; {2795#true} is VALID [2020-07-10 15:04:33,946 INFO L263 TraceCheckUtils]: 33: Hoare triple {2795#true} call ##fun~$Pointer$~TO~VOID(~#dll~0.base, ~#dll~0.offset, ~insert_fnc.base, ~insert_fnc.offset); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:33,946 INFO L280 TraceCheckUtils]: 34: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {2795#true} is VALID [2020-07-10 15:04:33,947 INFO L280 TraceCheckUtils]: 35: Hoare triple {2795#true} assume !(#in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset); {2795#true} is VALID [2020-07-10 15:04:33,948 INFO L263 TraceCheckUtils]: 36: Hoare triple {2795#true} call dll_insert_slave(#~9.base, #~9.offset); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:33,949 INFO L280 TraceCheckUtils]: 37: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {2795#true} is VALID [2020-07-10 15:04:33,950 INFO L263 TraceCheckUtils]: 38: Hoare triple {2795#true} call #t~ret4.base, #t~ret4.offset := alloc_or_die_slave(); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:33,950 INFO L280 TraceCheckUtils]: 39: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {2795#true} is VALID [2020-07-10 15:04:33,950 INFO L280 TraceCheckUtils]: 40: Hoare triple {2795#true} assume !(~ptr~0.base == 0 && ~ptr~0.offset == 0); {2795#true} is VALID [2020-07-10 15:04:33,951 INFO L280 TraceCheckUtils]: 41: Hoare triple {2795#true} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {2795#true} is VALID [2020-07-10 15:04:33,951 INFO L280 TraceCheckUtils]: 42: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:33,951 INFO L275 TraceCheckUtils]: 43: Hoare quadruple {2795#true} {2795#true} #490#return; {2795#true} is VALID [2020-07-10 15:04:33,952 INFO L280 TraceCheckUtils]: 44: Hoare triple {2795#true} ~item~0.base, ~item~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~0.base, ~next~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset;call write~$Pointer$(~next~0.base, ~next~0.offset, ~item~0.base, ~item~0.offset, 4); {2795#true} is VALID [2020-07-10 15:04:33,952 INFO L280 TraceCheckUtils]: 45: Hoare triple {2795#true} assume !(~next~0.base != 0 || ~next~0.offset != 0); {2795#true} is VALID [2020-07-10 15:04:33,953 INFO L280 TraceCheckUtils]: 46: Hoare triple {2795#true} call write~$Pointer$(~item~0.base, ~item~0.offset, ~dll.base, ~dll.offset, 4); {2795#true} is VALID [2020-07-10 15:04:33,953 INFO L280 TraceCheckUtils]: 47: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:33,953 INFO L275 TraceCheckUtils]: 48: Hoare quadruple {2795#true} {2795#true} #514#return; {2795#true} is VALID [2020-07-10 15:04:33,954 INFO L280 TraceCheckUtils]: 49: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:33,954 INFO L275 TraceCheckUtils]: 50: Hoare quadruple {2795#true} {2795#true} #536#return; {2795#true} is VALID [2020-07-10 15:04:33,954 INFO L280 TraceCheckUtils]: 51: Hoare triple {2795#true} assume -2147483648 <= #t~nondet8 && #t~nondet8 <= 2147483647; {2795#true} is VALID [2020-07-10 15:04:33,955 INFO L280 TraceCheckUtils]: 52: Hoare triple {2795#true} assume !(0 != #t~nondet8);havoc #t~nondet8; {2795#true} is VALID [2020-07-10 15:04:33,955 INFO L280 TraceCheckUtils]: 53: Hoare triple {2795#true} call #t~mem10.base, #t~mem10.offset := read~$Pointer$(~#dll~0.base, ~#dll~0.offset, 4);#res.base, #res.offset := #t~mem10.base, #t~mem10.offset;havoc #t~mem10.base, #t~mem10.offset;call ULTIMATE.dealloc(~#dll~0.base, ~#dll~0.offset);havoc ~#dll~0.base, ~#dll~0.offset; {2795#true} is VALID [2020-07-10 15:04:33,955 INFO L280 TraceCheckUtils]: 54: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:33,955 INFO L275 TraceCheckUtils]: 55: Hoare quadruple {2795#true} {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #540#return; {2795#true} is VALID [2020-07-10 15:04:33,956 INFO L280 TraceCheckUtils]: 56: Hoare triple {2795#true} #res.base, #res.offset := #t~ret11.base, #t~ret11.offset;havoc #t~ret11.base, #t~ret11.offset; {2795#true} is VALID [2020-07-10 15:04:33,956 INFO L280 TraceCheckUtils]: 57: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:33,956 INFO L275 TraceCheckUtils]: 58: Hoare quadruple {2795#true} {2795#true} #496#return; {2795#true} is VALID [2020-07-10 15:04:33,957 INFO L280 TraceCheckUtils]: 59: Hoare triple {2795#true} call write~$Pointer$(#t~ret19.base, #t~ret19.offset, ~item~1.base, 8 + ~item~1.offset, 4);havoc #t~ret19.base, #t~ret19.offset;call write~$Pointer$(~item~1.base, ~item~1.offset, ~dll.base, ~dll.offset, 4); {2795#true} is VALID [2020-07-10 15:04:33,957 INFO L280 TraceCheckUtils]: 60: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:33,957 INFO L275 TraceCheckUtils]: 61: Hoare quadruple {2795#true} {2795#true} #512#return; {2795#true} is VALID [2020-07-10 15:04:33,957 INFO L280 TraceCheckUtils]: 62: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:33,958 INFO L275 TraceCheckUtils]: 63: Hoare quadruple {2795#true} {2796#false} #536#return; {2796#false} is VALID [2020-07-10 15:04:33,967 INFO L280 TraceCheckUtils]: 0: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~insert_fnc.base, ~insert_fnc.offset := #in~insert_fnc.base, #in~insert_fnc.offset;call ~#dll~0.base, ~#dll~0.offset := #Ultimate.allocOnStack(4);call write~init~$Pointer$(0, 0, ~#dll~0.base, ~#dll~0.offset, 4); {3084#(and (= 0 (select (select |#memory_$Pointer$.base| |dll_create_generic_~#dll~0.base|) |dll_create_generic_~#dll~0.offset|)) (<= (+ |#StackHeapBarrier| 1) |dll_create_generic_~#dll~0.base|) (= 0 (select (select |#memory_$Pointer$.offset| |dll_create_generic_~#dll~0.base|) |dll_create_generic_~#dll~0.offset|)))} is VALID [2020-07-10 15:04:33,970 INFO L263 TraceCheckUtils]: 1: Hoare triple {3084#(and (= 0 (select (select |#memory_$Pointer$.base| |dll_create_generic_~#dll~0.base|) |dll_create_generic_~#dll~0.offset|)) (<= (+ |#StackHeapBarrier| 1) |dll_create_generic_~#dll~0.base|) (= 0 (select (select |#memory_$Pointer$.offset| |dll_create_generic_~#dll~0.base|) |dll_create_generic_~#dll~0.offset|)))} call ##fun~$Pointer$~TO~VOID(~#dll~0.base, ~#dll~0.offset, ~insert_fnc.base, ~insert_fnc.offset); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:33,972 INFO L280 TraceCheckUtils]: 2: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {3213#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:33,973 INFO L280 TraceCheckUtils]: 3: Hoare triple {3213#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} assume #in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset; {3213#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:33,975 INFO L263 TraceCheckUtils]: 4: Hoare triple {3213#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call dll_insert_master(#~9.base, #~9.offset); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:33,976 INFO L280 TraceCheckUtils]: 5: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {3274#(and (= dll_insert_master_~dll.offset |dll_insert_master_#in~dll.offset|) (= (select |#memory_$Pointer$.offset| dll_insert_master_~dll.base) (select |old(#memory_$Pointer$.offset)| dll_insert_master_~dll.base)) (= (select |#memory_$Pointer$.base| dll_insert_master_~dll.base) (select |old(#memory_$Pointer$.base)| dll_insert_master_~dll.base)) (= dll_insert_master_~dll.base |dll_insert_master_#in~dll.base|))} is VALID [2020-07-10 15:04:33,978 INFO L263 TraceCheckUtils]: 6: Hoare triple {3274#(and (= dll_insert_master_~dll.offset |dll_insert_master_#in~dll.offset|) (= (select |#memory_$Pointer$.offset| dll_insert_master_~dll.base) (select |old(#memory_$Pointer$.offset)| dll_insert_master_~dll.base)) (= (select |#memory_$Pointer$.base| dll_insert_master_~dll.base) (select |old(#memory_$Pointer$.base)| dll_insert_master_~dll.base)) (= dll_insert_master_~dll.base |dll_insert_master_#in~dll.base|))} call #t~ret17.base, #t~ret17.offset := alloc_or_die_master(); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:33,980 INFO L280 TraceCheckUtils]: 7: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc3.base, #t~malloc3.offset := #Ultimate.allocOnHeap(12);~ptr~1.base, ~ptr~1.offset := #t~malloc3.base, #t~malloc3.offset; {3329#(and (<= (+ alloc_or_die_master_~ptr~1.base 1) |#StackHeapBarrier|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:33,981 INFO L280 TraceCheckUtils]: 8: Hoare triple {3329#(and (<= (+ alloc_or_die_master_~ptr~1.base 1) |#StackHeapBarrier|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} assume !(~ptr~1.base == 0 && ~ptr~1.offset == 0); {3329#(and (<= (+ alloc_or_die_master_~ptr~1.base 1) |#StackHeapBarrier|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:33,985 INFO L280 TraceCheckUtils]: 9: Hoare triple {3329#(and (<= (+ alloc_or_die_master_~ptr~1.base 1) |#StackHeapBarrier|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call write~$Pointer$(0, 0, ~ptr~1.base, ~ptr~1.offset, 4);call write~$Pointer$(0, 0, ~ptr~1.base, 4 + ~ptr~1.offset, 4);call write~$Pointer$(0, 0, ~ptr~1.base, 8 + ~ptr~1.offset, 4);#res.base, #res.offset := ~ptr~1.base, ~ptr~1.offset; {3330#(and (= |#memory_$Pointer$.base| (store |old(#memory_$Pointer$.base)| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) (select |#memory_$Pointer$.base| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|)))) (or (<= (+ (@diff |old(#memory_$Pointer$.offset)| |#memory_$Pointer$.offset|) 1) |#StackHeapBarrier|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|)) (= (store |old(#memory_$Pointer$.offset)| (@diff |old(#memory_$Pointer$.offset)| |#memory_$Pointer$.offset|) (select |#memory_$Pointer$.offset| (@diff |old(#memory_$Pointer$.offset)| |#memory_$Pointer$.offset|))) |#memory_$Pointer$.offset|) (or (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (<= (+ (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) 1) |#StackHeapBarrier|)))} is VALID [2020-07-10 15:04:33,988 INFO L280 TraceCheckUtils]: 10: Hoare triple {3330#(and (= |#memory_$Pointer$.base| (store |old(#memory_$Pointer$.base)| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) (select |#memory_$Pointer$.base| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|)))) (or (<= (+ (@diff |old(#memory_$Pointer$.offset)| |#memory_$Pointer$.offset|) 1) |#StackHeapBarrier|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|)) (= (store |old(#memory_$Pointer$.offset)| (@diff |old(#memory_$Pointer$.offset)| |#memory_$Pointer$.offset|) (select |#memory_$Pointer$.offset| (@diff |old(#memory_$Pointer$.offset)| |#memory_$Pointer$.offset|))) |#memory_$Pointer$.offset|) (or (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (<= (+ (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) 1) |#StackHeapBarrier|)))} assume true; {3330#(and (= |#memory_$Pointer$.base| (store |old(#memory_$Pointer$.base)| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) (select |#memory_$Pointer$.base| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|)))) (or (<= (+ (@diff |old(#memory_$Pointer$.offset)| |#memory_$Pointer$.offset|) 1) |#StackHeapBarrier|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|)) (= (store |old(#memory_$Pointer$.offset)| (@diff |old(#memory_$Pointer$.offset)| |#memory_$Pointer$.offset|) (select |#memory_$Pointer$.offset| (@diff |old(#memory_$Pointer$.offset)| |#memory_$Pointer$.offset|))) |#memory_$Pointer$.offset|) (or (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (<= (+ (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) 1) |#StackHeapBarrier|)))} is VALID [2020-07-10 15:04:33,992 INFO L275 TraceCheckUtils]: 11: Hoare quadruple {3330#(and (= |#memory_$Pointer$.base| (store |old(#memory_$Pointer$.base)| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) (select |#memory_$Pointer$.base| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|)))) (or (<= (+ (@diff |old(#memory_$Pointer$.offset)| |#memory_$Pointer$.offset|) 1) |#StackHeapBarrier|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|)) (= (store |old(#memory_$Pointer$.offset)| (@diff |old(#memory_$Pointer$.offset)| |#memory_$Pointer$.offset|) (select |#memory_$Pointer$.offset| (@diff |old(#memory_$Pointer$.offset)| |#memory_$Pointer$.offset|))) |#memory_$Pointer$.offset|) (or (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (<= (+ (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) 1) |#StackHeapBarrier|)))} {3274#(and (= dll_insert_master_~dll.offset |dll_insert_master_#in~dll.offset|) (= (select |#memory_$Pointer$.offset| dll_insert_master_~dll.base) (select |old(#memory_$Pointer$.offset)| dll_insert_master_~dll.base)) (= (select |#memory_$Pointer$.base| dll_insert_master_~dll.base) (select |old(#memory_$Pointer$.base)| dll_insert_master_~dll.base)) (= dll_insert_master_~dll.base |dll_insert_master_#in~dll.base|))} #494#return; {3280#(and (= dll_insert_master_~dll.offset |dll_insert_master_#in~dll.offset|) (or (= (select |#memory_$Pointer$.offset| dll_insert_master_~dll.base) (select |old(#memory_$Pointer$.offset)| dll_insert_master_~dll.base)) (<= (+ dll_insert_master_~dll.base 1) |#StackHeapBarrier|)) (or (= (select |#memory_$Pointer$.base| dll_insert_master_~dll.base) (select |old(#memory_$Pointer$.base)| dll_insert_master_~dll.base)) (<= (+ dll_insert_master_~dll.base 1) |#StackHeapBarrier|)) (= dll_insert_master_~dll.base |dll_insert_master_#in~dll.base|))} is VALID [2020-07-10 15:04:33,995 INFO L280 TraceCheckUtils]: 12: Hoare triple {3280#(and (= dll_insert_master_~dll.offset |dll_insert_master_#in~dll.offset|) (or (= (select |#memory_$Pointer$.offset| dll_insert_master_~dll.base) (select |old(#memory_$Pointer$.offset)| dll_insert_master_~dll.base)) (<= (+ dll_insert_master_~dll.base 1) |#StackHeapBarrier|)) (or (= (select |#memory_$Pointer$.base| dll_insert_master_~dll.base) (select |old(#memory_$Pointer$.base)| dll_insert_master_~dll.base)) (<= (+ dll_insert_master_~dll.base 1) |#StackHeapBarrier|)) (= dll_insert_master_~dll.base |dll_insert_master_#in~dll.base|))} ~item~1.base, ~item~1.offset := #t~ret17.base, #t~ret17.offset;havoc #t~ret17.base, #t~ret17.offset;call #t~mem18.base, #t~mem18.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~3.base, ~next~3.offset := #t~mem18.base, #t~mem18.offset;havoc #t~mem18.base, #t~mem18.offset;call write~$Pointer$(~next~3.base, ~next~3.offset, ~item~1.base, ~item~1.offset, 4); {3281#(or (<= (+ |dll_insert_master_#in~dll.base| 1) |#StackHeapBarrier|) (and (= dll_insert_master_~next~3.base (select (select |old(#memory_$Pointer$.base)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|)) (= (select (select |old(#memory_$Pointer$.offset)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|) dll_insert_master_~next~3.offset)))} is VALID [2020-07-10 15:04:33,997 INFO L280 TraceCheckUtils]: 13: Hoare triple {3281#(or (<= (+ |dll_insert_master_#in~dll.base| 1) |#StackHeapBarrier|) (and (= dll_insert_master_~next~3.base (select (select |old(#memory_$Pointer$.base)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|)) (= (select (select |old(#memory_$Pointer$.offset)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|) dll_insert_master_~next~3.offset)))} assume ~next~3.base != 0 || ~next~3.offset != 0;call write~$Pointer$(~item~1.base, ~item~1.offset, ~next~3.base, 4 + ~next~3.offset, 4); {3282#(or (not (= (select (select |old(#memory_$Pointer$.offset)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|) 0)) (not (= 0 (select (select |old(#memory_$Pointer$.base)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|))) (<= (+ |dll_insert_master_#in~dll.base| 1) |#StackHeapBarrier|))} is VALID [2020-07-10 15:04:33,999 INFO L263 TraceCheckUtils]: 14: Hoare triple {3282#(or (not (= (select (select |old(#memory_$Pointer$.offset)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|) 0)) (not (= 0 (select (select |old(#memory_$Pointer$.base)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|))) (<= (+ |dll_insert_master_#in~dll.base| 1) |#StackHeapBarrier|))} call #t~ret19.base, #t~ret19.offset := dll_create_slave(); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:34,001 INFO L263 TraceCheckUtils]: 15: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~ret11.base, #t~ret11.offset := dll_create_generic(#funAddr~dll_insert_slave.base, #funAddr~dll_insert_slave.offset); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:34,002 INFO L280 TraceCheckUtils]: 16: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~insert_fnc.base, ~insert_fnc.offset := #in~insert_fnc.base, #in~insert_fnc.offset;call ~#dll~0.base, ~#dll~0.offset := #Ultimate.allocOnStack(4);call write~init~$Pointer$(0, 0, ~#dll~0.base, ~#dll~0.offset, 4); {2795#true} is VALID [2020-07-10 15:04:34,004 INFO L263 TraceCheckUtils]: 17: Hoare triple {2795#true} call ##fun~$Pointer$~TO~VOID(~#dll~0.base, ~#dll~0.offset, ~insert_fnc.base, ~insert_fnc.offset); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:34,004 INFO L280 TraceCheckUtils]: 18: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {2795#true} is VALID [2020-07-10 15:04:34,004 INFO L280 TraceCheckUtils]: 19: Hoare triple {2795#true} assume !(#in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset); {2795#true} is VALID [2020-07-10 15:04:34,006 INFO L263 TraceCheckUtils]: 20: Hoare triple {2795#true} call dll_insert_slave(#~9.base, #~9.offset); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:34,006 INFO L280 TraceCheckUtils]: 21: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {2795#true} is VALID [2020-07-10 15:04:34,008 INFO L263 TraceCheckUtils]: 22: Hoare triple {2795#true} call #t~ret4.base, #t~ret4.offset := alloc_or_die_slave(); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:34,008 INFO L280 TraceCheckUtils]: 23: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {2795#true} is VALID [2020-07-10 15:04:34,009 INFO L280 TraceCheckUtils]: 24: Hoare triple {2795#true} assume !(~ptr~0.base == 0 && ~ptr~0.offset == 0); {2795#true} is VALID [2020-07-10 15:04:34,009 INFO L280 TraceCheckUtils]: 25: Hoare triple {2795#true} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {2795#true} is VALID [2020-07-10 15:04:34,009 INFO L280 TraceCheckUtils]: 26: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:34,010 INFO L275 TraceCheckUtils]: 27: Hoare quadruple {2795#true} {2795#true} #490#return; {2795#true} is VALID [2020-07-10 15:04:34,010 INFO L280 TraceCheckUtils]: 28: Hoare triple {2795#true} ~item~0.base, ~item~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~0.base, ~next~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset;call write~$Pointer$(~next~0.base, ~next~0.offset, ~item~0.base, ~item~0.offset, 4); {2795#true} is VALID [2020-07-10 15:04:34,010 INFO L280 TraceCheckUtils]: 29: Hoare triple {2795#true} assume !(~next~0.base != 0 || ~next~0.offset != 0); {2795#true} is VALID [2020-07-10 15:04:34,011 INFO L280 TraceCheckUtils]: 30: Hoare triple {2795#true} call write~$Pointer$(~item~0.base, ~item~0.offset, ~dll.base, ~dll.offset, 4); {2795#true} is VALID [2020-07-10 15:04:34,011 INFO L280 TraceCheckUtils]: 31: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:34,011 INFO L275 TraceCheckUtils]: 32: Hoare quadruple {2795#true} {2795#true} #514#return; {2795#true} is VALID [2020-07-10 15:04:34,012 INFO L280 TraceCheckUtils]: 33: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:34,012 INFO L275 TraceCheckUtils]: 34: Hoare quadruple {2795#true} {2795#true} #534#return; {2795#true} is VALID [2020-07-10 15:04:34,015 INFO L263 TraceCheckUtils]: 35: Hoare triple {2795#true} call ##fun~$Pointer$~TO~VOID(~#dll~0.base, ~#dll~0.offset, ~insert_fnc.base, ~insert_fnc.offset); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:34,015 INFO L280 TraceCheckUtils]: 36: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {2795#true} is VALID [2020-07-10 15:04:34,016 INFO L280 TraceCheckUtils]: 37: Hoare triple {2795#true} assume !(#in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset); {2795#true} is VALID [2020-07-10 15:04:34,017 INFO L263 TraceCheckUtils]: 38: Hoare triple {2795#true} call dll_insert_slave(#~9.base, #~9.offset); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:34,018 INFO L280 TraceCheckUtils]: 39: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {2795#true} is VALID [2020-07-10 15:04:34,019 INFO L263 TraceCheckUtils]: 40: Hoare triple {2795#true} call #t~ret4.base, #t~ret4.offset := alloc_or_die_slave(); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:34,019 INFO L280 TraceCheckUtils]: 41: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {2795#true} is VALID [2020-07-10 15:04:34,020 INFO L280 TraceCheckUtils]: 42: Hoare triple {2795#true} assume !(~ptr~0.base == 0 && ~ptr~0.offset == 0); {2795#true} is VALID [2020-07-10 15:04:34,020 INFO L280 TraceCheckUtils]: 43: Hoare triple {2795#true} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {2795#true} is VALID [2020-07-10 15:04:34,020 INFO L280 TraceCheckUtils]: 44: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:34,021 INFO L275 TraceCheckUtils]: 45: Hoare quadruple {2795#true} {2795#true} #490#return; {2795#true} is VALID [2020-07-10 15:04:34,021 INFO L280 TraceCheckUtils]: 46: Hoare triple {2795#true} ~item~0.base, ~item~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~0.base, ~next~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset;call write~$Pointer$(~next~0.base, ~next~0.offset, ~item~0.base, ~item~0.offset, 4); {2795#true} is VALID [2020-07-10 15:04:34,022 INFO L280 TraceCheckUtils]: 47: Hoare triple {2795#true} assume !(~next~0.base != 0 || ~next~0.offset != 0); {2795#true} is VALID [2020-07-10 15:04:34,022 INFO L280 TraceCheckUtils]: 48: Hoare triple {2795#true} call write~$Pointer$(~item~0.base, ~item~0.offset, ~dll.base, ~dll.offset, 4); {2795#true} is VALID [2020-07-10 15:04:34,022 INFO L280 TraceCheckUtils]: 49: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:34,022 INFO L275 TraceCheckUtils]: 50: Hoare quadruple {2795#true} {2795#true} #514#return; {2795#true} is VALID [2020-07-10 15:04:34,023 INFO L280 TraceCheckUtils]: 51: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:34,023 INFO L275 TraceCheckUtils]: 52: Hoare quadruple {2795#true} {2795#true} #536#return; {2795#true} is VALID [2020-07-10 15:04:34,023 INFO L280 TraceCheckUtils]: 53: Hoare triple {2795#true} assume -2147483648 <= #t~nondet8 && #t~nondet8 <= 2147483647; {2795#true} is VALID [2020-07-10 15:04:34,024 INFO L280 TraceCheckUtils]: 54: Hoare triple {2795#true} assume !(0 != #t~nondet8);havoc #t~nondet8; {2795#true} is VALID [2020-07-10 15:04:34,024 INFO L280 TraceCheckUtils]: 55: Hoare triple {2795#true} call #t~mem10.base, #t~mem10.offset := read~$Pointer$(~#dll~0.base, ~#dll~0.offset, 4);#res.base, #res.offset := #t~mem10.base, #t~mem10.offset;havoc #t~mem10.base, #t~mem10.offset;call ULTIMATE.dealloc(~#dll~0.base, ~#dll~0.offset);havoc ~#dll~0.base, ~#dll~0.offset; {2795#true} is VALID [2020-07-10 15:04:34,024 INFO L280 TraceCheckUtils]: 56: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:34,025 INFO L275 TraceCheckUtils]: 57: Hoare quadruple {2795#true} {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #540#return; {2795#true} is VALID [2020-07-10 15:04:34,025 INFO L280 TraceCheckUtils]: 58: Hoare triple {2795#true} #res.base, #res.offset := #t~ret11.base, #t~ret11.offset;havoc #t~ret11.base, #t~ret11.offset; {2795#true} is VALID [2020-07-10 15:04:34,026 INFO L280 TraceCheckUtils]: 59: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:34,027 INFO L275 TraceCheckUtils]: 60: Hoare quadruple {2795#true} {3282#(or (not (= (select (select |old(#memory_$Pointer$.offset)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|) 0)) (not (= 0 (select (select |old(#memory_$Pointer$.base)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|))) (<= (+ |dll_insert_master_#in~dll.base| 1) |#StackHeapBarrier|))} #496#return; {3282#(or (not (= (select (select |old(#memory_$Pointer$.offset)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|) 0)) (not (= 0 (select (select |old(#memory_$Pointer$.base)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|))) (<= (+ |dll_insert_master_#in~dll.base| 1) |#StackHeapBarrier|))} is VALID [2020-07-10 15:04:34,028 INFO L280 TraceCheckUtils]: 61: Hoare triple {3282#(or (not (= (select (select |old(#memory_$Pointer$.offset)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|) 0)) (not (= 0 (select (select |old(#memory_$Pointer$.base)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|))) (<= (+ |dll_insert_master_#in~dll.base| 1) |#StackHeapBarrier|))} call write~$Pointer$(#t~ret19.base, #t~ret19.offset, ~item~1.base, 8 + ~item~1.offset, 4);havoc #t~ret19.base, #t~ret19.offset;call write~$Pointer$(~item~1.base, ~item~1.offset, ~dll.base, ~dll.offset, 4); {3282#(or (not (= (select (select |old(#memory_$Pointer$.offset)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|) 0)) (not (= 0 (select (select |old(#memory_$Pointer$.base)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|))) (<= (+ |dll_insert_master_#in~dll.base| 1) |#StackHeapBarrier|))} is VALID [2020-07-10 15:04:34,029 INFO L280 TraceCheckUtils]: 62: Hoare triple {3282#(or (not (= (select (select |old(#memory_$Pointer$.offset)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|) 0)) (not (= 0 (select (select |old(#memory_$Pointer$.base)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|))) (<= (+ |dll_insert_master_#in~dll.base| 1) |#StackHeapBarrier|))} assume true; {3282#(or (not (= (select (select |old(#memory_$Pointer$.offset)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|) 0)) (not (= 0 (select (select |old(#memory_$Pointer$.base)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|))) (<= (+ |dll_insert_master_#in~dll.base| 1) |#StackHeapBarrier|))} is VALID [2020-07-10 15:04:34,031 INFO L275 TraceCheckUtils]: 63: Hoare quadruple {3282#(or (not (= (select (select |old(#memory_$Pointer$.offset)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|) 0)) (not (= 0 (select (select |old(#memory_$Pointer$.base)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|))) (<= (+ |dll_insert_master_#in~dll.base| 1) |#StackHeapBarrier|))} {3213#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #512#return; {3273#(or (not (= 0 (select (select |old(#memory_$Pointer$.base)| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|))) (<= (+ |##fun~$Pointer$~TO~VOID_#in~9.base| 1) |#StackHeapBarrier|) (not (= 0 (select (select |old(#memory_$Pointer$.offset)| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|))))} is VALID [2020-07-10 15:04:34,032 INFO L280 TraceCheckUtils]: 64: Hoare triple {3273#(or (not (= 0 (select (select |old(#memory_$Pointer$.base)| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|))) (<= (+ |##fun~$Pointer$~TO~VOID_#in~9.base| 1) |#StackHeapBarrier|) (not (= 0 (select (select |old(#memory_$Pointer$.offset)| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|))))} assume true; {3273#(or (not (= 0 (select (select |old(#memory_$Pointer$.base)| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|))) (<= (+ |##fun~$Pointer$~TO~VOID_#in~9.base| 1) |#StackHeapBarrier|) (not (= 0 (select (select |old(#memory_$Pointer$.offset)| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|))))} is VALID [2020-07-10 15:04:34,035 INFO L275 TraceCheckUtils]: 65: Hoare quadruple {3273#(or (not (= 0 (select (select |old(#memory_$Pointer$.base)| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|))) (<= (+ |##fun~$Pointer$~TO~VOID_#in~9.base| 1) |#StackHeapBarrier|) (not (= 0 (select (select |old(#memory_$Pointer$.offset)| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|))))} {3084#(and (= 0 (select (select |#memory_$Pointer$.base| |dll_create_generic_~#dll~0.base|) |dll_create_generic_~#dll~0.offset|)) (<= (+ |#StackHeapBarrier| 1) |dll_create_generic_~#dll~0.base|) (= 0 (select (select |#memory_$Pointer$.offset| |dll_create_generic_~#dll~0.base|) |dll_create_generic_~#dll~0.offset|)))} #534#return; {2796#false} is VALID [2020-07-10 15:04:34,035 INFO L263 TraceCheckUtils]: 66: Hoare triple {2796#false} call ##fun~$Pointer$~TO~VOID(~#dll~0.base, ~#dll~0.offset, ~insert_fnc.base, ~insert_fnc.offset); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:34,035 INFO L280 TraceCheckUtils]: 67: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {2795#true} is VALID [2020-07-10 15:04:34,036 INFO L280 TraceCheckUtils]: 68: Hoare triple {2795#true} assume #in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset; {2795#true} is VALID [2020-07-10 15:04:34,037 INFO L263 TraceCheckUtils]: 69: Hoare triple {2795#true} call dll_insert_master(#~9.base, #~9.offset); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:34,038 INFO L280 TraceCheckUtils]: 70: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {2795#true} is VALID [2020-07-10 15:04:34,039 INFO L263 TraceCheckUtils]: 71: Hoare triple {2795#true} call #t~ret17.base, #t~ret17.offset := alloc_or_die_master(); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:34,039 INFO L280 TraceCheckUtils]: 72: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc3.base, #t~malloc3.offset := #Ultimate.allocOnHeap(12);~ptr~1.base, ~ptr~1.offset := #t~malloc3.base, #t~malloc3.offset; {2795#true} is VALID [2020-07-10 15:04:34,040 INFO L280 TraceCheckUtils]: 73: Hoare triple {2795#true} assume !(~ptr~1.base == 0 && ~ptr~1.offset == 0); {2795#true} is VALID [2020-07-10 15:04:34,040 INFO L280 TraceCheckUtils]: 74: Hoare triple {2795#true} call write~$Pointer$(0, 0, ~ptr~1.base, ~ptr~1.offset, 4);call write~$Pointer$(0, 0, ~ptr~1.base, 4 + ~ptr~1.offset, 4);call write~$Pointer$(0, 0, ~ptr~1.base, 8 + ~ptr~1.offset, 4);#res.base, #res.offset := ~ptr~1.base, ~ptr~1.offset; {2795#true} is VALID [2020-07-10 15:04:34,040 INFO L280 TraceCheckUtils]: 75: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:34,041 INFO L275 TraceCheckUtils]: 76: Hoare quadruple {2795#true} {2795#true} #494#return; {2795#true} is VALID [2020-07-10 15:04:34,041 INFO L280 TraceCheckUtils]: 77: Hoare triple {2795#true} ~item~1.base, ~item~1.offset := #t~ret17.base, #t~ret17.offset;havoc #t~ret17.base, #t~ret17.offset;call #t~mem18.base, #t~mem18.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~3.base, ~next~3.offset := #t~mem18.base, #t~mem18.offset;havoc #t~mem18.base, #t~mem18.offset;call write~$Pointer$(~next~3.base, ~next~3.offset, ~item~1.base, ~item~1.offset, 4); {2795#true} is VALID [2020-07-10 15:04:34,041 INFO L280 TraceCheckUtils]: 78: Hoare triple {2795#true} assume ~next~3.base != 0 || ~next~3.offset != 0;call write~$Pointer$(~item~1.base, ~item~1.offset, ~next~3.base, 4 + ~next~3.offset, 4); {2795#true} is VALID [2020-07-10 15:04:34,043 INFO L263 TraceCheckUtils]: 79: Hoare triple {2795#true} call #t~ret19.base, #t~ret19.offset := dll_create_slave(); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:34,044 INFO L263 TraceCheckUtils]: 80: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~ret11.base, #t~ret11.offset := dll_create_generic(#funAddr~dll_insert_slave.base, #funAddr~dll_insert_slave.offset); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:34,045 INFO L280 TraceCheckUtils]: 81: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~insert_fnc.base, ~insert_fnc.offset := #in~insert_fnc.base, #in~insert_fnc.offset;call ~#dll~0.base, ~#dll~0.offset := #Ultimate.allocOnStack(4);call write~init~$Pointer$(0, 0, ~#dll~0.base, ~#dll~0.offset, 4); {2795#true} is VALID [2020-07-10 15:04:34,047 INFO L263 TraceCheckUtils]: 82: Hoare triple {2795#true} call ##fun~$Pointer$~TO~VOID(~#dll~0.base, ~#dll~0.offset, ~insert_fnc.base, ~insert_fnc.offset); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:34,047 INFO L280 TraceCheckUtils]: 83: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {2795#true} is VALID [2020-07-10 15:04:34,047 INFO L280 TraceCheckUtils]: 84: Hoare triple {2795#true} assume !(#in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset); {2795#true} is VALID [2020-07-10 15:04:34,049 INFO L263 TraceCheckUtils]: 85: Hoare triple {2795#true} call dll_insert_slave(#~9.base, #~9.offset); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:34,050 INFO L280 TraceCheckUtils]: 86: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {2795#true} is VALID [2020-07-10 15:04:34,098 INFO L263 TraceCheckUtils]: 87: Hoare triple {2795#true} call #t~ret4.base, #t~ret4.offset := alloc_or_die_slave(); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:34,098 INFO L280 TraceCheckUtils]: 88: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {2795#true} is VALID [2020-07-10 15:04:34,098 INFO L280 TraceCheckUtils]: 89: Hoare triple {2795#true} assume !(~ptr~0.base == 0 && ~ptr~0.offset == 0); {2795#true} is VALID [2020-07-10 15:04:34,098 INFO L280 TraceCheckUtils]: 90: Hoare triple {2795#true} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {2795#true} is VALID [2020-07-10 15:04:34,099 INFO L280 TraceCheckUtils]: 91: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:34,099 INFO L275 TraceCheckUtils]: 92: Hoare quadruple {2795#true} {2795#true} #490#return; {2795#true} is VALID [2020-07-10 15:04:34,099 INFO L280 TraceCheckUtils]: 93: Hoare triple {2795#true} ~item~0.base, ~item~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~0.base, ~next~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset;call write~$Pointer$(~next~0.base, ~next~0.offset, ~item~0.base, ~item~0.offset, 4); {2795#true} is VALID [2020-07-10 15:04:34,099 INFO L280 TraceCheckUtils]: 94: Hoare triple {2795#true} assume !(~next~0.base != 0 || ~next~0.offset != 0); {2795#true} is VALID [2020-07-10 15:04:34,100 INFO L280 TraceCheckUtils]: 95: Hoare triple {2795#true} call write~$Pointer$(~item~0.base, ~item~0.offset, ~dll.base, ~dll.offset, 4); {2795#true} is VALID [2020-07-10 15:04:34,100 INFO L280 TraceCheckUtils]: 96: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:34,100 INFO L275 TraceCheckUtils]: 97: Hoare quadruple {2795#true} {2795#true} #514#return; {2795#true} is VALID [2020-07-10 15:04:34,101 INFO L280 TraceCheckUtils]: 98: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:34,101 INFO L275 TraceCheckUtils]: 99: Hoare quadruple {2795#true} {2795#true} #534#return; {2795#true} is VALID [2020-07-10 15:04:34,104 INFO L263 TraceCheckUtils]: 100: Hoare triple {2795#true} call ##fun~$Pointer$~TO~VOID(~#dll~0.base, ~#dll~0.offset, ~insert_fnc.base, ~insert_fnc.offset); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:34,105 INFO L280 TraceCheckUtils]: 101: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {2795#true} is VALID [2020-07-10 15:04:34,105 INFO L280 TraceCheckUtils]: 102: Hoare triple {2795#true} assume !(#in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset); {2795#true} is VALID [2020-07-10 15:04:34,107 INFO L263 TraceCheckUtils]: 103: Hoare triple {2795#true} call dll_insert_slave(#~9.base, #~9.offset); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:34,107 INFO L280 TraceCheckUtils]: 104: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {2795#true} is VALID [2020-07-10 15:04:34,109 INFO L263 TraceCheckUtils]: 105: Hoare triple {2795#true} call #t~ret4.base, #t~ret4.offset := alloc_or_die_slave(); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:34,109 INFO L280 TraceCheckUtils]: 106: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {2795#true} is VALID [2020-07-10 15:04:34,109 INFO L280 TraceCheckUtils]: 107: Hoare triple {2795#true} assume !(~ptr~0.base == 0 && ~ptr~0.offset == 0); {2795#true} is VALID [2020-07-10 15:04:34,110 INFO L280 TraceCheckUtils]: 108: Hoare triple {2795#true} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {2795#true} is VALID [2020-07-10 15:04:34,110 INFO L280 TraceCheckUtils]: 109: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:34,110 INFO L275 TraceCheckUtils]: 110: Hoare quadruple {2795#true} {2795#true} #490#return; {2795#true} is VALID [2020-07-10 15:04:34,111 INFO L280 TraceCheckUtils]: 111: Hoare triple {2795#true} ~item~0.base, ~item~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~0.base, ~next~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset;call write~$Pointer$(~next~0.base, ~next~0.offset, ~item~0.base, ~item~0.offset, 4); {2795#true} is VALID [2020-07-10 15:04:34,111 INFO L280 TraceCheckUtils]: 112: Hoare triple {2795#true} assume !(~next~0.base != 0 || ~next~0.offset != 0); {2795#true} is VALID [2020-07-10 15:04:34,111 INFO L280 TraceCheckUtils]: 113: Hoare triple {2795#true} call write~$Pointer$(~item~0.base, ~item~0.offset, ~dll.base, ~dll.offset, 4); {2795#true} is VALID [2020-07-10 15:04:34,112 INFO L280 TraceCheckUtils]: 114: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:34,112 INFO L275 TraceCheckUtils]: 115: Hoare quadruple {2795#true} {2795#true} #514#return; {2795#true} is VALID [2020-07-10 15:04:34,112 INFO L280 TraceCheckUtils]: 116: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:34,113 INFO L275 TraceCheckUtils]: 117: Hoare quadruple {2795#true} {2795#true} #536#return; {2795#true} is VALID [2020-07-10 15:04:34,113 INFO L280 TraceCheckUtils]: 118: Hoare triple {2795#true} assume -2147483648 <= #t~nondet8 && #t~nondet8 <= 2147483647; {2795#true} is VALID [2020-07-10 15:04:34,113 INFO L280 TraceCheckUtils]: 119: Hoare triple {2795#true} assume !(0 != #t~nondet8);havoc #t~nondet8; {2795#true} is VALID [2020-07-10 15:04:34,114 INFO L280 TraceCheckUtils]: 120: Hoare triple {2795#true} call #t~mem10.base, #t~mem10.offset := read~$Pointer$(~#dll~0.base, ~#dll~0.offset, 4);#res.base, #res.offset := #t~mem10.base, #t~mem10.offset;havoc #t~mem10.base, #t~mem10.offset;call ULTIMATE.dealloc(~#dll~0.base, ~#dll~0.offset);havoc ~#dll~0.base, ~#dll~0.offset; {2795#true} is VALID [2020-07-10 15:04:34,114 INFO L280 TraceCheckUtils]: 121: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:34,114 INFO L275 TraceCheckUtils]: 122: Hoare quadruple {2795#true} {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #540#return; {2795#true} is VALID [2020-07-10 15:04:34,115 INFO L280 TraceCheckUtils]: 123: Hoare triple {2795#true} #res.base, #res.offset := #t~ret11.base, #t~ret11.offset;havoc #t~ret11.base, #t~ret11.offset; {2795#true} is VALID [2020-07-10 15:04:34,115 INFO L280 TraceCheckUtils]: 124: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:34,115 INFO L275 TraceCheckUtils]: 125: Hoare quadruple {2795#true} {2795#true} #496#return; {2795#true} is VALID [2020-07-10 15:04:34,116 INFO L280 TraceCheckUtils]: 126: Hoare triple {2795#true} call write~$Pointer$(#t~ret19.base, #t~ret19.offset, ~item~1.base, 8 + ~item~1.offset, 4);havoc #t~ret19.base, #t~ret19.offset;call write~$Pointer$(~item~1.base, ~item~1.offset, ~dll.base, ~dll.offset, 4); {2795#true} is VALID [2020-07-10 15:04:34,116 INFO L280 TraceCheckUtils]: 127: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:34,116 INFO L275 TraceCheckUtils]: 128: Hoare quadruple {2795#true} {2795#true} #512#return; {2795#true} is VALID [2020-07-10 15:04:34,117 INFO L280 TraceCheckUtils]: 129: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:34,117 INFO L275 TraceCheckUtils]: 130: Hoare quadruple {2795#true} {2796#false} #536#return; {2796#false} is VALID [2020-07-10 15:04:34,117 INFO L280 TraceCheckUtils]: 131: Hoare triple {2796#false} assume -2147483648 <= #t~nondet8 && #t~nondet8 <= 2147483647; {2796#false} is VALID [2020-07-10 15:04:34,118 INFO L280 TraceCheckUtils]: 132: Hoare triple {2796#false} assume !(0 != #t~nondet8);havoc #t~nondet8; {2796#false} is VALID [2020-07-10 15:04:34,118 INFO L280 TraceCheckUtils]: 133: Hoare triple {2796#false} call #t~mem10.base, #t~mem10.offset := read~$Pointer$(~#dll~0.base, ~#dll~0.offset, 4);#res.base, #res.offset := #t~mem10.base, #t~mem10.offset;havoc #t~mem10.base, #t~mem10.offset;call ULTIMATE.dealloc(~#dll~0.base, ~#dll~0.offset);havoc ~#dll~0.base, ~#dll~0.offset; {2796#false} is VALID [2020-07-10 15:04:34,118 INFO L280 TraceCheckUtils]: 134: Hoare triple {2796#false} assume true; {2796#false} is VALID [2020-07-10 15:04:34,118 INFO L275 TraceCheckUtils]: 135: Hoare quadruple {2796#false} {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #492#return; {2796#false} is VALID [2020-07-10 15:04:34,200 INFO L263 TraceCheckUtils]: 0: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~ret20.base, #t~ret20.offset := dll_create_generic(#funAddr~dll_insert_master.base, #funAddr~dll_insert_master.offset); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:34,201 INFO L280 TraceCheckUtils]: 1: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~insert_fnc.base, ~insert_fnc.offset := #in~insert_fnc.base, #in~insert_fnc.offset;call ~#dll~0.base, ~#dll~0.offset := #Ultimate.allocOnStack(4);call write~init~$Pointer$(0, 0, ~#dll~0.base, ~#dll~0.offset, 4); {3084#(and (= 0 (select (select |#memory_$Pointer$.base| |dll_create_generic_~#dll~0.base|) |dll_create_generic_~#dll~0.offset|)) (<= (+ |#StackHeapBarrier| 1) |dll_create_generic_~#dll~0.base|) (= 0 (select (select |#memory_$Pointer$.offset| |dll_create_generic_~#dll~0.base|) |dll_create_generic_~#dll~0.offset|)))} is VALID [2020-07-10 15:04:34,203 INFO L263 TraceCheckUtils]: 2: Hoare triple {3084#(and (= 0 (select (select |#memory_$Pointer$.base| |dll_create_generic_~#dll~0.base|) |dll_create_generic_~#dll~0.offset|)) (<= (+ |#StackHeapBarrier| 1) |dll_create_generic_~#dll~0.base|) (= 0 (select (select |#memory_$Pointer$.offset| |dll_create_generic_~#dll~0.base|) |dll_create_generic_~#dll~0.offset|)))} call ##fun~$Pointer$~TO~VOID(~#dll~0.base, ~#dll~0.offset, ~insert_fnc.base, ~insert_fnc.offset); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:34,204 INFO L280 TraceCheckUtils]: 3: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {3213#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:34,204 INFO L280 TraceCheckUtils]: 4: Hoare triple {3213#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} assume #in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset; {3213#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:34,206 INFO L263 TraceCheckUtils]: 5: Hoare triple {3213#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call dll_insert_master(#~9.base, #~9.offset); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:34,207 INFO L280 TraceCheckUtils]: 6: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {3274#(and (= dll_insert_master_~dll.offset |dll_insert_master_#in~dll.offset|) (= (select |#memory_$Pointer$.offset| dll_insert_master_~dll.base) (select |old(#memory_$Pointer$.offset)| dll_insert_master_~dll.base)) (= (select |#memory_$Pointer$.base| dll_insert_master_~dll.base) (select |old(#memory_$Pointer$.base)| dll_insert_master_~dll.base)) (= dll_insert_master_~dll.base |dll_insert_master_#in~dll.base|))} is VALID [2020-07-10 15:04:34,208 INFO L263 TraceCheckUtils]: 7: Hoare triple {3274#(and (= dll_insert_master_~dll.offset |dll_insert_master_#in~dll.offset|) (= (select |#memory_$Pointer$.offset| dll_insert_master_~dll.base) (select |old(#memory_$Pointer$.offset)| dll_insert_master_~dll.base)) (= (select |#memory_$Pointer$.base| dll_insert_master_~dll.base) (select |old(#memory_$Pointer$.base)| dll_insert_master_~dll.base)) (= dll_insert_master_~dll.base |dll_insert_master_#in~dll.base|))} call #t~ret17.base, #t~ret17.offset := alloc_or_die_master(); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:34,210 INFO L280 TraceCheckUtils]: 8: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc3.base, #t~malloc3.offset := #Ultimate.allocOnHeap(12);~ptr~1.base, ~ptr~1.offset := #t~malloc3.base, #t~malloc3.offset; {3329#(and (<= (+ alloc_or_die_master_~ptr~1.base 1) |#StackHeapBarrier|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:34,211 INFO L280 TraceCheckUtils]: 9: Hoare triple {3329#(and (<= (+ alloc_or_die_master_~ptr~1.base 1) |#StackHeapBarrier|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} assume !(~ptr~1.base == 0 && ~ptr~1.offset == 0); {3329#(and (<= (+ alloc_or_die_master_~ptr~1.base 1) |#StackHeapBarrier|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:34,213 INFO L280 TraceCheckUtils]: 10: Hoare triple {3329#(and (<= (+ alloc_or_die_master_~ptr~1.base 1) |#StackHeapBarrier|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call write~$Pointer$(0, 0, ~ptr~1.base, ~ptr~1.offset, 4);call write~$Pointer$(0, 0, ~ptr~1.base, 4 + ~ptr~1.offset, 4);call write~$Pointer$(0, 0, ~ptr~1.base, 8 + ~ptr~1.offset, 4);#res.base, #res.offset := ~ptr~1.base, ~ptr~1.offset; {3330#(and (= |#memory_$Pointer$.base| (store |old(#memory_$Pointer$.base)| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) (select |#memory_$Pointer$.base| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|)))) (or (<= (+ (@diff |old(#memory_$Pointer$.offset)| |#memory_$Pointer$.offset|) 1) |#StackHeapBarrier|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|)) (= (store |old(#memory_$Pointer$.offset)| (@diff |old(#memory_$Pointer$.offset)| |#memory_$Pointer$.offset|) (select |#memory_$Pointer$.offset| (@diff |old(#memory_$Pointer$.offset)| |#memory_$Pointer$.offset|))) |#memory_$Pointer$.offset|) (or (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (<= (+ (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) 1) |#StackHeapBarrier|)))} is VALID [2020-07-10 15:04:34,214 INFO L280 TraceCheckUtils]: 11: Hoare triple {3330#(and (= |#memory_$Pointer$.base| (store |old(#memory_$Pointer$.base)| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) (select |#memory_$Pointer$.base| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|)))) (or (<= (+ (@diff |old(#memory_$Pointer$.offset)| |#memory_$Pointer$.offset|) 1) |#StackHeapBarrier|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|)) (= (store |old(#memory_$Pointer$.offset)| (@diff |old(#memory_$Pointer$.offset)| |#memory_$Pointer$.offset|) (select |#memory_$Pointer$.offset| (@diff |old(#memory_$Pointer$.offset)| |#memory_$Pointer$.offset|))) |#memory_$Pointer$.offset|) (or (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (<= (+ (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) 1) |#StackHeapBarrier|)))} assume true; {3330#(and (= |#memory_$Pointer$.base| (store |old(#memory_$Pointer$.base)| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) (select |#memory_$Pointer$.base| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|)))) (or (<= (+ (@diff |old(#memory_$Pointer$.offset)| |#memory_$Pointer$.offset|) 1) |#StackHeapBarrier|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|)) (= (store |old(#memory_$Pointer$.offset)| (@diff |old(#memory_$Pointer$.offset)| |#memory_$Pointer$.offset|) (select |#memory_$Pointer$.offset| (@diff |old(#memory_$Pointer$.offset)| |#memory_$Pointer$.offset|))) |#memory_$Pointer$.offset|) (or (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (<= (+ (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) 1) |#StackHeapBarrier|)))} is VALID [2020-07-10 15:04:34,217 INFO L275 TraceCheckUtils]: 12: Hoare quadruple {3330#(and (= |#memory_$Pointer$.base| (store |old(#memory_$Pointer$.base)| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) (select |#memory_$Pointer$.base| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|)))) (or (<= (+ (@diff |old(#memory_$Pointer$.offset)| |#memory_$Pointer$.offset|) 1) |#StackHeapBarrier|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|)) (= (store |old(#memory_$Pointer$.offset)| (@diff |old(#memory_$Pointer$.offset)| |#memory_$Pointer$.offset|) (select |#memory_$Pointer$.offset| (@diff |old(#memory_$Pointer$.offset)| |#memory_$Pointer$.offset|))) |#memory_$Pointer$.offset|) (or (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (<= (+ (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) 1) |#StackHeapBarrier|)))} {3274#(and (= dll_insert_master_~dll.offset |dll_insert_master_#in~dll.offset|) (= (select |#memory_$Pointer$.offset| dll_insert_master_~dll.base) (select |old(#memory_$Pointer$.offset)| dll_insert_master_~dll.base)) (= (select |#memory_$Pointer$.base| dll_insert_master_~dll.base) (select |old(#memory_$Pointer$.base)| dll_insert_master_~dll.base)) (= dll_insert_master_~dll.base |dll_insert_master_#in~dll.base|))} #494#return; {3280#(and (= dll_insert_master_~dll.offset |dll_insert_master_#in~dll.offset|) (or (= (select |#memory_$Pointer$.offset| dll_insert_master_~dll.base) (select |old(#memory_$Pointer$.offset)| dll_insert_master_~dll.base)) (<= (+ dll_insert_master_~dll.base 1) |#StackHeapBarrier|)) (or (= (select |#memory_$Pointer$.base| dll_insert_master_~dll.base) (select |old(#memory_$Pointer$.base)| dll_insert_master_~dll.base)) (<= (+ dll_insert_master_~dll.base 1) |#StackHeapBarrier|)) (= dll_insert_master_~dll.base |dll_insert_master_#in~dll.base|))} is VALID [2020-07-10 15:04:34,219 INFO L280 TraceCheckUtils]: 13: Hoare triple {3280#(and (= dll_insert_master_~dll.offset |dll_insert_master_#in~dll.offset|) (or (= (select |#memory_$Pointer$.offset| dll_insert_master_~dll.base) (select |old(#memory_$Pointer$.offset)| dll_insert_master_~dll.base)) (<= (+ dll_insert_master_~dll.base 1) |#StackHeapBarrier|)) (or (= (select |#memory_$Pointer$.base| dll_insert_master_~dll.base) (select |old(#memory_$Pointer$.base)| dll_insert_master_~dll.base)) (<= (+ dll_insert_master_~dll.base 1) |#StackHeapBarrier|)) (= dll_insert_master_~dll.base |dll_insert_master_#in~dll.base|))} ~item~1.base, ~item~1.offset := #t~ret17.base, #t~ret17.offset;havoc #t~ret17.base, #t~ret17.offset;call #t~mem18.base, #t~mem18.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~3.base, ~next~3.offset := #t~mem18.base, #t~mem18.offset;havoc #t~mem18.base, #t~mem18.offset;call write~$Pointer$(~next~3.base, ~next~3.offset, ~item~1.base, ~item~1.offset, 4); {3281#(or (<= (+ |dll_insert_master_#in~dll.base| 1) |#StackHeapBarrier|) (and (= dll_insert_master_~next~3.base (select (select |old(#memory_$Pointer$.base)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|)) (= (select (select |old(#memory_$Pointer$.offset)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|) dll_insert_master_~next~3.offset)))} is VALID [2020-07-10 15:04:34,220 INFO L280 TraceCheckUtils]: 14: Hoare triple {3281#(or (<= (+ |dll_insert_master_#in~dll.base| 1) |#StackHeapBarrier|) (and (= dll_insert_master_~next~3.base (select (select |old(#memory_$Pointer$.base)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|)) (= (select (select |old(#memory_$Pointer$.offset)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|) dll_insert_master_~next~3.offset)))} assume ~next~3.base != 0 || ~next~3.offset != 0;call write~$Pointer$(~item~1.base, ~item~1.offset, ~next~3.base, 4 + ~next~3.offset, 4); {3282#(or (not (= (select (select |old(#memory_$Pointer$.offset)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|) 0)) (not (= 0 (select (select |old(#memory_$Pointer$.base)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|))) (<= (+ |dll_insert_master_#in~dll.base| 1) |#StackHeapBarrier|))} is VALID [2020-07-10 15:04:34,221 INFO L263 TraceCheckUtils]: 15: Hoare triple {3282#(or (not (= (select (select |old(#memory_$Pointer$.offset)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|) 0)) (not (= 0 (select (select |old(#memory_$Pointer$.base)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|))) (<= (+ |dll_insert_master_#in~dll.base| 1) |#StackHeapBarrier|))} call #t~ret19.base, #t~ret19.offset := dll_create_slave(); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:34,223 INFO L263 TraceCheckUtils]: 16: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~ret11.base, #t~ret11.offset := dll_create_generic(#funAddr~dll_insert_slave.base, #funAddr~dll_insert_slave.offset); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:34,223 INFO L280 TraceCheckUtils]: 17: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~insert_fnc.base, ~insert_fnc.offset := #in~insert_fnc.base, #in~insert_fnc.offset;call ~#dll~0.base, ~#dll~0.offset := #Ultimate.allocOnStack(4);call write~init~$Pointer$(0, 0, ~#dll~0.base, ~#dll~0.offset, 4); {2795#true} is VALID [2020-07-10 15:04:34,224 INFO L263 TraceCheckUtils]: 18: Hoare triple {2795#true} call ##fun~$Pointer$~TO~VOID(~#dll~0.base, ~#dll~0.offset, ~insert_fnc.base, ~insert_fnc.offset); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:34,224 INFO L280 TraceCheckUtils]: 19: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {2795#true} is VALID [2020-07-10 15:04:34,225 INFO L280 TraceCheckUtils]: 20: Hoare triple {2795#true} assume !(#in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset); {2795#true} is VALID [2020-07-10 15:04:34,226 INFO L263 TraceCheckUtils]: 21: Hoare triple {2795#true} call dll_insert_slave(#~9.base, #~9.offset); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:34,226 INFO L280 TraceCheckUtils]: 22: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {2795#true} is VALID [2020-07-10 15:04:34,227 INFO L263 TraceCheckUtils]: 23: Hoare triple {2795#true} call #t~ret4.base, #t~ret4.offset := alloc_or_die_slave(); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:34,227 INFO L280 TraceCheckUtils]: 24: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {2795#true} is VALID [2020-07-10 15:04:34,228 INFO L280 TraceCheckUtils]: 25: Hoare triple {2795#true} assume !(~ptr~0.base == 0 && ~ptr~0.offset == 0); {2795#true} is VALID [2020-07-10 15:04:34,228 INFO L280 TraceCheckUtils]: 26: Hoare triple {2795#true} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {2795#true} is VALID [2020-07-10 15:04:34,228 INFO L280 TraceCheckUtils]: 27: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:34,228 INFO L275 TraceCheckUtils]: 28: Hoare quadruple {2795#true} {2795#true} #490#return; {2795#true} is VALID [2020-07-10 15:04:34,228 INFO L280 TraceCheckUtils]: 29: Hoare triple {2795#true} ~item~0.base, ~item~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~0.base, ~next~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset;call write~$Pointer$(~next~0.base, ~next~0.offset, ~item~0.base, ~item~0.offset, 4); {2795#true} is VALID [2020-07-10 15:04:34,229 INFO L280 TraceCheckUtils]: 30: Hoare triple {2795#true} assume !(~next~0.base != 0 || ~next~0.offset != 0); {2795#true} is VALID [2020-07-10 15:04:34,229 INFO L280 TraceCheckUtils]: 31: Hoare triple {2795#true} call write~$Pointer$(~item~0.base, ~item~0.offset, ~dll.base, ~dll.offset, 4); {2795#true} is VALID [2020-07-10 15:04:34,229 INFO L280 TraceCheckUtils]: 32: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:34,229 INFO L275 TraceCheckUtils]: 33: Hoare quadruple {2795#true} {2795#true} #514#return; {2795#true} is VALID [2020-07-10 15:04:34,229 INFO L280 TraceCheckUtils]: 34: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:34,230 INFO L275 TraceCheckUtils]: 35: Hoare quadruple {2795#true} {2795#true} #534#return; {2795#true} is VALID [2020-07-10 15:04:34,231 INFO L263 TraceCheckUtils]: 36: Hoare triple {2795#true} call ##fun~$Pointer$~TO~VOID(~#dll~0.base, ~#dll~0.offset, ~insert_fnc.base, ~insert_fnc.offset); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:34,231 INFO L280 TraceCheckUtils]: 37: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {2795#true} is VALID [2020-07-10 15:04:34,232 INFO L280 TraceCheckUtils]: 38: Hoare triple {2795#true} assume !(#in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset); {2795#true} is VALID [2020-07-10 15:04:34,233 INFO L263 TraceCheckUtils]: 39: Hoare triple {2795#true} call dll_insert_slave(#~9.base, #~9.offset); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:34,233 INFO L280 TraceCheckUtils]: 40: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {2795#true} is VALID [2020-07-10 15:04:34,234 INFO L263 TraceCheckUtils]: 41: Hoare triple {2795#true} call #t~ret4.base, #t~ret4.offset := alloc_or_die_slave(); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:34,234 INFO L280 TraceCheckUtils]: 42: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {2795#true} is VALID [2020-07-10 15:04:34,234 INFO L280 TraceCheckUtils]: 43: Hoare triple {2795#true} assume !(~ptr~0.base == 0 && ~ptr~0.offset == 0); {2795#true} is VALID [2020-07-10 15:04:34,234 INFO L280 TraceCheckUtils]: 44: Hoare triple {2795#true} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {2795#true} is VALID [2020-07-10 15:04:34,235 INFO L280 TraceCheckUtils]: 45: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:34,235 INFO L275 TraceCheckUtils]: 46: Hoare quadruple {2795#true} {2795#true} #490#return; {2795#true} is VALID [2020-07-10 15:04:34,235 INFO L280 TraceCheckUtils]: 47: Hoare triple {2795#true} ~item~0.base, ~item~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~0.base, ~next~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset;call write~$Pointer$(~next~0.base, ~next~0.offset, ~item~0.base, ~item~0.offset, 4); {2795#true} is VALID [2020-07-10 15:04:34,235 INFO L280 TraceCheckUtils]: 48: Hoare triple {2795#true} assume !(~next~0.base != 0 || ~next~0.offset != 0); {2795#true} is VALID [2020-07-10 15:04:34,235 INFO L280 TraceCheckUtils]: 49: Hoare triple {2795#true} call write~$Pointer$(~item~0.base, ~item~0.offset, ~dll.base, ~dll.offset, 4); {2795#true} is VALID [2020-07-10 15:04:34,236 INFO L280 TraceCheckUtils]: 50: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:34,236 INFO L275 TraceCheckUtils]: 51: Hoare quadruple {2795#true} {2795#true} #514#return; {2795#true} is VALID [2020-07-10 15:04:34,236 INFO L280 TraceCheckUtils]: 52: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:34,236 INFO L275 TraceCheckUtils]: 53: Hoare quadruple {2795#true} {2795#true} #536#return; {2795#true} is VALID [2020-07-10 15:04:34,236 INFO L280 TraceCheckUtils]: 54: Hoare triple {2795#true} assume -2147483648 <= #t~nondet8 && #t~nondet8 <= 2147483647; {2795#true} is VALID [2020-07-10 15:04:34,236 INFO L280 TraceCheckUtils]: 55: Hoare triple {2795#true} assume !(0 != #t~nondet8);havoc #t~nondet8; {2795#true} is VALID [2020-07-10 15:04:34,237 INFO L280 TraceCheckUtils]: 56: Hoare triple {2795#true} call #t~mem10.base, #t~mem10.offset := read~$Pointer$(~#dll~0.base, ~#dll~0.offset, 4);#res.base, #res.offset := #t~mem10.base, #t~mem10.offset;havoc #t~mem10.base, #t~mem10.offset;call ULTIMATE.dealloc(~#dll~0.base, ~#dll~0.offset);havoc ~#dll~0.base, ~#dll~0.offset; {2795#true} is VALID [2020-07-10 15:04:34,237 INFO L280 TraceCheckUtils]: 57: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:34,237 INFO L275 TraceCheckUtils]: 58: Hoare quadruple {2795#true} {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #540#return; {2795#true} is VALID [2020-07-10 15:04:34,237 INFO L280 TraceCheckUtils]: 59: Hoare triple {2795#true} #res.base, #res.offset := #t~ret11.base, #t~ret11.offset;havoc #t~ret11.base, #t~ret11.offset; {2795#true} is VALID [2020-07-10 15:04:34,237 INFO L280 TraceCheckUtils]: 60: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:34,238 INFO L275 TraceCheckUtils]: 61: Hoare quadruple {2795#true} {3282#(or (not (= (select (select |old(#memory_$Pointer$.offset)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|) 0)) (not (= 0 (select (select |old(#memory_$Pointer$.base)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|))) (<= (+ |dll_insert_master_#in~dll.base| 1) |#StackHeapBarrier|))} #496#return; {3282#(or (not (= (select (select |old(#memory_$Pointer$.offset)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|) 0)) (not (= 0 (select (select |old(#memory_$Pointer$.base)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|))) (<= (+ |dll_insert_master_#in~dll.base| 1) |#StackHeapBarrier|))} is VALID [2020-07-10 15:04:34,239 INFO L280 TraceCheckUtils]: 62: Hoare triple {3282#(or (not (= (select (select |old(#memory_$Pointer$.offset)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|) 0)) (not (= 0 (select (select |old(#memory_$Pointer$.base)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|))) (<= (+ |dll_insert_master_#in~dll.base| 1) |#StackHeapBarrier|))} call write~$Pointer$(#t~ret19.base, #t~ret19.offset, ~item~1.base, 8 + ~item~1.offset, 4);havoc #t~ret19.base, #t~ret19.offset;call write~$Pointer$(~item~1.base, ~item~1.offset, ~dll.base, ~dll.offset, 4); {3282#(or (not (= (select (select |old(#memory_$Pointer$.offset)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|) 0)) (not (= 0 (select (select |old(#memory_$Pointer$.base)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|))) (<= (+ |dll_insert_master_#in~dll.base| 1) |#StackHeapBarrier|))} is VALID [2020-07-10 15:04:34,240 INFO L280 TraceCheckUtils]: 63: Hoare triple {3282#(or (not (= (select (select |old(#memory_$Pointer$.offset)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|) 0)) (not (= 0 (select (select |old(#memory_$Pointer$.base)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|))) (<= (+ |dll_insert_master_#in~dll.base| 1) |#StackHeapBarrier|))} assume true; {3282#(or (not (= (select (select |old(#memory_$Pointer$.offset)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|) 0)) (not (= 0 (select (select |old(#memory_$Pointer$.base)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|))) (<= (+ |dll_insert_master_#in~dll.base| 1) |#StackHeapBarrier|))} is VALID [2020-07-10 15:04:34,241 INFO L275 TraceCheckUtils]: 64: Hoare quadruple {3282#(or (not (= (select (select |old(#memory_$Pointer$.offset)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|) 0)) (not (= 0 (select (select |old(#memory_$Pointer$.base)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|))) (<= (+ |dll_insert_master_#in~dll.base| 1) |#StackHeapBarrier|))} {3213#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #512#return; {3273#(or (not (= 0 (select (select |old(#memory_$Pointer$.base)| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|))) (<= (+ |##fun~$Pointer$~TO~VOID_#in~9.base| 1) |#StackHeapBarrier|) (not (= 0 (select (select |old(#memory_$Pointer$.offset)| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|))))} is VALID [2020-07-10 15:04:34,242 INFO L280 TraceCheckUtils]: 65: Hoare triple {3273#(or (not (= 0 (select (select |old(#memory_$Pointer$.base)| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|))) (<= (+ |##fun~$Pointer$~TO~VOID_#in~9.base| 1) |#StackHeapBarrier|) (not (= 0 (select (select |old(#memory_$Pointer$.offset)| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|))))} assume true; {3273#(or (not (= 0 (select (select |old(#memory_$Pointer$.base)| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|))) (<= (+ |##fun~$Pointer$~TO~VOID_#in~9.base| 1) |#StackHeapBarrier|) (not (= 0 (select (select |old(#memory_$Pointer$.offset)| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|))))} is VALID [2020-07-10 15:04:34,244 INFO L275 TraceCheckUtils]: 66: Hoare quadruple {3273#(or (not (= 0 (select (select |old(#memory_$Pointer$.base)| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|))) (<= (+ |##fun~$Pointer$~TO~VOID_#in~9.base| 1) |#StackHeapBarrier|) (not (= 0 (select (select |old(#memory_$Pointer$.offset)| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|))))} {3084#(and (= 0 (select (select |#memory_$Pointer$.base| |dll_create_generic_~#dll~0.base|) |dll_create_generic_~#dll~0.offset|)) (<= (+ |#StackHeapBarrier| 1) |dll_create_generic_~#dll~0.base|) (= 0 (select (select |#memory_$Pointer$.offset| |dll_create_generic_~#dll~0.base|) |dll_create_generic_~#dll~0.offset|)))} #534#return; {2796#false} is VALID [2020-07-10 15:04:34,244 INFO L263 TraceCheckUtils]: 67: Hoare triple {2796#false} call ##fun~$Pointer$~TO~VOID(~#dll~0.base, ~#dll~0.offset, ~insert_fnc.base, ~insert_fnc.offset); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:34,244 INFO L280 TraceCheckUtils]: 68: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {2795#true} is VALID [2020-07-10 15:04:34,244 INFO L280 TraceCheckUtils]: 69: Hoare triple {2795#true} assume #in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset; {2795#true} is VALID [2020-07-10 15:04:34,245 INFO L263 TraceCheckUtils]: 70: Hoare triple {2795#true} call dll_insert_master(#~9.base, #~9.offset); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:34,246 INFO L280 TraceCheckUtils]: 71: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {2795#true} is VALID [2020-07-10 15:04:34,246 INFO L263 TraceCheckUtils]: 72: Hoare triple {2795#true} call #t~ret17.base, #t~ret17.offset := alloc_or_die_master(); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:34,247 INFO L280 TraceCheckUtils]: 73: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc3.base, #t~malloc3.offset := #Ultimate.allocOnHeap(12);~ptr~1.base, ~ptr~1.offset := #t~malloc3.base, #t~malloc3.offset; {2795#true} is VALID [2020-07-10 15:04:34,247 INFO L280 TraceCheckUtils]: 74: Hoare triple {2795#true} assume !(~ptr~1.base == 0 && ~ptr~1.offset == 0); {2795#true} is VALID [2020-07-10 15:04:34,247 INFO L280 TraceCheckUtils]: 75: Hoare triple {2795#true} call write~$Pointer$(0, 0, ~ptr~1.base, ~ptr~1.offset, 4);call write~$Pointer$(0, 0, ~ptr~1.base, 4 + ~ptr~1.offset, 4);call write~$Pointer$(0, 0, ~ptr~1.base, 8 + ~ptr~1.offset, 4);#res.base, #res.offset := ~ptr~1.base, ~ptr~1.offset; {2795#true} is VALID [2020-07-10 15:04:34,247 INFO L280 TraceCheckUtils]: 76: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:34,247 INFO L275 TraceCheckUtils]: 77: Hoare quadruple {2795#true} {2795#true} #494#return; {2795#true} is VALID [2020-07-10 15:04:34,248 INFO L280 TraceCheckUtils]: 78: Hoare triple {2795#true} ~item~1.base, ~item~1.offset := #t~ret17.base, #t~ret17.offset;havoc #t~ret17.base, #t~ret17.offset;call #t~mem18.base, #t~mem18.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~3.base, ~next~3.offset := #t~mem18.base, #t~mem18.offset;havoc #t~mem18.base, #t~mem18.offset;call write~$Pointer$(~next~3.base, ~next~3.offset, ~item~1.base, ~item~1.offset, 4); {2795#true} is VALID [2020-07-10 15:04:34,248 INFO L280 TraceCheckUtils]: 79: Hoare triple {2795#true} assume ~next~3.base != 0 || ~next~3.offset != 0;call write~$Pointer$(~item~1.base, ~item~1.offset, ~next~3.base, 4 + ~next~3.offset, 4); {2795#true} is VALID [2020-07-10 15:04:34,249 INFO L263 TraceCheckUtils]: 80: Hoare triple {2795#true} call #t~ret19.base, #t~ret19.offset := dll_create_slave(); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:34,250 INFO L263 TraceCheckUtils]: 81: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~ret11.base, #t~ret11.offset := dll_create_generic(#funAddr~dll_insert_slave.base, #funAddr~dll_insert_slave.offset); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:34,250 INFO L280 TraceCheckUtils]: 82: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~insert_fnc.base, ~insert_fnc.offset := #in~insert_fnc.base, #in~insert_fnc.offset;call ~#dll~0.base, ~#dll~0.offset := #Ultimate.allocOnStack(4);call write~init~$Pointer$(0, 0, ~#dll~0.base, ~#dll~0.offset, 4); {2795#true} is VALID [2020-07-10 15:04:34,252 INFO L263 TraceCheckUtils]: 83: Hoare triple {2795#true} call ##fun~$Pointer$~TO~VOID(~#dll~0.base, ~#dll~0.offset, ~insert_fnc.base, ~insert_fnc.offset); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:34,253 INFO L280 TraceCheckUtils]: 84: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {2795#true} is VALID [2020-07-10 15:04:34,253 INFO L280 TraceCheckUtils]: 85: Hoare triple {2795#true} assume !(#in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset); {2795#true} is VALID [2020-07-10 15:04:34,254 INFO L263 TraceCheckUtils]: 86: Hoare triple {2795#true} call dll_insert_slave(#~9.base, #~9.offset); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:34,254 INFO L280 TraceCheckUtils]: 87: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {2795#true} is VALID [2020-07-10 15:04:34,255 INFO L263 TraceCheckUtils]: 88: Hoare triple {2795#true} call #t~ret4.base, #t~ret4.offset := alloc_or_die_slave(); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:34,255 INFO L280 TraceCheckUtils]: 89: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {2795#true} is VALID [2020-07-10 15:04:34,256 INFO L280 TraceCheckUtils]: 90: Hoare triple {2795#true} assume !(~ptr~0.base == 0 && ~ptr~0.offset == 0); {2795#true} is VALID [2020-07-10 15:04:34,256 INFO L280 TraceCheckUtils]: 91: Hoare triple {2795#true} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {2795#true} is VALID [2020-07-10 15:04:34,256 INFO L280 TraceCheckUtils]: 92: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:34,256 INFO L275 TraceCheckUtils]: 93: Hoare quadruple {2795#true} {2795#true} #490#return; {2795#true} is VALID [2020-07-10 15:04:34,256 INFO L280 TraceCheckUtils]: 94: Hoare triple {2795#true} ~item~0.base, ~item~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~0.base, ~next~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset;call write~$Pointer$(~next~0.base, ~next~0.offset, ~item~0.base, ~item~0.offset, 4); {2795#true} is VALID [2020-07-10 15:04:34,257 INFO L280 TraceCheckUtils]: 95: Hoare triple {2795#true} assume !(~next~0.base != 0 || ~next~0.offset != 0); {2795#true} is VALID [2020-07-10 15:04:34,257 INFO L280 TraceCheckUtils]: 96: Hoare triple {2795#true} call write~$Pointer$(~item~0.base, ~item~0.offset, ~dll.base, ~dll.offset, 4); {2795#true} is VALID [2020-07-10 15:04:34,257 INFO L280 TraceCheckUtils]: 97: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:34,257 INFO L275 TraceCheckUtils]: 98: Hoare quadruple {2795#true} {2795#true} #514#return; {2795#true} is VALID [2020-07-10 15:04:34,257 INFO L280 TraceCheckUtils]: 99: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:34,258 INFO L275 TraceCheckUtils]: 100: Hoare quadruple {2795#true} {2795#true} #534#return; {2795#true} is VALID [2020-07-10 15:04:34,259 INFO L263 TraceCheckUtils]: 101: Hoare triple {2795#true} call ##fun~$Pointer$~TO~VOID(~#dll~0.base, ~#dll~0.offset, ~insert_fnc.base, ~insert_fnc.offset); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:34,259 INFO L280 TraceCheckUtils]: 102: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {2795#true} is VALID [2020-07-10 15:04:34,260 INFO L280 TraceCheckUtils]: 103: Hoare triple {2795#true} assume !(#in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset); {2795#true} is VALID [2020-07-10 15:04:34,261 INFO L263 TraceCheckUtils]: 104: Hoare triple {2795#true} call dll_insert_slave(#~9.base, #~9.offset); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:34,261 INFO L280 TraceCheckUtils]: 105: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {2795#true} is VALID [2020-07-10 15:04:34,262 INFO L263 TraceCheckUtils]: 106: Hoare triple {2795#true} call #t~ret4.base, #t~ret4.offset := alloc_or_die_slave(); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:34,262 INFO L280 TraceCheckUtils]: 107: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {2795#true} is VALID [2020-07-10 15:04:34,262 INFO L280 TraceCheckUtils]: 108: Hoare triple {2795#true} assume !(~ptr~0.base == 0 && ~ptr~0.offset == 0); {2795#true} is VALID [2020-07-10 15:04:34,262 INFO L280 TraceCheckUtils]: 109: Hoare triple {2795#true} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {2795#true} is VALID [2020-07-10 15:04:34,263 INFO L280 TraceCheckUtils]: 110: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:34,263 INFO L275 TraceCheckUtils]: 111: Hoare quadruple {2795#true} {2795#true} #490#return; {2795#true} is VALID [2020-07-10 15:04:34,263 INFO L280 TraceCheckUtils]: 112: Hoare triple {2795#true} ~item~0.base, ~item~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~0.base, ~next~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset;call write~$Pointer$(~next~0.base, ~next~0.offset, ~item~0.base, ~item~0.offset, 4); {2795#true} is VALID [2020-07-10 15:04:34,263 INFO L280 TraceCheckUtils]: 113: Hoare triple {2795#true} assume !(~next~0.base != 0 || ~next~0.offset != 0); {2795#true} is VALID [2020-07-10 15:04:34,263 INFO L280 TraceCheckUtils]: 114: Hoare triple {2795#true} call write~$Pointer$(~item~0.base, ~item~0.offset, ~dll.base, ~dll.offset, 4); {2795#true} is VALID [2020-07-10 15:04:34,263 INFO L280 TraceCheckUtils]: 115: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:34,264 INFO L275 TraceCheckUtils]: 116: Hoare quadruple {2795#true} {2795#true} #514#return; {2795#true} is VALID [2020-07-10 15:04:34,264 INFO L280 TraceCheckUtils]: 117: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:34,264 INFO L275 TraceCheckUtils]: 118: Hoare quadruple {2795#true} {2795#true} #536#return; {2795#true} is VALID [2020-07-10 15:04:34,264 INFO L280 TraceCheckUtils]: 119: Hoare triple {2795#true} assume -2147483648 <= #t~nondet8 && #t~nondet8 <= 2147483647; {2795#true} is VALID [2020-07-10 15:04:34,264 INFO L280 TraceCheckUtils]: 120: Hoare triple {2795#true} assume !(0 != #t~nondet8);havoc #t~nondet8; {2795#true} is VALID [2020-07-10 15:04:34,265 INFO L280 TraceCheckUtils]: 121: Hoare triple {2795#true} call #t~mem10.base, #t~mem10.offset := read~$Pointer$(~#dll~0.base, ~#dll~0.offset, 4);#res.base, #res.offset := #t~mem10.base, #t~mem10.offset;havoc #t~mem10.base, #t~mem10.offset;call ULTIMATE.dealloc(~#dll~0.base, ~#dll~0.offset);havoc ~#dll~0.base, ~#dll~0.offset; {2795#true} is VALID [2020-07-10 15:04:34,265 INFO L280 TraceCheckUtils]: 122: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:34,265 INFO L275 TraceCheckUtils]: 123: Hoare quadruple {2795#true} {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #540#return; {2795#true} is VALID [2020-07-10 15:04:34,265 INFO L280 TraceCheckUtils]: 124: Hoare triple {2795#true} #res.base, #res.offset := #t~ret11.base, #t~ret11.offset;havoc #t~ret11.base, #t~ret11.offset; {2795#true} is VALID [2020-07-10 15:04:34,265 INFO L280 TraceCheckUtils]: 125: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:34,266 INFO L275 TraceCheckUtils]: 126: Hoare quadruple {2795#true} {2795#true} #496#return; {2795#true} is VALID [2020-07-10 15:04:34,266 INFO L280 TraceCheckUtils]: 127: Hoare triple {2795#true} call write~$Pointer$(#t~ret19.base, #t~ret19.offset, ~item~1.base, 8 + ~item~1.offset, 4);havoc #t~ret19.base, #t~ret19.offset;call write~$Pointer$(~item~1.base, ~item~1.offset, ~dll.base, ~dll.offset, 4); {2795#true} is VALID [2020-07-10 15:04:34,266 INFO L280 TraceCheckUtils]: 128: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:34,266 INFO L275 TraceCheckUtils]: 129: Hoare quadruple {2795#true} {2795#true} #512#return; {2795#true} is VALID [2020-07-10 15:04:34,266 INFO L280 TraceCheckUtils]: 130: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:34,266 INFO L275 TraceCheckUtils]: 131: Hoare quadruple {2795#true} {2796#false} #536#return; {2796#false} is VALID [2020-07-10 15:04:34,267 INFO L280 TraceCheckUtils]: 132: Hoare triple {2796#false} assume -2147483648 <= #t~nondet8 && #t~nondet8 <= 2147483647; {2796#false} is VALID [2020-07-10 15:04:34,267 INFO L280 TraceCheckUtils]: 133: Hoare triple {2796#false} assume !(0 != #t~nondet8);havoc #t~nondet8; {2796#false} is VALID [2020-07-10 15:04:34,267 INFO L280 TraceCheckUtils]: 134: Hoare triple {2796#false} call #t~mem10.base, #t~mem10.offset := read~$Pointer$(~#dll~0.base, ~#dll~0.offset, 4);#res.base, #res.offset := #t~mem10.base, #t~mem10.offset;havoc #t~mem10.base, #t~mem10.offset;call ULTIMATE.dealloc(~#dll~0.base, ~#dll~0.offset);havoc ~#dll~0.base, ~#dll~0.offset; {2796#false} is VALID [2020-07-10 15:04:34,274 INFO L280 TraceCheckUtils]: 135: Hoare triple {2796#false} assume true; {2796#false} is VALID [2020-07-10 15:04:34,275 INFO L275 TraceCheckUtils]: 136: Hoare quadruple {2796#false} {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #492#return; {2796#false} is VALID [2020-07-10 15:04:34,275 INFO L280 TraceCheckUtils]: 137: Hoare triple {2796#false} #res.base, #res.offset := #t~ret20.base, #t~ret20.offset;havoc #t~ret20.base, #t~ret20.offset; {2796#false} is VALID [2020-07-10 15:04:34,275 INFO L280 TraceCheckUtils]: 138: Hoare triple {2796#false} assume true; {2796#false} is VALID [2020-07-10 15:04:34,275 INFO L275 TraceCheckUtils]: 139: Hoare quadruple {2796#false} {2795#true} #498#return; {2940#(not (= 0 |main_#t~ret45.base|))} is VALID [2020-07-10 15:04:34,333 INFO L263 TraceCheckUtils]: 0: Hoare triple {2795#true} call ULTIMATE.init(); {2946#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} is VALID [2020-07-10 15:04:34,334 INFO L280 TraceCheckUtils]: 1: Hoare triple {2946#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];assume 0 < #StackHeapBarrier; {2795#true} is VALID [2020-07-10 15:04:34,334 INFO L280 TraceCheckUtils]: 2: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:34,334 INFO L275 TraceCheckUtils]: 3: Hoare quadruple {2795#true} {2795#true} #542#return; {2795#true} is VALID [2020-07-10 15:04:34,334 INFO L263 TraceCheckUtils]: 4: Hoare triple {2795#true} call #t~ret46 := main(); {2795#true} is VALID [2020-07-10 15:04:34,335 INFO L263 TraceCheckUtils]: 5: Hoare triple {2795#true} call #t~ret45.base, #t~ret45.offset := dll_create_master(); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:34,337 INFO L263 TraceCheckUtils]: 6: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~ret20.base, #t~ret20.offset := dll_create_generic(#funAddr~dll_insert_master.base, #funAddr~dll_insert_master.offset); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:34,338 INFO L280 TraceCheckUtils]: 7: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~insert_fnc.base, ~insert_fnc.offset := #in~insert_fnc.base, #in~insert_fnc.offset;call ~#dll~0.base, ~#dll~0.offset := #Ultimate.allocOnStack(4);call write~init~$Pointer$(0, 0, ~#dll~0.base, ~#dll~0.offset, 4); {3084#(and (= 0 (select (select |#memory_$Pointer$.base| |dll_create_generic_~#dll~0.base|) |dll_create_generic_~#dll~0.offset|)) (<= (+ |#StackHeapBarrier| 1) |dll_create_generic_~#dll~0.base|) (= 0 (select (select |#memory_$Pointer$.offset| |dll_create_generic_~#dll~0.base|) |dll_create_generic_~#dll~0.offset|)))} is VALID [2020-07-10 15:04:34,340 INFO L263 TraceCheckUtils]: 8: Hoare triple {3084#(and (= 0 (select (select |#memory_$Pointer$.base| |dll_create_generic_~#dll~0.base|) |dll_create_generic_~#dll~0.offset|)) (<= (+ |#StackHeapBarrier| 1) |dll_create_generic_~#dll~0.base|) (= 0 (select (select |#memory_$Pointer$.offset| |dll_create_generic_~#dll~0.base|) |dll_create_generic_~#dll~0.offset|)))} call ##fun~$Pointer$~TO~VOID(~#dll~0.base, ~#dll~0.offset, ~insert_fnc.base, ~insert_fnc.offset); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:34,341 INFO L280 TraceCheckUtils]: 9: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {3213#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:34,341 INFO L280 TraceCheckUtils]: 10: Hoare triple {3213#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} assume #in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset; {3213#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:34,343 INFO L263 TraceCheckUtils]: 11: Hoare triple {3213#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call dll_insert_master(#~9.base, #~9.offset); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:34,344 INFO L280 TraceCheckUtils]: 12: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {3274#(and (= dll_insert_master_~dll.offset |dll_insert_master_#in~dll.offset|) (= (select |#memory_$Pointer$.offset| dll_insert_master_~dll.base) (select |old(#memory_$Pointer$.offset)| dll_insert_master_~dll.base)) (= (select |#memory_$Pointer$.base| dll_insert_master_~dll.base) (select |old(#memory_$Pointer$.base)| dll_insert_master_~dll.base)) (= dll_insert_master_~dll.base |dll_insert_master_#in~dll.base|))} is VALID [2020-07-10 15:04:34,345 INFO L263 TraceCheckUtils]: 13: Hoare triple {3274#(and (= dll_insert_master_~dll.offset |dll_insert_master_#in~dll.offset|) (= (select |#memory_$Pointer$.offset| dll_insert_master_~dll.base) (select |old(#memory_$Pointer$.offset)| dll_insert_master_~dll.base)) (= (select |#memory_$Pointer$.base| dll_insert_master_~dll.base) (select |old(#memory_$Pointer$.base)| dll_insert_master_~dll.base)) (= dll_insert_master_~dll.base |dll_insert_master_#in~dll.base|))} call #t~ret17.base, #t~ret17.offset := alloc_or_die_master(); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:34,346 INFO L280 TraceCheckUtils]: 14: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc3.base, #t~malloc3.offset := #Ultimate.allocOnHeap(12);~ptr~1.base, ~ptr~1.offset := #t~malloc3.base, #t~malloc3.offset; {3329#(and (<= (+ alloc_or_die_master_~ptr~1.base 1) |#StackHeapBarrier|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:34,347 INFO L280 TraceCheckUtils]: 15: Hoare triple {3329#(and (<= (+ alloc_or_die_master_~ptr~1.base 1) |#StackHeapBarrier|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} assume !(~ptr~1.base == 0 && ~ptr~1.offset == 0); {3329#(and (<= (+ alloc_or_die_master_~ptr~1.base 1) |#StackHeapBarrier|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:34,351 INFO L280 TraceCheckUtils]: 16: Hoare triple {3329#(and (<= (+ alloc_or_die_master_~ptr~1.base 1) |#StackHeapBarrier|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call write~$Pointer$(0, 0, ~ptr~1.base, ~ptr~1.offset, 4);call write~$Pointer$(0, 0, ~ptr~1.base, 4 + ~ptr~1.offset, 4);call write~$Pointer$(0, 0, ~ptr~1.base, 8 + ~ptr~1.offset, 4);#res.base, #res.offset := ~ptr~1.base, ~ptr~1.offset; {3330#(and (= |#memory_$Pointer$.base| (store |old(#memory_$Pointer$.base)| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) (select |#memory_$Pointer$.base| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|)))) (or (<= (+ (@diff |old(#memory_$Pointer$.offset)| |#memory_$Pointer$.offset|) 1) |#StackHeapBarrier|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|)) (= (store |old(#memory_$Pointer$.offset)| (@diff |old(#memory_$Pointer$.offset)| |#memory_$Pointer$.offset|) (select |#memory_$Pointer$.offset| (@diff |old(#memory_$Pointer$.offset)| |#memory_$Pointer$.offset|))) |#memory_$Pointer$.offset|) (or (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (<= (+ (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) 1) |#StackHeapBarrier|)))} is VALID [2020-07-10 15:04:34,352 INFO L280 TraceCheckUtils]: 17: Hoare triple {3330#(and (= |#memory_$Pointer$.base| (store |old(#memory_$Pointer$.base)| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) (select |#memory_$Pointer$.base| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|)))) (or (<= (+ (@diff |old(#memory_$Pointer$.offset)| |#memory_$Pointer$.offset|) 1) |#StackHeapBarrier|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|)) (= (store |old(#memory_$Pointer$.offset)| (@diff |old(#memory_$Pointer$.offset)| |#memory_$Pointer$.offset|) (select |#memory_$Pointer$.offset| (@diff |old(#memory_$Pointer$.offset)| |#memory_$Pointer$.offset|))) |#memory_$Pointer$.offset|) (or (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (<= (+ (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) 1) |#StackHeapBarrier|)))} assume true; {3330#(and (= |#memory_$Pointer$.base| (store |old(#memory_$Pointer$.base)| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) (select |#memory_$Pointer$.base| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|)))) (or (<= (+ (@diff |old(#memory_$Pointer$.offset)| |#memory_$Pointer$.offset|) 1) |#StackHeapBarrier|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|)) (= (store |old(#memory_$Pointer$.offset)| (@diff |old(#memory_$Pointer$.offset)| |#memory_$Pointer$.offset|) (select |#memory_$Pointer$.offset| (@diff |old(#memory_$Pointer$.offset)| |#memory_$Pointer$.offset|))) |#memory_$Pointer$.offset|) (or (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (<= (+ (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) 1) |#StackHeapBarrier|)))} is VALID [2020-07-10 15:04:34,355 INFO L275 TraceCheckUtils]: 18: Hoare quadruple {3330#(and (= |#memory_$Pointer$.base| (store |old(#memory_$Pointer$.base)| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) (select |#memory_$Pointer$.base| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|)))) (or (<= (+ (@diff |old(#memory_$Pointer$.offset)| |#memory_$Pointer$.offset|) 1) |#StackHeapBarrier|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|)) (= (store |old(#memory_$Pointer$.offset)| (@diff |old(#memory_$Pointer$.offset)| |#memory_$Pointer$.offset|) (select |#memory_$Pointer$.offset| (@diff |old(#memory_$Pointer$.offset)| |#memory_$Pointer$.offset|))) |#memory_$Pointer$.offset|) (or (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (<= (+ (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) 1) |#StackHeapBarrier|)))} {3274#(and (= dll_insert_master_~dll.offset |dll_insert_master_#in~dll.offset|) (= (select |#memory_$Pointer$.offset| dll_insert_master_~dll.base) (select |old(#memory_$Pointer$.offset)| dll_insert_master_~dll.base)) (= (select |#memory_$Pointer$.base| dll_insert_master_~dll.base) (select |old(#memory_$Pointer$.base)| dll_insert_master_~dll.base)) (= dll_insert_master_~dll.base |dll_insert_master_#in~dll.base|))} #494#return; {3280#(and (= dll_insert_master_~dll.offset |dll_insert_master_#in~dll.offset|) (or (= (select |#memory_$Pointer$.offset| dll_insert_master_~dll.base) (select |old(#memory_$Pointer$.offset)| dll_insert_master_~dll.base)) (<= (+ dll_insert_master_~dll.base 1) |#StackHeapBarrier|)) (or (= (select |#memory_$Pointer$.base| dll_insert_master_~dll.base) (select |old(#memory_$Pointer$.base)| dll_insert_master_~dll.base)) (<= (+ dll_insert_master_~dll.base 1) |#StackHeapBarrier|)) (= dll_insert_master_~dll.base |dll_insert_master_#in~dll.base|))} is VALID [2020-07-10 15:04:34,356 INFO L280 TraceCheckUtils]: 19: Hoare triple {3280#(and (= dll_insert_master_~dll.offset |dll_insert_master_#in~dll.offset|) (or (= (select |#memory_$Pointer$.offset| dll_insert_master_~dll.base) (select |old(#memory_$Pointer$.offset)| dll_insert_master_~dll.base)) (<= (+ dll_insert_master_~dll.base 1) |#StackHeapBarrier|)) (or (= (select |#memory_$Pointer$.base| dll_insert_master_~dll.base) (select |old(#memory_$Pointer$.base)| dll_insert_master_~dll.base)) (<= (+ dll_insert_master_~dll.base 1) |#StackHeapBarrier|)) (= dll_insert_master_~dll.base |dll_insert_master_#in~dll.base|))} ~item~1.base, ~item~1.offset := #t~ret17.base, #t~ret17.offset;havoc #t~ret17.base, #t~ret17.offset;call #t~mem18.base, #t~mem18.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~3.base, ~next~3.offset := #t~mem18.base, #t~mem18.offset;havoc #t~mem18.base, #t~mem18.offset;call write~$Pointer$(~next~3.base, ~next~3.offset, ~item~1.base, ~item~1.offset, 4); {3281#(or (<= (+ |dll_insert_master_#in~dll.base| 1) |#StackHeapBarrier|) (and (= dll_insert_master_~next~3.base (select (select |old(#memory_$Pointer$.base)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|)) (= (select (select |old(#memory_$Pointer$.offset)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|) dll_insert_master_~next~3.offset)))} is VALID [2020-07-10 15:04:34,357 INFO L280 TraceCheckUtils]: 20: Hoare triple {3281#(or (<= (+ |dll_insert_master_#in~dll.base| 1) |#StackHeapBarrier|) (and (= dll_insert_master_~next~3.base (select (select |old(#memory_$Pointer$.base)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|)) (= (select (select |old(#memory_$Pointer$.offset)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|) dll_insert_master_~next~3.offset)))} assume ~next~3.base != 0 || ~next~3.offset != 0;call write~$Pointer$(~item~1.base, ~item~1.offset, ~next~3.base, 4 + ~next~3.offset, 4); {3282#(or (not (= (select (select |old(#memory_$Pointer$.offset)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|) 0)) (not (= 0 (select (select |old(#memory_$Pointer$.base)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|))) (<= (+ |dll_insert_master_#in~dll.base| 1) |#StackHeapBarrier|))} is VALID [2020-07-10 15:04:34,359 INFO L263 TraceCheckUtils]: 21: Hoare triple {3282#(or (not (= (select (select |old(#memory_$Pointer$.offset)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|) 0)) (not (= 0 (select (select |old(#memory_$Pointer$.base)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|))) (<= (+ |dll_insert_master_#in~dll.base| 1) |#StackHeapBarrier|))} call #t~ret19.base, #t~ret19.offset := dll_create_slave(); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:34,360 INFO L263 TraceCheckUtils]: 22: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~ret11.base, #t~ret11.offset := dll_create_generic(#funAddr~dll_insert_slave.base, #funAddr~dll_insert_slave.offset); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:34,360 INFO L280 TraceCheckUtils]: 23: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~insert_fnc.base, ~insert_fnc.offset := #in~insert_fnc.base, #in~insert_fnc.offset;call ~#dll~0.base, ~#dll~0.offset := #Ultimate.allocOnStack(4);call write~init~$Pointer$(0, 0, ~#dll~0.base, ~#dll~0.offset, 4); {2795#true} is VALID [2020-07-10 15:04:34,361 INFO L263 TraceCheckUtils]: 24: Hoare triple {2795#true} call ##fun~$Pointer$~TO~VOID(~#dll~0.base, ~#dll~0.offset, ~insert_fnc.base, ~insert_fnc.offset); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:34,361 INFO L280 TraceCheckUtils]: 25: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {2795#true} is VALID [2020-07-10 15:04:34,362 INFO L280 TraceCheckUtils]: 26: Hoare triple {2795#true} assume !(#in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset); {2795#true} is VALID [2020-07-10 15:04:34,363 INFO L263 TraceCheckUtils]: 27: Hoare triple {2795#true} call dll_insert_slave(#~9.base, #~9.offset); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:34,363 INFO L280 TraceCheckUtils]: 28: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {2795#true} is VALID [2020-07-10 15:04:34,364 INFO L263 TraceCheckUtils]: 29: Hoare triple {2795#true} call #t~ret4.base, #t~ret4.offset := alloc_or_die_slave(); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:34,364 INFO L280 TraceCheckUtils]: 30: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {2795#true} is VALID [2020-07-10 15:04:34,364 INFO L280 TraceCheckUtils]: 31: Hoare triple {2795#true} assume !(~ptr~0.base == 0 && ~ptr~0.offset == 0); {2795#true} is VALID [2020-07-10 15:04:34,364 INFO L280 TraceCheckUtils]: 32: Hoare triple {2795#true} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {2795#true} is VALID [2020-07-10 15:04:34,364 INFO L280 TraceCheckUtils]: 33: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:34,365 INFO L275 TraceCheckUtils]: 34: Hoare quadruple {2795#true} {2795#true} #490#return; {2795#true} is VALID [2020-07-10 15:04:34,365 INFO L280 TraceCheckUtils]: 35: Hoare triple {2795#true} ~item~0.base, ~item~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~0.base, ~next~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset;call write~$Pointer$(~next~0.base, ~next~0.offset, ~item~0.base, ~item~0.offset, 4); {2795#true} is VALID [2020-07-10 15:04:34,365 INFO L280 TraceCheckUtils]: 36: Hoare triple {2795#true} assume !(~next~0.base != 0 || ~next~0.offset != 0); {2795#true} is VALID [2020-07-10 15:04:34,365 INFO L280 TraceCheckUtils]: 37: Hoare triple {2795#true} call write~$Pointer$(~item~0.base, ~item~0.offset, ~dll.base, ~dll.offset, 4); {2795#true} is VALID [2020-07-10 15:04:34,365 INFO L280 TraceCheckUtils]: 38: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:34,366 INFO L275 TraceCheckUtils]: 39: Hoare quadruple {2795#true} {2795#true} #514#return; {2795#true} is VALID [2020-07-10 15:04:34,366 INFO L280 TraceCheckUtils]: 40: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:34,366 INFO L275 TraceCheckUtils]: 41: Hoare quadruple {2795#true} {2795#true} #534#return; {2795#true} is VALID [2020-07-10 15:04:34,367 INFO L263 TraceCheckUtils]: 42: Hoare triple {2795#true} call ##fun~$Pointer$~TO~VOID(~#dll~0.base, ~#dll~0.offset, ~insert_fnc.base, ~insert_fnc.offset); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:34,368 INFO L280 TraceCheckUtils]: 43: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {2795#true} is VALID [2020-07-10 15:04:34,368 INFO L280 TraceCheckUtils]: 44: Hoare triple {2795#true} assume !(#in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset); {2795#true} is VALID [2020-07-10 15:04:34,369 INFO L263 TraceCheckUtils]: 45: Hoare triple {2795#true} call dll_insert_slave(#~9.base, #~9.offset); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:34,369 INFO L280 TraceCheckUtils]: 46: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {2795#true} is VALID [2020-07-10 15:04:34,370 INFO L263 TraceCheckUtils]: 47: Hoare triple {2795#true} call #t~ret4.base, #t~ret4.offset := alloc_or_die_slave(); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:34,370 INFO L280 TraceCheckUtils]: 48: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {2795#true} is VALID [2020-07-10 15:04:34,370 INFO L280 TraceCheckUtils]: 49: Hoare triple {2795#true} assume !(~ptr~0.base == 0 && ~ptr~0.offset == 0); {2795#true} is VALID [2020-07-10 15:04:34,370 INFO L280 TraceCheckUtils]: 50: Hoare triple {2795#true} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {2795#true} is VALID [2020-07-10 15:04:34,371 INFO L280 TraceCheckUtils]: 51: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:34,371 INFO L275 TraceCheckUtils]: 52: Hoare quadruple {2795#true} {2795#true} #490#return; {2795#true} is VALID [2020-07-10 15:04:34,371 INFO L280 TraceCheckUtils]: 53: Hoare triple {2795#true} ~item~0.base, ~item~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~0.base, ~next~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset;call write~$Pointer$(~next~0.base, ~next~0.offset, ~item~0.base, ~item~0.offset, 4); {2795#true} is VALID [2020-07-10 15:04:34,371 INFO L280 TraceCheckUtils]: 54: Hoare triple {2795#true} assume !(~next~0.base != 0 || ~next~0.offset != 0); {2795#true} is VALID [2020-07-10 15:04:34,371 INFO L280 TraceCheckUtils]: 55: Hoare triple {2795#true} call write~$Pointer$(~item~0.base, ~item~0.offset, ~dll.base, ~dll.offset, 4); {2795#true} is VALID [2020-07-10 15:04:34,371 INFO L280 TraceCheckUtils]: 56: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:34,372 INFO L275 TraceCheckUtils]: 57: Hoare quadruple {2795#true} {2795#true} #514#return; {2795#true} is VALID [2020-07-10 15:04:34,372 INFO L280 TraceCheckUtils]: 58: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:34,372 INFO L275 TraceCheckUtils]: 59: Hoare quadruple {2795#true} {2795#true} #536#return; {2795#true} is VALID [2020-07-10 15:04:34,372 INFO L280 TraceCheckUtils]: 60: Hoare triple {2795#true} assume -2147483648 <= #t~nondet8 && #t~nondet8 <= 2147483647; {2795#true} is VALID [2020-07-10 15:04:34,372 INFO L280 TraceCheckUtils]: 61: Hoare triple {2795#true} assume !(0 != #t~nondet8);havoc #t~nondet8; {2795#true} is VALID [2020-07-10 15:04:34,372 INFO L280 TraceCheckUtils]: 62: Hoare triple {2795#true} call #t~mem10.base, #t~mem10.offset := read~$Pointer$(~#dll~0.base, ~#dll~0.offset, 4);#res.base, #res.offset := #t~mem10.base, #t~mem10.offset;havoc #t~mem10.base, #t~mem10.offset;call ULTIMATE.dealloc(~#dll~0.base, ~#dll~0.offset);havoc ~#dll~0.base, ~#dll~0.offset; {2795#true} is VALID [2020-07-10 15:04:34,373 INFO L280 TraceCheckUtils]: 63: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:34,373 INFO L275 TraceCheckUtils]: 64: Hoare quadruple {2795#true} {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #540#return; {2795#true} is VALID [2020-07-10 15:04:34,373 INFO L280 TraceCheckUtils]: 65: Hoare triple {2795#true} #res.base, #res.offset := #t~ret11.base, #t~ret11.offset;havoc #t~ret11.base, #t~ret11.offset; {2795#true} is VALID [2020-07-10 15:04:34,373 INFO L280 TraceCheckUtils]: 66: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:34,374 INFO L275 TraceCheckUtils]: 67: Hoare quadruple {2795#true} {3282#(or (not (= (select (select |old(#memory_$Pointer$.offset)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|) 0)) (not (= 0 (select (select |old(#memory_$Pointer$.base)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|))) (<= (+ |dll_insert_master_#in~dll.base| 1) |#StackHeapBarrier|))} #496#return; {3282#(or (not (= (select (select |old(#memory_$Pointer$.offset)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|) 0)) (not (= 0 (select (select |old(#memory_$Pointer$.base)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|))) (<= (+ |dll_insert_master_#in~dll.base| 1) |#StackHeapBarrier|))} is VALID [2020-07-10 15:04:34,375 INFO L280 TraceCheckUtils]: 68: Hoare triple {3282#(or (not (= (select (select |old(#memory_$Pointer$.offset)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|) 0)) (not (= 0 (select (select |old(#memory_$Pointer$.base)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|))) (<= (+ |dll_insert_master_#in~dll.base| 1) |#StackHeapBarrier|))} call write~$Pointer$(#t~ret19.base, #t~ret19.offset, ~item~1.base, 8 + ~item~1.offset, 4);havoc #t~ret19.base, #t~ret19.offset;call write~$Pointer$(~item~1.base, ~item~1.offset, ~dll.base, ~dll.offset, 4); {3282#(or (not (= (select (select |old(#memory_$Pointer$.offset)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|) 0)) (not (= 0 (select (select |old(#memory_$Pointer$.base)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|))) (<= (+ |dll_insert_master_#in~dll.base| 1) |#StackHeapBarrier|))} is VALID [2020-07-10 15:04:34,375 INFO L280 TraceCheckUtils]: 69: Hoare triple {3282#(or (not (= (select (select |old(#memory_$Pointer$.offset)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|) 0)) (not (= 0 (select (select |old(#memory_$Pointer$.base)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|))) (<= (+ |dll_insert_master_#in~dll.base| 1) |#StackHeapBarrier|))} assume true; {3282#(or (not (= (select (select |old(#memory_$Pointer$.offset)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|) 0)) (not (= 0 (select (select |old(#memory_$Pointer$.base)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|))) (<= (+ |dll_insert_master_#in~dll.base| 1) |#StackHeapBarrier|))} is VALID [2020-07-10 15:04:34,377 INFO L275 TraceCheckUtils]: 70: Hoare quadruple {3282#(or (not (= (select (select |old(#memory_$Pointer$.offset)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|) 0)) (not (= 0 (select (select |old(#memory_$Pointer$.base)| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|))) (<= (+ |dll_insert_master_#in~dll.base| 1) |#StackHeapBarrier|))} {3213#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #512#return; {3273#(or (not (= 0 (select (select |old(#memory_$Pointer$.base)| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|))) (<= (+ |##fun~$Pointer$~TO~VOID_#in~9.base| 1) |#StackHeapBarrier|) (not (= 0 (select (select |old(#memory_$Pointer$.offset)| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|))))} is VALID [2020-07-10 15:04:34,377 INFO L280 TraceCheckUtils]: 71: Hoare triple {3273#(or (not (= 0 (select (select |old(#memory_$Pointer$.base)| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|))) (<= (+ |##fun~$Pointer$~TO~VOID_#in~9.base| 1) |#StackHeapBarrier|) (not (= 0 (select (select |old(#memory_$Pointer$.offset)| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|))))} assume true; {3273#(or (not (= 0 (select (select |old(#memory_$Pointer$.base)| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|))) (<= (+ |##fun~$Pointer$~TO~VOID_#in~9.base| 1) |#StackHeapBarrier|) (not (= 0 (select (select |old(#memory_$Pointer$.offset)| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|))))} is VALID [2020-07-10 15:04:34,379 INFO L275 TraceCheckUtils]: 72: Hoare quadruple {3273#(or (not (= 0 (select (select |old(#memory_$Pointer$.base)| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|))) (<= (+ |##fun~$Pointer$~TO~VOID_#in~9.base| 1) |#StackHeapBarrier|) (not (= 0 (select (select |old(#memory_$Pointer$.offset)| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|))))} {3084#(and (= 0 (select (select |#memory_$Pointer$.base| |dll_create_generic_~#dll~0.base|) |dll_create_generic_~#dll~0.offset|)) (<= (+ |#StackHeapBarrier| 1) |dll_create_generic_~#dll~0.base|) (= 0 (select (select |#memory_$Pointer$.offset| |dll_create_generic_~#dll~0.base|) |dll_create_generic_~#dll~0.offset|)))} #534#return; {2796#false} is VALID [2020-07-10 15:04:34,379 INFO L263 TraceCheckUtils]: 73: Hoare triple {2796#false} call ##fun~$Pointer$~TO~VOID(~#dll~0.base, ~#dll~0.offset, ~insert_fnc.base, ~insert_fnc.offset); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:34,380 INFO L280 TraceCheckUtils]: 74: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {2795#true} is VALID [2020-07-10 15:04:34,380 INFO L280 TraceCheckUtils]: 75: Hoare triple {2795#true} assume #in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset; {2795#true} is VALID [2020-07-10 15:04:34,381 INFO L263 TraceCheckUtils]: 76: Hoare triple {2795#true} call dll_insert_master(#~9.base, #~9.offset); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:34,381 INFO L280 TraceCheckUtils]: 77: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {2795#true} is VALID [2020-07-10 15:04:34,382 INFO L263 TraceCheckUtils]: 78: Hoare triple {2795#true} call #t~ret17.base, #t~ret17.offset := alloc_or_die_master(); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:34,382 INFO L280 TraceCheckUtils]: 79: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc3.base, #t~malloc3.offset := #Ultimate.allocOnHeap(12);~ptr~1.base, ~ptr~1.offset := #t~malloc3.base, #t~malloc3.offset; {2795#true} is VALID [2020-07-10 15:04:34,383 INFO L280 TraceCheckUtils]: 80: Hoare triple {2795#true} assume !(~ptr~1.base == 0 && ~ptr~1.offset == 0); {2795#true} is VALID [2020-07-10 15:04:34,383 INFO L280 TraceCheckUtils]: 81: Hoare triple {2795#true} call write~$Pointer$(0, 0, ~ptr~1.base, ~ptr~1.offset, 4);call write~$Pointer$(0, 0, ~ptr~1.base, 4 + ~ptr~1.offset, 4);call write~$Pointer$(0, 0, ~ptr~1.base, 8 + ~ptr~1.offset, 4);#res.base, #res.offset := ~ptr~1.base, ~ptr~1.offset; {2795#true} is VALID [2020-07-10 15:04:34,383 INFO L280 TraceCheckUtils]: 82: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:34,383 INFO L275 TraceCheckUtils]: 83: Hoare quadruple {2795#true} {2795#true} #494#return; {2795#true} is VALID [2020-07-10 15:04:34,383 INFO L280 TraceCheckUtils]: 84: Hoare triple {2795#true} ~item~1.base, ~item~1.offset := #t~ret17.base, #t~ret17.offset;havoc #t~ret17.base, #t~ret17.offset;call #t~mem18.base, #t~mem18.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~3.base, ~next~3.offset := #t~mem18.base, #t~mem18.offset;havoc #t~mem18.base, #t~mem18.offset;call write~$Pointer$(~next~3.base, ~next~3.offset, ~item~1.base, ~item~1.offset, 4); {2795#true} is VALID [2020-07-10 15:04:34,383 INFO L280 TraceCheckUtils]: 85: Hoare triple {2795#true} assume ~next~3.base != 0 || ~next~3.offset != 0;call write~$Pointer$(~item~1.base, ~item~1.offset, ~next~3.base, 4 + ~next~3.offset, 4); {2795#true} is VALID [2020-07-10 15:04:34,384 INFO L263 TraceCheckUtils]: 86: Hoare triple {2795#true} call #t~ret19.base, #t~ret19.offset := dll_create_slave(); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:34,385 INFO L263 TraceCheckUtils]: 87: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~ret11.base, #t~ret11.offset := dll_create_generic(#funAddr~dll_insert_slave.base, #funAddr~dll_insert_slave.offset); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:34,386 INFO L280 TraceCheckUtils]: 88: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~insert_fnc.base, ~insert_fnc.offset := #in~insert_fnc.base, #in~insert_fnc.offset;call ~#dll~0.base, ~#dll~0.offset := #Ultimate.allocOnStack(4);call write~init~$Pointer$(0, 0, ~#dll~0.base, ~#dll~0.offset, 4); {2795#true} is VALID [2020-07-10 15:04:34,387 INFO L263 TraceCheckUtils]: 89: Hoare triple {2795#true} call ##fun~$Pointer$~TO~VOID(~#dll~0.base, ~#dll~0.offset, ~insert_fnc.base, ~insert_fnc.offset); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:34,387 INFO L280 TraceCheckUtils]: 90: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {2795#true} is VALID [2020-07-10 15:04:34,387 INFO L280 TraceCheckUtils]: 91: Hoare triple {2795#true} assume !(#in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset); {2795#true} is VALID [2020-07-10 15:04:34,388 INFO L263 TraceCheckUtils]: 92: Hoare triple {2795#true} call dll_insert_slave(#~9.base, #~9.offset); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:34,389 INFO L280 TraceCheckUtils]: 93: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {2795#true} is VALID [2020-07-10 15:04:34,389 INFO L263 TraceCheckUtils]: 94: Hoare triple {2795#true} call #t~ret4.base, #t~ret4.offset := alloc_or_die_slave(); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:34,390 INFO L280 TraceCheckUtils]: 95: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {2795#true} is VALID [2020-07-10 15:04:34,390 INFO L280 TraceCheckUtils]: 96: Hoare triple {2795#true} assume !(~ptr~0.base == 0 && ~ptr~0.offset == 0); {2795#true} is VALID [2020-07-10 15:04:34,390 INFO L280 TraceCheckUtils]: 97: Hoare triple {2795#true} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {2795#true} is VALID [2020-07-10 15:04:34,390 INFO L280 TraceCheckUtils]: 98: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:34,390 INFO L275 TraceCheckUtils]: 99: Hoare quadruple {2795#true} {2795#true} #490#return; {2795#true} is VALID [2020-07-10 15:04:34,390 INFO L280 TraceCheckUtils]: 100: Hoare triple {2795#true} ~item~0.base, ~item~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~0.base, ~next~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset;call write~$Pointer$(~next~0.base, ~next~0.offset, ~item~0.base, ~item~0.offset, 4); {2795#true} is VALID [2020-07-10 15:04:34,391 INFO L280 TraceCheckUtils]: 101: Hoare triple {2795#true} assume !(~next~0.base != 0 || ~next~0.offset != 0); {2795#true} is VALID [2020-07-10 15:04:34,391 INFO L280 TraceCheckUtils]: 102: Hoare triple {2795#true} call write~$Pointer$(~item~0.base, ~item~0.offset, ~dll.base, ~dll.offset, 4); {2795#true} is VALID [2020-07-10 15:04:34,391 INFO L280 TraceCheckUtils]: 103: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:34,391 INFO L275 TraceCheckUtils]: 104: Hoare quadruple {2795#true} {2795#true} #514#return; {2795#true} is VALID [2020-07-10 15:04:34,391 INFO L280 TraceCheckUtils]: 105: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:34,391 INFO L275 TraceCheckUtils]: 106: Hoare quadruple {2795#true} {2795#true} #534#return; {2795#true} is VALID [2020-07-10 15:04:34,393 INFO L263 TraceCheckUtils]: 107: Hoare triple {2795#true} call ##fun~$Pointer$~TO~VOID(~#dll~0.base, ~#dll~0.offset, ~insert_fnc.base, ~insert_fnc.offset); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:34,393 INFO L280 TraceCheckUtils]: 108: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {2795#true} is VALID [2020-07-10 15:04:34,393 INFO L280 TraceCheckUtils]: 109: Hoare triple {2795#true} assume !(#in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset); {2795#true} is VALID [2020-07-10 15:04:34,394 INFO L263 TraceCheckUtils]: 110: Hoare triple {2795#true} call dll_insert_slave(#~9.base, #~9.offset); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:34,395 INFO L280 TraceCheckUtils]: 111: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {2795#true} is VALID [2020-07-10 15:04:34,396 INFO L263 TraceCheckUtils]: 112: Hoare triple {2795#true} call #t~ret4.base, #t~ret4.offset := alloc_or_die_slave(); {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:04:34,396 INFO L280 TraceCheckUtils]: 113: Hoare triple {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {2795#true} is VALID [2020-07-10 15:04:34,396 INFO L280 TraceCheckUtils]: 114: Hoare triple {2795#true} assume !(~ptr~0.base == 0 && ~ptr~0.offset == 0); {2795#true} is VALID [2020-07-10 15:04:34,396 INFO L280 TraceCheckUtils]: 115: Hoare triple {2795#true} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {2795#true} is VALID [2020-07-10 15:04:34,396 INFO L280 TraceCheckUtils]: 116: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:34,396 INFO L275 TraceCheckUtils]: 117: Hoare quadruple {2795#true} {2795#true} #490#return; {2795#true} is VALID [2020-07-10 15:04:34,397 INFO L280 TraceCheckUtils]: 118: Hoare triple {2795#true} ~item~0.base, ~item~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~0.base, ~next~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset;call write~$Pointer$(~next~0.base, ~next~0.offset, ~item~0.base, ~item~0.offset, 4); {2795#true} is VALID [2020-07-10 15:04:34,397 INFO L280 TraceCheckUtils]: 119: Hoare triple {2795#true} assume !(~next~0.base != 0 || ~next~0.offset != 0); {2795#true} is VALID [2020-07-10 15:04:34,397 INFO L280 TraceCheckUtils]: 120: Hoare triple {2795#true} call write~$Pointer$(~item~0.base, ~item~0.offset, ~dll.base, ~dll.offset, 4); {2795#true} is VALID [2020-07-10 15:04:34,397 INFO L280 TraceCheckUtils]: 121: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:34,397 INFO L275 TraceCheckUtils]: 122: Hoare quadruple {2795#true} {2795#true} #514#return; {2795#true} is VALID [2020-07-10 15:04:34,398 INFO L280 TraceCheckUtils]: 123: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:34,398 INFO L275 TraceCheckUtils]: 124: Hoare quadruple {2795#true} {2795#true} #536#return; {2795#true} is VALID [2020-07-10 15:04:34,398 INFO L280 TraceCheckUtils]: 125: Hoare triple {2795#true} assume -2147483648 <= #t~nondet8 && #t~nondet8 <= 2147483647; {2795#true} is VALID [2020-07-10 15:04:34,398 INFO L280 TraceCheckUtils]: 126: Hoare triple {2795#true} assume !(0 != #t~nondet8);havoc #t~nondet8; {2795#true} is VALID [2020-07-10 15:04:34,398 INFO L280 TraceCheckUtils]: 127: Hoare triple {2795#true} call #t~mem10.base, #t~mem10.offset := read~$Pointer$(~#dll~0.base, ~#dll~0.offset, 4);#res.base, #res.offset := #t~mem10.base, #t~mem10.offset;havoc #t~mem10.base, #t~mem10.offset;call ULTIMATE.dealloc(~#dll~0.base, ~#dll~0.offset);havoc ~#dll~0.base, ~#dll~0.offset; {2795#true} is VALID [2020-07-10 15:04:34,399 INFO L280 TraceCheckUtils]: 128: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:34,399 INFO L275 TraceCheckUtils]: 129: Hoare quadruple {2795#true} {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #540#return; {2795#true} is VALID [2020-07-10 15:04:34,399 INFO L280 TraceCheckUtils]: 130: Hoare triple {2795#true} #res.base, #res.offset := #t~ret11.base, #t~ret11.offset;havoc #t~ret11.base, #t~ret11.offset; {2795#true} is VALID [2020-07-10 15:04:34,399 INFO L280 TraceCheckUtils]: 131: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:34,399 INFO L275 TraceCheckUtils]: 132: Hoare quadruple {2795#true} {2795#true} #496#return; {2795#true} is VALID [2020-07-10 15:04:34,399 INFO L280 TraceCheckUtils]: 133: Hoare triple {2795#true} call write~$Pointer$(#t~ret19.base, #t~ret19.offset, ~item~1.base, 8 + ~item~1.offset, 4);havoc #t~ret19.base, #t~ret19.offset;call write~$Pointer$(~item~1.base, ~item~1.offset, ~dll.base, ~dll.offset, 4); {2795#true} is VALID [2020-07-10 15:04:34,400 INFO L280 TraceCheckUtils]: 134: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:34,400 INFO L275 TraceCheckUtils]: 135: Hoare quadruple {2795#true} {2795#true} #512#return; {2795#true} is VALID [2020-07-10 15:04:34,400 INFO L280 TraceCheckUtils]: 136: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:34,400 INFO L275 TraceCheckUtils]: 137: Hoare quadruple {2795#true} {2796#false} #536#return; {2796#false} is VALID [2020-07-10 15:04:34,400 INFO L280 TraceCheckUtils]: 138: Hoare triple {2796#false} assume -2147483648 <= #t~nondet8 && #t~nondet8 <= 2147483647; {2796#false} is VALID [2020-07-10 15:04:34,401 INFO L280 TraceCheckUtils]: 139: Hoare triple {2796#false} assume !(0 != #t~nondet8);havoc #t~nondet8; {2796#false} is VALID [2020-07-10 15:04:34,401 INFO L280 TraceCheckUtils]: 140: Hoare triple {2796#false} call #t~mem10.base, #t~mem10.offset := read~$Pointer$(~#dll~0.base, ~#dll~0.offset, 4);#res.base, #res.offset := #t~mem10.base, #t~mem10.offset;havoc #t~mem10.base, #t~mem10.offset;call ULTIMATE.dealloc(~#dll~0.base, ~#dll~0.offset);havoc ~#dll~0.base, ~#dll~0.offset; {2796#false} is VALID [2020-07-10 15:04:34,401 INFO L280 TraceCheckUtils]: 141: Hoare triple {2796#false} assume true; {2796#false} is VALID [2020-07-10 15:04:34,401 INFO L275 TraceCheckUtils]: 142: Hoare quadruple {2796#false} {2947#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #492#return; {2796#false} is VALID [2020-07-10 15:04:34,401 INFO L280 TraceCheckUtils]: 143: Hoare triple {2796#false} #res.base, #res.offset := #t~ret20.base, #t~ret20.offset;havoc #t~ret20.base, #t~ret20.offset; {2796#false} is VALID [2020-07-10 15:04:34,401 INFO L280 TraceCheckUtils]: 144: Hoare triple {2796#false} assume true; {2796#false} is VALID [2020-07-10 15:04:34,402 INFO L275 TraceCheckUtils]: 145: Hoare quadruple {2796#false} {2795#true} #498#return; {2940#(not (= 0 |main_#t~ret45.base|))} is VALID [2020-07-10 15:04:34,402 INFO L280 TraceCheckUtils]: 146: Hoare triple {2940#(not (= 0 |main_#t~ret45.base|))} ~dll~1.base, ~dll~1.offset := #t~ret45.base, #t~ret45.offset;havoc #t~ret45.base, #t~ret45.offset; {2941#(not (= main_~dll~1.base 0))} is VALID [2020-07-10 15:04:34,403 INFO L263 TraceCheckUtils]: 147: Hoare triple {2941#(not (= main_~dll~1.base 0))} call inspect_full(~dll~1.base, ~dll~1.offset); {2942#(not (= 0 |inspect_full_#in~dll.base|))} is VALID [2020-07-10 15:04:34,404 INFO L280 TraceCheckUtils]: 148: Hoare triple {2942#(not (= 0 |inspect_full_#in~dll.base|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {2943#(not (= 0 inspect_full_~dll.base))} is VALID [2020-07-10 15:04:34,405 INFO L263 TraceCheckUtils]: 149: Hoare triple {2943#(not (= 0 inspect_full_~dll.base))} call inspect_base(~dll.base, ~dll.offset); {2944#(not (= 0 |inspect_base_#in~dll.base|))} is VALID [2020-07-10 15:04:34,406 INFO L280 TraceCheckUtils]: 150: Hoare triple {2944#(not (= 0 |inspect_base_#in~dll.base|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {2945#(not (= 0 inspect_base_~dll.base))} is VALID [2020-07-10 15:04:34,406 INFO L280 TraceCheckUtils]: 151: Hoare triple {2945#(not (= 0 inspect_base_~dll.base))} assume ~dll.base == 0 && ~dll.offset == 0; {2796#false} is VALID [2020-07-10 15:04:34,406 INFO L263 TraceCheckUtils]: 152: Hoare triple {2796#false} call fail(); {2796#false} is VALID [2020-07-10 15:04:34,407 INFO L280 TraceCheckUtils]: 153: Hoare triple {2796#false} assume !false; {2796#false} is VALID [2020-07-10 15:04:34,451 INFO L134 CoverageAnalysis]: Checked inductivity of 180 backedges. 15 proven. 26 refuted. 0 times theorem prover too weak. 139 trivial. 0 not checked. [2020-07-10 15:04:34,451 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1679160944] [2020-07-10 15:04:34,452 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1208960532] [2020-07-10 15:04:34,452 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 3 with z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 3 with z3 -smt2 -in SMTLIB2_COMPLIANT=true [2020-07-10 15:04:34,646 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 15:04:34,649 INFO L264 TraceCheckSpWp]: Trace formula consists of 786 conjuncts, 48 conjunts are in the unsatisfiable core [2020-07-10 15:04:34,707 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 15:04:34,713 INFO L287 TraceCheckSpWp]: Computing forward predicates... [2020-07-10 15:04:35,281 INFO L350 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2020-07-10 15:04:35,282 INFO L384 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 1 case distinctions, treesize of input 31 treesize of output 47 [2020-07-10 15:04:35,283 INFO L544 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2020-07-10 15:04:35,312 INFO L624 ElimStorePlain]: treesize reduction 20, result has 60.8 percent of original size [2020-07-10 15:04:35,322 INFO L544 ElimStorePlain]: Start of recursive call 1: 3 dim-0 vars, 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2020-07-10 15:04:35,323 INFO L244 ElimStorePlain]: Needed 2 recursive calls to eliminate 4 variables, input treesize:36, output treesize:8 [2020-07-10 15:04:35,470 WARN L406 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2020-07-10 15:04:35,471 WARN L407 uantifierElimination]: Input elimination task: ∃ [|v_#memory_$Pointer$.base_75|, dll_insert_master_~item~1.base, dll_insert_master_~item~1.offset, |v_dll_insert_master_#t~ret19.base_5|]. (and (not (= 0 dll_insert_master_~item~1.base)) (= (let ((.cse0 (store |v_#memory_$Pointer$.base_75| dll_insert_master_~item~1.base (store (select |v_#memory_$Pointer$.base_75| dll_insert_master_~item~1.base) (+ dll_insert_master_~item~1.offset 8) |v_dll_insert_master_#t~ret19.base_5|)))) (store .cse0 |dll_insert_master_#in~dll.base| (store (select .cse0 |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset| dll_insert_master_~item~1.base))) |#memory_$Pointer$.base|)) [2020-07-10 15:04:35,471 WARN L408 uantifierElimination]: ElimStorePlain result: ∃ []. (not (= 0 (select (select |#memory_$Pointer$.base| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|))) [2020-07-10 15:04:35,629 INFO L384 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 16 treesize of output 8 [2020-07-10 15:04:35,634 INFO L544 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2020-07-10 15:04:35,636 INFO L624 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2020-07-10 15:04:35,636 INFO L544 ElimStorePlain]: Start of recursive call 1: 2 dim-0 vars, 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2020-07-10 15:04:35,636 INFO L244 ElimStorePlain]: Needed 2 recursive calls to eliminate 3 variables, input treesize:16, output treesize:4 [2020-07-10 15:04:35,639 WARN L406 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2020-07-10 15:04:35,639 WARN L407 uantifierElimination]: Input elimination task: ∃ [|#memory_$Pointer$.base|, |v_dll_create_generic_~#dll~0.base_10|, |v_dll_create_generic_~#dll~0.offset_10|]. (let ((.cse0 (select (select |#memory_$Pointer$.base| |v_dll_create_generic_~#dll~0.base_10|) |v_dll_create_generic_~#dll~0.offset_10|))) (and (not (= 0 .cse0)) (= .cse0 |dll_create_generic_#res.base|))) [2020-07-10 15:04:35,640 WARN L408 uantifierElimination]: ElimStorePlain result: ∃ []. (not (= 0 |dll_create_generic_#res.base|)) [2020-07-10 15:04:35,782 INFO L263 TraceCheckUtils]: 0: Hoare triple {2795#true} call ULTIMATE.init(); {2795#true} is VALID [2020-07-10 15:04:35,783 INFO L280 TraceCheckUtils]: 1: Hoare triple {2795#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];assume 0 < #StackHeapBarrier; {2795#true} is VALID [2020-07-10 15:04:35,783 INFO L280 TraceCheckUtils]: 2: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:35,783 INFO L275 TraceCheckUtils]: 3: Hoare quadruple {2795#true} {2795#true} #542#return; {2795#true} is VALID [2020-07-10 15:04:35,783 INFO L263 TraceCheckUtils]: 4: Hoare triple {2795#true} call #t~ret46 := main(); {2795#true} is VALID [2020-07-10 15:04:35,783 INFO L263 TraceCheckUtils]: 5: Hoare triple {2795#true} call #t~ret45.base, #t~ret45.offset := dll_create_master(); {2795#true} is VALID [2020-07-10 15:04:35,783 INFO L263 TraceCheckUtils]: 6: Hoare triple {2795#true} call #t~ret20.base, #t~ret20.offset := dll_create_generic(#funAddr~dll_insert_master.base, #funAddr~dll_insert_master.offset); {2795#true} is VALID [2020-07-10 15:04:35,783 INFO L280 TraceCheckUtils]: 7: Hoare triple {2795#true} ~insert_fnc.base, ~insert_fnc.offset := #in~insert_fnc.base, #in~insert_fnc.offset;call ~#dll~0.base, ~#dll~0.offset := #Ultimate.allocOnStack(4);call write~init~$Pointer$(0, 0, ~#dll~0.base, ~#dll~0.offset, 4); {2795#true} is VALID [2020-07-10 15:04:35,784 INFO L263 TraceCheckUtils]: 8: Hoare triple {2795#true} call ##fun~$Pointer$~TO~VOID(~#dll~0.base, ~#dll~0.offset, ~insert_fnc.base, ~insert_fnc.offset); {2795#true} is VALID [2020-07-10 15:04:35,784 INFO L280 TraceCheckUtils]: 9: Hoare triple {2795#true} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {2795#true} is VALID [2020-07-10 15:04:35,784 INFO L280 TraceCheckUtils]: 10: Hoare triple {2795#true} assume #in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset; {2795#true} is VALID [2020-07-10 15:04:35,784 INFO L263 TraceCheckUtils]: 11: Hoare triple {2795#true} call dll_insert_master(#~9.base, #~9.offset); {2795#true} is VALID [2020-07-10 15:04:35,784 INFO L280 TraceCheckUtils]: 12: Hoare triple {2795#true} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {2795#true} is VALID [2020-07-10 15:04:35,784 INFO L263 TraceCheckUtils]: 13: Hoare triple {2795#true} call #t~ret17.base, #t~ret17.offset := alloc_or_die_master(); {2795#true} is VALID [2020-07-10 15:04:35,785 INFO L280 TraceCheckUtils]: 14: Hoare triple {2795#true} call #t~malloc3.base, #t~malloc3.offset := #Ultimate.allocOnHeap(12);~ptr~1.base, ~ptr~1.offset := #t~malloc3.base, #t~malloc3.offset; {2795#true} is VALID [2020-07-10 15:04:35,785 INFO L280 TraceCheckUtils]: 15: Hoare triple {2795#true} assume !(~ptr~1.base == 0 && ~ptr~1.offset == 0); {2795#true} is VALID [2020-07-10 15:04:35,785 INFO L280 TraceCheckUtils]: 16: Hoare triple {2795#true} call write~$Pointer$(0, 0, ~ptr~1.base, ~ptr~1.offset, 4);call write~$Pointer$(0, 0, ~ptr~1.base, 4 + ~ptr~1.offset, 4);call write~$Pointer$(0, 0, ~ptr~1.base, 8 + ~ptr~1.offset, 4);#res.base, #res.offset := ~ptr~1.base, ~ptr~1.offset; {2795#true} is VALID [2020-07-10 15:04:35,785 INFO L280 TraceCheckUtils]: 17: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:35,785 INFO L275 TraceCheckUtils]: 18: Hoare quadruple {2795#true} {2795#true} #494#return; {2795#true} is VALID [2020-07-10 15:04:35,786 INFO L280 TraceCheckUtils]: 19: Hoare triple {2795#true} ~item~1.base, ~item~1.offset := #t~ret17.base, #t~ret17.offset;havoc #t~ret17.base, #t~ret17.offset;call #t~mem18.base, #t~mem18.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~3.base, ~next~3.offset := #t~mem18.base, #t~mem18.offset;havoc #t~mem18.base, #t~mem18.offset;call write~$Pointer$(~next~3.base, ~next~3.offset, ~item~1.base, ~item~1.offset, 4); {2795#true} is VALID [2020-07-10 15:04:35,786 INFO L280 TraceCheckUtils]: 20: Hoare triple {2795#true} assume ~next~3.base != 0 || ~next~3.offset != 0;call write~$Pointer$(~item~1.base, ~item~1.offset, ~next~3.base, 4 + ~next~3.offset, 4); {2795#true} is VALID [2020-07-10 15:04:35,786 INFO L263 TraceCheckUtils]: 21: Hoare triple {2795#true} call #t~ret19.base, #t~ret19.offset := dll_create_slave(); {2795#true} is VALID [2020-07-10 15:04:35,786 INFO L263 TraceCheckUtils]: 22: Hoare triple {2795#true} call #t~ret11.base, #t~ret11.offset := dll_create_generic(#funAddr~dll_insert_slave.base, #funAddr~dll_insert_slave.offset); {2795#true} is VALID [2020-07-10 15:04:35,786 INFO L280 TraceCheckUtils]: 23: Hoare triple {2795#true} ~insert_fnc.base, ~insert_fnc.offset := #in~insert_fnc.base, #in~insert_fnc.offset;call ~#dll~0.base, ~#dll~0.offset := #Ultimate.allocOnStack(4);call write~init~$Pointer$(0, 0, ~#dll~0.base, ~#dll~0.offset, 4); {2795#true} is VALID [2020-07-10 15:04:35,787 INFO L263 TraceCheckUtils]: 24: Hoare triple {2795#true} call ##fun~$Pointer$~TO~VOID(~#dll~0.base, ~#dll~0.offset, ~insert_fnc.base, ~insert_fnc.offset); {2795#true} is VALID [2020-07-10 15:04:35,787 INFO L280 TraceCheckUtils]: 25: Hoare triple {2795#true} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {2795#true} is VALID [2020-07-10 15:04:35,787 INFO L280 TraceCheckUtils]: 26: Hoare triple {2795#true} assume !(#in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset); {2795#true} is VALID [2020-07-10 15:04:35,787 INFO L263 TraceCheckUtils]: 27: Hoare triple {2795#true} call dll_insert_slave(#~9.base, #~9.offset); {2795#true} is VALID [2020-07-10 15:04:35,787 INFO L280 TraceCheckUtils]: 28: Hoare triple {2795#true} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {2795#true} is VALID [2020-07-10 15:04:35,787 INFO L263 TraceCheckUtils]: 29: Hoare triple {2795#true} call #t~ret4.base, #t~ret4.offset := alloc_or_die_slave(); {2795#true} is VALID [2020-07-10 15:04:35,788 INFO L280 TraceCheckUtils]: 30: Hoare triple {2795#true} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {2795#true} is VALID [2020-07-10 15:04:35,788 INFO L280 TraceCheckUtils]: 31: Hoare triple {2795#true} assume !(~ptr~0.base == 0 && ~ptr~0.offset == 0); {2795#true} is VALID [2020-07-10 15:04:35,788 INFO L280 TraceCheckUtils]: 32: Hoare triple {2795#true} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {2795#true} is VALID [2020-07-10 15:04:35,788 INFO L280 TraceCheckUtils]: 33: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:35,789 INFO L275 TraceCheckUtils]: 34: Hoare quadruple {2795#true} {2795#true} #490#return; {2795#true} is VALID [2020-07-10 15:04:35,789 INFO L280 TraceCheckUtils]: 35: Hoare triple {2795#true} ~item~0.base, ~item~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~0.base, ~next~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset;call write~$Pointer$(~next~0.base, ~next~0.offset, ~item~0.base, ~item~0.offset, 4); {2795#true} is VALID [2020-07-10 15:04:35,789 INFO L280 TraceCheckUtils]: 36: Hoare triple {2795#true} assume !(~next~0.base != 0 || ~next~0.offset != 0); {2795#true} is VALID [2020-07-10 15:04:35,789 INFO L280 TraceCheckUtils]: 37: Hoare triple {2795#true} call write~$Pointer$(~item~0.base, ~item~0.offset, ~dll.base, ~dll.offset, 4); {2795#true} is VALID [2020-07-10 15:04:35,789 INFO L280 TraceCheckUtils]: 38: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:35,790 INFO L275 TraceCheckUtils]: 39: Hoare quadruple {2795#true} {2795#true} #514#return; {2795#true} is VALID [2020-07-10 15:04:35,790 INFO L280 TraceCheckUtils]: 40: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:35,790 INFO L275 TraceCheckUtils]: 41: Hoare quadruple {2795#true} {2795#true} #534#return; {2795#true} is VALID [2020-07-10 15:04:35,790 INFO L263 TraceCheckUtils]: 42: Hoare triple {2795#true} call ##fun~$Pointer$~TO~VOID(~#dll~0.base, ~#dll~0.offset, ~insert_fnc.base, ~insert_fnc.offset); {2795#true} is VALID [2020-07-10 15:04:35,791 INFO L280 TraceCheckUtils]: 43: Hoare triple {2795#true} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {2795#true} is VALID [2020-07-10 15:04:35,791 INFO L280 TraceCheckUtils]: 44: Hoare triple {2795#true} assume !(#in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset); {2795#true} is VALID [2020-07-10 15:04:35,791 INFO L263 TraceCheckUtils]: 45: Hoare triple {2795#true} call dll_insert_slave(#~9.base, #~9.offset); {2795#true} is VALID [2020-07-10 15:04:35,791 INFO L280 TraceCheckUtils]: 46: Hoare triple {2795#true} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {2795#true} is VALID [2020-07-10 15:04:35,791 INFO L263 TraceCheckUtils]: 47: Hoare triple {2795#true} call #t~ret4.base, #t~ret4.offset := alloc_or_die_slave(); {2795#true} is VALID [2020-07-10 15:04:35,792 INFO L280 TraceCheckUtils]: 48: Hoare triple {2795#true} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {2795#true} is VALID [2020-07-10 15:04:35,792 INFO L280 TraceCheckUtils]: 49: Hoare triple {2795#true} assume !(~ptr~0.base == 0 && ~ptr~0.offset == 0); {2795#true} is VALID [2020-07-10 15:04:35,792 INFO L280 TraceCheckUtils]: 50: Hoare triple {2795#true} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {2795#true} is VALID [2020-07-10 15:04:35,792 INFO L280 TraceCheckUtils]: 51: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:35,792 INFO L275 TraceCheckUtils]: 52: Hoare quadruple {2795#true} {2795#true} #490#return; {2795#true} is VALID [2020-07-10 15:04:35,792 INFO L280 TraceCheckUtils]: 53: Hoare triple {2795#true} ~item~0.base, ~item~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~0.base, ~next~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset;call write~$Pointer$(~next~0.base, ~next~0.offset, ~item~0.base, ~item~0.offset, 4); {2795#true} is VALID [2020-07-10 15:04:35,793 INFO L280 TraceCheckUtils]: 54: Hoare triple {2795#true} assume !(~next~0.base != 0 || ~next~0.offset != 0); {2795#true} is VALID [2020-07-10 15:04:35,793 INFO L280 TraceCheckUtils]: 55: Hoare triple {2795#true} call write~$Pointer$(~item~0.base, ~item~0.offset, ~dll.base, ~dll.offset, 4); {2795#true} is VALID [2020-07-10 15:04:35,793 INFO L280 TraceCheckUtils]: 56: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:35,793 INFO L275 TraceCheckUtils]: 57: Hoare quadruple {2795#true} {2795#true} #514#return; {2795#true} is VALID [2020-07-10 15:04:35,793 INFO L280 TraceCheckUtils]: 58: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:35,794 INFO L275 TraceCheckUtils]: 59: Hoare quadruple {2795#true} {2795#true} #536#return; {2795#true} is VALID [2020-07-10 15:04:35,794 INFO L280 TraceCheckUtils]: 60: Hoare triple {2795#true} assume -2147483648 <= #t~nondet8 && #t~nondet8 <= 2147483647; {2795#true} is VALID [2020-07-10 15:04:35,794 INFO L280 TraceCheckUtils]: 61: Hoare triple {2795#true} assume !(0 != #t~nondet8);havoc #t~nondet8; {2795#true} is VALID [2020-07-10 15:04:35,794 INFO L280 TraceCheckUtils]: 62: Hoare triple {2795#true} call #t~mem10.base, #t~mem10.offset := read~$Pointer$(~#dll~0.base, ~#dll~0.offset, 4);#res.base, #res.offset := #t~mem10.base, #t~mem10.offset;havoc #t~mem10.base, #t~mem10.offset;call ULTIMATE.dealloc(~#dll~0.base, ~#dll~0.offset);havoc ~#dll~0.base, ~#dll~0.offset; {2795#true} is VALID [2020-07-10 15:04:35,794 INFO L280 TraceCheckUtils]: 63: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:35,794 INFO L275 TraceCheckUtils]: 64: Hoare quadruple {2795#true} {2795#true} #540#return; {2795#true} is VALID [2020-07-10 15:04:35,795 INFO L280 TraceCheckUtils]: 65: Hoare triple {2795#true} #res.base, #res.offset := #t~ret11.base, #t~ret11.offset;havoc #t~ret11.base, #t~ret11.offset; {2795#true} is VALID [2020-07-10 15:04:35,795 INFO L280 TraceCheckUtils]: 66: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:35,795 INFO L275 TraceCheckUtils]: 67: Hoare quadruple {2795#true} {2795#true} #496#return; {2795#true} is VALID [2020-07-10 15:04:35,795 INFO L280 TraceCheckUtils]: 68: Hoare triple {2795#true} call write~$Pointer$(#t~ret19.base, #t~ret19.offset, ~item~1.base, 8 + ~item~1.offset, 4);havoc #t~ret19.base, #t~ret19.offset;call write~$Pointer$(~item~1.base, ~item~1.offset, ~dll.base, ~dll.offset, 4); {2795#true} is VALID [2020-07-10 15:04:35,796 INFO L280 TraceCheckUtils]: 69: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:35,796 INFO L275 TraceCheckUtils]: 70: Hoare quadruple {2795#true} {2795#true} #512#return; {2795#true} is VALID [2020-07-10 15:04:35,796 INFO L280 TraceCheckUtils]: 71: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:35,796 INFO L275 TraceCheckUtils]: 72: Hoare quadruple {2795#true} {2795#true} #534#return; {2795#true} is VALID [2020-07-10 15:04:35,796 INFO L263 TraceCheckUtils]: 73: Hoare triple {2795#true} call ##fun~$Pointer$~TO~VOID(~#dll~0.base, ~#dll~0.offset, ~insert_fnc.base, ~insert_fnc.offset); {2795#true} is VALID [2020-07-10 15:04:35,797 INFO L280 TraceCheckUtils]: 74: Hoare triple {2795#true} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {3886#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|))} is VALID [2020-07-10 15:04:35,798 INFO L280 TraceCheckUtils]: 75: Hoare triple {3886#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|))} assume #in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset; {3886#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|))} is VALID [2020-07-10 15:04:35,798 INFO L263 TraceCheckUtils]: 76: Hoare triple {3886#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|))} call dll_insert_master(#~9.base, #~9.offset); {2795#true} is VALID [2020-07-10 15:04:35,799 INFO L280 TraceCheckUtils]: 77: Hoare triple {2795#true} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {3896#(and (= dll_insert_master_~dll.offset |dll_insert_master_#in~dll.offset|) (= dll_insert_master_~dll.base |dll_insert_master_#in~dll.base|))} is VALID [2020-07-10 15:04:35,799 INFO L263 TraceCheckUtils]: 78: Hoare triple {3896#(and (= dll_insert_master_~dll.offset |dll_insert_master_#in~dll.offset|) (= dll_insert_master_~dll.base |dll_insert_master_#in~dll.base|))} call #t~ret17.base, #t~ret17.offset := alloc_or_die_master(); {2795#true} is VALID [2020-07-10 15:04:35,800 INFO L280 TraceCheckUtils]: 79: Hoare triple {2795#true} call #t~malloc3.base, #t~malloc3.offset := #Ultimate.allocOnHeap(12);~ptr~1.base, ~ptr~1.offset := #t~malloc3.base, #t~malloc3.offset; {3903#(= 0 alloc_or_die_master_~ptr~1.offset)} is VALID [2020-07-10 15:04:35,800 INFO L280 TraceCheckUtils]: 80: Hoare triple {3903#(= 0 alloc_or_die_master_~ptr~1.offset)} assume !(~ptr~1.base == 0 && ~ptr~1.offset == 0); {3907#(not (= 0 alloc_or_die_master_~ptr~1.base))} is VALID [2020-07-10 15:04:35,801 INFO L280 TraceCheckUtils]: 81: Hoare triple {3907#(not (= 0 alloc_or_die_master_~ptr~1.base))} call write~$Pointer$(0, 0, ~ptr~1.base, ~ptr~1.offset, 4);call write~$Pointer$(0, 0, ~ptr~1.base, 4 + ~ptr~1.offset, 4);call write~$Pointer$(0, 0, ~ptr~1.base, 8 + ~ptr~1.offset, 4);#res.base, #res.offset := ~ptr~1.base, ~ptr~1.offset; {3911#(not (= 0 |alloc_or_die_master_#res.base|))} is VALID [2020-07-10 15:04:35,802 INFO L280 TraceCheckUtils]: 82: Hoare triple {3911#(not (= 0 |alloc_or_die_master_#res.base|))} assume true; {3911#(not (= 0 |alloc_or_die_master_#res.base|))} is VALID [2020-07-10 15:04:35,803 INFO L275 TraceCheckUtils]: 83: Hoare quadruple {3911#(not (= 0 |alloc_or_die_master_#res.base|))} {3896#(and (= dll_insert_master_~dll.offset |dll_insert_master_#in~dll.offset|) (= dll_insert_master_~dll.base |dll_insert_master_#in~dll.base|))} #494#return; {3918#(and (= dll_insert_master_~dll.offset |dll_insert_master_#in~dll.offset|) (not (= 0 |dll_insert_master_#t~ret17.base|)) (= dll_insert_master_~dll.base |dll_insert_master_#in~dll.base|))} is VALID [2020-07-10 15:04:35,804 INFO L280 TraceCheckUtils]: 84: Hoare triple {3918#(and (= dll_insert_master_~dll.offset |dll_insert_master_#in~dll.offset|) (not (= 0 |dll_insert_master_#t~ret17.base|)) (= dll_insert_master_~dll.base |dll_insert_master_#in~dll.base|))} ~item~1.base, ~item~1.offset := #t~ret17.base, #t~ret17.offset;havoc #t~ret17.base, #t~ret17.offset;call #t~mem18.base, #t~mem18.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~3.base, ~next~3.offset := #t~mem18.base, #t~mem18.offset;havoc #t~mem18.base, #t~mem18.offset;call write~$Pointer$(~next~3.base, ~next~3.offset, ~item~1.base, ~item~1.offset, 4); {3922#(and (= dll_insert_master_~dll.offset |dll_insert_master_#in~dll.offset|) (not (= 0 dll_insert_master_~item~1.base)) (= dll_insert_master_~dll.base |dll_insert_master_#in~dll.base|))} is VALID [2020-07-10 15:04:35,805 INFO L280 TraceCheckUtils]: 85: Hoare triple {3922#(and (= dll_insert_master_~dll.offset |dll_insert_master_#in~dll.offset|) (not (= 0 dll_insert_master_~item~1.base)) (= dll_insert_master_~dll.base |dll_insert_master_#in~dll.base|))} assume ~next~3.base != 0 || ~next~3.offset != 0;call write~$Pointer$(~item~1.base, ~item~1.offset, ~next~3.base, 4 + ~next~3.offset, 4); {3922#(and (= dll_insert_master_~dll.offset |dll_insert_master_#in~dll.offset|) (not (= 0 dll_insert_master_~item~1.base)) (= dll_insert_master_~dll.base |dll_insert_master_#in~dll.base|))} is VALID [2020-07-10 15:04:35,805 INFO L263 TraceCheckUtils]: 86: Hoare triple {3922#(and (= dll_insert_master_~dll.offset |dll_insert_master_#in~dll.offset|) (not (= 0 dll_insert_master_~item~1.base)) (= dll_insert_master_~dll.base |dll_insert_master_#in~dll.base|))} call #t~ret19.base, #t~ret19.offset := dll_create_slave(); {2795#true} is VALID [2020-07-10 15:04:35,805 INFO L263 TraceCheckUtils]: 87: Hoare triple {2795#true} call #t~ret11.base, #t~ret11.offset := dll_create_generic(#funAddr~dll_insert_slave.base, #funAddr~dll_insert_slave.offset); {2795#true} is VALID [2020-07-10 15:04:35,805 INFO L280 TraceCheckUtils]: 88: Hoare triple {2795#true} ~insert_fnc.base, ~insert_fnc.offset := #in~insert_fnc.base, #in~insert_fnc.offset;call ~#dll~0.base, ~#dll~0.offset := #Ultimate.allocOnStack(4);call write~init~$Pointer$(0, 0, ~#dll~0.base, ~#dll~0.offset, 4); {2795#true} is VALID [2020-07-10 15:04:35,805 INFO L263 TraceCheckUtils]: 89: Hoare triple {2795#true} call ##fun~$Pointer$~TO~VOID(~#dll~0.base, ~#dll~0.offset, ~insert_fnc.base, ~insert_fnc.offset); {2795#true} is VALID [2020-07-10 15:04:35,806 INFO L280 TraceCheckUtils]: 90: Hoare triple {2795#true} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {2795#true} is VALID [2020-07-10 15:04:35,806 INFO L280 TraceCheckUtils]: 91: Hoare triple {2795#true} assume !(#in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset); {2795#true} is VALID [2020-07-10 15:04:35,806 INFO L263 TraceCheckUtils]: 92: Hoare triple {2795#true} call dll_insert_slave(#~9.base, #~9.offset); {2795#true} is VALID [2020-07-10 15:04:35,806 INFO L280 TraceCheckUtils]: 93: Hoare triple {2795#true} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {2795#true} is VALID [2020-07-10 15:04:35,806 INFO L263 TraceCheckUtils]: 94: Hoare triple {2795#true} call #t~ret4.base, #t~ret4.offset := alloc_or_die_slave(); {2795#true} is VALID [2020-07-10 15:04:35,807 INFO L280 TraceCheckUtils]: 95: Hoare triple {2795#true} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {2795#true} is VALID [2020-07-10 15:04:35,807 INFO L280 TraceCheckUtils]: 96: Hoare triple {2795#true} assume !(~ptr~0.base == 0 && ~ptr~0.offset == 0); {2795#true} is VALID [2020-07-10 15:04:35,807 INFO L280 TraceCheckUtils]: 97: Hoare triple {2795#true} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {2795#true} is VALID [2020-07-10 15:04:35,807 INFO L280 TraceCheckUtils]: 98: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:35,807 INFO L275 TraceCheckUtils]: 99: Hoare quadruple {2795#true} {2795#true} #490#return; {2795#true} is VALID [2020-07-10 15:04:35,808 INFO L280 TraceCheckUtils]: 100: Hoare triple {2795#true} ~item~0.base, ~item~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~0.base, ~next~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset;call write~$Pointer$(~next~0.base, ~next~0.offset, ~item~0.base, ~item~0.offset, 4); {2795#true} is VALID [2020-07-10 15:04:35,808 INFO L280 TraceCheckUtils]: 101: Hoare triple {2795#true} assume !(~next~0.base != 0 || ~next~0.offset != 0); {2795#true} is VALID [2020-07-10 15:04:35,808 INFO L280 TraceCheckUtils]: 102: Hoare triple {2795#true} call write~$Pointer$(~item~0.base, ~item~0.offset, ~dll.base, ~dll.offset, 4); {2795#true} is VALID [2020-07-10 15:04:35,808 INFO L280 TraceCheckUtils]: 103: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:35,808 INFO L275 TraceCheckUtils]: 104: Hoare quadruple {2795#true} {2795#true} #514#return; {2795#true} is VALID [2020-07-10 15:04:35,808 INFO L280 TraceCheckUtils]: 105: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:35,809 INFO L275 TraceCheckUtils]: 106: Hoare quadruple {2795#true} {2795#true} #534#return; {2795#true} is VALID [2020-07-10 15:04:35,809 INFO L263 TraceCheckUtils]: 107: Hoare triple {2795#true} call ##fun~$Pointer$~TO~VOID(~#dll~0.base, ~#dll~0.offset, ~insert_fnc.base, ~insert_fnc.offset); {2795#true} is VALID [2020-07-10 15:04:35,809 INFO L280 TraceCheckUtils]: 108: Hoare triple {2795#true} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {2795#true} is VALID [2020-07-10 15:04:35,809 INFO L280 TraceCheckUtils]: 109: Hoare triple {2795#true} assume !(#in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset); {2795#true} is VALID [2020-07-10 15:04:35,809 INFO L263 TraceCheckUtils]: 110: Hoare triple {2795#true} call dll_insert_slave(#~9.base, #~9.offset); {2795#true} is VALID [2020-07-10 15:04:35,810 INFO L280 TraceCheckUtils]: 111: Hoare triple {2795#true} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {2795#true} is VALID [2020-07-10 15:04:35,810 INFO L263 TraceCheckUtils]: 112: Hoare triple {2795#true} call #t~ret4.base, #t~ret4.offset := alloc_or_die_slave(); {2795#true} is VALID [2020-07-10 15:04:35,810 INFO L280 TraceCheckUtils]: 113: Hoare triple {2795#true} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {2795#true} is VALID [2020-07-10 15:04:35,810 INFO L280 TraceCheckUtils]: 114: Hoare triple {2795#true} assume !(~ptr~0.base == 0 && ~ptr~0.offset == 0); {2795#true} is VALID [2020-07-10 15:04:35,810 INFO L280 TraceCheckUtils]: 115: Hoare triple {2795#true} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {2795#true} is VALID [2020-07-10 15:04:35,810 INFO L280 TraceCheckUtils]: 116: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:35,811 INFO L275 TraceCheckUtils]: 117: Hoare quadruple {2795#true} {2795#true} #490#return; {2795#true} is VALID [2020-07-10 15:04:35,811 INFO L280 TraceCheckUtils]: 118: Hoare triple {2795#true} ~item~0.base, ~item~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~0.base, ~next~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset;call write~$Pointer$(~next~0.base, ~next~0.offset, ~item~0.base, ~item~0.offset, 4); {2795#true} is VALID [2020-07-10 15:04:35,811 INFO L280 TraceCheckUtils]: 119: Hoare triple {2795#true} assume !(~next~0.base != 0 || ~next~0.offset != 0); {2795#true} is VALID [2020-07-10 15:04:35,811 INFO L280 TraceCheckUtils]: 120: Hoare triple {2795#true} call write~$Pointer$(~item~0.base, ~item~0.offset, ~dll.base, ~dll.offset, 4); {2795#true} is VALID [2020-07-10 15:04:35,811 INFO L280 TraceCheckUtils]: 121: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:35,811 INFO L275 TraceCheckUtils]: 122: Hoare quadruple {2795#true} {2795#true} #514#return; {2795#true} is VALID [2020-07-10 15:04:35,812 INFO L280 TraceCheckUtils]: 123: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:35,812 INFO L275 TraceCheckUtils]: 124: Hoare quadruple {2795#true} {2795#true} #536#return; {2795#true} is VALID [2020-07-10 15:04:35,812 INFO L280 TraceCheckUtils]: 125: Hoare triple {2795#true} assume -2147483648 <= #t~nondet8 && #t~nondet8 <= 2147483647; {2795#true} is VALID [2020-07-10 15:04:35,812 INFO L280 TraceCheckUtils]: 126: Hoare triple {2795#true} assume !(0 != #t~nondet8);havoc #t~nondet8; {2795#true} is VALID [2020-07-10 15:04:35,812 INFO L280 TraceCheckUtils]: 127: Hoare triple {2795#true} call #t~mem10.base, #t~mem10.offset := read~$Pointer$(~#dll~0.base, ~#dll~0.offset, 4);#res.base, #res.offset := #t~mem10.base, #t~mem10.offset;havoc #t~mem10.base, #t~mem10.offset;call ULTIMATE.dealloc(~#dll~0.base, ~#dll~0.offset);havoc ~#dll~0.base, ~#dll~0.offset; {2795#true} is VALID [2020-07-10 15:04:35,813 INFO L280 TraceCheckUtils]: 128: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:35,813 INFO L275 TraceCheckUtils]: 129: Hoare quadruple {2795#true} {2795#true} #540#return; {2795#true} is VALID [2020-07-10 15:04:35,813 INFO L280 TraceCheckUtils]: 130: Hoare triple {2795#true} #res.base, #res.offset := #t~ret11.base, #t~ret11.offset;havoc #t~ret11.base, #t~ret11.offset; {2795#true} is VALID [2020-07-10 15:04:35,813 INFO L280 TraceCheckUtils]: 131: Hoare triple {2795#true} assume true; {2795#true} is VALID [2020-07-10 15:04:35,819 INFO L275 TraceCheckUtils]: 132: Hoare quadruple {2795#true} {3922#(and (= dll_insert_master_~dll.offset |dll_insert_master_#in~dll.offset|) (not (= 0 dll_insert_master_~item~1.base)) (= dll_insert_master_~dll.base |dll_insert_master_#in~dll.base|))} #496#return; {3922#(and (= dll_insert_master_~dll.offset |dll_insert_master_#in~dll.offset|) (not (= 0 dll_insert_master_~item~1.base)) (= dll_insert_master_~dll.base |dll_insert_master_#in~dll.base|))} is VALID [2020-07-10 15:04:35,820 INFO L280 TraceCheckUtils]: 133: Hoare triple {3922#(and (= dll_insert_master_~dll.offset |dll_insert_master_#in~dll.offset|) (not (= 0 dll_insert_master_~item~1.base)) (= dll_insert_master_~dll.base |dll_insert_master_#in~dll.base|))} call write~$Pointer$(#t~ret19.base, #t~ret19.offset, ~item~1.base, 8 + ~item~1.offset, 4);havoc #t~ret19.base, #t~ret19.offset;call write~$Pointer$(~item~1.base, ~item~1.offset, ~dll.base, ~dll.offset, 4); {4070#(not (= 0 (select (select |#memory_$Pointer$.base| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|)))} is VALID [2020-07-10 15:04:35,821 INFO L280 TraceCheckUtils]: 134: Hoare triple {4070#(not (= 0 (select (select |#memory_$Pointer$.base| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|)))} assume true; {4070#(not (= 0 (select (select |#memory_$Pointer$.base| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|)))} is VALID [2020-07-10 15:04:35,822 INFO L275 TraceCheckUtils]: 135: Hoare quadruple {4070#(not (= 0 (select (select |#memory_$Pointer$.base| |dll_insert_master_#in~dll.base|) |dll_insert_master_#in~dll.offset|)))} {3886#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|))} #512#return; {4077#(not (= 0 (select (select |#memory_$Pointer$.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|)))} is VALID [2020-07-10 15:04:35,822 INFO L280 TraceCheckUtils]: 136: Hoare triple {4077#(not (= 0 (select (select |#memory_$Pointer$.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|)))} assume true; {4077#(not (= 0 (select (select |#memory_$Pointer$.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|)))} is VALID [2020-07-10 15:04:35,824 INFO L275 TraceCheckUtils]: 137: Hoare quadruple {4077#(not (= 0 (select (select |#memory_$Pointer$.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|)))} {2795#true} #536#return; {4084#(not (= 0 (select (select |#memory_$Pointer$.base| |dll_create_generic_~#dll~0.base|) |dll_create_generic_~#dll~0.offset|)))} is VALID [2020-07-10 15:04:35,824 INFO L280 TraceCheckUtils]: 138: Hoare triple {4084#(not (= 0 (select (select |#memory_$Pointer$.base| |dll_create_generic_~#dll~0.base|) |dll_create_generic_~#dll~0.offset|)))} assume -2147483648 <= #t~nondet8 && #t~nondet8 <= 2147483647; {4084#(not (= 0 (select (select |#memory_$Pointer$.base| |dll_create_generic_~#dll~0.base|) |dll_create_generic_~#dll~0.offset|)))} is VALID [2020-07-10 15:04:35,824 INFO L280 TraceCheckUtils]: 139: Hoare triple {4084#(not (= 0 (select (select |#memory_$Pointer$.base| |dll_create_generic_~#dll~0.base|) |dll_create_generic_~#dll~0.offset|)))} assume !(0 != #t~nondet8);havoc #t~nondet8; {4084#(not (= 0 (select (select |#memory_$Pointer$.base| |dll_create_generic_~#dll~0.base|) |dll_create_generic_~#dll~0.offset|)))} is VALID [2020-07-10 15:04:35,825 INFO L280 TraceCheckUtils]: 140: Hoare triple {4084#(not (= 0 (select (select |#memory_$Pointer$.base| |dll_create_generic_~#dll~0.base|) |dll_create_generic_~#dll~0.offset|)))} call #t~mem10.base, #t~mem10.offset := read~$Pointer$(~#dll~0.base, ~#dll~0.offset, 4);#res.base, #res.offset := #t~mem10.base, #t~mem10.offset;havoc #t~mem10.base, #t~mem10.offset;call ULTIMATE.dealloc(~#dll~0.base, ~#dll~0.offset);havoc ~#dll~0.base, ~#dll~0.offset; {4094#(not (= 0 |dll_create_generic_#res.base|))} is VALID [2020-07-10 15:04:35,826 INFO L280 TraceCheckUtils]: 141: Hoare triple {4094#(not (= 0 |dll_create_generic_#res.base|))} assume true; {4094#(not (= 0 |dll_create_generic_#res.base|))} is VALID [2020-07-10 15:04:35,827 INFO L275 TraceCheckUtils]: 142: Hoare quadruple {4094#(not (= 0 |dll_create_generic_#res.base|))} {2795#true} #492#return; {4101#(not (= 0 |dll_create_master_#t~ret20.base|))} is VALID [2020-07-10 15:04:35,827 INFO L280 TraceCheckUtils]: 143: Hoare triple {4101#(not (= 0 |dll_create_master_#t~ret20.base|))} #res.base, #res.offset := #t~ret20.base, #t~ret20.offset;havoc #t~ret20.base, #t~ret20.offset; {4105#(not (= 0 |dll_create_master_#res.base|))} is VALID [2020-07-10 15:04:35,828 INFO L280 TraceCheckUtils]: 144: Hoare triple {4105#(not (= 0 |dll_create_master_#res.base|))} assume true; {4105#(not (= 0 |dll_create_master_#res.base|))} is VALID [2020-07-10 15:04:35,829 INFO L275 TraceCheckUtils]: 145: Hoare quadruple {4105#(not (= 0 |dll_create_master_#res.base|))} {2795#true} #498#return; {2940#(not (= 0 |main_#t~ret45.base|))} is VALID [2020-07-10 15:04:35,829 INFO L280 TraceCheckUtils]: 146: Hoare triple {2940#(not (= 0 |main_#t~ret45.base|))} ~dll~1.base, ~dll~1.offset := #t~ret45.base, #t~ret45.offset;havoc #t~ret45.base, #t~ret45.offset; {2941#(not (= main_~dll~1.base 0))} is VALID [2020-07-10 15:04:35,830 INFO L263 TraceCheckUtils]: 147: Hoare triple {2941#(not (= main_~dll~1.base 0))} call inspect_full(~dll~1.base, ~dll~1.offset); {2942#(not (= 0 |inspect_full_#in~dll.base|))} is VALID [2020-07-10 15:04:35,830 INFO L280 TraceCheckUtils]: 148: Hoare triple {2942#(not (= 0 |inspect_full_#in~dll.base|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {2943#(not (= 0 inspect_full_~dll.base))} is VALID [2020-07-10 15:04:35,831 INFO L263 TraceCheckUtils]: 149: Hoare triple {2943#(not (= 0 inspect_full_~dll.base))} call inspect_base(~dll.base, ~dll.offset); {2944#(not (= 0 |inspect_base_#in~dll.base|))} is VALID [2020-07-10 15:04:35,832 INFO L280 TraceCheckUtils]: 150: Hoare triple {2944#(not (= 0 |inspect_base_#in~dll.base|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {2945#(not (= 0 inspect_base_~dll.base))} is VALID [2020-07-10 15:04:35,832 INFO L280 TraceCheckUtils]: 151: Hoare triple {2945#(not (= 0 inspect_base_~dll.base))} assume ~dll.base == 0 && ~dll.offset == 0; {2796#false} is VALID [2020-07-10 15:04:35,832 INFO L263 TraceCheckUtils]: 152: Hoare triple {2796#false} call fail(); {2796#false} is VALID [2020-07-10 15:04:35,833 INFO L280 TraceCheckUtils]: 153: Hoare triple {2796#false} assume !false; {2796#false} is VALID [2020-07-10 15:04:35,851 INFO L134 CoverageAnalysis]: Checked inductivity of 180 backedges. 35 proven. 2 refuted. 0 times theorem prover too weak. 143 trivial. 0 not checked. [2020-07-10 15:04:35,851 INFO L220 FreeRefinementEngine]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2020-07-10 15:04:35,852 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [19, 21] total 32 [2020-07-10 15:04:35,852 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1997518563] [2020-07-10 15:04:35,853 INFO L78 Accepts]: Start accepts. Automaton has 32 states. Word has length 154 [2020-07-10 15:10:18,341 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-10 15:10:18,342 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 32 states. [2020-07-10 15:10:18,528 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 137 edges. 137 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-10 15:10:18,528 INFO L459 AbstractCegarLoop]: Interpolant automaton has 32 states [2020-07-10 15:10:18,528 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2020-07-10 15:10:18,529 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 32 interpolants. [2020-07-10 15:10:18,530 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=70, Invalid=922, Unknown=0, NotChecked=0, Total=992 [2020-07-10 15:10:18,530 INFO L87 Difference]: Start difference. First operand 168 states and 199 transitions. Second operand 32 states. [2020-07-10 15:10:40,121 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-10 15:10:40,121 INFO L93 Difference]: Finished difference Result 411 states and 498 transitions. [2020-07-10 15:10:40,121 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 35 states. [2020-07-10 15:10:40,123 INFO L78 Accepts]: Start accepts. Automaton has 32 states. Word has length 154 [2020-07-10 15:10:40,124 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-10 15:10:40,124 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 32 states. [2020-07-10 15:10:40,141 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 35 states to 35 states and 482 transitions. [2020-07-10 15:10:40,141 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 32 states. [2020-07-10 15:10:40,154 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 35 states to 35 states and 482 transitions. [2020-07-10 15:10:40,155 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 35 states and 482 transitions. [2020-07-10 15:10:40,882 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 482 edges. 482 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-10 15:10:40,892 INFO L225 Difference]: With dead ends: 411 [2020-07-10 15:10:40,893 INFO L226 Difference]: Without dead ends: 249 [2020-07-10 15:10:40,895 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 244 GetRequests, 190 SyntacticMatches, 0 SemanticMatches, 54 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 344 ImplicationChecksByTransitivity, 2.5s TimeCoverageRelationStatistics Valid=251, Invalid=2829, Unknown=0, NotChecked=0, Total=3080 [2020-07-10 15:10:40,896 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 249 states. [2020-07-10 15:10:41,117 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 249 to 205. [2020-07-10 15:10:41,117 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-10 15:10:41,118 INFO L82 GeneralOperation]: Start isEquivalent. First operand 249 states. Second operand 205 states. [2020-07-10 15:10:41,118 INFO L74 IsIncluded]: Start isIncluded. First operand 249 states. Second operand 205 states. [2020-07-10 15:10:41,118 INFO L87 Difference]: Start difference. First operand 249 states. Second operand 205 states. [2020-07-10 15:10:41,130 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-10 15:10:41,130 INFO L93 Difference]: Finished difference Result 249 states and 300 transitions. [2020-07-10 15:10:41,130 INFO L276 IsEmpty]: Start isEmpty. Operand 249 states and 300 transitions. [2020-07-10 15:10:41,131 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-10 15:10:41,131 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-10 15:10:41,132 INFO L74 IsIncluded]: Start isIncluded. First operand 205 states. Second operand 249 states. [2020-07-10 15:10:41,132 INFO L87 Difference]: Start difference. First operand 205 states. Second operand 249 states. [2020-07-10 15:10:41,143 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-10 15:10:41,144 INFO L93 Difference]: Finished difference Result 249 states and 300 transitions. [2020-07-10 15:10:41,144 INFO L276 IsEmpty]: Start isEmpty. Operand 249 states and 300 transitions. [2020-07-10 15:10:41,145 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-10 15:10:41,145 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-10 15:10:41,145 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-10 15:10:41,146 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-10 15:10:41,146 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 205 states. [2020-07-10 15:10:41,154 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 205 states to 205 states and 243 transitions. [2020-07-10 15:10:41,155 INFO L78 Accepts]: Start accepts. Automaton has 205 states and 243 transitions. Word has length 154 [2020-07-10 15:10:41,155 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-10 15:10:41,155 INFO L479 AbstractCegarLoop]: Abstraction has 205 states and 243 transitions. [2020-07-10 15:10:41,155 INFO L480 AbstractCegarLoop]: Interpolant automaton has 32 states. [2020-07-10 15:10:41,156 INFO L276 IsEmpty]: Start isEmpty. Operand 205 states and 243 transitions. [2020-07-10 15:10:41,158 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 158 [2020-07-10 15:10:41,158 INFO L414 BasicCegarLoop]: Found error trace [2020-07-10 15:10:41,158 INFO L422 BasicCegarLoop]: trace histogram [6, 6, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 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] [2020-07-10 15:10:41,371 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2,3 z3 -smt2 -in SMTLIB2_COMPLIANT=true [2020-07-10 15:10:41,372 INFO L427 AbstractCegarLoop]: === Iteration 4 === [failErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-10 15:10:41,372 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-10 15:10:41,373 INFO L82 PathProgramCache]: Analyzing trace with hash -477532124, now seen corresponding path program 1 times [2020-07-10 15:10:41,373 INFO L163 FreeRefinementEngine]: Executing refinement strategy CAMEL [2020-07-10 15:10:41,373 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1445963252] [2020-07-10 15:10:41,373 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-10 15:10:41,443 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 15:10:41,568 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 15:10:41,571 INFO L280 TraceCheckUtils]: 0: Hoare triple {5694#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];assume 0 < #StackHeapBarrier; {5549#true} is VALID [2020-07-10 15:10:41,571 INFO L280 TraceCheckUtils]: 1: Hoare triple {5549#true} assume true; {5549#true} is VALID [2020-07-10 15:10:41,572 INFO L275 TraceCheckUtils]: 2: Hoare quadruple {5549#true} {5549#true} #542#return; {5549#true} is VALID [2020-07-10 15:10:41,741 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 15:10:41,876 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 15:10:41,927 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 15:10:41,967 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 15:10:41,986 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 15:10:41,990 INFO L280 TraceCheckUtils]: 0: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc3.base, #t~malloc3.offset := #Ultimate.allocOnHeap(12);~ptr~1.base, ~ptr~1.offset := #t~malloc3.base, #t~malloc3.offset; {5549#true} is VALID [2020-07-10 15:10:41,990 INFO L280 TraceCheckUtils]: 1: Hoare triple {5549#true} assume !(~ptr~1.base == 0 && ~ptr~1.offset == 0); {5549#true} is VALID [2020-07-10 15:10:41,990 INFO L280 TraceCheckUtils]: 2: Hoare triple {5549#true} call write~$Pointer$(0, 0, ~ptr~1.base, ~ptr~1.offset, 4);call write~$Pointer$(0, 0, ~ptr~1.base, 4 + ~ptr~1.offset, 4);call write~$Pointer$(0, 0, ~ptr~1.base, 8 + ~ptr~1.offset, 4);#res.base, #res.offset := ~ptr~1.base, ~ptr~1.offset; {5549#true} is VALID [2020-07-10 15:10:41,990 INFO L280 TraceCheckUtils]: 3: Hoare triple {5549#true} assume true; {5549#true} is VALID [2020-07-10 15:10:41,991 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {5549#true} {5549#true} #494#return; {5549#true} is VALID [2020-07-10 15:10:42,003 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 15:10:42,033 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 15:10:42,089 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 15:10:42,130 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 15:10:42,227 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 15:10:42,292 INFO L280 TraceCheckUtils]: 0: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {6171#(or (<= (+ alloc_or_die_slave_~ptr~0.base 1) 0) (<= 1 alloc_or_die_slave_~ptr~0.base))} is VALID [2020-07-10 15:10:42,293 INFO L280 TraceCheckUtils]: 1: Hoare triple {6171#(or (<= (+ alloc_or_die_slave_~ptr~0.base 1) 0) (<= 1 alloc_or_die_slave_~ptr~0.base))} assume !(~ptr~0.base == 0 && ~ptr~0.offset == 0); {6171#(or (<= (+ alloc_or_die_slave_~ptr~0.base 1) 0) (<= 1 alloc_or_die_slave_~ptr~0.base))} is VALID [2020-07-10 15:10:42,294 INFO L280 TraceCheckUtils]: 2: Hoare triple {6171#(or (<= (+ alloc_or_die_slave_~ptr~0.base 1) 0) (<= 1 alloc_or_die_slave_~ptr~0.base))} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {6172#(or (<= (+ |alloc_or_die_slave_#res.base| 1) 0) (<= 1 |alloc_or_die_slave_#res.base|))} is VALID [2020-07-10 15:10:42,295 INFO L280 TraceCheckUtils]: 3: Hoare triple {6172#(or (<= (+ |alloc_or_die_slave_#res.base| 1) 0) (<= 1 |alloc_or_die_slave_#res.base|))} assume true; {6172#(or (<= (+ |alloc_or_die_slave_#res.base| 1) 0) (<= 1 |alloc_or_die_slave_#res.base|))} is VALID [2020-07-10 15:10:42,296 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {6172#(or (<= (+ |alloc_or_die_slave_#res.base| 1) 0) (<= 1 |alloc_or_die_slave_#res.base|))} {6162#(and (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|))} #490#return; {6168#(and (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|) (not (= 0 |dll_insert_slave_#t~ret4.base|)))} is VALID [2020-07-10 15:10:42,297 INFO L280 TraceCheckUtils]: 0: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {6162#(and (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|))} is VALID [2020-07-10 15:10:42,299 INFO L263 TraceCheckUtils]: 1: Hoare triple {6162#(and (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|))} call #t~ret4.base, #t~ret4.offset := alloc_or_die_slave(); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:42,300 INFO L280 TraceCheckUtils]: 2: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {6171#(or (<= (+ alloc_or_die_slave_~ptr~0.base 1) 0) (<= 1 alloc_or_die_slave_~ptr~0.base))} is VALID [2020-07-10 15:10:42,300 INFO L280 TraceCheckUtils]: 3: Hoare triple {6171#(or (<= (+ alloc_or_die_slave_~ptr~0.base 1) 0) (<= 1 alloc_or_die_slave_~ptr~0.base))} assume !(~ptr~0.base == 0 && ~ptr~0.offset == 0); {6171#(or (<= (+ alloc_or_die_slave_~ptr~0.base 1) 0) (<= 1 alloc_or_die_slave_~ptr~0.base))} is VALID [2020-07-10 15:10:42,301 INFO L280 TraceCheckUtils]: 4: Hoare triple {6171#(or (<= (+ alloc_or_die_slave_~ptr~0.base 1) 0) (<= 1 alloc_or_die_slave_~ptr~0.base))} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {6172#(or (<= (+ |alloc_or_die_slave_#res.base| 1) 0) (<= 1 |alloc_or_die_slave_#res.base|))} is VALID [2020-07-10 15:10:42,302 INFO L280 TraceCheckUtils]: 5: Hoare triple {6172#(or (<= (+ |alloc_or_die_slave_#res.base| 1) 0) (<= 1 |alloc_or_die_slave_#res.base|))} assume true; {6172#(or (<= (+ |alloc_or_die_slave_#res.base| 1) 0) (<= 1 |alloc_or_die_slave_#res.base|))} is VALID [2020-07-10 15:10:42,303 INFO L275 TraceCheckUtils]: 6: Hoare quadruple {6172#(or (<= (+ |alloc_or_die_slave_#res.base| 1) 0) (<= 1 |alloc_or_die_slave_#res.base|))} {6162#(and (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|))} #490#return; {6168#(and (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|) (not (= 0 |dll_insert_slave_#t~ret4.base|)))} is VALID [2020-07-10 15:10:42,304 INFO L280 TraceCheckUtils]: 7: Hoare triple {6168#(and (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|) (not (= 0 |dll_insert_slave_#t~ret4.base|)))} ~item~0.base, ~item~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~0.base, ~next~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset;call write~$Pointer$(~next~0.base, ~next~0.offset, ~item~0.base, ~item~0.offset, 4); {6169#(and (not (= 0 dll_insert_slave_~item~0.base)) (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|))} is VALID [2020-07-10 15:10:42,305 INFO L280 TraceCheckUtils]: 8: Hoare triple {6169#(and (not (= 0 dll_insert_slave_~item~0.base)) (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|))} assume !(~next~0.base != 0 || ~next~0.offset != 0); {6169#(and (not (= 0 dll_insert_slave_~item~0.base)) (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|))} is VALID [2020-07-10 15:10:42,306 INFO L280 TraceCheckUtils]: 9: Hoare triple {6169#(and (not (= 0 dll_insert_slave_~item~0.base)) (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|))} call write~$Pointer$(~item~0.base, ~item~0.offset, ~dll.base, ~dll.offset, 4); {6170#(not (= 0 (select (select |#memory_$Pointer$.base| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|)))} is VALID [2020-07-10 15:10:42,307 INFO L280 TraceCheckUtils]: 10: Hoare triple {6170#(not (= 0 (select (select |#memory_$Pointer$.base| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|)))} assume true; {6170#(not (= 0 (select (select |#memory_$Pointer$.base| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|)))} is VALID [2020-07-10 15:10:42,308 INFO L275 TraceCheckUtils]: 11: Hoare quadruple {6170#(not (= 0 (select (select |#memory_$Pointer$.base| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|)))} {6148#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|))} #514#return; {6161#(not (= 0 (select (select |#memory_$Pointer$.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|)))} is VALID [2020-07-10 15:10:42,309 INFO L280 TraceCheckUtils]: 0: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {6148#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|))} is VALID [2020-07-10 15:10:42,310 INFO L280 TraceCheckUtils]: 1: Hoare triple {6148#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|))} assume !(#in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset); {6148#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|))} is VALID [2020-07-10 15:10:42,311 INFO L263 TraceCheckUtils]: 2: Hoare triple {6148#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|))} call dll_insert_slave(#~9.base, #~9.offset); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:42,312 INFO L280 TraceCheckUtils]: 3: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {6162#(and (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|))} is VALID [2020-07-10 15:10:42,313 INFO L263 TraceCheckUtils]: 4: Hoare triple {6162#(and (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|))} call #t~ret4.base, #t~ret4.offset := alloc_or_die_slave(); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:42,314 INFO L280 TraceCheckUtils]: 5: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {6171#(or (<= (+ alloc_or_die_slave_~ptr~0.base 1) 0) (<= 1 alloc_or_die_slave_~ptr~0.base))} is VALID [2020-07-10 15:10:42,315 INFO L280 TraceCheckUtils]: 6: Hoare triple {6171#(or (<= (+ alloc_or_die_slave_~ptr~0.base 1) 0) (<= 1 alloc_or_die_slave_~ptr~0.base))} assume !(~ptr~0.base == 0 && ~ptr~0.offset == 0); {6171#(or (<= (+ alloc_or_die_slave_~ptr~0.base 1) 0) (<= 1 alloc_or_die_slave_~ptr~0.base))} is VALID [2020-07-10 15:10:42,316 INFO L280 TraceCheckUtils]: 7: Hoare triple {6171#(or (<= (+ alloc_or_die_slave_~ptr~0.base 1) 0) (<= 1 alloc_or_die_slave_~ptr~0.base))} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {6172#(or (<= (+ |alloc_or_die_slave_#res.base| 1) 0) (<= 1 |alloc_or_die_slave_#res.base|))} is VALID [2020-07-10 15:10:42,317 INFO L280 TraceCheckUtils]: 8: Hoare triple {6172#(or (<= (+ |alloc_or_die_slave_#res.base| 1) 0) (<= 1 |alloc_or_die_slave_#res.base|))} assume true; {6172#(or (<= (+ |alloc_or_die_slave_#res.base| 1) 0) (<= 1 |alloc_or_die_slave_#res.base|))} is VALID [2020-07-10 15:10:42,318 INFO L275 TraceCheckUtils]: 9: Hoare quadruple {6172#(or (<= (+ |alloc_or_die_slave_#res.base| 1) 0) (<= 1 |alloc_or_die_slave_#res.base|))} {6162#(and (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|))} #490#return; {6168#(and (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|) (not (= 0 |dll_insert_slave_#t~ret4.base|)))} is VALID [2020-07-10 15:10:42,319 INFO L280 TraceCheckUtils]: 10: Hoare triple {6168#(and (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|) (not (= 0 |dll_insert_slave_#t~ret4.base|)))} ~item~0.base, ~item~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~0.base, ~next~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset;call write~$Pointer$(~next~0.base, ~next~0.offset, ~item~0.base, ~item~0.offset, 4); {6169#(and (not (= 0 dll_insert_slave_~item~0.base)) (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|))} is VALID [2020-07-10 15:10:42,320 INFO L280 TraceCheckUtils]: 11: Hoare triple {6169#(and (not (= 0 dll_insert_slave_~item~0.base)) (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|))} assume !(~next~0.base != 0 || ~next~0.offset != 0); {6169#(and (not (= 0 dll_insert_slave_~item~0.base)) (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|))} is VALID [2020-07-10 15:10:42,322 INFO L280 TraceCheckUtils]: 12: Hoare triple {6169#(and (not (= 0 dll_insert_slave_~item~0.base)) (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|))} call write~$Pointer$(~item~0.base, ~item~0.offset, ~dll.base, ~dll.offset, 4); {6170#(not (= 0 (select (select |#memory_$Pointer$.base| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|)))} is VALID [2020-07-10 15:10:42,322 INFO L280 TraceCheckUtils]: 13: Hoare triple {6170#(not (= 0 (select (select |#memory_$Pointer$.base| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|)))} assume true; {6170#(not (= 0 (select (select |#memory_$Pointer$.base| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|)))} is VALID [2020-07-10 15:10:42,324 INFO L275 TraceCheckUtils]: 14: Hoare quadruple {6170#(not (= 0 (select (select |#memory_$Pointer$.base| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|)))} {6148#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|))} #514#return; {6161#(not (= 0 (select (select |#memory_$Pointer$.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|)))} is VALID [2020-07-10 15:10:42,324 INFO L280 TraceCheckUtils]: 15: Hoare triple {6161#(not (= 0 (select (select |#memory_$Pointer$.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|)))} assume true; {6161#(not (= 0 (select (select |#memory_$Pointer$.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|)))} is VALID [2020-07-10 15:10:42,326 INFO L275 TraceCheckUtils]: 16: Hoare quadruple {6161#(not (= 0 (select (select |#memory_$Pointer$.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|)))} {6112#(<= (+ |#StackHeapBarrier| 1) |dll_create_generic_~#dll~0.base|)} #534#return; {6130#(and (<= (+ |#StackHeapBarrier| 1) |dll_create_generic_~#dll~0.base|) (not (= 0 (select (select |#memory_$Pointer$.base| |dll_create_generic_~#dll~0.base|) |dll_create_generic_~#dll~0.offset|))))} is VALID [2020-07-10 15:10:42,333 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 15:10:42,419 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 15:10:42,562 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 15:10:42,660 INFO L280 TraceCheckUtils]: 0: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {6196#(and (<= (+ alloc_or_die_slave_~ptr~0.base 1) |#StackHeapBarrier|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|))} is VALID [2020-07-10 15:10:42,661 INFO L280 TraceCheckUtils]: 1: Hoare triple {6196#(and (<= (+ alloc_or_die_slave_~ptr~0.base 1) |#StackHeapBarrier|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|))} assume !(~ptr~0.base == 0 && ~ptr~0.offset == 0); {6196#(and (<= (+ alloc_or_die_slave_~ptr~0.base 1) |#StackHeapBarrier|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|))} is VALID [2020-07-10 15:10:42,663 INFO L280 TraceCheckUtils]: 2: Hoare triple {6196#(and (<= (+ alloc_or_die_slave_~ptr~0.base 1) |#StackHeapBarrier|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|))} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {6197#(and (= |#memory_$Pointer$.base| (store |old(#memory_$Pointer$.base)| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) (select |#memory_$Pointer$.base| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|)))) (or (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (<= (+ (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) 1) |#StackHeapBarrier|)))} is VALID [2020-07-10 15:10:42,664 INFO L280 TraceCheckUtils]: 3: Hoare triple {6197#(and (= |#memory_$Pointer$.base| (store |old(#memory_$Pointer$.base)| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) (select |#memory_$Pointer$.base| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|)))) (or (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (<= (+ (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) 1) |#StackHeapBarrier|)))} assume true; {6197#(and (= |#memory_$Pointer$.base| (store |old(#memory_$Pointer$.base)| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) (select |#memory_$Pointer$.base| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|)))) (or (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (<= (+ (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) 1) |#StackHeapBarrier|)))} is VALID [2020-07-10 15:10:42,667 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {6197#(and (= |#memory_$Pointer$.base| (store |old(#memory_$Pointer$.base)| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) (select |#memory_$Pointer$.base| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|)))) (or (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (<= (+ (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) 1) |#StackHeapBarrier|)))} {6187#(and (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|) (= (select |#memory_$Pointer$.base| dll_insert_slave_~dll.base) (select |old(#memory_$Pointer$.base)| dll_insert_slave_~dll.base)))} #490#return; {6193#(and (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|) (or (<= (+ dll_insert_slave_~dll.base 1) |#StackHeapBarrier|) (= (select |#memory_$Pointer$.base| dll_insert_slave_~dll.base) (select |old(#memory_$Pointer$.base)| dll_insert_slave_~dll.base))))} is VALID [2020-07-10 15:10:42,668 INFO L280 TraceCheckUtils]: 0: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {6187#(and (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|) (= (select |#memory_$Pointer$.base| dll_insert_slave_~dll.base) (select |old(#memory_$Pointer$.base)| dll_insert_slave_~dll.base)))} is VALID [2020-07-10 15:10:42,670 INFO L263 TraceCheckUtils]: 1: Hoare triple {6187#(and (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|) (= (select |#memory_$Pointer$.base| dll_insert_slave_~dll.base) (select |old(#memory_$Pointer$.base)| dll_insert_slave_~dll.base)))} call #t~ret4.base, #t~ret4.offset := alloc_or_die_slave(); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:42,671 INFO L280 TraceCheckUtils]: 2: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {6196#(and (<= (+ alloc_or_die_slave_~ptr~0.base 1) |#StackHeapBarrier|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|))} is VALID [2020-07-10 15:10:42,672 INFO L280 TraceCheckUtils]: 3: Hoare triple {6196#(and (<= (+ alloc_or_die_slave_~ptr~0.base 1) |#StackHeapBarrier|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|))} assume !(~ptr~0.base == 0 && ~ptr~0.offset == 0); {6196#(and (<= (+ alloc_or_die_slave_~ptr~0.base 1) |#StackHeapBarrier|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|))} is VALID [2020-07-10 15:10:42,674 INFO L280 TraceCheckUtils]: 4: Hoare triple {6196#(and (<= (+ alloc_or_die_slave_~ptr~0.base 1) |#StackHeapBarrier|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|))} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {6197#(and (= |#memory_$Pointer$.base| (store |old(#memory_$Pointer$.base)| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) (select |#memory_$Pointer$.base| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|)))) (or (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (<= (+ (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) 1) |#StackHeapBarrier|)))} is VALID [2020-07-10 15:10:42,675 INFO L280 TraceCheckUtils]: 5: Hoare triple {6197#(and (= |#memory_$Pointer$.base| (store |old(#memory_$Pointer$.base)| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) (select |#memory_$Pointer$.base| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|)))) (or (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (<= (+ (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) 1) |#StackHeapBarrier|)))} assume true; {6197#(and (= |#memory_$Pointer$.base| (store |old(#memory_$Pointer$.base)| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) (select |#memory_$Pointer$.base| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|)))) (or (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (<= (+ (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) 1) |#StackHeapBarrier|)))} is VALID [2020-07-10 15:10:42,678 INFO L275 TraceCheckUtils]: 6: Hoare quadruple {6197#(and (= |#memory_$Pointer$.base| (store |old(#memory_$Pointer$.base)| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) (select |#memory_$Pointer$.base| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|)))) (or (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (<= (+ (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) 1) |#StackHeapBarrier|)))} {6187#(and (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|) (= (select |#memory_$Pointer$.base| dll_insert_slave_~dll.base) (select |old(#memory_$Pointer$.base)| dll_insert_slave_~dll.base)))} #490#return; {6193#(and (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|) (or (<= (+ dll_insert_slave_~dll.base 1) |#StackHeapBarrier|) (= (select |#memory_$Pointer$.base| dll_insert_slave_~dll.base) (select |old(#memory_$Pointer$.base)| dll_insert_slave_~dll.base))))} is VALID [2020-07-10 15:10:42,679 INFO L280 TraceCheckUtils]: 7: Hoare triple {6193#(and (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|) (or (<= (+ dll_insert_slave_~dll.base 1) |#StackHeapBarrier|) (= (select |#memory_$Pointer$.base| dll_insert_slave_~dll.base) (select |old(#memory_$Pointer$.base)| dll_insert_slave_~dll.base))))} ~item~0.base, ~item~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~0.base, ~next~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset;call write~$Pointer$(~next~0.base, ~next~0.offset, ~item~0.base, ~item~0.offset, 4); {6194#(or (= (select (select |old(#memory_$Pointer$.base)| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|) dll_insert_slave_~next~0.base) (<= (+ |dll_insert_slave_#in~dll.base| 1) |#StackHeapBarrier|))} is VALID [2020-07-10 15:10:42,680 INFO L280 TraceCheckUtils]: 8: Hoare triple {6194#(or (= (select (select |old(#memory_$Pointer$.base)| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|) dll_insert_slave_~next~0.base) (<= (+ |dll_insert_slave_#in~dll.base| 1) |#StackHeapBarrier|))} assume !(~next~0.base != 0 || ~next~0.offset != 0); {6195#(or (= 0 (select (select |old(#memory_$Pointer$.base)| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|)) (<= (+ |dll_insert_slave_#in~dll.base| 1) |#StackHeapBarrier|))} is VALID [2020-07-10 15:10:42,680 INFO L280 TraceCheckUtils]: 9: Hoare triple {6195#(or (= 0 (select (select |old(#memory_$Pointer$.base)| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|)) (<= (+ |dll_insert_slave_#in~dll.base| 1) |#StackHeapBarrier|))} call write~$Pointer$(~item~0.base, ~item~0.offset, ~dll.base, ~dll.offset, 4); {6195#(or (= 0 (select (select |old(#memory_$Pointer$.base)| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|)) (<= (+ |dll_insert_slave_#in~dll.base| 1) |#StackHeapBarrier|))} is VALID [2020-07-10 15:10:42,681 INFO L280 TraceCheckUtils]: 10: Hoare triple {6195#(or (= 0 (select (select |old(#memory_$Pointer$.base)| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|)) (<= (+ |dll_insert_slave_#in~dll.base| 1) |#StackHeapBarrier|))} assume true; {6195#(or (= 0 (select (select |old(#memory_$Pointer$.base)| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|)) (<= (+ |dll_insert_slave_#in~dll.base| 1) |#StackHeapBarrier|))} is VALID [2020-07-10 15:10:42,682 INFO L275 TraceCheckUtils]: 11: Hoare quadruple {6195#(or (= 0 (select (select |old(#memory_$Pointer$.base)| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|)) (<= (+ |dll_insert_slave_#in~dll.base| 1) |#StackHeapBarrier|))} {6173#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|))} #514#return; {6186#(or (<= (+ |##fun~$Pointer$~TO~VOID_#in~9.base| 1) |#StackHeapBarrier|) (= 0 (select (select |old(#memory_$Pointer$.base)| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|)))} is VALID [2020-07-10 15:10:42,684 INFO L280 TraceCheckUtils]: 0: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {6173#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|))} is VALID [2020-07-10 15:10:42,684 INFO L280 TraceCheckUtils]: 1: Hoare triple {6173#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|))} assume !(#in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset); {6173#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|))} is VALID [2020-07-10 15:10:42,686 INFO L263 TraceCheckUtils]: 2: Hoare triple {6173#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|))} call dll_insert_slave(#~9.base, #~9.offset); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:42,687 INFO L280 TraceCheckUtils]: 3: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {6187#(and (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|) (= (select |#memory_$Pointer$.base| dll_insert_slave_~dll.base) (select |old(#memory_$Pointer$.base)| dll_insert_slave_~dll.base)))} is VALID [2020-07-10 15:10:42,688 INFO L263 TraceCheckUtils]: 4: Hoare triple {6187#(and (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|) (= (select |#memory_$Pointer$.base| dll_insert_slave_~dll.base) (select |old(#memory_$Pointer$.base)| dll_insert_slave_~dll.base)))} call #t~ret4.base, #t~ret4.offset := alloc_or_die_slave(); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:42,689 INFO L280 TraceCheckUtils]: 5: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {6196#(and (<= (+ alloc_or_die_slave_~ptr~0.base 1) |#StackHeapBarrier|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|))} is VALID [2020-07-10 15:10:42,690 INFO L280 TraceCheckUtils]: 6: Hoare triple {6196#(and (<= (+ alloc_or_die_slave_~ptr~0.base 1) |#StackHeapBarrier|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|))} assume !(~ptr~0.base == 0 && ~ptr~0.offset == 0); {6196#(and (<= (+ alloc_or_die_slave_~ptr~0.base 1) |#StackHeapBarrier|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|))} is VALID [2020-07-10 15:10:42,691 INFO L280 TraceCheckUtils]: 7: Hoare triple {6196#(and (<= (+ alloc_or_die_slave_~ptr~0.base 1) |#StackHeapBarrier|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|))} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {6197#(and (= |#memory_$Pointer$.base| (store |old(#memory_$Pointer$.base)| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) (select |#memory_$Pointer$.base| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|)))) (or (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (<= (+ (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) 1) |#StackHeapBarrier|)))} is VALID [2020-07-10 15:10:42,692 INFO L280 TraceCheckUtils]: 8: Hoare triple {6197#(and (= |#memory_$Pointer$.base| (store |old(#memory_$Pointer$.base)| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) (select |#memory_$Pointer$.base| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|)))) (or (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (<= (+ (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) 1) |#StackHeapBarrier|)))} assume true; {6197#(and (= |#memory_$Pointer$.base| (store |old(#memory_$Pointer$.base)| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) (select |#memory_$Pointer$.base| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|)))) (or (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (<= (+ (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) 1) |#StackHeapBarrier|)))} is VALID [2020-07-10 15:10:42,695 INFO L275 TraceCheckUtils]: 9: Hoare quadruple {6197#(and (= |#memory_$Pointer$.base| (store |old(#memory_$Pointer$.base)| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) (select |#memory_$Pointer$.base| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|)))) (or (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (<= (+ (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) 1) |#StackHeapBarrier|)))} {6187#(and (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|) (= (select |#memory_$Pointer$.base| dll_insert_slave_~dll.base) (select |old(#memory_$Pointer$.base)| dll_insert_slave_~dll.base)))} #490#return; {6193#(and (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|) (or (<= (+ dll_insert_slave_~dll.base 1) |#StackHeapBarrier|) (= (select |#memory_$Pointer$.base| dll_insert_slave_~dll.base) (select |old(#memory_$Pointer$.base)| dll_insert_slave_~dll.base))))} is VALID [2020-07-10 15:10:42,696 INFO L280 TraceCheckUtils]: 10: Hoare triple {6193#(and (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|) (or (<= (+ dll_insert_slave_~dll.base 1) |#StackHeapBarrier|) (= (select |#memory_$Pointer$.base| dll_insert_slave_~dll.base) (select |old(#memory_$Pointer$.base)| dll_insert_slave_~dll.base))))} ~item~0.base, ~item~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~0.base, ~next~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset;call write~$Pointer$(~next~0.base, ~next~0.offset, ~item~0.base, ~item~0.offset, 4); {6194#(or (= (select (select |old(#memory_$Pointer$.base)| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|) dll_insert_slave_~next~0.base) (<= (+ |dll_insert_slave_#in~dll.base| 1) |#StackHeapBarrier|))} is VALID [2020-07-10 15:10:42,697 INFO L280 TraceCheckUtils]: 11: Hoare triple {6194#(or (= (select (select |old(#memory_$Pointer$.base)| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|) dll_insert_slave_~next~0.base) (<= (+ |dll_insert_slave_#in~dll.base| 1) |#StackHeapBarrier|))} assume !(~next~0.base != 0 || ~next~0.offset != 0); {6195#(or (= 0 (select (select |old(#memory_$Pointer$.base)| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|)) (<= (+ |dll_insert_slave_#in~dll.base| 1) |#StackHeapBarrier|))} is VALID [2020-07-10 15:10:42,697 INFO L280 TraceCheckUtils]: 12: Hoare triple {6195#(or (= 0 (select (select |old(#memory_$Pointer$.base)| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|)) (<= (+ |dll_insert_slave_#in~dll.base| 1) |#StackHeapBarrier|))} call write~$Pointer$(~item~0.base, ~item~0.offset, ~dll.base, ~dll.offset, 4); {6195#(or (= 0 (select (select |old(#memory_$Pointer$.base)| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|)) (<= (+ |dll_insert_slave_#in~dll.base| 1) |#StackHeapBarrier|))} is VALID [2020-07-10 15:10:42,698 INFO L280 TraceCheckUtils]: 13: Hoare triple {6195#(or (= 0 (select (select |old(#memory_$Pointer$.base)| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|)) (<= (+ |dll_insert_slave_#in~dll.base| 1) |#StackHeapBarrier|))} assume true; {6195#(or (= 0 (select (select |old(#memory_$Pointer$.base)| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|)) (<= (+ |dll_insert_slave_#in~dll.base| 1) |#StackHeapBarrier|))} is VALID [2020-07-10 15:10:42,699 INFO L275 TraceCheckUtils]: 14: Hoare quadruple {6195#(or (= 0 (select (select |old(#memory_$Pointer$.base)| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|)) (<= (+ |dll_insert_slave_#in~dll.base| 1) |#StackHeapBarrier|))} {6173#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|))} #514#return; {6186#(or (<= (+ |##fun~$Pointer$~TO~VOID_#in~9.base| 1) |#StackHeapBarrier|) (= 0 (select (select |old(#memory_$Pointer$.base)| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|)))} is VALID [2020-07-10 15:10:42,700 INFO L280 TraceCheckUtils]: 15: Hoare triple {6186#(or (<= (+ |##fun~$Pointer$~TO~VOID_#in~9.base| 1) |#StackHeapBarrier|) (= 0 (select (select |old(#memory_$Pointer$.base)| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|)))} assume true; {6186#(or (<= (+ |##fun~$Pointer$~TO~VOID_#in~9.base| 1) |#StackHeapBarrier|) (= 0 (select (select |old(#memory_$Pointer$.base)| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|)))} is VALID [2020-07-10 15:10:42,701 INFO L275 TraceCheckUtils]: 16: Hoare quadruple {6186#(or (<= (+ |##fun~$Pointer$~TO~VOID_#in~9.base| 1) |#StackHeapBarrier|) (= 0 (select (select |old(#memory_$Pointer$.base)| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|)))} {6130#(and (<= (+ |#StackHeapBarrier| 1) |dll_create_generic_~#dll~0.base|) (not (= 0 (select (select |#memory_$Pointer$.base| |dll_create_generic_~#dll~0.base|) |dll_create_generic_~#dll~0.offset|))))} #536#return; {5550#false} is VALID [2020-07-10 15:10:42,704 INFO L280 TraceCheckUtils]: 0: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~insert_fnc.base, ~insert_fnc.offset := #in~insert_fnc.base, #in~insert_fnc.offset;call ~#dll~0.base, ~#dll~0.offset := #Ultimate.allocOnStack(4);call write~init~$Pointer$(0, 0, ~#dll~0.base, ~#dll~0.offset, 4); {6112#(<= (+ |#StackHeapBarrier| 1) |dll_create_generic_~#dll~0.base|)} is VALID [2020-07-10 15:10:42,706 INFO L263 TraceCheckUtils]: 1: Hoare triple {6112#(<= (+ |#StackHeapBarrier| 1) |dll_create_generic_~#dll~0.base|)} call ##fun~$Pointer$~TO~VOID(~#dll~0.base, ~#dll~0.offset, ~insert_fnc.base, ~insert_fnc.offset); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:42,706 INFO L280 TraceCheckUtils]: 2: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {6148#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|))} is VALID [2020-07-10 15:10:42,707 INFO L280 TraceCheckUtils]: 3: Hoare triple {6148#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|))} assume !(#in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset); {6148#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|))} is VALID [2020-07-10 15:10:42,708 INFO L263 TraceCheckUtils]: 4: Hoare triple {6148#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|))} call dll_insert_slave(#~9.base, #~9.offset); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:42,709 INFO L280 TraceCheckUtils]: 5: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {6162#(and (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|))} is VALID [2020-07-10 15:10:42,710 INFO L263 TraceCheckUtils]: 6: Hoare triple {6162#(and (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|))} call #t~ret4.base, #t~ret4.offset := alloc_or_die_slave(); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:42,711 INFO L280 TraceCheckUtils]: 7: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {6171#(or (<= (+ alloc_or_die_slave_~ptr~0.base 1) 0) (<= 1 alloc_or_die_slave_~ptr~0.base))} is VALID [2020-07-10 15:10:42,712 INFO L280 TraceCheckUtils]: 8: Hoare triple {6171#(or (<= (+ alloc_or_die_slave_~ptr~0.base 1) 0) (<= 1 alloc_or_die_slave_~ptr~0.base))} assume !(~ptr~0.base == 0 && ~ptr~0.offset == 0); {6171#(or (<= (+ alloc_or_die_slave_~ptr~0.base 1) 0) (<= 1 alloc_or_die_slave_~ptr~0.base))} is VALID [2020-07-10 15:10:42,713 INFO L280 TraceCheckUtils]: 9: Hoare triple {6171#(or (<= (+ alloc_or_die_slave_~ptr~0.base 1) 0) (<= 1 alloc_or_die_slave_~ptr~0.base))} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {6172#(or (<= (+ |alloc_or_die_slave_#res.base| 1) 0) (<= 1 |alloc_or_die_slave_#res.base|))} is VALID [2020-07-10 15:10:42,713 INFO L280 TraceCheckUtils]: 10: Hoare triple {6172#(or (<= (+ |alloc_or_die_slave_#res.base| 1) 0) (<= 1 |alloc_or_die_slave_#res.base|))} assume true; {6172#(or (<= (+ |alloc_or_die_slave_#res.base| 1) 0) (<= 1 |alloc_or_die_slave_#res.base|))} is VALID [2020-07-10 15:10:42,715 INFO L275 TraceCheckUtils]: 11: Hoare quadruple {6172#(or (<= (+ |alloc_or_die_slave_#res.base| 1) 0) (<= 1 |alloc_or_die_slave_#res.base|))} {6162#(and (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|))} #490#return; {6168#(and (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|) (not (= 0 |dll_insert_slave_#t~ret4.base|)))} is VALID [2020-07-10 15:10:42,716 INFO L280 TraceCheckUtils]: 12: Hoare triple {6168#(and (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|) (not (= 0 |dll_insert_slave_#t~ret4.base|)))} ~item~0.base, ~item~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~0.base, ~next~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset;call write~$Pointer$(~next~0.base, ~next~0.offset, ~item~0.base, ~item~0.offset, 4); {6169#(and (not (= 0 dll_insert_slave_~item~0.base)) (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|))} is VALID [2020-07-10 15:10:42,717 INFO L280 TraceCheckUtils]: 13: Hoare triple {6169#(and (not (= 0 dll_insert_slave_~item~0.base)) (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|))} assume !(~next~0.base != 0 || ~next~0.offset != 0); {6169#(and (not (= 0 dll_insert_slave_~item~0.base)) (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|))} is VALID [2020-07-10 15:10:42,718 INFO L280 TraceCheckUtils]: 14: Hoare triple {6169#(and (not (= 0 dll_insert_slave_~item~0.base)) (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|))} call write~$Pointer$(~item~0.base, ~item~0.offset, ~dll.base, ~dll.offset, 4); {6170#(not (= 0 (select (select |#memory_$Pointer$.base| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|)))} is VALID [2020-07-10 15:10:42,718 INFO L280 TraceCheckUtils]: 15: Hoare triple {6170#(not (= 0 (select (select |#memory_$Pointer$.base| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|)))} assume true; {6170#(not (= 0 (select (select |#memory_$Pointer$.base| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|)))} is VALID [2020-07-10 15:10:42,720 INFO L275 TraceCheckUtils]: 16: Hoare quadruple {6170#(not (= 0 (select (select |#memory_$Pointer$.base| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|)))} {6148#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|))} #514#return; {6161#(not (= 0 (select (select |#memory_$Pointer$.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|)))} is VALID [2020-07-10 15:10:42,720 INFO L280 TraceCheckUtils]: 17: Hoare triple {6161#(not (= 0 (select (select |#memory_$Pointer$.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|)))} assume true; {6161#(not (= 0 (select (select |#memory_$Pointer$.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|)))} is VALID [2020-07-10 15:10:42,722 INFO L275 TraceCheckUtils]: 18: Hoare quadruple {6161#(not (= 0 (select (select |#memory_$Pointer$.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|)))} {6112#(<= (+ |#StackHeapBarrier| 1) |dll_create_generic_~#dll~0.base|)} #534#return; {6130#(and (<= (+ |#StackHeapBarrier| 1) |dll_create_generic_~#dll~0.base|) (not (= 0 (select (select |#memory_$Pointer$.base| |dll_create_generic_~#dll~0.base|) |dll_create_generic_~#dll~0.offset|))))} is VALID [2020-07-10 15:10:42,723 INFO L263 TraceCheckUtils]: 19: Hoare triple {6130#(and (<= (+ |#StackHeapBarrier| 1) |dll_create_generic_~#dll~0.base|) (not (= 0 (select (select |#memory_$Pointer$.base| |dll_create_generic_~#dll~0.base|) |dll_create_generic_~#dll~0.offset|))))} call ##fun~$Pointer$~TO~VOID(~#dll~0.base, ~#dll~0.offset, ~insert_fnc.base, ~insert_fnc.offset); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:42,724 INFO L280 TraceCheckUtils]: 20: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {6173#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|))} is VALID [2020-07-10 15:10:42,725 INFO L280 TraceCheckUtils]: 21: Hoare triple {6173#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|))} assume !(#in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset); {6173#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|))} is VALID [2020-07-10 15:10:42,727 INFO L263 TraceCheckUtils]: 22: Hoare triple {6173#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|))} call dll_insert_slave(#~9.base, #~9.offset); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:42,727 INFO L280 TraceCheckUtils]: 23: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {6187#(and (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|) (= (select |#memory_$Pointer$.base| dll_insert_slave_~dll.base) (select |old(#memory_$Pointer$.base)| dll_insert_slave_~dll.base)))} is VALID [2020-07-10 15:10:42,729 INFO L263 TraceCheckUtils]: 24: Hoare triple {6187#(and (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|) (= (select |#memory_$Pointer$.base| dll_insert_slave_~dll.base) (select |old(#memory_$Pointer$.base)| dll_insert_slave_~dll.base)))} call #t~ret4.base, #t~ret4.offset := alloc_or_die_slave(); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:42,730 INFO L280 TraceCheckUtils]: 25: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {6196#(and (<= (+ alloc_or_die_slave_~ptr~0.base 1) |#StackHeapBarrier|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|))} is VALID [2020-07-10 15:10:42,731 INFO L280 TraceCheckUtils]: 26: Hoare triple {6196#(and (<= (+ alloc_or_die_slave_~ptr~0.base 1) |#StackHeapBarrier|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|))} assume !(~ptr~0.base == 0 && ~ptr~0.offset == 0); {6196#(and (<= (+ alloc_or_die_slave_~ptr~0.base 1) |#StackHeapBarrier|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|))} is VALID [2020-07-10 15:10:42,733 INFO L280 TraceCheckUtils]: 27: Hoare triple {6196#(and (<= (+ alloc_or_die_slave_~ptr~0.base 1) |#StackHeapBarrier|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|))} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {6197#(and (= |#memory_$Pointer$.base| (store |old(#memory_$Pointer$.base)| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) (select |#memory_$Pointer$.base| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|)))) (or (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (<= (+ (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) 1) |#StackHeapBarrier|)))} is VALID [2020-07-10 15:10:42,734 INFO L280 TraceCheckUtils]: 28: Hoare triple {6197#(and (= |#memory_$Pointer$.base| (store |old(#memory_$Pointer$.base)| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) (select |#memory_$Pointer$.base| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|)))) (or (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (<= (+ (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) 1) |#StackHeapBarrier|)))} assume true; {6197#(and (= |#memory_$Pointer$.base| (store |old(#memory_$Pointer$.base)| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) (select |#memory_$Pointer$.base| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|)))) (or (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (<= (+ (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) 1) |#StackHeapBarrier|)))} is VALID [2020-07-10 15:10:42,736 INFO L275 TraceCheckUtils]: 29: Hoare quadruple {6197#(and (= |#memory_$Pointer$.base| (store |old(#memory_$Pointer$.base)| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) (select |#memory_$Pointer$.base| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|)))) (or (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (<= (+ (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) 1) |#StackHeapBarrier|)))} {6187#(and (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|) (= (select |#memory_$Pointer$.base| dll_insert_slave_~dll.base) (select |old(#memory_$Pointer$.base)| dll_insert_slave_~dll.base)))} #490#return; {6193#(and (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|) (or (<= (+ dll_insert_slave_~dll.base 1) |#StackHeapBarrier|) (= (select |#memory_$Pointer$.base| dll_insert_slave_~dll.base) (select |old(#memory_$Pointer$.base)| dll_insert_slave_~dll.base))))} is VALID [2020-07-10 15:10:42,737 INFO L280 TraceCheckUtils]: 30: Hoare triple {6193#(and (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|) (or (<= (+ dll_insert_slave_~dll.base 1) |#StackHeapBarrier|) (= (select |#memory_$Pointer$.base| dll_insert_slave_~dll.base) (select |old(#memory_$Pointer$.base)| dll_insert_slave_~dll.base))))} ~item~0.base, ~item~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~0.base, ~next~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset;call write~$Pointer$(~next~0.base, ~next~0.offset, ~item~0.base, ~item~0.offset, 4); {6194#(or (= (select (select |old(#memory_$Pointer$.base)| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|) dll_insert_slave_~next~0.base) (<= (+ |dll_insert_slave_#in~dll.base| 1) |#StackHeapBarrier|))} is VALID [2020-07-10 15:10:42,738 INFO L280 TraceCheckUtils]: 31: Hoare triple {6194#(or (= (select (select |old(#memory_$Pointer$.base)| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|) dll_insert_slave_~next~0.base) (<= (+ |dll_insert_slave_#in~dll.base| 1) |#StackHeapBarrier|))} assume !(~next~0.base != 0 || ~next~0.offset != 0); {6195#(or (= 0 (select (select |old(#memory_$Pointer$.base)| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|)) (<= (+ |dll_insert_slave_#in~dll.base| 1) |#StackHeapBarrier|))} is VALID [2020-07-10 15:10:42,739 INFO L280 TraceCheckUtils]: 32: Hoare triple {6195#(or (= 0 (select (select |old(#memory_$Pointer$.base)| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|)) (<= (+ |dll_insert_slave_#in~dll.base| 1) |#StackHeapBarrier|))} call write~$Pointer$(~item~0.base, ~item~0.offset, ~dll.base, ~dll.offset, 4); {6195#(or (= 0 (select (select |old(#memory_$Pointer$.base)| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|)) (<= (+ |dll_insert_slave_#in~dll.base| 1) |#StackHeapBarrier|))} is VALID [2020-07-10 15:10:42,739 INFO L280 TraceCheckUtils]: 33: Hoare triple {6195#(or (= 0 (select (select |old(#memory_$Pointer$.base)| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|)) (<= (+ |dll_insert_slave_#in~dll.base| 1) |#StackHeapBarrier|))} assume true; {6195#(or (= 0 (select (select |old(#memory_$Pointer$.base)| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|)) (<= (+ |dll_insert_slave_#in~dll.base| 1) |#StackHeapBarrier|))} is VALID [2020-07-10 15:10:42,741 INFO L275 TraceCheckUtils]: 34: Hoare quadruple {6195#(or (= 0 (select (select |old(#memory_$Pointer$.base)| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|)) (<= (+ |dll_insert_slave_#in~dll.base| 1) |#StackHeapBarrier|))} {6173#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|))} #514#return; {6186#(or (<= (+ |##fun~$Pointer$~TO~VOID_#in~9.base| 1) |#StackHeapBarrier|) (= 0 (select (select |old(#memory_$Pointer$.base)| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|)))} is VALID [2020-07-10 15:10:42,741 INFO L280 TraceCheckUtils]: 35: Hoare triple {6186#(or (<= (+ |##fun~$Pointer$~TO~VOID_#in~9.base| 1) |#StackHeapBarrier|) (= 0 (select (select |old(#memory_$Pointer$.base)| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|)))} assume true; {6186#(or (<= (+ |##fun~$Pointer$~TO~VOID_#in~9.base| 1) |#StackHeapBarrier|) (= 0 (select (select |old(#memory_$Pointer$.base)| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|)))} is VALID [2020-07-10 15:10:42,743 INFO L275 TraceCheckUtils]: 36: Hoare quadruple {6186#(or (<= (+ |##fun~$Pointer$~TO~VOID_#in~9.base| 1) |#StackHeapBarrier|) (= 0 (select (select |old(#memory_$Pointer$.base)| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|)))} {6130#(and (<= (+ |#StackHeapBarrier| 1) |dll_create_generic_~#dll~0.base|) (not (= 0 (select (select |#memory_$Pointer$.base| |dll_create_generic_~#dll~0.base|) |dll_create_generic_~#dll~0.offset|))))} #536#return; {5550#false} is VALID [2020-07-10 15:10:42,743 INFO L280 TraceCheckUtils]: 37: Hoare triple {5550#false} assume -2147483648 <= #t~nondet8 && #t~nondet8 <= 2147483647; {5550#false} is VALID [2020-07-10 15:10:42,744 INFO L280 TraceCheckUtils]: 38: Hoare triple {5550#false} assume !(0 != #t~nondet8);havoc #t~nondet8; {5550#false} is VALID [2020-07-10 15:10:42,744 INFO L280 TraceCheckUtils]: 39: Hoare triple {5550#false} call #t~mem10.base, #t~mem10.offset := read~$Pointer$(~#dll~0.base, ~#dll~0.offset, 4);#res.base, #res.offset := #t~mem10.base, #t~mem10.offset;havoc #t~mem10.base, #t~mem10.offset;call ULTIMATE.dealloc(~#dll~0.base, ~#dll~0.offset);havoc ~#dll~0.base, ~#dll~0.offset; {5550#false} is VALID [2020-07-10 15:10:42,744 INFO L280 TraceCheckUtils]: 40: Hoare triple {5550#false} assume true; {5550#false} is VALID [2020-07-10 15:10:42,744 INFO L275 TraceCheckUtils]: 41: Hoare quadruple {5550#false} {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #540#return; {5550#false} is VALID [2020-07-10 15:10:42,751 INFO L263 TraceCheckUtils]: 0: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~ret11.base, #t~ret11.offset := dll_create_generic(#funAddr~dll_insert_slave.base, #funAddr~dll_insert_slave.offset); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:42,752 INFO L280 TraceCheckUtils]: 1: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~insert_fnc.base, ~insert_fnc.offset := #in~insert_fnc.base, #in~insert_fnc.offset;call ~#dll~0.base, ~#dll~0.offset := #Ultimate.allocOnStack(4);call write~init~$Pointer$(0, 0, ~#dll~0.base, ~#dll~0.offset, 4); {6112#(<= (+ |#StackHeapBarrier| 1) |dll_create_generic_~#dll~0.base|)} is VALID [2020-07-10 15:10:42,754 INFO L263 TraceCheckUtils]: 2: Hoare triple {6112#(<= (+ |#StackHeapBarrier| 1) |dll_create_generic_~#dll~0.base|)} call ##fun~$Pointer$~TO~VOID(~#dll~0.base, ~#dll~0.offset, ~insert_fnc.base, ~insert_fnc.offset); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:42,754 INFO L280 TraceCheckUtils]: 3: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {6148#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|))} is VALID [2020-07-10 15:10:42,755 INFO L280 TraceCheckUtils]: 4: Hoare triple {6148#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|))} assume !(#in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset); {6148#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|))} is VALID [2020-07-10 15:10:42,756 INFO L263 TraceCheckUtils]: 5: Hoare triple {6148#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|))} call dll_insert_slave(#~9.base, #~9.offset); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:42,757 INFO L280 TraceCheckUtils]: 6: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {6162#(and (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|))} is VALID [2020-07-10 15:10:42,758 INFO L263 TraceCheckUtils]: 7: Hoare triple {6162#(and (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|))} call #t~ret4.base, #t~ret4.offset := alloc_or_die_slave(); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:42,760 INFO L280 TraceCheckUtils]: 8: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {6171#(or (<= (+ alloc_or_die_slave_~ptr~0.base 1) 0) (<= 1 alloc_or_die_slave_~ptr~0.base))} is VALID [2020-07-10 15:10:42,760 INFO L280 TraceCheckUtils]: 9: Hoare triple {6171#(or (<= (+ alloc_or_die_slave_~ptr~0.base 1) 0) (<= 1 alloc_or_die_slave_~ptr~0.base))} assume !(~ptr~0.base == 0 && ~ptr~0.offset == 0); {6171#(or (<= (+ alloc_or_die_slave_~ptr~0.base 1) 0) (<= 1 alloc_or_die_slave_~ptr~0.base))} is VALID [2020-07-10 15:10:42,761 INFO L280 TraceCheckUtils]: 10: Hoare triple {6171#(or (<= (+ alloc_or_die_slave_~ptr~0.base 1) 0) (<= 1 alloc_or_die_slave_~ptr~0.base))} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {6172#(or (<= (+ |alloc_or_die_slave_#res.base| 1) 0) (<= 1 |alloc_or_die_slave_#res.base|))} is VALID [2020-07-10 15:10:42,762 INFO L280 TraceCheckUtils]: 11: Hoare triple {6172#(or (<= (+ |alloc_or_die_slave_#res.base| 1) 0) (<= 1 |alloc_or_die_slave_#res.base|))} assume true; {6172#(or (<= (+ |alloc_or_die_slave_#res.base| 1) 0) (<= 1 |alloc_or_die_slave_#res.base|))} is VALID [2020-07-10 15:10:42,763 INFO L275 TraceCheckUtils]: 12: Hoare quadruple {6172#(or (<= (+ |alloc_or_die_slave_#res.base| 1) 0) (<= 1 |alloc_or_die_slave_#res.base|))} {6162#(and (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|))} #490#return; {6168#(and (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|) (not (= 0 |dll_insert_slave_#t~ret4.base|)))} is VALID [2020-07-10 15:10:42,764 INFO L280 TraceCheckUtils]: 13: Hoare triple {6168#(and (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|) (not (= 0 |dll_insert_slave_#t~ret4.base|)))} ~item~0.base, ~item~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~0.base, ~next~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset;call write~$Pointer$(~next~0.base, ~next~0.offset, ~item~0.base, ~item~0.offset, 4); {6169#(and (not (= 0 dll_insert_slave_~item~0.base)) (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|))} is VALID [2020-07-10 15:10:42,765 INFO L280 TraceCheckUtils]: 14: Hoare triple {6169#(and (not (= 0 dll_insert_slave_~item~0.base)) (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|))} assume !(~next~0.base != 0 || ~next~0.offset != 0); {6169#(and (not (= 0 dll_insert_slave_~item~0.base)) (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|))} is VALID [2020-07-10 15:10:42,766 INFO L280 TraceCheckUtils]: 15: Hoare triple {6169#(and (not (= 0 dll_insert_slave_~item~0.base)) (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|))} call write~$Pointer$(~item~0.base, ~item~0.offset, ~dll.base, ~dll.offset, 4); {6170#(not (= 0 (select (select |#memory_$Pointer$.base| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|)))} is VALID [2020-07-10 15:10:42,767 INFO L280 TraceCheckUtils]: 16: Hoare triple {6170#(not (= 0 (select (select |#memory_$Pointer$.base| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|)))} assume true; {6170#(not (= 0 (select (select |#memory_$Pointer$.base| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|)))} is VALID [2020-07-10 15:10:42,768 INFO L275 TraceCheckUtils]: 17: Hoare quadruple {6170#(not (= 0 (select (select |#memory_$Pointer$.base| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|)))} {6148#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|))} #514#return; {6161#(not (= 0 (select (select |#memory_$Pointer$.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|)))} is VALID [2020-07-10 15:10:42,768 INFO L280 TraceCheckUtils]: 18: Hoare triple {6161#(not (= 0 (select (select |#memory_$Pointer$.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|)))} assume true; {6161#(not (= 0 (select (select |#memory_$Pointer$.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|)))} is VALID [2020-07-10 15:10:42,770 INFO L275 TraceCheckUtils]: 19: Hoare quadruple {6161#(not (= 0 (select (select |#memory_$Pointer$.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|)))} {6112#(<= (+ |#StackHeapBarrier| 1) |dll_create_generic_~#dll~0.base|)} #534#return; {6130#(and (<= (+ |#StackHeapBarrier| 1) |dll_create_generic_~#dll~0.base|) (not (= 0 (select (select |#memory_$Pointer$.base| |dll_create_generic_~#dll~0.base|) |dll_create_generic_~#dll~0.offset|))))} is VALID [2020-07-10 15:10:42,771 INFO L263 TraceCheckUtils]: 20: Hoare triple {6130#(and (<= (+ |#StackHeapBarrier| 1) |dll_create_generic_~#dll~0.base|) (not (= 0 (select (select |#memory_$Pointer$.base| |dll_create_generic_~#dll~0.base|) |dll_create_generic_~#dll~0.offset|))))} call ##fun~$Pointer$~TO~VOID(~#dll~0.base, ~#dll~0.offset, ~insert_fnc.base, ~insert_fnc.offset); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:42,772 INFO L280 TraceCheckUtils]: 21: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {6173#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|))} is VALID [2020-07-10 15:10:42,773 INFO L280 TraceCheckUtils]: 22: Hoare triple {6173#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|))} assume !(#in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset); {6173#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|))} is VALID [2020-07-10 15:10:42,774 INFO L263 TraceCheckUtils]: 23: Hoare triple {6173#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|))} call dll_insert_slave(#~9.base, #~9.offset); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:42,775 INFO L280 TraceCheckUtils]: 24: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {6187#(and (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|) (= (select |#memory_$Pointer$.base| dll_insert_slave_~dll.base) (select |old(#memory_$Pointer$.base)| dll_insert_slave_~dll.base)))} is VALID [2020-07-10 15:10:42,776 INFO L263 TraceCheckUtils]: 25: Hoare triple {6187#(and (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|) (= (select |#memory_$Pointer$.base| dll_insert_slave_~dll.base) (select |old(#memory_$Pointer$.base)| dll_insert_slave_~dll.base)))} call #t~ret4.base, #t~ret4.offset := alloc_or_die_slave(); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:42,777 INFO L280 TraceCheckUtils]: 26: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {6196#(and (<= (+ alloc_or_die_slave_~ptr~0.base 1) |#StackHeapBarrier|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|))} is VALID [2020-07-10 15:10:42,778 INFO L280 TraceCheckUtils]: 27: Hoare triple {6196#(and (<= (+ alloc_or_die_slave_~ptr~0.base 1) |#StackHeapBarrier|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|))} assume !(~ptr~0.base == 0 && ~ptr~0.offset == 0); {6196#(and (<= (+ alloc_or_die_slave_~ptr~0.base 1) |#StackHeapBarrier|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|))} is VALID [2020-07-10 15:10:42,780 INFO L280 TraceCheckUtils]: 28: Hoare triple {6196#(and (<= (+ alloc_or_die_slave_~ptr~0.base 1) |#StackHeapBarrier|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|))} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {6197#(and (= |#memory_$Pointer$.base| (store |old(#memory_$Pointer$.base)| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) (select |#memory_$Pointer$.base| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|)))) (or (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (<= (+ (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) 1) |#StackHeapBarrier|)))} is VALID [2020-07-10 15:10:42,781 INFO L280 TraceCheckUtils]: 29: Hoare triple {6197#(and (= |#memory_$Pointer$.base| (store |old(#memory_$Pointer$.base)| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) (select |#memory_$Pointer$.base| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|)))) (or (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (<= (+ (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) 1) |#StackHeapBarrier|)))} assume true; {6197#(and (= |#memory_$Pointer$.base| (store |old(#memory_$Pointer$.base)| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) (select |#memory_$Pointer$.base| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|)))) (or (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (<= (+ (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) 1) |#StackHeapBarrier|)))} is VALID [2020-07-10 15:10:42,783 INFO L275 TraceCheckUtils]: 30: Hoare quadruple {6197#(and (= |#memory_$Pointer$.base| (store |old(#memory_$Pointer$.base)| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) (select |#memory_$Pointer$.base| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|)))) (or (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (<= (+ (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) 1) |#StackHeapBarrier|)))} {6187#(and (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|) (= (select |#memory_$Pointer$.base| dll_insert_slave_~dll.base) (select |old(#memory_$Pointer$.base)| dll_insert_slave_~dll.base)))} #490#return; {6193#(and (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|) (or (<= (+ dll_insert_slave_~dll.base 1) |#StackHeapBarrier|) (= (select |#memory_$Pointer$.base| dll_insert_slave_~dll.base) (select |old(#memory_$Pointer$.base)| dll_insert_slave_~dll.base))))} is VALID [2020-07-10 15:10:42,785 INFO L280 TraceCheckUtils]: 31: Hoare triple {6193#(and (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|) (or (<= (+ dll_insert_slave_~dll.base 1) |#StackHeapBarrier|) (= (select |#memory_$Pointer$.base| dll_insert_slave_~dll.base) (select |old(#memory_$Pointer$.base)| dll_insert_slave_~dll.base))))} ~item~0.base, ~item~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~0.base, ~next~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset;call write~$Pointer$(~next~0.base, ~next~0.offset, ~item~0.base, ~item~0.offset, 4); {6194#(or (= (select (select |old(#memory_$Pointer$.base)| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|) dll_insert_slave_~next~0.base) (<= (+ |dll_insert_slave_#in~dll.base| 1) |#StackHeapBarrier|))} is VALID [2020-07-10 15:10:42,785 INFO L280 TraceCheckUtils]: 32: Hoare triple {6194#(or (= (select (select |old(#memory_$Pointer$.base)| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|) dll_insert_slave_~next~0.base) (<= (+ |dll_insert_slave_#in~dll.base| 1) |#StackHeapBarrier|))} assume !(~next~0.base != 0 || ~next~0.offset != 0); {6195#(or (= 0 (select (select |old(#memory_$Pointer$.base)| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|)) (<= (+ |dll_insert_slave_#in~dll.base| 1) |#StackHeapBarrier|))} is VALID [2020-07-10 15:10:42,786 INFO L280 TraceCheckUtils]: 33: Hoare triple {6195#(or (= 0 (select (select |old(#memory_$Pointer$.base)| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|)) (<= (+ |dll_insert_slave_#in~dll.base| 1) |#StackHeapBarrier|))} call write~$Pointer$(~item~0.base, ~item~0.offset, ~dll.base, ~dll.offset, 4); {6195#(or (= 0 (select (select |old(#memory_$Pointer$.base)| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|)) (<= (+ |dll_insert_slave_#in~dll.base| 1) |#StackHeapBarrier|))} is VALID [2020-07-10 15:10:42,787 INFO L280 TraceCheckUtils]: 34: Hoare triple {6195#(or (= 0 (select (select |old(#memory_$Pointer$.base)| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|)) (<= (+ |dll_insert_slave_#in~dll.base| 1) |#StackHeapBarrier|))} assume true; {6195#(or (= 0 (select (select |old(#memory_$Pointer$.base)| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|)) (<= (+ |dll_insert_slave_#in~dll.base| 1) |#StackHeapBarrier|))} is VALID [2020-07-10 15:10:42,788 INFO L275 TraceCheckUtils]: 35: Hoare quadruple {6195#(or (= 0 (select (select |old(#memory_$Pointer$.base)| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|)) (<= (+ |dll_insert_slave_#in~dll.base| 1) |#StackHeapBarrier|))} {6173#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|))} #514#return; {6186#(or (<= (+ |##fun~$Pointer$~TO~VOID_#in~9.base| 1) |#StackHeapBarrier|) (= 0 (select (select |old(#memory_$Pointer$.base)| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|)))} is VALID [2020-07-10 15:10:42,789 INFO L280 TraceCheckUtils]: 36: Hoare triple {6186#(or (<= (+ |##fun~$Pointer$~TO~VOID_#in~9.base| 1) |#StackHeapBarrier|) (= 0 (select (select |old(#memory_$Pointer$.base)| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|)))} assume true; {6186#(or (<= (+ |##fun~$Pointer$~TO~VOID_#in~9.base| 1) |#StackHeapBarrier|) (= 0 (select (select |old(#memory_$Pointer$.base)| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|)))} is VALID [2020-07-10 15:10:42,790 INFO L275 TraceCheckUtils]: 37: Hoare quadruple {6186#(or (<= (+ |##fun~$Pointer$~TO~VOID_#in~9.base| 1) |#StackHeapBarrier|) (= 0 (select (select |old(#memory_$Pointer$.base)| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|)))} {6130#(and (<= (+ |#StackHeapBarrier| 1) |dll_create_generic_~#dll~0.base|) (not (= 0 (select (select |#memory_$Pointer$.base| |dll_create_generic_~#dll~0.base|) |dll_create_generic_~#dll~0.offset|))))} #536#return; {5550#false} is VALID [2020-07-10 15:10:42,790 INFO L280 TraceCheckUtils]: 38: Hoare triple {5550#false} assume -2147483648 <= #t~nondet8 && #t~nondet8 <= 2147483647; {5550#false} is VALID [2020-07-10 15:10:42,791 INFO L280 TraceCheckUtils]: 39: Hoare triple {5550#false} assume !(0 != #t~nondet8);havoc #t~nondet8; {5550#false} is VALID [2020-07-10 15:10:42,791 INFO L280 TraceCheckUtils]: 40: Hoare triple {5550#false} call #t~mem10.base, #t~mem10.offset := read~$Pointer$(~#dll~0.base, ~#dll~0.offset, 4);#res.base, #res.offset := #t~mem10.base, #t~mem10.offset;havoc #t~mem10.base, #t~mem10.offset;call ULTIMATE.dealloc(~#dll~0.base, ~#dll~0.offset);havoc ~#dll~0.base, ~#dll~0.offset; {5550#false} is VALID [2020-07-10 15:10:42,791 INFO L280 TraceCheckUtils]: 41: Hoare triple {5550#false} assume true; {5550#false} is VALID [2020-07-10 15:10:42,791 INFO L275 TraceCheckUtils]: 42: Hoare quadruple {5550#false} {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #540#return; {5550#false} is VALID [2020-07-10 15:10:42,792 INFO L280 TraceCheckUtils]: 43: Hoare triple {5550#false} #res.base, #res.offset := #t~ret11.base, #t~ret11.offset;havoc #t~ret11.base, #t~ret11.offset; {5550#false} is VALID [2020-07-10 15:10:42,792 INFO L280 TraceCheckUtils]: 44: Hoare triple {5550#false} assume true; {5550#false} is VALID [2020-07-10 15:10:42,792 INFO L275 TraceCheckUtils]: 45: Hoare quadruple {5550#false} {5549#true} #496#return; {5550#false} is VALID [2020-07-10 15:10:42,798 INFO L280 TraceCheckUtils]: 0: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {5549#true} is VALID [2020-07-10 15:10:42,799 INFO L263 TraceCheckUtils]: 1: Hoare triple {5549#true} call #t~ret17.base, #t~ret17.offset := alloc_or_die_master(); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:42,799 INFO L280 TraceCheckUtils]: 2: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc3.base, #t~malloc3.offset := #Ultimate.allocOnHeap(12);~ptr~1.base, ~ptr~1.offset := #t~malloc3.base, #t~malloc3.offset; {5549#true} is VALID [2020-07-10 15:10:42,800 INFO L280 TraceCheckUtils]: 3: Hoare triple {5549#true} assume !(~ptr~1.base == 0 && ~ptr~1.offset == 0); {5549#true} is VALID [2020-07-10 15:10:42,800 INFO L280 TraceCheckUtils]: 4: Hoare triple {5549#true} call write~$Pointer$(0, 0, ~ptr~1.base, ~ptr~1.offset, 4);call write~$Pointer$(0, 0, ~ptr~1.base, 4 + ~ptr~1.offset, 4);call write~$Pointer$(0, 0, ~ptr~1.base, 8 + ~ptr~1.offset, 4);#res.base, #res.offset := ~ptr~1.base, ~ptr~1.offset; {5549#true} is VALID [2020-07-10 15:10:42,800 INFO L280 TraceCheckUtils]: 5: Hoare triple {5549#true} assume true; {5549#true} is VALID [2020-07-10 15:10:42,800 INFO L275 TraceCheckUtils]: 6: Hoare quadruple {5549#true} {5549#true} #494#return; {5549#true} is VALID [2020-07-10 15:10:42,800 INFO L280 TraceCheckUtils]: 7: Hoare triple {5549#true} ~item~1.base, ~item~1.offset := #t~ret17.base, #t~ret17.offset;havoc #t~ret17.base, #t~ret17.offset;call #t~mem18.base, #t~mem18.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~3.base, ~next~3.offset := #t~mem18.base, #t~mem18.offset;havoc #t~mem18.base, #t~mem18.offset;call write~$Pointer$(~next~3.base, ~next~3.offset, ~item~1.base, ~item~1.offset, 4); {5549#true} is VALID [2020-07-10 15:10:42,801 INFO L280 TraceCheckUtils]: 8: Hoare triple {5549#true} assume !(~next~3.base != 0 || ~next~3.offset != 0); {5549#true} is VALID [2020-07-10 15:10:42,802 INFO L263 TraceCheckUtils]: 9: Hoare triple {5549#true} call #t~ret19.base, #t~ret19.offset := dll_create_slave(); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:42,803 INFO L263 TraceCheckUtils]: 10: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~ret11.base, #t~ret11.offset := dll_create_generic(#funAddr~dll_insert_slave.base, #funAddr~dll_insert_slave.offset); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:42,804 INFO L280 TraceCheckUtils]: 11: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~insert_fnc.base, ~insert_fnc.offset := #in~insert_fnc.base, #in~insert_fnc.offset;call ~#dll~0.base, ~#dll~0.offset := #Ultimate.allocOnStack(4);call write~init~$Pointer$(0, 0, ~#dll~0.base, ~#dll~0.offset, 4); {6112#(<= (+ |#StackHeapBarrier| 1) |dll_create_generic_~#dll~0.base|)} is VALID [2020-07-10 15:10:42,806 INFO L263 TraceCheckUtils]: 12: Hoare triple {6112#(<= (+ |#StackHeapBarrier| 1) |dll_create_generic_~#dll~0.base|)} call ##fun~$Pointer$~TO~VOID(~#dll~0.base, ~#dll~0.offset, ~insert_fnc.base, ~insert_fnc.offset); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:42,807 INFO L280 TraceCheckUtils]: 13: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {6148#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|))} is VALID [2020-07-10 15:10:42,807 INFO L280 TraceCheckUtils]: 14: Hoare triple {6148#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|))} assume !(#in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset); {6148#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|))} is VALID [2020-07-10 15:10:42,809 INFO L263 TraceCheckUtils]: 15: Hoare triple {6148#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|))} call dll_insert_slave(#~9.base, #~9.offset); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:42,810 INFO L280 TraceCheckUtils]: 16: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {6162#(and (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|))} is VALID [2020-07-10 15:10:42,811 INFO L263 TraceCheckUtils]: 17: Hoare triple {6162#(and (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|))} call #t~ret4.base, #t~ret4.offset := alloc_or_die_slave(); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:42,812 INFO L280 TraceCheckUtils]: 18: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {6171#(or (<= (+ alloc_or_die_slave_~ptr~0.base 1) 0) (<= 1 alloc_or_die_slave_~ptr~0.base))} is VALID [2020-07-10 15:10:42,812 INFO L280 TraceCheckUtils]: 19: Hoare triple {6171#(or (<= (+ alloc_or_die_slave_~ptr~0.base 1) 0) (<= 1 alloc_or_die_slave_~ptr~0.base))} assume !(~ptr~0.base == 0 && ~ptr~0.offset == 0); {6171#(or (<= (+ alloc_or_die_slave_~ptr~0.base 1) 0) (<= 1 alloc_or_die_slave_~ptr~0.base))} is VALID [2020-07-10 15:10:42,813 INFO L280 TraceCheckUtils]: 20: Hoare triple {6171#(or (<= (+ alloc_or_die_slave_~ptr~0.base 1) 0) (<= 1 alloc_or_die_slave_~ptr~0.base))} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {6172#(or (<= (+ |alloc_or_die_slave_#res.base| 1) 0) (<= 1 |alloc_or_die_slave_#res.base|))} is VALID [2020-07-10 15:10:42,814 INFO L280 TraceCheckUtils]: 21: Hoare triple {6172#(or (<= (+ |alloc_or_die_slave_#res.base| 1) 0) (<= 1 |alloc_or_die_slave_#res.base|))} assume true; {6172#(or (<= (+ |alloc_or_die_slave_#res.base| 1) 0) (<= 1 |alloc_or_die_slave_#res.base|))} is VALID [2020-07-10 15:10:42,815 INFO L275 TraceCheckUtils]: 22: Hoare quadruple {6172#(or (<= (+ |alloc_or_die_slave_#res.base| 1) 0) (<= 1 |alloc_or_die_slave_#res.base|))} {6162#(and (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|))} #490#return; {6168#(and (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|) (not (= 0 |dll_insert_slave_#t~ret4.base|)))} is VALID [2020-07-10 15:10:42,816 INFO L280 TraceCheckUtils]: 23: Hoare triple {6168#(and (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|) (not (= 0 |dll_insert_slave_#t~ret4.base|)))} ~item~0.base, ~item~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~0.base, ~next~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset;call write~$Pointer$(~next~0.base, ~next~0.offset, ~item~0.base, ~item~0.offset, 4); {6169#(and (not (= 0 dll_insert_slave_~item~0.base)) (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|))} is VALID [2020-07-10 15:10:42,817 INFO L280 TraceCheckUtils]: 24: Hoare triple {6169#(and (not (= 0 dll_insert_slave_~item~0.base)) (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|))} assume !(~next~0.base != 0 || ~next~0.offset != 0); {6169#(and (not (= 0 dll_insert_slave_~item~0.base)) (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|))} is VALID [2020-07-10 15:10:42,818 INFO L280 TraceCheckUtils]: 25: Hoare triple {6169#(and (not (= 0 dll_insert_slave_~item~0.base)) (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|))} call write~$Pointer$(~item~0.base, ~item~0.offset, ~dll.base, ~dll.offset, 4); {6170#(not (= 0 (select (select |#memory_$Pointer$.base| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|)))} is VALID [2020-07-10 15:10:42,818 INFO L280 TraceCheckUtils]: 26: Hoare triple {6170#(not (= 0 (select (select |#memory_$Pointer$.base| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|)))} assume true; {6170#(not (= 0 (select (select |#memory_$Pointer$.base| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|)))} is VALID [2020-07-10 15:10:42,819 INFO L275 TraceCheckUtils]: 27: Hoare quadruple {6170#(not (= 0 (select (select |#memory_$Pointer$.base| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|)))} {6148#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|))} #514#return; {6161#(not (= 0 (select (select |#memory_$Pointer$.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|)))} is VALID [2020-07-10 15:10:42,820 INFO L280 TraceCheckUtils]: 28: Hoare triple {6161#(not (= 0 (select (select |#memory_$Pointer$.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|)))} assume true; {6161#(not (= 0 (select (select |#memory_$Pointer$.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|)))} is VALID [2020-07-10 15:10:42,822 INFO L275 TraceCheckUtils]: 29: Hoare quadruple {6161#(not (= 0 (select (select |#memory_$Pointer$.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|)))} {6112#(<= (+ |#StackHeapBarrier| 1) |dll_create_generic_~#dll~0.base|)} #534#return; {6130#(and (<= (+ |#StackHeapBarrier| 1) |dll_create_generic_~#dll~0.base|) (not (= 0 (select (select |#memory_$Pointer$.base| |dll_create_generic_~#dll~0.base|) |dll_create_generic_~#dll~0.offset|))))} is VALID [2020-07-10 15:10:42,823 INFO L263 TraceCheckUtils]: 30: Hoare triple {6130#(and (<= (+ |#StackHeapBarrier| 1) |dll_create_generic_~#dll~0.base|) (not (= 0 (select (select |#memory_$Pointer$.base| |dll_create_generic_~#dll~0.base|) |dll_create_generic_~#dll~0.offset|))))} call ##fun~$Pointer$~TO~VOID(~#dll~0.base, ~#dll~0.offset, ~insert_fnc.base, ~insert_fnc.offset); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:42,824 INFO L280 TraceCheckUtils]: 31: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {6173#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|))} is VALID [2020-07-10 15:10:42,825 INFO L280 TraceCheckUtils]: 32: Hoare triple {6173#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|))} assume !(#in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset); {6173#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|))} is VALID [2020-07-10 15:10:42,826 INFO L263 TraceCheckUtils]: 33: Hoare triple {6173#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|))} call dll_insert_slave(#~9.base, #~9.offset); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:42,827 INFO L280 TraceCheckUtils]: 34: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {6187#(and (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|) (= (select |#memory_$Pointer$.base| dll_insert_slave_~dll.base) (select |old(#memory_$Pointer$.base)| dll_insert_slave_~dll.base)))} is VALID [2020-07-10 15:10:42,828 INFO L263 TraceCheckUtils]: 35: Hoare triple {6187#(and (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|) (= (select |#memory_$Pointer$.base| dll_insert_slave_~dll.base) (select |old(#memory_$Pointer$.base)| dll_insert_slave_~dll.base)))} call #t~ret4.base, #t~ret4.offset := alloc_or_die_slave(); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:42,829 INFO L280 TraceCheckUtils]: 36: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {6196#(and (<= (+ alloc_or_die_slave_~ptr~0.base 1) |#StackHeapBarrier|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|))} is VALID [2020-07-10 15:10:42,830 INFO L280 TraceCheckUtils]: 37: Hoare triple {6196#(and (<= (+ alloc_or_die_slave_~ptr~0.base 1) |#StackHeapBarrier|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|))} assume !(~ptr~0.base == 0 && ~ptr~0.offset == 0); {6196#(and (<= (+ alloc_or_die_slave_~ptr~0.base 1) |#StackHeapBarrier|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|))} is VALID [2020-07-10 15:10:42,832 INFO L280 TraceCheckUtils]: 38: Hoare triple {6196#(and (<= (+ alloc_or_die_slave_~ptr~0.base 1) |#StackHeapBarrier|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|))} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {6197#(and (= |#memory_$Pointer$.base| (store |old(#memory_$Pointer$.base)| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) (select |#memory_$Pointer$.base| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|)))) (or (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (<= (+ (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) 1) |#StackHeapBarrier|)))} is VALID [2020-07-10 15:10:42,833 INFO L280 TraceCheckUtils]: 39: Hoare triple {6197#(and (= |#memory_$Pointer$.base| (store |old(#memory_$Pointer$.base)| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) (select |#memory_$Pointer$.base| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|)))) (or (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (<= (+ (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) 1) |#StackHeapBarrier|)))} assume true; {6197#(and (= |#memory_$Pointer$.base| (store |old(#memory_$Pointer$.base)| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) (select |#memory_$Pointer$.base| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|)))) (or (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (<= (+ (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) 1) |#StackHeapBarrier|)))} is VALID [2020-07-10 15:10:42,835 INFO L275 TraceCheckUtils]: 40: Hoare quadruple {6197#(and (= |#memory_$Pointer$.base| (store |old(#memory_$Pointer$.base)| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) (select |#memory_$Pointer$.base| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|)))) (or (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (<= (+ (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) 1) |#StackHeapBarrier|)))} {6187#(and (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|) (= (select |#memory_$Pointer$.base| dll_insert_slave_~dll.base) (select |old(#memory_$Pointer$.base)| dll_insert_slave_~dll.base)))} #490#return; {6193#(and (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|) (or (<= (+ dll_insert_slave_~dll.base 1) |#StackHeapBarrier|) (= (select |#memory_$Pointer$.base| dll_insert_slave_~dll.base) (select |old(#memory_$Pointer$.base)| dll_insert_slave_~dll.base))))} is VALID [2020-07-10 15:10:42,836 INFO L280 TraceCheckUtils]: 41: Hoare triple {6193#(and (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|) (or (<= (+ dll_insert_slave_~dll.base 1) |#StackHeapBarrier|) (= (select |#memory_$Pointer$.base| dll_insert_slave_~dll.base) (select |old(#memory_$Pointer$.base)| dll_insert_slave_~dll.base))))} ~item~0.base, ~item~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~0.base, ~next~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset;call write~$Pointer$(~next~0.base, ~next~0.offset, ~item~0.base, ~item~0.offset, 4); {6194#(or (= (select (select |old(#memory_$Pointer$.base)| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|) dll_insert_slave_~next~0.base) (<= (+ |dll_insert_slave_#in~dll.base| 1) |#StackHeapBarrier|))} is VALID [2020-07-10 15:10:42,837 INFO L280 TraceCheckUtils]: 42: Hoare triple {6194#(or (= (select (select |old(#memory_$Pointer$.base)| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|) dll_insert_slave_~next~0.base) (<= (+ |dll_insert_slave_#in~dll.base| 1) |#StackHeapBarrier|))} assume !(~next~0.base != 0 || ~next~0.offset != 0); {6195#(or (= 0 (select (select |old(#memory_$Pointer$.base)| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|)) (<= (+ |dll_insert_slave_#in~dll.base| 1) |#StackHeapBarrier|))} is VALID [2020-07-10 15:10:42,838 INFO L280 TraceCheckUtils]: 43: Hoare triple {6195#(or (= 0 (select (select |old(#memory_$Pointer$.base)| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|)) (<= (+ |dll_insert_slave_#in~dll.base| 1) |#StackHeapBarrier|))} call write~$Pointer$(~item~0.base, ~item~0.offset, ~dll.base, ~dll.offset, 4); {6195#(or (= 0 (select (select |old(#memory_$Pointer$.base)| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|)) (<= (+ |dll_insert_slave_#in~dll.base| 1) |#StackHeapBarrier|))} is VALID [2020-07-10 15:10:42,838 INFO L280 TraceCheckUtils]: 44: Hoare triple {6195#(or (= 0 (select (select |old(#memory_$Pointer$.base)| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|)) (<= (+ |dll_insert_slave_#in~dll.base| 1) |#StackHeapBarrier|))} assume true; {6195#(or (= 0 (select (select |old(#memory_$Pointer$.base)| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|)) (<= (+ |dll_insert_slave_#in~dll.base| 1) |#StackHeapBarrier|))} is VALID [2020-07-10 15:10:42,840 INFO L275 TraceCheckUtils]: 45: Hoare quadruple {6195#(or (= 0 (select (select |old(#memory_$Pointer$.base)| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|)) (<= (+ |dll_insert_slave_#in~dll.base| 1) |#StackHeapBarrier|))} {6173#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|))} #514#return; {6186#(or (<= (+ |##fun~$Pointer$~TO~VOID_#in~9.base| 1) |#StackHeapBarrier|) (= 0 (select (select |old(#memory_$Pointer$.base)| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|)))} is VALID [2020-07-10 15:10:42,840 INFO L280 TraceCheckUtils]: 46: Hoare triple {6186#(or (<= (+ |##fun~$Pointer$~TO~VOID_#in~9.base| 1) |#StackHeapBarrier|) (= 0 (select (select |old(#memory_$Pointer$.base)| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|)))} assume true; {6186#(or (<= (+ |##fun~$Pointer$~TO~VOID_#in~9.base| 1) |#StackHeapBarrier|) (= 0 (select (select |old(#memory_$Pointer$.base)| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|)))} is VALID [2020-07-10 15:10:42,842 INFO L275 TraceCheckUtils]: 47: Hoare quadruple {6186#(or (<= (+ |##fun~$Pointer$~TO~VOID_#in~9.base| 1) |#StackHeapBarrier|) (= 0 (select (select |old(#memory_$Pointer$.base)| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|)))} {6130#(and (<= (+ |#StackHeapBarrier| 1) |dll_create_generic_~#dll~0.base|) (not (= 0 (select (select |#memory_$Pointer$.base| |dll_create_generic_~#dll~0.base|) |dll_create_generic_~#dll~0.offset|))))} #536#return; {5550#false} is VALID [2020-07-10 15:10:42,842 INFO L280 TraceCheckUtils]: 48: Hoare triple {5550#false} assume -2147483648 <= #t~nondet8 && #t~nondet8 <= 2147483647; {5550#false} is VALID [2020-07-10 15:10:42,842 INFO L280 TraceCheckUtils]: 49: Hoare triple {5550#false} assume !(0 != #t~nondet8);havoc #t~nondet8; {5550#false} is VALID [2020-07-10 15:10:42,842 INFO L280 TraceCheckUtils]: 50: Hoare triple {5550#false} call #t~mem10.base, #t~mem10.offset := read~$Pointer$(~#dll~0.base, ~#dll~0.offset, 4);#res.base, #res.offset := #t~mem10.base, #t~mem10.offset;havoc #t~mem10.base, #t~mem10.offset;call ULTIMATE.dealloc(~#dll~0.base, ~#dll~0.offset);havoc ~#dll~0.base, ~#dll~0.offset; {5550#false} is VALID [2020-07-10 15:10:42,843 INFO L280 TraceCheckUtils]: 51: Hoare triple {5550#false} assume true; {5550#false} is VALID [2020-07-10 15:10:42,843 INFO L275 TraceCheckUtils]: 52: Hoare quadruple {5550#false} {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #540#return; {5550#false} is VALID [2020-07-10 15:10:42,843 INFO L280 TraceCheckUtils]: 53: Hoare triple {5550#false} #res.base, #res.offset := #t~ret11.base, #t~ret11.offset;havoc #t~ret11.base, #t~ret11.offset; {5550#false} is VALID [2020-07-10 15:10:42,843 INFO L280 TraceCheckUtils]: 54: Hoare triple {5550#false} assume true; {5550#false} is VALID [2020-07-10 15:10:42,843 INFO L275 TraceCheckUtils]: 55: Hoare quadruple {5550#false} {5549#true} #496#return; {5550#false} is VALID [2020-07-10 15:10:42,844 INFO L280 TraceCheckUtils]: 56: Hoare triple {5550#false} call write~$Pointer$(#t~ret19.base, #t~ret19.offset, ~item~1.base, 8 + ~item~1.offset, 4);havoc #t~ret19.base, #t~ret19.offset;call write~$Pointer$(~item~1.base, ~item~1.offset, ~dll.base, ~dll.offset, 4); {5550#false} is VALID [2020-07-10 15:10:42,844 INFO L280 TraceCheckUtils]: 57: Hoare triple {5550#false} assume true; {5550#false} is VALID [2020-07-10 15:10:42,844 INFO L275 TraceCheckUtils]: 58: Hoare quadruple {5550#false} {5549#true} #512#return; {5550#false} is VALID [2020-07-10 15:10:42,852 INFO L280 TraceCheckUtils]: 0: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {5549#true} is VALID [2020-07-10 15:10:42,852 INFO L280 TraceCheckUtils]: 1: Hoare triple {5549#true} assume #in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset; {5549#true} is VALID [2020-07-10 15:10:42,853 INFO L263 TraceCheckUtils]: 2: Hoare triple {5549#true} call dll_insert_master(#~9.base, #~9.offset); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:42,853 INFO L280 TraceCheckUtils]: 3: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {5549#true} is VALID [2020-07-10 15:10:42,854 INFO L263 TraceCheckUtils]: 4: Hoare triple {5549#true} call #t~ret17.base, #t~ret17.offset := alloc_or_die_master(); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:42,854 INFO L280 TraceCheckUtils]: 5: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc3.base, #t~malloc3.offset := #Ultimate.allocOnHeap(12);~ptr~1.base, ~ptr~1.offset := #t~malloc3.base, #t~malloc3.offset; {5549#true} is VALID [2020-07-10 15:10:42,854 INFO L280 TraceCheckUtils]: 6: Hoare triple {5549#true} assume !(~ptr~1.base == 0 && ~ptr~1.offset == 0); {5549#true} is VALID [2020-07-10 15:10:42,854 INFO L280 TraceCheckUtils]: 7: Hoare triple {5549#true} call write~$Pointer$(0, 0, ~ptr~1.base, ~ptr~1.offset, 4);call write~$Pointer$(0, 0, ~ptr~1.base, 4 + ~ptr~1.offset, 4);call write~$Pointer$(0, 0, ~ptr~1.base, 8 + ~ptr~1.offset, 4);#res.base, #res.offset := ~ptr~1.base, ~ptr~1.offset; {5549#true} is VALID [2020-07-10 15:10:42,854 INFO L280 TraceCheckUtils]: 8: Hoare triple {5549#true} assume true; {5549#true} is VALID [2020-07-10 15:10:42,854 INFO L275 TraceCheckUtils]: 9: Hoare quadruple {5549#true} {5549#true} #494#return; {5549#true} is VALID [2020-07-10 15:10:42,854 INFO L280 TraceCheckUtils]: 10: Hoare triple {5549#true} ~item~1.base, ~item~1.offset := #t~ret17.base, #t~ret17.offset;havoc #t~ret17.base, #t~ret17.offset;call #t~mem18.base, #t~mem18.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~3.base, ~next~3.offset := #t~mem18.base, #t~mem18.offset;havoc #t~mem18.base, #t~mem18.offset;call write~$Pointer$(~next~3.base, ~next~3.offset, ~item~1.base, ~item~1.offset, 4); {5549#true} is VALID [2020-07-10 15:10:42,855 INFO L280 TraceCheckUtils]: 11: Hoare triple {5549#true} assume !(~next~3.base != 0 || ~next~3.offset != 0); {5549#true} is VALID [2020-07-10 15:10:42,858 INFO L263 TraceCheckUtils]: 12: Hoare triple {5549#true} call #t~ret19.base, #t~ret19.offset := dll_create_slave(); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:42,861 INFO L263 TraceCheckUtils]: 13: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~ret11.base, #t~ret11.offset := dll_create_generic(#funAddr~dll_insert_slave.base, #funAddr~dll_insert_slave.offset); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:42,864 INFO L280 TraceCheckUtils]: 14: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~insert_fnc.base, ~insert_fnc.offset := #in~insert_fnc.base, #in~insert_fnc.offset;call ~#dll~0.base, ~#dll~0.offset := #Ultimate.allocOnStack(4);call write~init~$Pointer$(0, 0, ~#dll~0.base, ~#dll~0.offset, 4); {6112#(<= (+ |#StackHeapBarrier| 1) |dll_create_generic_~#dll~0.base|)} is VALID [2020-07-10 15:10:42,866 INFO L263 TraceCheckUtils]: 15: Hoare triple {6112#(<= (+ |#StackHeapBarrier| 1) |dll_create_generic_~#dll~0.base|)} call ##fun~$Pointer$~TO~VOID(~#dll~0.base, ~#dll~0.offset, ~insert_fnc.base, ~insert_fnc.offset); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:42,867 INFO L280 TraceCheckUtils]: 16: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {6148#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|))} is VALID [2020-07-10 15:10:42,868 INFO L280 TraceCheckUtils]: 17: Hoare triple {6148#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|))} assume !(#in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset); {6148#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|))} is VALID [2020-07-10 15:10:42,870 INFO L263 TraceCheckUtils]: 18: Hoare triple {6148#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|))} call dll_insert_slave(#~9.base, #~9.offset); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:42,870 INFO L280 TraceCheckUtils]: 19: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {6162#(and (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|))} is VALID [2020-07-10 15:10:42,871 INFO L263 TraceCheckUtils]: 20: Hoare triple {6162#(and (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|))} call #t~ret4.base, #t~ret4.offset := alloc_or_die_slave(); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:42,873 INFO L280 TraceCheckUtils]: 21: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {6171#(or (<= (+ alloc_or_die_slave_~ptr~0.base 1) 0) (<= 1 alloc_or_die_slave_~ptr~0.base))} is VALID [2020-07-10 15:10:42,873 INFO L280 TraceCheckUtils]: 22: Hoare triple {6171#(or (<= (+ alloc_or_die_slave_~ptr~0.base 1) 0) (<= 1 alloc_or_die_slave_~ptr~0.base))} assume !(~ptr~0.base == 0 && ~ptr~0.offset == 0); {6171#(or (<= (+ alloc_or_die_slave_~ptr~0.base 1) 0) (<= 1 alloc_or_die_slave_~ptr~0.base))} is VALID [2020-07-10 15:10:42,876 INFO L280 TraceCheckUtils]: 23: Hoare triple {6171#(or (<= (+ alloc_or_die_slave_~ptr~0.base 1) 0) (<= 1 alloc_or_die_slave_~ptr~0.base))} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {6172#(or (<= (+ |alloc_or_die_slave_#res.base| 1) 0) (<= 1 |alloc_or_die_slave_#res.base|))} is VALID [2020-07-10 15:10:42,877 INFO L280 TraceCheckUtils]: 24: Hoare triple {6172#(or (<= (+ |alloc_or_die_slave_#res.base| 1) 0) (<= 1 |alloc_or_die_slave_#res.base|))} assume true; {6172#(or (<= (+ |alloc_or_die_slave_#res.base| 1) 0) (<= 1 |alloc_or_die_slave_#res.base|))} is VALID [2020-07-10 15:10:42,879 INFO L275 TraceCheckUtils]: 25: Hoare quadruple {6172#(or (<= (+ |alloc_or_die_slave_#res.base| 1) 0) (<= 1 |alloc_or_die_slave_#res.base|))} {6162#(and (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|))} #490#return; {6168#(and (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|) (not (= 0 |dll_insert_slave_#t~ret4.base|)))} is VALID [2020-07-10 15:10:42,880 INFO L280 TraceCheckUtils]: 26: Hoare triple {6168#(and (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|) (not (= 0 |dll_insert_slave_#t~ret4.base|)))} ~item~0.base, ~item~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~0.base, ~next~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset;call write~$Pointer$(~next~0.base, ~next~0.offset, ~item~0.base, ~item~0.offset, 4); {6169#(and (not (= 0 dll_insert_slave_~item~0.base)) (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|))} is VALID [2020-07-10 15:10:42,880 INFO L280 TraceCheckUtils]: 27: Hoare triple {6169#(and (not (= 0 dll_insert_slave_~item~0.base)) (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|))} assume !(~next~0.base != 0 || ~next~0.offset != 0); {6169#(and (not (= 0 dll_insert_slave_~item~0.base)) (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|))} is VALID [2020-07-10 15:10:42,881 INFO L280 TraceCheckUtils]: 28: Hoare triple {6169#(and (not (= 0 dll_insert_slave_~item~0.base)) (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|))} call write~$Pointer$(~item~0.base, ~item~0.offset, ~dll.base, ~dll.offset, 4); {6170#(not (= 0 (select (select |#memory_$Pointer$.base| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|)))} is VALID [2020-07-10 15:10:42,882 INFO L280 TraceCheckUtils]: 29: Hoare triple {6170#(not (= 0 (select (select |#memory_$Pointer$.base| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|)))} assume true; {6170#(not (= 0 (select (select |#memory_$Pointer$.base| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|)))} is VALID [2020-07-10 15:10:42,883 INFO L275 TraceCheckUtils]: 30: Hoare quadruple {6170#(not (= 0 (select (select |#memory_$Pointer$.base| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|)))} {6148#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|))} #514#return; {6161#(not (= 0 (select (select |#memory_$Pointer$.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|)))} is VALID [2020-07-10 15:10:42,884 INFO L280 TraceCheckUtils]: 31: Hoare triple {6161#(not (= 0 (select (select |#memory_$Pointer$.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|)))} assume true; {6161#(not (= 0 (select (select |#memory_$Pointer$.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|)))} is VALID [2020-07-10 15:10:42,885 INFO L275 TraceCheckUtils]: 32: Hoare quadruple {6161#(not (= 0 (select (select |#memory_$Pointer$.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|)))} {6112#(<= (+ |#StackHeapBarrier| 1) |dll_create_generic_~#dll~0.base|)} #534#return; {6130#(and (<= (+ |#StackHeapBarrier| 1) |dll_create_generic_~#dll~0.base|) (not (= 0 (select (select |#memory_$Pointer$.base| |dll_create_generic_~#dll~0.base|) |dll_create_generic_~#dll~0.offset|))))} is VALID [2020-07-10 15:10:42,886 INFO L263 TraceCheckUtils]: 33: Hoare triple {6130#(and (<= (+ |#StackHeapBarrier| 1) |dll_create_generic_~#dll~0.base|) (not (= 0 (select (select |#memory_$Pointer$.base| |dll_create_generic_~#dll~0.base|) |dll_create_generic_~#dll~0.offset|))))} call ##fun~$Pointer$~TO~VOID(~#dll~0.base, ~#dll~0.offset, ~insert_fnc.base, ~insert_fnc.offset); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:42,886 INFO L280 TraceCheckUtils]: 34: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {6173#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|))} is VALID [2020-07-10 15:10:42,887 INFO L280 TraceCheckUtils]: 35: Hoare triple {6173#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|))} assume !(#in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset); {6173#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|))} is VALID [2020-07-10 15:10:42,888 INFO L263 TraceCheckUtils]: 36: Hoare triple {6173#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|))} call dll_insert_slave(#~9.base, #~9.offset); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:42,891 INFO L280 TraceCheckUtils]: 37: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {6187#(and (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|) (= (select |#memory_$Pointer$.base| dll_insert_slave_~dll.base) (select |old(#memory_$Pointer$.base)| dll_insert_slave_~dll.base)))} is VALID [2020-07-10 15:10:42,894 INFO L263 TraceCheckUtils]: 38: Hoare triple {6187#(and (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|) (= (select |#memory_$Pointer$.base| dll_insert_slave_~dll.base) (select |old(#memory_$Pointer$.base)| dll_insert_slave_~dll.base)))} call #t~ret4.base, #t~ret4.offset := alloc_or_die_slave(); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:42,895 INFO L280 TraceCheckUtils]: 39: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {6196#(and (<= (+ alloc_or_die_slave_~ptr~0.base 1) |#StackHeapBarrier|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|))} is VALID [2020-07-10 15:10:42,896 INFO L280 TraceCheckUtils]: 40: Hoare triple {6196#(and (<= (+ alloc_or_die_slave_~ptr~0.base 1) |#StackHeapBarrier|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|))} assume !(~ptr~0.base == 0 && ~ptr~0.offset == 0); {6196#(and (<= (+ alloc_or_die_slave_~ptr~0.base 1) |#StackHeapBarrier|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|))} is VALID [2020-07-10 15:10:42,897 INFO L280 TraceCheckUtils]: 41: Hoare triple {6196#(and (<= (+ alloc_or_die_slave_~ptr~0.base 1) |#StackHeapBarrier|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|))} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {6197#(and (= |#memory_$Pointer$.base| (store |old(#memory_$Pointer$.base)| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) (select |#memory_$Pointer$.base| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|)))) (or (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (<= (+ (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) 1) |#StackHeapBarrier|)))} is VALID [2020-07-10 15:10:42,898 INFO L280 TraceCheckUtils]: 42: Hoare triple {6197#(and (= |#memory_$Pointer$.base| (store |old(#memory_$Pointer$.base)| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) (select |#memory_$Pointer$.base| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|)))) (or (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (<= (+ (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) 1) |#StackHeapBarrier|)))} assume true; {6197#(and (= |#memory_$Pointer$.base| (store |old(#memory_$Pointer$.base)| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) (select |#memory_$Pointer$.base| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|)))) (or (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (<= (+ (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) 1) |#StackHeapBarrier|)))} is VALID [2020-07-10 15:10:42,900 INFO L275 TraceCheckUtils]: 43: Hoare quadruple {6197#(and (= |#memory_$Pointer$.base| (store |old(#memory_$Pointer$.base)| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) (select |#memory_$Pointer$.base| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|)))) (or (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (<= (+ (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) 1) |#StackHeapBarrier|)))} {6187#(and (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|) (= (select |#memory_$Pointer$.base| dll_insert_slave_~dll.base) (select |old(#memory_$Pointer$.base)| dll_insert_slave_~dll.base)))} #490#return; {6193#(and (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|) (or (<= (+ dll_insert_slave_~dll.base 1) |#StackHeapBarrier|) (= (select |#memory_$Pointer$.base| dll_insert_slave_~dll.base) (select |old(#memory_$Pointer$.base)| dll_insert_slave_~dll.base))))} is VALID [2020-07-10 15:10:42,901 INFO L280 TraceCheckUtils]: 44: Hoare triple {6193#(and (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|) (or (<= (+ dll_insert_slave_~dll.base 1) |#StackHeapBarrier|) (= (select |#memory_$Pointer$.base| dll_insert_slave_~dll.base) (select |old(#memory_$Pointer$.base)| dll_insert_slave_~dll.base))))} ~item~0.base, ~item~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~0.base, ~next~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset;call write~$Pointer$(~next~0.base, ~next~0.offset, ~item~0.base, ~item~0.offset, 4); {6194#(or (= (select (select |old(#memory_$Pointer$.base)| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|) dll_insert_slave_~next~0.base) (<= (+ |dll_insert_slave_#in~dll.base| 1) |#StackHeapBarrier|))} is VALID [2020-07-10 15:10:42,902 INFO L280 TraceCheckUtils]: 45: Hoare triple {6194#(or (= (select (select |old(#memory_$Pointer$.base)| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|) dll_insert_slave_~next~0.base) (<= (+ |dll_insert_slave_#in~dll.base| 1) |#StackHeapBarrier|))} assume !(~next~0.base != 0 || ~next~0.offset != 0); {6195#(or (= 0 (select (select |old(#memory_$Pointer$.base)| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|)) (<= (+ |dll_insert_slave_#in~dll.base| 1) |#StackHeapBarrier|))} is VALID [2020-07-10 15:10:42,902 INFO L280 TraceCheckUtils]: 46: Hoare triple {6195#(or (= 0 (select (select |old(#memory_$Pointer$.base)| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|)) (<= (+ |dll_insert_slave_#in~dll.base| 1) |#StackHeapBarrier|))} call write~$Pointer$(~item~0.base, ~item~0.offset, ~dll.base, ~dll.offset, 4); {6195#(or (= 0 (select (select |old(#memory_$Pointer$.base)| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|)) (<= (+ |dll_insert_slave_#in~dll.base| 1) |#StackHeapBarrier|))} is VALID [2020-07-10 15:10:42,903 INFO L280 TraceCheckUtils]: 47: Hoare triple {6195#(or (= 0 (select (select |old(#memory_$Pointer$.base)| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|)) (<= (+ |dll_insert_slave_#in~dll.base| 1) |#StackHeapBarrier|))} assume true; {6195#(or (= 0 (select (select |old(#memory_$Pointer$.base)| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|)) (<= (+ |dll_insert_slave_#in~dll.base| 1) |#StackHeapBarrier|))} is VALID [2020-07-10 15:10:42,904 INFO L275 TraceCheckUtils]: 48: Hoare quadruple {6195#(or (= 0 (select (select |old(#memory_$Pointer$.base)| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|)) (<= (+ |dll_insert_slave_#in~dll.base| 1) |#StackHeapBarrier|))} {6173#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|))} #514#return; {6186#(or (<= (+ |##fun~$Pointer$~TO~VOID_#in~9.base| 1) |#StackHeapBarrier|) (= 0 (select (select |old(#memory_$Pointer$.base)| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|)))} is VALID [2020-07-10 15:10:42,905 INFO L280 TraceCheckUtils]: 49: Hoare triple {6186#(or (<= (+ |##fun~$Pointer$~TO~VOID_#in~9.base| 1) |#StackHeapBarrier|) (= 0 (select (select |old(#memory_$Pointer$.base)| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|)))} assume true; {6186#(or (<= (+ |##fun~$Pointer$~TO~VOID_#in~9.base| 1) |#StackHeapBarrier|) (= 0 (select (select |old(#memory_$Pointer$.base)| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|)))} is VALID [2020-07-10 15:10:42,906 INFO L275 TraceCheckUtils]: 50: Hoare quadruple {6186#(or (<= (+ |##fun~$Pointer$~TO~VOID_#in~9.base| 1) |#StackHeapBarrier|) (= 0 (select (select |old(#memory_$Pointer$.base)| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|)))} {6130#(and (<= (+ |#StackHeapBarrier| 1) |dll_create_generic_~#dll~0.base|) (not (= 0 (select (select |#memory_$Pointer$.base| |dll_create_generic_~#dll~0.base|) |dll_create_generic_~#dll~0.offset|))))} #536#return; {5550#false} is VALID [2020-07-10 15:10:42,906 INFO L280 TraceCheckUtils]: 51: Hoare triple {5550#false} assume -2147483648 <= #t~nondet8 && #t~nondet8 <= 2147483647; {5550#false} is VALID [2020-07-10 15:10:42,906 INFO L280 TraceCheckUtils]: 52: Hoare triple {5550#false} assume !(0 != #t~nondet8);havoc #t~nondet8; {5550#false} is VALID [2020-07-10 15:10:42,906 INFO L280 TraceCheckUtils]: 53: Hoare triple {5550#false} call #t~mem10.base, #t~mem10.offset := read~$Pointer$(~#dll~0.base, ~#dll~0.offset, 4);#res.base, #res.offset := #t~mem10.base, #t~mem10.offset;havoc #t~mem10.base, #t~mem10.offset;call ULTIMATE.dealloc(~#dll~0.base, ~#dll~0.offset);havoc ~#dll~0.base, ~#dll~0.offset; {5550#false} is VALID [2020-07-10 15:10:42,906 INFO L280 TraceCheckUtils]: 54: Hoare triple {5550#false} assume true; {5550#false} is VALID [2020-07-10 15:10:42,907 INFO L275 TraceCheckUtils]: 55: Hoare quadruple {5550#false} {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #540#return; {5550#false} is VALID [2020-07-10 15:10:42,907 INFO L280 TraceCheckUtils]: 56: Hoare triple {5550#false} #res.base, #res.offset := #t~ret11.base, #t~ret11.offset;havoc #t~ret11.base, #t~ret11.offset; {5550#false} is VALID [2020-07-10 15:10:42,907 INFO L280 TraceCheckUtils]: 57: Hoare triple {5550#false} assume true; {5550#false} is VALID [2020-07-10 15:10:42,907 INFO L275 TraceCheckUtils]: 58: Hoare quadruple {5550#false} {5549#true} #496#return; {5550#false} is VALID [2020-07-10 15:10:42,908 INFO L280 TraceCheckUtils]: 59: Hoare triple {5550#false} call write~$Pointer$(#t~ret19.base, #t~ret19.offset, ~item~1.base, 8 + ~item~1.offset, 4);havoc #t~ret19.base, #t~ret19.offset;call write~$Pointer$(~item~1.base, ~item~1.offset, ~dll.base, ~dll.offset, 4); {5550#false} is VALID [2020-07-10 15:10:42,908 INFO L280 TraceCheckUtils]: 60: Hoare triple {5550#false} assume true; {5550#false} is VALID [2020-07-10 15:10:42,908 INFO L275 TraceCheckUtils]: 61: Hoare quadruple {5550#false} {5549#true} #512#return; {5550#false} is VALID [2020-07-10 15:10:42,908 INFO L280 TraceCheckUtils]: 62: Hoare triple {5550#false} assume true; {5550#false} is VALID [2020-07-10 15:10:42,909 INFO L275 TraceCheckUtils]: 63: Hoare quadruple {5550#false} {5549#true} #534#return; {5550#false} is VALID [2020-07-10 15:10:42,930 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 15:10:42,957 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 15:10:42,973 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 15:10:42,977 INFO L280 TraceCheckUtils]: 0: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc3.base, #t~malloc3.offset := #Ultimate.allocOnHeap(12);~ptr~1.base, ~ptr~1.offset := #t~malloc3.base, #t~malloc3.offset; {5549#true} is VALID [2020-07-10 15:10:42,977 INFO L280 TraceCheckUtils]: 1: Hoare triple {5549#true} assume !(~ptr~1.base == 0 && ~ptr~1.offset == 0); {5549#true} is VALID [2020-07-10 15:10:42,977 INFO L280 TraceCheckUtils]: 2: Hoare triple {5549#true} call write~$Pointer$(0, 0, ~ptr~1.base, ~ptr~1.offset, 4);call write~$Pointer$(0, 0, ~ptr~1.base, 4 + ~ptr~1.offset, 4);call write~$Pointer$(0, 0, ~ptr~1.base, 8 + ~ptr~1.offset, 4);#res.base, #res.offset := ~ptr~1.base, ~ptr~1.offset; {5549#true} is VALID [2020-07-10 15:10:42,977 INFO L280 TraceCheckUtils]: 3: Hoare triple {5549#true} assume true; {5549#true} is VALID [2020-07-10 15:10:42,978 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {5549#true} {5549#true} #494#return; {5549#true} is VALID [2020-07-10 15:10:42,981 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 15:10:42,993 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 15:10:43,004 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 15:10:43,011 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 15:10:43,016 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 15:10:43,020 INFO L280 TraceCheckUtils]: 0: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {5549#true} is VALID [2020-07-10 15:10:43,020 INFO L280 TraceCheckUtils]: 1: Hoare triple {5549#true} assume !(~ptr~0.base == 0 && ~ptr~0.offset == 0); {5549#true} is VALID [2020-07-10 15:10:43,020 INFO L280 TraceCheckUtils]: 2: Hoare triple {5549#true} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {5549#true} is VALID [2020-07-10 15:10:43,021 INFO L280 TraceCheckUtils]: 3: Hoare triple {5549#true} assume true; {5549#true} is VALID [2020-07-10 15:10:43,021 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {5549#true} {5549#true} #490#return; {5549#true} is VALID [2020-07-10 15:10:43,021 INFO L280 TraceCheckUtils]: 0: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {5549#true} is VALID [2020-07-10 15:10:43,022 INFO L263 TraceCheckUtils]: 1: Hoare triple {5549#true} call #t~ret4.base, #t~ret4.offset := alloc_or_die_slave(); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,023 INFO L280 TraceCheckUtils]: 2: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {5549#true} is VALID [2020-07-10 15:10:43,023 INFO L280 TraceCheckUtils]: 3: Hoare triple {5549#true} assume !(~ptr~0.base == 0 && ~ptr~0.offset == 0); {5549#true} is VALID [2020-07-10 15:10:43,023 INFO L280 TraceCheckUtils]: 4: Hoare triple {5549#true} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {5549#true} is VALID [2020-07-10 15:10:43,023 INFO L280 TraceCheckUtils]: 5: Hoare triple {5549#true} assume true; {5549#true} is VALID [2020-07-10 15:10:43,024 INFO L275 TraceCheckUtils]: 6: Hoare quadruple {5549#true} {5549#true} #490#return; {5549#true} is VALID [2020-07-10 15:10:43,024 INFO L280 TraceCheckUtils]: 7: Hoare triple {5549#true} ~item~0.base, ~item~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~0.base, ~next~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset;call write~$Pointer$(~next~0.base, ~next~0.offset, ~item~0.base, ~item~0.offset, 4); {5549#true} is VALID [2020-07-10 15:10:43,024 INFO L280 TraceCheckUtils]: 8: Hoare triple {5549#true} assume !(~next~0.base != 0 || ~next~0.offset != 0); {5549#true} is VALID [2020-07-10 15:10:43,024 INFO L280 TraceCheckUtils]: 9: Hoare triple {5549#true} call write~$Pointer$(~item~0.base, ~item~0.offset, ~dll.base, ~dll.offset, 4); {5549#true} is VALID [2020-07-10 15:10:43,025 INFO L280 TraceCheckUtils]: 10: Hoare triple {5549#true} assume true; {5549#true} is VALID [2020-07-10 15:10:43,025 INFO L275 TraceCheckUtils]: 11: Hoare quadruple {5549#true} {5549#true} #514#return; {5549#true} is VALID [2020-07-10 15:10:43,025 INFO L280 TraceCheckUtils]: 0: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {5549#true} is VALID [2020-07-10 15:10:43,026 INFO L280 TraceCheckUtils]: 1: Hoare triple {5549#true} assume !(#in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset); {5549#true} is VALID [2020-07-10 15:10:43,027 INFO L263 TraceCheckUtils]: 2: Hoare triple {5549#true} call dll_insert_slave(#~9.base, #~9.offset); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,027 INFO L280 TraceCheckUtils]: 3: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {5549#true} is VALID [2020-07-10 15:10:43,028 INFO L263 TraceCheckUtils]: 4: Hoare triple {5549#true} call #t~ret4.base, #t~ret4.offset := alloc_or_die_slave(); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,028 INFO L280 TraceCheckUtils]: 5: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {5549#true} is VALID [2020-07-10 15:10:43,029 INFO L280 TraceCheckUtils]: 6: Hoare triple {5549#true} assume !(~ptr~0.base == 0 && ~ptr~0.offset == 0); {5549#true} is VALID [2020-07-10 15:10:43,029 INFO L280 TraceCheckUtils]: 7: Hoare triple {5549#true} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {5549#true} is VALID [2020-07-10 15:10:43,029 INFO L280 TraceCheckUtils]: 8: Hoare triple {5549#true} assume true; {5549#true} is VALID [2020-07-10 15:10:43,029 INFO L275 TraceCheckUtils]: 9: Hoare quadruple {5549#true} {5549#true} #490#return; {5549#true} is VALID [2020-07-10 15:10:43,029 INFO L280 TraceCheckUtils]: 10: Hoare triple {5549#true} ~item~0.base, ~item~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~0.base, ~next~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset;call write~$Pointer$(~next~0.base, ~next~0.offset, ~item~0.base, ~item~0.offset, 4); {5549#true} is VALID [2020-07-10 15:10:43,030 INFO L280 TraceCheckUtils]: 11: Hoare triple {5549#true} assume !(~next~0.base != 0 || ~next~0.offset != 0); {5549#true} is VALID [2020-07-10 15:10:43,030 INFO L280 TraceCheckUtils]: 12: Hoare triple {5549#true} call write~$Pointer$(~item~0.base, ~item~0.offset, ~dll.base, ~dll.offset, 4); {5549#true} is VALID [2020-07-10 15:10:43,030 INFO L280 TraceCheckUtils]: 13: Hoare triple {5549#true} assume true; {5549#true} is VALID [2020-07-10 15:10:43,030 INFO L275 TraceCheckUtils]: 14: Hoare quadruple {5549#true} {5549#true} #514#return; {5549#true} is VALID [2020-07-10 15:10:43,031 INFO L280 TraceCheckUtils]: 15: Hoare triple {5549#true} assume true; {5549#true} is VALID [2020-07-10 15:10:43,031 INFO L275 TraceCheckUtils]: 16: Hoare quadruple {5549#true} {5549#true} #534#return; {5549#true} is VALID [2020-07-10 15:10:43,033 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 15:10:43,040 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 15:10:43,045 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 15:10:43,049 INFO L280 TraceCheckUtils]: 0: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {5549#true} is VALID [2020-07-10 15:10:43,049 INFO L280 TraceCheckUtils]: 1: Hoare triple {5549#true} assume !(~ptr~0.base == 0 && ~ptr~0.offset == 0); {5549#true} is VALID [2020-07-10 15:10:43,049 INFO L280 TraceCheckUtils]: 2: Hoare triple {5549#true} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {5549#true} is VALID [2020-07-10 15:10:43,050 INFO L280 TraceCheckUtils]: 3: Hoare triple {5549#true} assume true; {5549#true} is VALID [2020-07-10 15:10:43,050 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {5549#true} {5549#true} #490#return; {5549#true} is VALID [2020-07-10 15:10:43,050 INFO L280 TraceCheckUtils]: 0: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {5549#true} is VALID [2020-07-10 15:10:43,051 INFO L263 TraceCheckUtils]: 1: Hoare triple {5549#true} call #t~ret4.base, #t~ret4.offset := alloc_or_die_slave(); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,051 INFO L280 TraceCheckUtils]: 2: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {5549#true} is VALID [2020-07-10 15:10:43,052 INFO L280 TraceCheckUtils]: 3: Hoare triple {5549#true} assume !(~ptr~0.base == 0 && ~ptr~0.offset == 0); {5549#true} is VALID [2020-07-10 15:10:43,052 INFO L280 TraceCheckUtils]: 4: Hoare triple {5549#true} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {5549#true} is VALID [2020-07-10 15:10:43,052 INFO L280 TraceCheckUtils]: 5: Hoare triple {5549#true} assume true; {5549#true} is VALID [2020-07-10 15:10:43,052 INFO L275 TraceCheckUtils]: 6: Hoare quadruple {5549#true} {5549#true} #490#return; {5549#true} is VALID [2020-07-10 15:10:43,053 INFO L280 TraceCheckUtils]: 7: Hoare triple {5549#true} ~item~0.base, ~item~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~0.base, ~next~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset;call write~$Pointer$(~next~0.base, ~next~0.offset, ~item~0.base, ~item~0.offset, 4); {5549#true} is VALID [2020-07-10 15:10:43,053 INFO L280 TraceCheckUtils]: 8: Hoare triple {5549#true} assume !(~next~0.base != 0 || ~next~0.offset != 0); {5549#true} is VALID [2020-07-10 15:10:43,053 INFO L280 TraceCheckUtils]: 9: Hoare triple {5549#true} call write~$Pointer$(~item~0.base, ~item~0.offset, ~dll.base, ~dll.offset, 4); {5549#true} is VALID [2020-07-10 15:10:43,053 INFO L280 TraceCheckUtils]: 10: Hoare triple {5549#true} assume true; {5549#true} is VALID [2020-07-10 15:10:43,054 INFO L275 TraceCheckUtils]: 11: Hoare quadruple {5549#true} {5549#true} #514#return; {5549#true} is VALID [2020-07-10 15:10:43,054 INFO L280 TraceCheckUtils]: 0: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {5549#true} is VALID [2020-07-10 15:10:43,054 INFO L280 TraceCheckUtils]: 1: Hoare triple {5549#true} assume !(#in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset); {5549#true} is VALID [2020-07-10 15:10:43,056 INFO L263 TraceCheckUtils]: 2: Hoare triple {5549#true} call dll_insert_slave(#~9.base, #~9.offset); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,056 INFO L280 TraceCheckUtils]: 3: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {5549#true} is VALID [2020-07-10 15:10:43,057 INFO L263 TraceCheckUtils]: 4: Hoare triple {5549#true} call #t~ret4.base, #t~ret4.offset := alloc_or_die_slave(); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,057 INFO L280 TraceCheckUtils]: 5: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {5549#true} is VALID [2020-07-10 15:10:43,057 INFO L280 TraceCheckUtils]: 6: Hoare triple {5549#true} assume !(~ptr~0.base == 0 && ~ptr~0.offset == 0); {5549#true} is VALID [2020-07-10 15:10:43,058 INFO L280 TraceCheckUtils]: 7: Hoare triple {5549#true} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {5549#true} is VALID [2020-07-10 15:10:43,058 INFO L280 TraceCheckUtils]: 8: Hoare triple {5549#true} assume true; {5549#true} is VALID [2020-07-10 15:10:43,058 INFO L275 TraceCheckUtils]: 9: Hoare quadruple {5549#true} {5549#true} #490#return; {5549#true} is VALID [2020-07-10 15:10:43,058 INFO L280 TraceCheckUtils]: 10: Hoare triple {5549#true} ~item~0.base, ~item~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~0.base, ~next~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset;call write~$Pointer$(~next~0.base, ~next~0.offset, ~item~0.base, ~item~0.offset, 4); {5549#true} is VALID [2020-07-10 15:10:43,059 INFO L280 TraceCheckUtils]: 11: Hoare triple {5549#true} assume !(~next~0.base != 0 || ~next~0.offset != 0); {5549#true} is VALID [2020-07-10 15:10:43,059 INFO L280 TraceCheckUtils]: 12: Hoare triple {5549#true} call write~$Pointer$(~item~0.base, ~item~0.offset, ~dll.base, ~dll.offset, 4); {5549#true} is VALID [2020-07-10 15:10:43,059 INFO L280 TraceCheckUtils]: 13: Hoare triple {5549#true} assume true; {5549#true} is VALID [2020-07-10 15:10:43,059 INFO L275 TraceCheckUtils]: 14: Hoare quadruple {5549#true} {5549#true} #514#return; {5549#true} is VALID [2020-07-10 15:10:43,060 INFO L280 TraceCheckUtils]: 15: Hoare triple {5549#true} assume true; {5549#true} is VALID [2020-07-10 15:10:43,060 INFO L275 TraceCheckUtils]: 16: Hoare quadruple {5549#true} {5549#true} #536#return; {5549#true} is VALID [2020-07-10 15:10:43,060 INFO L280 TraceCheckUtils]: 0: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~insert_fnc.base, ~insert_fnc.offset := #in~insert_fnc.base, #in~insert_fnc.offset;call ~#dll~0.base, ~#dll~0.offset := #Ultimate.allocOnStack(4);call write~init~$Pointer$(0, 0, ~#dll~0.base, ~#dll~0.offset, 4); {5549#true} is VALID [2020-07-10 15:10:43,062 INFO L263 TraceCheckUtils]: 1: Hoare triple {5549#true} call ##fun~$Pointer$~TO~VOID(~#dll~0.base, ~#dll~0.offset, ~insert_fnc.base, ~insert_fnc.offset); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,062 INFO L280 TraceCheckUtils]: 2: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {5549#true} is VALID [2020-07-10 15:10:43,062 INFO L280 TraceCheckUtils]: 3: Hoare triple {5549#true} assume !(#in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset); {5549#true} is VALID [2020-07-10 15:10:43,064 INFO L263 TraceCheckUtils]: 4: Hoare triple {5549#true} call dll_insert_slave(#~9.base, #~9.offset); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,064 INFO L280 TraceCheckUtils]: 5: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {5549#true} is VALID [2020-07-10 15:10:43,065 INFO L263 TraceCheckUtils]: 6: Hoare triple {5549#true} call #t~ret4.base, #t~ret4.offset := alloc_or_die_slave(); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,065 INFO L280 TraceCheckUtils]: 7: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {5549#true} is VALID [2020-07-10 15:10:43,065 INFO L280 TraceCheckUtils]: 8: Hoare triple {5549#true} assume !(~ptr~0.base == 0 && ~ptr~0.offset == 0); {5549#true} is VALID [2020-07-10 15:10:43,066 INFO L280 TraceCheckUtils]: 9: Hoare triple {5549#true} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {5549#true} is VALID [2020-07-10 15:10:43,066 INFO L280 TraceCheckUtils]: 10: Hoare triple {5549#true} assume true; {5549#true} is VALID [2020-07-10 15:10:43,066 INFO L275 TraceCheckUtils]: 11: Hoare quadruple {5549#true} {5549#true} #490#return; {5549#true} is VALID [2020-07-10 15:10:43,066 INFO L280 TraceCheckUtils]: 12: Hoare triple {5549#true} ~item~0.base, ~item~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~0.base, ~next~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset;call write~$Pointer$(~next~0.base, ~next~0.offset, ~item~0.base, ~item~0.offset, 4); {5549#true} is VALID [2020-07-10 15:10:43,066 INFO L280 TraceCheckUtils]: 13: Hoare triple {5549#true} assume !(~next~0.base != 0 || ~next~0.offset != 0); {5549#true} is VALID [2020-07-10 15:10:43,067 INFO L280 TraceCheckUtils]: 14: Hoare triple {5549#true} call write~$Pointer$(~item~0.base, ~item~0.offset, ~dll.base, ~dll.offset, 4); {5549#true} is VALID [2020-07-10 15:10:43,067 INFO L280 TraceCheckUtils]: 15: Hoare triple {5549#true} assume true; {5549#true} is VALID [2020-07-10 15:10:43,067 INFO L275 TraceCheckUtils]: 16: Hoare quadruple {5549#true} {5549#true} #514#return; {5549#true} is VALID [2020-07-10 15:10:43,067 INFO L280 TraceCheckUtils]: 17: Hoare triple {5549#true} assume true; {5549#true} is VALID [2020-07-10 15:10:43,068 INFO L275 TraceCheckUtils]: 18: Hoare quadruple {5549#true} {5549#true} #534#return; {5549#true} is VALID [2020-07-10 15:10:43,069 INFO L263 TraceCheckUtils]: 19: Hoare triple {5549#true} call ##fun~$Pointer$~TO~VOID(~#dll~0.base, ~#dll~0.offset, ~insert_fnc.base, ~insert_fnc.offset); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,069 INFO L280 TraceCheckUtils]: 20: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {5549#true} is VALID [2020-07-10 15:10:43,070 INFO L280 TraceCheckUtils]: 21: Hoare triple {5549#true} assume !(#in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset); {5549#true} is VALID [2020-07-10 15:10:43,071 INFO L263 TraceCheckUtils]: 22: Hoare triple {5549#true} call dll_insert_slave(#~9.base, #~9.offset); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,071 INFO L280 TraceCheckUtils]: 23: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {5549#true} is VALID [2020-07-10 15:10:43,072 INFO L263 TraceCheckUtils]: 24: Hoare triple {5549#true} call #t~ret4.base, #t~ret4.offset := alloc_or_die_slave(); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,072 INFO L280 TraceCheckUtils]: 25: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {5549#true} is VALID [2020-07-10 15:10:43,072 INFO L280 TraceCheckUtils]: 26: Hoare triple {5549#true} assume !(~ptr~0.base == 0 && ~ptr~0.offset == 0); {5549#true} is VALID [2020-07-10 15:10:43,073 INFO L280 TraceCheckUtils]: 27: Hoare triple {5549#true} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {5549#true} is VALID [2020-07-10 15:10:43,073 INFO L280 TraceCheckUtils]: 28: Hoare triple {5549#true} assume true; {5549#true} is VALID [2020-07-10 15:10:43,073 INFO L275 TraceCheckUtils]: 29: Hoare quadruple {5549#true} {5549#true} #490#return; {5549#true} is VALID [2020-07-10 15:10:43,073 INFO L280 TraceCheckUtils]: 30: Hoare triple {5549#true} ~item~0.base, ~item~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~0.base, ~next~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset;call write~$Pointer$(~next~0.base, ~next~0.offset, ~item~0.base, ~item~0.offset, 4); {5549#true} is VALID [2020-07-10 15:10:43,074 INFO L280 TraceCheckUtils]: 31: Hoare triple {5549#true} assume !(~next~0.base != 0 || ~next~0.offset != 0); {5549#true} is VALID [2020-07-10 15:10:43,074 INFO L280 TraceCheckUtils]: 32: Hoare triple {5549#true} call write~$Pointer$(~item~0.base, ~item~0.offset, ~dll.base, ~dll.offset, 4); {5549#true} is VALID [2020-07-10 15:10:43,074 INFO L280 TraceCheckUtils]: 33: Hoare triple {5549#true} assume true; {5549#true} is VALID [2020-07-10 15:10:43,074 INFO L275 TraceCheckUtils]: 34: Hoare quadruple {5549#true} {5549#true} #514#return; {5549#true} is VALID [2020-07-10 15:10:43,074 INFO L280 TraceCheckUtils]: 35: Hoare triple {5549#true} assume true; {5549#true} is VALID [2020-07-10 15:10:43,075 INFO L275 TraceCheckUtils]: 36: Hoare quadruple {5549#true} {5549#true} #536#return; {5549#true} is VALID [2020-07-10 15:10:43,075 INFO L280 TraceCheckUtils]: 37: Hoare triple {5549#true} assume -2147483648 <= #t~nondet8 && #t~nondet8 <= 2147483647; {5549#true} is VALID [2020-07-10 15:10:43,075 INFO L280 TraceCheckUtils]: 38: Hoare triple {5549#true} assume !(0 != #t~nondet8);havoc #t~nondet8; {5549#true} is VALID [2020-07-10 15:10:43,075 INFO L280 TraceCheckUtils]: 39: Hoare triple {5549#true} call #t~mem10.base, #t~mem10.offset := read~$Pointer$(~#dll~0.base, ~#dll~0.offset, 4);#res.base, #res.offset := #t~mem10.base, #t~mem10.offset;havoc #t~mem10.base, #t~mem10.offset;call ULTIMATE.dealloc(~#dll~0.base, ~#dll~0.offset);havoc ~#dll~0.base, ~#dll~0.offset; {5549#true} is VALID [2020-07-10 15:10:43,076 INFO L280 TraceCheckUtils]: 40: Hoare triple {5549#true} assume true; {5549#true} is VALID [2020-07-10 15:10:43,076 INFO L275 TraceCheckUtils]: 41: Hoare quadruple {5549#true} {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #540#return; {5549#true} is VALID [2020-07-10 15:10:43,079 INFO L263 TraceCheckUtils]: 0: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~ret11.base, #t~ret11.offset := dll_create_generic(#funAddr~dll_insert_slave.base, #funAddr~dll_insert_slave.offset); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,079 INFO L280 TraceCheckUtils]: 1: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~insert_fnc.base, ~insert_fnc.offset := #in~insert_fnc.base, #in~insert_fnc.offset;call ~#dll~0.base, ~#dll~0.offset := #Ultimate.allocOnStack(4);call write~init~$Pointer$(0, 0, ~#dll~0.base, ~#dll~0.offset, 4); {5549#true} is VALID [2020-07-10 15:10:43,081 INFO L263 TraceCheckUtils]: 2: Hoare triple {5549#true} call ##fun~$Pointer$~TO~VOID(~#dll~0.base, ~#dll~0.offset, ~insert_fnc.base, ~insert_fnc.offset); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,081 INFO L280 TraceCheckUtils]: 3: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {5549#true} is VALID [2020-07-10 15:10:43,081 INFO L280 TraceCheckUtils]: 4: Hoare triple {5549#true} assume !(#in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset); {5549#true} is VALID [2020-07-10 15:10:43,082 INFO L263 TraceCheckUtils]: 5: Hoare triple {5549#true} call dll_insert_slave(#~9.base, #~9.offset); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,083 INFO L280 TraceCheckUtils]: 6: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {5549#true} is VALID [2020-07-10 15:10:43,083 INFO L263 TraceCheckUtils]: 7: Hoare triple {5549#true} call #t~ret4.base, #t~ret4.offset := alloc_or_die_slave(); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,084 INFO L280 TraceCheckUtils]: 8: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {5549#true} is VALID [2020-07-10 15:10:43,084 INFO L280 TraceCheckUtils]: 9: Hoare triple {5549#true} assume !(~ptr~0.base == 0 && ~ptr~0.offset == 0); {5549#true} is VALID [2020-07-10 15:10:43,084 INFO L280 TraceCheckUtils]: 10: Hoare triple {5549#true} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {5549#true} is VALID [2020-07-10 15:10:43,084 INFO L280 TraceCheckUtils]: 11: Hoare triple {5549#true} assume true; {5549#true} is VALID [2020-07-10 15:10:43,085 INFO L275 TraceCheckUtils]: 12: Hoare quadruple {5549#true} {5549#true} #490#return; {5549#true} is VALID [2020-07-10 15:10:43,085 INFO L280 TraceCheckUtils]: 13: Hoare triple {5549#true} ~item~0.base, ~item~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~0.base, ~next~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset;call write~$Pointer$(~next~0.base, ~next~0.offset, ~item~0.base, ~item~0.offset, 4); {5549#true} is VALID [2020-07-10 15:10:43,085 INFO L280 TraceCheckUtils]: 14: Hoare triple {5549#true} assume !(~next~0.base != 0 || ~next~0.offset != 0); {5549#true} is VALID [2020-07-10 15:10:43,085 INFO L280 TraceCheckUtils]: 15: Hoare triple {5549#true} call write~$Pointer$(~item~0.base, ~item~0.offset, ~dll.base, ~dll.offset, 4); {5549#true} is VALID [2020-07-10 15:10:43,085 INFO L280 TraceCheckUtils]: 16: Hoare triple {5549#true} assume true; {5549#true} is VALID [2020-07-10 15:10:43,086 INFO L275 TraceCheckUtils]: 17: Hoare quadruple {5549#true} {5549#true} #514#return; {5549#true} is VALID [2020-07-10 15:10:43,086 INFO L280 TraceCheckUtils]: 18: Hoare triple {5549#true} assume true; {5549#true} is VALID [2020-07-10 15:10:43,086 INFO L275 TraceCheckUtils]: 19: Hoare quadruple {5549#true} {5549#true} #534#return; {5549#true} is VALID [2020-07-10 15:10:43,088 INFO L263 TraceCheckUtils]: 20: Hoare triple {5549#true} call ##fun~$Pointer$~TO~VOID(~#dll~0.base, ~#dll~0.offset, ~insert_fnc.base, ~insert_fnc.offset); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,088 INFO L280 TraceCheckUtils]: 21: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {5549#true} is VALID [2020-07-10 15:10:43,088 INFO L280 TraceCheckUtils]: 22: Hoare triple {5549#true} assume !(#in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset); {5549#true} is VALID [2020-07-10 15:10:43,089 INFO L263 TraceCheckUtils]: 23: Hoare triple {5549#true} call dll_insert_slave(#~9.base, #~9.offset); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,089 INFO L280 TraceCheckUtils]: 24: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {5549#true} is VALID [2020-07-10 15:10:43,090 INFO L263 TraceCheckUtils]: 25: Hoare triple {5549#true} call #t~ret4.base, #t~ret4.offset := alloc_or_die_slave(); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,091 INFO L280 TraceCheckUtils]: 26: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {5549#true} is VALID [2020-07-10 15:10:43,091 INFO L280 TraceCheckUtils]: 27: Hoare triple {5549#true} assume !(~ptr~0.base == 0 && ~ptr~0.offset == 0); {5549#true} is VALID [2020-07-10 15:10:43,091 INFO L280 TraceCheckUtils]: 28: Hoare triple {5549#true} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {5549#true} is VALID [2020-07-10 15:10:43,091 INFO L280 TraceCheckUtils]: 29: Hoare triple {5549#true} assume true; {5549#true} is VALID [2020-07-10 15:10:43,092 INFO L275 TraceCheckUtils]: 30: Hoare quadruple {5549#true} {5549#true} #490#return; {5549#true} is VALID [2020-07-10 15:10:43,092 INFO L280 TraceCheckUtils]: 31: Hoare triple {5549#true} ~item~0.base, ~item~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~0.base, ~next~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset;call write~$Pointer$(~next~0.base, ~next~0.offset, ~item~0.base, ~item~0.offset, 4); {5549#true} is VALID [2020-07-10 15:10:43,092 INFO L280 TraceCheckUtils]: 32: Hoare triple {5549#true} assume !(~next~0.base != 0 || ~next~0.offset != 0); {5549#true} is VALID [2020-07-10 15:10:43,092 INFO L280 TraceCheckUtils]: 33: Hoare triple {5549#true} call write~$Pointer$(~item~0.base, ~item~0.offset, ~dll.base, ~dll.offset, 4); {5549#true} is VALID [2020-07-10 15:10:43,092 INFO L280 TraceCheckUtils]: 34: Hoare triple {5549#true} assume true; {5549#true} is VALID [2020-07-10 15:10:43,093 INFO L275 TraceCheckUtils]: 35: Hoare quadruple {5549#true} {5549#true} #514#return; {5549#true} is VALID [2020-07-10 15:10:43,093 INFO L280 TraceCheckUtils]: 36: Hoare triple {5549#true} assume true; {5549#true} is VALID [2020-07-10 15:10:43,093 INFO L275 TraceCheckUtils]: 37: Hoare quadruple {5549#true} {5549#true} #536#return; {5549#true} is VALID [2020-07-10 15:10:43,093 INFO L280 TraceCheckUtils]: 38: Hoare triple {5549#true} assume -2147483648 <= #t~nondet8 && #t~nondet8 <= 2147483647; {5549#true} is VALID [2020-07-10 15:10:43,093 INFO L280 TraceCheckUtils]: 39: Hoare triple {5549#true} assume !(0 != #t~nondet8);havoc #t~nondet8; {5549#true} is VALID [2020-07-10 15:10:43,094 INFO L280 TraceCheckUtils]: 40: Hoare triple {5549#true} call #t~mem10.base, #t~mem10.offset := read~$Pointer$(~#dll~0.base, ~#dll~0.offset, 4);#res.base, #res.offset := #t~mem10.base, #t~mem10.offset;havoc #t~mem10.base, #t~mem10.offset;call ULTIMATE.dealloc(~#dll~0.base, ~#dll~0.offset);havoc ~#dll~0.base, ~#dll~0.offset; {5549#true} is VALID [2020-07-10 15:10:43,094 INFO L280 TraceCheckUtils]: 41: Hoare triple {5549#true} assume true; {5549#true} is VALID [2020-07-10 15:10:43,094 INFO L275 TraceCheckUtils]: 42: Hoare quadruple {5549#true} {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #540#return; {5549#true} is VALID [2020-07-10 15:10:43,094 INFO L280 TraceCheckUtils]: 43: Hoare triple {5549#true} #res.base, #res.offset := #t~ret11.base, #t~ret11.offset;havoc #t~ret11.base, #t~ret11.offset; {5549#true} is VALID [2020-07-10 15:10:43,094 INFO L280 TraceCheckUtils]: 44: Hoare triple {5549#true} assume true; {5549#true} is VALID [2020-07-10 15:10:43,095 INFO L275 TraceCheckUtils]: 45: Hoare quadruple {5549#true} {5549#true} #496#return; {5549#true} is VALID [2020-07-10 15:10:43,097 INFO L280 TraceCheckUtils]: 0: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {5549#true} is VALID [2020-07-10 15:10:43,098 INFO L263 TraceCheckUtils]: 1: Hoare triple {5549#true} call #t~ret17.base, #t~ret17.offset := alloc_or_die_master(); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,099 INFO L280 TraceCheckUtils]: 2: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc3.base, #t~malloc3.offset := #Ultimate.allocOnHeap(12);~ptr~1.base, ~ptr~1.offset := #t~malloc3.base, #t~malloc3.offset; {5549#true} is VALID [2020-07-10 15:10:43,099 INFO L280 TraceCheckUtils]: 3: Hoare triple {5549#true} assume !(~ptr~1.base == 0 && ~ptr~1.offset == 0); {5549#true} is VALID [2020-07-10 15:10:43,099 INFO L280 TraceCheckUtils]: 4: Hoare triple {5549#true} call write~$Pointer$(0, 0, ~ptr~1.base, ~ptr~1.offset, 4);call write~$Pointer$(0, 0, ~ptr~1.base, 4 + ~ptr~1.offset, 4);call write~$Pointer$(0, 0, ~ptr~1.base, 8 + ~ptr~1.offset, 4);#res.base, #res.offset := ~ptr~1.base, ~ptr~1.offset; {5549#true} is VALID [2020-07-10 15:10:43,099 INFO L280 TraceCheckUtils]: 5: Hoare triple {5549#true} assume true; {5549#true} is VALID [2020-07-10 15:10:43,100 INFO L275 TraceCheckUtils]: 6: Hoare quadruple {5549#true} {5549#true} #494#return; {5549#true} is VALID [2020-07-10 15:10:43,100 INFO L280 TraceCheckUtils]: 7: Hoare triple {5549#true} ~item~1.base, ~item~1.offset := #t~ret17.base, #t~ret17.offset;havoc #t~ret17.base, #t~ret17.offset;call #t~mem18.base, #t~mem18.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~3.base, ~next~3.offset := #t~mem18.base, #t~mem18.offset;havoc #t~mem18.base, #t~mem18.offset;call write~$Pointer$(~next~3.base, ~next~3.offset, ~item~1.base, ~item~1.offset, 4); {5549#true} is VALID [2020-07-10 15:10:43,100 INFO L280 TraceCheckUtils]: 8: Hoare triple {5549#true} assume ~next~3.base != 0 || ~next~3.offset != 0;call write~$Pointer$(~item~1.base, ~item~1.offset, ~next~3.base, 4 + ~next~3.offset, 4); {5549#true} is VALID [2020-07-10 15:10:43,101 INFO L263 TraceCheckUtils]: 9: Hoare triple {5549#true} call #t~ret19.base, #t~ret19.offset := dll_create_slave(); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,102 INFO L263 TraceCheckUtils]: 10: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~ret11.base, #t~ret11.offset := dll_create_generic(#funAddr~dll_insert_slave.base, #funAddr~dll_insert_slave.offset); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,102 INFO L280 TraceCheckUtils]: 11: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~insert_fnc.base, ~insert_fnc.offset := #in~insert_fnc.base, #in~insert_fnc.offset;call ~#dll~0.base, ~#dll~0.offset := #Ultimate.allocOnStack(4);call write~init~$Pointer$(0, 0, ~#dll~0.base, ~#dll~0.offset, 4); {5549#true} is VALID [2020-07-10 15:10:43,104 INFO L263 TraceCheckUtils]: 12: Hoare triple {5549#true} call ##fun~$Pointer$~TO~VOID(~#dll~0.base, ~#dll~0.offset, ~insert_fnc.base, ~insert_fnc.offset); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,104 INFO L280 TraceCheckUtils]: 13: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {5549#true} is VALID [2020-07-10 15:10:43,104 INFO L280 TraceCheckUtils]: 14: Hoare triple {5549#true} assume !(#in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset); {5549#true} is VALID [2020-07-10 15:10:43,105 INFO L263 TraceCheckUtils]: 15: Hoare triple {5549#true} call dll_insert_slave(#~9.base, #~9.offset); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,106 INFO L280 TraceCheckUtils]: 16: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {5549#true} is VALID [2020-07-10 15:10:43,106 INFO L263 TraceCheckUtils]: 17: Hoare triple {5549#true} call #t~ret4.base, #t~ret4.offset := alloc_or_die_slave(); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,107 INFO L280 TraceCheckUtils]: 18: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {5549#true} is VALID [2020-07-10 15:10:43,107 INFO L280 TraceCheckUtils]: 19: Hoare triple {5549#true} assume !(~ptr~0.base == 0 && ~ptr~0.offset == 0); {5549#true} is VALID [2020-07-10 15:10:43,107 INFO L280 TraceCheckUtils]: 20: Hoare triple {5549#true} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {5549#true} is VALID [2020-07-10 15:10:43,107 INFO L280 TraceCheckUtils]: 21: Hoare triple {5549#true} assume true; {5549#true} is VALID [2020-07-10 15:10:43,107 INFO L275 TraceCheckUtils]: 22: Hoare quadruple {5549#true} {5549#true} #490#return; {5549#true} is VALID [2020-07-10 15:10:43,108 INFO L280 TraceCheckUtils]: 23: Hoare triple {5549#true} ~item~0.base, ~item~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~0.base, ~next~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset;call write~$Pointer$(~next~0.base, ~next~0.offset, ~item~0.base, ~item~0.offset, 4); {5549#true} is VALID [2020-07-10 15:10:43,108 INFO L280 TraceCheckUtils]: 24: Hoare triple {5549#true} assume !(~next~0.base != 0 || ~next~0.offset != 0); {5549#true} is VALID [2020-07-10 15:10:43,108 INFO L280 TraceCheckUtils]: 25: Hoare triple {5549#true} call write~$Pointer$(~item~0.base, ~item~0.offset, ~dll.base, ~dll.offset, 4); {5549#true} is VALID [2020-07-10 15:10:43,108 INFO L280 TraceCheckUtils]: 26: Hoare triple {5549#true} assume true; {5549#true} is VALID [2020-07-10 15:10:43,108 INFO L275 TraceCheckUtils]: 27: Hoare quadruple {5549#true} {5549#true} #514#return; {5549#true} is VALID [2020-07-10 15:10:43,109 INFO L280 TraceCheckUtils]: 28: Hoare triple {5549#true} assume true; {5549#true} is VALID [2020-07-10 15:10:43,109 INFO L275 TraceCheckUtils]: 29: Hoare quadruple {5549#true} {5549#true} #534#return; {5549#true} is VALID [2020-07-10 15:10:43,110 INFO L263 TraceCheckUtils]: 30: Hoare triple {5549#true} call ##fun~$Pointer$~TO~VOID(~#dll~0.base, ~#dll~0.offset, ~insert_fnc.base, ~insert_fnc.offset); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,111 INFO L280 TraceCheckUtils]: 31: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {5549#true} is VALID [2020-07-10 15:10:43,111 INFO L280 TraceCheckUtils]: 32: Hoare triple {5549#true} assume !(#in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset); {5549#true} is VALID [2020-07-10 15:10:43,112 INFO L263 TraceCheckUtils]: 33: Hoare triple {5549#true} call dll_insert_slave(#~9.base, #~9.offset); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,113 INFO L280 TraceCheckUtils]: 34: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {5549#true} is VALID [2020-07-10 15:10:43,113 INFO L263 TraceCheckUtils]: 35: Hoare triple {5549#true} call #t~ret4.base, #t~ret4.offset := alloc_or_die_slave(); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,114 INFO L280 TraceCheckUtils]: 36: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {5549#true} is VALID [2020-07-10 15:10:43,114 INFO L280 TraceCheckUtils]: 37: Hoare triple {5549#true} assume !(~ptr~0.base == 0 && ~ptr~0.offset == 0); {5549#true} is VALID [2020-07-10 15:10:43,114 INFO L280 TraceCheckUtils]: 38: Hoare triple {5549#true} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {5549#true} is VALID [2020-07-10 15:10:43,114 INFO L280 TraceCheckUtils]: 39: Hoare triple {5549#true} assume true; {5549#true} is VALID [2020-07-10 15:10:43,114 INFO L275 TraceCheckUtils]: 40: Hoare quadruple {5549#true} {5549#true} #490#return; {5549#true} is VALID [2020-07-10 15:10:43,115 INFO L280 TraceCheckUtils]: 41: Hoare triple {5549#true} ~item~0.base, ~item~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~0.base, ~next~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset;call write~$Pointer$(~next~0.base, ~next~0.offset, ~item~0.base, ~item~0.offset, 4); {5549#true} is VALID [2020-07-10 15:10:43,115 INFO L280 TraceCheckUtils]: 42: Hoare triple {5549#true} assume !(~next~0.base != 0 || ~next~0.offset != 0); {5549#true} is VALID [2020-07-10 15:10:43,115 INFO L280 TraceCheckUtils]: 43: Hoare triple {5549#true} call write~$Pointer$(~item~0.base, ~item~0.offset, ~dll.base, ~dll.offset, 4); {5549#true} is VALID [2020-07-10 15:10:43,115 INFO L280 TraceCheckUtils]: 44: Hoare triple {5549#true} assume true; {5549#true} is VALID [2020-07-10 15:10:43,116 INFO L275 TraceCheckUtils]: 45: Hoare quadruple {5549#true} {5549#true} #514#return; {5549#true} is VALID [2020-07-10 15:10:43,116 INFO L280 TraceCheckUtils]: 46: Hoare triple {5549#true} assume true; {5549#true} is VALID [2020-07-10 15:10:43,116 INFO L275 TraceCheckUtils]: 47: Hoare quadruple {5549#true} {5549#true} #536#return; {5549#true} is VALID [2020-07-10 15:10:43,116 INFO L280 TraceCheckUtils]: 48: Hoare triple {5549#true} assume -2147483648 <= #t~nondet8 && #t~nondet8 <= 2147483647; {5549#true} is VALID [2020-07-10 15:10:43,116 INFO L280 TraceCheckUtils]: 49: Hoare triple {5549#true} assume !(0 != #t~nondet8);havoc #t~nondet8; {5549#true} is VALID [2020-07-10 15:10:43,117 INFO L280 TraceCheckUtils]: 50: Hoare triple {5549#true} call #t~mem10.base, #t~mem10.offset := read~$Pointer$(~#dll~0.base, ~#dll~0.offset, 4);#res.base, #res.offset := #t~mem10.base, #t~mem10.offset;havoc #t~mem10.base, #t~mem10.offset;call ULTIMATE.dealloc(~#dll~0.base, ~#dll~0.offset);havoc ~#dll~0.base, ~#dll~0.offset; {5549#true} is VALID [2020-07-10 15:10:43,117 INFO L280 TraceCheckUtils]: 51: Hoare triple {5549#true} assume true; {5549#true} is VALID [2020-07-10 15:10:43,117 INFO L275 TraceCheckUtils]: 52: Hoare quadruple {5549#true} {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #540#return; {5549#true} is VALID [2020-07-10 15:10:43,117 INFO L280 TraceCheckUtils]: 53: Hoare triple {5549#true} #res.base, #res.offset := #t~ret11.base, #t~ret11.offset;havoc #t~ret11.base, #t~ret11.offset; {5549#true} is VALID [2020-07-10 15:10:43,117 INFO L280 TraceCheckUtils]: 54: Hoare triple {5549#true} assume true; {5549#true} is VALID [2020-07-10 15:10:43,118 INFO L275 TraceCheckUtils]: 55: Hoare quadruple {5549#true} {5549#true} #496#return; {5549#true} is VALID [2020-07-10 15:10:43,118 INFO L280 TraceCheckUtils]: 56: Hoare triple {5549#true} call write~$Pointer$(#t~ret19.base, #t~ret19.offset, ~item~1.base, 8 + ~item~1.offset, 4);havoc #t~ret19.base, #t~ret19.offset;call write~$Pointer$(~item~1.base, ~item~1.offset, ~dll.base, ~dll.offset, 4); {5549#true} is VALID [2020-07-10 15:10:43,118 INFO L280 TraceCheckUtils]: 57: Hoare triple {5549#true} assume true; {5549#true} is VALID [2020-07-10 15:10:43,118 INFO L275 TraceCheckUtils]: 58: Hoare quadruple {5549#true} {5549#true} #512#return; {5549#true} is VALID [2020-07-10 15:10:43,122 INFO L280 TraceCheckUtils]: 0: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {5549#true} is VALID [2020-07-10 15:10:43,122 INFO L280 TraceCheckUtils]: 1: Hoare triple {5549#true} assume #in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset; {5549#true} is VALID [2020-07-10 15:10:43,124 INFO L263 TraceCheckUtils]: 2: Hoare triple {5549#true} call dll_insert_master(#~9.base, #~9.offset); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,124 INFO L280 TraceCheckUtils]: 3: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {5549#true} is VALID [2020-07-10 15:10:43,125 INFO L263 TraceCheckUtils]: 4: Hoare triple {5549#true} call #t~ret17.base, #t~ret17.offset := alloc_or_die_master(); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,125 INFO L280 TraceCheckUtils]: 5: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc3.base, #t~malloc3.offset := #Ultimate.allocOnHeap(12);~ptr~1.base, ~ptr~1.offset := #t~malloc3.base, #t~malloc3.offset; {5549#true} is VALID [2020-07-10 15:10:43,125 INFO L280 TraceCheckUtils]: 6: Hoare triple {5549#true} assume !(~ptr~1.base == 0 && ~ptr~1.offset == 0); {5549#true} is VALID [2020-07-10 15:10:43,125 INFO L280 TraceCheckUtils]: 7: Hoare triple {5549#true} call write~$Pointer$(0, 0, ~ptr~1.base, ~ptr~1.offset, 4);call write~$Pointer$(0, 0, ~ptr~1.base, 4 + ~ptr~1.offset, 4);call write~$Pointer$(0, 0, ~ptr~1.base, 8 + ~ptr~1.offset, 4);#res.base, #res.offset := ~ptr~1.base, ~ptr~1.offset; {5549#true} is VALID [2020-07-10 15:10:43,125 INFO L280 TraceCheckUtils]: 8: Hoare triple {5549#true} assume true; {5549#true} is VALID [2020-07-10 15:10:43,126 INFO L275 TraceCheckUtils]: 9: Hoare quadruple {5549#true} {5549#true} #494#return; {5549#true} is VALID [2020-07-10 15:10:43,126 INFO L280 TraceCheckUtils]: 10: Hoare triple {5549#true} ~item~1.base, ~item~1.offset := #t~ret17.base, #t~ret17.offset;havoc #t~ret17.base, #t~ret17.offset;call #t~mem18.base, #t~mem18.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~3.base, ~next~3.offset := #t~mem18.base, #t~mem18.offset;havoc #t~mem18.base, #t~mem18.offset;call write~$Pointer$(~next~3.base, ~next~3.offset, ~item~1.base, ~item~1.offset, 4); {5549#true} is VALID [2020-07-10 15:10:43,126 INFO L280 TraceCheckUtils]: 11: Hoare triple {5549#true} assume ~next~3.base != 0 || ~next~3.offset != 0;call write~$Pointer$(~item~1.base, ~item~1.offset, ~next~3.base, 4 + ~next~3.offset, 4); {5549#true} is VALID [2020-07-10 15:10:43,127 INFO L263 TraceCheckUtils]: 12: Hoare triple {5549#true} call #t~ret19.base, #t~ret19.offset := dll_create_slave(); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,128 INFO L263 TraceCheckUtils]: 13: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~ret11.base, #t~ret11.offset := dll_create_generic(#funAddr~dll_insert_slave.base, #funAddr~dll_insert_slave.offset); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,128 INFO L280 TraceCheckUtils]: 14: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~insert_fnc.base, ~insert_fnc.offset := #in~insert_fnc.base, #in~insert_fnc.offset;call ~#dll~0.base, ~#dll~0.offset := #Ultimate.allocOnStack(4);call write~init~$Pointer$(0, 0, ~#dll~0.base, ~#dll~0.offset, 4); {5549#true} is VALID [2020-07-10 15:10:43,130 INFO L263 TraceCheckUtils]: 15: Hoare triple {5549#true} call ##fun~$Pointer$~TO~VOID(~#dll~0.base, ~#dll~0.offset, ~insert_fnc.base, ~insert_fnc.offset); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,130 INFO L280 TraceCheckUtils]: 16: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {5549#true} is VALID [2020-07-10 15:10:43,130 INFO L280 TraceCheckUtils]: 17: Hoare triple {5549#true} assume !(#in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset); {5549#true} is VALID [2020-07-10 15:10:43,132 INFO L263 TraceCheckUtils]: 18: Hoare triple {5549#true} call dll_insert_slave(#~9.base, #~9.offset); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,132 INFO L280 TraceCheckUtils]: 19: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {5549#true} is VALID [2020-07-10 15:10:43,133 INFO L263 TraceCheckUtils]: 20: Hoare triple {5549#true} call #t~ret4.base, #t~ret4.offset := alloc_or_die_slave(); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,133 INFO L280 TraceCheckUtils]: 21: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {5549#true} is VALID [2020-07-10 15:10:43,133 INFO L280 TraceCheckUtils]: 22: Hoare triple {5549#true} assume !(~ptr~0.base == 0 && ~ptr~0.offset == 0); {5549#true} is VALID [2020-07-10 15:10:43,133 INFO L280 TraceCheckUtils]: 23: Hoare triple {5549#true} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {5549#true} is VALID [2020-07-10 15:10:43,134 INFO L280 TraceCheckUtils]: 24: Hoare triple {5549#true} assume true; {5549#true} is VALID [2020-07-10 15:10:43,134 INFO L275 TraceCheckUtils]: 25: Hoare quadruple {5549#true} {5549#true} #490#return; {5549#true} is VALID [2020-07-10 15:10:43,134 INFO L280 TraceCheckUtils]: 26: Hoare triple {5549#true} ~item~0.base, ~item~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~0.base, ~next~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset;call write~$Pointer$(~next~0.base, ~next~0.offset, ~item~0.base, ~item~0.offset, 4); {5549#true} is VALID [2020-07-10 15:10:43,134 INFO L280 TraceCheckUtils]: 27: Hoare triple {5549#true} assume !(~next~0.base != 0 || ~next~0.offset != 0); {5549#true} is VALID [2020-07-10 15:10:43,134 INFO L280 TraceCheckUtils]: 28: Hoare triple {5549#true} call write~$Pointer$(~item~0.base, ~item~0.offset, ~dll.base, ~dll.offset, 4); {5549#true} is VALID [2020-07-10 15:10:43,135 INFO L280 TraceCheckUtils]: 29: Hoare triple {5549#true} assume true; {5549#true} is VALID [2020-07-10 15:10:43,135 INFO L275 TraceCheckUtils]: 30: Hoare quadruple {5549#true} {5549#true} #514#return; {5549#true} is VALID [2020-07-10 15:10:43,135 INFO L280 TraceCheckUtils]: 31: Hoare triple {5549#true} assume true; {5549#true} is VALID [2020-07-10 15:10:43,135 INFO L275 TraceCheckUtils]: 32: Hoare quadruple {5549#true} {5549#true} #534#return; {5549#true} is VALID [2020-07-10 15:10:43,137 INFO L263 TraceCheckUtils]: 33: Hoare triple {5549#true} call ##fun~$Pointer$~TO~VOID(~#dll~0.base, ~#dll~0.offset, ~insert_fnc.base, ~insert_fnc.offset); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,137 INFO L280 TraceCheckUtils]: 34: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {5549#true} is VALID [2020-07-10 15:10:43,137 INFO L280 TraceCheckUtils]: 35: Hoare triple {5549#true} assume !(#in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset); {5549#true} is VALID [2020-07-10 15:10:43,139 INFO L263 TraceCheckUtils]: 36: Hoare triple {5549#true} call dll_insert_slave(#~9.base, #~9.offset); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,139 INFO L280 TraceCheckUtils]: 37: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {5549#true} is VALID [2020-07-10 15:10:43,140 INFO L263 TraceCheckUtils]: 38: Hoare triple {5549#true} call #t~ret4.base, #t~ret4.offset := alloc_or_die_slave(); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,140 INFO L280 TraceCheckUtils]: 39: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {5549#true} is VALID [2020-07-10 15:10:43,140 INFO L280 TraceCheckUtils]: 40: Hoare triple {5549#true} assume !(~ptr~0.base == 0 && ~ptr~0.offset == 0); {5549#true} is VALID [2020-07-10 15:10:43,140 INFO L280 TraceCheckUtils]: 41: Hoare triple {5549#true} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {5549#true} is VALID [2020-07-10 15:10:43,141 INFO L280 TraceCheckUtils]: 42: Hoare triple {5549#true} assume true; {5549#true} is VALID [2020-07-10 15:10:43,141 INFO L275 TraceCheckUtils]: 43: Hoare quadruple {5549#true} {5549#true} #490#return; {5549#true} is VALID [2020-07-10 15:10:43,141 INFO L280 TraceCheckUtils]: 44: Hoare triple {5549#true} ~item~0.base, ~item~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~0.base, ~next~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset;call write~$Pointer$(~next~0.base, ~next~0.offset, ~item~0.base, ~item~0.offset, 4); {5549#true} is VALID [2020-07-10 15:10:43,141 INFO L280 TraceCheckUtils]: 45: Hoare triple {5549#true} assume !(~next~0.base != 0 || ~next~0.offset != 0); {5549#true} is VALID [2020-07-10 15:10:43,141 INFO L280 TraceCheckUtils]: 46: Hoare triple {5549#true} call write~$Pointer$(~item~0.base, ~item~0.offset, ~dll.base, ~dll.offset, 4); {5549#true} is VALID [2020-07-10 15:10:43,142 INFO L280 TraceCheckUtils]: 47: Hoare triple {5549#true} assume true; {5549#true} is VALID [2020-07-10 15:10:43,142 INFO L275 TraceCheckUtils]: 48: Hoare quadruple {5549#true} {5549#true} #514#return; {5549#true} is VALID [2020-07-10 15:10:43,142 INFO L280 TraceCheckUtils]: 49: Hoare triple {5549#true} assume true; {5549#true} is VALID [2020-07-10 15:10:43,142 INFO L275 TraceCheckUtils]: 50: Hoare quadruple {5549#true} {5549#true} #536#return; {5549#true} is VALID [2020-07-10 15:10:43,142 INFO L280 TraceCheckUtils]: 51: Hoare triple {5549#true} assume -2147483648 <= #t~nondet8 && #t~nondet8 <= 2147483647; {5549#true} is VALID [2020-07-10 15:10:43,143 INFO L280 TraceCheckUtils]: 52: Hoare triple {5549#true} assume !(0 != #t~nondet8);havoc #t~nondet8; {5549#true} is VALID [2020-07-10 15:10:43,143 INFO L280 TraceCheckUtils]: 53: Hoare triple {5549#true} call #t~mem10.base, #t~mem10.offset := read~$Pointer$(~#dll~0.base, ~#dll~0.offset, 4);#res.base, #res.offset := #t~mem10.base, #t~mem10.offset;havoc #t~mem10.base, #t~mem10.offset;call ULTIMATE.dealloc(~#dll~0.base, ~#dll~0.offset);havoc ~#dll~0.base, ~#dll~0.offset; {5549#true} is VALID [2020-07-10 15:10:43,143 INFO L280 TraceCheckUtils]: 54: Hoare triple {5549#true} assume true; {5549#true} is VALID [2020-07-10 15:10:43,143 INFO L275 TraceCheckUtils]: 55: Hoare quadruple {5549#true} {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #540#return; {5549#true} is VALID [2020-07-10 15:10:43,143 INFO L280 TraceCheckUtils]: 56: Hoare triple {5549#true} #res.base, #res.offset := #t~ret11.base, #t~ret11.offset;havoc #t~ret11.base, #t~ret11.offset; {5549#true} is VALID [2020-07-10 15:10:43,144 INFO L280 TraceCheckUtils]: 57: Hoare triple {5549#true} assume true; {5549#true} is VALID [2020-07-10 15:10:43,144 INFO L275 TraceCheckUtils]: 58: Hoare quadruple {5549#true} {5549#true} #496#return; {5549#true} is VALID [2020-07-10 15:10:43,144 INFO L280 TraceCheckUtils]: 59: Hoare triple {5549#true} call write~$Pointer$(#t~ret19.base, #t~ret19.offset, ~item~1.base, 8 + ~item~1.offset, 4);havoc #t~ret19.base, #t~ret19.offset;call write~$Pointer$(~item~1.base, ~item~1.offset, ~dll.base, ~dll.offset, 4); {5549#true} is VALID [2020-07-10 15:10:43,144 INFO L280 TraceCheckUtils]: 60: Hoare triple {5549#true} assume true; {5549#true} is VALID [2020-07-10 15:10:43,144 INFO L275 TraceCheckUtils]: 61: Hoare quadruple {5549#true} {5549#true} #512#return; {5549#true} is VALID [2020-07-10 15:10:43,145 INFO L280 TraceCheckUtils]: 62: Hoare triple {5549#true} assume true; {5549#true} is VALID [2020-07-10 15:10:43,145 INFO L275 TraceCheckUtils]: 63: Hoare quadruple {5549#true} {5550#false} #536#return; {5550#false} is VALID [2020-07-10 15:10:43,149 INFO L280 TraceCheckUtils]: 0: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~insert_fnc.base, ~insert_fnc.offset := #in~insert_fnc.base, #in~insert_fnc.offset;call ~#dll~0.base, ~#dll~0.offset := #Ultimate.allocOnStack(4);call write~init~$Pointer$(0, 0, ~#dll~0.base, ~#dll~0.offset, 4); {5549#true} is VALID [2020-07-10 15:10:43,151 INFO L263 TraceCheckUtils]: 1: Hoare triple {5549#true} call ##fun~$Pointer$~TO~VOID(~#dll~0.base, ~#dll~0.offset, ~insert_fnc.base, ~insert_fnc.offset); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,151 INFO L280 TraceCheckUtils]: 2: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {5549#true} is VALID [2020-07-10 15:10:43,151 INFO L280 TraceCheckUtils]: 3: Hoare triple {5549#true} assume #in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset; {5549#true} is VALID [2020-07-10 15:10:43,152 INFO L263 TraceCheckUtils]: 4: Hoare triple {5549#true} call dll_insert_master(#~9.base, #~9.offset); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,152 INFO L280 TraceCheckUtils]: 5: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {5549#true} is VALID [2020-07-10 15:10:43,153 INFO L263 TraceCheckUtils]: 6: Hoare triple {5549#true} call #t~ret17.base, #t~ret17.offset := alloc_or_die_master(); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,153 INFO L280 TraceCheckUtils]: 7: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc3.base, #t~malloc3.offset := #Ultimate.allocOnHeap(12);~ptr~1.base, ~ptr~1.offset := #t~malloc3.base, #t~malloc3.offset; {5549#true} is VALID [2020-07-10 15:10:43,154 INFO L280 TraceCheckUtils]: 8: Hoare triple {5549#true} assume !(~ptr~1.base == 0 && ~ptr~1.offset == 0); {5549#true} is VALID [2020-07-10 15:10:43,154 INFO L280 TraceCheckUtils]: 9: Hoare triple {5549#true} call write~$Pointer$(0, 0, ~ptr~1.base, ~ptr~1.offset, 4);call write~$Pointer$(0, 0, ~ptr~1.base, 4 + ~ptr~1.offset, 4);call write~$Pointer$(0, 0, ~ptr~1.base, 8 + ~ptr~1.offset, 4);#res.base, #res.offset := ~ptr~1.base, ~ptr~1.offset; {5549#true} is VALID [2020-07-10 15:10:43,154 INFO L280 TraceCheckUtils]: 10: Hoare triple {5549#true} assume true; {5549#true} is VALID [2020-07-10 15:10:43,154 INFO L275 TraceCheckUtils]: 11: Hoare quadruple {5549#true} {5549#true} #494#return; {5549#true} is VALID [2020-07-10 15:10:43,154 INFO L280 TraceCheckUtils]: 12: Hoare triple {5549#true} ~item~1.base, ~item~1.offset := #t~ret17.base, #t~ret17.offset;havoc #t~ret17.base, #t~ret17.offset;call #t~mem18.base, #t~mem18.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~3.base, ~next~3.offset := #t~mem18.base, #t~mem18.offset;havoc #t~mem18.base, #t~mem18.offset;call write~$Pointer$(~next~3.base, ~next~3.offset, ~item~1.base, ~item~1.offset, 4); {5549#true} is VALID [2020-07-10 15:10:43,155 INFO L280 TraceCheckUtils]: 13: Hoare triple {5549#true} assume !(~next~3.base != 0 || ~next~3.offset != 0); {5549#true} is VALID [2020-07-10 15:10:43,155 INFO L263 TraceCheckUtils]: 14: Hoare triple {5549#true} call #t~ret19.base, #t~ret19.offset := dll_create_slave(); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,157 INFO L263 TraceCheckUtils]: 15: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~ret11.base, #t~ret11.offset := dll_create_generic(#funAddr~dll_insert_slave.base, #funAddr~dll_insert_slave.offset); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,158 INFO L280 TraceCheckUtils]: 16: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~insert_fnc.base, ~insert_fnc.offset := #in~insert_fnc.base, #in~insert_fnc.offset;call ~#dll~0.base, ~#dll~0.offset := #Ultimate.allocOnStack(4);call write~init~$Pointer$(0, 0, ~#dll~0.base, ~#dll~0.offset, 4); {6112#(<= (+ |#StackHeapBarrier| 1) |dll_create_generic_~#dll~0.base|)} is VALID [2020-07-10 15:10:43,160 INFO L263 TraceCheckUtils]: 17: Hoare triple {6112#(<= (+ |#StackHeapBarrier| 1) |dll_create_generic_~#dll~0.base|)} call ##fun~$Pointer$~TO~VOID(~#dll~0.base, ~#dll~0.offset, ~insert_fnc.base, ~insert_fnc.offset); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,161 INFO L280 TraceCheckUtils]: 18: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {6148#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|))} is VALID [2020-07-10 15:10:43,161 INFO L280 TraceCheckUtils]: 19: Hoare triple {6148#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|))} assume !(#in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset); {6148#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|))} is VALID [2020-07-10 15:10:43,163 INFO L263 TraceCheckUtils]: 20: Hoare triple {6148#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|))} call dll_insert_slave(#~9.base, #~9.offset); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,164 INFO L280 TraceCheckUtils]: 21: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {6162#(and (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|))} is VALID [2020-07-10 15:10:43,165 INFO L263 TraceCheckUtils]: 22: Hoare triple {6162#(and (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|))} call #t~ret4.base, #t~ret4.offset := alloc_or_die_slave(); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,166 INFO L280 TraceCheckUtils]: 23: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {6171#(or (<= (+ alloc_or_die_slave_~ptr~0.base 1) 0) (<= 1 alloc_or_die_slave_~ptr~0.base))} is VALID [2020-07-10 15:10:43,167 INFO L280 TraceCheckUtils]: 24: Hoare triple {6171#(or (<= (+ alloc_or_die_slave_~ptr~0.base 1) 0) (<= 1 alloc_or_die_slave_~ptr~0.base))} assume !(~ptr~0.base == 0 && ~ptr~0.offset == 0); {6171#(or (<= (+ alloc_or_die_slave_~ptr~0.base 1) 0) (<= 1 alloc_or_die_slave_~ptr~0.base))} is VALID [2020-07-10 15:10:43,168 INFO L280 TraceCheckUtils]: 25: Hoare triple {6171#(or (<= (+ alloc_or_die_slave_~ptr~0.base 1) 0) (<= 1 alloc_or_die_slave_~ptr~0.base))} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {6172#(or (<= (+ |alloc_or_die_slave_#res.base| 1) 0) (<= 1 |alloc_or_die_slave_#res.base|))} is VALID [2020-07-10 15:10:43,168 INFO L280 TraceCheckUtils]: 26: Hoare triple {6172#(or (<= (+ |alloc_or_die_slave_#res.base| 1) 0) (<= 1 |alloc_or_die_slave_#res.base|))} assume true; {6172#(or (<= (+ |alloc_or_die_slave_#res.base| 1) 0) (<= 1 |alloc_or_die_slave_#res.base|))} is VALID [2020-07-10 15:10:43,170 INFO L275 TraceCheckUtils]: 27: Hoare quadruple {6172#(or (<= (+ |alloc_or_die_slave_#res.base| 1) 0) (<= 1 |alloc_or_die_slave_#res.base|))} {6162#(and (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|))} #490#return; {6168#(and (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|) (not (= 0 |dll_insert_slave_#t~ret4.base|)))} is VALID [2020-07-10 15:10:43,171 INFO L280 TraceCheckUtils]: 28: Hoare triple {6168#(and (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|) (not (= 0 |dll_insert_slave_#t~ret4.base|)))} ~item~0.base, ~item~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~0.base, ~next~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset;call write~$Pointer$(~next~0.base, ~next~0.offset, ~item~0.base, ~item~0.offset, 4); {6169#(and (not (= 0 dll_insert_slave_~item~0.base)) (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|))} is VALID [2020-07-10 15:10:43,171 INFO L280 TraceCheckUtils]: 29: Hoare triple {6169#(and (not (= 0 dll_insert_slave_~item~0.base)) (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|))} assume !(~next~0.base != 0 || ~next~0.offset != 0); {6169#(and (not (= 0 dll_insert_slave_~item~0.base)) (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|))} is VALID [2020-07-10 15:10:43,173 INFO L280 TraceCheckUtils]: 30: Hoare triple {6169#(and (not (= 0 dll_insert_slave_~item~0.base)) (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|))} call write~$Pointer$(~item~0.base, ~item~0.offset, ~dll.base, ~dll.offset, 4); {6170#(not (= 0 (select (select |#memory_$Pointer$.base| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|)))} is VALID [2020-07-10 15:10:43,173 INFO L280 TraceCheckUtils]: 31: Hoare triple {6170#(not (= 0 (select (select |#memory_$Pointer$.base| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|)))} assume true; {6170#(not (= 0 (select (select |#memory_$Pointer$.base| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|)))} is VALID [2020-07-10 15:10:43,175 INFO L275 TraceCheckUtils]: 32: Hoare quadruple {6170#(not (= 0 (select (select |#memory_$Pointer$.base| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|)))} {6148#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|))} #514#return; {6161#(not (= 0 (select (select |#memory_$Pointer$.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|)))} is VALID [2020-07-10 15:10:43,175 INFO L280 TraceCheckUtils]: 33: Hoare triple {6161#(not (= 0 (select (select |#memory_$Pointer$.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|)))} assume true; {6161#(not (= 0 (select (select |#memory_$Pointer$.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|)))} is VALID [2020-07-10 15:10:43,177 INFO L275 TraceCheckUtils]: 34: Hoare quadruple {6161#(not (= 0 (select (select |#memory_$Pointer$.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|)))} {6112#(<= (+ |#StackHeapBarrier| 1) |dll_create_generic_~#dll~0.base|)} #534#return; {6130#(and (<= (+ |#StackHeapBarrier| 1) |dll_create_generic_~#dll~0.base|) (not (= 0 (select (select |#memory_$Pointer$.base| |dll_create_generic_~#dll~0.base|) |dll_create_generic_~#dll~0.offset|))))} is VALID [2020-07-10 15:10:43,179 INFO L263 TraceCheckUtils]: 35: Hoare triple {6130#(and (<= (+ |#StackHeapBarrier| 1) |dll_create_generic_~#dll~0.base|) (not (= 0 (select (select |#memory_$Pointer$.base| |dll_create_generic_~#dll~0.base|) |dll_create_generic_~#dll~0.offset|))))} call ##fun~$Pointer$~TO~VOID(~#dll~0.base, ~#dll~0.offset, ~insert_fnc.base, ~insert_fnc.offset); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,180 INFO L280 TraceCheckUtils]: 36: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {6173#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|))} is VALID [2020-07-10 15:10:43,181 INFO L280 TraceCheckUtils]: 37: Hoare triple {6173#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|))} assume !(#in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset); {6173#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|))} is VALID [2020-07-10 15:10:43,183 INFO L263 TraceCheckUtils]: 38: Hoare triple {6173#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|))} call dll_insert_slave(#~9.base, #~9.offset); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,183 INFO L280 TraceCheckUtils]: 39: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {6187#(and (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|) (= (select |#memory_$Pointer$.base| dll_insert_slave_~dll.base) (select |old(#memory_$Pointer$.base)| dll_insert_slave_~dll.base)))} is VALID [2020-07-10 15:10:43,185 INFO L263 TraceCheckUtils]: 40: Hoare triple {6187#(and (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|) (= (select |#memory_$Pointer$.base| dll_insert_slave_~dll.base) (select |old(#memory_$Pointer$.base)| dll_insert_slave_~dll.base)))} call #t~ret4.base, #t~ret4.offset := alloc_or_die_slave(); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,186 INFO L280 TraceCheckUtils]: 41: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {6196#(and (<= (+ alloc_or_die_slave_~ptr~0.base 1) |#StackHeapBarrier|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|))} is VALID [2020-07-10 15:10:43,187 INFO L280 TraceCheckUtils]: 42: Hoare triple {6196#(and (<= (+ alloc_or_die_slave_~ptr~0.base 1) |#StackHeapBarrier|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|))} assume !(~ptr~0.base == 0 && ~ptr~0.offset == 0); {6196#(and (<= (+ alloc_or_die_slave_~ptr~0.base 1) |#StackHeapBarrier|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|))} is VALID [2020-07-10 15:10:43,189 INFO L280 TraceCheckUtils]: 43: Hoare triple {6196#(and (<= (+ alloc_or_die_slave_~ptr~0.base 1) |#StackHeapBarrier|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|))} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {6197#(and (= |#memory_$Pointer$.base| (store |old(#memory_$Pointer$.base)| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) (select |#memory_$Pointer$.base| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|)))) (or (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (<= (+ (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) 1) |#StackHeapBarrier|)))} is VALID [2020-07-10 15:10:43,191 INFO L280 TraceCheckUtils]: 44: Hoare triple {6197#(and (= |#memory_$Pointer$.base| (store |old(#memory_$Pointer$.base)| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) (select |#memory_$Pointer$.base| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|)))) (or (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (<= (+ (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) 1) |#StackHeapBarrier|)))} assume true; {6197#(and (= |#memory_$Pointer$.base| (store |old(#memory_$Pointer$.base)| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) (select |#memory_$Pointer$.base| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|)))) (or (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (<= (+ (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) 1) |#StackHeapBarrier|)))} is VALID [2020-07-10 15:10:43,193 INFO L275 TraceCheckUtils]: 45: Hoare quadruple {6197#(and (= |#memory_$Pointer$.base| (store |old(#memory_$Pointer$.base)| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) (select |#memory_$Pointer$.base| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|)))) (or (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (<= (+ (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) 1) |#StackHeapBarrier|)))} {6187#(and (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|) (= (select |#memory_$Pointer$.base| dll_insert_slave_~dll.base) (select |old(#memory_$Pointer$.base)| dll_insert_slave_~dll.base)))} #490#return; {6193#(and (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|) (or (<= (+ dll_insert_slave_~dll.base 1) |#StackHeapBarrier|) (= (select |#memory_$Pointer$.base| dll_insert_slave_~dll.base) (select |old(#memory_$Pointer$.base)| dll_insert_slave_~dll.base))))} is VALID [2020-07-10 15:10:43,195 INFO L280 TraceCheckUtils]: 46: Hoare triple {6193#(and (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|) (or (<= (+ dll_insert_slave_~dll.base 1) |#StackHeapBarrier|) (= (select |#memory_$Pointer$.base| dll_insert_slave_~dll.base) (select |old(#memory_$Pointer$.base)| dll_insert_slave_~dll.base))))} ~item~0.base, ~item~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~0.base, ~next~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset;call write~$Pointer$(~next~0.base, ~next~0.offset, ~item~0.base, ~item~0.offset, 4); {6194#(or (= (select (select |old(#memory_$Pointer$.base)| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|) dll_insert_slave_~next~0.base) (<= (+ |dll_insert_slave_#in~dll.base| 1) |#StackHeapBarrier|))} is VALID [2020-07-10 15:10:43,196 INFO L280 TraceCheckUtils]: 47: Hoare triple {6194#(or (= (select (select |old(#memory_$Pointer$.base)| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|) dll_insert_slave_~next~0.base) (<= (+ |dll_insert_slave_#in~dll.base| 1) |#StackHeapBarrier|))} assume !(~next~0.base != 0 || ~next~0.offset != 0); {6195#(or (= 0 (select (select |old(#memory_$Pointer$.base)| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|)) (<= (+ |dll_insert_slave_#in~dll.base| 1) |#StackHeapBarrier|))} is VALID [2020-07-10 15:10:43,196 INFO L280 TraceCheckUtils]: 48: Hoare triple {6195#(or (= 0 (select (select |old(#memory_$Pointer$.base)| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|)) (<= (+ |dll_insert_slave_#in~dll.base| 1) |#StackHeapBarrier|))} call write~$Pointer$(~item~0.base, ~item~0.offset, ~dll.base, ~dll.offset, 4); {6195#(or (= 0 (select (select |old(#memory_$Pointer$.base)| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|)) (<= (+ |dll_insert_slave_#in~dll.base| 1) |#StackHeapBarrier|))} is VALID [2020-07-10 15:10:43,197 INFO L280 TraceCheckUtils]: 49: Hoare triple {6195#(or (= 0 (select (select |old(#memory_$Pointer$.base)| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|)) (<= (+ |dll_insert_slave_#in~dll.base| 1) |#StackHeapBarrier|))} assume true; {6195#(or (= 0 (select (select |old(#memory_$Pointer$.base)| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|)) (<= (+ |dll_insert_slave_#in~dll.base| 1) |#StackHeapBarrier|))} is VALID [2020-07-10 15:10:43,199 INFO L275 TraceCheckUtils]: 50: Hoare quadruple {6195#(or (= 0 (select (select |old(#memory_$Pointer$.base)| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|)) (<= (+ |dll_insert_slave_#in~dll.base| 1) |#StackHeapBarrier|))} {6173#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|))} #514#return; {6186#(or (<= (+ |##fun~$Pointer$~TO~VOID_#in~9.base| 1) |#StackHeapBarrier|) (= 0 (select (select |old(#memory_$Pointer$.base)| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|)))} is VALID [2020-07-10 15:10:43,199 INFO L280 TraceCheckUtils]: 51: Hoare triple {6186#(or (<= (+ |##fun~$Pointer$~TO~VOID_#in~9.base| 1) |#StackHeapBarrier|) (= 0 (select (select |old(#memory_$Pointer$.base)| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|)))} assume true; {6186#(or (<= (+ |##fun~$Pointer$~TO~VOID_#in~9.base| 1) |#StackHeapBarrier|) (= 0 (select (select |old(#memory_$Pointer$.base)| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|)))} is VALID [2020-07-10 15:10:43,201 INFO L275 TraceCheckUtils]: 52: Hoare quadruple {6186#(or (<= (+ |##fun~$Pointer$~TO~VOID_#in~9.base| 1) |#StackHeapBarrier|) (= 0 (select (select |old(#memory_$Pointer$.base)| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|)))} {6130#(and (<= (+ |#StackHeapBarrier| 1) |dll_create_generic_~#dll~0.base|) (not (= 0 (select (select |#memory_$Pointer$.base| |dll_create_generic_~#dll~0.base|) |dll_create_generic_~#dll~0.offset|))))} #536#return; {5550#false} is VALID [2020-07-10 15:10:43,202 INFO L280 TraceCheckUtils]: 53: Hoare triple {5550#false} assume -2147483648 <= #t~nondet8 && #t~nondet8 <= 2147483647; {5550#false} is VALID [2020-07-10 15:10:43,202 INFO L280 TraceCheckUtils]: 54: Hoare triple {5550#false} assume !(0 != #t~nondet8);havoc #t~nondet8; {5550#false} is VALID [2020-07-10 15:10:43,202 INFO L280 TraceCheckUtils]: 55: Hoare triple {5550#false} call #t~mem10.base, #t~mem10.offset := read~$Pointer$(~#dll~0.base, ~#dll~0.offset, 4);#res.base, #res.offset := #t~mem10.base, #t~mem10.offset;havoc #t~mem10.base, #t~mem10.offset;call ULTIMATE.dealloc(~#dll~0.base, ~#dll~0.offset);havoc ~#dll~0.base, ~#dll~0.offset; {5550#false} is VALID [2020-07-10 15:10:43,202 INFO L280 TraceCheckUtils]: 56: Hoare triple {5550#false} assume true; {5550#false} is VALID [2020-07-10 15:10:43,202 INFO L275 TraceCheckUtils]: 57: Hoare quadruple {5550#false} {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #540#return; {5550#false} is VALID [2020-07-10 15:10:43,203 INFO L280 TraceCheckUtils]: 58: Hoare triple {5550#false} #res.base, #res.offset := #t~ret11.base, #t~ret11.offset;havoc #t~ret11.base, #t~ret11.offset; {5550#false} is VALID [2020-07-10 15:10:43,203 INFO L280 TraceCheckUtils]: 59: Hoare triple {5550#false} assume true; {5550#false} is VALID [2020-07-10 15:10:43,203 INFO L275 TraceCheckUtils]: 60: Hoare quadruple {5550#false} {5549#true} #496#return; {5550#false} is VALID [2020-07-10 15:10:43,203 INFO L280 TraceCheckUtils]: 61: Hoare triple {5550#false} call write~$Pointer$(#t~ret19.base, #t~ret19.offset, ~item~1.base, 8 + ~item~1.offset, 4);havoc #t~ret19.base, #t~ret19.offset;call write~$Pointer$(~item~1.base, ~item~1.offset, ~dll.base, ~dll.offset, 4); {5550#false} is VALID [2020-07-10 15:10:43,203 INFO L280 TraceCheckUtils]: 62: Hoare triple {5550#false} assume true; {5550#false} is VALID [2020-07-10 15:10:43,204 INFO L275 TraceCheckUtils]: 63: Hoare quadruple {5550#false} {5549#true} #512#return; {5550#false} is VALID [2020-07-10 15:10:43,204 INFO L280 TraceCheckUtils]: 64: Hoare triple {5550#false} assume true; {5550#false} is VALID [2020-07-10 15:10:43,204 INFO L275 TraceCheckUtils]: 65: Hoare quadruple {5550#false} {5549#true} #534#return; {5550#false} is VALID [2020-07-10 15:10:43,204 INFO L263 TraceCheckUtils]: 66: Hoare triple {5550#false} call ##fun~$Pointer$~TO~VOID(~#dll~0.base, ~#dll~0.offset, ~insert_fnc.base, ~insert_fnc.offset); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,204 INFO L280 TraceCheckUtils]: 67: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {5549#true} is VALID [2020-07-10 15:10:43,205 INFO L280 TraceCheckUtils]: 68: Hoare triple {5549#true} assume #in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset; {5549#true} is VALID [2020-07-10 15:10:43,206 INFO L263 TraceCheckUtils]: 69: Hoare triple {5549#true} call dll_insert_master(#~9.base, #~9.offset); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,206 INFO L280 TraceCheckUtils]: 70: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {5549#true} is VALID [2020-07-10 15:10:43,207 INFO L263 TraceCheckUtils]: 71: Hoare triple {5549#true} call #t~ret17.base, #t~ret17.offset := alloc_or_die_master(); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,207 INFO L280 TraceCheckUtils]: 72: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc3.base, #t~malloc3.offset := #Ultimate.allocOnHeap(12);~ptr~1.base, ~ptr~1.offset := #t~malloc3.base, #t~malloc3.offset; {5549#true} is VALID [2020-07-10 15:10:43,208 INFO L280 TraceCheckUtils]: 73: Hoare triple {5549#true} assume !(~ptr~1.base == 0 && ~ptr~1.offset == 0); {5549#true} is VALID [2020-07-10 15:10:43,208 INFO L280 TraceCheckUtils]: 74: Hoare triple {5549#true} call write~$Pointer$(0, 0, ~ptr~1.base, ~ptr~1.offset, 4);call write~$Pointer$(0, 0, ~ptr~1.base, 4 + ~ptr~1.offset, 4);call write~$Pointer$(0, 0, ~ptr~1.base, 8 + ~ptr~1.offset, 4);#res.base, #res.offset := ~ptr~1.base, ~ptr~1.offset; {5549#true} is VALID [2020-07-10 15:10:43,208 INFO L280 TraceCheckUtils]: 75: Hoare triple {5549#true} assume true; {5549#true} is VALID [2020-07-10 15:10:43,208 INFO L275 TraceCheckUtils]: 76: Hoare quadruple {5549#true} {5549#true} #494#return; {5549#true} is VALID [2020-07-10 15:10:43,208 INFO L280 TraceCheckUtils]: 77: Hoare triple {5549#true} ~item~1.base, ~item~1.offset := #t~ret17.base, #t~ret17.offset;havoc #t~ret17.base, #t~ret17.offset;call #t~mem18.base, #t~mem18.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~3.base, ~next~3.offset := #t~mem18.base, #t~mem18.offset;havoc #t~mem18.base, #t~mem18.offset;call write~$Pointer$(~next~3.base, ~next~3.offset, ~item~1.base, ~item~1.offset, 4); {5549#true} is VALID [2020-07-10 15:10:43,209 INFO L280 TraceCheckUtils]: 78: Hoare triple {5549#true} assume ~next~3.base != 0 || ~next~3.offset != 0;call write~$Pointer$(~item~1.base, ~item~1.offset, ~next~3.base, 4 + ~next~3.offset, 4); {5549#true} is VALID [2020-07-10 15:10:43,210 INFO L263 TraceCheckUtils]: 79: Hoare triple {5549#true} call #t~ret19.base, #t~ret19.offset := dll_create_slave(); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,211 INFO L263 TraceCheckUtils]: 80: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~ret11.base, #t~ret11.offset := dll_create_generic(#funAddr~dll_insert_slave.base, #funAddr~dll_insert_slave.offset); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,211 INFO L280 TraceCheckUtils]: 81: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~insert_fnc.base, ~insert_fnc.offset := #in~insert_fnc.base, #in~insert_fnc.offset;call ~#dll~0.base, ~#dll~0.offset := #Ultimate.allocOnStack(4);call write~init~$Pointer$(0, 0, ~#dll~0.base, ~#dll~0.offset, 4); {5549#true} is VALID [2020-07-10 15:10:43,212 INFO L263 TraceCheckUtils]: 82: Hoare triple {5549#true} call ##fun~$Pointer$~TO~VOID(~#dll~0.base, ~#dll~0.offset, ~insert_fnc.base, ~insert_fnc.offset); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,213 INFO L280 TraceCheckUtils]: 83: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {5549#true} is VALID [2020-07-10 15:10:43,213 INFO L280 TraceCheckUtils]: 84: Hoare triple {5549#true} assume !(#in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset); {5549#true} is VALID [2020-07-10 15:10:43,214 INFO L263 TraceCheckUtils]: 85: Hoare triple {5549#true} call dll_insert_slave(#~9.base, #~9.offset); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,214 INFO L280 TraceCheckUtils]: 86: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {5549#true} is VALID [2020-07-10 15:10:43,215 INFO L263 TraceCheckUtils]: 87: Hoare triple {5549#true} call #t~ret4.base, #t~ret4.offset := alloc_or_die_slave(); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,215 INFO L280 TraceCheckUtils]: 88: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {5549#true} is VALID [2020-07-10 15:10:43,216 INFO L280 TraceCheckUtils]: 89: Hoare triple {5549#true} assume !(~ptr~0.base == 0 && ~ptr~0.offset == 0); {5549#true} is VALID [2020-07-10 15:10:43,216 INFO L280 TraceCheckUtils]: 90: Hoare triple {5549#true} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {5549#true} is VALID [2020-07-10 15:10:43,216 INFO L280 TraceCheckUtils]: 91: Hoare triple {5549#true} assume true; {5549#true} is VALID [2020-07-10 15:10:43,216 INFO L275 TraceCheckUtils]: 92: Hoare quadruple {5549#true} {5549#true} #490#return; {5549#true} is VALID [2020-07-10 15:10:43,216 INFO L280 TraceCheckUtils]: 93: Hoare triple {5549#true} ~item~0.base, ~item~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~0.base, ~next~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset;call write~$Pointer$(~next~0.base, ~next~0.offset, ~item~0.base, ~item~0.offset, 4); {5549#true} is VALID [2020-07-10 15:10:43,217 INFO L280 TraceCheckUtils]: 94: Hoare triple {5549#true} assume !(~next~0.base != 0 || ~next~0.offset != 0); {5549#true} is VALID [2020-07-10 15:10:43,217 INFO L280 TraceCheckUtils]: 95: Hoare triple {5549#true} call write~$Pointer$(~item~0.base, ~item~0.offset, ~dll.base, ~dll.offset, 4); {5549#true} is VALID [2020-07-10 15:10:43,217 INFO L280 TraceCheckUtils]: 96: Hoare triple {5549#true} assume true; {5549#true} is VALID [2020-07-10 15:10:43,217 INFO L275 TraceCheckUtils]: 97: Hoare quadruple {5549#true} {5549#true} #514#return; {5549#true} is VALID [2020-07-10 15:10:43,217 INFO L280 TraceCheckUtils]: 98: Hoare triple {5549#true} assume true; {5549#true} is VALID [2020-07-10 15:10:43,218 INFO L275 TraceCheckUtils]: 99: Hoare quadruple {5549#true} {5549#true} #534#return; {5549#true} is VALID [2020-07-10 15:10:43,219 INFO L263 TraceCheckUtils]: 100: Hoare triple {5549#true} call ##fun~$Pointer$~TO~VOID(~#dll~0.base, ~#dll~0.offset, ~insert_fnc.base, ~insert_fnc.offset); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,220 INFO L280 TraceCheckUtils]: 101: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {5549#true} is VALID [2020-07-10 15:10:43,220 INFO L280 TraceCheckUtils]: 102: Hoare triple {5549#true} assume !(#in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset); {5549#true} is VALID [2020-07-10 15:10:43,221 INFO L263 TraceCheckUtils]: 103: Hoare triple {5549#true} call dll_insert_slave(#~9.base, #~9.offset); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,221 INFO L280 TraceCheckUtils]: 104: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {5549#true} is VALID [2020-07-10 15:10:43,222 INFO L263 TraceCheckUtils]: 105: Hoare triple {5549#true} call #t~ret4.base, #t~ret4.offset := alloc_or_die_slave(); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,222 INFO L280 TraceCheckUtils]: 106: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {5549#true} is VALID [2020-07-10 15:10:43,222 INFO L280 TraceCheckUtils]: 107: Hoare triple {5549#true} assume !(~ptr~0.base == 0 && ~ptr~0.offset == 0); {5549#true} is VALID [2020-07-10 15:10:43,223 INFO L280 TraceCheckUtils]: 108: Hoare triple {5549#true} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {5549#true} is VALID [2020-07-10 15:10:43,223 INFO L280 TraceCheckUtils]: 109: Hoare triple {5549#true} assume true; {5549#true} is VALID [2020-07-10 15:10:43,223 INFO L275 TraceCheckUtils]: 110: Hoare quadruple {5549#true} {5549#true} #490#return; {5549#true} is VALID [2020-07-10 15:10:43,223 INFO L280 TraceCheckUtils]: 111: Hoare triple {5549#true} ~item~0.base, ~item~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~0.base, ~next~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset;call write~$Pointer$(~next~0.base, ~next~0.offset, ~item~0.base, ~item~0.offset, 4); {5549#true} is VALID [2020-07-10 15:10:43,223 INFO L280 TraceCheckUtils]: 112: Hoare triple {5549#true} assume !(~next~0.base != 0 || ~next~0.offset != 0); {5549#true} is VALID [2020-07-10 15:10:43,224 INFO L280 TraceCheckUtils]: 113: Hoare triple {5549#true} call write~$Pointer$(~item~0.base, ~item~0.offset, ~dll.base, ~dll.offset, 4); {5549#true} is VALID [2020-07-10 15:10:43,224 INFO L280 TraceCheckUtils]: 114: Hoare triple {5549#true} assume true; {5549#true} is VALID [2020-07-10 15:10:43,224 INFO L275 TraceCheckUtils]: 115: Hoare quadruple {5549#true} {5549#true} #514#return; {5549#true} is VALID [2020-07-10 15:10:43,224 INFO L280 TraceCheckUtils]: 116: Hoare triple {5549#true} assume true; {5549#true} is VALID [2020-07-10 15:10:43,224 INFO L275 TraceCheckUtils]: 117: Hoare quadruple {5549#true} {5549#true} #536#return; {5549#true} is VALID [2020-07-10 15:10:43,225 INFO L280 TraceCheckUtils]: 118: Hoare triple {5549#true} assume -2147483648 <= #t~nondet8 && #t~nondet8 <= 2147483647; {5549#true} is VALID [2020-07-10 15:10:43,225 INFO L280 TraceCheckUtils]: 119: Hoare triple {5549#true} assume !(0 != #t~nondet8);havoc #t~nondet8; {5549#true} is VALID [2020-07-10 15:10:43,225 INFO L280 TraceCheckUtils]: 120: Hoare triple {5549#true} call #t~mem10.base, #t~mem10.offset := read~$Pointer$(~#dll~0.base, ~#dll~0.offset, 4);#res.base, #res.offset := #t~mem10.base, #t~mem10.offset;havoc #t~mem10.base, #t~mem10.offset;call ULTIMATE.dealloc(~#dll~0.base, ~#dll~0.offset);havoc ~#dll~0.base, ~#dll~0.offset; {5549#true} is VALID [2020-07-10 15:10:43,225 INFO L280 TraceCheckUtils]: 121: Hoare triple {5549#true} assume true; {5549#true} is VALID [2020-07-10 15:10:43,225 INFO L275 TraceCheckUtils]: 122: Hoare quadruple {5549#true} {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #540#return; {5549#true} is VALID [2020-07-10 15:10:43,225 INFO L280 TraceCheckUtils]: 123: Hoare triple {5549#true} #res.base, #res.offset := #t~ret11.base, #t~ret11.offset;havoc #t~ret11.base, #t~ret11.offset; {5549#true} is VALID [2020-07-10 15:10:43,226 INFO L280 TraceCheckUtils]: 124: Hoare triple {5549#true} assume true; {5549#true} is VALID [2020-07-10 15:10:43,226 INFO L275 TraceCheckUtils]: 125: Hoare quadruple {5549#true} {5549#true} #496#return; {5549#true} is VALID [2020-07-10 15:10:43,226 INFO L280 TraceCheckUtils]: 126: Hoare triple {5549#true} call write~$Pointer$(#t~ret19.base, #t~ret19.offset, ~item~1.base, 8 + ~item~1.offset, 4);havoc #t~ret19.base, #t~ret19.offset;call write~$Pointer$(~item~1.base, ~item~1.offset, ~dll.base, ~dll.offset, 4); {5549#true} is VALID [2020-07-10 15:10:43,226 INFO L280 TraceCheckUtils]: 127: Hoare triple {5549#true} assume true; {5549#true} is VALID [2020-07-10 15:10:43,226 INFO L275 TraceCheckUtils]: 128: Hoare quadruple {5549#true} {5549#true} #512#return; {5549#true} is VALID [2020-07-10 15:10:43,227 INFO L280 TraceCheckUtils]: 129: Hoare triple {5549#true} assume true; {5549#true} is VALID [2020-07-10 15:10:43,227 INFO L275 TraceCheckUtils]: 130: Hoare quadruple {5549#true} {5550#false} #536#return; {5550#false} is VALID [2020-07-10 15:10:43,227 INFO L280 TraceCheckUtils]: 131: Hoare triple {5550#false} assume -2147483648 <= #t~nondet8 && #t~nondet8 <= 2147483647; {5550#false} is VALID [2020-07-10 15:10:43,227 INFO L280 TraceCheckUtils]: 132: Hoare triple {5550#false} assume !(0 != #t~nondet8);havoc #t~nondet8; {5550#false} is VALID [2020-07-10 15:10:43,227 INFO L280 TraceCheckUtils]: 133: Hoare triple {5550#false} call #t~mem10.base, #t~mem10.offset := read~$Pointer$(~#dll~0.base, ~#dll~0.offset, 4);#res.base, #res.offset := #t~mem10.base, #t~mem10.offset;havoc #t~mem10.base, #t~mem10.offset;call ULTIMATE.dealloc(~#dll~0.base, ~#dll~0.offset);havoc ~#dll~0.base, ~#dll~0.offset; {5550#false} is VALID [2020-07-10 15:10:43,228 INFO L280 TraceCheckUtils]: 134: Hoare triple {5550#false} assume true; {5550#false} is VALID [2020-07-10 15:10:43,228 INFO L275 TraceCheckUtils]: 135: Hoare quadruple {5550#false} {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #492#return; {5550#false} is VALID [2020-07-10 15:10:43,259 INFO L263 TraceCheckUtils]: 0: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~ret20.base, #t~ret20.offset := dll_create_generic(#funAddr~dll_insert_master.base, #funAddr~dll_insert_master.offset); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,259 INFO L280 TraceCheckUtils]: 1: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~insert_fnc.base, ~insert_fnc.offset := #in~insert_fnc.base, #in~insert_fnc.offset;call ~#dll~0.base, ~#dll~0.offset := #Ultimate.allocOnStack(4);call write~init~$Pointer$(0, 0, ~#dll~0.base, ~#dll~0.offset, 4); {5549#true} is VALID [2020-07-10 15:10:43,261 INFO L263 TraceCheckUtils]: 2: Hoare triple {5549#true} call ##fun~$Pointer$~TO~VOID(~#dll~0.base, ~#dll~0.offset, ~insert_fnc.base, ~insert_fnc.offset); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,261 INFO L280 TraceCheckUtils]: 3: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {5549#true} is VALID [2020-07-10 15:10:43,262 INFO L280 TraceCheckUtils]: 4: Hoare triple {5549#true} assume #in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset; {5549#true} is VALID [2020-07-10 15:10:43,263 INFO L263 TraceCheckUtils]: 5: Hoare triple {5549#true} call dll_insert_master(#~9.base, #~9.offset); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,263 INFO L280 TraceCheckUtils]: 6: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {5549#true} is VALID [2020-07-10 15:10:43,264 INFO L263 TraceCheckUtils]: 7: Hoare triple {5549#true} call #t~ret17.base, #t~ret17.offset := alloc_or_die_master(); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,264 INFO L280 TraceCheckUtils]: 8: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc3.base, #t~malloc3.offset := #Ultimate.allocOnHeap(12);~ptr~1.base, ~ptr~1.offset := #t~malloc3.base, #t~malloc3.offset; {5549#true} is VALID [2020-07-10 15:10:43,265 INFO L280 TraceCheckUtils]: 9: Hoare triple {5549#true} assume !(~ptr~1.base == 0 && ~ptr~1.offset == 0); {5549#true} is VALID [2020-07-10 15:10:43,265 INFO L280 TraceCheckUtils]: 10: Hoare triple {5549#true} call write~$Pointer$(0, 0, ~ptr~1.base, ~ptr~1.offset, 4);call write~$Pointer$(0, 0, ~ptr~1.base, 4 + ~ptr~1.offset, 4);call write~$Pointer$(0, 0, ~ptr~1.base, 8 + ~ptr~1.offset, 4);#res.base, #res.offset := ~ptr~1.base, ~ptr~1.offset; {5549#true} is VALID [2020-07-10 15:10:43,265 INFO L280 TraceCheckUtils]: 11: Hoare triple {5549#true} assume true; {5549#true} is VALID [2020-07-10 15:10:43,265 INFO L275 TraceCheckUtils]: 12: Hoare quadruple {5549#true} {5549#true} #494#return; {5549#true} is VALID [2020-07-10 15:10:43,265 INFO L280 TraceCheckUtils]: 13: Hoare triple {5549#true} ~item~1.base, ~item~1.offset := #t~ret17.base, #t~ret17.offset;havoc #t~ret17.base, #t~ret17.offset;call #t~mem18.base, #t~mem18.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~3.base, ~next~3.offset := #t~mem18.base, #t~mem18.offset;havoc #t~mem18.base, #t~mem18.offset;call write~$Pointer$(~next~3.base, ~next~3.offset, ~item~1.base, ~item~1.offset, 4); {5549#true} is VALID [2020-07-10 15:10:43,266 INFO L280 TraceCheckUtils]: 14: Hoare triple {5549#true} assume !(~next~3.base != 0 || ~next~3.offset != 0); {5549#true} is VALID [2020-07-10 15:10:43,267 INFO L263 TraceCheckUtils]: 15: Hoare triple {5549#true} call #t~ret19.base, #t~ret19.offset := dll_create_slave(); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,268 INFO L263 TraceCheckUtils]: 16: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~ret11.base, #t~ret11.offset := dll_create_generic(#funAddr~dll_insert_slave.base, #funAddr~dll_insert_slave.offset); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,270 INFO L280 TraceCheckUtils]: 17: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~insert_fnc.base, ~insert_fnc.offset := #in~insert_fnc.base, #in~insert_fnc.offset;call ~#dll~0.base, ~#dll~0.offset := #Ultimate.allocOnStack(4);call write~init~$Pointer$(0, 0, ~#dll~0.base, ~#dll~0.offset, 4); {6112#(<= (+ |#StackHeapBarrier| 1) |dll_create_generic_~#dll~0.base|)} is VALID [2020-07-10 15:10:43,272 INFO L263 TraceCheckUtils]: 18: Hoare triple {6112#(<= (+ |#StackHeapBarrier| 1) |dll_create_generic_~#dll~0.base|)} call ##fun~$Pointer$~TO~VOID(~#dll~0.base, ~#dll~0.offset, ~insert_fnc.base, ~insert_fnc.offset); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,273 INFO L280 TraceCheckUtils]: 19: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {6148#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|))} is VALID [2020-07-10 15:10:43,273 INFO L280 TraceCheckUtils]: 20: Hoare triple {6148#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|))} assume !(#in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset); {6148#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|))} is VALID [2020-07-10 15:10:43,275 INFO L263 TraceCheckUtils]: 21: Hoare triple {6148#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|))} call dll_insert_slave(#~9.base, #~9.offset); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,276 INFO L280 TraceCheckUtils]: 22: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {6162#(and (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|))} is VALID [2020-07-10 15:10:43,278 INFO L263 TraceCheckUtils]: 23: Hoare triple {6162#(and (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|))} call #t~ret4.base, #t~ret4.offset := alloc_or_die_slave(); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,279 INFO L280 TraceCheckUtils]: 24: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {6171#(or (<= (+ alloc_or_die_slave_~ptr~0.base 1) 0) (<= 1 alloc_or_die_slave_~ptr~0.base))} is VALID [2020-07-10 15:10:43,280 INFO L280 TraceCheckUtils]: 25: Hoare triple {6171#(or (<= (+ alloc_or_die_slave_~ptr~0.base 1) 0) (<= 1 alloc_or_die_slave_~ptr~0.base))} assume !(~ptr~0.base == 0 && ~ptr~0.offset == 0); {6171#(or (<= (+ alloc_or_die_slave_~ptr~0.base 1) 0) (<= 1 alloc_or_die_slave_~ptr~0.base))} is VALID [2020-07-10 15:10:43,281 INFO L280 TraceCheckUtils]: 26: Hoare triple {6171#(or (<= (+ alloc_or_die_slave_~ptr~0.base 1) 0) (<= 1 alloc_or_die_slave_~ptr~0.base))} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {6172#(or (<= (+ |alloc_or_die_slave_#res.base| 1) 0) (<= 1 |alloc_or_die_slave_#res.base|))} is VALID [2020-07-10 15:10:43,281 INFO L280 TraceCheckUtils]: 27: Hoare triple {6172#(or (<= (+ |alloc_or_die_slave_#res.base| 1) 0) (<= 1 |alloc_or_die_slave_#res.base|))} assume true; {6172#(or (<= (+ |alloc_or_die_slave_#res.base| 1) 0) (<= 1 |alloc_or_die_slave_#res.base|))} is VALID [2020-07-10 15:10:43,282 INFO L275 TraceCheckUtils]: 28: Hoare quadruple {6172#(or (<= (+ |alloc_or_die_slave_#res.base| 1) 0) (<= 1 |alloc_or_die_slave_#res.base|))} {6162#(and (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|))} #490#return; {6168#(and (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|) (not (= 0 |dll_insert_slave_#t~ret4.base|)))} is VALID [2020-07-10 15:10:43,283 INFO L280 TraceCheckUtils]: 29: Hoare triple {6168#(and (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|) (not (= 0 |dll_insert_slave_#t~ret4.base|)))} ~item~0.base, ~item~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~0.base, ~next~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset;call write~$Pointer$(~next~0.base, ~next~0.offset, ~item~0.base, ~item~0.offset, 4); {6169#(and (not (= 0 dll_insert_slave_~item~0.base)) (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|))} is VALID [2020-07-10 15:10:43,284 INFO L280 TraceCheckUtils]: 30: Hoare triple {6169#(and (not (= 0 dll_insert_slave_~item~0.base)) (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|))} assume !(~next~0.base != 0 || ~next~0.offset != 0); {6169#(and (not (= 0 dll_insert_slave_~item~0.base)) (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|))} is VALID [2020-07-10 15:10:43,285 INFO L280 TraceCheckUtils]: 31: Hoare triple {6169#(and (not (= 0 dll_insert_slave_~item~0.base)) (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|))} call write~$Pointer$(~item~0.base, ~item~0.offset, ~dll.base, ~dll.offset, 4); {6170#(not (= 0 (select (select |#memory_$Pointer$.base| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|)))} is VALID [2020-07-10 15:10:43,286 INFO L280 TraceCheckUtils]: 32: Hoare triple {6170#(not (= 0 (select (select |#memory_$Pointer$.base| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|)))} assume true; {6170#(not (= 0 (select (select |#memory_$Pointer$.base| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|)))} is VALID [2020-07-10 15:10:43,287 INFO L275 TraceCheckUtils]: 33: Hoare quadruple {6170#(not (= 0 (select (select |#memory_$Pointer$.base| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|)))} {6148#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|))} #514#return; {6161#(not (= 0 (select (select |#memory_$Pointer$.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|)))} is VALID [2020-07-10 15:10:43,288 INFO L280 TraceCheckUtils]: 34: Hoare triple {6161#(not (= 0 (select (select |#memory_$Pointer$.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|)))} assume true; {6161#(not (= 0 (select (select |#memory_$Pointer$.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|)))} is VALID [2020-07-10 15:10:43,290 INFO L275 TraceCheckUtils]: 35: Hoare quadruple {6161#(not (= 0 (select (select |#memory_$Pointer$.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|)))} {6112#(<= (+ |#StackHeapBarrier| 1) |dll_create_generic_~#dll~0.base|)} #534#return; {6130#(and (<= (+ |#StackHeapBarrier| 1) |dll_create_generic_~#dll~0.base|) (not (= 0 (select (select |#memory_$Pointer$.base| |dll_create_generic_~#dll~0.base|) |dll_create_generic_~#dll~0.offset|))))} is VALID [2020-07-10 15:10:43,292 INFO L263 TraceCheckUtils]: 36: Hoare triple {6130#(and (<= (+ |#StackHeapBarrier| 1) |dll_create_generic_~#dll~0.base|) (not (= 0 (select (select |#memory_$Pointer$.base| |dll_create_generic_~#dll~0.base|) |dll_create_generic_~#dll~0.offset|))))} call ##fun~$Pointer$~TO~VOID(~#dll~0.base, ~#dll~0.offset, ~insert_fnc.base, ~insert_fnc.offset); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,293 INFO L280 TraceCheckUtils]: 37: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {6173#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|))} is VALID [2020-07-10 15:10:43,293 INFO L280 TraceCheckUtils]: 38: Hoare triple {6173#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|))} assume !(#in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset); {6173#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|))} is VALID [2020-07-10 15:10:43,295 INFO L263 TraceCheckUtils]: 39: Hoare triple {6173#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|))} call dll_insert_slave(#~9.base, #~9.offset); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,296 INFO L280 TraceCheckUtils]: 40: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {6187#(and (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|) (= (select |#memory_$Pointer$.base| dll_insert_slave_~dll.base) (select |old(#memory_$Pointer$.base)| dll_insert_slave_~dll.base)))} is VALID [2020-07-10 15:10:43,297 INFO L263 TraceCheckUtils]: 41: Hoare triple {6187#(and (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|) (= (select |#memory_$Pointer$.base| dll_insert_slave_~dll.base) (select |old(#memory_$Pointer$.base)| dll_insert_slave_~dll.base)))} call #t~ret4.base, #t~ret4.offset := alloc_or_die_slave(); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,299 INFO L280 TraceCheckUtils]: 42: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {6196#(and (<= (+ alloc_or_die_slave_~ptr~0.base 1) |#StackHeapBarrier|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|))} is VALID [2020-07-10 15:10:43,299 INFO L280 TraceCheckUtils]: 43: Hoare triple {6196#(and (<= (+ alloc_or_die_slave_~ptr~0.base 1) |#StackHeapBarrier|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|))} assume !(~ptr~0.base == 0 && ~ptr~0.offset == 0); {6196#(and (<= (+ alloc_or_die_slave_~ptr~0.base 1) |#StackHeapBarrier|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|))} is VALID [2020-07-10 15:10:43,301 INFO L280 TraceCheckUtils]: 44: Hoare triple {6196#(and (<= (+ alloc_or_die_slave_~ptr~0.base 1) |#StackHeapBarrier|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|))} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {6197#(and (= |#memory_$Pointer$.base| (store |old(#memory_$Pointer$.base)| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) (select |#memory_$Pointer$.base| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|)))) (or (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (<= (+ (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) 1) |#StackHeapBarrier|)))} is VALID [2020-07-10 15:10:43,303 INFO L280 TraceCheckUtils]: 45: Hoare triple {6197#(and (= |#memory_$Pointer$.base| (store |old(#memory_$Pointer$.base)| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) (select |#memory_$Pointer$.base| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|)))) (or (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (<= (+ (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) 1) |#StackHeapBarrier|)))} assume true; {6197#(and (= |#memory_$Pointer$.base| (store |old(#memory_$Pointer$.base)| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) (select |#memory_$Pointer$.base| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|)))) (or (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (<= (+ (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) 1) |#StackHeapBarrier|)))} is VALID [2020-07-10 15:10:43,305 INFO L275 TraceCheckUtils]: 46: Hoare quadruple {6197#(and (= |#memory_$Pointer$.base| (store |old(#memory_$Pointer$.base)| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) (select |#memory_$Pointer$.base| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|)))) (or (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (<= (+ (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) 1) |#StackHeapBarrier|)))} {6187#(and (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|) (= (select |#memory_$Pointer$.base| dll_insert_slave_~dll.base) (select |old(#memory_$Pointer$.base)| dll_insert_slave_~dll.base)))} #490#return; {6193#(and (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|) (or (<= (+ dll_insert_slave_~dll.base 1) |#StackHeapBarrier|) (= (select |#memory_$Pointer$.base| dll_insert_slave_~dll.base) (select |old(#memory_$Pointer$.base)| dll_insert_slave_~dll.base))))} is VALID [2020-07-10 15:10:43,307 INFO L280 TraceCheckUtils]: 47: Hoare triple {6193#(and (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|) (or (<= (+ dll_insert_slave_~dll.base 1) |#StackHeapBarrier|) (= (select |#memory_$Pointer$.base| dll_insert_slave_~dll.base) (select |old(#memory_$Pointer$.base)| dll_insert_slave_~dll.base))))} ~item~0.base, ~item~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~0.base, ~next~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset;call write~$Pointer$(~next~0.base, ~next~0.offset, ~item~0.base, ~item~0.offset, 4); {6194#(or (= (select (select |old(#memory_$Pointer$.base)| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|) dll_insert_slave_~next~0.base) (<= (+ |dll_insert_slave_#in~dll.base| 1) |#StackHeapBarrier|))} is VALID [2020-07-10 15:10:43,308 INFO L280 TraceCheckUtils]: 48: Hoare triple {6194#(or (= (select (select |old(#memory_$Pointer$.base)| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|) dll_insert_slave_~next~0.base) (<= (+ |dll_insert_slave_#in~dll.base| 1) |#StackHeapBarrier|))} assume !(~next~0.base != 0 || ~next~0.offset != 0); {6195#(or (= 0 (select (select |old(#memory_$Pointer$.base)| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|)) (<= (+ |dll_insert_slave_#in~dll.base| 1) |#StackHeapBarrier|))} is VALID [2020-07-10 15:10:43,309 INFO L280 TraceCheckUtils]: 49: Hoare triple {6195#(or (= 0 (select (select |old(#memory_$Pointer$.base)| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|)) (<= (+ |dll_insert_slave_#in~dll.base| 1) |#StackHeapBarrier|))} call write~$Pointer$(~item~0.base, ~item~0.offset, ~dll.base, ~dll.offset, 4); {6195#(or (= 0 (select (select |old(#memory_$Pointer$.base)| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|)) (<= (+ |dll_insert_slave_#in~dll.base| 1) |#StackHeapBarrier|))} is VALID [2020-07-10 15:10:43,310 INFO L280 TraceCheckUtils]: 50: Hoare triple {6195#(or (= 0 (select (select |old(#memory_$Pointer$.base)| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|)) (<= (+ |dll_insert_slave_#in~dll.base| 1) |#StackHeapBarrier|))} assume true; {6195#(or (= 0 (select (select |old(#memory_$Pointer$.base)| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|)) (<= (+ |dll_insert_slave_#in~dll.base| 1) |#StackHeapBarrier|))} is VALID [2020-07-10 15:10:43,312 INFO L275 TraceCheckUtils]: 51: Hoare quadruple {6195#(or (= 0 (select (select |old(#memory_$Pointer$.base)| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|)) (<= (+ |dll_insert_slave_#in~dll.base| 1) |#StackHeapBarrier|))} {6173#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|))} #514#return; {6186#(or (<= (+ |##fun~$Pointer$~TO~VOID_#in~9.base| 1) |#StackHeapBarrier|) (= 0 (select (select |old(#memory_$Pointer$.base)| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|)))} is VALID [2020-07-10 15:10:43,313 INFO L280 TraceCheckUtils]: 52: Hoare triple {6186#(or (<= (+ |##fun~$Pointer$~TO~VOID_#in~9.base| 1) |#StackHeapBarrier|) (= 0 (select (select |old(#memory_$Pointer$.base)| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|)))} assume true; {6186#(or (<= (+ |##fun~$Pointer$~TO~VOID_#in~9.base| 1) |#StackHeapBarrier|) (= 0 (select (select |old(#memory_$Pointer$.base)| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|)))} is VALID [2020-07-10 15:10:43,315 INFO L275 TraceCheckUtils]: 53: Hoare quadruple {6186#(or (<= (+ |##fun~$Pointer$~TO~VOID_#in~9.base| 1) |#StackHeapBarrier|) (= 0 (select (select |old(#memory_$Pointer$.base)| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|)))} {6130#(and (<= (+ |#StackHeapBarrier| 1) |dll_create_generic_~#dll~0.base|) (not (= 0 (select (select |#memory_$Pointer$.base| |dll_create_generic_~#dll~0.base|) |dll_create_generic_~#dll~0.offset|))))} #536#return; {5550#false} is VALID [2020-07-10 15:10:43,316 INFO L280 TraceCheckUtils]: 54: Hoare triple {5550#false} assume -2147483648 <= #t~nondet8 && #t~nondet8 <= 2147483647; {5550#false} is VALID [2020-07-10 15:10:43,316 INFO L280 TraceCheckUtils]: 55: Hoare triple {5550#false} assume !(0 != #t~nondet8);havoc #t~nondet8; {5550#false} is VALID [2020-07-10 15:10:43,316 INFO L280 TraceCheckUtils]: 56: Hoare triple {5550#false} call #t~mem10.base, #t~mem10.offset := read~$Pointer$(~#dll~0.base, ~#dll~0.offset, 4);#res.base, #res.offset := #t~mem10.base, #t~mem10.offset;havoc #t~mem10.base, #t~mem10.offset;call ULTIMATE.dealloc(~#dll~0.base, ~#dll~0.offset);havoc ~#dll~0.base, ~#dll~0.offset; {5550#false} is VALID [2020-07-10 15:10:43,317 INFO L280 TraceCheckUtils]: 57: Hoare triple {5550#false} assume true; {5550#false} is VALID [2020-07-10 15:10:43,317 INFO L275 TraceCheckUtils]: 58: Hoare quadruple {5550#false} {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #540#return; {5550#false} is VALID [2020-07-10 15:10:43,317 INFO L280 TraceCheckUtils]: 59: Hoare triple {5550#false} #res.base, #res.offset := #t~ret11.base, #t~ret11.offset;havoc #t~ret11.base, #t~ret11.offset; {5550#false} is VALID [2020-07-10 15:10:43,317 INFO L280 TraceCheckUtils]: 60: Hoare triple {5550#false} assume true; {5550#false} is VALID [2020-07-10 15:10:43,318 INFO L275 TraceCheckUtils]: 61: Hoare quadruple {5550#false} {5549#true} #496#return; {5550#false} is VALID [2020-07-10 15:10:43,318 INFO L280 TraceCheckUtils]: 62: Hoare triple {5550#false} call write~$Pointer$(#t~ret19.base, #t~ret19.offset, ~item~1.base, 8 + ~item~1.offset, 4);havoc #t~ret19.base, #t~ret19.offset;call write~$Pointer$(~item~1.base, ~item~1.offset, ~dll.base, ~dll.offset, 4); {5550#false} is VALID [2020-07-10 15:10:43,318 INFO L280 TraceCheckUtils]: 63: Hoare triple {5550#false} assume true; {5550#false} is VALID [2020-07-10 15:10:43,318 INFO L275 TraceCheckUtils]: 64: Hoare quadruple {5550#false} {5549#true} #512#return; {5550#false} is VALID [2020-07-10 15:10:43,319 INFO L280 TraceCheckUtils]: 65: Hoare triple {5550#false} assume true; {5550#false} is VALID [2020-07-10 15:10:43,319 INFO L275 TraceCheckUtils]: 66: Hoare quadruple {5550#false} {5549#true} #534#return; {5550#false} is VALID [2020-07-10 15:10:43,319 INFO L263 TraceCheckUtils]: 67: Hoare triple {5550#false} call ##fun~$Pointer$~TO~VOID(~#dll~0.base, ~#dll~0.offset, ~insert_fnc.base, ~insert_fnc.offset); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,319 INFO L280 TraceCheckUtils]: 68: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {5549#true} is VALID [2020-07-10 15:10:43,319 INFO L280 TraceCheckUtils]: 69: Hoare triple {5549#true} assume #in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset; {5549#true} is VALID [2020-07-10 15:10:43,321 INFO L263 TraceCheckUtils]: 70: Hoare triple {5549#true} call dll_insert_master(#~9.base, #~9.offset); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,321 INFO L280 TraceCheckUtils]: 71: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {5549#true} is VALID [2020-07-10 15:10:43,322 INFO L263 TraceCheckUtils]: 72: Hoare triple {5549#true} call #t~ret17.base, #t~ret17.offset := alloc_or_die_master(); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,323 INFO L280 TraceCheckUtils]: 73: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc3.base, #t~malloc3.offset := #Ultimate.allocOnHeap(12);~ptr~1.base, ~ptr~1.offset := #t~malloc3.base, #t~malloc3.offset; {5549#true} is VALID [2020-07-10 15:10:43,323 INFO L280 TraceCheckUtils]: 74: Hoare triple {5549#true} assume !(~ptr~1.base == 0 && ~ptr~1.offset == 0); {5549#true} is VALID [2020-07-10 15:10:43,323 INFO L280 TraceCheckUtils]: 75: Hoare triple {5549#true} call write~$Pointer$(0, 0, ~ptr~1.base, ~ptr~1.offset, 4);call write~$Pointer$(0, 0, ~ptr~1.base, 4 + ~ptr~1.offset, 4);call write~$Pointer$(0, 0, ~ptr~1.base, 8 + ~ptr~1.offset, 4);#res.base, #res.offset := ~ptr~1.base, ~ptr~1.offset; {5549#true} is VALID [2020-07-10 15:10:43,323 INFO L280 TraceCheckUtils]: 76: Hoare triple {5549#true} assume true; {5549#true} is VALID [2020-07-10 15:10:43,323 INFO L275 TraceCheckUtils]: 77: Hoare quadruple {5549#true} {5549#true} #494#return; {5549#true} is VALID [2020-07-10 15:10:43,324 INFO L280 TraceCheckUtils]: 78: Hoare triple {5549#true} ~item~1.base, ~item~1.offset := #t~ret17.base, #t~ret17.offset;havoc #t~ret17.base, #t~ret17.offset;call #t~mem18.base, #t~mem18.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~3.base, ~next~3.offset := #t~mem18.base, #t~mem18.offset;havoc #t~mem18.base, #t~mem18.offset;call write~$Pointer$(~next~3.base, ~next~3.offset, ~item~1.base, ~item~1.offset, 4); {5549#true} is VALID [2020-07-10 15:10:43,324 INFO L280 TraceCheckUtils]: 79: Hoare triple {5549#true} assume ~next~3.base != 0 || ~next~3.offset != 0;call write~$Pointer$(~item~1.base, ~item~1.offset, ~next~3.base, 4 + ~next~3.offset, 4); {5549#true} is VALID [2020-07-10 15:10:43,325 INFO L263 TraceCheckUtils]: 80: Hoare triple {5549#true} call #t~ret19.base, #t~ret19.offset := dll_create_slave(); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,326 INFO L263 TraceCheckUtils]: 81: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~ret11.base, #t~ret11.offset := dll_create_generic(#funAddr~dll_insert_slave.base, #funAddr~dll_insert_slave.offset); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,327 INFO L280 TraceCheckUtils]: 82: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~insert_fnc.base, ~insert_fnc.offset := #in~insert_fnc.base, #in~insert_fnc.offset;call ~#dll~0.base, ~#dll~0.offset := #Ultimate.allocOnStack(4);call write~init~$Pointer$(0, 0, ~#dll~0.base, ~#dll~0.offset, 4); {5549#true} is VALID [2020-07-10 15:10:43,329 INFO L263 TraceCheckUtils]: 83: Hoare triple {5549#true} call ##fun~$Pointer$~TO~VOID(~#dll~0.base, ~#dll~0.offset, ~insert_fnc.base, ~insert_fnc.offset); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,329 INFO L280 TraceCheckUtils]: 84: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {5549#true} is VALID [2020-07-10 15:10:43,329 INFO L280 TraceCheckUtils]: 85: Hoare triple {5549#true} assume !(#in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset); {5549#true} is VALID [2020-07-10 15:10:43,331 INFO L263 TraceCheckUtils]: 86: Hoare triple {5549#true} call dll_insert_slave(#~9.base, #~9.offset); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,332 INFO L280 TraceCheckUtils]: 87: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {5549#true} is VALID [2020-07-10 15:10:43,333 INFO L263 TraceCheckUtils]: 88: Hoare triple {5549#true} call #t~ret4.base, #t~ret4.offset := alloc_or_die_slave(); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,333 INFO L280 TraceCheckUtils]: 89: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {5549#true} is VALID [2020-07-10 15:10:43,334 INFO L280 TraceCheckUtils]: 90: Hoare triple {5549#true} assume !(~ptr~0.base == 0 && ~ptr~0.offset == 0); {5549#true} is VALID [2020-07-10 15:10:43,334 INFO L280 TraceCheckUtils]: 91: Hoare triple {5549#true} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {5549#true} is VALID [2020-07-10 15:10:43,334 INFO L280 TraceCheckUtils]: 92: Hoare triple {5549#true} assume true; {5549#true} is VALID [2020-07-10 15:10:43,334 INFO L275 TraceCheckUtils]: 93: Hoare quadruple {5549#true} {5549#true} #490#return; {5549#true} is VALID [2020-07-10 15:10:43,335 INFO L280 TraceCheckUtils]: 94: Hoare triple {5549#true} ~item~0.base, ~item~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~0.base, ~next~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset;call write~$Pointer$(~next~0.base, ~next~0.offset, ~item~0.base, ~item~0.offset, 4); {5549#true} is VALID [2020-07-10 15:10:43,335 INFO L280 TraceCheckUtils]: 95: Hoare triple {5549#true} assume !(~next~0.base != 0 || ~next~0.offset != 0); {5549#true} is VALID [2020-07-10 15:10:43,335 INFO L280 TraceCheckUtils]: 96: Hoare triple {5549#true} call write~$Pointer$(~item~0.base, ~item~0.offset, ~dll.base, ~dll.offset, 4); {5549#true} is VALID [2020-07-10 15:10:43,336 INFO L280 TraceCheckUtils]: 97: Hoare triple {5549#true} assume true; {5549#true} is VALID [2020-07-10 15:10:43,336 INFO L275 TraceCheckUtils]: 98: Hoare quadruple {5549#true} {5549#true} #514#return; {5549#true} is VALID [2020-07-10 15:10:43,336 INFO L280 TraceCheckUtils]: 99: Hoare triple {5549#true} assume true; {5549#true} is VALID [2020-07-10 15:10:43,336 INFO L275 TraceCheckUtils]: 100: Hoare quadruple {5549#true} {5549#true} #534#return; {5549#true} is VALID [2020-07-10 15:10:43,339 INFO L263 TraceCheckUtils]: 101: Hoare triple {5549#true} call ##fun~$Pointer$~TO~VOID(~#dll~0.base, ~#dll~0.offset, ~insert_fnc.base, ~insert_fnc.offset); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,339 INFO L280 TraceCheckUtils]: 102: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {5549#true} is VALID [2020-07-10 15:10:43,339 INFO L280 TraceCheckUtils]: 103: Hoare triple {5549#true} assume !(#in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset); {5549#true} is VALID [2020-07-10 15:10:43,341 INFO L263 TraceCheckUtils]: 104: Hoare triple {5549#true} call dll_insert_slave(#~9.base, #~9.offset); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,341 INFO L280 TraceCheckUtils]: 105: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {5549#true} is VALID [2020-07-10 15:10:43,342 INFO L263 TraceCheckUtils]: 106: Hoare triple {5549#true} call #t~ret4.base, #t~ret4.offset := alloc_or_die_slave(); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,342 INFO L280 TraceCheckUtils]: 107: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {5549#true} is VALID [2020-07-10 15:10:43,343 INFO L280 TraceCheckUtils]: 108: Hoare triple {5549#true} assume !(~ptr~0.base == 0 && ~ptr~0.offset == 0); {5549#true} is VALID [2020-07-10 15:10:43,343 INFO L280 TraceCheckUtils]: 109: Hoare triple {5549#true} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {5549#true} is VALID [2020-07-10 15:10:43,343 INFO L280 TraceCheckUtils]: 110: Hoare triple {5549#true} assume true; {5549#true} is VALID [2020-07-10 15:10:43,343 INFO L275 TraceCheckUtils]: 111: Hoare quadruple {5549#true} {5549#true} #490#return; {5549#true} is VALID [2020-07-10 15:10:43,343 INFO L280 TraceCheckUtils]: 112: Hoare triple {5549#true} ~item~0.base, ~item~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~0.base, ~next~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset;call write~$Pointer$(~next~0.base, ~next~0.offset, ~item~0.base, ~item~0.offset, 4); {5549#true} is VALID [2020-07-10 15:10:43,344 INFO L280 TraceCheckUtils]: 113: Hoare triple {5549#true} assume !(~next~0.base != 0 || ~next~0.offset != 0); {5549#true} is VALID [2020-07-10 15:10:43,344 INFO L280 TraceCheckUtils]: 114: Hoare triple {5549#true} call write~$Pointer$(~item~0.base, ~item~0.offset, ~dll.base, ~dll.offset, 4); {5549#true} is VALID [2020-07-10 15:10:43,344 INFO L280 TraceCheckUtils]: 115: Hoare triple {5549#true} assume true; {5549#true} is VALID [2020-07-10 15:10:43,344 INFO L275 TraceCheckUtils]: 116: Hoare quadruple {5549#true} {5549#true} #514#return; {5549#true} is VALID [2020-07-10 15:10:43,344 INFO L280 TraceCheckUtils]: 117: Hoare triple {5549#true} assume true; {5549#true} is VALID [2020-07-10 15:10:43,344 INFO L275 TraceCheckUtils]: 118: Hoare quadruple {5549#true} {5549#true} #536#return; {5549#true} is VALID [2020-07-10 15:10:43,345 INFO L280 TraceCheckUtils]: 119: Hoare triple {5549#true} assume -2147483648 <= #t~nondet8 && #t~nondet8 <= 2147483647; {5549#true} is VALID [2020-07-10 15:10:43,345 INFO L280 TraceCheckUtils]: 120: Hoare triple {5549#true} assume !(0 != #t~nondet8);havoc #t~nondet8; {5549#true} is VALID [2020-07-10 15:10:43,345 INFO L280 TraceCheckUtils]: 121: Hoare triple {5549#true} call #t~mem10.base, #t~mem10.offset := read~$Pointer$(~#dll~0.base, ~#dll~0.offset, 4);#res.base, #res.offset := #t~mem10.base, #t~mem10.offset;havoc #t~mem10.base, #t~mem10.offset;call ULTIMATE.dealloc(~#dll~0.base, ~#dll~0.offset);havoc ~#dll~0.base, ~#dll~0.offset; {5549#true} is VALID [2020-07-10 15:10:43,345 INFO L280 TraceCheckUtils]: 122: Hoare triple {5549#true} assume true; {5549#true} is VALID [2020-07-10 15:10:43,345 INFO L275 TraceCheckUtils]: 123: Hoare quadruple {5549#true} {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #540#return; {5549#true} is VALID [2020-07-10 15:10:43,346 INFO L280 TraceCheckUtils]: 124: Hoare triple {5549#true} #res.base, #res.offset := #t~ret11.base, #t~ret11.offset;havoc #t~ret11.base, #t~ret11.offset; {5549#true} is VALID [2020-07-10 15:10:43,346 INFO L280 TraceCheckUtils]: 125: Hoare triple {5549#true} assume true; {5549#true} is VALID [2020-07-10 15:10:43,346 INFO L275 TraceCheckUtils]: 126: Hoare quadruple {5549#true} {5549#true} #496#return; {5549#true} is VALID [2020-07-10 15:10:43,346 INFO L280 TraceCheckUtils]: 127: Hoare triple {5549#true} call write~$Pointer$(#t~ret19.base, #t~ret19.offset, ~item~1.base, 8 + ~item~1.offset, 4);havoc #t~ret19.base, #t~ret19.offset;call write~$Pointer$(~item~1.base, ~item~1.offset, ~dll.base, ~dll.offset, 4); {5549#true} is VALID [2020-07-10 15:10:43,347 INFO L280 TraceCheckUtils]: 128: Hoare triple {5549#true} assume true; {5549#true} is VALID [2020-07-10 15:10:43,347 INFO L275 TraceCheckUtils]: 129: Hoare quadruple {5549#true} {5549#true} #512#return; {5549#true} is VALID [2020-07-10 15:10:43,347 INFO L280 TraceCheckUtils]: 130: Hoare triple {5549#true} assume true; {5549#true} is VALID [2020-07-10 15:10:43,348 INFO L275 TraceCheckUtils]: 131: Hoare quadruple {5549#true} {5550#false} #536#return; {5550#false} is VALID [2020-07-10 15:10:43,348 INFO L280 TraceCheckUtils]: 132: Hoare triple {5550#false} assume -2147483648 <= #t~nondet8 && #t~nondet8 <= 2147483647; {5550#false} is VALID [2020-07-10 15:10:43,348 INFO L280 TraceCheckUtils]: 133: Hoare triple {5550#false} assume !(0 != #t~nondet8);havoc #t~nondet8; {5550#false} is VALID [2020-07-10 15:10:43,349 INFO L280 TraceCheckUtils]: 134: Hoare triple {5550#false} call #t~mem10.base, #t~mem10.offset := read~$Pointer$(~#dll~0.base, ~#dll~0.offset, 4);#res.base, #res.offset := #t~mem10.base, #t~mem10.offset;havoc #t~mem10.base, #t~mem10.offset;call ULTIMATE.dealloc(~#dll~0.base, ~#dll~0.offset);havoc ~#dll~0.base, ~#dll~0.offset; {5550#false} is VALID [2020-07-10 15:10:43,349 INFO L280 TraceCheckUtils]: 135: Hoare triple {5550#false} assume true; {5550#false} is VALID [2020-07-10 15:10:43,349 INFO L275 TraceCheckUtils]: 136: Hoare quadruple {5550#false} {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #492#return; {5550#false} is VALID [2020-07-10 15:10:43,349 INFO L280 TraceCheckUtils]: 137: Hoare triple {5550#false} #res.base, #res.offset := #t~ret20.base, #t~ret20.offset;havoc #t~ret20.base, #t~ret20.offset; {5550#false} is VALID [2020-07-10 15:10:43,350 INFO L280 TraceCheckUtils]: 138: Hoare triple {5550#false} assume true; {5550#false} is VALID [2020-07-10 15:10:43,350 INFO L275 TraceCheckUtils]: 139: Hoare quadruple {5550#false} {5549#true} #498#return; {5550#false} is VALID [2020-07-10 15:10:43,395 INFO L263 TraceCheckUtils]: 0: Hoare triple {5549#true} call ULTIMATE.init(); {5694#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} is VALID [2020-07-10 15:10:43,395 INFO L280 TraceCheckUtils]: 1: Hoare triple {5694#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];assume 0 < #StackHeapBarrier; {5549#true} is VALID [2020-07-10 15:10:43,395 INFO L280 TraceCheckUtils]: 2: Hoare triple {5549#true} assume true; {5549#true} is VALID [2020-07-10 15:10:43,396 INFO L275 TraceCheckUtils]: 3: Hoare quadruple {5549#true} {5549#true} #542#return; {5549#true} is VALID [2020-07-10 15:10:43,396 INFO L263 TraceCheckUtils]: 4: Hoare triple {5549#true} call #t~ret46 := main(); {5549#true} is VALID [2020-07-10 15:10:43,397 INFO L263 TraceCheckUtils]: 5: Hoare triple {5549#true} call #t~ret45.base, #t~ret45.offset := dll_create_master(); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,398 INFO L263 TraceCheckUtils]: 6: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~ret20.base, #t~ret20.offset := dll_create_generic(#funAddr~dll_insert_master.base, #funAddr~dll_insert_master.offset); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,399 INFO L280 TraceCheckUtils]: 7: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~insert_fnc.base, ~insert_fnc.offset := #in~insert_fnc.base, #in~insert_fnc.offset;call ~#dll~0.base, ~#dll~0.offset := #Ultimate.allocOnStack(4);call write~init~$Pointer$(0, 0, ~#dll~0.base, ~#dll~0.offset, 4); {5549#true} is VALID [2020-07-10 15:10:43,400 INFO L263 TraceCheckUtils]: 8: Hoare triple {5549#true} call ##fun~$Pointer$~TO~VOID(~#dll~0.base, ~#dll~0.offset, ~insert_fnc.base, ~insert_fnc.offset); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,401 INFO L280 TraceCheckUtils]: 9: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {5549#true} is VALID [2020-07-10 15:10:43,401 INFO L280 TraceCheckUtils]: 10: Hoare triple {5549#true} assume #in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset; {5549#true} is VALID [2020-07-10 15:10:43,402 INFO L263 TraceCheckUtils]: 11: Hoare triple {5549#true} call dll_insert_master(#~9.base, #~9.offset); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,403 INFO L280 TraceCheckUtils]: 12: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {5549#true} is VALID [2020-07-10 15:10:43,404 INFO L263 TraceCheckUtils]: 13: Hoare triple {5549#true} call #t~ret17.base, #t~ret17.offset := alloc_or_die_master(); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,405 INFO L280 TraceCheckUtils]: 14: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc3.base, #t~malloc3.offset := #Ultimate.allocOnHeap(12);~ptr~1.base, ~ptr~1.offset := #t~malloc3.base, #t~malloc3.offset; {5549#true} is VALID [2020-07-10 15:10:43,405 INFO L280 TraceCheckUtils]: 15: Hoare triple {5549#true} assume !(~ptr~1.base == 0 && ~ptr~1.offset == 0); {5549#true} is VALID [2020-07-10 15:10:43,405 INFO L280 TraceCheckUtils]: 16: Hoare triple {5549#true} call write~$Pointer$(0, 0, ~ptr~1.base, ~ptr~1.offset, 4);call write~$Pointer$(0, 0, ~ptr~1.base, 4 + ~ptr~1.offset, 4);call write~$Pointer$(0, 0, ~ptr~1.base, 8 + ~ptr~1.offset, 4);#res.base, #res.offset := ~ptr~1.base, ~ptr~1.offset; {5549#true} is VALID [2020-07-10 15:10:43,405 INFO L280 TraceCheckUtils]: 17: Hoare triple {5549#true} assume true; {5549#true} is VALID [2020-07-10 15:10:43,406 INFO L275 TraceCheckUtils]: 18: Hoare quadruple {5549#true} {5549#true} #494#return; {5549#true} is VALID [2020-07-10 15:10:43,406 INFO L280 TraceCheckUtils]: 19: Hoare triple {5549#true} ~item~1.base, ~item~1.offset := #t~ret17.base, #t~ret17.offset;havoc #t~ret17.base, #t~ret17.offset;call #t~mem18.base, #t~mem18.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~3.base, ~next~3.offset := #t~mem18.base, #t~mem18.offset;havoc #t~mem18.base, #t~mem18.offset;call write~$Pointer$(~next~3.base, ~next~3.offset, ~item~1.base, ~item~1.offset, 4); {5549#true} is VALID [2020-07-10 15:10:43,406 INFO L280 TraceCheckUtils]: 20: Hoare triple {5549#true} assume !(~next~3.base != 0 || ~next~3.offset != 0); {5549#true} is VALID [2020-07-10 15:10:43,408 INFO L263 TraceCheckUtils]: 21: Hoare triple {5549#true} call #t~ret19.base, #t~ret19.offset := dll_create_slave(); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,410 INFO L263 TraceCheckUtils]: 22: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~ret11.base, #t~ret11.offset := dll_create_generic(#funAddr~dll_insert_slave.base, #funAddr~dll_insert_slave.offset); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,412 INFO L280 TraceCheckUtils]: 23: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~insert_fnc.base, ~insert_fnc.offset := #in~insert_fnc.base, #in~insert_fnc.offset;call ~#dll~0.base, ~#dll~0.offset := #Ultimate.allocOnStack(4);call write~init~$Pointer$(0, 0, ~#dll~0.base, ~#dll~0.offset, 4); {6112#(<= (+ |#StackHeapBarrier| 1) |dll_create_generic_~#dll~0.base|)} is VALID [2020-07-10 15:10:43,414 INFO L263 TraceCheckUtils]: 24: Hoare triple {6112#(<= (+ |#StackHeapBarrier| 1) |dll_create_generic_~#dll~0.base|)} call ##fun~$Pointer$~TO~VOID(~#dll~0.base, ~#dll~0.offset, ~insert_fnc.base, ~insert_fnc.offset); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,415 INFO L280 TraceCheckUtils]: 25: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {6148#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|))} is VALID [2020-07-10 15:10:43,416 INFO L280 TraceCheckUtils]: 26: Hoare triple {6148#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|))} assume !(#in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset); {6148#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|))} is VALID [2020-07-10 15:10:43,418 INFO L263 TraceCheckUtils]: 27: Hoare triple {6148#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|))} call dll_insert_slave(#~9.base, #~9.offset); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,419 INFO L280 TraceCheckUtils]: 28: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {6162#(and (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|))} is VALID [2020-07-10 15:10:43,421 INFO L263 TraceCheckUtils]: 29: Hoare triple {6162#(and (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|))} call #t~ret4.base, #t~ret4.offset := alloc_or_die_slave(); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,422 INFO L280 TraceCheckUtils]: 30: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {6171#(or (<= (+ alloc_or_die_slave_~ptr~0.base 1) 0) (<= 1 alloc_or_die_slave_~ptr~0.base))} is VALID [2020-07-10 15:10:43,423 INFO L280 TraceCheckUtils]: 31: Hoare triple {6171#(or (<= (+ alloc_or_die_slave_~ptr~0.base 1) 0) (<= 1 alloc_or_die_slave_~ptr~0.base))} assume !(~ptr~0.base == 0 && ~ptr~0.offset == 0); {6171#(or (<= (+ alloc_or_die_slave_~ptr~0.base 1) 0) (<= 1 alloc_or_die_slave_~ptr~0.base))} is VALID [2020-07-10 15:10:43,424 INFO L280 TraceCheckUtils]: 32: Hoare triple {6171#(or (<= (+ alloc_or_die_slave_~ptr~0.base 1) 0) (<= 1 alloc_or_die_slave_~ptr~0.base))} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {6172#(or (<= (+ |alloc_or_die_slave_#res.base| 1) 0) (<= 1 |alloc_or_die_slave_#res.base|))} is VALID [2020-07-10 15:10:43,424 INFO L280 TraceCheckUtils]: 33: Hoare triple {6172#(or (<= (+ |alloc_or_die_slave_#res.base| 1) 0) (<= 1 |alloc_or_die_slave_#res.base|))} assume true; {6172#(or (<= (+ |alloc_or_die_slave_#res.base| 1) 0) (<= 1 |alloc_or_die_slave_#res.base|))} is VALID [2020-07-10 15:10:43,426 INFO L275 TraceCheckUtils]: 34: Hoare quadruple {6172#(or (<= (+ |alloc_or_die_slave_#res.base| 1) 0) (<= 1 |alloc_or_die_slave_#res.base|))} {6162#(and (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|))} #490#return; {6168#(and (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|) (not (= 0 |dll_insert_slave_#t~ret4.base|)))} is VALID [2020-07-10 15:10:43,427 INFO L280 TraceCheckUtils]: 35: Hoare triple {6168#(and (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|) (not (= 0 |dll_insert_slave_#t~ret4.base|)))} ~item~0.base, ~item~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~0.base, ~next~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset;call write~$Pointer$(~next~0.base, ~next~0.offset, ~item~0.base, ~item~0.offset, 4); {6169#(and (not (= 0 dll_insert_slave_~item~0.base)) (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|))} is VALID [2020-07-10 15:10:43,428 INFO L280 TraceCheckUtils]: 36: Hoare triple {6169#(and (not (= 0 dll_insert_slave_~item~0.base)) (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|))} assume !(~next~0.base != 0 || ~next~0.offset != 0); {6169#(and (not (= 0 dll_insert_slave_~item~0.base)) (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|))} is VALID [2020-07-10 15:10:43,429 INFO L280 TraceCheckUtils]: 37: Hoare triple {6169#(and (not (= 0 dll_insert_slave_~item~0.base)) (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|))} call write~$Pointer$(~item~0.base, ~item~0.offset, ~dll.base, ~dll.offset, 4); {6170#(not (= 0 (select (select |#memory_$Pointer$.base| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|)))} is VALID [2020-07-10 15:10:43,429 INFO L280 TraceCheckUtils]: 38: Hoare triple {6170#(not (= 0 (select (select |#memory_$Pointer$.base| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|)))} assume true; {6170#(not (= 0 (select (select |#memory_$Pointer$.base| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|)))} is VALID [2020-07-10 15:10:43,431 INFO L275 TraceCheckUtils]: 39: Hoare quadruple {6170#(not (= 0 (select (select |#memory_$Pointer$.base| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|)))} {6148#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|))} #514#return; {6161#(not (= 0 (select (select |#memory_$Pointer$.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|)))} is VALID [2020-07-10 15:10:43,432 INFO L280 TraceCheckUtils]: 40: Hoare triple {6161#(not (= 0 (select (select |#memory_$Pointer$.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|)))} assume true; {6161#(not (= 0 (select (select |#memory_$Pointer$.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|)))} is VALID [2020-07-10 15:10:43,434 INFO L275 TraceCheckUtils]: 41: Hoare quadruple {6161#(not (= 0 (select (select |#memory_$Pointer$.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|)))} {6112#(<= (+ |#StackHeapBarrier| 1) |dll_create_generic_~#dll~0.base|)} #534#return; {6130#(and (<= (+ |#StackHeapBarrier| 1) |dll_create_generic_~#dll~0.base|) (not (= 0 (select (select |#memory_$Pointer$.base| |dll_create_generic_~#dll~0.base|) |dll_create_generic_~#dll~0.offset|))))} is VALID [2020-07-10 15:10:43,437 INFO L263 TraceCheckUtils]: 42: Hoare triple {6130#(and (<= (+ |#StackHeapBarrier| 1) |dll_create_generic_~#dll~0.base|) (not (= 0 (select (select |#memory_$Pointer$.base| |dll_create_generic_~#dll~0.base|) |dll_create_generic_~#dll~0.offset|))))} call ##fun~$Pointer$~TO~VOID(~#dll~0.base, ~#dll~0.offset, ~insert_fnc.base, ~insert_fnc.offset); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,438 INFO L280 TraceCheckUtils]: 43: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {6173#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|))} is VALID [2020-07-10 15:10:43,439 INFO L280 TraceCheckUtils]: 44: Hoare triple {6173#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|))} assume !(#in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset); {6173#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|))} is VALID [2020-07-10 15:10:43,441 INFO L263 TraceCheckUtils]: 45: Hoare triple {6173#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|))} call dll_insert_slave(#~9.base, #~9.offset); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,442 INFO L280 TraceCheckUtils]: 46: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {6187#(and (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|) (= (select |#memory_$Pointer$.base| dll_insert_slave_~dll.base) (select |old(#memory_$Pointer$.base)| dll_insert_slave_~dll.base)))} is VALID [2020-07-10 15:10:43,444 INFO L263 TraceCheckUtils]: 47: Hoare triple {6187#(and (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|) (= (select |#memory_$Pointer$.base| dll_insert_slave_~dll.base) (select |old(#memory_$Pointer$.base)| dll_insert_slave_~dll.base)))} call #t~ret4.base, #t~ret4.offset := alloc_or_die_slave(); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,446 INFO L280 TraceCheckUtils]: 48: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {6196#(and (<= (+ alloc_or_die_slave_~ptr~0.base 1) |#StackHeapBarrier|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|))} is VALID [2020-07-10 15:10:43,447 INFO L280 TraceCheckUtils]: 49: Hoare triple {6196#(and (<= (+ alloc_or_die_slave_~ptr~0.base 1) |#StackHeapBarrier|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|))} assume !(~ptr~0.base == 0 && ~ptr~0.offset == 0); {6196#(and (<= (+ alloc_or_die_slave_~ptr~0.base 1) |#StackHeapBarrier|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|))} is VALID [2020-07-10 15:10:43,449 INFO L280 TraceCheckUtils]: 50: Hoare triple {6196#(and (<= (+ alloc_or_die_slave_~ptr~0.base 1) |#StackHeapBarrier|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|))} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {6197#(and (= |#memory_$Pointer$.base| (store |old(#memory_$Pointer$.base)| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) (select |#memory_$Pointer$.base| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|)))) (or (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (<= (+ (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) 1) |#StackHeapBarrier|)))} is VALID [2020-07-10 15:10:43,450 INFO L280 TraceCheckUtils]: 51: Hoare triple {6197#(and (= |#memory_$Pointer$.base| (store |old(#memory_$Pointer$.base)| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) (select |#memory_$Pointer$.base| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|)))) (or (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (<= (+ (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) 1) |#StackHeapBarrier|)))} assume true; {6197#(and (= |#memory_$Pointer$.base| (store |old(#memory_$Pointer$.base)| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) (select |#memory_$Pointer$.base| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|)))) (or (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (<= (+ (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) 1) |#StackHeapBarrier|)))} is VALID [2020-07-10 15:10:43,453 INFO L275 TraceCheckUtils]: 52: Hoare quadruple {6197#(and (= |#memory_$Pointer$.base| (store |old(#memory_$Pointer$.base)| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) (select |#memory_$Pointer$.base| (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|)))) (or (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (<= (+ (@diff |old(#memory_$Pointer$.base)| |#memory_$Pointer$.base|) 1) |#StackHeapBarrier|)))} {6187#(and (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|) (= (select |#memory_$Pointer$.base| dll_insert_slave_~dll.base) (select |old(#memory_$Pointer$.base)| dll_insert_slave_~dll.base)))} #490#return; {6193#(and (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|) (or (<= (+ dll_insert_slave_~dll.base 1) |#StackHeapBarrier|) (= (select |#memory_$Pointer$.base| dll_insert_slave_~dll.base) (select |old(#memory_$Pointer$.base)| dll_insert_slave_~dll.base))))} is VALID [2020-07-10 15:10:43,454 INFO L280 TraceCheckUtils]: 53: Hoare triple {6193#(and (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|) (or (<= (+ dll_insert_slave_~dll.base 1) |#StackHeapBarrier|) (= (select |#memory_$Pointer$.base| dll_insert_slave_~dll.base) (select |old(#memory_$Pointer$.base)| dll_insert_slave_~dll.base))))} ~item~0.base, ~item~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~0.base, ~next~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset;call write~$Pointer$(~next~0.base, ~next~0.offset, ~item~0.base, ~item~0.offset, 4); {6194#(or (= (select (select |old(#memory_$Pointer$.base)| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|) dll_insert_slave_~next~0.base) (<= (+ |dll_insert_slave_#in~dll.base| 1) |#StackHeapBarrier|))} is VALID [2020-07-10 15:10:43,455 INFO L280 TraceCheckUtils]: 54: Hoare triple {6194#(or (= (select (select |old(#memory_$Pointer$.base)| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|) dll_insert_slave_~next~0.base) (<= (+ |dll_insert_slave_#in~dll.base| 1) |#StackHeapBarrier|))} assume !(~next~0.base != 0 || ~next~0.offset != 0); {6195#(or (= 0 (select (select |old(#memory_$Pointer$.base)| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|)) (<= (+ |dll_insert_slave_#in~dll.base| 1) |#StackHeapBarrier|))} is VALID [2020-07-10 15:10:43,455 INFO L280 TraceCheckUtils]: 55: Hoare triple {6195#(or (= 0 (select (select |old(#memory_$Pointer$.base)| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|)) (<= (+ |dll_insert_slave_#in~dll.base| 1) |#StackHeapBarrier|))} call write~$Pointer$(~item~0.base, ~item~0.offset, ~dll.base, ~dll.offset, 4); {6195#(or (= 0 (select (select |old(#memory_$Pointer$.base)| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|)) (<= (+ |dll_insert_slave_#in~dll.base| 1) |#StackHeapBarrier|))} is VALID [2020-07-10 15:10:43,456 INFO L280 TraceCheckUtils]: 56: Hoare triple {6195#(or (= 0 (select (select |old(#memory_$Pointer$.base)| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|)) (<= (+ |dll_insert_slave_#in~dll.base| 1) |#StackHeapBarrier|))} assume true; {6195#(or (= 0 (select (select |old(#memory_$Pointer$.base)| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|)) (<= (+ |dll_insert_slave_#in~dll.base| 1) |#StackHeapBarrier|))} is VALID [2020-07-10 15:10:43,458 INFO L275 TraceCheckUtils]: 57: Hoare quadruple {6195#(or (= 0 (select (select |old(#memory_$Pointer$.base)| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|)) (<= (+ |dll_insert_slave_#in~dll.base| 1) |#StackHeapBarrier|))} {6173#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|))} #514#return; {6186#(or (<= (+ |##fun~$Pointer$~TO~VOID_#in~9.base| 1) |#StackHeapBarrier|) (= 0 (select (select |old(#memory_$Pointer$.base)| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|)))} is VALID [2020-07-10 15:10:43,459 INFO L280 TraceCheckUtils]: 58: Hoare triple {6186#(or (<= (+ |##fun~$Pointer$~TO~VOID_#in~9.base| 1) |#StackHeapBarrier|) (= 0 (select (select |old(#memory_$Pointer$.base)| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|)))} assume true; {6186#(or (<= (+ |##fun~$Pointer$~TO~VOID_#in~9.base| 1) |#StackHeapBarrier|) (= 0 (select (select |old(#memory_$Pointer$.base)| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|)))} is VALID [2020-07-10 15:10:43,461 INFO L275 TraceCheckUtils]: 59: Hoare quadruple {6186#(or (<= (+ |##fun~$Pointer$~TO~VOID_#in~9.base| 1) |#StackHeapBarrier|) (= 0 (select (select |old(#memory_$Pointer$.base)| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|)))} {6130#(and (<= (+ |#StackHeapBarrier| 1) |dll_create_generic_~#dll~0.base|) (not (= 0 (select (select |#memory_$Pointer$.base| |dll_create_generic_~#dll~0.base|) |dll_create_generic_~#dll~0.offset|))))} #536#return; {5550#false} is VALID [2020-07-10 15:10:43,461 INFO L280 TraceCheckUtils]: 60: Hoare triple {5550#false} assume -2147483648 <= #t~nondet8 && #t~nondet8 <= 2147483647; {5550#false} is VALID [2020-07-10 15:10:43,462 INFO L280 TraceCheckUtils]: 61: Hoare triple {5550#false} assume !(0 != #t~nondet8);havoc #t~nondet8; {5550#false} is VALID [2020-07-10 15:10:43,462 INFO L280 TraceCheckUtils]: 62: Hoare triple {5550#false} call #t~mem10.base, #t~mem10.offset := read~$Pointer$(~#dll~0.base, ~#dll~0.offset, 4);#res.base, #res.offset := #t~mem10.base, #t~mem10.offset;havoc #t~mem10.base, #t~mem10.offset;call ULTIMATE.dealloc(~#dll~0.base, ~#dll~0.offset);havoc ~#dll~0.base, ~#dll~0.offset; {5550#false} is VALID [2020-07-10 15:10:43,462 INFO L280 TraceCheckUtils]: 63: Hoare triple {5550#false} assume true; {5550#false} is VALID [2020-07-10 15:10:43,462 INFO L275 TraceCheckUtils]: 64: Hoare quadruple {5550#false} {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #540#return; {5550#false} is VALID [2020-07-10 15:10:43,463 INFO L280 TraceCheckUtils]: 65: Hoare triple {5550#false} #res.base, #res.offset := #t~ret11.base, #t~ret11.offset;havoc #t~ret11.base, #t~ret11.offset; {5550#false} is VALID [2020-07-10 15:10:43,463 INFO L280 TraceCheckUtils]: 66: Hoare triple {5550#false} assume true; {5550#false} is VALID [2020-07-10 15:10:43,463 INFO L275 TraceCheckUtils]: 67: Hoare quadruple {5550#false} {5549#true} #496#return; {5550#false} is VALID [2020-07-10 15:10:43,464 INFO L280 TraceCheckUtils]: 68: Hoare triple {5550#false} call write~$Pointer$(#t~ret19.base, #t~ret19.offset, ~item~1.base, 8 + ~item~1.offset, 4);havoc #t~ret19.base, #t~ret19.offset;call write~$Pointer$(~item~1.base, ~item~1.offset, ~dll.base, ~dll.offset, 4); {5550#false} is VALID [2020-07-10 15:10:43,464 INFO L280 TraceCheckUtils]: 69: Hoare triple {5550#false} assume true; {5550#false} is VALID [2020-07-10 15:10:43,464 INFO L275 TraceCheckUtils]: 70: Hoare quadruple {5550#false} {5549#true} #512#return; {5550#false} is VALID [2020-07-10 15:10:43,464 INFO L280 TraceCheckUtils]: 71: Hoare triple {5550#false} assume true; {5550#false} is VALID [2020-07-10 15:10:43,465 INFO L275 TraceCheckUtils]: 72: Hoare quadruple {5550#false} {5549#true} #534#return; {5550#false} is VALID [2020-07-10 15:10:43,465 INFO L263 TraceCheckUtils]: 73: Hoare triple {5550#false} call ##fun~$Pointer$~TO~VOID(~#dll~0.base, ~#dll~0.offset, ~insert_fnc.base, ~insert_fnc.offset); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,465 INFO L280 TraceCheckUtils]: 74: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {5549#true} is VALID [2020-07-10 15:10:43,466 INFO L280 TraceCheckUtils]: 75: Hoare triple {5549#true} assume #in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset; {5549#true} is VALID [2020-07-10 15:10:43,468 INFO L263 TraceCheckUtils]: 76: Hoare triple {5549#true} call dll_insert_master(#~9.base, #~9.offset); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,468 INFO L280 TraceCheckUtils]: 77: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {5549#true} is VALID [2020-07-10 15:10:43,469 INFO L263 TraceCheckUtils]: 78: Hoare triple {5549#true} call #t~ret17.base, #t~ret17.offset := alloc_or_die_master(); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,469 INFO L280 TraceCheckUtils]: 79: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc3.base, #t~malloc3.offset := #Ultimate.allocOnHeap(12);~ptr~1.base, ~ptr~1.offset := #t~malloc3.base, #t~malloc3.offset; {5549#true} is VALID [2020-07-10 15:10:43,470 INFO L280 TraceCheckUtils]: 80: Hoare triple {5549#true} assume !(~ptr~1.base == 0 && ~ptr~1.offset == 0); {5549#true} is VALID [2020-07-10 15:10:43,470 INFO L280 TraceCheckUtils]: 81: Hoare triple {5549#true} call write~$Pointer$(0, 0, ~ptr~1.base, ~ptr~1.offset, 4);call write~$Pointer$(0, 0, ~ptr~1.base, 4 + ~ptr~1.offset, 4);call write~$Pointer$(0, 0, ~ptr~1.base, 8 + ~ptr~1.offset, 4);#res.base, #res.offset := ~ptr~1.base, ~ptr~1.offset; {5549#true} is VALID [2020-07-10 15:10:43,470 INFO L280 TraceCheckUtils]: 82: Hoare triple {5549#true} assume true; {5549#true} is VALID [2020-07-10 15:10:43,470 INFO L275 TraceCheckUtils]: 83: Hoare quadruple {5549#true} {5549#true} #494#return; {5549#true} is VALID [2020-07-10 15:10:43,471 INFO L280 TraceCheckUtils]: 84: Hoare triple {5549#true} ~item~1.base, ~item~1.offset := #t~ret17.base, #t~ret17.offset;havoc #t~ret17.base, #t~ret17.offset;call #t~mem18.base, #t~mem18.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~3.base, ~next~3.offset := #t~mem18.base, #t~mem18.offset;havoc #t~mem18.base, #t~mem18.offset;call write~$Pointer$(~next~3.base, ~next~3.offset, ~item~1.base, ~item~1.offset, 4); {5549#true} is VALID [2020-07-10 15:10:43,471 INFO L280 TraceCheckUtils]: 85: Hoare triple {5549#true} assume ~next~3.base != 0 || ~next~3.offset != 0;call write~$Pointer$(~item~1.base, ~item~1.offset, ~next~3.base, 4 + ~next~3.offset, 4); {5549#true} is VALID [2020-07-10 15:10:43,472 INFO L263 TraceCheckUtils]: 86: Hoare triple {5549#true} call #t~ret19.base, #t~ret19.offset := dll_create_slave(); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,474 INFO L263 TraceCheckUtils]: 87: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~ret11.base, #t~ret11.offset := dll_create_generic(#funAddr~dll_insert_slave.base, #funAddr~dll_insert_slave.offset); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,474 INFO L280 TraceCheckUtils]: 88: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~insert_fnc.base, ~insert_fnc.offset := #in~insert_fnc.base, #in~insert_fnc.offset;call ~#dll~0.base, ~#dll~0.offset := #Ultimate.allocOnStack(4);call write~init~$Pointer$(0, 0, ~#dll~0.base, ~#dll~0.offset, 4); {5549#true} is VALID [2020-07-10 15:10:43,476 INFO L263 TraceCheckUtils]: 89: Hoare triple {5549#true} call ##fun~$Pointer$~TO~VOID(~#dll~0.base, ~#dll~0.offset, ~insert_fnc.base, ~insert_fnc.offset); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,476 INFO L280 TraceCheckUtils]: 90: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {5549#true} is VALID [2020-07-10 15:10:43,476 INFO L280 TraceCheckUtils]: 91: Hoare triple {5549#true} assume !(#in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset); {5549#true} is VALID [2020-07-10 15:10:43,478 INFO L263 TraceCheckUtils]: 92: Hoare triple {5549#true} call dll_insert_slave(#~9.base, #~9.offset); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,478 INFO L280 TraceCheckUtils]: 93: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {5549#true} is VALID [2020-07-10 15:10:43,479 INFO L263 TraceCheckUtils]: 94: Hoare triple {5549#true} call #t~ret4.base, #t~ret4.offset := alloc_or_die_slave(); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,480 INFO L280 TraceCheckUtils]: 95: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {5549#true} is VALID [2020-07-10 15:10:43,480 INFO L280 TraceCheckUtils]: 96: Hoare triple {5549#true} assume !(~ptr~0.base == 0 && ~ptr~0.offset == 0); {5549#true} is VALID [2020-07-10 15:10:43,480 INFO L280 TraceCheckUtils]: 97: Hoare triple {5549#true} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {5549#true} is VALID [2020-07-10 15:10:43,480 INFO L280 TraceCheckUtils]: 98: Hoare triple {5549#true} assume true; {5549#true} is VALID [2020-07-10 15:10:43,480 INFO L275 TraceCheckUtils]: 99: Hoare quadruple {5549#true} {5549#true} #490#return; {5549#true} is VALID [2020-07-10 15:10:43,481 INFO L280 TraceCheckUtils]: 100: Hoare triple {5549#true} ~item~0.base, ~item~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~0.base, ~next~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset;call write~$Pointer$(~next~0.base, ~next~0.offset, ~item~0.base, ~item~0.offset, 4); {5549#true} is VALID [2020-07-10 15:10:43,481 INFO L280 TraceCheckUtils]: 101: Hoare triple {5549#true} assume !(~next~0.base != 0 || ~next~0.offset != 0); {5549#true} is VALID [2020-07-10 15:10:43,481 INFO L280 TraceCheckUtils]: 102: Hoare triple {5549#true} call write~$Pointer$(~item~0.base, ~item~0.offset, ~dll.base, ~dll.offset, 4); {5549#true} is VALID [2020-07-10 15:10:43,481 INFO L280 TraceCheckUtils]: 103: Hoare triple {5549#true} assume true; {5549#true} is VALID [2020-07-10 15:10:43,481 INFO L275 TraceCheckUtils]: 104: Hoare quadruple {5549#true} {5549#true} #514#return; {5549#true} is VALID [2020-07-10 15:10:43,482 INFO L280 TraceCheckUtils]: 105: Hoare triple {5549#true} assume true; {5549#true} is VALID [2020-07-10 15:10:43,482 INFO L275 TraceCheckUtils]: 106: Hoare quadruple {5549#true} {5549#true} #534#return; {5549#true} is VALID [2020-07-10 15:10:43,483 INFO L263 TraceCheckUtils]: 107: Hoare triple {5549#true} call ##fun~$Pointer$~TO~VOID(~#dll~0.base, ~#dll~0.offset, ~insert_fnc.base, ~insert_fnc.offset); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,484 INFO L280 TraceCheckUtils]: 108: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {5549#true} is VALID [2020-07-10 15:10:43,484 INFO L280 TraceCheckUtils]: 109: Hoare triple {5549#true} assume !(#in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset); {5549#true} is VALID [2020-07-10 15:10:43,486 INFO L263 TraceCheckUtils]: 110: Hoare triple {5549#true} call dll_insert_slave(#~9.base, #~9.offset); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,486 INFO L280 TraceCheckUtils]: 111: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {5549#true} is VALID [2020-07-10 15:10:43,487 INFO L263 TraceCheckUtils]: 112: Hoare triple {5549#true} call #t~ret4.base, #t~ret4.offset := alloc_or_die_slave(); {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} is VALID [2020-07-10 15:10:43,488 INFO L280 TraceCheckUtils]: 113: Hoare triple {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {5549#true} is VALID [2020-07-10 15:10:43,488 INFO L280 TraceCheckUtils]: 114: Hoare triple {5549#true} assume !(~ptr~0.base == 0 && ~ptr~0.offset == 0); {5549#true} is VALID [2020-07-10 15:10:43,488 INFO L280 TraceCheckUtils]: 115: Hoare triple {5549#true} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {5549#true} is VALID [2020-07-10 15:10:43,488 INFO L280 TraceCheckUtils]: 116: Hoare triple {5549#true} assume true; {5549#true} is VALID [2020-07-10 15:10:43,489 INFO L275 TraceCheckUtils]: 117: Hoare quadruple {5549#true} {5549#true} #490#return; {5549#true} is VALID [2020-07-10 15:10:43,489 INFO L280 TraceCheckUtils]: 118: Hoare triple {5549#true} ~item~0.base, ~item~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~0.base, ~next~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset;call write~$Pointer$(~next~0.base, ~next~0.offset, ~item~0.base, ~item~0.offset, 4); {5549#true} is VALID [2020-07-10 15:10:43,489 INFO L280 TraceCheckUtils]: 119: Hoare triple {5549#true} assume !(~next~0.base != 0 || ~next~0.offset != 0); {5549#true} is VALID [2020-07-10 15:10:43,490 INFO L280 TraceCheckUtils]: 120: Hoare triple {5549#true} call write~$Pointer$(~item~0.base, ~item~0.offset, ~dll.base, ~dll.offset, 4); {5549#true} is VALID [2020-07-10 15:10:43,490 INFO L280 TraceCheckUtils]: 121: Hoare triple {5549#true} assume true; {5549#true} is VALID [2020-07-10 15:10:43,490 INFO L275 TraceCheckUtils]: 122: Hoare quadruple {5549#true} {5549#true} #514#return; {5549#true} is VALID [2020-07-10 15:10:43,490 INFO L280 TraceCheckUtils]: 123: Hoare triple {5549#true} assume true; {5549#true} is VALID [2020-07-10 15:10:43,491 INFO L275 TraceCheckUtils]: 124: Hoare quadruple {5549#true} {5549#true} #536#return; {5549#true} is VALID [2020-07-10 15:10:43,491 INFO L280 TraceCheckUtils]: 125: Hoare triple {5549#true} assume -2147483648 <= #t~nondet8 && #t~nondet8 <= 2147483647; {5549#true} is VALID [2020-07-10 15:10:43,491 INFO L280 TraceCheckUtils]: 126: Hoare triple {5549#true} assume !(0 != #t~nondet8);havoc #t~nondet8; {5549#true} is VALID [2020-07-10 15:10:43,492 INFO L280 TraceCheckUtils]: 127: Hoare triple {5549#true} call #t~mem10.base, #t~mem10.offset := read~$Pointer$(~#dll~0.base, ~#dll~0.offset, 4);#res.base, #res.offset := #t~mem10.base, #t~mem10.offset;havoc #t~mem10.base, #t~mem10.offset;call ULTIMATE.dealloc(~#dll~0.base, ~#dll~0.offset);havoc ~#dll~0.base, ~#dll~0.offset; {5549#true} is VALID [2020-07-10 15:10:43,492 INFO L280 TraceCheckUtils]: 128: Hoare triple {5549#true} assume true; {5549#true} is VALID [2020-07-10 15:10:43,492 INFO L275 TraceCheckUtils]: 129: Hoare quadruple {5549#true} {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #540#return; {5549#true} is VALID [2020-07-10 15:10:43,492 INFO L280 TraceCheckUtils]: 130: Hoare triple {5549#true} #res.base, #res.offset := #t~ret11.base, #t~ret11.offset;havoc #t~ret11.base, #t~ret11.offset; {5549#true} is VALID [2020-07-10 15:10:43,493 INFO L280 TraceCheckUtils]: 131: Hoare triple {5549#true} assume true; {5549#true} is VALID [2020-07-10 15:10:43,493 INFO L275 TraceCheckUtils]: 132: Hoare quadruple {5549#true} {5549#true} #496#return; {5549#true} is VALID [2020-07-10 15:10:43,493 INFO L280 TraceCheckUtils]: 133: Hoare triple {5549#true} call write~$Pointer$(#t~ret19.base, #t~ret19.offset, ~item~1.base, 8 + ~item~1.offset, 4);havoc #t~ret19.base, #t~ret19.offset;call write~$Pointer$(~item~1.base, ~item~1.offset, ~dll.base, ~dll.offset, 4); {5549#true} is VALID [2020-07-10 15:10:43,493 INFO L280 TraceCheckUtils]: 134: Hoare triple {5549#true} assume true; {5549#true} is VALID [2020-07-10 15:10:43,494 INFO L275 TraceCheckUtils]: 135: Hoare quadruple {5549#true} {5549#true} #512#return; {5549#true} is VALID [2020-07-10 15:10:43,494 INFO L280 TraceCheckUtils]: 136: Hoare triple {5549#true} assume true; {5549#true} is VALID [2020-07-10 15:10:43,494 INFO L275 TraceCheckUtils]: 137: Hoare quadruple {5549#true} {5550#false} #536#return; {5550#false} is VALID [2020-07-10 15:10:43,494 INFO L280 TraceCheckUtils]: 138: Hoare triple {5550#false} assume -2147483648 <= #t~nondet8 && #t~nondet8 <= 2147483647; {5550#false} is VALID [2020-07-10 15:10:43,494 INFO L280 TraceCheckUtils]: 139: Hoare triple {5550#false} assume !(0 != #t~nondet8);havoc #t~nondet8; {5550#false} is VALID [2020-07-10 15:10:43,495 INFO L280 TraceCheckUtils]: 140: Hoare triple {5550#false} call #t~mem10.base, #t~mem10.offset := read~$Pointer$(~#dll~0.base, ~#dll~0.offset, 4);#res.base, #res.offset := #t~mem10.base, #t~mem10.offset;havoc #t~mem10.base, #t~mem10.offset;call ULTIMATE.dealloc(~#dll~0.base, ~#dll~0.offset);havoc ~#dll~0.base, ~#dll~0.offset; {5550#false} is VALID [2020-07-10 15:10:43,495 INFO L280 TraceCheckUtils]: 141: Hoare triple {5550#false} assume true; {5550#false} is VALID [2020-07-10 15:10:43,495 INFO L275 TraceCheckUtils]: 142: Hoare quadruple {5550#false} {5695#(and (= |#valid| |old(#valid)|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) (= |old(#length)| |#length|) (= |#memory_$Pointer$.offset| |old(#memory_$Pointer$.offset)|))} #492#return; {5550#false} is VALID [2020-07-10 15:10:43,495 INFO L280 TraceCheckUtils]: 143: Hoare triple {5550#false} #res.base, #res.offset := #t~ret20.base, #t~ret20.offset;havoc #t~ret20.base, #t~ret20.offset; {5550#false} is VALID [2020-07-10 15:10:43,495 INFO L280 TraceCheckUtils]: 144: Hoare triple {5550#false} assume true; {5550#false} is VALID [2020-07-10 15:10:43,496 INFO L275 TraceCheckUtils]: 145: Hoare quadruple {5550#false} {5549#true} #498#return; {5550#false} is VALID [2020-07-10 15:10:43,496 INFO L280 TraceCheckUtils]: 146: Hoare triple {5550#false} ~dll~1.base, ~dll~1.offset := #t~ret45.base, #t~ret45.offset;havoc #t~ret45.base, #t~ret45.offset; {5550#false} is VALID [2020-07-10 15:10:43,496 INFO L263 TraceCheckUtils]: 147: Hoare triple {5550#false} call inspect_full(~dll~1.base, ~dll~1.offset); {5550#false} is VALID [2020-07-10 15:10:43,496 INFO L280 TraceCheckUtils]: 148: Hoare triple {5550#false} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {5550#false} is VALID [2020-07-10 15:10:43,496 INFO L263 TraceCheckUtils]: 149: Hoare triple {5550#false} call inspect_base(~dll.base, ~dll.offset); {5550#false} is VALID [2020-07-10 15:10:43,496 INFO L280 TraceCheckUtils]: 150: Hoare triple {5550#false} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {5550#false} is VALID [2020-07-10 15:10:43,497 INFO L280 TraceCheckUtils]: 151: Hoare triple {5550#false} assume !(~dll.base == 0 && ~dll.offset == 0); {5550#false} is VALID [2020-07-10 15:10:43,497 INFO L280 TraceCheckUtils]: 152: Hoare triple {5550#false} goto; {5550#false} is VALID [2020-07-10 15:10:43,497 INFO L280 TraceCheckUtils]: 153: Hoare triple {5550#false} call #t~mem21.base, #t~mem21.offset := read~$Pointer$(~dll.base, ~dll.offset, 4); {5550#false} is VALID [2020-07-10 15:10:43,497 INFO L280 TraceCheckUtils]: 154: Hoare triple {5550#false} assume #t~mem21.base == 0 && #t~mem21.offset == 0;havoc #t~mem21.base, #t~mem21.offset; {5550#false} is VALID [2020-07-10 15:10:43,498 INFO L263 TraceCheckUtils]: 155: Hoare triple {5550#false} call fail(); {5550#false} is VALID [2020-07-10 15:10:43,498 INFO L280 TraceCheckUtils]: 156: Hoare triple {5550#false} assume !false; {5550#false} is VALID [2020-07-10 15:10:43,536 INFO L134 CoverageAnalysis]: Checked inductivity of 180 backedges. 16 proven. 93 refuted. 0 times theorem prover too weak. 71 trivial. 0 not checked. [2020-07-10 15:10:43,537 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1445963252] [2020-07-10 15:10:43,537 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1419903607] [2020-07-10 15:10:43,537 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 4 with z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 4 with z3 -smt2 -in SMTLIB2_COMPLIANT=true [2020-07-10 15:10:43,745 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 15:10:43,748 INFO L264 TraceCheckSpWp]: Trace formula consists of 793 conjuncts, 62 conjunts are in the unsatisfiable core [2020-07-10 15:10:43,796 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-10 15:10:43,802 INFO L287 TraceCheckSpWp]: Computing forward predicates... [2020-07-10 15:10:43,991 INFO L384 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 11 treesize of output 7 [2020-07-10 15:10:43,991 INFO L544 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2020-07-10 15:10:43,995 INFO L624 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2020-07-10 15:10:43,997 INFO L544 ElimStorePlain]: Start of recursive call 1: 1 dim-0 vars, 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2020-07-10 15:10:43,997 INFO L244 ElimStorePlain]: Needed 2 recursive calls to eliminate 2 variables, input treesize:16, output treesize:8 [2020-07-10 15:10:44,000 WARN L406 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2020-07-10 15:10:44,001 WARN L407 uantifierElimination]: Input elimination task: ∃ [|v_#memory_$Pointer$.base_76|, dll_insert_slave_~item~0.base]. (and (not (= 0 dll_insert_slave_~item~0.base)) (= |#memory_$Pointer$.base| (store |v_#memory_$Pointer$.base_76| |dll_insert_slave_#in~dll.base| (store (select |v_#memory_$Pointer$.base_76| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset| dll_insert_slave_~item~0.base)))) [2020-07-10 15:10:44,001 WARN L408 uantifierElimination]: ElimStorePlain result: ∃ []. (not (= 0 (select (select |#memory_$Pointer$.base| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|))) [2020-07-10 15:10:44,035 INFO L384 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 8 treesize of output 4 [2020-07-10 15:10:44,037 INFO L544 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2020-07-10 15:10:44,042 INFO L624 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2020-07-10 15:10:44,046 INFO L544 ElimStorePlain]: Start of recursive call 1: 2 dim-0 vars, 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2020-07-10 15:10:44,046 INFO L244 ElimStorePlain]: Needed 2 recursive calls to eliminate 3 variables, input treesize:17, output treesize:3 [2020-07-10 15:10:44,049 WARN L406 uantifierElimination]: Trying to double check SDD result, but SMT solver's response was UNKNOWN. [2020-07-10 15:10:44,049 WARN L407 uantifierElimination]: Input elimination task: ∃ [|v_#memory_$Pointer$.base_BEFORE_CALL_1|, |v_dll_create_generic_~#dll~0.base_BEFORE_CALL_2|, |v_dll_create_generic_~#dll~0.offset_BEFORE_CALL_1|]. (and (<= (+ |#StackHeapBarrier| 1) |v_dll_create_generic_~#dll~0.base_BEFORE_CALL_2|) (not (= (select (select |v_#memory_$Pointer$.base_BEFORE_CALL_1| |v_dll_create_generic_~#dll~0.base_BEFORE_CALL_2|) |v_dll_create_generic_~#dll~0.offset_BEFORE_CALL_1|) 0)) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|)) [2020-07-10 15:10:44,049 WARN L408 uantifierElimination]: ElimStorePlain result: ∃ []. (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|) [2020-07-10 15:10:46,403 WARN L860 $PredicateComparison]: unable to prove that (exists ((alloc_or_die_slave_~ptr~0.offset Int) (alloc_or_die_slave_~ptr~0.base Int)) (and (<= (+ alloc_or_die_slave_~ptr~0.base 1) |c_#StackHeapBarrier|) (= (select (select (store |c_old(#memory_$Pointer$.base)| alloc_or_die_slave_~ptr~0.base (store (select |c_old(#memory_$Pointer$.base)| alloc_or_die_slave_~ptr~0.base) alloc_or_die_slave_~ptr~0.offset 0)) |c_dll_insert_slave_#in~dll.base|) |c_dll_insert_slave_#in~dll.offset|) c_dll_insert_slave_~next~0.base))) is different from true [2020-07-10 15:10:47,835 WARN L860 $PredicateComparison]: unable to prove that (exists ((alloc_or_die_slave_~ptr~0.offset Int) (alloc_or_die_slave_~ptr~0.base Int)) (and (<= (+ alloc_or_die_slave_~ptr~0.base 1) |c_#StackHeapBarrier|) (= 0 (select (select (store |c_old(#memory_$Pointer$.base)| alloc_or_die_slave_~ptr~0.base (store (select |c_old(#memory_$Pointer$.base)| alloc_or_die_slave_~ptr~0.base) alloc_or_die_slave_~ptr~0.offset 0)) |c_dll_insert_slave_#in~dll.base|) |c_dll_insert_slave_#in~dll.offset|)))) is different from true [2020-07-10 15:10:49,430 WARN L860 $PredicateComparison]: unable to prove that (exists ((alloc_or_die_slave_~ptr~0.offset Int) (alloc_or_die_slave_~ptr~0.base Int)) (and (<= (+ alloc_or_die_slave_~ptr~0.base 1) |c_#StackHeapBarrier|) (= 0 (select (select (store |c_old(#memory_$Pointer$.base)| alloc_or_die_slave_~ptr~0.base (store (select |c_old(#memory_$Pointer$.base)| alloc_or_die_slave_~ptr~0.base) alloc_or_die_slave_~ptr~0.offset 0)) |c_##fun~$Pointer$~TO~VOID_#in~9.base|) |c_##fun~$Pointer$~TO~VOID_#in~9.offset|)))) is different from true [2020-07-10 15:10:49,522 INFO L190 IndexEqualityManager]: detected not equals via solver [2020-07-10 15:10:49,525 INFO L544 ElimStorePlain]: Start of recursive call 2: End of recursive call: and 1 xjuncts. [2020-07-10 15:10:49,527 INFO L624 ElimStorePlain]: treesize reduction 0, result has 100.0 percent of original size [2020-07-10 15:10:49,527 INFO L544 ElimStorePlain]: Start of recursive call 1: 4 dim-0 vars, 1 dim-2 vars, End of recursive call: and 1 xjuncts. [2020-07-10 15:10:49,528 INFO L244 ElimStorePlain]: Needed 2 recursive calls to eliminate 5 variables, input treesize:34, output treesize:1 [2020-07-10 15:10:49,551 INFO L263 TraceCheckUtils]: 0: Hoare triple {5549#true} call ULTIMATE.init(); {5549#true} is VALID [2020-07-10 15:10:49,551 INFO L280 TraceCheckUtils]: 1: Hoare triple {5549#true} #NULL.base, #NULL.offset := 0, 0;#valid := #valid[0 := 0];assume 0 < #StackHeapBarrier; {5549#true} is VALID [2020-07-10 15:10:49,552 INFO L280 TraceCheckUtils]: 2: Hoare triple {5549#true} assume true; {5549#true} is VALID [2020-07-10 15:10:49,552 INFO L275 TraceCheckUtils]: 3: Hoare quadruple {5549#true} {5549#true} #542#return; {5549#true} is VALID [2020-07-10 15:10:49,552 INFO L263 TraceCheckUtils]: 4: Hoare triple {5549#true} call #t~ret46 := main(); {5549#true} is VALID [2020-07-10 15:10:49,553 INFO L263 TraceCheckUtils]: 5: Hoare triple {5549#true} call #t~ret45.base, #t~ret45.offset := dll_create_master(); {5549#true} is VALID [2020-07-10 15:10:49,553 INFO L263 TraceCheckUtils]: 6: Hoare triple {5549#true} call #t~ret20.base, #t~ret20.offset := dll_create_generic(#funAddr~dll_insert_master.base, #funAddr~dll_insert_master.offset); {5549#true} is VALID [2020-07-10 15:10:49,553 INFO L280 TraceCheckUtils]: 7: Hoare triple {5549#true} ~insert_fnc.base, ~insert_fnc.offset := #in~insert_fnc.base, #in~insert_fnc.offset;call ~#dll~0.base, ~#dll~0.offset := #Ultimate.allocOnStack(4);call write~init~$Pointer$(0, 0, ~#dll~0.base, ~#dll~0.offset, 4); {5549#true} is VALID [2020-07-10 15:10:49,554 INFO L263 TraceCheckUtils]: 8: Hoare triple {5549#true} call ##fun~$Pointer$~TO~VOID(~#dll~0.base, ~#dll~0.offset, ~insert_fnc.base, ~insert_fnc.offset); {5549#true} is VALID [2020-07-10 15:10:49,554 INFO L280 TraceCheckUtils]: 9: Hoare triple {5549#true} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {5549#true} is VALID [2020-07-10 15:10:49,554 INFO L280 TraceCheckUtils]: 10: Hoare triple {5549#true} assume #in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset; {5549#true} is VALID [2020-07-10 15:10:49,554 INFO L263 TraceCheckUtils]: 11: Hoare triple {5549#true} call dll_insert_master(#~9.base, #~9.offset); {5549#true} is VALID [2020-07-10 15:10:49,554 INFO L280 TraceCheckUtils]: 12: Hoare triple {5549#true} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {5549#true} is VALID [2020-07-10 15:10:49,555 INFO L263 TraceCheckUtils]: 13: Hoare triple {5549#true} call #t~ret17.base, #t~ret17.offset := alloc_or_die_master(); {5549#true} is VALID [2020-07-10 15:10:49,555 INFO L280 TraceCheckUtils]: 14: Hoare triple {5549#true} call #t~malloc3.base, #t~malloc3.offset := #Ultimate.allocOnHeap(12);~ptr~1.base, ~ptr~1.offset := #t~malloc3.base, #t~malloc3.offset; {5549#true} is VALID [2020-07-10 15:10:49,555 INFO L280 TraceCheckUtils]: 15: Hoare triple {5549#true} assume !(~ptr~1.base == 0 && ~ptr~1.offset == 0); {5549#true} is VALID [2020-07-10 15:10:49,555 INFO L280 TraceCheckUtils]: 16: Hoare triple {5549#true} call write~$Pointer$(0, 0, ~ptr~1.base, ~ptr~1.offset, 4);call write~$Pointer$(0, 0, ~ptr~1.base, 4 + ~ptr~1.offset, 4);call write~$Pointer$(0, 0, ~ptr~1.base, 8 + ~ptr~1.offset, 4);#res.base, #res.offset := ~ptr~1.base, ~ptr~1.offset; {5549#true} is VALID [2020-07-10 15:10:49,555 INFO L280 TraceCheckUtils]: 17: Hoare triple {5549#true} assume true; {5549#true} is VALID [2020-07-10 15:10:49,556 INFO L275 TraceCheckUtils]: 18: Hoare quadruple {5549#true} {5549#true} #494#return; {5549#true} is VALID [2020-07-10 15:10:49,556 INFO L280 TraceCheckUtils]: 19: Hoare triple {5549#true} ~item~1.base, ~item~1.offset := #t~ret17.base, #t~ret17.offset;havoc #t~ret17.base, #t~ret17.offset;call #t~mem18.base, #t~mem18.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~3.base, ~next~3.offset := #t~mem18.base, #t~mem18.offset;havoc #t~mem18.base, #t~mem18.offset;call write~$Pointer$(~next~3.base, ~next~3.offset, ~item~1.base, ~item~1.offset, 4); {5549#true} is VALID [2020-07-10 15:10:49,556 INFO L280 TraceCheckUtils]: 20: Hoare triple {5549#true} assume !(~next~3.base != 0 || ~next~3.offset != 0); {5549#true} is VALID [2020-07-10 15:10:49,556 INFO L263 TraceCheckUtils]: 21: Hoare triple {5549#true} call #t~ret19.base, #t~ret19.offset := dll_create_slave(); {5549#true} is VALID [2020-07-10 15:10:49,556 INFO L263 TraceCheckUtils]: 22: Hoare triple {5549#true} call #t~ret11.base, #t~ret11.offset := dll_create_generic(#funAddr~dll_insert_slave.base, #funAddr~dll_insert_slave.offset); {5549#true} is VALID [2020-07-10 15:10:49,557 INFO L280 TraceCheckUtils]: 23: Hoare triple {5549#true} ~insert_fnc.base, ~insert_fnc.offset := #in~insert_fnc.base, #in~insert_fnc.offset;call ~#dll~0.base, ~#dll~0.offset := #Ultimate.allocOnStack(4);call write~init~$Pointer$(0, 0, ~#dll~0.base, ~#dll~0.offset, 4); {5549#true} is VALID [2020-07-10 15:10:49,557 INFO L263 TraceCheckUtils]: 24: Hoare triple {5549#true} call ##fun~$Pointer$~TO~VOID(~#dll~0.base, ~#dll~0.offset, ~insert_fnc.base, ~insert_fnc.offset); {5549#true} is VALID [2020-07-10 15:10:49,557 INFO L280 TraceCheckUtils]: 25: Hoare triple {5549#true} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {5549#true} is VALID [2020-07-10 15:10:49,557 INFO L280 TraceCheckUtils]: 26: Hoare triple {5549#true} assume !(#in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset); {5549#true} is VALID [2020-07-10 15:10:49,557 INFO L263 TraceCheckUtils]: 27: Hoare triple {5549#true} call dll_insert_slave(#~9.base, #~9.offset); {5549#true} is VALID [2020-07-10 15:10:49,557 INFO L280 TraceCheckUtils]: 28: Hoare triple {5549#true} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {5549#true} is VALID [2020-07-10 15:10:49,558 INFO L263 TraceCheckUtils]: 29: Hoare triple {5549#true} call #t~ret4.base, #t~ret4.offset := alloc_or_die_slave(); {5549#true} is VALID [2020-07-10 15:10:49,558 INFO L280 TraceCheckUtils]: 30: Hoare triple {5549#true} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {5549#true} is VALID [2020-07-10 15:10:49,558 INFO L280 TraceCheckUtils]: 31: Hoare triple {5549#true} assume !(~ptr~0.base == 0 && ~ptr~0.offset == 0); {5549#true} is VALID [2020-07-10 15:10:49,558 INFO L280 TraceCheckUtils]: 32: Hoare triple {5549#true} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {5549#true} is VALID [2020-07-10 15:10:49,558 INFO L280 TraceCheckUtils]: 33: Hoare triple {5549#true} assume true; {5549#true} is VALID [2020-07-10 15:10:49,559 INFO L275 TraceCheckUtils]: 34: Hoare quadruple {5549#true} {5549#true} #490#return; {5549#true} is VALID [2020-07-10 15:10:49,559 INFO L280 TraceCheckUtils]: 35: Hoare triple {5549#true} ~item~0.base, ~item~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~0.base, ~next~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset;call write~$Pointer$(~next~0.base, ~next~0.offset, ~item~0.base, ~item~0.offset, 4); {5549#true} is VALID [2020-07-10 15:10:49,559 INFO L280 TraceCheckUtils]: 36: Hoare triple {5549#true} assume !(~next~0.base != 0 || ~next~0.offset != 0); {5549#true} is VALID [2020-07-10 15:10:49,559 INFO L280 TraceCheckUtils]: 37: Hoare triple {5549#true} call write~$Pointer$(~item~0.base, ~item~0.offset, ~dll.base, ~dll.offset, 4); {5549#true} is VALID [2020-07-10 15:10:49,559 INFO L280 TraceCheckUtils]: 38: Hoare triple {5549#true} assume true; {5549#true} is VALID [2020-07-10 15:10:49,560 INFO L275 TraceCheckUtils]: 39: Hoare quadruple {5549#true} {5549#true} #514#return; {5549#true} is VALID [2020-07-10 15:10:49,560 INFO L280 TraceCheckUtils]: 40: Hoare triple {5549#true} assume true; {5549#true} is VALID [2020-07-10 15:10:49,560 INFO L275 TraceCheckUtils]: 41: Hoare quadruple {5549#true} {5549#true} #534#return; {5549#true} is VALID [2020-07-10 15:10:49,560 INFO L263 TraceCheckUtils]: 42: Hoare triple {5549#true} call ##fun~$Pointer$~TO~VOID(~#dll~0.base, ~#dll~0.offset, ~insert_fnc.base, ~insert_fnc.offset); {5549#true} is VALID [2020-07-10 15:10:49,560 INFO L280 TraceCheckUtils]: 43: Hoare triple {5549#true} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {5549#true} is VALID [2020-07-10 15:10:49,560 INFO L280 TraceCheckUtils]: 44: Hoare triple {5549#true} assume !(#in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset); {5549#true} is VALID [2020-07-10 15:10:49,561 INFO L263 TraceCheckUtils]: 45: Hoare triple {5549#true} call dll_insert_slave(#~9.base, #~9.offset); {5549#true} is VALID [2020-07-10 15:10:49,561 INFO L280 TraceCheckUtils]: 46: Hoare triple {5549#true} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {5549#true} is VALID [2020-07-10 15:10:49,561 INFO L263 TraceCheckUtils]: 47: Hoare triple {5549#true} call #t~ret4.base, #t~ret4.offset := alloc_or_die_slave(); {5549#true} is VALID [2020-07-10 15:10:49,561 INFO L280 TraceCheckUtils]: 48: Hoare triple {5549#true} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {5549#true} is VALID [2020-07-10 15:10:49,561 INFO L280 TraceCheckUtils]: 49: Hoare triple {5549#true} assume !(~ptr~0.base == 0 && ~ptr~0.offset == 0); {5549#true} is VALID [2020-07-10 15:10:49,561 INFO L280 TraceCheckUtils]: 50: Hoare triple {5549#true} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {5549#true} is VALID [2020-07-10 15:10:49,562 INFO L280 TraceCheckUtils]: 51: Hoare triple {5549#true} assume true; {5549#true} is VALID [2020-07-10 15:10:49,562 INFO L275 TraceCheckUtils]: 52: Hoare quadruple {5549#true} {5549#true} #490#return; {5549#true} is VALID [2020-07-10 15:10:49,562 INFO L280 TraceCheckUtils]: 53: Hoare triple {5549#true} ~item~0.base, ~item~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~0.base, ~next~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset;call write~$Pointer$(~next~0.base, ~next~0.offset, ~item~0.base, ~item~0.offset, 4); {5549#true} is VALID [2020-07-10 15:10:49,562 INFO L280 TraceCheckUtils]: 54: Hoare triple {5549#true} assume !(~next~0.base != 0 || ~next~0.offset != 0); {5549#true} is VALID [2020-07-10 15:10:49,562 INFO L280 TraceCheckUtils]: 55: Hoare triple {5549#true} call write~$Pointer$(~item~0.base, ~item~0.offset, ~dll.base, ~dll.offset, 4); {5549#true} is VALID [2020-07-10 15:10:49,563 INFO L280 TraceCheckUtils]: 56: Hoare triple {5549#true} assume true; {5549#true} is VALID [2020-07-10 15:10:49,563 INFO L275 TraceCheckUtils]: 57: Hoare quadruple {5549#true} {5549#true} #514#return; {5549#true} is VALID [2020-07-10 15:10:49,563 INFO L280 TraceCheckUtils]: 58: Hoare triple {5549#true} assume true; {5549#true} is VALID [2020-07-10 15:10:49,563 INFO L275 TraceCheckUtils]: 59: Hoare quadruple {5549#true} {5549#true} #536#return; {5549#true} is VALID [2020-07-10 15:10:49,563 INFO L280 TraceCheckUtils]: 60: Hoare triple {5549#true} assume -2147483648 <= #t~nondet8 && #t~nondet8 <= 2147483647; {5549#true} is VALID [2020-07-10 15:10:49,563 INFO L280 TraceCheckUtils]: 61: Hoare triple {5549#true} assume !(0 != #t~nondet8);havoc #t~nondet8; {5549#true} is VALID [2020-07-10 15:10:49,564 INFO L280 TraceCheckUtils]: 62: Hoare triple {5549#true} call #t~mem10.base, #t~mem10.offset := read~$Pointer$(~#dll~0.base, ~#dll~0.offset, 4);#res.base, #res.offset := #t~mem10.base, #t~mem10.offset;havoc #t~mem10.base, #t~mem10.offset;call ULTIMATE.dealloc(~#dll~0.base, ~#dll~0.offset);havoc ~#dll~0.base, ~#dll~0.offset; {5549#true} is VALID [2020-07-10 15:10:49,564 INFO L280 TraceCheckUtils]: 63: Hoare triple {5549#true} assume true; {5549#true} is VALID [2020-07-10 15:10:49,564 INFO L275 TraceCheckUtils]: 64: Hoare quadruple {5549#true} {5549#true} #540#return; {5549#true} is VALID [2020-07-10 15:10:49,564 INFO L280 TraceCheckUtils]: 65: Hoare triple {5549#true} #res.base, #res.offset := #t~ret11.base, #t~ret11.offset;havoc #t~ret11.base, #t~ret11.offset; {5549#true} is VALID [2020-07-10 15:10:49,564 INFO L280 TraceCheckUtils]: 66: Hoare triple {5549#true} assume true; {5549#true} is VALID [2020-07-10 15:10:49,564 INFO L275 TraceCheckUtils]: 67: Hoare quadruple {5549#true} {5549#true} #496#return; {5549#true} is VALID [2020-07-10 15:10:49,565 INFO L280 TraceCheckUtils]: 68: Hoare triple {5549#true} call write~$Pointer$(#t~ret19.base, #t~ret19.offset, ~item~1.base, 8 + ~item~1.offset, 4);havoc #t~ret19.base, #t~ret19.offset;call write~$Pointer$(~item~1.base, ~item~1.offset, ~dll.base, ~dll.offset, 4); {5549#true} is VALID [2020-07-10 15:10:49,565 INFO L280 TraceCheckUtils]: 69: Hoare triple {5549#true} assume true; {5549#true} is VALID [2020-07-10 15:10:49,565 INFO L275 TraceCheckUtils]: 70: Hoare quadruple {5549#true} {5549#true} #512#return; {5549#true} is VALID [2020-07-10 15:10:49,565 INFO L280 TraceCheckUtils]: 71: Hoare triple {5549#true} assume true; {5549#true} is VALID [2020-07-10 15:10:49,565 INFO L275 TraceCheckUtils]: 72: Hoare quadruple {5549#true} {5549#true} #534#return; {5549#true} is VALID [2020-07-10 15:10:49,566 INFO L263 TraceCheckUtils]: 73: Hoare triple {5549#true} call ##fun~$Pointer$~TO~VOID(~#dll~0.base, ~#dll~0.offset, ~insert_fnc.base, ~insert_fnc.offset); {5549#true} is VALID [2020-07-10 15:10:49,566 INFO L280 TraceCheckUtils]: 74: Hoare triple {5549#true} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {5549#true} is VALID [2020-07-10 15:10:49,566 INFO L280 TraceCheckUtils]: 75: Hoare triple {5549#true} assume #in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset; {5549#true} is VALID [2020-07-10 15:10:49,566 INFO L263 TraceCheckUtils]: 76: Hoare triple {5549#true} call dll_insert_master(#~9.base, #~9.offset); {5549#true} is VALID [2020-07-10 15:10:49,566 INFO L280 TraceCheckUtils]: 77: Hoare triple {5549#true} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {5549#true} is VALID [2020-07-10 15:10:49,566 INFO L263 TraceCheckUtils]: 78: Hoare triple {5549#true} call #t~ret17.base, #t~ret17.offset := alloc_or_die_master(); {5549#true} is VALID [2020-07-10 15:10:49,567 INFO L280 TraceCheckUtils]: 79: Hoare triple {5549#true} call #t~malloc3.base, #t~malloc3.offset := #Ultimate.allocOnHeap(12);~ptr~1.base, ~ptr~1.offset := #t~malloc3.base, #t~malloc3.offset; {5549#true} is VALID [2020-07-10 15:10:49,567 INFO L280 TraceCheckUtils]: 80: Hoare triple {5549#true} assume !(~ptr~1.base == 0 && ~ptr~1.offset == 0); {5549#true} is VALID [2020-07-10 15:10:49,567 INFO L280 TraceCheckUtils]: 81: Hoare triple {5549#true} call write~$Pointer$(0, 0, ~ptr~1.base, ~ptr~1.offset, 4);call write~$Pointer$(0, 0, ~ptr~1.base, 4 + ~ptr~1.offset, 4);call write~$Pointer$(0, 0, ~ptr~1.base, 8 + ~ptr~1.offset, 4);#res.base, #res.offset := ~ptr~1.base, ~ptr~1.offset; {5549#true} is VALID [2020-07-10 15:10:49,567 INFO L280 TraceCheckUtils]: 82: Hoare triple {5549#true} assume true; {5549#true} is VALID [2020-07-10 15:10:49,567 INFO L275 TraceCheckUtils]: 83: Hoare quadruple {5549#true} {5549#true} #494#return; {5549#true} is VALID [2020-07-10 15:10:49,568 INFO L280 TraceCheckUtils]: 84: Hoare triple {5549#true} ~item~1.base, ~item~1.offset := #t~ret17.base, #t~ret17.offset;havoc #t~ret17.base, #t~ret17.offset;call #t~mem18.base, #t~mem18.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~3.base, ~next~3.offset := #t~mem18.base, #t~mem18.offset;havoc #t~mem18.base, #t~mem18.offset;call write~$Pointer$(~next~3.base, ~next~3.offset, ~item~1.base, ~item~1.offset, 4); {5549#true} is VALID [2020-07-10 15:10:49,568 INFO L280 TraceCheckUtils]: 85: Hoare triple {5549#true} assume ~next~3.base != 0 || ~next~3.offset != 0;call write~$Pointer$(~item~1.base, ~item~1.offset, ~next~3.base, 4 + ~next~3.offset, 4); {5549#true} is VALID [2020-07-10 15:10:49,568 INFO L263 TraceCheckUtils]: 86: Hoare triple {5549#true} call #t~ret19.base, #t~ret19.offset := dll_create_slave(); {5549#true} is VALID [2020-07-10 15:10:49,568 INFO L263 TraceCheckUtils]: 87: Hoare triple {5549#true} call #t~ret11.base, #t~ret11.offset := dll_create_generic(#funAddr~dll_insert_slave.base, #funAddr~dll_insert_slave.offset); {5549#true} is VALID [2020-07-10 15:10:49,569 INFO L280 TraceCheckUtils]: 88: Hoare triple {5549#true} ~insert_fnc.base, ~insert_fnc.offset := #in~insert_fnc.base, #in~insert_fnc.offset;call ~#dll~0.base, ~#dll~0.offset := #Ultimate.allocOnStack(4);call write~init~$Pointer$(0, 0, ~#dll~0.base, ~#dll~0.offset, 4); {6112#(<= (+ |#StackHeapBarrier| 1) |dll_create_generic_~#dll~0.base|)} is VALID [2020-07-10 15:10:49,570 INFO L263 TraceCheckUtils]: 89: Hoare triple {6112#(<= (+ |#StackHeapBarrier| 1) |dll_create_generic_~#dll~0.base|)} call ##fun~$Pointer$~TO~VOID(~#dll~0.base, ~#dll~0.offset, ~insert_fnc.base, ~insert_fnc.offset); {5549#true} is VALID [2020-07-10 15:10:49,571 INFO L280 TraceCheckUtils]: 90: Hoare triple {5549#true} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {6148#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|))} is VALID [2020-07-10 15:10:49,575 INFO L280 TraceCheckUtils]: 91: Hoare triple {6148#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|))} assume !(#in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset); {6148#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|))} is VALID [2020-07-10 15:10:49,576 INFO L263 TraceCheckUtils]: 92: Hoare triple {6148#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|))} call dll_insert_slave(#~9.base, #~9.offset); {5549#true} is VALID [2020-07-10 15:10:49,578 INFO L280 TraceCheckUtils]: 93: Hoare triple {5549#true} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {6162#(and (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|))} is VALID [2020-07-10 15:10:49,578 INFO L263 TraceCheckUtils]: 94: Hoare triple {6162#(and (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|))} call #t~ret4.base, #t~ret4.offset := alloc_or_die_slave(); {5549#true} is VALID [2020-07-10 15:10:49,579 INFO L280 TraceCheckUtils]: 95: Hoare triple {5549#true} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {6706#(= 0 alloc_or_die_slave_~ptr~0.offset)} is VALID [2020-07-10 15:10:49,579 INFO L280 TraceCheckUtils]: 96: Hoare triple {6706#(= 0 alloc_or_die_slave_~ptr~0.offset)} assume !(~ptr~0.base == 0 && ~ptr~0.offset == 0); {6171#(or (<= (+ alloc_or_die_slave_~ptr~0.base 1) 0) (<= 1 alloc_or_die_slave_~ptr~0.base))} is VALID [2020-07-10 15:10:49,580 INFO L280 TraceCheckUtils]: 97: Hoare triple {6171#(or (<= (+ alloc_or_die_slave_~ptr~0.base 1) 0) (<= 1 alloc_or_die_slave_~ptr~0.base))} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {6172#(or (<= (+ |alloc_or_die_slave_#res.base| 1) 0) (<= 1 |alloc_or_die_slave_#res.base|))} is VALID [2020-07-10 15:10:49,581 INFO L280 TraceCheckUtils]: 98: Hoare triple {6172#(or (<= (+ |alloc_or_die_slave_#res.base| 1) 0) (<= 1 |alloc_or_die_slave_#res.base|))} assume true; {6172#(or (<= (+ |alloc_or_die_slave_#res.base| 1) 0) (<= 1 |alloc_or_die_slave_#res.base|))} is VALID [2020-07-10 15:10:49,582 INFO L275 TraceCheckUtils]: 99: Hoare quadruple {6172#(or (<= (+ |alloc_or_die_slave_#res.base| 1) 0) (<= 1 |alloc_or_die_slave_#res.base|))} {6162#(and (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|))} #490#return; {6168#(and (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|) (not (= 0 |dll_insert_slave_#t~ret4.base|)))} is VALID [2020-07-10 15:10:49,583 INFO L280 TraceCheckUtils]: 100: Hoare triple {6168#(and (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|) (not (= 0 |dll_insert_slave_#t~ret4.base|)))} ~item~0.base, ~item~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~0.base, ~next~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset;call write~$Pointer$(~next~0.base, ~next~0.offset, ~item~0.base, ~item~0.offset, 4); {6169#(and (not (= 0 dll_insert_slave_~item~0.base)) (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|))} is VALID [2020-07-10 15:10:49,584 INFO L280 TraceCheckUtils]: 101: Hoare triple {6169#(and (not (= 0 dll_insert_slave_~item~0.base)) (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|))} assume !(~next~0.base != 0 || ~next~0.offset != 0); {6169#(and (not (= 0 dll_insert_slave_~item~0.base)) (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|))} is VALID [2020-07-10 15:10:49,585 INFO L280 TraceCheckUtils]: 102: Hoare triple {6169#(and (not (= 0 dll_insert_slave_~item~0.base)) (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|))} call write~$Pointer$(~item~0.base, ~item~0.offset, ~dll.base, ~dll.offset, 4); {6170#(not (= 0 (select (select |#memory_$Pointer$.base| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|)))} is VALID [2020-07-10 15:10:49,585 INFO L280 TraceCheckUtils]: 103: Hoare triple {6170#(not (= 0 (select (select |#memory_$Pointer$.base| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|)))} assume true; {6170#(not (= 0 (select (select |#memory_$Pointer$.base| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|)))} is VALID [2020-07-10 15:10:49,586 INFO L275 TraceCheckUtils]: 104: Hoare quadruple {6170#(not (= 0 (select (select |#memory_$Pointer$.base| |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|)))} {6148#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|))} #514#return; {6161#(not (= 0 (select (select |#memory_$Pointer$.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|)))} is VALID [2020-07-10 15:10:49,587 INFO L280 TraceCheckUtils]: 105: Hoare triple {6161#(not (= 0 (select (select |#memory_$Pointer$.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|)))} assume true; {6161#(not (= 0 (select (select |#memory_$Pointer$.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|)))} is VALID [2020-07-10 15:10:49,589 INFO L275 TraceCheckUtils]: 106: Hoare quadruple {6161#(not (= 0 (select (select |#memory_$Pointer$.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|)))} {6112#(<= (+ |#StackHeapBarrier| 1) |dll_create_generic_~#dll~0.base|)} #534#return; {6130#(and (<= (+ |#StackHeapBarrier| 1) |dll_create_generic_~#dll~0.base|) (not (= 0 (select (select |#memory_$Pointer$.base| |dll_create_generic_~#dll~0.base|) |dll_create_generic_~#dll~0.offset|))))} is VALID [2020-07-10 15:10:49,590 INFO L263 TraceCheckUtils]: 107: Hoare triple {6130#(and (<= (+ |#StackHeapBarrier| 1) |dll_create_generic_~#dll~0.base|) (not (= 0 (select (select |#memory_$Pointer$.base| |dll_create_generic_~#dll~0.base|) |dll_create_generic_~#dll~0.offset|))))} call ##fun~$Pointer$~TO~VOID(~#dll~0.base, ~#dll~0.offset, ~insert_fnc.base, ~insert_fnc.offset); {6743#(= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|)} is VALID [2020-07-10 15:10:49,591 INFO L280 TraceCheckUtils]: 108: Hoare triple {6743#(= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|)} #~9.base, #~9.offset := #in~9.base, #in~9.offset; {6173#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|))} is VALID [2020-07-10 15:10:49,591 INFO L280 TraceCheckUtils]: 109: Hoare triple {6173#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|))} assume !(#in~#fp.base == #funAddr~dll_insert_master.base && #in~#fp.offset == #funAddr~dll_insert_master.offset); {6173#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|))} is VALID [2020-07-10 15:10:49,593 INFO L263 TraceCheckUtils]: 110: Hoare triple {6173#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|))} call dll_insert_slave(#~9.base, #~9.offset); {6743#(= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|)} is VALID [2020-07-10 15:10:49,593 INFO L280 TraceCheckUtils]: 111: Hoare triple {6743#(= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|)} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {6756#(and (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|))} is VALID [2020-07-10 15:10:49,594 INFO L263 TraceCheckUtils]: 112: Hoare triple {6756#(and (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|))} call #t~ret4.base, #t~ret4.offset := alloc_or_die_slave(); {6743#(= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|)} is VALID [2020-07-10 15:10:49,595 INFO L280 TraceCheckUtils]: 113: Hoare triple {6743#(= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|)} call #t~malloc2.base, #t~malloc2.offset := #Ultimate.allocOnHeap(8);~ptr~0.base, ~ptr~0.offset := #t~malloc2.base, #t~malloc2.offset; {6196#(and (<= (+ alloc_or_die_slave_~ptr~0.base 1) |#StackHeapBarrier|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|))} is VALID [2020-07-10 15:10:49,596 INFO L280 TraceCheckUtils]: 114: Hoare triple {6196#(and (<= (+ alloc_or_die_slave_~ptr~0.base 1) |#StackHeapBarrier|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|))} assume !(~ptr~0.base == 0 && ~ptr~0.offset == 0); {6196#(and (<= (+ alloc_or_die_slave_~ptr~0.base 1) |#StackHeapBarrier|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|))} is VALID [2020-07-10 15:10:49,598 INFO L280 TraceCheckUtils]: 115: Hoare triple {6196#(and (<= (+ alloc_or_die_slave_~ptr~0.base 1) |#StackHeapBarrier|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|))} call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);call write~$Pointer$(0, 0, ~ptr~0.base, ~ptr~0.offset, 4);#res.base, #res.offset := ~ptr~0.base, ~ptr~0.offset; {6769#(exists ((alloc_or_die_slave_~ptr~0.offset Int) (alloc_or_die_slave_~ptr~0.base Int)) (and (<= (+ alloc_or_die_slave_~ptr~0.base 1) |#StackHeapBarrier|) (= |#memory_$Pointer$.base| (store |old(#memory_$Pointer$.base)| alloc_or_die_slave_~ptr~0.base (store (select |old(#memory_$Pointer$.base)| alloc_or_die_slave_~ptr~0.base) alloc_or_die_slave_~ptr~0.offset 0))) (<= |alloc_or_die_slave_#res.base| alloc_or_die_slave_~ptr~0.base)))} is VALID [2020-07-10 15:10:49,598 INFO L280 TraceCheckUtils]: 116: Hoare triple {6769#(exists ((alloc_or_die_slave_~ptr~0.offset Int) (alloc_or_die_slave_~ptr~0.base Int)) (and (<= (+ alloc_or_die_slave_~ptr~0.base 1) |#StackHeapBarrier|) (= |#memory_$Pointer$.base| (store |old(#memory_$Pointer$.base)| alloc_or_die_slave_~ptr~0.base (store (select |old(#memory_$Pointer$.base)| alloc_or_die_slave_~ptr~0.base) alloc_or_die_slave_~ptr~0.offset 0))) (<= |alloc_or_die_slave_#res.base| alloc_or_die_slave_~ptr~0.base)))} assume true; {6769#(exists ((alloc_or_die_slave_~ptr~0.offset Int) (alloc_or_die_slave_~ptr~0.base Int)) (and (<= (+ alloc_or_die_slave_~ptr~0.base 1) |#StackHeapBarrier|) (= |#memory_$Pointer$.base| (store |old(#memory_$Pointer$.base)| alloc_or_die_slave_~ptr~0.base (store (select |old(#memory_$Pointer$.base)| alloc_or_die_slave_~ptr~0.base) alloc_or_die_slave_~ptr~0.offset 0))) (<= |alloc_or_die_slave_#res.base| alloc_or_die_slave_~ptr~0.base)))} is VALID [2020-07-10 15:10:49,601 INFO L275 TraceCheckUtils]: 117: Hoare quadruple {6769#(exists ((alloc_or_die_slave_~ptr~0.offset Int) (alloc_or_die_slave_~ptr~0.base Int)) (and (<= (+ alloc_or_die_slave_~ptr~0.base 1) |#StackHeapBarrier|) (= |#memory_$Pointer$.base| (store |old(#memory_$Pointer$.base)| alloc_or_die_slave_~ptr~0.base (store (select |old(#memory_$Pointer$.base)| alloc_or_die_slave_~ptr~0.base) alloc_or_die_slave_~ptr~0.offset 0))) (<= |alloc_or_die_slave_#res.base| alloc_or_die_slave_~ptr~0.base)))} {6756#(and (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|))} #490#return; {6776#(and (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (exists ((alloc_or_die_slave_~ptr~0.offset Int) (alloc_or_die_slave_~ptr~0.base Int)) (and (<= (+ alloc_or_die_slave_~ptr~0.base 1) |#StackHeapBarrier|) (<= |dll_insert_slave_#t~ret4.base| alloc_or_die_slave_~ptr~0.base) (= |#memory_$Pointer$.base| (store |old(#memory_$Pointer$.base)| alloc_or_die_slave_~ptr~0.base (store (select |old(#memory_$Pointer$.base)| alloc_or_die_slave_~ptr~0.base) alloc_or_die_slave_~ptr~0.offset 0))))) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|))} is VALID [2020-07-10 15:10:49,603 INFO L280 TraceCheckUtils]: 118: Hoare triple {6776#(and (= |dll_insert_slave_#in~dll.base| dll_insert_slave_~dll.base) (exists ((alloc_or_die_slave_~ptr~0.offset Int) (alloc_or_die_slave_~ptr~0.base Int)) (and (<= (+ alloc_or_die_slave_~ptr~0.base 1) |#StackHeapBarrier|) (<= |dll_insert_slave_#t~ret4.base| alloc_or_die_slave_~ptr~0.base) (= |#memory_$Pointer$.base| (store |old(#memory_$Pointer$.base)| alloc_or_die_slave_~ptr~0.base (store (select |old(#memory_$Pointer$.base)| alloc_or_die_slave_~ptr~0.base) alloc_or_die_slave_~ptr~0.offset 0))))) (= dll_insert_slave_~dll.offset |dll_insert_slave_#in~dll.offset|))} ~item~0.base, ~item~0.offset := #t~ret4.base, #t~ret4.offset;havoc #t~ret4.base, #t~ret4.offset;call #t~mem5.base, #t~mem5.offset := read~$Pointer$(~dll.base, ~dll.offset, 4);~next~0.base, ~next~0.offset := #t~mem5.base, #t~mem5.offset;havoc #t~mem5.base, #t~mem5.offset;call write~$Pointer$(~next~0.base, ~next~0.offset, ~item~0.base, ~item~0.offset, 4); {6780#(exists ((alloc_or_die_slave_~ptr~0.offset Int) (alloc_or_die_slave_~ptr~0.base Int)) (and (<= (+ alloc_or_die_slave_~ptr~0.base 1) |#StackHeapBarrier|) (= (select (select (store |old(#memory_$Pointer$.base)| alloc_or_die_slave_~ptr~0.base (store (select |old(#memory_$Pointer$.base)| alloc_or_die_slave_~ptr~0.base) alloc_or_die_slave_~ptr~0.offset 0)) |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|) dll_insert_slave_~next~0.base)))} is VALID [2020-07-10 15:10:49,604 INFO L280 TraceCheckUtils]: 119: Hoare triple {6780#(exists ((alloc_or_die_slave_~ptr~0.offset Int) (alloc_or_die_slave_~ptr~0.base Int)) (and (<= (+ alloc_or_die_slave_~ptr~0.base 1) |#StackHeapBarrier|) (= (select (select (store |old(#memory_$Pointer$.base)| alloc_or_die_slave_~ptr~0.base (store (select |old(#memory_$Pointer$.base)| alloc_or_die_slave_~ptr~0.base) alloc_or_die_slave_~ptr~0.offset 0)) |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|) dll_insert_slave_~next~0.base)))} assume !(~next~0.base != 0 || ~next~0.offset != 0); {6784#(exists ((alloc_or_die_slave_~ptr~0.offset Int) (alloc_or_die_slave_~ptr~0.base Int)) (and (<= (+ alloc_or_die_slave_~ptr~0.base 1) |#StackHeapBarrier|) (= 0 (select (select (store |old(#memory_$Pointer$.base)| alloc_or_die_slave_~ptr~0.base (store (select |old(#memory_$Pointer$.base)| alloc_or_die_slave_~ptr~0.base) alloc_or_die_slave_~ptr~0.offset 0)) |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|))))} is VALID [2020-07-10 15:10:49,605 INFO L280 TraceCheckUtils]: 120: Hoare triple {6784#(exists ((alloc_or_die_slave_~ptr~0.offset Int) (alloc_or_die_slave_~ptr~0.base Int)) (and (<= (+ alloc_or_die_slave_~ptr~0.base 1) |#StackHeapBarrier|) (= 0 (select (select (store |old(#memory_$Pointer$.base)| alloc_or_die_slave_~ptr~0.base (store (select |old(#memory_$Pointer$.base)| alloc_or_die_slave_~ptr~0.base) alloc_or_die_slave_~ptr~0.offset 0)) |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|))))} call write~$Pointer$(~item~0.base, ~item~0.offset, ~dll.base, ~dll.offset, 4); {6784#(exists ((alloc_or_die_slave_~ptr~0.offset Int) (alloc_or_die_slave_~ptr~0.base Int)) (and (<= (+ alloc_or_die_slave_~ptr~0.base 1) |#StackHeapBarrier|) (= 0 (select (select (store |old(#memory_$Pointer$.base)| alloc_or_die_slave_~ptr~0.base (store (select |old(#memory_$Pointer$.base)| alloc_or_die_slave_~ptr~0.base) alloc_or_die_slave_~ptr~0.offset 0)) |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|))))} is VALID [2020-07-10 15:10:49,605 INFO L280 TraceCheckUtils]: 121: Hoare triple {6784#(exists ((alloc_or_die_slave_~ptr~0.offset Int) (alloc_or_die_slave_~ptr~0.base Int)) (and (<= (+ alloc_or_die_slave_~ptr~0.base 1) |#StackHeapBarrier|) (= 0 (select (select (store |old(#memory_$Pointer$.base)| alloc_or_die_slave_~ptr~0.base (store (select |old(#memory_$Pointer$.base)| alloc_or_die_slave_~ptr~0.base) alloc_or_die_slave_~ptr~0.offset 0)) |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|))))} assume true; {6784#(exists ((alloc_or_die_slave_~ptr~0.offset Int) (alloc_or_die_slave_~ptr~0.base Int)) (and (<= (+ alloc_or_die_slave_~ptr~0.base 1) |#StackHeapBarrier|) (= 0 (select (select (store |old(#memory_$Pointer$.base)| alloc_or_die_slave_~ptr~0.base (store (select |old(#memory_$Pointer$.base)| alloc_or_die_slave_~ptr~0.base) alloc_or_die_slave_~ptr~0.offset 0)) |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|))))} is VALID [2020-07-10 15:10:49,607 INFO L275 TraceCheckUtils]: 122: Hoare quadruple {6784#(exists ((alloc_or_die_slave_~ptr~0.offset Int) (alloc_or_die_slave_~ptr~0.base Int)) (and (<= (+ alloc_or_die_slave_~ptr~0.base 1) |#StackHeapBarrier|) (= 0 (select (select (store |old(#memory_$Pointer$.base)| alloc_or_die_slave_~ptr~0.base (store (select |old(#memory_$Pointer$.base)| alloc_or_die_slave_~ptr~0.base) alloc_or_die_slave_~ptr~0.offset 0)) |dll_insert_slave_#in~dll.base|) |dll_insert_slave_#in~dll.offset|))))} {6173#(and (= |##fun~$Pointer$~TO~VOID_#~9.offset| |##fun~$Pointer$~TO~VOID_#in~9.offset|) (= |##fun~$Pointer$~TO~VOID_#~9.base| |##fun~$Pointer$~TO~VOID_#in~9.base|) (= |#memory_$Pointer$.base| |old(#memory_$Pointer$.base)|))} #514#return; {6794#(exists ((alloc_or_die_slave_~ptr~0.offset Int) (alloc_or_die_slave_~ptr~0.base Int)) (and (<= (+ alloc_or_die_slave_~ptr~0.base 1) |#StackHeapBarrier|) (= 0 (select (select (store |old(#memory_$Pointer$.base)| alloc_or_die_slave_~ptr~0.base (store (select |old(#memory_$Pointer$.base)| alloc_or_die_slave_~ptr~0.base) alloc_or_die_slave_~ptr~0.offset 0)) |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|))))} is VALID [2020-07-10 15:10:49,608 INFO L280 TraceCheckUtils]: 123: Hoare triple {6794#(exists ((alloc_or_die_slave_~ptr~0.offset Int) (alloc_or_die_slave_~ptr~0.base Int)) (and (<= (+ alloc_or_die_slave_~ptr~0.base 1) |#StackHeapBarrier|) (= 0 (select (select (store |old(#memory_$Pointer$.base)| alloc_or_die_slave_~ptr~0.base (store (select |old(#memory_$Pointer$.base)| alloc_or_die_slave_~ptr~0.base) alloc_or_die_slave_~ptr~0.offset 0)) |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|))))} assume true; {6794#(exists ((alloc_or_die_slave_~ptr~0.offset Int) (alloc_or_die_slave_~ptr~0.base Int)) (and (<= (+ alloc_or_die_slave_~ptr~0.base 1) |#StackHeapBarrier|) (= 0 (select (select (store |old(#memory_$Pointer$.base)| alloc_or_die_slave_~ptr~0.base (store (select |old(#memory_$Pointer$.base)| alloc_or_die_slave_~ptr~0.base) alloc_or_die_slave_~ptr~0.offset 0)) |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|))))} is VALID [2020-07-10 15:10:49,610 INFO L275 TraceCheckUtils]: 124: Hoare quadruple {6794#(exists ((alloc_or_die_slave_~ptr~0.offset Int) (alloc_or_die_slave_~ptr~0.base Int)) (and (<= (+ alloc_or_die_slave_~ptr~0.base 1) |#StackHeapBarrier|) (= 0 (select (select (store |old(#memory_$Pointer$.base)| alloc_or_die_slave_~ptr~0.base (store (select |old(#memory_$Pointer$.base)| alloc_or_die_slave_~ptr~0.base) alloc_or_die_slave_~ptr~0.offset 0)) |##fun~$Pointer$~TO~VOID_#in~9.base|) |##fun~$Pointer$~TO~VOID_#in~9.offset|))))} {6130#(and (<= (+ |#StackHeapBarrier| 1) |dll_create_generic_~#dll~0.base|) (not (= 0 (select (select |#memory_$Pointer$.base| |dll_create_generic_~#dll~0.base|) |dll_create_generic_~#dll~0.offset|))))} #536#return; {5550#false} is VALID [2020-07-10 15:10:49,611 INFO L280 TraceCheckUtils]: 125: Hoare triple {5550#false} assume -2147483648 <= #t~nondet8 && #t~nondet8 <= 2147483647; {5550#false} is VALID [2020-07-10 15:10:49,611 INFO L280 TraceCheckUtils]: 126: Hoare triple {5550#false} assume !(0 != #t~nondet8);havoc #t~nondet8; {5550#false} is VALID [2020-07-10 15:10:49,611 INFO L280 TraceCheckUtils]: 127: Hoare triple {5550#false} call #t~mem10.base, #t~mem10.offset := read~$Pointer$(~#dll~0.base, ~#dll~0.offset, 4);#res.base, #res.offset := #t~mem10.base, #t~mem10.offset;havoc #t~mem10.base, #t~mem10.offset;call ULTIMATE.dealloc(~#dll~0.base, ~#dll~0.offset);havoc ~#dll~0.base, ~#dll~0.offset; {5550#false} is VALID [2020-07-10 15:10:49,611 INFO L280 TraceCheckUtils]: 128: Hoare triple {5550#false} assume true; {5550#false} is VALID [2020-07-10 15:10:49,611 INFO L275 TraceCheckUtils]: 129: Hoare quadruple {5550#false} {5549#true} #540#return; {5550#false} is VALID [2020-07-10 15:10:49,611 INFO L280 TraceCheckUtils]: 130: Hoare triple {5550#false} #res.base, #res.offset := #t~ret11.base, #t~ret11.offset;havoc #t~ret11.base, #t~ret11.offset; {5550#false} is VALID [2020-07-10 15:10:49,612 INFO L280 TraceCheckUtils]: 131: Hoare triple {5550#false} assume true; {5550#false} is VALID [2020-07-10 15:10:49,612 INFO L275 TraceCheckUtils]: 132: Hoare quadruple {5550#false} {5549#true} #496#return; {5550#false} is VALID [2020-07-10 15:10:49,612 INFO L280 TraceCheckUtils]: 133: Hoare triple {5550#false} call write~$Pointer$(#t~ret19.base, #t~ret19.offset, ~item~1.base, 8 + ~item~1.offset, 4);havoc #t~ret19.base, #t~ret19.offset;call write~$Pointer$(~item~1.base, ~item~1.offset, ~dll.base, ~dll.offset, 4); {5550#false} is VALID [2020-07-10 15:10:49,612 INFO L280 TraceCheckUtils]: 134: Hoare triple {5550#false} assume true; {5550#false} is VALID [2020-07-10 15:10:49,612 INFO L275 TraceCheckUtils]: 135: Hoare quadruple {5550#false} {5549#true} #512#return; {5550#false} is VALID [2020-07-10 15:10:49,612 INFO L280 TraceCheckUtils]: 136: Hoare triple {5550#false} assume true; {5550#false} is VALID [2020-07-10 15:10:49,613 INFO L275 TraceCheckUtils]: 137: Hoare quadruple {5550#false} {5549#true} #536#return; {5550#false} is VALID [2020-07-10 15:10:49,613 INFO L280 TraceCheckUtils]: 138: Hoare triple {5550#false} assume -2147483648 <= #t~nondet8 && #t~nondet8 <= 2147483647; {5550#false} is VALID [2020-07-10 15:10:49,613 INFO L280 TraceCheckUtils]: 139: Hoare triple {5550#false} assume !(0 != #t~nondet8);havoc #t~nondet8; {5550#false} is VALID [2020-07-10 15:10:49,613 INFO L280 TraceCheckUtils]: 140: Hoare triple {5550#false} call #t~mem10.base, #t~mem10.offset := read~$Pointer$(~#dll~0.base, ~#dll~0.offset, 4);#res.base, #res.offset := #t~mem10.base, #t~mem10.offset;havoc #t~mem10.base, #t~mem10.offset;call ULTIMATE.dealloc(~#dll~0.base, ~#dll~0.offset);havoc ~#dll~0.base, ~#dll~0.offset; {5550#false} is VALID [2020-07-10 15:10:49,613 INFO L280 TraceCheckUtils]: 141: Hoare triple {5550#false} assume true; {5550#false} is VALID [2020-07-10 15:10:49,613 INFO L275 TraceCheckUtils]: 142: Hoare quadruple {5550#false} {5549#true} #492#return; {5550#false} is VALID [2020-07-10 15:10:49,614 INFO L280 TraceCheckUtils]: 143: Hoare triple {5550#false} #res.base, #res.offset := #t~ret20.base, #t~ret20.offset;havoc #t~ret20.base, #t~ret20.offset; {5550#false} is VALID [2020-07-10 15:10:49,614 INFO L280 TraceCheckUtils]: 144: Hoare triple {5550#false} assume true; {5550#false} is VALID [2020-07-10 15:10:49,614 INFO L275 TraceCheckUtils]: 145: Hoare quadruple {5550#false} {5549#true} #498#return; {5550#false} is VALID [2020-07-10 15:10:49,614 INFO L280 TraceCheckUtils]: 146: Hoare triple {5550#false} ~dll~1.base, ~dll~1.offset := #t~ret45.base, #t~ret45.offset;havoc #t~ret45.base, #t~ret45.offset; {5550#false} is VALID [2020-07-10 15:10:49,614 INFO L263 TraceCheckUtils]: 147: Hoare triple {5550#false} call inspect_full(~dll~1.base, ~dll~1.offset); {5550#false} is VALID [2020-07-10 15:10:49,615 INFO L280 TraceCheckUtils]: 148: Hoare triple {5550#false} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {5550#false} is VALID [2020-07-10 15:10:49,615 INFO L263 TraceCheckUtils]: 149: Hoare triple {5550#false} call inspect_base(~dll.base, ~dll.offset); {5550#false} is VALID [2020-07-10 15:10:49,615 INFO L280 TraceCheckUtils]: 150: Hoare triple {5550#false} ~dll.base, ~dll.offset := #in~dll.base, #in~dll.offset; {5550#false} is VALID [2020-07-10 15:10:49,615 INFO L280 TraceCheckUtils]: 151: Hoare triple {5550#false} assume !(~dll.base == 0 && ~dll.offset == 0); {5550#false} is VALID [2020-07-10 15:10:49,615 INFO L280 TraceCheckUtils]: 152: Hoare triple {5550#false} goto; {5550#false} is VALID [2020-07-10 15:10:49,615 INFO L280 TraceCheckUtils]: 153: Hoare triple {5550#false} call #t~mem21.base, #t~mem21.offset := read~$Pointer$(~dll.base, ~dll.offset, 4); {5550#false} is VALID [2020-07-10 15:10:49,616 INFO L280 TraceCheckUtils]: 154: Hoare triple {5550#false} assume #t~mem21.base == 0 && #t~mem21.offset == 0;havoc #t~mem21.base, #t~mem21.offset; {5550#false} is VALID [2020-07-10 15:10:49,616 INFO L263 TraceCheckUtils]: 155: Hoare triple {5550#false} call fail(); {5550#false} is VALID [2020-07-10 15:10:49,616 INFO L280 TraceCheckUtils]: 156: Hoare triple {5550#false} assume !false; {5550#false} is VALID [2020-07-10 15:10:49,646 INFO L134 CoverageAnalysis]: Checked inductivity of 180 backedges. 108 proven. 5 refuted. 0 times theorem prover too weak. 61 trivial. 6 not checked. [2020-07-10 15:10:49,646 INFO L220 FreeRefinementEngine]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2020-07-10 15:10:49,646 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [22, 22] total 30 [2020-07-10 15:10:49,647 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1778467259] [2020-07-10 15:10:49,650 INFO L78 Accepts]: Start accepts. Automaton has 30 states. Word has length 157