./Ultimate.py --spec ../sv-benchmarks/c/properties/unreach-call.prp --file ../sv-benchmarks/c/ldv-linux-3.0/module_get_put-drivers-hid-hid-magicmouse.ko.cil.out.i --full-output --architecture 64bit -------------------------------------------------------------------------------- Checking for ERROR reachability Using default analysis Version 48c9605d Calling Ultimate with: /root/.sdkman/candidates/java/21.0.5-tem/bin/java -Dosgi.configuration.area=/storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/config -Xmx15G -Xms4m -jar /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/plugins/org.eclipse.equinox.launcher_1.6.800.v20240513-1750.jar -data @noDefault -ultimatedata /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data -tc /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/config/AutomizerReach.xml -i ../sv-benchmarks/c/ldv-linux-3.0/module_get_put-drivers-hid-hid-magicmouse.ko.cil.out.i -s /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-64bit-Automizer_Default.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux --witnessprinter.witness.filename witness --witnessprinter.write.witness.besides.input.file false --witnessprinter.graph.data.specification CHECK( init(main()), LTL(G ! call(reach_error())) ) --witnessprinter.graph.data.producer Automizer --witnessprinter.graph.data.architecture 64bit --witnessprinter.graph.data.programhash da43ea85d0712ae0cd695476f80166f715fb8e17b722b641b51744de6bdc6303 --- Real Ultimate output --- This is Ultimate 0.3.0-?-48c9605-m [2025-02-08 02:04:15,493 INFO L188 SettingsManager]: Resetting all preferences to default values... [2025-02-08 02:04:15,547 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-64bit-Automizer_Default.epf [2025-02-08 02:04:15,550 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2025-02-08 02:04:15,551 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2025-02-08 02:04:15,570 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2025-02-08 02:04:15,571 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2025-02-08 02:04:15,571 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2025-02-08 02:04:15,571 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2025-02-08 02:04:15,571 INFO L153 SettingsManager]: * Use memory slicer=true [2025-02-08 02:04:15,571 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2025-02-08 02:04:15,571 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2025-02-08 02:04:15,571 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2025-02-08 02:04:15,571 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2025-02-08 02:04:15,571 INFO L153 SettingsManager]: * Use SBE=true [2025-02-08 02:04:15,572 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2025-02-08 02:04:15,572 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2025-02-08 02:04:15,572 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2025-02-08 02:04:15,572 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2025-02-08 02:04:15,572 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2025-02-08 02:04:15,572 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2025-02-08 02:04:15,572 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2025-02-08 02:04:15,572 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2025-02-08 02:04:15,572 INFO L153 SettingsManager]: * Behaviour of calls to undefined functions=OVERAPPROXIMATE_BEHAVIOUR [2025-02-08 02:04:15,572 INFO L153 SettingsManager]: * Use constant arrays=true [2025-02-08 02:04:15,572 INFO L151 SettingsManager]: Preferences of IcfgBuilder differ from their defaults: [2025-02-08 02:04:15,572 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2025-02-08 02:04:15,572 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2025-02-08 02:04:15,572 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2025-02-08 02:04:15,572 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-02-08 02:04:15,573 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2025-02-08 02:04:15,573 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2025-02-08 02:04:15,573 INFO L153 SettingsManager]: * Compute procedure contracts=false [2025-02-08 02:04:15,573 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2025-02-08 02:04:15,573 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2025-02-08 02:04:15,573 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2025-02-08 02:04:15,573 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2025-02-08 02:04:15,573 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2025-02-08 02:04:15,574 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2025-02-08 02:04:15,574 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2025-02-08 02:04:15,574 INFO L153 SettingsManager]: * Looper check in Petri net analysis=SEMANTIC Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator: Entry function -> main Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness directory -> /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness filename -> witness Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Write witness besides input file -> false Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data specification -> CHECK( init(main()), LTL(G ! call(reach_error())) ) Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data producer -> Automizer Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data architecture -> 64bit Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data programhash -> da43ea85d0712ae0cd695476f80166f715fb8e17b722b641b51744de6bdc6303 [2025-02-08 02:04:15,778 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2025-02-08 02:04:15,786 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2025-02-08 02:04:15,788 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2025-02-08 02:04:15,789 INFO L270 PluginConnector]: Initializing CDTParser... [2025-02-08 02:04:15,789 INFO L274 PluginConnector]: CDTParser initialized [2025-02-08 02:04:15,790 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/ldv-linux-3.0/module_get_put-drivers-hid-hid-magicmouse.ko.cil.out.i [2025-02-08 02:04:16,875 INFO L533 CDTParser]: Created temporary CDT project at /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/e991e0f2c/f018690562da41989474084486ace5c3/FLAG984acf755 [2025-02-08 02:04:17,192 INFO L384 CDTParser]: Found 1 translation units. [2025-02-08 02:04:17,193 INFO L180 CDTParser]: Scanning /storage/repos/ultimate-jdk21/releaseScripts/default/sv-benchmarks/c/ldv-linux-3.0/module_get_put-drivers-hid-hid-magicmouse.ko.cil.out.i [2025-02-08 02:04:17,214 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/e991e0f2c/f018690562da41989474084486ace5c3/FLAG984acf755 [2025-02-08 02:04:17,428 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/e991e0f2c/f018690562da41989474084486ace5c3 [2025-02-08 02:04:17,430 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2025-02-08 02:04:17,432 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2025-02-08 02:04:17,433 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2025-02-08 02:04:17,433 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2025-02-08 02:04:17,436 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2025-02-08 02:04:17,437 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 08.02 02:04:17" (1/1) ... [2025-02-08 02:04:17,437 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@2bfd1b8 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.02 02:04:17, skipping insertion in model container [2025-02-08 02:04:17,439 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 08.02 02:04:17" (1/1) ... [2025-02-08 02:04:17,481 INFO L175 MainTranslator]: Built tables and reachable declarations [2025-02-08 02:04:17,892 WARN L250 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate-jdk21/releaseScripts/default/sv-benchmarks/c/ldv-linux-3.0/module_get_put-drivers-hid-hid-magicmouse.ko.cil.out.i[111502,111515] [2025-02-08 02:04:17,915 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-02-08 02:04:17,931 INFO L200 MainTranslator]: Completed pre-run [2025-02-08 02:04:17,982 WARN L75 lationResultReporter]: Unsoundness Warning: Ignoring inline assembler instruction C: __asm__ volatile ("bts %1,%0": "+m" (*((long volatile *)addr)): "Ir" (nr): "memory"); [3150] [2025-02-08 02:04:18,045 WARN L250 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate-jdk21/releaseScripts/default/sv-benchmarks/c/ldv-linux-3.0/module_get_put-drivers-hid-hid-magicmouse.ko.cil.out.i[111502,111515] [2025-02-08 02:04:18,049 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-02-08 02:04:18,079 INFO L204 MainTranslator]: Completed translation [2025-02-08 02:04:18,080 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.02 02:04:18 WrapperNode [2025-02-08 02:04:18,080 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2025-02-08 02:04:18,081 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2025-02-08 02:04:18,081 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2025-02-08 02:04:18,081 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2025-02-08 02:04:18,087 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.02 02:04:18" (1/1) ... [2025-02-08 02:04:18,108 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.02 02:04:18" (1/1) ... [2025-02-08 02:04:18,140 INFO L138 Inliner]: procedures = 77, calls = 329, calls flagged for inlining = 31, calls inlined = 29, statements flattened = 877 [2025-02-08 02:04:18,141 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2025-02-08 02:04:18,141 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2025-02-08 02:04:18,144 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2025-02-08 02:04:18,145 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2025-02-08 02:04:18,151 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.02 02:04:18" (1/1) ... [2025-02-08 02:04:18,151 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.02 02:04:18" (1/1) ... [2025-02-08 02:04:18,160 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.02 02:04:18" (1/1) ... [2025-02-08 02:04:18,209 INFO L175 MemorySlicer]: Split 190 memory accesses to 12 slices as follows [2, 2, 8, 2, 37, 4, 43, 8, 2, 65, 16, 1]. 34 percent of accesses are in the largest equivalence class. The 2 initializations are split as follows [2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]. The 88 writes are split as follows [0, 0, 1, 0, 0, 0, 43, 1, 2, 25, 16, 0]. [2025-02-08 02:04:18,210 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.02 02:04:18" (1/1) ... [2025-02-08 02:04:18,210 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.02 02:04:18" (1/1) ... [2025-02-08 02:04:18,262 INFO L184 PluginConnector]: Executing the observer ReplaceArrayAssignments from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.02 02:04:18" (1/1) ... [2025-02-08 02:04:18,266 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.02 02:04:18" (1/1) ... [2025-02-08 02:04:18,277 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.02 02:04:18" (1/1) ... [2025-02-08 02:04:18,281 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.02 02:04:18" (1/1) ... [2025-02-08 02:04:18,292 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2025-02-08 02:04:18,293 INFO L112 PluginConnector]: ------------------------IcfgBuilder---------------------------- [2025-02-08 02:04:18,296 INFO L270 PluginConnector]: Initializing IcfgBuilder... [2025-02-08 02:04:18,296 INFO L274 PluginConnector]: IcfgBuilder initialized [2025-02-08 02:04:18,297 INFO L184 PluginConnector]: Executing the observer IcfgBuilderObserver from plugin IcfgBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.02 02:04:18" (1/1) ... [2025-02-08 02:04:18,301 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-02-08 02:04:18,312 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-08 02:04:18,324 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (exit command is (exit), workingDir is null) [2025-02-08 02:04:18,326 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (1)] Waiting until timeout for monitored process [2025-02-08 02:04:18,344 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2025-02-08 02:04:18,345 INFO L130 BoogieDeclarations]: Found specification of procedure write~unchecked~int#0 [2025-02-08 02:04:18,345 INFO L130 BoogieDeclarations]: Found specification of procedure write~unchecked~int#1 [2025-02-08 02:04:18,345 INFO L130 BoogieDeclarations]: Found specification of procedure write~unchecked~int#2 [2025-02-08 02:04:18,346 INFO L130 BoogieDeclarations]: Found specification of procedure write~unchecked~int#3 [2025-02-08 02:04:18,346 INFO L130 BoogieDeclarations]: Found specification of procedure write~unchecked~int#4 [2025-02-08 02:04:18,346 INFO L130 BoogieDeclarations]: Found specification of procedure write~unchecked~int#5 [2025-02-08 02:04:18,346 INFO L130 BoogieDeclarations]: Found specification of procedure write~unchecked~int#6 [2025-02-08 02:04:18,346 INFO L130 BoogieDeclarations]: Found specification of procedure write~unchecked~int#7 [2025-02-08 02:04:18,346 INFO L130 BoogieDeclarations]: Found specification of procedure write~unchecked~int#8 [2025-02-08 02:04:18,346 INFO L130 BoogieDeclarations]: Found specification of procedure write~unchecked~int#9 [2025-02-08 02:04:18,346 INFO L130 BoogieDeclarations]: Found specification of procedure write~unchecked~int#10 [2025-02-08 02:04:18,346 INFO L130 BoogieDeclarations]: Found specification of procedure write~unchecked~int#11 [2025-02-08 02:04:18,346 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnStack [2025-02-08 02:04:18,346 INFO L130 BoogieDeclarations]: Found specification of procedure write~$Pointer$#0 [2025-02-08 02:04:18,346 INFO L130 BoogieDeclarations]: Found specification of procedure write~$Pointer$#1 [2025-02-08 02:04:18,346 INFO L130 BoogieDeclarations]: Found specification of procedure write~$Pointer$#2 [2025-02-08 02:04:18,346 INFO L130 BoogieDeclarations]: Found specification of procedure write~$Pointer$#3 [2025-02-08 02:04:18,346 INFO L130 BoogieDeclarations]: Found specification of procedure write~$Pointer$#4 [2025-02-08 02:04:18,346 INFO L130 BoogieDeclarations]: Found specification of procedure write~$Pointer$#5 [2025-02-08 02:04:18,346 INFO L130 BoogieDeclarations]: Found specification of procedure write~$Pointer$#6 [2025-02-08 02:04:18,346 INFO L130 BoogieDeclarations]: Found specification of procedure write~$Pointer$#7 [2025-02-08 02:04:18,346 INFO L130 BoogieDeclarations]: Found specification of procedure write~$Pointer$#8 [2025-02-08 02:04:18,346 INFO L130 BoogieDeclarations]: Found specification of procedure write~$Pointer$#9 [2025-02-08 02:04:18,346 INFO L130 BoogieDeclarations]: Found specification of procedure write~$Pointer$#10 [2025-02-08 02:04:18,346 INFO L130 BoogieDeclarations]: Found specification of procedure write~$Pointer$#11 [2025-02-08 02:04:18,346 INFO L130 BoogieDeclarations]: Found specification of procedure input_event [2025-02-08 02:04:18,346 INFO L138 BoogieDeclarations]: Found implementation of procedure input_event [2025-02-08 02:04:18,346 INFO L130 BoogieDeclarations]: Found specification of procedure input_set_abs_params [2025-02-08 02:04:18,346 INFO L138 BoogieDeclarations]: Found implementation of procedure input_set_abs_params [2025-02-08 02:04:18,347 INFO L130 BoogieDeclarations]: Found specification of procedure input_mt_sync [2025-02-08 02:04:18,347 INFO L138 BoogieDeclarations]: Found implementation of procedure input_mt_sync [2025-02-08 02:04:18,347 INFO L130 BoogieDeclarations]: Found specification of procedure ##fun~$Pointer$~TO~VOID [2025-02-08 02:04:18,347 INFO L138 BoogieDeclarations]: Found implementation of procedure ##fun~$Pointer$~TO~VOID [2025-02-08 02:04:18,347 INFO L130 BoogieDeclarations]: Found specification of procedure write~unchecked~$Pointer$#0 [2025-02-08 02:04:18,347 INFO L130 BoogieDeclarations]: Found specification of procedure write~unchecked~$Pointer$#1 [2025-02-08 02:04:18,347 INFO L130 BoogieDeclarations]: Found specification of procedure write~unchecked~$Pointer$#2 [2025-02-08 02:04:18,347 INFO L130 BoogieDeclarations]: Found specification of procedure write~unchecked~$Pointer$#3 [2025-02-08 02:04:18,347 INFO L130 BoogieDeclarations]: Found specification of procedure write~unchecked~$Pointer$#4 [2025-02-08 02:04:18,347 INFO L130 BoogieDeclarations]: Found specification of procedure write~unchecked~$Pointer$#5 [2025-02-08 02:04:18,347 INFO L130 BoogieDeclarations]: Found specification of procedure write~unchecked~$Pointer$#6 [2025-02-08 02:04:18,347 INFO L130 BoogieDeclarations]: Found specification of procedure write~unchecked~$Pointer$#7 [2025-02-08 02:04:18,347 INFO L130 BoogieDeclarations]: Found specification of procedure write~unchecked~$Pointer$#8 [2025-02-08 02:04:18,347 INFO L130 BoogieDeclarations]: Found specification of procedure write~unchecked~$Pointer$#9 [2025-02-08 02:04:18,347 INFO L130 BoogieDeclarations]: Found specification of procedure write~unchecked~$Pointer$#10 [2025-02-08 02:04:18,347 INFO L130 BoogieDeclarations]: Found specification of procedure write~unchecked~$Pointer$#11 [2025-02-08 02:04:18,347 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#0 [2025-02-08 02:04:18,347 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#1 [2025-02-08 02:04:18,347 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#2 [2025-02-08 02:04:18,347 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#3 [2025-02-08 02:04:18,347 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#4 [2025-02-08 02:04:18,347 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#5 [2025-02-08 02:04:18,347 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#6 [2025-02-08 02:04:18,347 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#7 [2025-02-08 02:04:18,347 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#8 [2025-02-08 02:04:18,347 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#9 [2025-02-08 02:04:18,348 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#10 [2025-02-08 02:04:18,348 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#11 [2025-02-08 02:04:18,348 INFO L130 BoogieDeclarations]: Found specification of procedure __set_bit [2025-02-08 02:04:18,348 INFO L138 BoogieDeclarations]: Found implementation of procedure __set_bit [2025-02-08 02:04:18,348 INFO L130 BoogieDeclarations]: Found specification of procedure ##fun~$Pointer$~TO~int [2025-02-08 02:04:18,348 INFO L138 BoogieDeclarations]: Found implementation of procedure ##fun~$Pointer$~TO~int [2025-02-08 02:04:18,348 INFO L130 BoogieDeclarations]: Found specification of procedure read~$Pointer$#0 [2025-02-08 02:04:18,348 INFO L130 BoogieDeclarations]: Found specification of procedure read~$Pointer$#1 [2025-02-08 02:04:18,348 INFO L130 BoogieDeclarations]: Found specification of procedure read~$Pointer$#2 [2025-02-08 02:04:18,348 INFO L130 BoogieDeclarations]: Found specification of procedure read~$Pointer$#3 [2025-02-08 02:04:18,348 INFO L130 BoogieDeclarations]: Found specification of procedure read~$Pointer$#4 [2025-02-08 02:04:18,348 INFO L130 BoogieDeclarations]: Found specification of procedure read~$Pointer$#5 [2025-02-08 02:04:18,348 INFO L130 BoogieDeclarations]: Found specification of procedure read~$Pointer$#6 [2025-02-08 02:04:18,348 INFO L130 BoogieDeclarations]: Found specification of procedure read~$Pointer$#7 [2025-02-08 02:04:18,348 INFO L130 BoogieDeclarations]: Found specification of procedure read~$Pointer$#8 [2025-02-08 02:04:18,348 INFO L130 BoogieDeclarations]: Found specification of procedure read~$Pointer$#9 [2025-02-08 02:04:18,348 INFO L130 BoogieDeclarations]: Found specification of procedure read~$Pointer$#10 [2025-02-08 02:04:18,348 INFO L130 BoogieDeclarations]: Found specification of procedure read~$Pointer$#11 [2025-02-08 02:04:18,349 INFO L130 BoogieDeclarations]: Found specification of procedure input_report_rel [2025-02-08 02:04:18,349 INFO L138 BoogieDeclarations]: Found implementation of procedure input_report_rel [2025-02-08 02:04:18,349 INFO L130 BoogieDeclarations]: Found specification of procedure hid_hw_stop [2025-02-08 02:04:18,349 INFO L138 BoogieDeclarations]: Found implementation of procedure hid_hw_stop [2025-02-08 02:04:18,349 INFO L130 BoogieDeclarations]: Found specification of procedure magicmouse_emit_touch [2025-02-08 02:04:18,349 INFO L138 BoogieDeclarations]: Found implementation of procedure magicmouse_emit_touch [2025-02-08 02:04:18,349 INFO L130 BoogieDeclarations]: Found specification of procedure ldv_malloc [2025-02-08 02:04:18,349 INFO L138 BoogieDeclarations]: Found implementation of procedure ldv_malloc [2025-02-08 02:04:18,349 INFO L130 BoogieDeclarations]: Found specification of procedure constant_test_bit [2025-02-08 02:04:18,349 INFO L138 BoogieDeclarations]: Found implementation of procedure constant_test_bit [2025-02-08 02:04:18,349 INFO L130 BoogieDeclarations]: Found specification of procedure magicmouse_remove [2025-02-08 02:04:18,349 INFO L138 BoogieDeclarations]: Found implementation of procedure magicmouse_remove [2025-02-08 02:04:18,350 INFO L130 BoogieDeclarations]: Found specification of procedure ldv_blast_assert [2025-02-08 02:04:18,350 INFO L138 BoogieDeclarations]: Found implementation of procedure ldv_blast_assert [2025-02-08 02:04:18,350 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2025-02-08 02:04:18,350 INFO L130 BoogieDeclarations]: Found specification of procedure kfree [2025-02-08 02:04:18,350 INFO L138 BoogieDeclarations]: Found implementation of procedure kfree [2025-02-08 02:04:18,350 INFO L130 BoogieDeclarations]: Found specification of procedure hid_get_drvdata [2025-02-08 02:04:18,350 INFO L138 BoogieDeclarations]: Found implementation of procedure hid_get_drvdata [2025-02-08 02:04:18,350 INFO L130 BoogieDeclarations]: Found specification of procedure hid_register_report [2025-02-08 02:04:18,350 INFO L138 BoogieDeclarations]: Found implementation of procedure hid_register_report [2025-02-08 02:04:18,350 INFO L130 BoogieDeclarations]: Found specification of procedure dev_err [2025-02-08 02:04:18,350 INFO L138 BoogieDeclarations]: Found implementation of procedure dev_err [2025-02-08 02:04:18,350 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#0 [2025-02-08 02:04:18,350 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#1 [2025-02-08 02:04:18,351 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#2 [2025-02-08 02:04:18,351 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#3 [2025-02-08 02:04:18,351 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#4 [2025-02-08 02:04:18,351 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#5 [2025-02-08 02:04:18,351 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#6 [2025-02-08 02:04:18,351 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#7 [2025-02-08 02:04:18,351 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#8 [2025-02-08 02:04:18,351 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#9 [2025-02-08 02:04:18,351 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#10 [2025-02-08 02:04:18,351 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#11 [2025-02-08 02:04:18,351 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#0 [2025-02-08 02:04:18,351 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#1 [2025-02-08 02:04:18,351 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#2 [2025-02-08 02:04:18,351 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#3 [2025-02-08 02:04:18,351 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#4 [2025-02-08 02:04:18,351 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#5 [2025-02-08 02:04:18,351 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#6 [2025-02-08 02:04:18,351 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#7 [2025-02-08 02:04:18,351 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#8 [2025-02-08 02:04:18,351 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#9 [2025-02-08 02:04:18,351 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#10 [2025-02-08 02:04:18,351 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#11 [2025-02-08 02:04:18,351 INFO L130 BoogieDeclarations]: Found specification of procedure magicmouse_raw_event [2025-02-08 02:04:18,351 INFO L138 BoogieDeclarations]: Found implementation of procedure magicmouse_raw_event [2025-02-08 02:04:18,351 INFO L130 BoogieDeclarations]: Found specification of procedure input_report_key [2025-02-08 02:04:18,351 INFO L138 BoogieDeclarations]: Found implementation of procedure input_report_key [2025-02-08 02:04:18,351 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnHeap [2025-02-08 02:04:18,351 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2025-02-08 02:04:18,351 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2025-02-08 02:04:18,351 INFO L130 BoogieDeclarations]: Found specification of procedure input_report_abs [2025-02-08 02:04:18,351 INFO L138 BoogieDeclarations]: Found implementation of procedure input_report_abs [2025-02-08 02:04:18,616 INFO L257 CfgBuilder]: Building ICFG [2025-02-08 02:04:18,618 INFO L287 CfgBuilder]: Building CFG for each procedure with an implementation [2025-02-08 02:04:18,989 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3512: call #t~mem124 := read~int#9(~msc.base, 20 + ~msc.offset, 4);~step_y~0 := (if ~step_y~0 < 0 && 0 != ~step_y~0 % ((64 - (if ~scroll_speed~0 % 4294967296 % 4294967296 <= 2147483647 then ~scroll_speed~0 % 4294967296 % 4294967296 else ~scroll_speed~0 % 4294967296 % 4294967296 - 4294967296)) * #t~mem124) then (if (64 - (if ~scroll_speed~0 % 4294967296 % 4294967296 <= 2147483647 then ~scroll_speed~0 % 4294967296 % 4294967296 else ~scroll_speed~0 % 4294967296 % 4294967296 - 4294967296)) * #t~mem124 < 0 then ~step_y~0 / ((64 - (if ~scroll_speed~0 % 4294967296 % 4294967296 <= 2147483647 then ~scroll_speed~0 % 4294967296 % 4294967296 else ~scroll_speed~0 % 4294967296 % 4294967296 - 4294967296)) * #t~mem124) - 1 else 1 + ~step_y~0 / ((64 - (if ~scroll_speed~0 % 4294967296 % 4294967296 <= 2147483647 then ~scroll_speed~0 % 4294967296 % 4294967296 else ~scroll_speed~0 % 4294967296 % 4294967296 - 4294967296)) * #t~mem124)) else ~step_y~0 / ((64 - (if ~scroll_speed~0 % 4294967296 % 4294967296 <= 2147483647 then ~scroll_speed~0 % 4294967296 % 4294967296 else ~scroll_speed~0 % 4294967296 % 4294967296 - 4294967296)) * #t~mem124));havoc #t~mem124; [2025-02-08 02:04:18,990 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3508: SUMMARY for call input_report_rel(~input~0.base, ~input~0.offset, 6, -~step_x~0); srcloc: null [2025-02-08 02:04:18,990 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3504: assume 0 != ~step_x~0;call #t~mem122 := read~int#9(~msc.base, 4 + (32 + ~msc.offset + 9 * ~id~1), 2);call #t~mem123 := read~int#9(~msc.base, 20 + ~msc.offset, 4);call write~int#9((if ((if #t~mem122 % 65536 % 4294967296 <= 2147483647 then #t~mem122 % 65536 % 4294967296 else #t~mem122 % 65536 % 4294967296 - 4294967296) - (if (64 - ~scroll_speed~0) % 65536 % 4294967296 <= 2147483647 then (64 - ~scroll_speed~0) % 65536 % 4294967296 else (64 - ~scroll_speed~0) % 65536 % 4294967296 - 4294967296) * (if ~step_x~0 % 65536 % 4294967296 <= 2147483647 then ~step_x~0 % 65536 % 4294967296 else ~step_x~0 % 65536 % 4294967296 - 4294967296) * (if #t~mem123 % 65536 % 4294967296 <= 2147483647 then #t~mem123 % 65536 % 4294967296 else #t~mem123 % 65536 % 4294967296 - 4294967296)) % 65536 <= 32767 then ((if #t~mem122 % 65536 % 4294967296 <= 2147483647 then #t~mem122 % 65536 % 4294967296 else #t~mem122 % 65536 % 4294967296 - 4294967296) - (if (64 - ~scroll_speed~0) % 65536 % 4294967296 <= 2147483647 then (64 - ~scroll_speed~0) % 65536 % 4294967296 else (64 - ~scroll_speed~0) % 65536 % 4294967296 - 4294967296) * (if ~step_x~0 % 65536 % 4294967296 <= 2147483647 then ~step_x~0 % 65536 % 4294967296 else ~step_x~0 % 65536 % 4294967296 - 4294967296) * (if #t~mem123 % 65536 % 4294967296 <= 2147483647 then #t~mem123 % 65536 % 4294967296 else #t~mem123 % 65536 % 4294967296 - 4294967296)) % 65536 else ((if #t~mem122 % 65536 % 4294967296 <= 2147483647 then #t~mem122 % 65536 % 4294967296 else #t~mem122 % 65536 % 4294967296 - 4294967296) - (if (64 - ~scroll_speed~0) % 65536 % 4294967296 <= 2147483647 then (64 - ~scroll_speed~0) % 65536 % 4294967296 else (64 - ~scroll_speed~0) % 65536 % 4294967296 - 4294967296) * (if ~step_x~0 % 65536 % 4294967296 <= 2147483647 then ~step_x~0 % 65536 % 4294967296 else ~step_x~0 % 65536 % 4294967296 - 4294967296) * (if #t~mem123 % 65536 % 4294967296 <= 2147483647 then #t~mem123 % 65536 % 4294967296 else #t~mem123 % 65536 % 4294967296 - 4294967296)) % 65536 - 65536), ~msc.base, 4 + (32 + ~msc.offset + 9 * ~id~1), 2);havoc #t~mem122;havoc #t~mem123;call write~int#9(~now~0, ~msc.base, 24 + ~msc.offset, 8); [2025-02-08 02:04:18,991 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3504: assume !(0 != ~step_x~0); [2025-02-08 02:04:18,991 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3517: SUMMARY for call input_report_rel(~input~0.base, ~input~0.offset, 8, ~step_y~0); srcloc: null [2025-02-08 02:04:18,993 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3513: assume 0 != ~step_y~0;call #t~mem125 := read~int#9(~msc.base, 6 + (32 + ~msc.offset + 9 * ~id~1), 2);call #t~mem126 := read~int#9(~msc.base, 20 + ~msc.offset, 4);call write~int#9((if ((if #t~mem125 % 65536 % 4294967296 <= 2147483647 then #t~mem125 % 65536 % 4294967296 else #t~mem125 % 65536 % 4294967296 - 4294967296) - (if (64 - ~scroll_speed~0) % 65536 % 4294967296 <= 2147483647 then (64 - ~scroll_speed~0) % 65536 % 4294967296 else (64 - ~scroll_speed~0) % 65536 % 4294967296 - 4294967296) * (if ~step_y~0 % 65536 % 4294967296 <= 2147483647 then ~step_y~0 % 65536 % 4294967296 else ~step_y~0 % 65536 % 4294967296 - 4294967296) * (if #t~mem126 % 65536 % 4294967296 <= 2147483647 then #t~mem126 % 65536 % 4294967296 else #t~mem126 % 65536 % 4294967296 - 4294967296)) % 65536 <= 32767 then ((if #t~mem125 % 65536 % 4294967296 <= 2147483647 then #t~mem125 % 65536 % 4294967296 else #t~mem125 % 65536 % 4294967296 - 4294967296) - (if (64 - ~scroll_speed~0) % 65536 % 4294967296 <= 2147483647 then (64 - ~scroll_speed~0) % 65536 % 4294967296 else (64 - ~scroll_speed~0) % 65536 % 4294967296 - 4294967296) * (if ~step_y~0 % 65536 % 4294967296 <= 2147483647 then ~step_y~0 % 65536 % 4294967296 else ~step_y~0 % 65536 % 4294967296 - 4294967296) * (if #t~mem126 % 65536 % 4294967296 <= 2147483647 then #t~mem126 % 65536 % 4294967296 else #t~mem126 % 65536 % 4294967296 - 4294967296)) % 65536 else ((if #t~mem125 % 65536 % 4294967296 <= 2147483647 then #t~mem125 % 65536 % 4294967296 else #t~mem125 % 65536 % 4294967296 - 4294967296) - (if (64 - ~scroll_speed~0) % 65536 % 4294967296 <= 2147483647 then (64 - ~scroll_speed~0) % 65536 % 4294967296 else (64 - ~scroll_speed~0) % 65536 % 4294967296 - 4294967296) * (if ~step_y~0 % 65536 % 4294967296 <= 2147483647 then ~step_y~0 % 65536 % 4294967296 else ~step_y~0 % 65536 % 4294967296 - 4294967296) * (if #t~mem126 % 65536 % 4294967296 <= 2147483647 then #t~mem126 % 65536 % 4294967296 else #t~mem126 % 65536 % 4294967296 - 4294967296)) % 65536 - 65536), ~msc.base, 6 + (32 + ~msc.offset + 9 * ~id~1), 2);havoc #t~mem125;havoc #t~mem126;call write~int#9(~now~0, ~msc.base, 24 + ~msc.offset, 8); [2025-02-08 02:04:18,994 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3513: assume !(0 != ~step_y~0); [2025-02-08 02:04:18,994 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3503: call #t~mem121 := read~int#9(~msc.base, 20 + ~msc.offset, 4);~step_x~0 := (if ~step_x~0 < 0 && 0 != ~step_x~0 % ((64 - (if ~scroll_speed~0 % 4294967296 % 4294967296 <= 2147483647 then ~scroll_speed~0 % 4294967296 % 4294967296 else ~scroll_speed~0 % 4294967296 % 4294967296 - 4294967296)) * #t~mem121) then (if (64 - (if ~scroll_speed~0 % 4294967296 % 4294967296 <= 2147483647 then ~scroll_speed~0 % 4294967296 % 4294967296 else ~scroll_speed~0 % 4294967296 % 4294967296 - 4294967296)) * #t~mem121 < 0 then ~step_x~0 / ((64 - (if ~scroll_speed~0 % 4294967296 % 4294967296 <= 2147483647 then ~scroll_speed~0 % 4294967296 % 4294967296 else ~scroll_speed~0 % 4294967296 % 4294967296 - 4294967296)) * #t~mem121) - 1 else 1 + ~step_x~0 / ((64 - (if ~scroll_speed~0 % 4294967296 % 4294967296 <= 2147483647 then ~scroll_speed~0 % 4294967296 % 4294967296 else ~scroll_speed~0 % 4294967296 % 4294967296 - 4294967296)) * #t~mem121)) else ~step_x~0 / ((64 - (if ~scroll_speed~0 % 4294967296 % 4294967296 <= 2147483647 then ~scroll_speed~0 % 4294967296 % 4294967296 else ~scroll_speed~0 % 4294967296 % 4294967296 - 4294967296)) * #t~mem121)); [2025-02-08 02:04:19,004 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L4167: havoc #t~malloc211.base, #t~malloc211.offset; [2025-02-08 02:04:19,020 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3157: havoc #t~mem1;havoc #t~bitwise2; [2025-02-08 02:04:19,029 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L4177: havoc dev_get_drvdata_#t~ret214#1.base, dev_get_drvdata_#t~ret214#1.offset; [2025-02-08 02:04:19,048 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L4191: havoc #t~ret217.base, #t~ret217.offset; [2025-02-08 02:04:19,052 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L4174: havoc #t~nondet213; [2025-02-08 02:04:19,228 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3644: ~ii~1#1 := 1 + ~ii~1#1; [2025-02-08 02:04:19,229 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3355: call magicmouse_firm_touch_#t~mem65#1 := read~int#9(magicmouse_firm_touch_~msc#1.base, 176 + magicmouse_firm_touch_~msc#1.offset + 4 * magicmouse_firm_touch_~ii~0#1, 4);magicmouse_firm_touch_~idx~0#1 := magicmouse_firm_touch_#t~mem65#1;call magicmouse_firm_touch_#t~mem66#1 := read~int#9(magicmouse_firm_touch_~msc#1.base, 8 + (32 + magicmouse_firm_touch_~msc#1.offset + 9 * magicmouse_firm_touch_~idx~0#1), 1); [2025-02-08 02:04:19,229 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3644-1: SUMMARY for call magicmouse_emit_touch(~msc~0#1.base, ~msc~0#1.offset, ~ii~1#1, ~data#1.base, ~data#1.offset + (if (6 + 8 * ~ii~1#1) % 18446744073709551616 % 18446744073709551616 <= 9223372036854775807 then (6 + 8 * ~ii~1#1) % 18446744073709551616 % 18446744073709551616 else (6 + 8 * ~ii~1#1) % 18446744073709551616 % 18446744073709551616 - 18446744073709551616)); srcloc: null [2025-02-08 02:04:19,229 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3669-1: SUMMARY for call #t~ret151#1 := magicmouse_raw_event(~hdev#1.base, ~hdev#1.offset, ~report#1.base, ~report#1.offset, ~data#1.base, 2 + ~data#1.offset, (if #t~mem150#1 % 256 % 4294967296 <= 2147483647 then #t~mem150#1 % 256 % 4294967296 else #t~mem150#1 % 256 % 4294967296 - 4294967296)); srcloc: null [2025-02-08 02:04:19,229 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3669: assume -2147483648 <= #t~ret151#1 && #t~ret151#1 <= 2147483647;havoc #t~mem150#1;havoc #t~ret151#1;call #t~mem152#1 := read~int#4(~data#1.base, 1 + ~data#1.offset, 1);call #t~mem153#1 := read~int#4(~data#1.base, 1 + ~data#1.offset, 1); [2025-02-08 02:04:19,229 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3669-2: call #t~mem150#1 := read~int#4(~data#1.base, 1 + ~data#1.offset, 1); [2025-02-08 02:04:19,229 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3628: call #t~mem139#1 := read~int#4(~data#1.base, 1 + ~data#1.offset, 1);~clicks~0#1 := (if #t~mem139#1 % 256 % 4294967296 <= 2147483647 then #t~mem139#1 % 256 % 4294967296 else #t~mem139#1 % 256 % 4294967296 - 4294967296);havoc #t~mem139#1; [2025-02-08 02:04:19,230 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3372-1: magicmouse_firm_touch_#res#1 := magicmouse_firm_touch_~touch~0#1; [2025-02-08 02:04:19,230 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3364: magicmouse_firm_touch_~ii~0#1 := 1 + magicmouse_firm_touch_~ii~0#1;call magicmouse_firm_touch_#t~mem67#1 := read~int#9(magicmouse_firm_touch_~msc#1.base, 16 + magicmouse_firm_touch_~msc#1.offset, 4); [2025-02-08 02:04:19,230 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3356: assume magicmouse_firm_touch_#t~mem66#1 % 256 % 4294967296 <= 7;havoc magicmouse_firm_touch_#t~mem66#1; [2025-02-08 02:04:19,230 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3356: assume !(magicmouse_firm_touch_#t~mem66#1 % 256 % 4294967296 <= 7);havoc magicmouse_firm_touch_#t~mem66#1; [2025-02-08 02:04:19,230 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3389: assume 0 != (if ~emulate_3button~0 % 256 % 4294967296 <= 2147483647 then ~emulate_3button~0 % 256 % 4294967296 else ~emulate_3button~0 % 256 % 4294967296 - 4294967296); [2025-02-08 02:04:19,230 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3389: assume !(0 != (if ~emulate_3button~0 % 256 % 4294967296 <= 2147483647 then ~emulate_3button~0 % 256 % 4294967296 else ~emulate_3button~0 % 256 % 4294967296 - 4294967296)); [2025-02-08 02:04:19,230 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3670: assume -2147483648 <= #t~ret154#1 && #t~ret154#1 <= 2147483647;havoc #t~mem152#1;havoc #t~mem153#1;havoc #t~ret154#1; [2025-02-08 02:04:19,230 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3604: assume 0 != (if -4 + ~size#1 < 0 && 0 != (-4 + ~size#1) % 9 then (-4 + ~size#1) % 9 - 9 else (-4 + ~size#1) % 9);#res#1 := 0; [2025-02-08 02:04:19,230 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3604: assume !(0 != (if -4 + ~size#1 < 0 && 0 != (-4 + ~size#1) % 9 then (-4 + ~size#1) % 9 - 9 else (-4 + ~size#1) % 9));~npoints~0#1 := (if -4 + ~size#1 < 0 && 0 != (-4 + ~size#1) % 9 then 1 + (-4 + ~size#1) / 9 else (-4 + ~size#1) / 9);call write~int#9(0, ~msc~0#1.base, 16 + ~msc~0#1.offset, 4);~ii~1#1 := 0; [2025-02-08 02:04:19,230 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3670-1: SUMMARY for call #t~ret154#1 := magicmouse_raw_event(~hdev#1.base, ~hdev#1.offset, ~report#1.base, ~report#1.offset, ~data#1.base, ~data#1.offset + (if (2 + #t~mem152#1 % 256) % 18446744073709551616 % 18446744073709551616 <= 9223372036854775807 then (2 + #t~mem152#1 % 256) % 18446744073709551616 % 18446744073709551616 else (2 + #t~mem152#1 % 256) % 18446744073709551616 % 18446744073709551616 - 18446744073709551616), -2 + ~size#1 - (if #t~mem153#1 % 256 % 4294967296 <= 2147483647 then #t~mem153#1 % 256 % 4294967296 else #t~mem153#1 % 256 % 4294967296 - 4294967296)); srcloc: null [2025-02-08 02:04:19,231 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3695: assume #t~mem161#1 >= 0;havoc #t~mem161#1;call #t~mem162#1 := read~int#9(~msc~0#1.base, 240 + ~msc~0#1.offset, 4);call #t~mem163#1 := read~int#9(~msc~0#1.base, 32 + ~msc~0#1.offset + 9 * #t~mem162#1, 2); [2025-02-08 02:04:19,231 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3695: assume !(#t~mem161#1 >= 0);havoc #t~mem161#1; [2025-02-08 02:04:19,231 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3398: assume magicmouse_emit_buttons_~id~0#1 >= 0;call magicmouse_emit_buttons_#t~mem77#1 := read~int#9(magicmouse_emit_buttons_~msc#1.base, 32 + magicmouse_emit_buttons_~msc#1.offset + 9 * magicmouse_emit_buttons_~id~0#1, 2);magicmouse_emit_buttons_~x~0#1 := magicmouse_emit_buttons_#t~mem77#1;havoc magicmouse_emit_buttons_#t~mem77#1; [2025-02-08 02:04:19,231 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3398: assume !(magicmouse_emit_buttons_~id~0#1 >= 0); [2025-02-08 02:04:19,231 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3654: assume 0 != (if ~report_touches~0 % 256 % 4294967296 <= 2147483647 then ~report_touches~0 % 256 % 4294967296 else ~report_touches~0 % 256 % 4294967296 - 4294967296);call #t~mem140#1 := read~int#9(~msc~0#1.base, 16 + ~msc~0#1.offset, 4); [2025-02-08 02:04:19,231 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3654: assume !(0 != (if ~report_touches~0 % 256 % 4294967296 <= 2147483647 then ~report_touches~0 % 256 % 4294967296 else ~report_touches~0 % 256 % 4294967296 - 4294967296)); [2025-02-08 02:04:19,231 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3390: assume 0 == magicmouse_emit_buttons_~state#1; [2025-02-08 02:04:19,231 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3390: assume !(0 == magicmouse_emit_buttons_~state#1); [2025-02-08 02:04:19,231 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3704: assume { :begin_inline_input_sync } true;input_sync_#in~dev#1.base, input_sync_#in~dev#1.offset := ~input~1#1.base, ~input~1#1.offset;havoc input_sync_~dev#1.base, input_sync_~dev#1.offset;input_sync_~dev#1.base, input_sync_~dev#1.offset := input_sync_#in~dev#1.base, input_sync_#in~dev#1.offset; [2025-02-08 02:04:19,231 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3663-1: [2025-02-08 02:04:19,231 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3663: ~x~2#1 := #t~bitwise144#1 / 4194304;havoc #t~mem141#1;havoc #t~bitwise142#1;havoc #t~mem143#1;havoc #t~bitwise144#1;call #t~mem145#1 := read~int#4(~data#1.base, 3 + ~data#1.offset, 1); [2025-02-08 02:04:19,231 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3663-3: assume 0 == 4194304 * (if #t~mem143#1 % 256 % 4294967296 <= 2147483647 then #t~mem143#1 % 256 % 4294967296 else #t~mem143#1 % 256 % 4294967296 - 4294967296);#t~bitwise144#1 := 268435456 * #t~bitwise142#1; [2025-02-08 02:04:19,231 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3663-3: assume !(0 == 4194304 * (if #t~mem143#1 % 256 % 4294967296 <= 2147483647 then #t~mem143#1 % 256 % 4294967296 else #t~mem143#1 % 256 % 4294967296 - 4294967296)); [2025-02-08 02:04:19,231 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3663-2: havoc #t~bitwise144#1;assume (((((268435456 * #t~bitwise142#1 < 0 && 4194304 * (if #t~mem143#1 % 256 % 4294967296 <= 2147483647 then #t~mem143#1 % 256 % 4294967296 else #t~mem143#1 % 256 % 4294967296 - 4294967296) >= 0) || #t~bitwise144#1 >= 4194304 * (if #t~mem143#1 % 256 % 4294967296 <= 2147483647 then #t~mem143#1 % 256 % 4294967296 else #t~mem143#1 % 256 % 4294967296 - 4294967296)) && ((268435456 * #t~bitwise142#1 >= 0 && 4194304 * (if #t~mem143#1 % 256 % 4294967296 <= 2147483647 then #t~mem143#1 % 256 % 4294967296 else #t~mem143#1 % 256 % 4294967296 - 4294967296) < 0) || #t~bitwise144#1 >= 268435456 * #t~bitwise142#1)) && ((268435456 * #t~bitwise142#1 < 0 || 4194304 * (if #t~mem143#1 % 256 % 4294967296 <= 2147483647 then #t~mem143#1 % 256 % 4294967296 else #t~mem143#1 % 256 % 4294967296 - 4294967296) < 0) || #t~bitwise144#1 <= 268435456 * #t~bitwise142#1 + 4194304 * (if #t~mem143#1 % 256 % 4294967296 <= 2147483647 then #t~mem143#1 % 256 % 4294967296 else #t~mem143#1 % 256 % 4294967296 - 4294967296))) && ((268435456 * #t~bitwise142#1 >= 0 && 4194304 * (if #t~mem143#1 % 256 % 4294967296 <= 2147483647 then #t~mem143#1 % 256 % 4294967296 else #t~mem143#1 % 256 % 4294967296 - 4294967296) >= 0) || #t~bitwise144#1 < 0)) && #t~bitwise144#1 <= 2147483647; [2025-02-08 02:04:19,231 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3663-5: call #t~mem143#1 := read~int#4(~data#1.base, 1 + ~data#1.offset, 1); [2025-02-08 02:04:19,231 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3663-4: assume 0 == 268435456 * #t~bitwise142#1 || 268435456 * #t~bitwise142#1 == 4194304 * (if #t~mem143#1 % 256 % 4294967296 <= 2147483647 then #t~mem143#1 % 256 % 4294967296 else #t~mem143#1 % 256 % 4294967296 - 4294967296);#t~bitwise144#1 := 4194304 * (if #t~mem143#1 % 256 % 4294967296 <= 2147483647 then #t~mem143#1 % 256 % 4294967296 else #t~mem143#1 % 256 % 4294967296 - 4294967296); [2025-02-08 02:04:19,231 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3663-4: assume !(0 == 268435456 * #t~bitwise142#1 || 268435456 * #t~bitwise142#1 == 4194304 * (if #t~mem143#1 % 256 % 4294967296 <= 2147483647 then #t~mem143#1 % 256 % 4294967296 else #t~mem143#1 % 256 % 4294967296 - 4294967296)); [2025-02-08 02:04:19,231 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3688: call #t~mem156#1 := read~int#9(~msc~0#1.base, 16 + ~msc~0#1.offset, 4); [2025-02-08 02:04:19,231 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3663-7: havoc #t~bitwise142#1;assume (((((if #t~mem141#1 % 256 % 4294967296 <= 2147483647 then #t~mem141#1 % 256 % 4294967296 else #t~mem141#1 % 256 % 4294967296 - 4294967296) < 0 || #t~bitwise142#1 <= (if #t~mem141#1 % 256 % 4294967296 <= 2147483647 then #t~mem141#1 % 256 % 4294967296 else #t~mem141#1 % 256 % 4294967296 - 4294967296)) && #t~bitwise142#1 <= 12) && #t~bitwise142#1 >= 0) && ((if #t~mem141#1 % 256 % 4294967296 <= 2147483647 then #t~mem141#1 % 256 % 4294967296 else #t~mem141#1 % 256 % 4294967296 - 4294967296) >= 0 || #t~bitwise142#1 > 12 + (if #t~mem141#1 % 256 % 4294967296 <= 2147483647 then #t~mem141#1 % 256 % 4294967296 else #t~mem141#1 % 256 % 4294967296 - 4294967296))) && #t~bitwise142#1 >= -2147483648; [2025-02-08 02:04:19,233 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3663-6: [2025-02-08 02:04:19,233 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3366: assume magicmouse_firm_touch_#t~mem67#1 > magicmouse_firm_touch_~ii~0#1;havoc magicmouse_firm_touch_#t~mem67#1; [2025-02-08 02:04:19,233 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3366: assume !(magicmouse_firm_touch_#t~mem67#1 > magicmouse_firm_touch_~ii~0#1);havoc magicmouse_firm_touch_#t~mem67#1; [2025-02-08 02:04:19,233 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3663-9: assume 0 == (if #t~mem141#1 % 256 % 4294967296 <= 2147483647 then #t~mem141#1 % 256 % 4294967296 else #t~mem141#1 % 256 % 4294967296 - 4294967296);#t~bitwise142#1 := 0; [2025-02-08 02:04:19,233 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3663-9: assume !(0 == (if #t~mem141#1 % 256 % 4294967296 <= 2147483647 then #t~mem141#1 % 256 % 4294967296 else #t~mem141#1 % 256 % 4294967296 - 4294967296)); [2025-02-08 02:04:19,233 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3688-1: SUMMARY for call input_report_key(~input~1#1.base, ~input~1#1.offset, 272, ~clicks~0#1 % 2); srcloc: null [2025-02-08 02:04:19,233 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3663-8: assume 12 == (if #t~mem141#1 % 256 % 4294967296 <= 2147483647 then #t~mem141#1 % 256 % 4294967296 else #t~mem141#1 % 256 % 4294967296 - 4294967296);#t~bitwise142#1 := (if #t~mem141#1 % 256 % 4294967296 <= 2147483647 then #t~mem141#1 % 256 % 4294967296 else #t~mem141#1 % 256 % 4294967296 - 4294967296); [2025-02-08 02:04:19,233 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3663-8: assume !(12 == (if #t~mem141#1 % 256 % 4294967296 <= 2147483647 then #t~mem141#1 % 256 % 4294967296 else #t~mem141#1 % 256 % 4294967296 - 4294967296)); [2025-02-08 02:04:19,233 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3655: assume 0 == #t~mem140#1;havoc #t~mem140#1; [2025-02-08 02:04:19,233 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3655: assume !(0 == #t~mem140#1);havoc #t~mem140#1; [2025-02-08 02:04:19,233 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3663-10: call #t~mem141#1 := read~int#4(~data#1.base, 3 + ~data#1.offset, 1); [2025-02-08 02:04:19,233 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3680: assume 781 == #t~mem155#1 % 65536 % 4294967296;havoc #t~mem155#1;assume { :begin_inline_magicmouse_emit_buttons } true;magicmouse_emit_buttons_#in~msc#1.base, magicmouse_emit_buttons_#in~msc#1.offset, magicmouse_emit_buttons_#in~state#1 := ~msc~0#1.base, ~msc~0#1.offset, ~clicks~0#1 % 4;havoc magicmouse_emit_buttons_#t~mem68#1.base, magicmouse_emit_buttons_#t~mem68#1.offset, magicmouse_emit_buttons_#t~ret69#1, magicmouse_emit_buttons_#t~mem70#1.base, magicmouse_emit_buttons_#t~mem70#1.offset, magicmouse_emit_buttons_#t~ret71#1, magicmouse_emit_buttons_#t~mem72#1.base, magicmouse_emit_buttons_#t~mem72#1.offset, magicmouse_emit_buttons_#t~ret73#1, magicmouse_emit_buttons_#t~bitwise74#1, magicmouse_emit_buttons_#t~bitwise75#1, magicmouse_emit_buttons_#t~ret76#1, magicmouse_emit_buttons_#t~mem77#1, magicmouse_emit_buttons_#t~mem78#1.base, magicmouse_emit_buttons_#t~mem78#1.offset, magicmouse_emit_buttons_#t~bitwise79#1, magicmouse_emit_buttons_#t~mem80#1.base, magicmouse_emit_buttons_#t~mem80#1.offset, magicmouse_emit_buttons_#t~mem81#1.base, magicmouse_emit_buttons_#t~mem81#1.offset, magicmouse_emit_buttons_#t~bitwise82#1, magicmouse_emit_buttons_~msc#1.base, magicmouse_emit_buttons_~msc#1.offset, magicmouse_emit_buttons_~state#1, magicmouse_emit_buttons_~last_state~0#1, magicmouse_emit_buttons_~tmp~4#1, magicmouse_emit_buttons_~tmp___0~0#1, magicmouse_emit_buttons_~tmp___1~0#1, magicmouse_emit_buttons_~id~0#1, magicmouse_emit_buttons_~x~0#1;magicmouse_emit_buttons_~msc#1.base, magicmouse_emit_buttons_~msc#1.offset := magicmouse_emit_buttons_#in~msc#1.base, magicmouse_emit_buttons_#in~msc#1.offset;magicmouse_emit_buttons_~state#1 := magicmouse_emit_buttons_#in~state#1;havoc magicmouse_emit_buttons_~last_state~0#1;havoc magicmouse_emit_buttons_~tmp~4#1;havoc magicmouse_emit_buttons_~tmp___0~0#1;havoc magicmouse_emit_buttons_~tmp___1~0#1;havoc magicmouse_emit_buttons_~id~0#1;havoc magicmouse_emit_buttons_~x~0#1;call magicmouse_emit_buttons_#t~mem68#1.base, magicmouse_emit_buttons_#t~mem68#1.offset := read~$Pointer$#9(magicmouse_emit_buttons_~msc#1.base, magicmouse_emit_buttons_~msc#1.offset, 8); [2025-02-08 02:04:19,233 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3680: assume !(781 == #t~mem155#1 % 65536 % 4294967296);havoc #t~mem155#1; [2025-02-08 02:04:19,233 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3358: assume magicmouse_firm_touch_~touch~0#1 >= 0;magicmouse_firm_touch_~touch~0#1 := -1; [2025-02-08 02:04:19,234 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3358: assume !(magicmouse_firm_touch_~touch~0#1 >= 0);magicmouse_firm_touch_~touch~0#1 := magicmouse_firm_touch_~idx~0#1; [2025-02-08 02:04:19,234 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3614: ~ii~1#1 := 1 + ~ii~1#1; [2025-02-08 02:04:19,234 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3614-1: SUMMARY for call magicmouse_emit_touch(~msc~0#1.base, ~msc~0#1.offset, ~ii~1#1, ~data#1.base, ~data#1.offset + (if (4 + 9 * ~ii~1#1) % 18446744073709551616 % 18446744073709551616 <= 9223372036854775807 then (4 + 9 * ~ii~1#1) % 18446744073709551616 % 18446744073709551616 else (4 + 9 * ~ii~1#1) % 18446744073709551616 % 18446744073709551616 - 18446744073709551616)); srcloc: null [2025-02-08 02:04:19,234 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3697-1: SUMMARY for call input_report_abs(~input~1#1.base, ~input~1#1.offset, 0, #t~mem163#1); srcloc: null [2025-02-08 02:04:19,234 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3664: ~y~1#1 := #t~bitwise148#1 / 4194304;havoc #t~mem145#1;havoc #t~bitwise146#1;havoc #t~mem147#1;havoc #t~bitwise148#1;call #t~mem149#1 := read~int#4(~data#1.base, 3 + ~data#1.offset, 1);~clicks~0#1 := (if #t~mem149#1 % 256 % 4294967296 <= 2147483647 then #t~mem149#1 % 256 % 4294967296 else #t~mem149#1 % 256 % 4294967296 - 4294967296);havoc #t~mem149#1; [2025-02-08 02:04:19,234 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3697: havoc #t~mem162#1;havoc #t~mem163#1;call #t~mem164#1 := read~int#9(~msc~0#1.base, 240 + ~msc~0#1.offset, 4);call #t~mem165#1 := read~int#9(~msc~0#1.base, 2 + (32 + ~msc~0#1.offset + 9 * #t~mem164#1), 2); [2025-02-08 02:04:19,234 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3664-2: havoc #t~bitwise148#1;assume (((((67108864 * #t~bitwise146#1 < 0 && 4194304 * (if #t~mem147#1 % 256 % 4294967296 <= 2147483647 then #t~mem147#1 % 256 % 4294967296 else #t~mem147#1 % 256 % 4294967296 - 4294967296) >= 0) || #t~bitwise148#1 >= 4194304 * (if #t~mem147#1 % 256 % 4294967296 <= 2147483647 then #t~mem147#1 % 256 % 4294967296 else #t~mem147#1 % 256 % 4294967296 - 4294967296)) && ((67108864 * #t~bitwise146#1 >= 0 && 4194304 * (if #t~mem147#1 % 256 % 4294967296 <= 2147483647 then #t~mem147#1 % 256 % 4294967296 else #t~mem147#1 % 256 % 4294967296 - 4294967296) < 0) || #t~bitwise148#1 >= 67108864 * #t~bitwise146#1)) && ((67108864 * #t~bitwise146#1 < 0 || 4194304 * (if #t~mem147#1 % 256 % 4294967296 <= 2147483647 then #t~mem147#1 % 256 % 4294967296 else #t~mem147#1 % 256 % 4294967296 - 4294967296) < 0) || #t~bitwise148#1 <= 67108864 * #t~bitwise146#1 + 4194304 * (if #t~mem147#1 % 256 % 4294967296 <= 2147483647 then #t~mem147#1 % 256 % 4294967296 else #t~mem147#1 % 256 % 4294967296 - 4294967296))) && ((67108864 * #t~bitwise146#1 >= 0 && 4194304 * (if #t~mem147#1 % 256 % 4294967296 <= 2147483647 then #t~mem147#1 % 256 % 4294967296 else #t~mem147#1 % 256 % 4294967296 - 4294967296) >= 0) || #t~bitwise148#1 < 0)) && #t~bitwise148#1 <= 2147483647; [2025-02-08 02:04:19,234 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3664-1: [2025-02-08 02:04:19,234 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3631: assume ~size#1 <= 5;#res#1 := 0; [2025-02-08 02:04:19,234 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3631: assume !(~size#1 <= 5); [2025-02-08 02:04:19,234 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3664-4: assume 0 == 67108864 * #t~bitwise146#1 || 67108864 * #t~bitwise146#1 == 4194304 * (if #t~mem147#1 % 256 % 4294967296 <= 2147483647 then #t~mem147#1 % 256 % 4294967296 else #t~mem147#1 % 256 % 4294967296 - 4294967296);#t~bitwise148#1 := 4194304 * (if #t~mem147#1 % 256 % 4294967296 <= 2147483647 then #t~mem147#1 % 256 % 4294967296 else #t~mem147#1 % 256 % 4294967296 - 4294967296); [2025-02-08 02:04:19,234 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3664-4: assume !(0 == 67108864 * #t~bitwise146#1 || 67108864 * #t~bitwise146#1 == 4194304 * (if #t~mem147#1 % 256 % 4294967296 <= 2147483647 then #t~mem147#1 % 256 % 4294967296 else #t~mem147#1 % 256 % 4294967296 - 4294967296)); [2025-02-08 02:04:19,234 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3664-3: assume 0 == 4194304 * (if #t~mem147#1 % 256 % 4294967296 <= 2147483647 then #t~mem147#1 % 256 % 4294967296 else #t~mem147#1 % 256 % 4294967296 - 4294967296);#t~bitwise148#1 := 67108864 * #t~bitwise146#1; [2025-02-08 02:04:19,234 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3664-3: assume !(0 == 4194304 * (if #t~mem147#1 % 256 % 4294967296 <= 2147483647 then #t~mem147#1 % 256 % 4294967296 else #t~mem147#1 % 256 % 4294967296 - 4294967296)); [2025-02-08 02:04:19,234 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3664-6: [2025-02-08 02:04:19,234 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3664-5: call #t~mem147#1 := read~int#4(~data#1.base, 2 + ~data#1.offset, 1); [2025-02-08 02:04:19,234 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3400: assume magicmouse_emit_buttons_~x~0#1 < ~middle_button_start~0;magicmouse_emit_buttons_~state#1 := 1; [2025-02-08 02:04:19,234 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3400: assume !(magicmouse_emit_buttons_~x~0#1 < ~middle_button_start~0); [2025-02-08 02:04:19,234 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3689-1: SUMMARY for call input_report_key(~input~1#1.base, ~input~1#1.offset, 330, (if #t~mem156#1 > 0 then 1 else 0)); srcloc: null [2025-02-08 02:04:19,237 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3664-8: assume 48 == (if #t~mem145#1 % 256 % 4294967296 <= 2147483647 then #t~mem145#1 % 256 % 4294967296 else #t~mem145#1 % 256 % 4294967296 - 4294967296);#t~bitwise146#1 := (if #t~mem145#1 % 256 % 4294967296 <= 2147483647 then #t~mem145#1 % 256 % 4294967296 else #t~mem145#1 % 256 % 4294967296 - 4294967296); [2025-02-08 02:04:19,237 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3664-8: assume !(48 == (if #t~mem145#1 % 256 % 4294967296 <= 2147483647 then #t~mem145#1 % 256 % 4294967296 else #t~mem145#1 % 256 % 4294967296 - 4294967296)); [2025-02-08 02:04:19,237 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3689: havoc #t~mem156#1;call #t~mem157#1 := read~int#9(~msc~0#1.base, 16 + ~msc~0#1.offset, 4); [2025-02-08 02:04:19,238 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3664-7: havoc #t~bitwise146#1;assume (((((if #t~mem145#1 % 256 % 4294967296 <= 2147483647 then #t~mem145#1 % 256 % 4294967296 else #t~mem145#1 % 256 % 4294967296 - 4294967296) < 0 || #t~bitwise146#1 <= (if #t~mem145#1 % 256 % 4294967296 <= 2147483647 then #t~mem145#1 % 256 % 4294967296 else #t~mem145#1 % 256 % 4294967296 - 4294967296)) && #t~bitwise146#1 <= 48) && #t~bitwise146#1 >= 0) && ((if #t~mem145#1 % 256 % 4294967296 <= 2147483647 then #t~mem145#1 % 256 % 4294967296 else #t~mem145#1 % 256 % 4294967296 - 4294967296) >= 0 || #t~bitwise146#1 > 48 + (if #t~mem145#1 % 256 % 4294967296 <= 2147483647 then #t~mem145#1 % 256 % 4294967296 else #t~mem145#1 % 256 % 4294967296 - 4294967296))) && #t~bitwise146#1 >= -2147483648; [2025-02-08 02:04:19,238 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3664-9: assume 0 == (if #t~mem145#1 % 256 % 4294967296 <= 2147483647 then #t~mem145#1 % 256 % 4294967296 else #t~mem145#1 % 256 % 4294967296 - 4294967296);#t~bitwise146#1 := 0; [2025-02-08 02:04:19,238 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3664-9: assume !(0 == (if #t~mem145#1 % 256 % 4294967296 <= 2147483647 then #t~mem145#1 % 256 % 4294967296 else #t~mem145#1 % 256 % 4294967296 - 4294967296)); [2025-02-08 02:04:19,238 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3392: assume 0 != magicmouse_emit_buttons_~last_state~0#1;magicmouse_emit_buttons_~state#1 := magicmouse_emit_buttons_~last_state~0#1; [2025-02-08 02:04:19,238 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3392: assume !(0 != magicmouse_emit_buttons_~last_state~0#1);assume { :begin_inline_magicmouse_firm_touch } true;magicmouse_firm_touch_#in~msc#1.base, magicmouse_firm_touch_#in~msc#1.offset := magicmouse_emit_buttons_~msc#1.base, magicmouse_emit_buttons_~msc#1.offset;havoc magicmouse_firm_touch_#res#1;havoc magicmouse_firm_touch_#t~mem65#1, magicmouse_firm_touch_#t~mem66#1, magicmouse_firm_touch_#t~mem67#1, magicmouse_firm_touch_~msc#1.base, magicmouse_firm_touch_~msc#1.offset, magicmouse_firm_touch_~touch~0#1, magicmouse_firm_touch_~ii~0#1, magicmouse_firm_touch_~idx~0#1;magicmouse_firm_touch_~msc#1.base, magicmouse_firm_touch_~msc#1.offset := magicmouse_firm_touch_#in~msc#1.base, magicmouse_firm_touch_#in~msc#1.offset;havoc magicmouse_firm_touch_~touch~0#1;havoc magicmouse_firm_touch_~ii~0#1;havoc magicmouse_firm_touch_~idx~0#1;magicmouse_firm_touch_~touch~0#1 := -1;magicmouse_firm_touch_~ii~0#1 := 0; [2025-02-08 02:04:19,238 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3648: assume ~ii~1#1 < ~npoints~0#1; [2025-02-08 02:04:19,238 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3648: assume !(~ii~1#1 < ~npoints~0#1); [2025-02-08 02:04:19,238 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3417-1: SUMMARY for call input_report_key(magicmouse_emit_buttons_#t~mem80#1.base, magicmouse_emit_buttons_#t~mem80#1.offset, 272, magicmouse_emit_buttons_~state#1 % 2); srcloc: null [2025-02-08 02:04:19,238 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3384: assume -2147483648 <= magicmouse_emit_buttons_#t~ret69#1 && magicmouse_emit_buttons_#t~ret69#1 <= 2147483647;magicmouse_emit_buttons_~tmp~4#1 := magicmouse_emit_buttons_#t~ret69#1;havoc magicmouse_emit_buttons_#t~mem68#1.base, magicmouse_emit_buttons_#t~mem68#1.offset;havoc magicmouse_emit_buttons_#t~ret69#1;call magicmouse_emit_buttons_#t~mem70#1.base, magicmouse_emit_buttons_#t~mem70#1.offset := read~$Pointer$#9(magicmouse_emit_buttons_~msc#1.base, magicmouse_emit_buttons_~msc#1.offset, 8); [2025-02-08 02:04:19,238 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3417: havoc magicmouse_emit_buttons_#t~mem80#1.base, magicmouse_emit_buttons_#t~mem80#1.offset;call magicmouse_emit_buttons_#t~mem81#1.base, magicmouse_emit_buttons_#t~mem81#1.offset := read~$Pointer$#9(magicmouse_emit_buttons_~msc#1.base, magicmouse_emit_buttons_~msc#1.offset, 8); [2025-02-08 02:04:19,238 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3417-2: call magicmouse_emit_buttons_#t~mem80#1.base, magicmouse_emit_buttons_#t~mem80#1.offset := read~$Pointer$#9(magicmouse_emit_buttons_~msc#1.base, magicmouse_emit_buttons_~msc#1.offset, 8); [2025-02-08 02:04:19,238 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3384-1: SUMMARY for call magicmouse_emit_buttons_#t~ret69#1 := constant_test_bit(272, magicmouse_emit_buttons_#t~mem68#1.base, 416 + magicmouse_emit_buttons_#t~mem68#1.offset); srcloc: null [2025-02-08 02:04:19,238 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3698: havoc #t~mem164#1;havoc #t~mem165#1; [2025-02-08 02:04:19,239 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint magicmouse_raw_eventFINAL: assume true; [2025-02-08 02:04:19,239 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3698-1: SUMMARY for call input_report_abs(~input~1#1.base, ~input~1#1.offset, 1, #t~mem165#1); srcloc: null [2025-02-08 02:04:19,239 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3599: assume false; [2025-02-08 02:04:19,239 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3599: assume !false;call #t~mem155#1 := read~int#7(~input~1#1.base, 28 + ~input~1#1.offset, 2); [2025-02-08 02:04:19,239 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3690: havoc #t~mem157#1;call #t~mem158#1 := read~int#9(~msc~0#1.base, 16 + ~msc~0#1.offset, 4); [2025-02-08 02:04:19,239 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3624: assume 0 == #t~mem138#1;havoc #t~mem138#1;call write~int#9(-1, ~msc~0#1.base, 240 + ~msc~0#1.offset, 4); [2025-02-08 02:04:19,239 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3624: assume !(0 == #t~mem138#1);havoc #t~mem138#1; [2025-02-08 02:04:19,239 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3690-1: SUMMARY for call input_report_key(~input~1#1.base, ~input~1#1.offset, 325, (if 1 == #t~mem157#1 then 1 else 0)); srcloc: null [2025-02-08 02:04:19,239 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3657: SUMMARY for call input_mt_sync(~input~1#1.base, ~input~1#1.offset); srcloc: null [2025-02-08 02:04:19,239 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3624-1: call #t~mem138#1 := read~int#9(~msc~0#1.base, 16 + ~msc~0#1.offset, 4); [2025-02-08 02:04:19,239 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3682: havoc magicmouse_emit_buttons_#t~mem68#1.base, magicmouse_emit_buttons_#t~mem68#1.offset, magicmouse_emit_buttons_#t~ret69#1, magicmouse_emit_buttons_#t~mem70#1.base, magicmouse_emit_buttons_#t~mem70#1.offset, magicmouse_emit_buttons_#t~ret71#1, magicmouse_emit_buttons_#t~mem72#1.base, magicmouse_emit_buttons_#t~mem72#1.offset, magicmouse_emit_buttons_#t~ret73#1, magicmouse_emit_buttons_#t~bitwise74#1, magicmouse_emit_buttons_#t~bitwise75#1, magicmouse_emit_buttons_#t~ret76#1, magicmouse_emit_buttons_#t~mem77#1, magicmouse_emit_buttons_#t~mem78#1.base, magicmouse_emit_buttons_#t~mem78#1.offset, magicmouse_emit_buttons_#t~bitwise79#1, magicmouse_emit_buttons_#t~mem80#1.base, magicmouse_emit_buttons_#t~mem80#1.offset, magicmouse_emit_buttons_#t~mem81#1.base, magicmouse_emit_buttons_#t~mem81#1.offset, magicmouse_emit_buttons_#t~bitwise82#1, magicmouse_emit_buttons_~msc#1.base, magicmouse_emit_buttons_~msc#1.offset, magicmouse_emit_buttons_~state#1, magicmouse_emit_buttons_~last_state~0#1, magicmouse_emit_buttons_~tmp~4#1, magicmouse_emit_buttons_~tmp___0~0#1, magicmouse_emit_buttons_~tmp___1~0#1, magicmouse_emit_buttons_~id~0#1, magicmouse_emit_buttons_~x~0#1;havoc magicmouse_emit_buttons_#in~msc#1.base, magicmouse_emit_buttons_#in~msc#1.offset, magicmouse_emit_buttons_#in~state#1;assume { :end_inline_magicmouse_emit_buttons } true; [2025-02-08 02:04:19,239 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3228: havoc input_sync_~dev#1.base, input_sync_~dev#1.offset;havoc input_sync_#in~dev#1.base, input_sync_#in~dev#1.offset;assume { :end_inline_input_sync } true;#res#1 := 1; [2025-02-08 02:04:19,239 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3418: havoc magicmouse_emit_buttons_#t~mem81#1.base, magicmouse_emit_buttons_#t~mem81#1.offset;havoc magicmouse_emit_buttons_#t~bitwise82#1; [2025-02-08 02:04:19,239 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3228-1: SUMMARY for call input_event(input_sync_~dev#1.base, input_sync_~dev#1.offset, 0, 0, 0); srcloc: null [2025-02-08 02:04:19,239 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3418-2: [2025-02-08 02:04:19,239 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3385-1: SUMMARY for call magicmouse_emit_buttons_#t~ret71#1 := constant_test_bit(273, magicmouse_emit_buttons_#t~mem70#1.base, 416 + magicmouse_emit_buttons_#t~mem70#1.offset); srcloc: null [2025-02-08 02:04:19,239 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3418-1: SUMMARY for call input_report_key(magicmouse_emit_buttons_#t~mem81#1.base, magicmouse_emit_buttons_#t~mem81#1.offset, 273, magicmouse_emit_buttons_#t~bitwise82#1); srcloc: null [2025-02-08 02:04:19,239 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3385: assume -2147483648 <= magicmouse_emit_buttons_#t~ret71#1 && magicmouse_emit_buttons_#t~ret71#1 <= 2147483647;magicmouse_emit_buttons_~tmp___0~0#1 := magicmouse_emit_buttons_#t~ret71#1;havoc magicmouse_emit_buttons_#t~mem70#1.base, magicmouse_emit_buttons_#t~mem70#1.offset;havoc magicmouse_emit_buttons_#t~ret71#1;call magicmouse_emit_buttons_#t~mem72#1.base, magicmouse_emit_buttons_#t~mem72#1.offset := read~$Pointer$#9(magicmouse_emit_buttons_~msc#1.base, magicmouse_emit_buttons_~msc#1.offset, 8); [2025-02-08 02:04:19,239 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3418-4: assume 2 == magicmouse_emit_buttons_~state#1;magicmouse_emit_buttons_#t~bitwise82#1 := magicmouse_emit_buttons_~state#1; [2025-02-08 02:04:19,239 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3418-4: assume !(2 == magicmouse_emit_buttons_~state#1); [2025-02-08 02:04:19,239 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3418-3: havoc magicmouse_emit_buttons_#t~bitwise82#1;assume ((((magicmouse_emit_buttons_~state#1 < 0 || magicmouse_emit_buttons_#t~bitwise82#1 <= magicmouse_emit_buttons_~state#1) && magicmouse_emit_buttons_#t~bitwise82#1 <= 2) && magicmouse_emit_buttons_#t~bitwise82#1 >= 0) && (magicmouse_emit_buttons_~state#1 >= 0 || magicmouse_emit_buttons_#t~bitwise82#1 > 2 + magicmouse_emit_buttons_~state#1)) && magicmouse_emit_buttons_#t~bitwise82#1 >= -2147483648; [2025-02-08 02:04:19,240 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3418-5: assume 0 == magicmouse_emit_buttons_~state#1;magicmouse_emit_buttons_#t~bitwise82#1 := 0; [2025-02-08 02:04:19,240 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3418-5: assume !(0 == magicmouse_emit_buttons_~state#1); [2025-02-08 02:04:19,240 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3691-1: SUMMARY for call input_report_key(~input~1#1.base, ~input~1#1.offset, 333, (if 2 == #t~mem158#1 then 1 else 0)); srcloc: null [2025-02-08 02:04:19,240 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3691: havoc #t~mem158#1;call #t~mem159#1 := read~int#9(~msc~0#1.base, 16 + ~msc~0#1.offset, 4); [2025-02-08 02:04:19,240 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3683: SUMMARY for call input_report_rel(~input~1#1.base, ~input~1#1.offset, 0, ~x~2#1); srcloc: null [2025-02-08 02:04:19,240 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3386: assume -2147483648 <= magicmouse_emit_buttons_#t~ret73#1 && magicmouse_emit_buttons_#t~ret73#1 <= 2147483647;magicmouse_emit_buttons_~tmp___1~0#1 := magicmouse_emit_buttons_#t~ret73#1;havoc magicmouse_emit_buttons_#t~mem72#1.base, magicmouse_emit_buttons_#t~mem72#1.offset;havoc magicmouse_emit_buttons_#t~ret73#1; [2025-02-08 02:04:19,240 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3675: #res#1 := 0; [2025-02-08 02:04:19,240 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3386-1: SUMMARY for call magicmouse_emit_buttons_#t~ret73#1 := constant_test_bit(274, magicmouse_emit_buttons_#t~mem72#1.base, 416 + magicmouse_emit_buttons_#t~mem72#1.offset); srcloc: null [2025-02-08 02:04:19,240 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3634: assume 0 != (-6 + ~size#1) % 8 % 4294967296;#res#1 := 0; [2025-02-08 02:04:19,240 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3634: assume !(0 != (-6 + ~size#1) % 8 % 4294967296);~npoints~0#1 := (if -6 + ~size#1 < 0 && 0 != (-6 + ~size#1) % 8 then 1 + (-6 + ~size#1) / 8 else (-6 + ~size#1) / 8);call write~int#9(0, ~msc~0#1.base, 16 + ~msc~0#1.offset, 4);~ii~1#1 := 0; [2025-02-08 02:04:19,240 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3601: assume ~size#1 <= 3;#res#1 := 0; [2025-02-08 02:04:19,240 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3601: assume !(~size#1 <= 3); [2025-02-08 02:04:19,240 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3692: havoc #t~mem159#1;call #t~mem160#1 := read~int#9(~msc~0#1.base, 16 + ~msc~0#1.offset, 4); [2025-02-08 02:04:19,240 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3403: assume magicmouse_emit_buttons_~x~0#1 > ~middle_button_stop~0;magicmouse_emit_buttons_~state#1 := 2; [2025-02-08 02:04:19,240 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3403: assume !(magicmouse_emit_buttons_~x~0#1 > ~middle_button_stop~0);magicmouse_emit_buttons_~state#1 := 4; [2025-02-08 02:04:19,240 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3692-1: SUMMARY for call input_report_key(~input~1#1.base, ~input~1#1.offset, 334, (if 3 == #t~mem159#1 then 1 else 0)); srcloc: null [2025-02-08 02:04:19,240 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3684: SUMMARY for call input_report_rel(~input~1#1.base, ~input~1#1.offset, 1, ~y~1#1); srcloc: null [2025-02-08 02:04:19,240 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3618: assume ~ii~1#1 < ~npoints~0#1; [2025-02-08 02:04:19,240 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3618: assume !(~ii~1#1 < ~npoints~0#1); [2025-02-08 02:04:19,240 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3420: assume magicmouse_emit_buttons_~state#1 != magicmouse_emit_buttons_~last_state~0#1;call write~int#9(7, magicmouse_emit_buttons_~msc#1.base, 20 + magicmouse_emit_buttons_~msc#1.offset, 4); [2025-02-08 02:04:19,240 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3420: assume !(magicmouse_emit_buttons_~state#1 != magicmouse_emit_buttons_~last_state~0#1); [2025-02-08 02:04:19,240 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3387-1: [2025-02-08 02:04:19,240 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3387: magicmouse_emit_buttons_~last_state~0#1 := magicmouse_emit_buttons_#t~bitwise75#1;havoc magicmouse_emit_buttons_#t~bitwise74#1;havoc magicmouse_emit_buttons_#t~bitwise75#1; [2025-02-08 02:04:19,240 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3387-3: assume 0 == 4 * magicmouse_emit_buttons_~tmp___1~0#1;magicmouse_emit_buttons_#t~bitwise75#1 := magicmouse_emit_buttons_#t~bitwise74#1; [2025-02-08 02:04:19,240 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3387-3: assume !(0 == 4 * magicmouse_emit_buttons_~tmp___1~0#1); [2025-02-08 02:04:19,240 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3387-2: havoc magicmouse_emit_buttons_#t~bitwise75#1;assume (((((magicmouse_emit_buttons_#t~bitwise74#1 < 0 && 4 * magicmouse_emit_buttons_~tmp___1~0#1 >= 0) || magicmouse_emit_buttons_#t~bitwise75#1 >= 4 * magicmouse_emit_buttons_~tmp___1~0#1) && ((magicmouse_emit_buttons_#t~bitwise74#1 >= 0 && 4 * magicmouse_emit_buttons_~tmp___1~0#1 < 0) || magicmouse_emit_buttons_#t~bitwise75#1 >= magicmouse_emit_buttons_#t~bitwise74#1)) && ((magicmouse_emit_buttons_#t~bitwise74#1 < 0 || 4 * magicmouse_emit_buttons_~tmp___1~0#1 < 0) || magicmouse_emit_buttons_#t~bitwise75#1 <= magicmouse_emit_buttons_#t~bitwise74#1 + 4 * magicmouse_emit_buttons_~tmp___1~0#1)) && ((magicmouse_emit_buttons_#t~bitwise74#1 >= 0 && 4 * magicmouse_emit_buttons_~tmp___1~0#1 >= 0) || magicmouse_emit_buttons_#t~bitwise75#1 < 0)) && magicmouse_emit_buttons_#t~bitwise75#1 <= 2147483647; [2025-02-08 02:04:19,240 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3387-5: [2025-02-08 02:04:19,241 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3387-4: assume 0 == magicmouse_emit_buttons_#t~bitwise74#1 || magicmouse_emit_buttons_#t~bitwise74#1 == 4 * magicmouse_emit_buttons_~tmp___1~0#1;magicmouse_emit_buttons_#t~bitwise75#1 := 4 * magicmouse_emit_buttons_~tmp___1~0#1; [2025-02-08 02:04:19,241 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3387-4: assume !(0 == magicmouse_emit_buttons_#t~bitwise74#1 || magicmouse_emit_buttons_#t~bitwise74#1 == 4 * magicmouse_emit_buttons_~tmp___1~0#1); [2025-02-08 02:04:19,241 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3412: havoc magicmouse_emit_buttons_#t~mem78#1.base, magicmouse_emit_buttons_#t~mem78#1.offset;havoc magicmouse_emit_buttons_#t~bitwise79#1; [2025-02-08 02:04:19,241 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3387-7: assume 0 == 2 * magicmouse_emit_buttons_~tmp___0~0#1;magicmouse_emit_buttons_#t~bitwise74#1 := magicmouse_emit_buttons_~tmp~4#1; [2025-02-08 02:04:19,241 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3387-7: assume !(0 == 2 * magicmouse_emit_buttons_~tmp___0~0#1); [2025-02-08 02:04:19,241 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3387-6: havoc magicmouse_emit_buttons_#t~bitwise74#1;assume (((((magicmouse_emit_buttons_~tmp~4#1 < 0 && 2 * magicmouse_emit_buttons_~tmp___0~0#1 >= 0) || magicmouse_emit_buttons_#t~bitwise74#1 >= 2 * magicmouse_emit_buttons_~tmp___0~0#1) && ((magicmouse_emit_buttons_~tmp~4#1 >= 0 && 2 * magicmouse_emit_buttons_~tmp___0~0#1 < 0) || magicmouse_emit_buttons_#t~bitwise74#1 >= magicmouse_emit_buttons_~tmp~4#1)) && ((magicmouse_emit_buttons_~tmp~4#1 < 0 || 2 * magicmouse_emit_buttons_~tmp___0~0#1 < 0) || magicmouse_emit_buttons_#t~bitwise74#1 <= magicmouse_emit_buttons_~tmp~4#1 + 2 * magicmouse_emit_buttons_~tmp___0~0#1)) && ((magicmouse_emit_buttons_~tmp~4#1 >= 0 && 2 * magicmouse_emit_buttons_~tmp___0~0#1 >= 0) || magicmouse_emit_buttons_#t~bitwise74#1 < 0)) && magicmouse_emit_buttons_#t~bitwise74#1 <= 2147483647; [2025-02-08 02:04:19,241 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3412-2: [2025-02-08 02:04:19,241 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3412-1: SUMMARY for call input_report_key(magicmouse_emit_buttons_#t~mem78#1.base, magicmouse_emit_buttons_#t~mem78#1.offset, 274, magicmouse_emit_buttons_#t~bitwise79#1); srcloc: null [2025-02-08 02:04:19,241 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3387-8: assume 0 == magicmouse_emit_buttons_~tmp~4#1 || magicmouse_emit_buttons_~tmp~4#1 == 2 * magicmouse_emit_buttons_~tmp___0~0#1;magicmouse_emit_buttons_#t~bitwise74#1 := 2 * magicmouse_emit_buttons_~tmp___0~0#1; [2025-02-08 02:04:19,241 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3387-8: assume !(0 == magicmouse_emit_buttons_~tmp~4#1 || magicmouse_emit_buttons_~tmp~4#1 == 2 * magicmouse_emit_buttons_~tmp___0~0#1); [2025-02-08 02:04:19,242 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3412-4: assume 4 == magicmouse_emit_buttons_~state#1;magicmouse_emit_buttons_#t~bitwise79#1 := magicmouse_emit_buttons_~state#1; [2025-02-08 02:04:19,242 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3412-4: assume !(4 == magicmouse_emit_buttons_~state#1); [2025-02-08 02:04:19,242 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3412-3: havoc magicmouse_emit_buttons_#t~bitwise79#1;assume ((((magicmouse_emit_buttons_~state#1 < 0 || magicmouse_emit_buttons_#t~bitwise79#1 <= magicmouse_emit_buttons_~state#1) && magicmouse_emit_buttons_#t~bitwise79#1 <= 4) && magicmouse_emit_buttons_#t~bitwise79#1 >= 0) && (magicmouse_emit_buttons_~state#1 >= 0 || magicmouse_emit_buttons_#t~bitwise79#1 > 4 + magicmouse_emit_buttons_~state#1)) && magicmouse_emit_buttons_#t~bitwise79#1 >= -2147483648; [2025-02-08 02:04:19,242 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3412-6: call magicmouse_emit_buttons_#t~mem78#1.base, magicmouse_emit_buttons_#t~mem78#1.offset := read~$Pointer$#9(magicmouse_emit_buttons_~msc#1.base, magicmouse_emit_buttons_~msc#1.offset, 8); [2025-02-08 02:04:19,242 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3412-5: assume 0 == magicmouse_emit_buttons_~state#1;magicmouse_emit_buttons_#t~bitwise79#1 := 0; [2025-02-08 02:04:19,242 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3412-5: assume !(0 == magicmouse_emit_buttons_~state#1); [2025-02-08 02:04:19,242 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3693-1: SUMMARY for call input_report_key(~input~1#1.base, ~input~1#1.offset, 335, (if 4 == #t~mem160#1 then 1 else 0)); srcloc: null [2025-02-08 02:04:19,242 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3693: havoc #t~mem160#1;call #t~mem161#1 := read~int#9(~msc~0#1.base, 240 + ~msc~0#1.offset, 4); [2025-02-08 02:04:19,242 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3396: magicmouse_emit_buttons_#t~ret76#1 := magicmouse_firm_touch_#res#1;havoc magicmouse_firm_touch_#t~mem65#1, magicmouse_firm_touch_#t~mem66#1, magicmouse_firm_touch_#t~mem67#1, magicmouse_firm_touch_~msc#1.base, magicmouse_firm_touch_~msc#1.offset, magicmouse_firm_touch_~touch~0#1, magicmouse_firm_touch_~ii~0#1, magicmouse_firm_touch_~idx~0#1;havoc magicmouse_firm_touch_#in~msc#1.base, magicmouse_firm_touch_#in~msc#1.offset;assume { :end_inline_magicmouse_firm_touch } true;assume -2147483648 <= magicmouse_emit_buttons_#t~ret76#1 && magicmouse_emit_buttons_#t~ret76#1 <= 2147483647;magicmouse_emit_buttons_~id~0#1 := magicmouse_emit_buttons_#t~ret76#1;havoc magicmouse_emit_buttons_#t~ret76#1; [2025-02-08 02:04:23,551 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L4032: SUMMARY for call magicmouse_remove(main_~var_group1~0#1.base, main_~var_group1~0#1.offset); srcloc: null [2025-02-08 02:04:23,551 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L4214: havoc printk_#t~nondet219#1;magicmouse_init_#t~ret199#1 := printk_#res#1;havoc printk_#t~nondet219#1, printk_~arg0#1.base, printk_~arg0#1.offset;havoc printk_#in~arg0#1.base, printk_#in~arg0#1.offset;assume { :end_inline_printk } true;assume -2147483648 <= magicmouse_init_#t~ret199#1 && magicmouse_init_#t~ret199#1 <= 2147483647;havoc magicmouse_init_#t~ret199#1; [2025-02-08 02:04:23,551 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L4181: havoc dev_set_drvdata_#t~nondet215#1;hid_set_drvdata_#t~ret26#1 := dev_set_drvdata_#res#1;havoc dev_set_drvdata_#t~nondet215#1, dev_set_drvdata_~arg0#1.base, dev_set_drvdata_~arg0#1.offset, dev_set_drvdata_~arg1#1.base, dev_set_drvdata_~arg1#1.offset;havoc dev_set_drvdata_#in~arg0#1.base, dev_set_drvdata_#in~arg0#1.offset, dev_set_drvdata_#in~arg1#1.base, dev_set_drvdata_#in~arg1#1.offset;assume { :end_inline_dev_set_drvdata } true;assume -2147483648 <= hid_set_drvdata_#t~ret26#1 && hid_set_drvdata_#t~ret26#1 <= 2147483647;havoc hid_set_drvdata_#t~ret26#1; [2025-02-08 02:04:23,551 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3306: assume -2147483648 <= hid_hw_start_#t~ret53#1 && hid_hw_start_#t~ret53#1 <= 2147483647;hid_hw_start_~tmp~3#1 := hid_hw_start_#t~ret53#1;havoc hid_hw_start_#t~mem51#1.base, hid_hw_start_#t~mem51#1.offset;havoc hid_hw_start_#t~mem52#1.base, hid_hw_start_#t~mem52#1.offset;havoc hid_hw_start_#t~ret53#1;hid_hw_start_~ret~1#1 := hid_hw_start_~tmp~3#1; [2025-02-08 02:04:23,551 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3818: magicmouse_probe_#t~ret175#1.base, magicmouse_probe_#t~ret175#1.offset := kzalloc_#res#1.base, kzalloc_#res#1.offset;havoc kzalloc_#t~bitwise13#1, kzalloc_#t~ret14#1.base, kzalloc_#t~ret14#1.offset, kzalloc_~size#1, kzalloc_~flags#1, kzalloc_~tmp~0#1.base, kzalloc_~tmp~0#1.offset;havoc kzalloc_#in~size#1, kzalloc_#in~flags#1;assume { :end_inline_kzalloc } true;magicmouse_probe_~tmp~8#1.base, magicmouse_probe_~tmp~8#1.offset := magicmouse_probe_#t~ret175#1.base, magicmouse_probe_#t~ret175#1.offset;havoc magicmouse_probe_#t~ret175#1.base, magicmouse_probe_#t~ret175#1.offset;magicmouse_probe_~msc~2#1.base, magicmouse_probe_~msc~2#1.offset := magicmouse_probe_~tmp~8#1.base, magicmouse_probe_~tmp~8#1.offset; [2025-02-08 02:04:23,551 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3752: SUMMARY for call input_set_abs_params(magicmouse_setup_input_~input#1.base, magicmouse_setup_input_~input#1.offset, 48, 0, 255, 4, 0); srcloc: null [2025-02-08 02:04:23,551 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3306-1: SUMMARY for call hid_hw_start_#t~ret53#1 := ##fun~$Pointer$~TO~int(hid_hw_start_~hdev#1.base, hid_hw_start_~hdev#1.offset, hid_hw_start_#t~mem52#1.base, hid_hw_start_#t~mem52#1.offset); srcloc: null [2025-02-08 02:04:23,551 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L4000: havoc main_#t~nondet202#1;assume -2147483648 <= main_#t~nondet202#1 && main_#t~nondet202#1 <= 2147483647;main_~tmp___0~1#1 := main_#t~nondet202#1;havoc main_#t~nondet202#1; [2025-02-08 02:04:23,552 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3868: assume 0 == (magicmouse_probe_~report~0#1.base + magicmouse_probe_~report~0#1.offset) % 18446744073709551616; [2025-02-08 02:04:23,552 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3868: assume !(0 == (magicmouse_probe_~report~0#1.base + magicmouse_probe_~report~0#1.offset) % 18446744073709551616);call write~int#9(6, magicmouse_probe_~report~0#1.base, 1052 + magicmouse_probe_~report~0#1.offset, 4);call magicmouse_probe_#t~mem194#1.base, magicmouse_probe_#t~mem194#1.offset := read~$Pointer$#2(magicmouse_probe_~hdev#1.base, 7702 + magicmouse_probe_~hdev#1.offset, 8);assume { :begin_inline_##fun~$Pointer$~X~$Pointer$~X~int~X~int~TO~int } true;##fun~$Pointer$~X~$Pointer$~X~int~X~int~TO~int_#in~190#1.base, ##fun~$Pointer$~X~$Pointer$~X~int~X~int~TO~int_#in~190#1.offset, ##fun~$Pointer$~X~$Pointer$~X~int~X~int~TO~int_#in~191#1.base, ##fun~$Pointer$~X~$Pointer$~X~int~X~int~TO~int_#in~191#1.offset, ##fun~$Pointer$~X~$Pointer$~X~int~X~int~TO~int_#in~192#1, ##fun~$Pointer$~X~$Pointer$~X~int~X~int~TO~int_#in~193#1, ##fun~$Pointer$~X~$Pointer$~X~int~X~int~TO~int_#in~#fp#1.base, ##fun~$Pointer$~X~$Pointer$~X~int~X~int~TO~int_#in~#fp#1.offset := magicmouse_probe_~hdev#1.base, magicmouse_probe_~hdev#1.offset, magicmouse_probe_~#feature~0#1.base, magicmouse_probe_~#feature~0#1.offset, 2, 2, magicmouse_probe_#t~mem194#1.base, magicmouse_probe_#t~mem194#1.offset;havoc ##fun~$Pointer$~X~$Pointer$~X~int~X~int~TO~int_#res#1;havoc ##fun~$Pointer$~X~$Pointer$~X~int~X~int~TO~int_#~190#1.base, ##fun~$Pointer$~X~$Pointer$~X~int~X~int~TO~int_#~190#1.offset, ##fun~$Pointer$~X~$Pointer$~X~int~X~int~TO~int_#~191#1.base, ##fun~$Pointer$~X~$Pointer$~X~int~X~int~TO~int_#~191#1.offset, ##fun~$Pointer$~X~$Pointer$~X~int~X~int~TO~int_#~192#1, ##fun~$Pointer$~X~$Pointer$~X~int~X~int~TO~int_#~193#1;##fun~$Pointer$~X~$Pointer$~X~int~X~int~TO~int_#~190#1.base, ##fun~$Pointer$~X~$Pointer$~X~int~X~int~TO~int_#~190#1.offset := ##fun~$Pointer$~X~$Pointer$~X~int~X~int~TO~int_#in~190#1.base, ##fun~$Pointer$~X~$Pointer$~X~int~X~int~TO~int_#in~190#1.offset;##fun~$Pointer$~X~$Pointer$~X~int~X~int~TO~int_#~191#1.base, ##fun~$Pointer$~X~$Pointer$~X~int~X~int~TO~int_#~191#1.offset := ##fun~$Pointer$~X~$Pointer$~X~int~X~int~TO~int_#in~191#1.base, ##fun~$Pointer$~X~$Pointer$~X~int~X~int~TO~int_#in~191#1.offset;##fun~$Pointer$~X~$Pointer$~X~int~X~int~TO~int_#~192#1 := ##fun~$Pointer$~X~$Pointer$~X~int~X~int~TO~int_#in~192#1;##fun~$Pointer$~X~$Pointer$~X~int~X~int~TO~int_#~193#1 := ##fun~$Pointer$~X~$Pointer$~X~int~X~int~TO~int_#in~193#1;magicmouse_probe_#t~ret195#1 := ##fun~$Pointer$~X~$Pointer$~X~int~X~int~TO~int_#res#1;havoc ##fun~$Pointer$~X~$Pointer$~X~int~X~int~TO~int_#~190#1.base, ##fun~$Pointer$~X~$Pointer$~X~int~X~int~TO~int_#~190#1.offset, ##fun~$Pointer$~X~$Pointer$~X~int~X~int~TO~int_#~191#1.base, ##fun~$Pointer$~X~$Pointer$~X~int~X~int~TO~int_#~191#1.offset, ##fun~$Pointer$~X~$Pointer$~X~int~X~int~TO~int_#~192#1, ##fun~$Pointer$~X~$Pointer$~X~int~X~int~TO~int_#~193#1;havoc ##fun~$Pointer$~X~$Pointer$~X~int~X~int~TO~int_#in~190#1.base, ##fun~$Pointer$~X~$Pointer$~X~int~X~int~TO~int_#in~190#1.offset, ##fun~$Pointer$~X~$Pointer$~X~int~X~int~TO~int_#in~191#1.base, ##fun~$Pointer$~X~$Pointer$~X~int~X~int~TO~int_#in~191#1.offset, ##fun~$Pointer$~X~$Pointer$~X~int~X~int~TO~int_#in~192#1, ##fun~$Pointer$~X~$Pointer$~X~int~X~int~TO~int_#in~193#1, ##fun~$Pointer$~X~$Pointer$~X~int~X~int~TO~int_#in~#fp#1.base, ##fun~$Pointer$~X~$Pointer$~X~int~X~int~TO~int_#in~#fp#1.offset;assume { :end_inline_##fun~$Pointer$~X~$Pointer$~X~int~X~int~TO~int } true;assume -2147483648 <= magicmouse_probe_#t~ret195#1 && magicmouse_probe_#t~ret195#1 <= 2147483647;magicmouse_probe_~ret~2#1 := magicmouse_probe_#t~ret195#1;havoc magicmouse_probe_#t~mem194#1.base, magicmouse_probe_#t~mem194#1.offset;havoc magicmouse_probe_#t~ret195#1; [2025-02-08 02:04:23,552 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3835: assume 0 != magicmouse_probe_~ret~2#1; [2025-02-08 02:04:23,552 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3835: assume !(0 != magicmouse_probe_~ret~2#1);assume { :begin_inline_hid_hw_start } true;hid_hw_start_#in~hdev#1.base, hid_hw_start_#in~hdev#1.offset, hid_hw_start_#in~connect_mask#1 := magicmouse_probe_~hdev#1.base, magicmouse_probe_~hdev#1.offset, 45;havoc hid_hw_start_#res#1;havoc hid_hw_start_#t~mem51#1.base, hid_hw_start_#t~mem51#1.offset, hid_hw_start_#t~mem52#1.base, hid_hw_start_#t~mem52#1.offset, hid_hw_start_#t~ret53#1, hid_hw_start_#t~ret54#1, hid_hw_start_#t~mem58#1.base, hid_hw_start_#t~mem58#1.offset, hid_hw_start_#t~mem59#1.base, hid_hw_start_#t~mem59#1.offset, hid_hw_start_~hdev#1.base, hid_hw_start_~hdev#1.offset, hid_hw_start_~connect_mask#1, hid_hw_start_~ret~1#1, hid_hw_start_~tmp~3#1;hid_hw_start_~hdev#1.base, hid_hw_start_~hdev#1.offset := hid_hw_start_#in~hdev#1.base, hid_hw_start_#in~hdev#1.offset;hid_hw_start_~connect_mask#1 := hid_hw_start_#in~connect_mask#1;havoc hid_hw_start_~ret~1#1;havoc hid_hw_start_~tmp~3#1;call hid_hw_start_#t~mem51#1.base, hid_hw_start_#t~mem51#1.offset := read~$Pointer$#2(hid_hw_start_~hdev#1.base, 7330 + hid_hw_start_~hdev#1.offset, 8);call hid_hw_start_#t~mem52#1.base, hid_hw_start_#t~mem52#1.offset := read~$Pointer$#5(hid_hw_start_#t~mem51#1.base, hid_hw_start_#t~mem51#1.offset, 8); [2025-02-08 02:04:23,552 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L4149: assume 1 != ~ldv_module_refcounter~0; [2025-02-08 02:04:23,552 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L4149: assume !(1 != ~ldv_module_refcounter~0); [2025-02-08 02:04:23,552 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L4017: assume 0 == main_~ldv_s_magicmouse_driver_hid_driver~0#1;assume { :begin_inline_magicmouse_probe } true;magicmouse_probe_#in~hdev#1.base, magicmouse_probe_#in~hdev#1.offset, magicmouse_probe_#in~id#1.base, magicmouse_probe_#in~id#1.offset := main_~var_group1~0#1.base, main_~var_group1~0#1.offset, main_~var_magicmouse_probe_7_p1~0#1.base, main_~var_magicmouse_probe_7_p1~0#1.offset;havoc magicmouse_probe_#res#1;havoc magicmouse_probe_#t~ret175#1.base, magicmouse_probe_#t~ret175#1.offset, magicmouse_probe_#t~ret176#1, magicmouse_probe_#t~mem177#1, magicmouse_probe_#t~ret178#1, magicmouse_probe_#t~ret179#1, magicmouse_probe_#t~ret180#1, magicmouse_probe_#t~ret181#1, magicmouse_probe_#t~mem182#1.base, magicmouse_probe_#t~mem182#1.offset, magicmouse_probe_#t~mem183#1.base, magicmouse_probe_#t~mem183#1.offset, magicmouse_probe_#t~mem184#1, magicmouse_probe_#t~ret185#1.base, magicmouse_probe_#t~ret185#1.offset, magicmouse_probe_#t~ret186#1.base, magicmouse_probe_#t~ret186#1.offset, magicmouse_probe_#t~ret187#1.base, magicmouse_probe_#t~ret187#1.offset, magicmouse_probe_#t~ret188#1, magicmouse_probe_#t~mem194#1.base, magicmouse_probe_#t~mem194#1.offset, magicmouse_probe_#t~ret195#1, magicmouse_probe_#t~ret196#1, magicmouse_probe_~hdev#1.base, magicmouse_probe_~hdev#1.offset, magicmouse_probe_~id#1.base, magicmouse_probe_~id#1.offset, magicmouse_probe_~#feature~0#1.base, magicmouse_probe_~#feature~0#1.offset, magicmouse_probe_~msc~2#1.base, magicmouse_probe_~msc~2#1.offset, magicmouse_probe_~report~0#1.base, magicmouse_probe_~report~0#1.offset, magicmouse_probe_~ret~2#1, magicmouse_probe_~tmp~8#1.base, magicmouse_probe_~tmp~8#1.offset;magicmouse_probe_~hdev#1.base, magicmouse_probe_~hdev#1.offset := magicmouse_probe_#in~hdev#1.base, magicmouse_probe_#in~hdev#1.offset;magicmouse_probe_~id#1.base, magicmouse_probe_~id#1.offset := magicmouse_probe_#in~id#1.base, magicmouse_probe_#in~id#1.offset;call magicmouse_probe_~#feature~0#1.base, magicmouse_probe_~#feature~0#1.offset := #Ultimate.allocOnStack(2);havoc magicmouse_probe_~msc~2#1.base, magicmouse_probe_~msc~2#1.offset;havoc magicmouse_probe_~report~0#1.base, magicmouse_probe_~report~0#1.offset;havoc magicmouse_probe_~ret~2#1;havoc magicmouse_probe_~tmp~8#1.base, magicmouse_probe_~tmp~8#1.offset;call write~int#8(215, magicmouse_probe_~#feature~0#1.base, magicmouse_probe_~#feature~0#1.offset, 1);call write~int#8(1, magicmouse_probe_~#feature~0#1.base, 1 + magicmouse_probe_~#feature~0#1.offset, 1);assume { :begin_inline_kzalloc } true;kzalloc_#in~size#1, kzalloc_#in~flags#1 := 264, 208;havoc kzalloc_#res#1.base, kzalloc_#res#1.offset;havoc kzalloc_#t~bitwise13#1, kzalloc_#t~ret14#1.base, kzalloc_#t~ret14#1.offset, kzalloc_~size#1, kzalloc_~flags#1, kzalloc_~tmp~0#1.base, kzalloc_~tmp~0#1.offset;kzalloc_~size#1 := kzalloc_#in~size#1;kzalloc_~flags#1 := kzalloc_#in~flags#1;havoc kzalloc_~tmp~0#1.base, kzalloc_~tmp~0#1.offset; [2025-02-08 02:04:23,552 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L4017: assume !(0 == main_~ldv_s_magicmouse_driver_hid_driver~0#1); [2025-02-08 02:04:23,552 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3852: assume 0 != (magicmouse_probe_#t~mem182#1.base + magicmouse_probe_#t~mem182#1.offset) % 18446744073709551616;havoc magicmouse_probe_#t~mem182#1.base, magicmouse_probe_#t~mem182#1.offset;call magicmouse_probe_#t~mem183#1.base, magicmouse_probe_#t~mem183#1.offset := read~$Pointer$#9(magicmouse_probe_~msc~2#1.base, magicmouse_probe_~msc~2#1.offset, 8);assume { :begin_inline_magicmouse_setup_input } true;magicmouse_setup_input_#in~input#1.base, magicmouse_setup_input_#in~input#1.offset, magicmouse_setup_input_#in~hdev#1.base, magicmouse_setup_input_#in~hdev#1.offset := magicmouse_probe_#t~mem183#1.base, magicmouse_probe_#t~mem183#1.offset, magicmouse_probe_~hdev#1.base, magicmouse_probe_~hdev#1.offset;havoc magicmouse_setup_input_#t~mem166#1, magicmouse_setup_input_#t~mem167#1, magicmouse_setup_input_~input#1.base, magicmouse_setup_input_~input#1.offset, magicmouse_setup_input_~hdev#1.base, magicmouse_setup_input_~hdev#1.offset;magicmouse_setup_input_~input#1.base, magicmouse_setup_input_~input#1.offset := magicmouse_setup_input_#in~input#1.base, magicmouse_setup_input_#in~input#1.offset;magicmouse_setup_input_~hdev#1.base, magicmouse_setup_input_~hdev#1.offset := magicmouse_setup_input_#in~hdev#1.base, magicmouse_setup_input_#in~hdev#1.offset; [2025-02-08 02:04:23,552 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3852: assume !(0 != (magicmouse_probe_#t~mem182#1.base + magicmouse_probe_#t~mem182#1.offset) % 18446744073709551616);havoc magicmouse_probe_#t~mem182#1.base, magicmouse_probe_#t~mem182#1.offset; [2025-02-08 02:04:23,552 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3720: assume 0 != (if ~emulate_3button~0 % 256 % 4294967296 <= 2147483647 then ~emulate_3button~0 % 256 % 4294967296 else ~emulate_3button~0 % 256 % 4294967296 - 4294967296); [2025-02-08 02:04:23,552 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3720: assume !(0 != (if ~emulate_3button~0 % 256 % 4294967296 <= 2147483647 then ~emulate_3button~0 % 256 % 4294967296 else ~emulate_3button~0 % 256 % 4294967296 - 4294967296)); [2025-02-08 02:04:23,553 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3753: SUMMARY for call input_set_abs_params(magicmouse_setup_input_~input#1.base, magicmouse_setup_input_~input#1.offset, 49, 0, 255, 4, 0); srcloc: null [2025-02-08 02:04:23,553 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3770: havoc input_set_events_per_packet_~dev#1.base, input_set_events_per_packet_~dev#1.offset, input_set_events_per_packet_~n_events#1;havoc input_set_events_per_packet_#in~dev#1.base, input_set_events_per_packet_#in~dev#1.offset, input_set_events_per_packet_#in~n_events#1;assume { :end_inline_input_set_events_per_packet } true; [2025-02-08 02:04:23,553 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3770-1: assume { :begin_inline_input_set_events_per_packet } true;input_set_events_per_packet_#in~dev#1.base, input_set_events_per_packet_#in~dev#1.offset, input_set_events_per_packet_#in~n_events#1 := magicmouse_setup_input_~input#1.base, magicmouse_setup_input_~input#1.offset, 60;havoc input_set_events_per_packet_~dev#1.base, input_set_events_per_packet_~dev#1.offset, input_set_events_per_packet_~n_events#1;input_set_events_per_packet_~dev#1.base, input_set_events_per_packet_~dev#1.offset := input_set_events_per_packet_#in~dev#1.base, input_set_events_per_packet_#in~dev#1.offset;input_set_events_per_packet_~n_events#1 := input_set_events_per_packet_#in~n_events#1;call write~int#7(input_set_events_per_packet_~n_events#1, input_set_events_per_packet_~dev#1.base, 208 + input_set_events_per_packet_~dev#1.offset, 4); [2025-02-08 02:04:23,553 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3754: call magicmouse_setup_input_#t~mem167#1 := read~int#7(magicmouse_setup_input_~input#1.base, 28 + magicmouse_setup_input_~input#1.offset, 2); [2025-02-08 02:04:23,553 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3754-1: SUMMARY for call input_set_abs_params(magicmouse_setup_input_~input#1.base, magicmouse_setup_input_~input#1.offset, 52, -31, 32, 1, 0); srcloc: null [2025-02-08 02:04:23,553 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L4002: assume 0 == main_~tmp___0~1#1; [2025-02-08 02:04:23,553 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L4002: assume !(0 == main_~tmp___0~1#1); [2025-02-08 02:04:23,553 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3870: assume -2147483648 <= magicmouse_probe_#t~ret188#1 && magicmouse_probe_#t~ret188#1 <= 2147483647;havoc magicmouse_probe_#t~ret188#1;magicmouse_probe_~ret~2#1 := -12; [2025-02-08 02:04:23,553 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3325-1: hid_hw_start_#res#1 := hid_hw_start_~ret~1#1; [2025-02-08 02:04:23,553 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3837-1: SUMMARY for call magicmouse_probe_#t~ret179#1 := dev_err(magicmouse_probe_~hdev#1.base, 6258 + magicmouse_probe_~hdev#1.offset, 5, 0); srcloc: null [2025-02-08 02:04:23,553 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3292: assume -2147483648 <= hid_parse_#t~ret45#1 && hid_parse_#t~ret45#1 <= 2147483647;hid_parse_~ret~0#1 := hid_parse_#t~ret45#1;havoc hid_parse_#t~mem43#1.base, hid_parse_#t~mem43#1.offset;havoc hid_parse_#t~mem44#1.base, hid_parse_#t~mem44#1.offset;havoc hid_parse_#t~ret45#1; [2025-02-08 02:04:23,553 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3870-1: SUMMARY for call magicmouse_probe_#t~ret188#1 := dev_err(magicmouse_probe_~hdev#1.base, 6258 + magicmouse_probe_~hdev#1.offset, 7, 0); srcloc: null [2025-02-08 02:04:23,553 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3837: assume -2147483648 <= magicmouse_probe_#t~ret179#1 && magicmouse_probe_#t~ret179#1 <= 2147483647;havoc magicmouse_probe_#t~ret179#1; [2025-02-08 02:04:23,553 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3292-1: SUMMARY for call hid_parse_#t~ret45#1 := ##fun~$Pointer$~TO~int(hid_parse_~hdev#1.base, hid_parse_~hdev#1.offset, hid_parse_#t~mem44#1.base, hid_parse_#t~mem44#1.offset); srcloc: null [2025-02-08 02:04:23,553 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L4151: SUMMARY for call ldv_blast_assert(); srcloc: null [2025-02-08 02:04:23,553 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3854: havoc magicmouse_setup_input_#t~mem166#1, magicmouse_setup_input_#t~mem167#1, magicmouse_setup_input_~input#1.base, magicmouse_setup_input_~input#1.offset, magicmouse_setup_input_~hdev#1.base, magicmouse_setup_input_~hdev#1.offset;havoc magicmouse_setup_input_#in~input#1.base, magicmouse_setup_input_#in~input#1.offset, magicmouse_setup_input_#in~hdev#1.base, magicmouse_setup_input_#in~hdev#1.offset;assume { :end_inline_magicmouse_setup_input } true;havoc magicmouse_probe_#t~mem183#1.base, magicmouse_probe_#t~mem183#1.offset; [2025-02-08 02:04:23,553 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3309: assume 0 != hid_hw_start_~ret~1#1;hid_hw_start_#res#1 := hid_hw_start_~ret~1#1; [2025-02-08 02:04:23,553 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3309: assume !(0 != hid_hw_start_~ret~1#1); [2025-02-08 02:04:23,553 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3821: assume 0 == (magicmouse_probe_~msc~2#1.base + magicmouse_probe_~msc~2#1.offset) % 18446744073709551616; [2025-02-08 02:04:23,553 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3821: assume !(0 == (magicmouse_probe_~msc~2#1.base + magicmouse_probe_~msc~2#1.offset) % 18446744073709551616);call write~int#9(7, magicmouse_probe_~msc~2#1.base, 20 + magicmouse_probe_~msc~2#1.offset, 4);call magicmouse_probe_#t~mem177#1 := read~int#3(magicmouse_probe_~id#1.base, 12 + magicmouse_probe_~id#1.offset, 8);call write~int#9(magicmouse_probe_#t~mem177#1, magicmouse_probe_~msc~2#1.base, 8 + magicmouse_probe_~msc~2#1.offset, 8);havoc magicmouse_probe_#t~mem177#1;assume { :begin_inline_hid_set_drvdata } true;hid_set_drvdata_#in~hdev#1.base, hid_set_drvdata_#in~hdev#1.offset, hid_set_drvdata_#in~data#1.base, hid_set_drvdata_#in~data#1.offset := magicmouse_probe_~hdev#1.base, magicmouse_probe_~hdev#1.offset, magicmouse_probe_~msc~2#1.base, magicmouse_probe_~msc~2#1.offset;havoc hid_set_drvdata_#t~ret26#1, hid_set_drvdata_~hdev#1.base, hid_set_drvdata_~hdev#1.offset, hid_set_drvdata_~data#1.base, hid_set_drvdata_~data#1.offset;hid_set_drvdata_~hdev#1.base, hid_set_drvdata_~hdev#1.offset := hid_set_drvdata_#in~hdev#1.base, hid_set_drvdata_#in~hdev#1.offset;hid_set_drvdata_~data#1.base, hid_set_drvdata_~data#1.offset := hid_set_drvdata_#in~data#1.base, hid_set_drvdata_#in~data#1.offset;assume { :begin_inline_dev_set_drvdata } true;dev_set_drvdata_#in~arg0#1.base, dev_set_drvdata_#in~arg0#1.offset, dev_set_drvdata_#in~arg1#1.base, dev_set_drvdata_#in~arg1#1.offset := hid_set_drvdata_~hdev#1.base, 6258 + hid_set_drvdata_~hdev#1.offset, hid_set_drvdata_~data#1.base, hid_set_drvdata_~data#1.offset;havoc dev_set_drvdata_#res#1;havoc dev_set_drvdata_#t~nondet215#1, dev_set_drvdata_~arg0#1.base, dev_set_drvdata_~arg0#1.offset, dev_set_drvdata_~arg1#1.base, dev_set_drvdata_~arg1#1.offset;dev_set_drvdata_~arg0#1.base, dev_set_drvdata_~arg0#1.offset := dev_set_drvdata_#in~arg0#1.base, dev_set_drvdata_#in~arg0#1.offset;dev_set_drvdata_~arg1#1.base, dev_set_drvdata_~arg1#1.offset := dev_set_drvdata_#in~arg1#1.base, dev_set_drvdata_#in~arg1#1.offset;havoc dev_set_drvdata_#t~nondet215#1;assume -2147483648 <= dev_set_drvdata_#t~nondet215#1 && dev_set_drvdata_#t~nondet215#1 <= 2147483647;dev_set_drvdata_#res#1 := dev_set_drvdata_#t~nondet215#1;havoc dev_set_drvdata_#t~nondet215#1; [2025-02-08 02:04:23,553 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3722: SUMMARY for call __set_bit(274, magicmouse_setup_input_~input#1.base, 48 + magicmouse_setup_input_~input#1.offset); srcloc: null [2025-02-08 02:04:23,554 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L4069: assume { :begin_inline_magicmouse_exit } true;assume { :begin_inline_hid_unregister_driver } true;hid_unregister_driver_#in~arg0#1.base, hid_unregister_driver_#in~arg0#1.offset := ~#magicmouse_driver~0.base, ~#magicmouse_driver~0.offset;havoc hid_unregister_driver_~arg0#1.base, hid_unregister_driver_~arg0#1.offset;hid_unregister_driver_~arg0#1.base, hid_unregister_driver_~arg0#1.offset := hid_unregister_driver_#in~arg0#1.base, hid_unregister_driver_#in~arg0#1.offset;havoc hid_unregister_driver_~arg0#1.base, hid_unregister_driver_~arg0#1.offset;havoc hid_unregister_driver_#in~arg0#1.base, hid_unregister_driver_#in~arg0#1.offset;assume { :end_inline_hid_unregister_driver } true;assume { :end_inline_magicmouse_exit } true;assume { :begin_inline_ldv_check_final_state } true; [2025-02-08 02:04:23,554 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3805-1: magicmouse_input_mapping_#res#1 := 0; [2025-02-08 02:04:23,554 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L4185: havoc hid_connect_#t~nondet216#1;hid_hw_start_#t~ret54#1 := hid_connect_#res#1;havoc hid_connect_#t~nondet216#1, hid_connect_~arg0#1.base, hid_connect_~arg0#1.offset, hid_connect_~arg1#1;havoc hid_connect_#in~arg0#1.base, hid_connect_#in~arg0#1.offset, hid_connect_#in~arg1#1;assume { :end_inline_hid_connect } true;assume -2147483648 <= hid_hw_start_#t~ret54#1 && hid_hw_start_#t~ret54#1 <= 2147483647;hid_hw_start_~ret~1#1 := hid_hw_start_#t~ret54#1;havoc hid_hw_start_#t~ret54#1; [2025-02-08 02:04:23,554 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L4020: havoc ldv_check_return_value_~arg0#1;havoc ldv_check_return_value_#in~arg0#1;assume { :end_inline_ldv_check_return_value } true; [2025-02-08 02:04:23,554 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3756: assume 781 == magicmouse_setup_input_#t~mem167#1 % 65536 % 4294967296;havoc magicmouse_setup_input_#t~mem167#1; [2025-02-08 02:04:23,554 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3756: assume !(781 == magicmouse_setup_input_#t~mem167#1 % 65536 % 4294967296);havoc magicmouse_setup_input_#t~mem167#1; [2025-02-08 02:04:23,554 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L4037-1: SUMMARY for call main_#t~ret204#1 := magicmouse_raw_event(main_~var_group1~0#1.base, main_~var_group1~0#1.offset, main_~var_group2~0#1.base, main_~var_group2~0#1.offset, main_~var_magicmouse_raw_event_4_p2~0#1.base, main_~var_magicmouse_raw_event_4_p2~0#1.offset, main_~var_magicmouse_raw_event_4_p3~0#1); srcloc: null [2025-02-08 02:04:23,554 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L4037: assume -2147483648 <= main_#t~ret204#1 && main_#t~ret204#1 <= 2147483647;havoc main_#t~ret204#1; [2025-02-08 02:04:23,554 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3294: assume 0 == hid_parse_~ret~0#1;call hid_parse_#t~mem46#1 := read~int#2(hid_parse_~hdev#1.base, 7338 + hid_parse_~hdev#1.offset, 4); [2025-02-08 02:04:23,554 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3294: assume !(0 == hid_parse_~ret~0#1); [2025-02-08 02:04:23,554 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3740: SUMMARY for call __set_bit(272, magicmouse_setup_input_~input#1.base, 48 + magicmouse_setup_input_~input#1.offset); srcloc: null [2025-02-08 02:04:23,555 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3823-1: SUMMARY for call magicmouse_probe_#t~ret176#1 := dev_err(magicmouse_probe_~hdev#1.base, 6258 + magicmouse_probe_~hdev#1.offset, 4, 0); srcloc: null [2025-02-08 02:04:23,555 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3823: assume -2147483648 <= magicmouse_probe_#t~ret176#1 && magicmouse_probe_#t~ret176#1 <= 2147483647;havoc magicmouse_probe_#t~ret176#1;magicmouse_probe_#res#1 := -12;call ULTIMATE.dealloc(magicmouse_probe_~#feature~0#1.base, magicmouse_probe_~#feature~0#1.offset);havoc magicmouse_probe_~#feature~0#1.base, magicmouse_probe_~#feature~0#1.offset; [2025-02-08 02:04:23,555 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L4170: havoc __kmalloc_#t~ret212#1.base, __kmalloc_#t~ret212#1.offset;kmalloc_#t~ret12#1.base, kmalloc_#t~ret12#1.offset := __kmalloc_#res#1.base, __kmalloc_#res#1.offset;havoc __kmalloc_#t~ret212#1.base, __kmalloc_#t~ret212#1.offset, __kmalloc_~arg0#1, __kmalloc_~arg1#1;havoc __kmalloc_#in~arg0#1, __kmalloc_#in~arg1#1;assume { :end_inline___kmalloc } true;kmalloc_~tmp___2~0#1.base, kmalloc_~tmp___2~0#1.offset := kmalloc_#t~ret12#1.base, kmalloc_#t~ret12#1.offset;havoc kmalloc_#t~ret12#1.base, kmalloc_#t~ret12#1.offset;kmalloc_#res#1.base, kmalloc_#res#1.offset := kmalloc_~tmp___2~0#1.base, kmalloc_~tmp___2~0#1.offset; [2025-02-08 02:04:23,555 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L4170-2: __kmalloc_#res#1.base, __kmalloc_#res#1.offset := __kmalloc_#t~ret212#1.base, __kmalloc_#t~ret212#1.offset;havoc __kmalloc_#t~ret212#1.base, __kmalloc_#t~ret212#1.offset; [2025-02-08 02:04:23,555 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L4170-3: SUMMARY for call __kmalloc_#t~ret212#1.base, __kmalloc_#t~ret212#1.offset := ldv_malloc(__kmalloc_~arg0#1); srcloc: null [2025-02-08 02:04:23,555 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L4005: assume 1 == main_~tmp___0~1#1; [2025-02-08 02:04:23,555 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L4005: assume !(1 == main_~tmp___0~1#1); [2025-02-08 02:04:23,555 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3774: assume 0 != (if ~report_undeciphered~0 % 256 % 4294967296 <= 2147483647 then ~report_undeciphered~0 % 256 % 4294967296 else ~report_undeciphered~0 % 256 % 4294967296 - 4294967296); [2025-02-08 02:04:23,555 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3774: assume !(0 != (if ~report_undeciphered~0 % 256 % 4294967296 <= 2147483647 then ~report_undeciphered~0 % 256 % 4294967296 else ~report_undeciphered~0 % 256 % 4294967296 - 4294967296)); [2025-02-08 02:04:23,555 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3295-1: [2025-02-08 02:04:23,555 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3295: call write~int#2(hid_parse_#t~bitwise47#1, hid_parse_~hdev#1.base, 7338 + hid_parse_~hdev#1.offset, 4);havoc hid_parse_#t~mem46#1;havoc hid_parse_#t~bitwise47#1; [2025-02-08 02:04:23,555 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3295-3: assume false;hid_parse_#t~bitwise47#1 := hid_parse_#t~mem46#1; [2025-02-08 02:04:23,555 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3295-3: assume !false; [2025-02-08 02:04:23,555 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3741: SUMMARY for call __set_bit(325, magicmouse_setup_input_~input#1.base, 48 + magicmouse_setup_input_~input#1.offset); srcloc: null [2025-02-08 02:04:23,555 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3295-2: havoc hid_parse_#t~bitwise47#1;assume (hid_parse_#t~bitwise47#1 % 4294967296 >= hid_parse_#t~mem46#1 % 4294967296 && hid_parse_#t~bitwise47#1 % 4294967296 >= 2) && hid_parse_#t~bitwise47#1 % 4294967296 <= 2 + hid_parse_#t~mem46#1 % 4294967296; [2025-02-08 02:04:23,555 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3295-4: assume 0 == hid_parse_#t~mem46#1 % 4294967296 || 2 == hid_parse_#t~mem46#1 % 4294967296;hid_parse_#t~bitwise47#1 := 2; [2025-02-08 02:04:23,555 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3295-4: assume !(0 == hid_parse_#t~mem46#1 % 4294967296 || 2 == hid_parse_#t~mem46#1 % 4294967296); [2025-02-08 02:04:23,555 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L4022: assume 0 != main_~res_magicmouse_probe_7~0#1; [2025-02-08 02:04:23,555 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L4022: assume !(0 != main_~res_magicmouse_probe_7~0#1);main_~ldv_s_magicmouse_driver_hid_driver~0#1 := 0; [2025-02-08 02:04:23,555 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3312: assume 0 == hid_hw_start_~connect_mask#1 % 4294967296;hid_hw_start_#res#1 := hid_hw_start_~ret~1#1; [2025-02-08 02:04:23,555 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3312: assume !(0 == hid_hw_start_~connect_mask#1 % 4294967296);assume { :begin_inline_hid_connect } true;hid_connect_#in~arg0#1.base, hid_connect_#in~arg0#1.offset, hid_connect_#in~arg1#1 := hid_hw_start_~hdev#1.base, hid_hw_start_~hdev#1.offset, hid_hw_start_~connect_mask#1;havoc hid_connect_#res#1;havoc hid_connect_#t~nondet216#1, hid_connect_~arg0#1.base, hid_connect_~arg0#1.offset, hid_connect_~arg1#1;hid_connect_~arg0#1.base, hid_connect_~arg0#1.offset := hid_connect_#in~arg0#1.base, hid_connect_#in~arg0#1.offset;hid_connect_~arg1#1 := hid_connect_#in~arg1#1;havoc hid_connect_#t~nondet216#1;assume -2147483648 <= hid_connect_#t~nondet216#1 && hid_connect_#t~nondet216#1 <= 2147483647;hid_connect_#res#1 := hid_connect_#t~nondet216#1;havoc hid_connect_#t~nondet216#1; [2025-02-08 02:04:23,555 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3791-1: SUMMARY for call magicmouse_input_mapping_#t~ret168#1.base, magicmouse_input_mapping_#t~ret168#1.offset := hid_get_drvdata(magicmouse_input_mapping_~hdev#1.base, magicmouse_input_mapping_~hdev#1.offset); srcloc: null [2025-02-08 02:04:23,555 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3758: SUMMARY for call input_set_abs_params(magicmouse_setup_input_~input#1.base, magicmouse_setup_input_~input#1.offset, 53, -1100, 1358, 4, 0); srcloc: null [2025-02-08 02:04:23,555 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3791: magicmouse_input_mapping_~tmp~7#1.base, magicmouse_input_mapping_~tmp~7#1.offset := magicmouse_input_mapping_#t~ret168#1.base, magicmouse_input_mapping_#t~ret168#1.offset;havoc magicmouse_input_mapping_#t~ret168#1.base, magicmouse_input_mapping_#t~ret168#1.offset;magicmouse_input_mapping_~msc~1#1.base, magicmouse_input_mapping_~msc~1#1.offset := magicmouse_input_mapping_~tmp~7#1.base, magicmouse_input_mapping_~tmp~7#1.offset;call magicmouse_input_mapping_#t~mem169#1.base, magicmouse_input_mapping_#t~mem169#1.offset := read~$Pointer$#9(magicmouse_input_mapping_~msc~1#1.base, magicmouse_input_mapping_~msc~1#1.offset, 8); [2025-02-08 02:04:23,555 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3742: SUMMARY for call __set_bit(333, magicmouse_setup_input_~input#1.base, 48 + magicmouse_setup_input_~input#1.offset); srcloc: null [2025-02-08 02:04:23,555 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3858: assume 781 == magicmouse_probe_#t~mem184#1 % 4294967296;havoc magicmouse_probe_#t~mem184#1; [2025-02-08 02:04:23,555 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3858: assume !(781 == magicmouse_probe_#t~mem184#1 % 4294967296);havoc magicmouse_probe_#t~mem184#1; [2025-02-08 02:04:23,555 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3891: SUMMARY for call hid_hw_stop(magicmouse_probe_~hdev#1.base, magicmouse_probe_~hdev#1.offset); srcloc: null [2025-02-08 02:04:23,555 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3858-1: call magicmouse_probe_#t~mem184#1 := read~int#3(magicmouse_probe_~id#1.base, 8 + magicmouse_probe_~id#1.offset, 4); [2025-02-08 02:04:23,555 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3759: SUMMARY for call input_set_abs_params(magicmouse_setup_input_~input#1.base, magicmouse_setup_input_~input#1.offset, 54, -1589, 2047, 4, 0); srcloc: null [2025-02-08 02:04:23,556 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L4073: assume { :end_inline_ldv_check_final_state } true;main_#res#1 := 0;#t~ret221#1 := main_#res#1;havoc main_#t~ret201#1, main_#t~nondet202#1, main_#t~ret203#1, main_#t~ret204#1, main_#t~ret205#1, main_#t~nondet206#1, main_~var_group1~0#1.base, main_~var_group1~0#1.offset, main_~var_magicmouse_probe_7_p1~0#1.base, main_~var_magicmouse_probe_7_p1~0#1.offset, main_~res_magicmouse_probe_7~0#1, main_~var_group2~0#1.base, main_~var_group2~0#1.offset, main_~var_magicmouse_raw_event_4_p2~0#1.base, main_~var_magicmouse_raw_event_4_p2~0#1.offset, main_~var_magicmouse_raw_event_4_p3~0#1, main_~var_group3~0#1.base, main_~var_group3~0#1.offset, main_~var_magicmouse_input_mapping_6_p2~0#1.base, main_~var_magicmouse_input_mapping_6_p2~0#1.offset, main_~var_magicmouse_input_mapping_6_p3~0#1.base, main_~var_magicmouse_input_mapping_6_p3~0#1.offset, main_~var_magicmouse_input_mapping_6_p4~0#1.base, main_~var_magicmouse_input_mapping_6_p4~0#1.offset, main_~var_magicmouse_input_mapping_6_p5~0#1.base, main_~var_magicmouse_input_mapping_6_p5~0#1.offset, main_~ldv_s_magicmouse_driver_hid_driver~0#1, main_~tmp~10#1, main_~tmp___0~1#1, main_~tmp___1~1#1;assume { :end_inline_main } true; [2025-02-08 02:04:23,556 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3776: SUMMARY for call __set_bit(4, magicmouse_setup_input_~input#1.base, 40 + magicmouse_setup_input_~input#1.offset); srcloc: null [2025-02-08 02:04:23,556 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3809: call ULTIMATE.dealloc(magicmouse_probe_~#feature~0#1.base, magicmouse_probe_~#feature~0#1.offset);havoc magicmouse_probe_~#feature~0#1.base, magicmouse_probe_~#feature~0#1.offset;main_#t~ret203#1 := magicmouse_probe_#res#1;havoc magicmouse_probe_#t~ret175#1.base, magicmouse_probe_#t~ret175#1.offset, magicmouse_probe_#t~ret176#1, magicmouse_probe_#t~mem177#1, magicmouse_probe_#t~ret178#1, magicmouse_probe_#t~ret179#1, magicmouse_probe_#t~ret180#1, magicmouse_probe_#t~ret181#1, magicmouse_probe_#t~mem182#1.base, magicmouse_probe_#t~mem182#1.offset, magicmouse_probe_#t~mem183#1.base, magicmouse_probe_#t~mem183#1.offset, magicmouse_probe_#t~mem184#1, magicmouse_probe_#t~ret185#1.base, magicmouse_probe_#t~ret185#1.offset, magicmouse_probe_#t~ret186#1.base, magicmouse_probe_#t~ret186#1.offset, magicmouse_probe_#t~ret187#1.base, magicmouse_probe_#t~ret187#1.offset, magicmouse_probe_#t~ret188#1, magicmouse_probe_#t~mem194#1.base, magicmouse_probe_#t~mem194#1.offset, magicmouse_probe_#t~ret195#1, magicmouse_probe_#t~ret196#1, magicmouse_probe_~hdev#1.base, magicmouse_probe_~hdev#1.offset, magicmouse_probe_~id#1.base, magicmouse_probe_~id#1.offset, magicmouse_probe_~#feature~0#1.base, magicmouse_probe_~#feature~0#1.offset, magicmouse_probe_~msc~2#1.base, magicmouse_probe_~msc~2#1.offset, magicmouse_probe_~report~0#1.base, magicmouse_probe_~report~0#1.offset, magicmouse_probe_~ret~2#1, magicmouse_probe_~tmp~8#1.base, magicmouse_probe_~tmp~8#1.offset;havoc magicmouse_probe_#in~hdev#1.base, magicmouse_probe_#in~hdev#1.offset, magicmouse_probe_#in~id#1.base, magicmouse_probe_#in~id#1.offset;assume { :end_inline_magicmouse_probe } true;assume -2147483648 <= main_#t~ret203#1 && main_#t~ret203#1 <= 2147483647;main_~res_magicmouse_probe_7~0#1 := main_#t~ret203#1;havoc main_#t~ret203#1;assume { :begin_inline_ldv_check_return_value } true;ldv_check_return_value_#in~arg0#1 := main_~res_magicmouse_probe_7~0#1;havoc ldv_check_return_value_~arg0#1;ldv_check_return_value_~arg0#1 := ldv_check_return_value_#in~arg0#1; [2025-02-08 02:04:23,556 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3743: SUMMARY for call __set_bit(334, magicmouse_setup_input_~input#1.base, 48 + magicmouse_setup_input_~input#1.offset); srcloc: null [2025-02-08 02:04:23,556 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3727: SUMMARY for call __set_bit(2, magicmouse_setup_input_~input#1.base, 40 + magicmouse_setup_input_~input#1.offset); srcloc: null [2025-02-08 02:04:23,556 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L4008: assume 2 == main_~tmp___0~1#1; [2025-02-08 02:04:23,557 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L4008: assume !(2 == main_~tmp___0~1#1); [2025-02-08 02:04:23,557 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3843: magicmouse_probe_#t~ret180#1 := hid_hw_start_#res#1;havoc hid_hw_start_#t~mem51#1.base, hid_hw_start_#t~mem51#1.offset, hid_hw_start_#t~mem52#1.base, hid_hw_start_#t~mem52#1.offset, hid_hw_start_#t~ret53#1, hid_hw_start_#t~ret54#1, hid_hw_start_#t~mem58#1.base, hid_hw_start_#t~mem58#1.offset, hid_hw_start_#t~mem59#1.base, hid_hw_start_#t~mem59#1.offset, hid_hw_start_~hdev#1.base, hid_hw_start_~hdev#1.offset, hid_hw_start_~connect_mask#1, hid_hw_start_~ret~1#1, hid_hw_start_~tmp~3#1;havoc hid_hw_start_#in~hdev#1.base, hid_hw_start_#in~hdev#1.offset, hid_hw_start_#in~connect_mask#1;assume { :end_inline_hid_hw_start } true;assume -2147483648 <= magicmouse_probe_#t~ret180#1 && magicmouse_probe_#t~ret180#1 <= 2147483647;magicmouse_probe_~ret~2#1 := magicmouse_probe_#t~ret180#1;havoc magicmouse_probe_#t~ret180#1; [2025-02-08 02:04:23,557 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3744: SUMMARY for call __set_bit(335, magicmouse_setup_input_~input#1.base, 48 + magicmouse_setup_input_~input#1.offset); srcloc: null [2025-02-08 02:04:23,557 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3777: SUMMARY for call __set_bit(3, magicmouse_setup_input_~input#1.base, 160 + magicmouse_setup_input_~input#1.offset); srcloc: null [2025-02-08 02:04:23,557 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3298-1: hid_parse_#res#1 := hid_parse_~ret~0#1; [2025-02-08 02:04:23,557 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint ULTIMATE.startFINAL: assume true; [2025-02-08 02:04:23,557 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3860: magicmouse_probe_~report~0#1.base, magicmouse_probe_~report~0#1.offset := magicmouse_probe_#t~ret185#1.base, magicmouse_probe_#t~ret185#1.offset;havoc magicmouse_probe_#t~ret185#1.base, magicmouse_probe_#t~ret185#1.offset; [2025-02-08 02:04:23,557 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3794: assume 0 == (magicmouse_input_mapping_#t~mem169#1.base + magicmouse_input_mapping_#t~mem169#1.offset) % 18446744073709551616;havoc magicmouse_input_mapping_#t~mem169#1.base, magicmouse_input_mapping_#t~mem169#1.offset;call magicmouse_input_mapping_#t~mem170#1.base, magicmouse_input_mapping_#t~mem170#1.offset := read~$Pointer$#1(magicmouse_input_mapping_~hi#1.base, 24 + magicmouse_input_mapping_~hi#1.offset, 8);call write~$Pointer$#9(magicmouse_input_mapping_#t~mem170#1.base, magicmouse_input_mapping_#t~mem170#1.offset, magicmouse_input_mapping_~msc~1#1.base, magicmouse_input_mapping_~msc~1#1.offset, 8);havoc magicmouse_input_mapping_#t~mem170#1.base, magicmouse_input_mapping_#t~mem170#1.offset; [2025-02-08 02:04:23,557 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3794: assume !(0 == (magicmouse_input_mapping_#t~mem169#1.base + magicmouse_input_mapping_#t~mem169#1.offset) % 18446744073709551616);havoc magicmouse_input_mapping_#t~mem169#1.base, magicmouse_input_mapping_#t~mem169#1.offset; [2025-02-08 02:04:23,557 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3860-1: SUMMARY for call magicmouse_probe_#t~ret185#1.base, magicmouse_probe_#t~ret185#1.offset := hid_register_report(magicmouse_probe_~hdev#1.base, magicmouse_probe_~hdev#1.offset, 0, 41); srcloc: null [2025-02-08 02:04:23,557 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3728: SUMMARY for call __set_bit(0, magicmouse_setup_input_~input#1.base, 144 + magicmouse_setup_input_~input#1.offset); srcloc: null [2025-02-08 02:04:23,557 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3745: SUMMARY for call __set_bit(330, magicmouse_setup_input_~input#1.base, 48 + magicmouse_setup_input_~input#1.offset); srcloc: null [2025-02-08 02:04:23,557 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3729: SUMMARY for call __set_bit(1, magicmouse_setup_input_~input#1.base, 144 + magicmouse_setup_input_~input#1.offset); srcloc: null [2025-02-08 02:04:23,557 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L4043-1: assume { :begin_inline_magicmouse_input_mapping } true;magicmouse_input_mapping_#in~hdev#1.base, magicmouse_input_mapping_#in~hdev#1.offset, magicmouse_input_mapping_#in~hi#1.base, magicmouse_input_mapping_#in~hi#1.offset, magicmouse_input_mapping_#in~field#1.base, magicmouse_input_mapping_#in~field#1.offset, magicmouse_input_mapping_#in~usage#1.base, magicmouse_input_mapping_#in~usage#1.offset, magicmouse_input_mapping_#in~bit#1.base, magicmouse_input_mapping_#in~bit#1.offset, magicmouse_input_mapping_#in~max#1.base, magicmouse_input_mapping_#in~max#1.offset := main_~var_group1~0#1.base, main_~var_group1~0#1.offset, main_~var_group3~0#1.base, main_~var_group3~0#1.offset, main_~var_magicmouse_input_mapping_6_p2~0#1.base, main_~var_magicmouse_input_mapping_6_p2~0#1.offset, main_~var_magicmouse_input_mapping_6_p3~0#1.base, main_~var_magicmouse_input_mapping_6_p3~0#1.offset, main_~var_magicmouse_input_mapping_6_p4~0#1.base, main_~var_magicmouse_input_mapping_6_p4~0#1.offset, main_~var_magicmouse_input_mapping_6_p5~0#1.base, main_~var_magicmouse_input_mapping_6_p5~0#1.offset;havoc magicmouse_input_mapping_#res#1;havoc magicmouse_input_mapping_#t~ret168#1.base, magicmouse_input_mapping_#t~ret168#1.offset, magicmouse_input_mapping_#t~mem169#1.base, magicmouse_input_mapping_#t~mem169#1.offset, magicmouse_input_mapping_#t~mem170#1.base, magicmouse_input_mapping_#t~mem170#1.offset, magicmouse_input_mapping_#t~mem171#1.base, magicmouse_input_mapping_#t~mem171#1.offset, magicmouse_input_mapping_#t~mem172#1, magicmouse_input_mapping_#t~mem173#1, magicmouse_input_mapping_#t~bitwise174#1, magicmouse_input_mapping_~hdev#1.base, magicmouse_input_mapping_~hdev#1.offset, magicmouse_input_mapping_~hi#1.base, magicmouse_input_mapping_~hi#1.offset, magicmouse_input_mapping_~field#1.base, magicmouse_input_mapping_~field#1.offset, magicmouse_input_mapping_~usage#1.base, magicmouse_input_mapping_~usage#1.offset, magicmouse_input_mapping_~bit#1.base, magicmouse_input_mapping_~bit#1.offset, magicmouse_input_mapping_~max#1.base, magicmouse_input_mapping_~max#1.offset, magicmouse_input_mapping_~msc~1#1.base, magicmouse_input_mapping_~msc~1#1.offset, magicmouse_input_mapping_~tmp~7#1.base, magicmouse_input_mapping_~tmp~7#1.offset;magicmouse_input_mapping_~hdev#1.base, magicmouse_input_mapping_~hdev#1.offset := magicmouse_input_mapping_#in~hdev#1.base, magicmouse_input_mapping_#in~hdev#1.offset;magicmouse_input_mapping_~hi#1.base, magicmouse_input_mapping_~hi#1.offset := magicmouse_input_mapping_#in~hi#1.base, magicmouse_input_mapping_#in~hi#1.offset;magicmouse_input_mapping_~field#1.base, magicmouse_input_mapping_~field#1.offset := magicmouse_input_mapping_#in~field#1.base, magicmouse_input_mapping_#in~field#1.offset;magicmouse_input_mapping_~usage#1.base, magicmouse_input_mapping_~usage#1.offset := magicmouse_input_mapping_#in~usage#1.base, magicmouse_input_mapping_#in~usage#1.offset;magicmouse_input_mapping_~bit#1.base, magicmouse_input_mapping_~bit#1.offset := magicmouse_input_mapping_#in~bit#1.base, magicmouse_input_mapping_#in~bit#1.offset;magicmouse_input_mapping_~max#1.base, magicmouse_input_mapping_~max#1.offset := magicmouse_input_mapping_#in~max#1.base, magicmouse_input_mapping_#in~max#1.offset;havoc magicmouse_input_mapping_~msc~1#1.base, magicmouse_input_mapping_~msc~1#1.offset;havoc magicmouse_input_mapping_~tmp~7#1.base, magicmouse_input_mapping_~tmp~7#1.offset; [2025-02-08 02:04:23,557 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L4043: main_#t~ret205#1 := magicmouse_input_mapping_#res#1;havoc magicmouse_input_mapping_#t~ret168#1.base, magicmouse_input_mapping_#t~ret168#1.offset, magicmouse_input_mapping_#t~mem169#1.base, magicmouse_input_mapping_#t~mem169#1.offset, magicmouse_input_mapping_#t~mem170#1.base, magicmouse_input_mapping_#t~mem170#1.offset, magicmouse_input_mapping_#t~mem171#1.base, magicmouse_input_mapping_#t~mem171#1.offset, magicmouse_input_mapping_#t~mem172#1, magicmouse_input_mapping_#t~mem173#1, magicmouse_input_mapping_#t~bitwise174#1, magicmouse_input_mapping_~hdev#1.base, magicmouse_input_mapping_~hdev#1.offset, magicmouse_input_mapping_~hi#1.base, magicmouse_input_mapping_~hi#1.offset, magicmouse_input_mapping_~field#1.base, magicmouse_input_mapping_~field#1.offset, magicmouse_input_mapping_~usage#1.base, magicmouse_input_mapping_~usage#1.offset, magicmouse_input_mapping_~bit#1.base, magicmouse_input_mapping_~bit#1.offset, magicmouse_input_mapping_~max#1.base, magicmouse_input_mapping_~max#1.offset, magicmouse_input_mapping_~msc~1#1.base, magicmouse_input_mapping_~msc~1#1.offset, magicmouse_input_mapping_~tmp~7#1.base, magicmouse_input_mapping_~tmp~7#1.offset;havoc magicmouse_input_mapping_#in~hdev#1.base, magicmouse_input_mapping_#in~hdev#1.offset, magicmouse_input_mapping_#in~hi#1.base, magicmouse_input_mapping_#in~hi#1.offset, magicmouse_input_mapping_#in~field#1.base, magicmouse_input_mapping_#in~field#1.offset, magicmouse_input_mapping_#in~usage#1.base, magicmouse_input_mapping_#in~usage#1.offset, magicmouse_input_mapping_#in~bit#1.base, magicmouse_input_mapping_#in~bit#1.offset, magicmouse_input_mapping_#in~max#1.base, magicmouse_input_mapping_#in~max#1.offset;assume { :end_inline_magicmouse_input_mapping } true;assume -2147483648 <= main_#t~ret205#1 && main_#t~ret205#1 <= 2147483647;havoc main_#t~ret205#1; [2025-02-08 02:04:23,558 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3845: assume 0 != magicmouse_probe_~ret~2#1; [2025-02-08 02:04:23,558 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3845: assume !(0 != magicmouse_probe_~ret~2#1);call magicmouse_probe_#t~mem182#1.base, magicmouse_probe_#t~mem182#1.offset := read~$Pointer$#9(magicmouse_probe_~msc~2#1.base, magicmouse_probe_~msc~2#1.offset, 8); [2025-02-08 02:04:23,558 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3713-1: SUMMARY for call __set_bit(1, magicmouse_setup_input_~input#1.base, 40 + magicmouse_setup_input_~input#1.offset); srcloc: null [2025-02-08 02:04:23,558 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3713: call magicmouse_setup_input_#t~mem166#1 := read~int#7(magicmouse_setup_input_~input#1.base, 28 + magicmouse_setup_input_~input#1.offset, 2); [2025-02-08 02:04:23,558 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3895-1: SUMMARY for call kfree(magicmouse_probe_~msc~2#1.base, magicmouse_probe_~msc~2#1.offset); srcloc: null [2025-02-08 02:04:23,558 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3895: magicmouse_probe_#res#1 := magicmouse_probe_~ret~2#1;call ULTIMATE.dealloc(magicmouse_probe_~#feature~0#1.base, magicmouse_probe_~#feature~0#1.offset);havoc magicmouse_probe_~#feature~0#1.base, magicmouse_probe_~#feature~0#1.offset; [2025-02-08 02:04:23,558 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3763: SUMMARY for call input_set_abs_params(magicmouse_setup_input_~input#1.base, magicmouse_setup_input_~input#1.offset, 0, -2909, 3167, 4, 0); srcloc: null [2025-02-08 02:04:23,558 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L4011: assume 3 == main_~tmp___0~1#1; [2025-02-08 02:04:23,558 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L4011: assume !(3 == main_~tmp___0~1#1); [2025-02-08 02:04:23,558 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L4160: havoc __hid_register_driver_#t~nondet208#1; [2025-02-08 02:04:23,558 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3764: SUMMARY for call input_set_abs_params(magicmouse_setup_input_~input#1.base, magicmouse_setup_input_~input#1.offset, 1, -2456, 2565, 4, 0); srcloc: null [2025-02-08 02:04:23,558 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3731: assume 0 != (if ~emulate_scroll_wheel~0 % 256 % 4294967296 <= 2147483647 then ~emulate_scroll_wheel~0 % 256 % 4294967296 else ~emulate_scroll_wheel~0 % 256 % 4294967296 - 4294967296); [2025-02-08 02:04:23,558 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3731: assume !(0 != (if ~emulate_scroll_wheel~0 % 256 % 4294967296 <= 2147483647 then ~emulate_scroll_wheel~0 % 256 % 4294967296 else ~emulate_scroll_wheel~0 % 256 % 4294967296 - 4294967296)); [2025-02-08 02:04:23,558 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3880: assume 2 != magicmouse_probe_~ret~2#1; [2025-02-08 02:04:23,558 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3880: assume !(2 != magicmouse_probe_~ret~2#1);magicmouse_probe_#res#1 := 0;call ULTIMATE.dealloc(magicmouse_probe_~#feature~0#1.base, magicmouse_probe_~#feature~0#1.offset);havoc magicmouse_probe_~#feature~0#1.base, magicmouse_probe_~#feature~0#1.offset; [2025-02-08 02:04:23,558 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3847-1: SUMMARY for call magicmouse_probe_#t~ret181#1 := dev_err(magicmouse_probe_~hdev#1.base, 6258 + magicmouse_probe_~hdev#1.offset, 6, 0); srcloc: null [2025-02-08 02:04:23,558 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3847: assume -2147483648 <= magicmouse_probe_#t~ret181#1 && magicmouse_probe_#t~ret181#1 <= 2147483647;havoc magicmouse_probe_#t~ret181#1; [2025-02-08 02:04:23,558 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3748: assume 0 != (if ~report_touches~0 % 256 % 4294967296 <= 2147483647 then ~report_touches~0 % 256 % 4294967296 else ~report_touches~0 % 256 % 4294967296 - 4294967296); [2025-02-08 02:04:23,558 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3748: assume !(0 != (if ~report_touches~0 % 256 % 4294967296 <= 2147483647 then ~report_touches~0 % 256 % 4294967296 else ~report_touches~0 % 256 % 4294967296 - 4294967296)); [2025-02-08 02:04:23,558 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3715: assume 781 == magicmouse_setup_input_#t~mem166#1 % 65536 % 4294967296;havoc magicmouse_setup_input_#t~mem166#1; [2025-02-08 02:04:23,558 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3715: assume !(781 == magicmouse_setup_input_#t~mem166#1 % 65536 % 4294967296);havoc magicmouse_setup_input_#t~mem166#1; [2025-02-08 02:04:23,558 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3864: magicmouse_probe_~report~0#1.base, magicmouse_probe_~report~0#1.offset := magicmouse_probe_#t~ret186#1.base, magicmouse_probe_#t~ret186#1.offset;havoc magicmouse_probe_#t~ret186#1.base, magicmouse_probe_#t~ret186#1.offset; [2025-02-08 02:04:23,559 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3798: assume 782 == magicmouse_input_mapping_#t~mem172#1 % 65536 % 4294967296;havoc magicmouse_input_mapping_#t~mem171#1.base, magicmouse_input_mapping_#t~mem171#1.offset;havoc magicmouse_input_mapping_#t~mem172#1;call magicmouse_input_mapping_#t~mem173#1 := read~int#11(magicmouse_input_mapping_~field#1.base, 24 + magicmouse_input_mapping_~field#1.offset, 4); [2025-02-08 02:04:23,559 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3798: assume !(782 == magicmouse_input_mapping_#t~mem172#1 % 65536 % 4294967296);havoc magicmouse_input_mapping_#t~mem171#1.base, magicmouse_input_mapping_#t~mem171#1.offset;havoc magicmouse_input_mapping_#t~mem172#1; [2025-02-08 02:04:23,559 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3864-1: SUMMARY for call magicmouse_probe_#t~ret186#1.base, magicmouse_probe_#t~ret186#1.offset := hid_register_report(magicmouse_probe_~hdev#1.base, magicmouse_probe_~hdev#1.offset, 0, 40); srcloc: null [2025-02-08 02:04:23,559 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3319: assume 0 != hid_hw_start_~ret~1#1;call hid_hw_start_#t~mem58#1.base, hid_hw_start_#t~mem58#1.offset := read~$Pointer$#2(hid_hw_start_~hdev#1.base, 7330 + hid_hw_start_~hdev#1.offset, 8);call hid_hw_start_#t~mem59#1.base, hid_hw_start_#t~mem59#1.offset := read~$Pointer$#5(hid_hw_start_#t~mem58#1.base, 8 + hid_hw_start_#t~mem58#1.offset, 8); [2025-02-08 02:04:23,559 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3319: assume !(0 != hid_hw_start_~ret~1#1); [2025-02-08 02:04:23,559 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3831: havoc hid_set_drvdata_#t~ret26#1, hid_set_drvdata_~hdev#1.base, hid_set_drvdata_~hdev#1.offset, hid_set_drvdata_~data#1.base, hid_set_drvdata_~data#1.offset;havoc hid_set_drvdata_#in~hdev#1.base, hid_set_drvdata_#in~hdev#1.offset, hid_set_drvdata_#in~data#1.base, hid_set_drvdata_#in~data#1.offset;assume { :end_inline_hid_set_drvdata } true;call write~int#9(-1, magicmouse_probe_~msc~2#1.base, 240 + magicmouse_probe_~msc~2#1.offset, 4);assume { :begin_inline_hid_parse } true;hid_parse_#in~hdev#1.base, hid_parse_#in~hdev#1.offset := magicmouse_probe_~hdev#1.base, magicmouse_probe_~hdev#1.offset;havoc hid_parse_#res#1;havoc hid_parse_#t~mem38#1, hid_parse_#t~bitwise39#1, hid_parse_#t~mem43#1.base, hid_parse_#t~mem43#1.offset, hid_parse_#t~mem44#1.base, hid_parse_#t~mem44#1.offset, hid_parse_#t~ret45#1, hid_parse_#t~mem46#1, hid_parse_#t~bitwise47#1, hid_parse_~hdev#1.base, hid_parse_~hdev#1.offset, hid_parse_~ret~0#1;hid_parse_~hdev#1.base, hid_parse_~hdev#1.offset := hid_parse_#in~hdev#1.base, hid_parse_#in~hdev#1.offset;havoc hid_parse_~ret~0#1;call hid_parse_#t~mem38#1 := read~int#2(hid_parse_~hdev#1.base, 7338 + hid_parse_~hdev#1.offset, 4); [2025-02-08 02:04:23,559 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3798-1: call magicmouse_input_mapping_#t~mem171#1.base, magicmouse_input_mapping_#t~mem171#1.offset := read~$Pointer$#1(magicmouse_input_mapping_~hi#1.base, 24 + magicmouse_input_mapping_~hi#1.offset, 8);call magicmouse_input_mapping_#t~mem172#1 := read~int#7(magicmouse_input_mapping_#t~mem171#1.base, 28 + magicmouse_input_mapping_#t~mem171#1.offset, 2); [2025-02-08 02:04:23,559 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3765: SUMMARY for call input_set_abs_params(magicmouse_setup_input_~input#1.base, magicmouse_setup_input_~input#1.offset, 53, -2909, 3167, 4, 0); srcloc: null [2025-02-08 02:04:23,559 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3865-1: SUMMARY for call magicmouse_probe_#t~ret187#1.base, magicmouse_probe_#t~ret187#1.offset := hid_register_report(magicmouse_probe_~hdev#1.base, magicmouse_probe_~hdev#1.offset, 0, 247); srcloc: null [2025-02-08 02:04:23,559 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3865: magicmouse_probe_~report~0#1.base, magicmouse_probe_~report~0#1.offset := magicmouse_probe_#t~ret187#1.base, magicmouse_probe_#t~ret187#1.offset;havoc magicmouse_probe_#t~ret187#1.base, magicmouse_probe_#t~ret187#1.offset; [2025-02-08 02:04:23,559 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3799-1: [2025-02-08 02:04:23,559 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3766: SUMMARY for call input_set_abs_params(magicmouse_setup_input_~input#1.base, magicmouse_setup_input_~input#1.offset, 54, -2456, 2565, 4, 0); srcloc: null [2025-02-08 02:04:23,559 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3287-1: [2025-02-08 02:04:23,559 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3799: assume 0 != magicmouse_input_mapping_#t~bitwise174#1 % 4294967296;havoc magicmouse_input_mapping_#t~mem173#1;havoc magicmouse_input_mapping_#t~bitwise174#1;magicmouse_input_mapping_#res#1 := -1; [2025-02-08 02:04:23,559 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3799: assume !(0 != magicmouse_input_mapping_#t~bitwise174#1 % 4294967296);havoc magicmouse_input_mapping_#t~mem173#1;havoc magicmouse_input_mapping_#t~bitwise174#1; [2025-02-08 02:04:23,559 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3287: assume 0 != hid_parse_#t~bitwise39#1 % 4294967296;havoc hid_parse_#t~mem38#1;havoc hid_parse_#t~bitwise39#1;hid_parse_#res#1 := 0; [2025-02-08 02:04:23,559 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3287: assume !(0 != hid_parse_#t~bitwise39#1 % 4294967296);havoc hid_parse_#t~mem38#1;havoc hid_parse_#t~bitwise39#1;call hid_parse_#t~mem43#1.base, hid_parse_#t~mem43#1.offset := read~$Pointer$#2(hid_parse_~hdev#1.base, 7330 + hid_parse_~hdev#1.offset, 8);call hid_parse_#t~mem44#1.base, hid_parse_#t~mem44#1.offset := read~$Pointer$#5(hid_parse_#t~mem43#1.base, 48 + hid_parse_#t~mem43#1.offset, 8); [2025-02-08 02:04:23,559 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3799-3: assume 4 == magicmouse_input_mapping_#t~mem173#1 % 4294967296;magicmouse_input_mapping_#t~bitwise174#1 := magicmouse_input_mapping_#t~mem173#1; [2025-02-08 02:04:23,559 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3799-3: assume !(4 == magicmouse_input_mapping_#t~mem173#1 % 4294967296); [2025-02-08 02:04:23,559 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3287-3: assume 2 == hid_parse_#t~mem38#1 % 4294967296;hid_parse_#t~bitwise39#1 := hid_parse_#t~mem38#1; [2025-02-08 02:04:23,559 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3287-3: assume !(2 == hid_parse_#t~mem38#1 % 4294967296); [2025-02-08 02:04:23,559 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3188: kzalloc_#t~ret14#1.base, kzalloc_#t~ret14#1.offset := kmalloc_#res#1.base, kmalloc_#res#1.offset;havoc kmalloc_#t~ret12#1.base, kmalloc_#t~ret12#1.offset, kmalloc_~size#1, kmalloc_~flags#1, kmalloc_~tmp___2~0#1.base, kmalloc_~tmp___2~0#1.offset;havoc kmalloc_#in~size#1, kmalloc_#in~flags#1;assume { :end_inline_kmalloc } true;kzalloc_~tmp~0#1.base, kzalloc_~tmp~0#1.offset := kzalloc_#t~ret14#1.base, kzalloc_#t~ret14#1.offset;havoc kzalloc_#t~bitwise13#1;havoc kzalloc_#t~ret14#1.base, kzalloc_#t~ret14#1.offset;kzalloc_#res#1.base, kzalloc_#res#1.offset := kzalloc_~tmp~0#1.base, kzalloc_~tmp~0#1.offset; [2025-02-08 02:04:23,559 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3799-2: havoc magicmouse_input_mapping_#t~bitwise174#1;assume magicmouse_input_mapping_#t~bitwise174#1 % 4294967296 <= magicmouse_input_mapping_#t~mem173#1 % 4294967296 && magicmouse_input_mapping_#t~bitwise174#1 % 4294967296 <= 4; [2025-02-08 02:04:23,559 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3733: SUMMARY for call __set_bit(8, magicmouse_setup_input_~input#1.base, 144 + magicmouse_setup_input_~input#1.offset); srcloc: null [2025-02-08 02:04:23,559 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3287-2: havoc hid_parse_#t~bitwise39#1;assume hid_parse_#t~bitwise39#1 % 4294967296 <= hid_parse_#t~mem38#1 % 4294967296 && hid_parse_#t~bitwise39#1 % 4294967296 <= 2; [2025-02-08 02:04:23,559 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3188-2: [2025-02-08 02:04:23,559 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3799-4: assume 0 == magicmouse_input_mapping_#t~mem173#1 % 4294967296;magicmouse_input_mapping_#t~bitwise174#1 := 0; [2025-02-08 02:04:23,559 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3799-4: assume !(0 == magicmouse_input_mapping_#t~mem173#1 % 4294967296); [2025-02-08 02:04:23,559 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3287-4: assume 0 == hid_parse_#t~mem38#1 % 4294967296;hid_parse_#t~bitwise39#1 := 0; [2025-02-08 02:04:23,559 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3287-4: assume !(0 == hid_parse_#t~mem38#1 % 4294967296); [2025-02-08 02:04:23,559 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3188-1: assume { :begin_inline_kmalloc } true;kmalloc_#in~size#1, kmalloc_#in~flags#1 := kzalloc_~size#1, kzalloc_#t~bitwise13#1;havoc kmalloc_#res#1.base, kmalloc_#res#1.offset;havoc kmalloc_#t~ret12#1.base, kmalloc_#t~ret12#1.offset, kmalloc_~size#1, kmalloc_~flags#1, kmalloc_~tmp___2~0#1.base, kmalloc_~tmp___2~0#1.offset;kmalloc_~size#1 := kmalloc_#in~size#1;kmalloc_~flags#1 := kmalloc_#in~flags#1;havoc kmalloc_~tmp___2~0#1.base, kmalloc_~tmp___2~0#1.offset;assume { :begin_inline___kmalloc } true;__kmalloc_#in~arg0#1, __kmalloc_#in~arg1#1 := kmalloc_~size#1, kmalloc_~flags#1;havoc __kmalloc_#res#1.base, __kmalloc_#res#1.offset;havoc __kmalloc_#t~ret212#1.base, __kmalloc_#t~ret212#1.offset, __kmalloc_~arg0#1, __kmalloc_~arg1#1;__kmalloc_~arg0#1 := __kmalloc_#in~arg0#1;__kmalloc_~arg1#1 := __kmalloc_#in~arg1#1; [2025-02-08 02:04:23,559 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3188-4: assume false;kzalloc_#t~bitwise13#1 := kzalloc_~flags#1; [2025-02-08 02:04:23,559 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3188-4: assume !false; [2025-02-08 02:04:23,559 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3188-3: havoc kzalloc_#t~bitwise13#1;assume (kzalloc_#t~bitwise13#1 % 4294967296 >= kzalloc_~flags#1 % 4294967296 && kzalloc_#t~bitwise13#1 % 4294967296 >= 32768) && kzalloc_#t~bitwise13#1 % 4294967296 <= 32768 + kzalloc_~flags#1 % 4294967296; [2025-02-08 02:04:23,559 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3188-5: assume 0 == kzalloc_~flags#1 % 4294967296 || 32768 == kzalloc_~flags#1 % 4294967296;kzalloc_#t~bitwise13#1 := 32768; [2025-02-08 02:04:23,559 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3188-5: assume !(0 == kzalloc_~flags#1 % 4294967296 || 32768 == kzalloc_~flags#1 % 4294967296); [2025-02-08 02:04:23,559 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3882: assume -2147483648 <= magicmouse_probe_#t~ret196#1 && magicmouse_probe_#t~ret196#1 <= 2147483647;havoc magicmouse_probe_#t~ret196#1; [2025-02-08 02:04:23,560 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3882-1: SUMMARY for call magicmouse_probe_#t~ret196#1 := dev_err(magicmouse_probe_~hdev#1.base, 6258 + magicmouse_probe_~hdev#1.offset, 8, 0); srcloc: null [2025-02-08 02:04:23,560 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3750: SUMMARY for call __set_bit(3, magicmouse_setup_input_~input#1.base, 40 + magicmouse_setup_input_~input#1.offset); srcloc: null [2025-02-08 02:04:23,560 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3717: SUMMARY for call __set_bit(272, magicmouse_setup_input_~input#1.base, 48 + magicmouse_setup_input_~input#1.offset); srcloc: null [2025-02-08 02:04:23,560 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3321-1: SUMMARY for call ##fun~$Pointer$~TO~VOID(hid_hw_start_~hdev#1.base, hid_hw_start_~hdev#1.offset, hid_hw_start_#t~mem59#1.base, hid_hw_start_#t~mem59#1.offset); srcloc: null [2025-02-08 02:04:23,560 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3321: havoc hid_hw_start_#t~mem58#1.base, hid_hw_start_#t~mem58#1.offset;havoc hid_hw_start_#t~mem59#1.base, hid_hw_start_#t~mem59#1.offset; [2025-02-08 02:04:23,560 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3833: magicmouse_probe_#t~ret178#1 := hid_parse_#res#1;havoc hid_parse_#t~mem38#1, hid_parse_#t~bitwise39#1, hid_parse_#t~mem43#1.base, hid_parse_#t~mem43#1.offset, hid_parse_#t~mem44#1.base, hid_parse_#t~mem44#1.offset, hid_parse_#t~ret45#1, hid_parse_#t~mem46#1, hid_parse_#t~bitwise47#1, hid_parse_~hdev#1.base, hid_parse_~hdev#1.offset, hid_parse_~ret~0#1;havoc hid_parse_#in~hdev#1.base, hid_parse_#in~hdev#1.offset;assume { :end_inline_hid_parse } true;assume -2147483648 <= magicmouse_probe_#t~ret178#1 && magicmouse_probe_#t~ret178#1 <= 2147483647;magicmouse_probe_~ret~2#1 := magicmouse_probe_#t~ret178#1;havoc magicmouse_probe_#t~ret178#1; [2025-02-08 02:04:23,560 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3734: SUMMARY for call __set_bit(6, magicmouse_setup_input_~input#1.base, 144 + magicmouse_setup_input_~input#1.offset); srcloc: null [2025-02-08 02:04:23,562 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L4015: assume false; [2025-02-08 02:04:23,562 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L4015: assume !false; [2025-02-08 02:04:23,562 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3718: SUMMARY for call __set_bit(273, magicmouse_setup_input_~input#1.base, 48 + magicmouse_setup_input_~input#1.offset); srcloc: null [2025-02-08 02:04:23,562 INFO L1324 $ProcedureCfgBuilder]: dead code at ProgramPoint L3751: SUMMARY for call input_set_abs_params(magicmouse_setup_input_~input#1.base, magicmouse_setup_input_~input#1.offset, 57, 0, 15, 0, 0); srcloc: null [2025-02-08 02:04:23,602 INFO L? ?]: Removed 177 outVars from TransFormulas that were not future-live. [2025-02-08 02:04:23,603 INFO L308 CfgBuilder]: Performing block encoding [2025-02-08 02:04:23,624 INFO L332 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2025-02-08 02:04:23,624 INFO L337 CfgBuilder]: Removed 1 assume(true) statements. [2025-02-08 02:04:23,624 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 08.02 02:04:23 BoogieIcfgContainer [2025-02-08 02:04:23,624 INFO L131 PluginConnector]: ------------------------ END IcfgBuilder---------------------------- [2025-02-08 02:04:23,627 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2025-02-08 02:04:23,627 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2025-02-08 02:04:23,630 INFO L274 PluginConnector]: TraceAbstraction initialized [2025-02-08 02:04:23,630 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 08.02 02:04:17" (1/3) ... [2025-02-08 02:04:23,631 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@25483620 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 08.02 02:04:23, skipping insertion in model container [2025-02-08 02:04:23,631 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.02 02:04:18" (2/3) ... [2025-02-08 02:04:23,631 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@25483620 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 08.02 02:04:23, skipping insertion in model container [2025-02-08 02:04:23,632 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 08.02 02:04:23" (3/3) ... [2025-02-08 02:04:23,632 INFO L128 eAbstractionObserver]: Analyzing ICFG module_get_put-drivers-hid-hid-magicmouse.ko.cil.out.i [2025-02-08 02:04:23,642 INFO L216 ceAbstractionStarter]: Automizer settings: Hoare:LoopHeads NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2025-02-08 02:04:23,643 INFO L151 ceAbstractionStarter]: Applying trace abstraction to ICFG module_get_put-drivers-hid-hid-magicmouse.ko.cil.out.i that has 21 procedures, 169 locations, 1 initial locations, 0 loop locations, and 1 error locations. [2025-02-08 02:04:23,679 INFO L332 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2025-02-08 02:04:23,688 INFO L333 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=FPandBP, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mAutomataTypeConcurrency=PETRI_NET, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=LoopHeads, mDumpOnlyReuseAutomata=false, mLimitTraceHistogram=0, mErrorLocTimeLimit=0, mLimitPathProgramCount=0, mCollectInterpolantStatistics=true, mHeuristicEmptinessCheck=false, mHeuristicEmptinessCheckAStarHeuristic=ZERO, mHeuristicEmptinessCheckAStarHeuristicRandomSeed=1337, mHeuristicEmptinessCheckSmtFeatureScoringMethod=DAGSIZE, mSMTFeatureExtraction=false, mSMTFeatureExtractionDumpPath=., mOverrideInterpolantAutomaton=false, mMcrInterpolantMethod=WP, mPorIndependenceSettings=[Lde.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings;@212fa01b, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2025-02-08 02:04:23,689 INFO L334 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2025-02-08 02:04:23,693 INFO L276 IsEmpty]: Start isEmpty. Operand has 12 states, 8 states have (on average 1.5) internal successors, (12), 11 states have internal predecessors, (12), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2025-02-08 02:04:23,696 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2025-02-08 02:04:23,698 INFO L782 garLoopResultBuilder]: Registering result SAFE for location ldv_blast_assertErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2025-02-08 02:04:23,701 INFO L422 BasicCegarLoop]: Path program histogram: [] [2025-02-08 02:04:23,703 INFO L343 DoubleDeckerVisitor]: Before removal of dead ends has 12 states, 8 states have (on average 1.5) internal successors, (12), 11 states have internal predecessors, (12), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2025-02-08 02:04:23,706 INFO L170 ceAbstractionStarter]: Computing trace abstraction results [2025-02-08 02:04:23,711 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 08.02 02:04:23 BoogieIcfgContainer [2025-02-08 02:04:23,711 INFO L131 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2025-02-08 02:04:23,712 INFO L112 PluginConnector]: ------------------------Witness Printer---------------------------- [2025-02-08 02:04:23,712 INFO L270 PluginConnector]: Initializing Witness Printer... [2025-02-08 02:04:23,712 INFO L274 PluginConnector]: Witness Printer initialized [2025-02-08 02:04:23,713 INFO L184 PluginConnector]: Executing the observer RCFGCatcher from plugin Witness Printer for "de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 08.02 02:04:23" (3/4) ... [2025-02-08 02:04:23,714 INFO L146 WitnessPrinter]: Generating witness for correct program [2025-02-08 02:04:23,716 INFO L385 IcfgBacktranslator]: Ignoring RootEdge to procedure kfree [2025-02-08 02:04:23,716 INFO L385 IcfgBacktranslator]: Ignoring RootEdge to procedure input_report_rel [2025-02-08 02:04:23,716 INFO L385 IcfgBacktranslator]: Ignoring RootEdge to procedure hid_get_drvdata [2025-02-08 02:04:23,716 INFO L385 IcfgBacktranslator]: Ignoring RootEdge to procedure hid_hw_stop [2025-02-08 02:04:23,716 INFO L385 IcfgBacktranslator]: Ignoring RootEdge to procedure magicmouse_emit_touch [2025-02-08 02:04:23,716 INFO L385 IcfgBacktranslator]: Ignoring RootEdge to procedure hid_register_report [2025-02-08 02:04:23,716 INFO L385 IcfgBacktranslator]: Ignoring RootEdge to procedure input_event [2025-02-08 02:04:23,716 INFO L385 IcfgBacktranslator]: Ignoring RootEdge to procedure input_set_abs_params [2025-02-08 02:04:23,717 INFO L385 IcfgBacktranslator]: Ignoring RootEdge to procedure dev_err [2025-02-08 02:04:23,717 INFO L385 IcfgBacktranslator]: Ignoring RootEdge to procedure magicmouse_raw_event [2025-02-08 02:04:23,717 INFO L385 IcfgBacktranslator]: Ignoring RootEdge to procedure input_report_key [2025-02-08 02:04:23,717 INFO L385 IcfgBacktranslator]: Ignoring RootEdge to procedure ldv_malloc [2025-02-08 02:04:23,717 INFO L385 IcfgBacktranslator]: Ignoring RootEdge to procedure input_mt_sync [2025-02-08 02:04:23,717 INFO L385 IcfgBacktranslator]: Ignoring RootEdge to procedure ##fun~$Pointer$~TO~VOID [2025-02-08 02:04:23,717 INFO L385 IcfgBacktranslator]: Ignoring RootEdge to procedure constant_test_bit [2025-02-08 02:04:23,717 INFO L385 IcfgBacktranslator]: Ignoring RootEdge to procedure __set_bit [2025-02-08 02:04:23,717 INFO L385 IcfgBacktranslator]: Ignoring RootEdge to procedure input_report_abs [2025-02-08 02:04:23,717 INFO L385 IcfgBacktranslator]: Ignoring RootEdge to procedure magicmouse_remove [2025-02-08 02:04:23,717 INFO L385 IcfgBacktranslator]: Ignoring RootEdge to procedure ##fun~$Pointer$~TO~int [2025-02-08 02:04:23,717 INFO L385 IcfgBacktranslator]: Ignoring RootEdge to procedure ldv_blast_assert [2025-02-08 02:04:23,723 INFO L919 BoogieBacktranslator]: Reduced CFG by removing 15 nodes and edges [2025-02-08 02:04:23,723 INFO L919 BoogieBacktranslator]: Reduced CFG by removing 6 nodes and edges [2025-02-08 02:04:23,723 INFO L919 BoogieBacktranslator]: Reduced CFG by removing 3 nodes and edges [2025-02-08 02:04:23,723 INFO L919 BoogieBacktranslator]: Reduced CFG by removing 1 nodes and edges [2025-02-08 02:04:23,723 INFO L919 BoogieBacktranslator]: Reduced CFG by removing 1 nodes and edges [2025-02-08 02:04:23,799 INFO L149 WitnessManager]: Wrote witness to /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/witness.graphml [2025-02-08 02:04:23,799 INFO L149 WitnessManager]: Wrote witness to /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/witness.yml [2025-02-08 02:04:23,799 INFO L131 PluginConnector]: ------------------------ END Witness Printer---------------------------- [2025-02-08 02:04:23,800 INFO L158 Benchmark]: Toolchain (without parser) took 6367.82ms. Allocated memory is still 167.8MB. Free memory was 128.1MB in the beginning and 67.0MB in the end (delta: 61.1MB). Peak memory consumption was 62.2MB. Max. memory is 16.1GB. [2025-02-08 02:04:23,800 INFO L158 Benchmark]: CDTParser took 0.45ms. Allocated memory is still 201.3MB. Free memory is still 125.8MB. There was no memory consumed. Max. memory is 16.1GB. [2025-02-08 02:04:23,800 INFO L158 Benchmark]: CACSL2BoogieTranslator took 647.82ms. Allocated memory is still 167.8MB. Free memory was 128.1MB in the beginning and 60.1MB in the end (delta: 68.0MB). Peak memory consumption was 75.5MB. Max. memory is 16.1GB. [2025-02-08 02:04:23,800 INFO L158 Benchmark]: Boogie Procedure Inliner took 59.78ms. Allocated memory is still 167.8MB. Free memory was 60.1MB in the beginning and 53.4MB in the end (delta: 6.7MB). There was no memory consumed. Max. memory is 16.1GB. [2025-02-08 02:04:23,800 INFO L158 Benchmark]: Boogie Preprocessor took 151.55ms. Allocated memory is still 167.8MB. Free memory was 53.4MB in the beginning and 118.9MB in the end (delta: -65.4MB). Peak memory consumption was 30.5MB. Max. memory is 16.1GB. [2025-02-08 02:04:23,800 INFO L158 Benchmark]: IcfgBuilder took 5331.26ms. Allocated memory is still 167.8MB. Free memory was 118.9MB in the beginning and 82.9MB in the end (delta: 36.0MB). Peak memory consumption was 74.3MB. Max. memory is 16.1GB. [2025-02-08 02:04:23,800 INFO L158 Benchmark]: TraceAbstraction took 83.55ms. Allocated memory is still 167.8MB. Free memory was 82.9MB in the beginning and 76.6MB in the end (delta: 6.3MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. [2025-02-08 02:04:23,801 INFO L158 Benchmark]: Witness Printer took 86.78ms. Allocated memory is still 167.8MB. Free memory was 76.6MB in the beginning and 67.0MB in the end (delta: 9.6MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. [2025-02-08 02:04:23,804 INFO L338 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.45ms. Allocated memory is still 201.3MB. Free memory is still 125.8MB. There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 647.82ms. Allocated memory is still 167.8MB. Free memory was 128.1MB in the beginning and 60.1MB in the end (delta: 68.0MB). Peak memory consumption was 75.5MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 59.78ms. Allocated memory is still 167.8MB. Free memory was 60.1MB in the beginning and 53.4MB in the end (delta: 6.7MB). There was no memory consumed. Max. memory is 16.1GB. * Boogie Preprocessor took 151.55ms. Allocated memory is still 167.8MB. Free memory was 53.4MB in the beginning and 118.9MB in the end (delta: -65.4MB). Peak memory consumption was 30.5MB. Max. memory is 16.1GB. * IcfgBuilder took 5331.26ms. Allocated memory is still 167.8MB. Free memory was 118.9MB in the beginning and 82.9MB in the end (delta: 36.0MB). Peak memory consumption was 74.3MB. Max. memory is 16.1GB. * TraceAbstraction took 83.55ms. Allocated memory is still 167.8MB. Free memory was 82.9MB in the beginning and 76.6MB in the end (delta: 6.3MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. * Witness Printer took 86.78ms. Allocated memory is still 167.8MB. Free memory was 76.6MB in the beginning and 67.0MB in the end (delta: 9.6MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator: - GenericResultAtLocation [Line: 3150]: Unsoundness Warning Ignoring inline assembler instruction C: __asm__ volatile ("bts %1,%0": "+m" (*((long volatile *)addr)): "Ir" (nr): "memory"); [3150] * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - StatisticsResult: ErrorAutomatonStatistics NumberErrorTraces: 0, NumberStatementsAllTraces: 0, NumberRelevantStatements: 0, 0.0s ErrorAutomatonConstructionTimeTotal, 0.0s FaulLocalizationTime, NumberStatementsFirstTrace: -1, TraceLengthAvg: 0, 0.0s ErrorAutomatonConstructionTimeAvg, 0.0s ErrorAutomatonDifferenceTimeAvg, 0.0s ErrorAutomatonDifferenceTimeTotal, NumberOfNoEnhancement: 0, NumberOfFiniteEnhancement: 0, NumberOfInfiniteEnhancement: 0 - PositiveResult [Line: 4081]: a call to reach_error is unreachable For all program executions holds that a call to reach_error is unreachable at this location - StatisticsResult: Ultimate Automizer benchmark data CFG has 21 procedures, 169 locations, 1 error locations. Started 1 CEGAR loops. OverallTime: 0.0s, OverallIterations: 0, TraceHistogramMax: 0, PathProgramHistogramMax: 0, EmptinessCheckTime: 0.0s, AutomataDifference: 0.0s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.0s, HoareTripleCheckerStatistics: , PredicateUnifierStatistics: No data available, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=12occurred in iteration=0, InterpolantAutomatonStates: 0, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s DumpTime, AutomataMinimizationStatistics: No data available, HoareAnnotationStatistics: No data available, RefinementEngineStatistics: No data available, ReuseStatistics: No data available, ConComCheckerStatistics: No data available - AllSpecificationsHoldResult: All specifications hold 1 specifications checked. All of them hold RESULT: Ultimate proved your program to be correct! [2025-02-08 02:04:23,827 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (1)] Ended with exit code 0 Received shutdown request... --- End real Ultimate output --- Execution finished normally Writing output log to file Ultimate.log Result: TRUE