1
2
3
4#line 19 "include/asm-generic/int-ll64.h"
5typedef signed char __s8;
6#line 20 "include/asm-generic/int-ll64.h"
7typedef unsigned char __u8;
8#line 22 "include/asm-generic/int-ll64.h"
9typedef short __s16;
10#line 23 "include/asm-generic/int-ll64.h"
11typedef unsigned short __u16;
12#line 25 "include/asm-generic/int-ll64.h"
13typedef int __s32;
14#line 26 "include/asm-generic/int-ll64.h"
15typedef unsigned int __u32;
16#line 30 "include/asm-generic/int-ll64.h"
17typedef unsigned long long __u64;
18#line 43 "include/asm-generic/int-ll64.h"
19typedef unsigned char u8;
20#line 45 "include/asm-generic/int-ll64.h"
21typedef short s16;
22#line 46 "include/asm-generic/int-ll64.h"
23typedef unsigned short u16;
24#line 48 "include/asm-generic/int-ll64.h"
25typedef int s32;
26#line 49 "include/asm-generic/int-ll64.h"
27typedef unsigned int u32;
28#line 51 "include/asm-generic/int-ll64.h"
29typedef long long s64;
30#line 52 "include/asm-generic/int-ll64.h"
31typedef unsigned long long u64;
32#line 14 "include/asm-generic/posix_types.h"
33typedef long __kernel_long_t;
34#line 15 "include/asm-generic/posix_types.h"
35typedef unsigned long __kernel_ulong_t;
36#line 52 "include/asm-generic/posix_types.h"
37typedef unsigned int __kernel_uid32_t;
38#line 53 "include/asm-generic/posix_types.h"
39typedef unsigned int __kernel_gid32_t;
40#line 75 "include/asm-generic/posix_types.h"
41typedef __kernel_ulong_t __kernel_size_t;
42#line 76 "include/asm-generic/posix_types.h"
43typedef __kernel_long_t __kernel_ssize_t;
44#line 91 "include/asm-generic/posix_types.h"
45typedef long long __kernel_loff_t;
46#line 92 "include/asm-generic/posix_types.h"
47typedef __kernel_long_t __kernel_time_t;
48#line 21 "include/linux/types.h"
49typedef __u32 __kernel_dev_t;
50#line 24 "include/linux/types.h"
51typedef __kernel_dev_t dev_t;
52#line 27 "include/linux/types.h"
53typedef unsigned short umode_t;
54#line 38 "include/linux/types.h"
55typedef _Bool bool;
56#line 40 "include/linux/types.h"
57typedef __kernel_uid32_t uid_t;
58#line 41 "include/linux/types.h"
59typedef __kernel_gid32_t gid_t;
60#line 54 "include/linux/types.h"
61typedef __kernel_loff_t loff_t;
62#line 63 "include/linux/types.h"
63typedef __kernel_size_t size_t;
64#line 68 "include/linux/types.h"
65typedef __kernel_ssize_t ssize_t;
66#line 78 "include/linux/types.h"
67typedef __kernel_time_t time_t;
68#line 142 "include/linux/types.h"
69typedef unsigned long sector_t;
70#line 143 "include/linux/types.h"
71typedef unsigned long blkcnt_t;
72#line 202 "include/linux/types.h"
73typedef unsigned int gfp_t;
74#line 203 "include/linux/types.h"
75typedef unsigned int fmode_t;
76#line 221 "include/linux/types.h"
77struct __anonstruct_atomic_t_6 {
78 int counter ;
79};
80#line 221 "include/linux/types.h"
81typedef struct __anonstruct_atomic_t_6 atomic_t;
82#line 226 "include/linux/types.h"
83struct __anonstruct_atomic64_t_7 {
84 long counter ;
85};
86#line 226 "include/linux/types.h"
87typedef struct __anonstruct_atomic64_t_7 atomic64_t;
88#line 227 "include/linux/types.h"
89struct list_head {
90 struct list_head *next ;
91 struct list_head *prev ;
92};
93#line 232
94struct hlist_node;
95#line 232 "include/linux/types.h"
96struct hlist_head {
97 struct hlist_node *first ;
98};
99#line 236 "include/linux/types.h"
100struct hlist_node {
101 struct hlist_node *next ;
102 struct hlist_node **pprev ;
103};
104#line 247 "include/linux/types.h"
105struct rcu_head {
106 struct rcu_head *next ;
107 void (*func)(struct rcu_head * ) ;
108};
109#line 55 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/alternative.h"
110struct module;
111#line 55
112struct module;
113#line 146 "include/linux/init.h"
114typedef void (*ctor_fn_t)(void);
115#line 305 "include/linux/printk.h"
116struct _ddebug {
117 char const *modname ;
118 char const *function ;
119 char const *filename ;
120 char const *format ;
121 unsigned int lineno : 18 ;
122 unsigned char flags ;
123};
124#line 46 "include/linux/dynamic_debug.h"
125struct device;
126#line 46
127struct device;
128#line 57
129struct completion;
130#line 57
131struct completion;
132#line 348 "include/linux/kernel.h"
133struct pid;
134#line 348
135struct pid;
136#line 112 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/stat.h"
137struct timespec;
138#line 112
139struct timespec;
140#line 58 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/page_types.h"
141struct page;
142#line 58
143struct page;
144#line 26 "include/asm-generic/getorder.h"
145struct task_struct;
146#line 26
147struct task_struct;
148#line 290 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
149struct file;
150#line 290
151struct file;
152#line 305
153struct seq_file;
154#line 305
155struct seq_file;
156#line 327 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/paravirt_types.h"
157struct arch_spinlock;
158#line 327
159struct arch_spinlock;
160#line 306 "include/linux/bitmap.h"
161struct bug_entry {
162 int bug_addr_disp ;
163 int file_disp ;
164 unsigned short line ;
165 unsigned short flags ;
166};
167#line 234 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/paravirt.h"
168struct static_key;
169#line 234
170struct static_key;
171#line 433 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
172struct kmem_cache;
173#line 23 "include/asm-generic/atomic-long.h"
174typedef atomic64_t atomic_long_t;
175#line 14 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
176typedef u16 __ticket_t;
177#line 15 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
178typedef u32 __ticketpair_t;
179#line 16 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
180struct __raw_tickets {
181 __ticket_t head ;
182 __ticket_t tail ;
183};
184#line 26 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
185union __anonunion_ldv_5907_29 {
186 __ticketpair_t head_tail ;
187 struct __raw_tickets tickets ;
188};
189#line 26 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
190struct arch_spinlock {
191 union __anonunion_ldv_5907_29 ldv_5907 ;
192};
193#line 27 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
194typedef struct arch_spinlock arch_spinlock_t;
195#line 33 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/rwlock.h"
196struct __anonstruct_ldv_5914_31 {
197 u32 read ;
198 s32 write ;
199};
200#line 33 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/rwlock.h"
201union __anonunion_arch_rwlock_t_30 {
202 s64 lock ;
203 struct __anonstruct_ldv_5914_31 ldv_5914 ;
204};
205#line 33 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/rwlock.h"
206typedef union __anonunion_arch_rwlock_t_30 arch_rwlock_t;
207#line 34
208struct lockdep_map;
209#line 34
210struct lockdep_map;
211#line 55 "include/linux/debug_locks.h"
212struct stack_trace {
213 unsigned int nr_entries ;
214 unsigned int max_entries ;
215 unsigned long *entries ;
216 int skip ;
217};
218#line 26 "include/linux/stacktrace.h"
219struct lockdep_subclass_key {
220 char __one_byte ;
221};
222#line 53 "include/linux/lockdep.h"
223struct lock_class_key {
224 struct lockdep_subclass_key subkeys[8U] ;
225};
226#line 59 "include/linux/lockdep.h"
227struct lock_class {
228 struct list_head hash_entry ;
229 struct list_head lock_entry ;
230 struct lockdep_subclass_key *key ;
231 unsigned int subclass ;
232 unsigned int dep_gen_id ;
233 unsigned long usage_mask ;
234 struct stack_trace usage_traces[13U] ;
235 struct list_head locks_after ;
236 struct list_head locks_before ;
237 unsigned int version ;
238 unsigned long ops ;
239 char const *name ;
240 int name_version ;
241 unsigned long contention_point[4U] ;
242 unsigned long contending_point[4U] ;
243};
244#line 144 "include/linux/lockdep.h"
245struct lockdep_map {
246 struct lock_class_key *key ;
247 struct lock_class *class_cache[2U] ;
248 char const *name ;
249 int cpu ;
250 unsigned long ip ;
251};
252#line 556 "include/linux/lockdep.h"
253struct raw_spinlock {
254 arch_spinlock_t raw_lock ;
255 unsigned int magic ;
256 unsigned int owner_cpu ;
257 void *owner ;
258 struct lockdep_map dep_map ;
259};
260#line 32 "include/linux/spinlock_types.h"
261typedef struct raw_spinlock raw_spinlock_t;
262#line 33 "include/linux/spinlock_types.h"
263struct __anonstruct_ldv_6122_33 {
264 u8 __padding[24U] ;
265 struct lockdep_map dep_map ;
266};
267#line 33 "include/linux/spinlock_types.h"
268union __anonunion_ldv_6123_32 {
269 struct raw_spinlock rlock ;
270 struct __anonstruct_ldv_6122_33 ldv_6122 ;
271};
272#line 33 "include/linux/spinlock_types.h"
273struct spinlock {
274 union __anonunion_ldv_6123_32 ldv_6123 ;
275};
276#line 76 "include/linux/spinlock_types.h"
277typedef struct spinlock spinlock_t;
278#line 23 "include/linux/rwlock_types.h"
279struct __anonstruct_rwlock_t_34 {
280 arch_rwlock_t raw_lock ;
281 unsigned int magic ;
282 unsigned int owner_cpu ;
283 void *owner ;
284 struct lockdep_map dep_map ;
285};
286#line 23 "include/linux/rwlock_types.h"
287typedef struct __anonstruct_rwlock_t_34 rwlock_t;
288#line 110 "include/linux/seqlock.h"
289struct seqcount {
290 unsigned int sequence ;
291};
292#line 121 "include/linux/seqlock.h"
293typedef struct seqcount seqcount_t;
294#line 254 "include/linux/seqlock.h"
295struct timespec {
296 __kernel_time_t tv_sec ;
297 long tv_nsec ;
298};
299#line 286 "include/linux/time.h"
300struct kstat {
301 u64 ino ;
302 dev_t dev ;
303 umode_t mode ;
304 unsigned int nlink ;
305 uid_t uid ;
306 gid_t gid ;
307 dev_t rdev ;
308 loff_t size ;
309 struct timespec atime ;
310 struct timespec mtime ;
311 struct timespec ctime ;
312 unsigned long blksize ;
313 unsigned long long blocks ;
314};
315#line 48 "include/linux/wait.h"
316struct __wait_queue_head {
317 spinlock_t lock ;
318 struct list_head task_list ;
319};
320#line 53 "include/linux/wait.h"
321typedef struct __wait_queue_head wait_queue_head_t;
322#line 670 "include/linux/mmzone.h"
323struct mutex {
324 atomic_t count ;
325 spinlock_t wait_lock ;
326 struct list_head wait_list ;
327 struct task_struct *owner ;
328 char const *name ;
329 void *magic ;
330 struct lockdep_map dep_map ;
331};
332#line 171 "include/linux/mutex.h"
333struct rw_semaphore;
334#line 171
335struct rw_semaphore;
336#line 172 "include/linux/mutex.h"
337struct rw_semaphore {
338 long count ;
339 raw_spinlock_t wait_lock ;
340 struct list_head wait_list ;
341 struct lockdep_map dep_map ;
342};
343#line 128 "include/linux/rwsem.h"
344struct completion {
345 unsigned int done ;
346 wait_queue_head_t wait ;
347};
348#line 312 "include/linux/jiffies.h"
349union ktime {
350 s64 tv64 ;
351};
352#line 59 "include/linux/ktime.h"
353typedef union ktime ktime_t;
354#line 341
355struct tvec_base;
356#line 341
357struct tvec_base;
358#line 342 "include/linux/ktime.h"
359struct timer_list {
360 struct list_head entry ;
361 unsigned long expires ;
362 struct tvec_base *base ;
363 void (*function)(unsigned long ) ;
364 unsigned long data ;
365 int slack ;
366 int start_pid ;
367 void *start_site ;
368 char start_comm[16U] ;
369 struct lockdep_map lockdep_map ;
370};
371#line 302 "include/linux/timer.h"
372struct work_struct;
373#line 302
374struct work_struct;
375#line 45 "include/linux/workqueue.h"
376struct work_struct {
377 atomic_long_t data ;
378 struct list_head entry ;
379 void (*func)(struct work_struct * ) ;
380 struct lockdep_map lockdep_map ;
381};
382#line 46 "include/linux/pm.h"
383struct pm_message {
384 int event ;
385};
386#line 52 "include/linux/pm.h"
387typedef struct pm_message pm_message_t;
388#line 53 "include/linux/pm.h"
389struct dev_pm_ops {
390 int (*prepare)(struct device * ) ;
391 void (*complete)(struct device * ) ;
392 int (*suspend)(struct device * ) ;
393 int (*resume)(struct device * ) ;
394 int (*freeze)(struct device * ) ;
395 int (*thaw)(struct device * ) ;
396 int (*poweroff)(struct device * ) ;
397 int (*restore)(struct device * ) ;
398 int (*suspend_late)(struct device * ) ;
399 int (*resume_early)(struct device * ) ;
400 int (*freeze_late)(struct device * ) ;
401 int (*thaw_early)(struct device * ) ;
402 int (*poweroff_late)(struct device * ) ;
403 int (*restore_early)(struct device * ) ;
404 int (*suspend_noirq)(struct device * ) ;
405 int (*resume_noirq)(struct device * ) ;
406 int (*freeze_noirq)(struct device * ) ;
407 int (*thaw_noirq)(struct device * ) ;
408 int (*poweroff_noirq)(struct device * ) ;
409 int (*restore_noirq)(struct device * ) ;
410 int (*runtime_suspend)(struct device * ) ;
411 int (*runtime_resume)(struct device * ) ;
412 int (*runtime_idle)(struct device * ) ;
413};
414#line 289
415enum rpm_status {
416 RPM_ACTIVE = 0,
417 RPM_RESUMING = 1,
418 RPM_SUSPENDED = 2,
419 RPM_SUSPENDING = 3
420} ;
421#line 296
422enum rpm_request {
423 RPM_REQ_NONE = 0,
424 RPM_REQ_IDLE = 1,
425 RPM_REQ_SUSPEND = 2,
426 RPM_REQ_AUTOSUSPEND = 3,
427 RPM_REQ_RESUME = 4
428} ;
429#line 304
430struct wakeup_source;
431#line 304
432struct wakeup_source;
433#line 494 "include/linux/pm.h"
434struct pm_subsys_data {
435 spinlock_t lock ;
436 unsigned int refcount ;
437};
438#line 499
439struct dev_pm_qos_request;
440#line 499
441struct pm_qos_constraints;
442#line 499 "include/linux/pm.h"
443struct dev_pm_info {
444 pm_message_t power_state ;
445 unsigned char can_wakeup : 1 ;
446 unsigned char async_suspend : 1 ;
447 bool is_prepared ;
448 bool is_suspended ;
449 bool ignore_children ;
450 spinlock_t lock ;
451 struct list_head entry ;
452 struct completion completion ;
453 struct wakeup_source *wakeup ;
454 bool wakeup_path ;
455 struct timer_list suspend_timer ;
456 unsigned long timer_expires ;
457 struct work_struct work ;
458 wait_queue_head_t wait_queue ;
459 atomic_t usage_count ;
460 atomic_t child_count ;
461 unsigned char disable_depth : 3 ;
462 unsigned char idle_notification : 1 ;
463 unsigned char request_pending : 1 ;
464 unsigned char deferred_resume : 1 ;
465 unsigned char run_wake : 1 ;
466 unsigned char runtime_auto : 1 ;
467 unsigned char no_callbacks : 1 ;
468 unsigned char irq_safe : 1 ;
469 unsigned char use_autosuspend : 1 ;
470 unsigned char timer_autosuspends : 1 ;
471 enum rpm_request request ;
472 enum rpm_status runtime_status ;
473 int runtime_error ;
474 int autosuspend_delay ;
475 unsigned long last_busy ;
476 unsigned long active_jiffies ;
477 unsigned long suspended_jiffies ;
478 unsigned long accounting_timestamp ;
479 ktime_t suspend_time ;
480 s64 max_time_suspended_ns ;
481 struct dev_pm_qos_request *pq_req ;
482 struct pm_subsys_data *subsys_data ;
483 struct pm_qos_constraints *constraints ;
484};
485#line 558 "include/linux/pm.h"
486struct dev_pm_domain {
487 struct dev_pm_ops ops ;
488};
489#line 18 "include/asm-generic/pci_iomap.h"
490struct vm_area_struct;
491#line 18
492struct vm_area_struct;
493#line 37 "include/linux/kmod.h"
494struct cred;
495#line 37
496struct cred;
497#line 18 "include/linux/elf.h"
498typedef __u64 Elf64_Addr;
499#line 19 "include/linux/elf.h"
500typedef __u16 Elf64_Half;
501#line 23 "include/linux/elf.h"
502typedef __u32 Elf64_Word;
503#line 24 "include/linux/elf.h"
504typedef __u64 Elf64_Xword;
505#line 193 "include/linux/elf.h"
506struct elf64_sym {
507 Elf64_Word st_name ;
508 unsigned char st_info ;
509 unsigned char st_other ;
510 Elf64_Half st_shndx ;
511 Elf64_Addr st_value ;
512 Elf64_Xword st_size ;
513};
514#line 201 "include/linux/elf.h"
515typedef struct elf64_sym Elf64_Sym;
516#line 445
517struct sock;
518#line 445
519struct sock;
520#line 446
521struct kobject;
522#line 446
523struct kobject;
524#line 447
525enum kobj_ns_type {
526 KOBJ_NS_TYPE_NONE = 0,
527 KOBJ_NS_TYPE_NET = 1,
528 KOBJ_NS_TYPES = 2
529} ;
530#line 453 "include/linux/elf.h"
531struct kobj_ns_type_operations {
532 enum kobj_ns_type type ;
533 void *(*grab_current_ns)(void) ;
534 void const *(*netlink_ns)(struct sock * ) ;
535 void const *(*initial_ns)(void) ;
536 void (*drop_ns)(void * ) ;
537};
538#line 57 "include/linux/kobject_ns.h"
539struct attribute {
540 char const *name ;
541 umode_t mode ;
542 struct lock_class_key *key ;
543 struct lock_class_key skey ;
544};
545#line 33 "include/linux/sysfs.h"
546struct attribute_group {
547 char const *name ;
548 umode_t (*is_visible)(struct kobject * , struct attribute * , int ) ;
549 struct attribute **attrs ;
550};
551#line 62 "include/linux/sysfs.h"
552struct bin_attribute {
553 struct attribute attr ;
554 size_t size ;
555 void *private ;
556 ssize_t (*read)(struct file * , struct kobject * , struct bin_attribute * , char * ,
557 loff_t , size_t ) ;
558 ssize_t (*write)(struct file * , struct kobject * , struct bin_attribute * , char * ,
559 loff_t , size_t ) ;
560 int (*mmap)(struct file * , struct kobject * , struct bin_attribute * , struct vm_area_struct * ) ;
561};
562#line 98 "include/linux/sysfs.h"
563struct sysfs_ops {
564 ssize_t (*show)(struct kobject * , struct attribute * , char * ) ;
565 ssize_t (*store)(struct kobject * , struct attribute * , char const * , size_t ) ;
566 void const *(*namespace)(struct kobject * , struct attribute const * ) ;
567};
568#line 117
569struct sysfs_dirent;
570#line 117
571struct sysfs_dirent;
572#line 182 "include/linux/sysfs.h"
573struct kref {
574 atomic_t refcount ;
575};
576#line 49 "include/linux/kobject.h"
577struct kset;
578#line 49
579struct kobj_type;
580#line 49 "include/linux/kobject.h"
581struct kobject {
582 char const *name ;
583 struct list_head entry ;
584 struct kobject *parent ;
585 struct kset *kset ;
586 struct kobj_type *ktype ;
587 struct sysfs_dirent *sd ;
588 struct kref kref ;
589 unsigned char state_initialized : 1 ;
590 unsigned char state_in_sysfs : 1 ;
591 unsigned char state_add_uevent_sent : 1 ;
592 unsigned char state_remove_uevent_sent : 1 ;
593 unsigned char uevent_suppress : 1 ;
594};
595#line 107 "include/linux/kobject.h"
596struct kobj_type {
597 void (*release)(struct kobject * ) ;
598 struct sysfs_ops const *sysfs_ops ;
599 struct attribute **default_attrs ;
600 struct kobj_ns_type_operations const *(*child_ns_type)(struct kobject * ) ;
601 void const *(*namespace)(struct kobject * ) ;
602};
603#line 115 "include/linux/kobject.h"
604struct kobj_uevent_env {
605 char *envp[32U] ;
606 int envp_idx ;
607 char buf[2048U] ;
608 int buflen ;
609};
610#line 122 "include/linux/kobject.h"
611struct kset_uevent_ops {
612 int (* const filter)(struct kset * , struct kobject * ) ;
613 char const *(* const name)(struct kset * , struct kobject * ) ;
614 int (* const uevent)(struct kset * , struct kobject * , struct kobj_uevent_env * ) ;
615};
616#line 139 "include/linux/kobject.h"
617struct kset {
618 struct list_head list ;
619 spinlock_t list_lock ;
620 struct kobject kobj ;
621 struct kset_uevent_ops const *uevent_ops ;
622};
623#line 215
624struct kernel_param;
625#line 215
626struct kernel_param;
627#line 216 "include/linux/kobject.h"
628struct kernel_param_ops {
629 int (*set)(char const * , struct kernel_param const * ) ;
630 int (*get)(char * , struct kernel_param const * ) ;
631 void (*free)(void * ) ;
632};
633#line 49 "include/linux/moduleparam.h"
634struct kparam_string;
635#line 49
636struct kparam_array;
637#line 49 "include/linux/moduleparam.h"
638union __anonunion_ldv_13363_134 {
639 void *arg ;
640 struct kparam_string const *str ;
641 struct kparam_array const *arr ;
642};
643#line 49 "include/linux/moduleparam.h"
644struct kernel_param {
645 char const *name ;
646 struct kernel_param_ops const *ops ;
647 u16 perm ;
648 s16 level ;
649 union __anonunion_ldv_13363_134 ldv_13363 ;
650};
651#line 61 "include/linux/moduleparam.h"
652struct kparam_string {
653 unsigned int maxlen ;
654 char *string ;
655};
656#line 67 "include/linux/moduleparam.h"
657struct kparam_array {
658 unsigned int max ;
659 unsigned int elemsize ;
660 unsigned int *num ;
661 struct kernel_param_ops const *ops ;
662 void *elem ;
663};
664#line 458 "include/linux/moduleparam.h"
665struct static_key {
666 atomic_t enabled ;
667};
668#line 225 "include/linux/jump_label.h"
669struct tracepoint;
670#line 225
671struct tracepoint;
672#line 226 "include/linux/jump_label.h"
673struct tracepoint_func {
674 void *func ;
675 void *data ;
676};
677#line 29 "include/linux/tracepoint.h"
678struct tracepoint {
679 char const *name ;
680 struct static_key key ;
681 void (*regfunc)(void) ;
682 void (*unregfunc)(void) ;
683 struct tracepoint_func *funcs ;
684};
685#line 86 "include/linux/tracepoint.h"
686struct kernel_symbol {
687 unsigned long value ;
688 char const *name ;
689};
690#line 27 "include/linux/export.h"
691struct mod_arch_specific {
692
693};
694#line 34 "include/linux/module.h"
695struct module_param_attrs;
696#line 34 "include/linux/module.h"
697struct module_kobject {
698 struct kobject kobj ;
699 struct module *mod ;
700 struct kobject *drivers_dir ;
701 struct module_param_attrs *mp ;
702};
703#line 43 "include/linux/module.h"
704struct module_attribute {
705 struct attribute attr ;
706 ssize_t (*show)(struct module_attribute * , struct module_kobject * , char * ) ;
707 ssize_t (*store)(struct module_attribute * , struct module_kobject * , char const * ,
708 size_t ) ;
709 void (*setup)(struct module * , char const * ) ;
710 int (*test)(struct module * ) ;
711 void (*free)(struct module * ) ;
712};
713#line 69
714struct exception_table_entry;
715#line 69
716struct exception_table_entry;
717#line 198
718enum module_state {
719 MODULE_STATE_LIVE = 0,
720 MODULE_STATE_COMING = 1,
721 MODULE_STATE_GOING = 2
722} ;
723#line 204 "include/linux/module.h"
724struct module_ref {
725 unsigned long incs ;
726 unsigned long decs ;
727};
728#line 219
729struct module_sect_attrs;
730#line 219
731struct module_notes_attrs;
732#line 219
733struct ftrace_event_call;
734#line 219 "include/linux/module.h"
735struct module {
736 enum module_state state ;
737 struct list_head list ;
738 char name[56U] ;
739 struct module_kobject mkobj ;
740 struct module_attribute *modinfo_attrs ;
741 char const *version ;
742 char const *srcversion ;
743 struct kobject *holders_dir ;
744 struct kernel_symbol const *syms ;
745 unsigned long const *crcs ;
746 unsigned int num_syms ;
747 struct kernel_param *kp ;
748 unsigned int num_kp ;
749 unsigned int num_gpl_syms ;
750 struct kernel_symbol const *gpl_syms ;
751 unsigned long const *gpl_crcs ;
752 struct kernel_symbol const *unused_syms ;
753 unsigned long const *unused_crcs ;
754 unsigned int num_unused_syms ;
755 unsigned int num_unused_gpl_syms ;
756 struct kernel_symbol const *unused_gpl_syms ;
757 unsigned long const *unused_gpl_crcs ;
758 struct kernel_symbol const *gpl_future_syms ;
759 unsigned long const *gpl_future_crcs ;
760 unsigned int num_gpl_future_syms ;
761 unsigned int num_exentries ;
762 struct exception_table_entry *extable ;
763 int (*init)(void) ;
764 void *module_init ;
765 void *module_core ;
766 unsigned int init_size ;
767 unsigned int core_size ;
768 unsigned int init_text_size ;
769 unsigned int core_text_size ;
770 unsigned int init_ro_size ;
771 unsigned int core_ro_size ;
772 struct mod_arch_specific arch ;
773 unsigned int taints ;
774 unsigned int num_bugs ;
775 struct list_head bug_list ;
776 struct bug_entry *bug_table ;
777 Elf64_Sym *symtab ;
778 Elf64_Sym *core_symtab ;
779 unsigned int num_symtab ;
780 unsigned int core_num_syms ;
781 char *strtab ;
782 char *core_strtab ;
783 struct module_sect_attrs *sect_attrs ;
784 struct module_notes_attrs *notes_attrs ;
785 char *args ;
786 void *percpu ;
787 unsigned int percpu_size ;
788 unsigned int num_tracepoints ;
789 struct tracepoint * const *tracepoints_ptrs ;
790 unsigned int num_trace_bprintk_fmt ;
791 char const **trace_bprintk_fmt_start ;
792 struct ftrace_event_call **trace_events ;
793 unsigned int num_trace_events ;
794 struct list_head source_list ;
795 struct list_head target_list ;
796 struct task_struct *waiter ;
797 void (*exit)(void) ;
798 struct module_ref *refptr ;
799 ctor_fn_t (**ctors)(void) ;
800 unsigned int num_ctors ;
801};
802#line 88 "include/linux/kmemleak.h"
803struct kmem_cache_cpu {
804 void **freelist ;
805 unsigned long tid ;
806 struct page *page ;
807 struct page *partial ;
808 int node ;
809 unsigned int stat[26U] ;
810};
811#line 55 "include/linux/slub_def.h"
812struct kmem_cache_node {
813 spinlock_t list_lock ;
814 unsigned long nr_partial ;
815 struct list_head partial ;
816 atomic_long_t nr_slabs ;
817 atomic_long_t total_objects ;
818 struct list_head full ;
819};
820#line 66 "include/linux/slub_def.h"
821struct kmem_cache_order_objects {
822 unsigned long x ;
823};
824#line 76 "include/linux/slub_def.h"
825struct kmem_cache {
826 struct kmem_cache_cpu *cpu_slab ;
827 unsigned long flags ;
828 unsigned long min_partial ;
829 int size ;
830 int objsize ;
831 int offset ;
832 int cpu_partial ;
833 struct kmem_cache_order_objects oo ;
834 struct kmem_cache_order_objects max ;
835 struct kmem_cache_order_objects min ;
836 gfp_t allocflags ;
837 int refcount ;
838 void (*ctor)(void * ) ;
839 int inuse ;
840 int align ;
841 int reserved ;
842 char const *name ;
843 struct list_head list ;
844 struct kobject kobj ;
845 int remote_node_defrag_ratio ;
846 struct kmem_cache_node *node[1024U] ;
847};
848#line 32 "include/linux/input.h"
849struct input_id {
850 __u16 bustype ;
851 __u16 vendor ;
852 __u16 product ;
853 __u16 version ;
854};
855#line 49 "include/linux/input.h"
856struct input_absinfo {
857 __s32 value ;
858 __s32 minimum ;
859 __s32 maximum ;
860 __s32 fuzz ;
861 __s32 flat ;
862 __s32 resolution ;
863};
864#line 77 "include/linux/input.h"
865struct input_keymap_entry {
866 __u8 flags ;
867 __u8 len ;
868 __u16 index ;
869 __u32 keycode ;
870 __u8 scancode[32U] ;
871};
872#line 101 "include/linux/input.h"
873struct ff_replay {
874 __u16 length ;
875 __u16 delay ;
876};
877#line 961 "include/linux/input.h"
878struct ff_trigger {
879 __u16 button ;
880 __u16 interval ;
881};
882#line 971 "include/linux/input.h"
883struct ff_envelope {
884 __u16 attack_length ;
885 __u16 attack_level ;
886 __u16 fade_length ;
887 __u16 fade_level ;
888};
889#line 990 "include/linux/input.h"
890struct ff_constant_effect {
891 __s16 level ;
892 struct ff_envelope envelope ;
893};
894#line 1000 "include/linux/input.h"
895struct ff_ramp_effect {
896 __s16 start_level ;
897 __s16 end_level ;
898 struct ff_envelope envelope ;
899};
900#line 1012 "include/linux/input.h"
901struct ff_condition_effect {
902 __u16 right_saturation ;
903 __u16 left_saturation ;
904 __s16 right_coeff ;
905 __s16 left_coeff ;
906 __u16 deadband ;
907 __s16 center ;
908};
909#line 1033 "include/linux/input.h"
910struct ff_periodic_effect {
911 __u16 waveform ;
912 __u16 period ;
913 __s16 magnitude ;
914 __s16 offset ;
915 __u16 phase ;
916 struct ff_envelope envelope ;
917 __u32 custom_len ;
918 __s16 *custom_data ;
919};
920#line 1064 "include/linux/input.h"
921struct ff_rumble_effect {
922 __u16 strong_magnitude ;
923 __u16 weak_magnitude ;
924};
925#line 1077 "include/linux/input.h"
926union __anonunion_u_135 {
927 struct ff_constant_effect constant ;
928 struct ff_ramp_effect ramp ;
929 struct ff_periodic_effect periodic ;
930 struct ff_condition_effect condition[2U] ;
931 struct ff_rumble_effect rumble ;
932};
933#line 1077 "include/linux/input.h"
934struct ff_effect {
935 __u16 type ;
936 __s16 id ;
937 __u16 direction ;
938 struct ff_trigger trigger ;
939 struct ff_replay replay ;
940 union __anonunion_u_135 u ;
941};
942#line 1116
943struct klist_node;
944#line 1116
945struct klist_node;
946#line 37 "include/linux/klist.h"
947struct klist_node {
948 void *n_klist ;
949 struct list_head n_node ;
950 struct kref n_ref ;
951};
952#line 67
953struct dma_map_ops;
954#line 67 "include/linux/klist.h"
955struct dev_archdata {
956 void *acpi_handle ;
957 struct dma_map_ops *dma_ops ;
958 void *iommu ;
959};
960#line 17 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/device.h"
961struct device_private;
962#line 17
963struct device_private;
964#line 18
965struct device_driver;
966#line 18
967struct device_driver;
968#line 19
969struct driver_private;
970#line 19
971struct driver_private;
972#line 20
973struct class;
974#line 20
975struct class;
976#line 21
977struct subsys_private;
978#line 21
979struct subsys_private;
980#line 22
981struct bus_type;
982#line 22
983struct bus_type;
984#line 23
985struct device_node;
986#line 23
987struct device_node;
988#line 24
989struct iommu_ops;
990#line 24
991struct iommu_ops;
992#line 25 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/device.h"
993struct bus_attribute {
994 struct attribute attr ;
995 ssize_t (*show)(struct bus_type * , char * ) ;
996 ssize_t (*store)(struct bus_type * , char const * , size_t ) ;
997};
998#line 51 "include/linux/device.h"
999struct device_attribute;
1000#line 51
1001struct driver_attribute;
1002#line 51 "include/linux/device.h"
1003struct bus_type {
1004 char const *name ;
1005 char const *dev_name ;
1006 struct device *dev_root ;
1007 struct bus_attribute *bus_attrs ;
1008 struct device_attribute *dev_attrs ;
1009 struct driver_attribute *drv_attrs ;
1010 int (*match)(struct device * , struct device_driver * ) ;
1011 int (*uevent)(struct device * , struct kobj_uevent_env * ) ;
1012 int (*probe)(struct device * ) ;
1013 int (*remove)(struct device * ) ;
1014 void (*shutdown)(struct device * ) ;
1015 int (*suspend)(struct device * , pm_message_t ) ;
1016 int (*resume)(struct device * ) ;
1017 struct dev_pm_ops const *pm ;
1018 struct iommu_ops *iommu_ops ;
1019 struct subsys_private *p ;
1020};
1021#line 125
1022struct device_type;
1023#line 182
1024struct of_device_id;
1025#line 182 "include/linux/device.h"
1026struct device_driver {
1027 char const *name ;
1028 struct bus_type *bus ;
1029 struct module *owner ;
1030 char const *mod_name ;
1031 bool suppress_bind_attrs ;
1032 struct of_device_id const *of_match_table ;
1033 int (*probe)(struct device * ) ;
1034 int (*remove)(struct device * ) ;
1035 void (*shutdown)(struct device * ) ;
1036 int (*suspend)(struct device * , pm_message_t ) ;
1037 int (*resume)(struct device * ) ;
1038 struct attribute_group const **groups ;
1039 struct dev_pm_ops const *pm ;
1040 struct driver_private *p ;
1041};
1042#line 245 "include/linux/device.h"
1043struct driver_attribute {
1044 struct attribute attr ;
1045 ssize_t (*show)(struct device_driver * , char * ) ;
1046 ssize_t (*store)(struct device_driver * , char const * , size_t ) ;
1047};
1048#line 299
1049struct class_attribute;
1050#line 299 "include/linux/device.h"
1051struct class {
1052 char const *name ;
1053 struct module *owner ;
1054 struct class_attribute *class_attrs ;
1055 struct device_attribute *dev_attrs ;
1056 struct bin_attribute *dev_bin_attrs ;
1057 struct kobject *dev_kobj ;
1058 int (*dev_uevent)(struct device * , struct kobj_uevent_env * ) ;
1059 char *(*devnode)(struct device * , umode_t * ) ;
1060 void (*class_release)(struct class * ) ;
1061 void (*dev_release)(struct device * ) ;
1062 int (*suspend)(struct device * , pm_message_t ) ;
1063 int (*resume)(struct device * ) ;
1064 struct kobj_ns_type_operations const *ns_type ;
1065 void const *(*namespace)(struct device * ) ;
1066 struct dev_pm_ops const *pm ;
1067 struct subsys_private *p ;
1068};
1069#line 394 "include/linux/device.h"
1070struct class_attribute {
1071 struct attribute attr ;
1072 ssize_t (*show)(struct class * , struct class_attribute * , char * ) ;
1073 ssize_t (*store)(struct class * , struct class_attribute * , char const * , size_t ) ;
1074 void const *(*namespace)(struct class * , struct class_attribute const * ) ;
1075};
1076#line 447 "include/linux/device.h"
1077struct device_type {
1078 char const *name ;
1079 struct attribute_group const **groups ;
1080 int (*uevent)(struct device * , struct kobj_uevent_env * ) ;
1081 char *(*devnode)(struct device * , umode_t * ) ;
1082 void (*release)(struct device * ) ;
1083 struct dev_pm_ops const *pm ;
1084};
1085#line 474 "include/linux/device.h"
1086struct device_attribute {
1087 struct attribute attr ;
1088 ssize_t (*show)(struct device * , struct device_attribute * , char * ) ;
1089 ssize_t (*store)(struct device * , struct device_attribute * , char const * ,
1090 size_t ) ;
1091};
1092#line 557 "include/linux/device.h"
1093struct device_dma_parameters {
1094 unsigned int max_segment_size ;
1095 unsigned long segment_boundary_mask ;
1096};
1097#line 567
1098struct dma_coherent_mem;
1099#line 567 "include/linux/device.h"
1100struct device {
1101 struct device *parent ;
1102 struct device_private *p ;
1103 struct kobject kobj ;
1104 char const *init_name ;
1105 struct device_type const *type ;
1106 struct mutex mutex ;
1107 struct bus_type *bus ;
1108 struct device_driver *driver ;
1109 void *platform_data ;
1110 struct dev_pm_info power ;
1111 struct dev_pm_domain *pm_domain ;
1112 int numa_node ;
1113 u64 *dma_mask ;
1114 u64 coherent_dma_mask ;
1115 struct device_dma_parameters *dma_parms ;
1116 struct list_head dma_pools ;
1117 struct dma_coherent_mem *dma_mem ;
1118 struct dev_archdata archdata ;
1119 struct device_node *of_node ;
1120 dev_t devt ;
1121 u32 id ;
1122 spinlock_t devres_lock ;
1123 struct list_head devres_head ;
1124 struct klist_node knode_class ;
1125 struct class *class ;
1126 struct attribute_group const **groups ;
1127 void (*release)(struct device * ) ;
1128};
1129#line 681 "include/linux/device.h"
1130struct wakeup_source {
1131 char const *name ;
1132 struct list_head entry ;
1133 spinlock_t lock ;
1134 struct timer_list timer ;
1135 unsigned long timer_expires ;
1136 ktime_t total_time ;
1137 ktime_t max_time ;
1138 ktime_t last_time ;
1139 unsigned long event_count ;
1140 unsigned long active_count ;
1141 unsigned long relax_count ;
1142 unsigned long hit_count ;
1143 unsigned char active : 1 ;
1144};
1145#line 994
1146struct block_device;
1147#line 994
1148struct block_device;
1149#line 93 "include/linux/bit_spinlock.h"
1150struct hlist_bl_node;
1151#line 93 "include/linux/bit_spinlock.h"
1152struct hlist_bl_head {
1153 struct hlist_bl_node *first ;
1154};
1155#line 36 "include/linux/list_bl.h"
1156struct hlist_bl_node {
1157 struct hlist_bl_node *next ;
1158 struct hlist_bl_node **pprev ;
1159};
1160#line 114 "include/linux/rculist_bl.h"
1161struct nameidata;
1162#line 114
1163struct nameidata;
1164#line 115
1165struct path;
1166#line 115
1167struct path;
1168#line 116
1169struct vfsmount;
1170#line 116
1171struct vfsmount;
1172#line 117 "include/linux/rculist_bl.h"
1173struct qstr {
1174 unsigned int hash ;
1175 unsigned int len ;
1176 unsigned char const *name ;
1177};
1178#line 72 "include/linux/dcache.h"
1179struct inode;
1180#line 72
1181struct dentry_operations;
1182#line 72
1183struct super_block;
1184#line 72 "include/linux/dcache.h"
1185union __anonunion_d_u_136 {
1186 struct list_head d_child ;
1187 struct rcu_head d_rcu ;
1188};
1189#line 72 "include/linux/dcache.h"
1190struct dentry {
1191 unsigned int d_flags ;
1192 seqcount_t d_seq ;
1193 struct hlist_bl_node d_hash ;
1194 struct dentry *d_parent ;
1195 struct qstr d_name ;
1196 struct inode *d_inode ;
1197 unsigned char d_iname[32U] ;
1198 unsigned int d_count ;
1199 spinlock_t d_lock ;
1200 struct dentry_operations const *d_op ;
1201 struct super_block *d_sb ;
1202 unsigned long d_time ;
1203 void *d_fsdata ;
1204 struct list_head d_lru ;
1205 union __anonunion_d_u_136 d_u ;
1206 struct list_head d_subdirs ;
1207 struct list_head d_alias ;
1208};
1209#line 123 "include/linux/dcache.h"
1210struct dentry_operations {
1211 int (*d_revalidate)(struct dentry * , struct nameidata * ) ;
1212 int (*d_hash)(struct dentry const * , struct inode const * , struct qstr * ) ;
1213 int (*d_compare)(struct dentry const * , struct inode const * , struct dentry const * ,
1214 struct inode const * , unsigned int , char const * , struct qstr const * ) ;
1215 int (*d_delete)(struct dentry const * ) ;
1216 void (*d_release)(struct dentry * ) ;
1217 void (*d_prune)(struct dentry * ) ;
1218 void (*d_iput)(struct dentry * , struct inode * ) ;
1219 char *(*d_dname)(struct dentry * , char * , int ) ;
1220 struct vfsmount *(*d_automount)(struct path * ) ;
1221 int (*d_manage)(struct dentry * , bool ) ;
1222};
1223#line 402 "include/linux/dcache.h"
1224struct path {
1225 struct vfsmount *mnt ;
1226 struct dentry *dentry ;
1227};
1228#line 58 "include/linux/radix-tree.h"
1229struct radix_tree_node;
1230#line 58 "include/linux/radix-tree.h"
1231struct radix_tree_root {
1232 unsigned int height ;
1233 gfp_t gfp_mask ;
1234 struct radix_tree_node *rnode ;
1235};
1236#line 377
1237struct prio_tree_node;
1238#line 19 "include/linux/prio_tree.h"
1239struct prio_tree_node {
1240 struct prio_tree_node *left ;
1241 struct prio_tree_node *right ;
1242 struct prio_tree_node *parent ;
1243 unsigned long start ;
1244 unsigned long last ;
1245};
1246#line 27 "include/linux/prio_tree.h"
1247struct prio_tree_root {
1248 struct prio_tree_node *prio_tree_node ;
1249 unsigned short index_bits ;
1250 unsigned short raw ;
1251};
1252#line 111
1253enum pid_type {
1254 PIDTYPE_PID = 0,
1255 PIDTYPE_PGID = 1,
1256 PIDTYPE_SID = 2,
1257 PIDTYPE_MAX = 3
1258} ;
1259#line 118
1260struct pid_namespace;
1261#line 118 "include/linux/prio_tree.h"
1262struct upid {
1263 int nr ;
1264 struct pid_namespace *ns ;
1265 struct hlist_node pid_chain ;
1266};
1267#line 56 "include/linux/pid.h"
1268struct pid {
1269 atomic_t count ;
1270 unsigned int level ;
1271 struct hlist_head tasks[3U] ;
1272 struct rcu_head rcu ;
1273 struct upid numbers[1U] ;
1274};
1275#line 45 "include/linux/semaphore.h"
1276struct fiemap_extent {
1277 __u64 fe_logical ;
1278 __u64 fe_physical ;
1279 __u64 fe_length ;
1280 __u64 fe_reserved64[2U] ;
1281 __u32 fe_flags ;
1282 __u32 fe_reserved[3U] ;
1283};
1284#line 38 "include/linux/fiemap.h"
1285struct shrink_control {
1286 gfp_t gfp_mask ;
1287 unsigned long nr_to_scan ;
1288};
1289#line 14 "include/linux/shrinker.h"
1290struct shrinker {
1291 int (*shrink)(struct shrinker * , struct shrink_control * ) ;
1292 int seeks ;
1293 long batch ;
1294 struct list_head list ;
1295 atomic_long_t nr_in_batch ;
1296};
1297#line 43
1298enum migrate_mode {
1299 MIGRATE_ASYNC = 0,
1300 MIGRATE_SYNC_LIGHT = 1,
1301 MIGRATE_SYNC = 2
1302} ;
1303#line 49
1304struct export_operations;
1305#line 49
1306struct export_operations;
1307#line 51
1308struct iovec;
1309#line 51
1310struct iovec;
1311#line 52
1312struct kiocb;
1313#line 52
1314struct kiocb;
1315#line 53
1316struct pipe_inode_info;
1317#line 53
1318struct pipe_inode_info;
1319#line 54
1320struct poll_table_struct;
1321#line 54
1322struct poll_table_struct;
1323#line 55
1324struct kstatfs;
1325#line 55
1326struct kstatfs;
1327#line 435 "include/linux/fs.h"
1328struct iattr {
1329 unsigned int ia_valid ;
1330 umode_t ia_mode ;
1331 uid_t ia_uid ;
1332 gid_t ia_gid ;
1333 loff_t ia_size ;
1334 struct timespec ia_atime ;
1335 struct timespec ia_mtime ;
1336 struct timespec ia_ctime ;
1337 struct file *ia_file ;
1338};
1339#line 119 "include/linux/quota.h"
1340struct if_dqinfo {
1341 __u64 dqi_bgrace ;
1342 __u64 dqi_igrace ;
1343 __u32 dqi_flags ;
1344 __u32 dqi_valid ;
1345};
1346#line 176 "include/linux/percpu_counter.h"
1347struct fs_disk_quota {
1348 __s8 d_version ;
1349 __s8 d_flags ;
1350 __u16 d_fieldmask ;
1351 __u32 d_id ;
1352 __u64 d_blk_hardlimit ;
1353 __u64 d_blk_softlimit ;
1354 __u64 d_ino_hardlimit ;
1355 __u64 d_ino_softlimit ;
1356 __u64 d_bcount ;
1357 __u64 d_icount ;
1358 __s32 d_itimer ;
1359 __s32 d_btimer ;
1360 __u16 d_iwarns ;
1361 __u16 d_bwarns ;
1362 __s32 d_padding2 ;
1363 __u64 d_rtb_hardlimit ;
1364 __u64 d_rtb_softlimit ;
1365 __u64 d_rtbcount ;
1366 __s32 d_rtbtimer ;
1367 __u16 d_rtbwarns ;
1368 __s16 d_padding3 ;
1369 char d_padding4[8U] ;
1370};
1371#line 75 "include/linux/dqblk_xfs.h"
1372struct fs_qfilestat {
1373 __u64 qfs_ino ;
1374 __u64 qfs_nblks ;
1375 __u32 qfs_nextents ;
1376};
1377#line 150 "include/linux/dqblk_xfs.h"
1378typedef struct fs_qfilestat fs_qfilestat_t;
1379#line 151 "include/linux/dqblk_xfs.h"
1380struct fs_quota_stat {
1381 __s8 qs_version ;
1382 __u16 qs_flags ;
1383 __s8 qs_pad ;
1384 fs_qfilestat_t qs_uquota ;
1385 fs_qfilestat_t qs_gquota ;
1386 __u32 qs_incoredqs ;
1387 __s32 qs_btimelimit ;
1388 __s32 qs_itimelimit ;
1389 __s32 qs_rtbtimelimit ;
1390 __u16 qs_bwarnlimit ;
1391 __u16 qs_iwarnlimit ;
1392};
1393#line 165
1394struct dquot;
1395#line 165
1396struct dquot;
1397#line 185 "include/linux/quota.h"
1398typedef __kernel_uid32_t qid_t;
1399#line 186 "include/linux/quota.h"
1400typedef long long qsize_t;
1401#line 189 "include/linux/quota.h"
1402struct mem_dqblk {
1403 qsize_t dqb_bhardlimit ;
1404 qsize_t dqb_bsoftlimit ;
1405 qsize_t dqb_curspace ;
1406 qsize_t dqb_rsvspace ;
1407 qsize_t dqb_ihardlimit ;
1408 qsize_t dqb_isoftlimit ;
1409 qsize_t dqb_curinodes ;
1410 time_t dqb_btime ;
1411 time_t dqb_itime ;
1412};
1413#line 211
1414struct quota_format_type;
1415#line 211
1416struct quota_format_type;
1417#line 212 "include/linux/quota.h"
1418struct mem_dqinfo {
1419 struct quota_format_type *dqi_format ;
1420 int dqi_fmt_id ;
1421 struct list_head dqi_dirty_list ;
1422 unsigned long dqi_flags ;
1423 unsigned int dqi_bgrace ;
1424 unsigned int dqi_igrace ;
1425 qsize_t dqi_maxblimit ;
1426 qsize_t dqi_maxilimit ;
1427 void *dqi_priv ;
1428};
1429#line 275 "include/linux/quota.h"
1430struct dquot {
1431 struct hlist_node dq_hash ;
1432 struct list_head dq_inuse ;
1433 struct list_head dq_free ;
1434 struct list_head dq_dirty ;
1435 struct mutex dq_lock ;
1436 atomic_t dq_count ;
1437 wait_queue_head_t dq_wait_unused ;
1438 struct super_block *dq_sb ;
1439 unsigned int dq_id ;
1440 loff_t dq_off ;
1441 unsigned long dq_flags ;
1442 short dq_type ;
1443 struct mem_dqblk dq_dqb ;
1444};
1445#line 303 "include/linux/quota.h"
1446struct quota_format_ops {
1447 int (*check_quota_file)(struct super_block * , int ) ;
1448 int (*read_file_info)(struct super_block * , int ) ;
1449 int (*write_file_info)(struct super_block * , int ) ;
1450 int (*free_file_info)(struct super_block * , int ) ;
1451 int (*read_dqblk)(struct dquot * ) ;
1452 int (*commit_dqblk)(struct dquot * ) ;
1453 int (*release_dqblk)(struct dquot * ) ;
1454};
1455#line 314 "include/linux/quota.h"
1456struct dquot_operations {
1457 int (*write_dquot)(struct dquot * ) ;
1458 struct dquot *(*alloc_dquot)(struct super_block * , int ) ;
1459 void (*destroy_dquot)(struct dquot * ) ;
1460 int (*acquire_dquot)(struct dquot * ) ;
1461 int (*release_dquot)(struct dquot * ) ;
1462 int (*mark_dirty)(struct dquot * ) ;
1463 int (*write_info)(struct super_block * , int ) ;
1464 qsize_t *(*get_reserved_space)(struct inode * ) ;
1465};
1466#line 328 "include/linux/quota.h"
1467struct quotactl_ops {
1468 int (*quota_on)(struct super_block * , int , int , struct path * ) ;
1469 int (*quota_on_meta)(struct super_block * , int , int ) ;
1470 int (*quota_off)(struct super_block * , int ) ;
1471 int (*quota_sync)(struct super_block * , int , int ) ;
1472 int (*get_info)(struct super_block * , int , struct if_dqinfo * ) ;
1473 int (*set_info)(struct super_block * , int , struct if_dqinfo * ) ;
1474 int (*get_dqblk)(struct super_block * , int , qid_t , struct fs_disk_quota * ) ;
1475 int (*set_dqblk)(struct super_block * , int , qid_t , struct fs_disk_quota * ) ;
1476 int (*get_xstate)(struct super_block * , struct fs_quota_stat * ) ;
1477 int (*set_xstate)(struct super_block * , unsigned int , int ) ;
1478};
1479#line 344 "include/linux/quota.h"
1480struct quota_format_type {
1481 int qf_fmt_id ;
1482 struct quota_format_ops const *qf_ops ;
1483 struct module *qf_owner ;
1484 struct quota_format_type *qf_next ;
1485};
1486#line 390 "include/linux/quota.h"
1487struct quota_info {
1488 unsigned int flags ;
1489 struct mutex dqio_mutex ;
1490 struct mutex dqonoff_mutex ;
1491 struct rw_semaphore dqptr_sem ;
1492 struct inode *files[2U] ;
1493 struct mem_dqinfo info[2U] ;
1494 struct quota_format_ops const *ops[2U] ;
1495};
1496#line 421
1497struct address_space;
1498#line 421
1499struct address_space;
1500#line 422
1501struct writeback_control;
1502#line 422
1503struct writeback_control;
1504#line 585 "include/linux/fs.h"
1505union __anonunion_arg_139 {
1506 char *buf ;
1507 void *data ;
1508};
1509#line 585 "include/linux/fs.h"
1510struct __anonstruct_read_descriptor_t_138 {
1511 size_t written ;
1512 size_t count ;
1513 union __anonunion_arg_139 arg ;
1514 int error ;
1515};
1516#line 585 "include/linux/fs.h"
1517typedef struct __anonstruct_read_descriptor_t_138 read_descriptor_t;
1518#line 588 "include/linux/fs.h"
1519struct address_space_operations {
1520 int (*writepage)(struct page * , struct writeback_control * ) ;
1521 int (*readpage)(struct file * , struct page * ) ;
1522 int (*writepages)(struct address_space * , struct writeback_control * ) ;
1523 int (*set_page_dirty)(struct page * ) ;
1524 int (*readpages)(struct file * , struct address_space * , struct list_head * ,
1525 unsigned int ) ;
1526 int (*write_begin)(struct file * , struct address_space * , loff_t , unsigned int ,
1527 unsigned int , struct page ** , void ** ) ;
1528 int (*write_end)(struct file * , struct address_space * , loff_t , unsigned int ,
1529 unsigned int , struct page * , void * ) ;
1530 sector_t (*bmap)(struct address_space * , sector_t ) ;
1531 void (*invalidatepage)(struct page * , unsigned long ) ;
1532 int (*releasepage)(struct page * , gfp_t ) ;
1533 void (*freepage)(struct page * ) ;
1534 ssize_t (*direct_IO)(int , struct kiocb * , struct iovec const * , loff_t ,
1535 unsigned long ) ;
1536 int (*get_xip_mem)(struct address_space * , unsigned long , int , void ** , unsigned long * ) ;
1537 int (*migratepage)(struct address_space * , struct page * , struct page * , enum migrate_mode ) ;
1538 int (*launder_page)(struct page * ) ;
1539 int (*is_partially_uptodate)(struct page * , read_descriptor_t * , unsigned long ) ;
1540 int (*error_remove_page)(struct address_space * , struct page * ) ;
1541};
1542#line 642
1543struct backing_dev_info;
1544#line 642
1545struct backing_dev_info;
1546#line 643 "include/linux/fs.h"
1547struct address_space {
1548 struct inode *host ;
1549 struct radix_tree_root page_tree ;
1550 spinlock_t tree_lock ;
1551 unsigned int i_mmap_writable ;
1552 struct prio_tree_root i_mmap ;
1553 struct list_head i_mmap_nonlinear ;
1554 struct mutex i_mmap_mutex ;
1555 unsigned long nrpages ;
1556 unsigned long writeback_index ;
1557 struct address_space_operations const *a_ops ;
1558 unsigned long flags ;
1559 struct backing_dev_info *backing_dev_info ;
1560 spinlock_t private_lock ;
1561 struct list_head private_list ;
1562 struct address_space *assoc_mapping ;
1563};
1564#line 664
1565struct request_queue;
1566#line 664
1567struct request_queue;
1568#line 665
1569struct hd_struct;
1570#line 665
1571struct gendisk;
1572#line 665 "include/linux/fs.h"
1573struct block_device {
1574 dev_t bd_dev ;
1575 int bd_openers ;
1576 struct inode *bd_inode ;
1577 struct super_block *bd_super ;
1578 struct mutex bd_mutex ;
1579 struct list_head bd_inodes ;
1580 void *bd_claiming ;
1581 void *bd_holder ;
1582 int bd_holders ;
1583 bool bd_write_holder ;
1584 struct list_head bd_holder_disks ;
1585 struct block_device *bd_contains ;
1586 unsigned int bd_block_size ;
1587 struct hd_struct *bd_part ;
1588 unsigned int bd_part_count ;
1589 int bd_invalidated ;
1590 struct gendisk *bd_disk ;
1591 struct request_queue *bd_queue ;
1592 struct list_head bd_list ;
1593 unsigned long bd_private ;
1594 int bd_fsfreeze_count ;
1595 struct mutex bd_fsfreeze_mutex ;
1596};
1597#line 737
1598struct posix_acl;
1599#line 737
1600struct posix_acl;
1601#line 738
1602struct inode_operations;
1603#line 738 "include/linux/fs.h"
1604union __anonunion_ldv_16579_140 {
1605 unsigned int const i_nlink ;
1606 unsigned int __i_nlink ;
1607};
1608#line 738 "include/linux/fs.h"
1609union __anonunion_ldv_16598_141 {
1610 struct list_head i_dentry ;
1611 struct rcu_head i_rcu ;
1612};
1613#line 738
1614struct file_operations;
1615#line 738
1616struct file_lock;
1617#line 738
1618struct cdev;
1619#line 738 "include/linux/fs.h"
1620union __anonunion_ldv_16616_142 {
1621 struct pipe_inode_info *i_pipe ;
1622 struct block_device *i_bdev ;
1623 struct cdev *i_cdev ;
1624};
1625#line 738 "include/linux/fs.h"
1626struct inode {
1627 umode_t i_mode ;
1628 unsigned short i_opflags ;
1629 uid_t i_uid ;
1630 gid_t i_gid ;
1631 unsigned int i_flags ;
1632 struct posix_acl *i_acl ;
1633 struct posix_acl *i_default_acl ;
1634 struct inode_operations const *i_op ;
1635 struct super_block *i_sb ;
1636 struct address_space *i_mapping ;
1637 void *i_security ;
1638 unsigned long i_ino ;
1639 union __anonunion_ldv_16579_140 ldv_16579 ;
1640 dev_t i_rdev ;
1641 struct timespec i_atime ;
1642 struct timespec i_mtime ;
1643 struct timespec i_ctime ;
1644 spinlock_t i_lock ;
1645 unsigned short i_bytes ;
1646 blkcnt_t i_blocks ;
1647 loff_t i_size ;
1648 unsigned long i_state ;
1649 struct mutex i_mutex ;
1650 unsigned long dirtied_when ;
1651 struct hlist_node i_hash ;
1652 struct list_head i_wb_list ;
1653 struct list_head i_lru ;
1654 struct list_head i_sb_list ;
1655 union __anonunion_ldv_16598_141 ldv_16598 ;
1656 atomic_t i_count ;
1657 unsigned int i_blkbits ;
1658 u64 i_version ;
1659 atomic_t i_dio_count ;
1660 atomic_t i_writecount ;
1661 struct file_operations const *i_fop ;
1662 struct file_lock *i_flock ;
1663 struct address_space i_data ;
1664 struct dquot *i_dquot[2U] ;
1665 struct list_head i_devices ;
1666 union __anonunion_ldv_16616_142 ldv_16616 ;
1667 __u32 i_generation ;
1668 __u32 i_fsnotify_mask ;
1669 struct hlist_head i_fsnotify_marks ;
1670 atomic_t i_readcount ;
1671 void *i_private ;
1672};
1673#line 941 "include/linux/fs.h"
1674struct fown_struct {
1675 rwlock_t lock ;
1676 struct pid *pid ;
1677 enum pid_type pid_type ;
1678 uid_t uid ;
1679 uid_t euid ;
1680 int signum ;
1681};
1682#line 949 "include/linux/fs.h"
1683struct file_ra_state {
1684 unsigned long start ;
1685 unsigned int size ;
1686 unsigned int async_size ;
1687 unsigned int ra_pages ;
1688 unsigned int mmap_miss ;
1689 loff_t prev_pos ;
1690};
1691#line 972 "include/linux/fs.h"
1692union __anonunion_f_u_143 {
1693 struct list_head fu_list ;
1694 struct rcu_head fu_rcuhead ;
1695};
1696#line 972 "include/linux/fs.h"
1697struct file {
1698 union __anonunion_f_u_143 f_u ;
1699 struct path f_path ;
1700 struct file_operations const *f_op ;
1701 spinlock_t f_lock ;
1702 int f_sb_list_cpu ;
1703 atomic_long_t f_count ;
1704 unsigned int f_flags ;
1705 fmode_t f_mode ;
1706 loff_t f_pos ;
1707 struct fown_struct f_owner ;
1708 struct cred const *f_cred ;
1709 struct file_ra_state f_ra ;
1710 u64 f_version ;
1711 void *f_security ;
1712 void *private_data ;
1713 struct list_head f_ep_links ;
1714 struct list_head f_tfile_llink ;
1715 struct address_space *f_mapping ;
1716 unsigned long f_mnt_write_state ;
1717};
1718#line 1111
1719struct files_struct;
1720#line 1111 "include/linux/fs.h"
1721typedef struct files_struct *fl_owner_t;
1722#line 1112 "include/linux/fs.h"
1723struct file_lock_operations {
1724 void (*fl_copy_lock)(struct file_lock * , struct file_lock * ) ;
1725 void (*fl_release_private)(struct file_lock * ) ;
1726};
1727#line 1117 "include/linux/fs.h"
1728struct lock_manager_operations {
1729 int (*lm_compare_owner)(struct file_lock * , struct file_lock * ) ;
1730 void (*lm_notify)(struct file_lock * ) ;
1731 int (*lm_grant)(struct file_lock * , struct file_lock * , int ) ;
1732 void (*lm_release_private)(struct file_lock * ) ;
1733 void (*lm_break)(struct file_lock * ) ;
1734 int (*lm_change)(struct file_lock ** , int ) ;
1735};
1736#line 1134
1737struct nlm_lockowner;
1738#line 1134
1739struct nlm_lockowner;
1740#line 1135 "include/linux/fs.h"
1741struct nfs_lock_info {
1742 u32 state ;
1743 struct nlm_lockowner *owner ;
1744 struct list_head list ;
1745};
1746#line 14 "include/linux/nfs_fs_i.h"
1747struct nfs4_lock_state;
1748#line 14
1749struct nfs4_lock_state;
1750#line 15 "include/linux/nfs_fs_i.h"
1751struct nfs4_lock_info {
1752 struct nfs4_lock_state *owner ;
1753};
1754#line 19
1755struct fasync_struct;
1756#line 19 "include/linux/nfs_fs_i.h"
1757struct __anonstruct_afs_145 {
1758 struct list_head link ;
1759 int state ;
1760};
1761#line 19 "include/linux/nfs_fs_i.h"
1762union __anonunion_fl_u_144 {
1763 struct nfs_lock_info nfs_fl ;
1764 struct nfs4_lock_info nfs4_fl ;
1765 struct __anonstruct_afs_145 afs ;
1766};
1767#line 19 "include/linux/nfs_fs_i.h"
1768struct file_lock {
1769 struct file_lock *fl_next ;
1770 struct list_head fl_link ;
1771 struct list_head fl_block ;
1772 fl_owner_t fl_owner ;
1773 unsigned int fl_flags ;
1774 unsigned char fl_type ;
1775 unsigned int fl_pid ;
1776 struct pid *fl_nspid ;
1777 wait_queue_head_t fl_wait ;
1778 struct file *fl_file ;
1779 loff_t fl_start ;
1780 loff_t fl_end ;
1781 struct fasync_struct *fl_fasync ;
1782 unsigned long fl_break_time ;
1783 unsigned long fl_downgrade_time ;
1784 struct file_lock_operations const *fl_ops ;
1785 struct lock_manager_operations const *fl_lmops ;
1786 union __anonunion_fl_u_144 fl_u ;
1787};
1788#line 1221 "include/linux/fs.h"
1789struct fasync_struct {
1790 spinlock_t fa_lock ;
1791 int magic ;
1792 int fa_fd ;
1793 struct fasync_struct *fa_next ;
1794 struct file *fa_file ;
1795 struct rcu_head fa_rcu ;
1796};
1797#line 1417
1798struct file_system_type;
1799#line 1417
1800struct super_operations;
1801#line 1417
1802struct xattr_handler;
1803#line 1417
1804struct mtd_info;
1805#line 1417 "include/linux/fs.h"
1806struct super_block {
1807 struct list_head s_list ;
1808 dev_t s_dev ;
1809 unsigned char s_dirt ;
1810 unsigned char s_blocksize_bits ;
1811 unsigned long s_blocksize ;
1812 loff_t s_maxbytes ;
1813 struct file_system_type *s_type ;
1814 struct super_operations const *s_op ;
1815 struct dquot_operations const *dq_op ;
1816 struct quotactl_ops const *s_qcop ;
1817 struct export_operations const *s_export_op ;
1818 unsigned long s_flags ;
1819 unsigned long s_magic ;
1820 struct dentry *s_root ;
1821 struct rw_semaphore s_umount ;
1822 struct mutex s_lock ;
1823 int s_count ;
1824 atomic_t s_active ;
1825 void *s_security ;
1826 struct xattr_handler const **s_xattr ;
1827 struct list_head s_inodes ;
1828 struct hlist_bl_head s_anon ;
1829 struct list_head *s_files ;
1830 struct list_head s_mounts ;
1831 struct list_head s_dentry_lru ;
1832 int s_nr_dentry_unused ;
1833 spinlock_t s_inode_lru_lock ;
1834 struct list_head s_inode_lru ;
1835 int s_nr_inodes_unused ;
1836 struct block_device *s_bdev ;
1837 struct backing_dev_info *s_bdi ;
1838 struct mtd_info *s_mtd ;
1839 struct hlist_node s_instances ;
1840 struct quota_info s_dquot ;
1841 int s_frozen ;
1842 wait_queue_head_t s_wait_unfrozen ;
1843 char s_id[32U] ;
1844 u8 s_uuid[16U] ;
1845 void *s_fs_info ;
1846 unsigned int s_max_links ;
1847 fmode_t s_mode ;
1848 u32 s_time_gran ;
1849 struct mutex s_vfs_rename_mutex ;
1850 char *s_subtype ;
1851 char *s_options ;
1852 struct dentry_operations const *s_d_op ;
1853 int cleancache_poolid ;
1854 struct shrinker s_shrink ;
1855 atomic_long_t s_remove_count ;
1856 int s_readonly_remount ;
1857};
1858#line 1563 "include/linux/fs.h"
1859struct fiemap_extent_info {
1860 unsigned int fi_flags ;
1861 unsigned int fi_extents_mapped ;
1862 unsigned int fi_extents_max ;
1863 struct fiemap_extent *fi_extents_start ;
1864};
1865#line 1602 "include/linux/fs.h"
1866struct file_operations {
1867 struct module *owner ;
1868 loff_t (*llseek)(struct file * , loff_t , int ) ;
1869 ssize_t (*read)(struct file * , char * , size_t , loff_t * ) ;
1870 ssize_t (*write)(struct file * , char const * , size_t , loff_t * ) ;
1871 ssize_t (*aio_read)(struct kiocb * , struct iovec const * , unsigned long ,
1872 loff_t ) ;
1873 ssize_t (*aio_write)(struct kiocb * , struct iovec const * , unsigned long ,
1874 loff_t ) ;
1875 int (*readdir)(struct file * , void * , int (*)(void * , char const * , int ,
1876 loff_t , u64 , unsigned int ) ) ;
1877 unsigned int (*poll)(struct file * , struct poll_table_struct * ) ;
1878 long (*unlocked_ioctl)(struct file * , unsigned int , unsigned long ) ;
1879 long (*compat_ioctl)(struct file * , unsigned int , unsigned long ) ;
1880 int (*mmap)(struct file * , struct vm_area_struct * ) ;
1881 int (*open)(struct inode * , struct file * ) ;
1882 int (*flush)(struct file * , fl_owner_t ) ;
1883 int (*release)(struct inode * , struct file * ) ;
1884 int (*fsync)(struct file * , loff_t , loff_t , int ) ;
1885 int (*aio_fsync)(struct kiocb * , int ) ;
1886 int (*fasync)(int , struct file * , int ) ;
1887 int (*lock)(struct file * , int , struct file_lock * ) ;
1888 ssize_t (*sendpage)(struct file * , struct page * , int , size_t , loff_t * ,
1889 int ) ;
1890 unsigned long (*get_unmapped_area)(struct file * , unsigned long , unsigned long ,
1891 unsigned long , unsigned long ) ;
1892 int (*check_flags)(int ) ;
1893 int (*flock)(struct file * , int , struct file_lock * ) ;
1894 ssize_t (*splice_write)(struct pipe_inode_info * , struct file * , loff_t * , size_t ,
1895 unsigned int ) ;
1896 ssize_t (*splice_read)(struct file * , loff_t * , struct pipe_inode_info * , size_t ,
1897 unsigned int ) ;
1898 int (*setlease)(struct file * , long , struct file_lock ** ) ;
1899 long (*fallocate)(struct file * , int , loff_t , loff_t ) ;
1900};
1901#line 1637 "include/linux/fs.h"
1902struct inode_operations {
1903 struct dentry *(*lookup)(struct inode * , struct dentry * , struct nameidata * ) ;
1904 void *(*follow_link)(struct dentry * , struct nameidata * ) ;
1905 int (*permission)(struct inode * , int ) ;
1906 struct posix_acl *(*get_acl)(struct inode * , int ) ;
1907 int (*readlink)(struct dentry * , char * , int ) ;
1908 void (*put_link)(struct dentry * , struct nameidata * , void * ) ;
1909 int (*create)(struct inode * , struct dentry * , umode_t , struct nameidata * ) ;
1910 int (*link)(struct dentry * , struct inode * , struct dentry * ) ;
1911 int (*unlink)(struct inode * , struct dentry * ) ;
1912 int (*symlink)(struct inode * , struct dentry * , char const * ) ;
1913 int (*mkdir)(struct inode * , struct dentry * , umode_t ) ;
1914 int (*rmdir)(struct inode * , struct dentry * ) ;
1915 int (*mknod)(struct inode * , struct dentry * , umode_t , dev_t ) ;
1916 int (*rename)(struct inode * , struct dentry * , struct inode * , struct dentry * ) ;
1917 void (*truncate)(struct inode * ) ;
1918 int (*setattr)(struct dentry * , struct iattr * ) ;
1919 int (*getattr)(struct vfsmount * , struct dentry * , struct kstat * ) ;
1920 int (*setxattr)(struct dentry * , char const * , void const * , size_t , int ) ;
1921 ssize_t (*getxattr)(struct dentry * , char const * , void * , size_t ) ;
1922 ssize_t (*listxattr)(struct dentry * , char * , size_t ) ;
1923 int (*removexattr)(struct dentry * , char const * ) ;
1924 void (*truncate_range)(struct inode * , loff_t , loff_t ) ;
1925 int (*fiemap)(struct inode * , struct fiemap_extent_info * , u64 , u64 ) ;
1926};
1927#line 1682 "include/linux/fs.h"
1928struct super_operations {
1929 struct inode *(*alloc_inode)(struct super_block * ) ;
1930 void (*destroy_inode)(struct inode * ) ;
1931 void (*dirty_inode)(struct inode * , int ) ;
1932 int (*write_inode)(struct inode * , struct writeback_control * ) ;
1933 int (*drop_inode)(struct inode * ) ;
1934 void (*evict_inode)(struct inode * ) ;
1935 void (*put_super)(struct super_block * ) ;
1936 void (*write_super)(struct super_block * ) ;
1937 int (*sync_fs)(struct super_block * , int ) ;
1938 int (*freeze_fs)(struct super_block * ) ;
1939 int (*unfreeze_fs)(struct super_block * ) ;
1940 int (*statfs)(struct dentry * , struct kstatfs * ) ;
1941 int (*remount_fs)(struct super_block * , int * , char * ) ;
1942 void (*umount_begin)(struct super_block * ) ;
1943 int (*show_options)(struct seq_file * , struct dentry * ) ;
1944 int (*show_devname)(struct seq_file * , struct dentry * ) ;
1945 int (*show_path)(struct seq_file * , struct dentry * ) ;
1946 int (*show_stats)(struct seq_file * , struct dentry * ) ;
1947 ssize_t (*quota_read)(struct super_block * , int , char * , size_t , loff_t ) ;
1948 ssize_t (*quota_write)(struct super_block * , int , char const * , size_t ,
1949 loff_t ) ;
1950 int (*bdev_try_to_free_page)(struct super_block * , struct page * , gfp_t ) ;
1951 int (*nr_cached_objects)(struct super_block * ) ;
1952 void (*free_cached_objects)(struct super_block * , int ) ;
1953};
1954#line 1834 "include/linux/fs.h"
1955struct file_system_type {
1956 char const *name ;
1957 int fs_flags ;
1958 struct dentry *(*mount)(struct file_system_type * , int , char const * , void * ) ;
1959 void (*kill_sb)(struct super_block * ) ;
1960 struct module *owner ;
1961 struct file_system_type *next ;
1962 struct hlist_head fs_supers ;
1963 struct lock_class_key s_lock_key ;
1964 struct lock_class_key s_umount_key ;
1965 struct lock_class_key s_vfs_rename_key ;
1966 struct lock_class_key i_lock_key ;
1967 struct lock_class_key i_mutex_key ;
1968 struct lock_class_key i_mutex_dir_key ;
1969};
1970#line 12 "include/linux/mod_devicetable.h"
1971typedef unsigned long kernel_ulong_t;
1972#line 205 "include/linux/mod_devicetable.h"
1973struct serio_device_id {
1974 __u8 type ;
1975 __u8 extra ;
1976 __u8 id ;
1977 __u8 proto ;
1978};
1979#line 215 "include/linux/mod_devicetable.h"
1980struct of_device_id {
1981 char name[32U] ;
1982 char type[32U] ;
1983 char compatible[128U] ;
1984 void *data ;
1985};
1986#line 269 "include/linux/mod_devicetable.h"
1987struct input_device_id {
1988 kernel_ulong_t flags ;
1989 __u16 bustype ;
1990 __u16 vendor ;
1991 __u16 product ;
1992 __u16 version ;
1993 kernel_ulong_t evbit[1U] ;
1994 kernel_ulong_t keybit[12U] ;
1995 kernel_ulong_t relbit[1U] ;
1996 kernel_ulong_t absbit[1U] ;
1997 kernel_ulong_t mscbit[1U] ;
1998 kernel_ulong_t ledbit[1U] ;
1999 kernel_ulong_t sndbit[1U] ;
2000 kernel_ulong_t ffbit[2U] ;
2001 kernel_ulong_t swbit[1U] ;
2002 kernel_ulong_t driver_info ;
2003};
2004#line 584
2005struct ff_device;
2006#line 584
2007struct input_mt_slot;
2008#line 584
2009struct input_handle;
2010#line 584 "include/linux/mod_devicetable.h"
2011struct input_dev {
2012 char const *name ;
2013 char const *phys ;
2014 char const *uniq ;
2015 struct input_id id ;
2016 unsigned long propbit[1U] ;
2017 unsigned long evbit[1U] ;
2018 unsigned long keybit[12U] ;
2019 unsigned long relbit[1U] ;
2020 unsigned long absbit[1U] ;
2021 unsigned long mscbit[1U] ;
2022 unsigned long ledbit[1U] ;
2023 unsigned long sndbit[1U] ;
2024 unsigned long ffbit[2U] ;
2025 unsigned long swbit[1U] ;
2026 unsigned int hint_events_per_packet ;
2027 unsigned int keycodemax ;
2028 unsigned int keycodesize ;
2029 void *keycode ;
2030 int (*setkeycode)(struct input_dev * , struct input_keymap_entry const * , unsigned int * ) ;
2031 int (*getkeycode)(struct input_dev * , struct input_keymap_entry * ) ;
2032 struct ff_device *ff ;
2033 unsigned int repeat_key ;
2034 struct timer_list timer ;
2035 int rep[2U] ;
2036 struct input_mt_slot *mt ;
2037 int mtsize ;
2038 int slot ;
2039 int trkid ;
2040 struct input_absinfo *absinfo ;
2041 unsigned long key[12U] ;
2042 unsigned long led[1U] ;
2043 unsigned long snd[1U] ;
2044 unsigned long sw[1U] ;
2045 int (*open)(struct input_dev * ) ;
2046 void (*close)(struct input_dev * ) ;
2047 int (*flush)(struct input_dev * , struct file * ) ;
2048 int (*event)(struct input_dev * , unsigned int , unsigned int , int ) ;
2049 struct input_handle *grab ;
2050 spinlock_t event_lock ;
2051 struct mutex mutex ;
2052 unsigned int users ;
2053 bool going_away ;
2054 bool sync ;
2055 struct device dev ;
2056 struct list_head h_list ;
2057 struct list_head node ;
2058};
2059#line 1319 "include/linux/input.h"
2060struct input_handler {
2061 void *private ;
2062 void (*event)(struct input_handle * , unsigned int , unsigned int , int ) ;
2063 bool (*filter)(struct input_handle * , unsigned int , unsigned int , int ) ;
2064 bool (*match)(struct input_handler * , struct input_dev * ) ;
2065 int (*connect)(struct input_handler * , struct input_dev * , struct input_device_id const * ) ;
2066 void (*disconnect)(struct input_handle * ) ;
2067 void (*start)(struct input_handle * ) ;
2068 struct file_operations const *fops ;
2069 int minor ;
2070 char const *name ;
2071 struct input_device_id const *id_table ;
2072 struct list_head h_list ;
2073 struct list_head node ;
2074};
2075#line 1429 "include/linux/input.h"
2076struct input_handle {
2077 void *private ;
2078 int open ;
2079 char const *name ;
2080 struct input_dev *dev ;
2081 struct input_handler *handler ;
2082 struct list_head d_node ;
2083 struct list_head h_node ;
2084};
2085#line 1591 "include/linux/input.h"
2086struct ff_device {
2087 int (*upload)(struct input_dev * , struct ff_effect * , struct ff_effect * ) ;
2088 int (*erase)(struct input_dev * , int ) ;
2089 int (*playback)(struct input_dev * , int , int ) ;
2090 void (*set_gain)(struct input_dev * , u16 ) ;
2091 void (*set_autocenter)(struct input_dev * , u16 ) ;
2092 void (*destroy)(struct ff_device * ) ;
2093 void *private ;
2094 unsigned long ffbit[2U] ;
2095 struct mutex mutex ;
2096 int max_effects ;
2097 struct ff_effect *effects ;
2098 struct file *effect_owners[0U] ;
2099};
2100#line 1650 "include/linux/input.h"
2101struct input_mt_slot {
2102 int abs[12U] ;
2103};
2104#line 66 "include/linux/input/mt.h"
2105enum irqreturn {
2106 IRQ_NONE = 0,
2107 IRQ_HANDLED = 1,
2108 IRQ_WAKE_THREAD = 2
2109} ;
2110#line 16 "include/linux/irqreturn.h"
2111typedef enum irqreturn irqreturn_t;
2112#line 41 "include/asm-generic/sections.h"
2113struct exception_table_entry {
2114 unsigned long insn ;
2115 unsigned long fixup ;
2116};
2117#line 702 "include/linux/interrupt.h"
2118struct serio_driver;
2119#line 702 "include/linux/interrupt.h"
2120struct serio {
2121 void *port_data ;
2122 char name[32U] ;
2123 char phys[32U] ;
2124 bool manual_bind ;
2125 struct serio_device_id id ;
2126 spinlock_t lock ;
2127 int (*write)(struct serio * , unsigned char ) ;
2128 int (*open)(struct serio * ) ;
2129 void (*close)(struct serio * ) ;
2130 int (*start)(struct serio * ) ;
2131 void (*stop)(struct serio * ) ;
2132 struct serio *parent ;
2133 struct list_head child_node ;
2134 struct list_head children ;
2135 unsigned int depth ;
2136 struct serio_driver *drv ;
2137 struct mutex drv_mutex ;
2138 struct device dev ;
2139 struct list_head node ;
2140};
2141#line 56 "include/linux/serio.h"
2142struct serio_driver {
2143 char const *description ;
2144 struct serio_device_id const *id_table ;
2145 bool manual_bind ;
2146 void (*write_wakeup)(struct serio * ) ;
2147 irqreturn_t (*interrupt)(struct serio * , unsigned char , unsigned int ) ;
2148 int (*connect)(struct serio * , struct serio_driver * ) ;
2149 int (*reconnect)(struct serio * ) ;
2150 void (*disconnect)(struct serio * ) ;
2151 void (*cleanup)(struct serio * ) ;
2152 struct device_driver driver ;
2153};
2154#line 45 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/3129/dscv_tempdir/dscv/ri/43_1a/drivers/input/touchscreen/wacom_w8001.c.p"
2155struct w8001_coord {
2156 u8 rdy ;
2157 u8 tsw ;
2158 u8 f1 ;
2159 u8 f2 ;
2160 u16 x ;
2161 u16 y ;
2162 u16 pen_pressure ;
2163 u8 tilt_x ;
2164 u8 tilt_y ;
2165};
2166#line 84 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/3129/dscv_tempdir/dscv/ri/43_1a/drivers/input/touchscreen/wacom_w8001.c.p"
2167struct w8001_touch_query {
2168 u16 x ;
2169 u16 y ;
2170 u8 panel_res ;
2171 u8 capacity_res ;
2172 u8 sensor_id ;
2173};
2174#line 93 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/3129/dscv_tempdir/dscv/ri/43_1a/drivers/input/touchscreen/wacom_w8001.c.p"
2175struct w8001 {
2176 struct input_dev *dev ;
2177 struct serio *serio ;
2178 struct completion cmd_done ;
2179 int id ;
2180 int idx ;
2181 unsigned char response_type ;
2182 unsigned char response[11U] ;
2183 unsigned char data[11U] ;
2184 char phys[32U] ;
2185 int type ;
2186 unsigned int pktlen ;
2187 u16 max_touch_x ;
2188 u16 max_touch_y ;
2189 u16 max_pen_x ;
2190 u16 max_pen_y ;
2191 char name[64U] ;
2192};
2193#line 1 "<compiler builtins>"
2194
2195#line 1
2196long __builtin_expect(long , long ) ;
2197#line 2 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/3129/dscv_tempdir/dscv/ri/43_1a/drivers/input/touchscreen/wacom_w8001.c.p"
2198void ldv_spin_lock(void) ;
2199#line 3
2200void ldv_spin_unlock(void) ;
2201#line 4
2202int ldv_spin_trylock(void) ;
2203#line 82 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/bitops.h"
2204__inline static void __set_bit(int nr , unsigned long volatile *addr )
2205{ long volatile *__cil_tmp3 ;
2206
2207 {
2208#line 84
2209 __cil_tmp3 = (long volatile *)addr;
2210#line 84
2211 __asm__ volatile ("bts %1,%0": "+m" (*__cil_tmp3): "Ir" (nr): "memory");
2212#line 85
2213 return;
2214}
2215}
2216#line 45 "include/linux/dynamic_debug.h"
2217extern int __dynamic_pr_debug(struct _ddebug * , char const * , ...) ;
2218#line 323 "include/linux/kernel.h"
2219extern int snprintf(char * , size_t , char const * , ...) ;
2220#line 34 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/string_64.h"
2221extern void *__memcpy(void * , void const * , size_t ) ;
2222#line 55
2223extern void *memset(void * , int , size_t ) ;
2224#line 39 "include/linux/string.h"
2225extern size_t strlcat(char * , char const * , __kernel_size_t ) ;
2226#line 79 "include/linux/wait.h"
2227extern void __init_waitqueue_head(wait_queue_head_t * , char const * , struct lock_class_key * ) ;
2228#line 73 "include/linux/completion.h"
2229__inline static void init_completion(struct completion *x )
2230{ struct lock_class_key __key ;
2231 unsigned long __cil_tmp3 ;
2232 unsigned long __cil_tmp4 ;
2233 wait_queue_head_t *__cil_tmp5 ;
2234
2235 {
2236 {
2237#line 75
2238 *((unsigned int *)x) = 0U;
2239#line 76
2240 __cil_tmp3 = (unsigned long )x;
2241#line 76
2242 __cil_tmp4 = __cil_tmp3 + 8;
2243#line 76
2244 __cil_tmp5 = (wait_queue_head_t *)__cil_tmp4;
2245#line 76
2246 __init_waitqueue_head(__cil_tmp5, "&x->wait", & __key);
2247 }
2248#line 78
2249 return;
2250}
2251}
2252#line 82
2253extern unsigned long wait_for_completion_timeout(struct completion * , unsigned long ) ;
2254#line 91
2255extern void complete(struct completion * ) ;
2256#line 26 "include/linux/export.h"
2257extern struct module __this_module ;
2258#line 161 "include/linux/slab.h"
2259extern void kfree(void const * ) ;
2260#line 220 "include/linux/slub_def.h"
2261extern void *kmem_cache_alloc(struct kmem_cache * , gfp_t ) ;
2262#line 223
2263void *ldv_kmem_cache_alloc_16(struct kmem_cache *ldv_func_arg1 , gfp_t ldv_func_arg2 ) ;
2264#line 353 "include/linux/slab.h"
2265__inline static void *kzalloc(size_t size , gfp_t flags ) ;
2266#line 10 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/3129/dscv_tempdir/dscv/ri/43_1a/drivers/input/touchscreen/wacom_w8001.c.p"
2267extern void *__VERIFIER_nondet_pointer(void) ;
2268#line 11
2269void ldv_check_alloc_flags(gfp_t flags ) ;
2270#line 12
2271void ldv_check_alloc_nonatomic(void) ;
2272#line 14
2273struct page *ldv_check_alloc_flags_and_return_some_page(gfp_t flags ) ;
2274#line 792 "include/linux/device.h"
2275extern void *dev_get_drvdata(struct device const * ) ;
2276#line 793
2277extern int dev_set_drvdata(struct device * , void * ) ;
2278#line 1456 "include/linux/input.h"
2279extern struct input_dev *input_allocate_device(void) ;
2280#line 1457
2281extern void input_free_device(struct input_dev * ) ;
2282#line 1470 "include/linux/input.h"
2283__inline static void *input_get_drvdata(struct input_dev *dev )
2284{ void *tmp ;
2285 unsigned long __cil_tmp3 ;
2286 unsigned long __cil_tmp4 ;
2287 struct device *__cil_tmp5 ;
2288 struct device const *__cil_tmp6 ;
2289
2290 {
2291 {
2292#line 1472
2293 __cil_tmp3 = (unsigned long )dev;
2294#line 1472
2295 __cil_tmp4 = __cil_tmp3 + 840;
2296#line 1472
2297 __cil_tmp5 = (struct device *)__cil_tmp4;
2298#line 1472
2299 __cil_tmp6 = (struct device const *)__cil_tmp5;
2300#line 1472
2301 tmp = dev_get_drvdata(__cil_tmp6);
2302 }
2303#line 1472
2304 return (tmp);
2305}
2306}
2307#line 1475 "include/linux/input.h"
2308__inline static void input_set_drvdata(struct input_dev *dev , void *data )
2309{ unsigned long __cil_tmp3 ;
2310 unsigned long __cil_tmp4 ;
2311 struct device *__cil_tmp5 ;
2312
2313 {
2314 {
2315#line 1477
2316 __cil_tmp3 = (unsigned long )dev;
2317#line 1477
2318 __cil_tmp4 = __cil_tmp3 + 840;
2319#line 1477
2320 __cil_tmp5 = (struct device *)__cil_tmp4;
2321#line 1477
2322 dev_set_drvdata(__cil_tmp5, data);
2323 }
2324#line 1478
2325 return;
2326}
2327}
2328#line 1480
2329extern int input_register_device(struct input_dev * ) ;
2330#line 1481
2331extern void input_unregister_device(struct input_dev * ) ;
2332#line 1502
2333extern void input_event(struct input_dev * , unsigned int , unsigned int , int ) ;
2334#line 1505 "include/linux/input.h"
2335__inline static void input_report_key(struct input_dev *dev , unsigned int code ,
2336 int value )
2337{ int __cil_tmp4 ;
2338
2339 {
2340 {
2341#line 1507
2342 __cil_tmp4 = value != 0;
2343#line 1507
2344 input_event(dev, 1U, code, __cil_tmp4);
2345 }
2346#line 1508
2347 return;
2348}
2349}
2350#line 1515 "include/linux/input.h"
2351__inline static void input_report_abs(struct input_dev *dev , unsigned int code ,
2352 int value )
2353{
2354
2355 {
2356 {
2357#line 1517
2358 input_event(dev, 3U, code, value);
2359 }
2360#line 1518
2361 return;
2362}
2363}
2364#line 1530 "include/linux/input.h"
2365__inline static void input_sync(struct input_dev *dev )
2366{
2367
2368 {
2369 {
2370#line 1532
2371 input_event(dev, 0U, 0U, 0);
2372 }
2373#line 1533
2374 return;
2375}
2376}
2377#line 1557
2378extern void input_alloc_absinfo(struct input_dev * ) ;
2379#line 1558
2380extern void input_set_abs_params(struct input_dev * , unsigned int , int , int ,
2381 int , int ) ;
2382#line 1581 "include/linux/input.h"
2383__inline static void input_abs_set_res(struct input_dev *dev , unsigned int axis ,
2384 int val )
2385{ struct input_absinfo *__cil_tmp4 ;
2386 unsigned long __cil_tmp5 ;
2387 unsigned long __cil_tmp6 ;
2388 unsigned long __cil_tmp7 ;
2389 struct input_absinfo *__cil_tmp8 ;
2390 unsigned long __cil_tmp9 ;
2391 unsigned long __cil_tmp10 ;
2392 unsigned long __cil_tmp11 ;
2393 unsigned long __cil_tmp12 ;
2394 struct input_absinfo *__cil_tmp13 ;
2395 struct input_absinfo *__cil_tmp14 ;
2396 unsigned long __cil_tmp15 ;
2397 unsigned long __cil_tmp16 ;
2398
2399 {
2400 {
2401#line 1581
2402 input_alloc_absinfo(dev);
2403 }
2404 {
2405#line 1581
2406 __cil_tmp4 = (struct input_absinfo *)0;
2407#line 1581
2408 __cil_tmp5 = (unsigned long )__cil_tmp4;
2409#line 1581
2410 __cil_tmp6 = (unsigned long )dev;
2411#line 1581
2412 __cil_tmp7 = __cil_tmp6 + 424;
2413#line 1581
2414 __cil_tmp8 = *((struct input_absinfo **)__cil_tmp7);
2415#line 1581
2416 __cil_tmp9 = (unsigned long )__cil_tmp8;
2417#line 1581
2418 if (__cil_tmp9 != __cil_tmp5) {
2419#line 1581
2420 __cil_tmp10 = (unsigned long )axis;
2421#line 1581
2422 __cil_tmp11 = (unsigned long )dev;
2423#line 1581
2424 __cil_tmp12 = __cil_tmp11 + 424;
2425#line 1581
2426 __cil_tmp13 = *((struct input_absinfo **)__cil_tmp12);
2427#line 1581
2428 __cil_tmp14 = __cil_tmp13 + __cil_tmp10;
2429#line 1581
2430 __cil_tmp15 = (unsigned long )__cil_tmp14;
2431#line 1581
2432 __cil_tmp16 = __cil_tmp15 + 20;
2433#line 1581
2434 *((__s32 *)__cil_tmp16) = val;
2435 } else {
2436
2437 }
2438 }
2439#line 1582
2440 return;
2441}
2442}
2443#line 38 "include/linux/input/mt.h"
2444extern int input_mt_init_slots(struct input_dev * , unsigned int ) ;
2445#line 46 "include/linux/input/mt.h"
2446__inline static void input_mt_slot(struct input_dev *dev , int slot )
2447{
2448
2449 {
2450 {
2451#line 48
2452 input_event(dev, 3U, 47U, slot);
2453 }
2454#line 49
2455 return;
2456}
2457}
2458#line 61
2459extern void input_mt_report_slot_state(struct input_dev * , unsigned int , bool ) ;
2460#line 65
2461extern void input_mt_report_pointer_emulation(struct input_dev * , bool ) ;
2462#line 75 "include/linux/serio.h"
2463extern int serio_open(struct serio * , struct serio_driver * ) ;
2464#line 76
2465extern void serio_close(struct serio * ) ;
2466#line 90
2467extern int __serio_register_driver(struct serio_driver * , struct module * , char const * ) ;
2468#line 97
2469extern void serio_unregister_driver(struct serio_driver * ) ;
2470#line 99 "include/linux/serio.h"
2471__inline static int serio_write(struct serio *serio , unsigned char data )
2472{ int tmp ;
2473 int (*__cil_tmp4)(struct serio * , unsigned char ) ;
2474 unsigned long __cil_tmp5 ;
2475 unsigned long __cil_tmp6 ;
2476 unsigned long __cil_tmp7 ;
2477 int (*__cil_tmp8)(struct serio * , unsigned char ) ;
2478 unsigned long __cil_tmp9 ;
2479 unsigned long __cil_tmp10 ;
2480 unsigned long __cil_tmp11 ;
2481 int (*__cil_tmp12)(struct serio * , unsigned char ) ;
2482 int __cil_tmp13 ;
2483 unsigned char __cil_tmp14 ;
2484
2485 {
2486 {
2487#line 101
2488 __cil_tmp4 = (int (*)(struct serio * , unsigned char ))0;
2489#line 101
2490 __cil_tmp5 = (unsigned long )__cil_tmp4;
2491#line 101
2492 __cil_tmp6 = (unsigned long )serio;
2493#line 101
2494 __cil_tmp7 = __cil_tmp6 + 152;
2495#line 101
2496 __cil_tmp8 = *((int (**)(struct serio * , unsigned char ))__cil_tmp7);
2497#line 101
2498 __cil_tmp9 = (unsigned long )__cil_tmp8;
2499#line 101
2500 if (__cil_tmp9 != __cil_tmp5) {
2501 {
2502#line 102
2503 __cil_tmp10 = (unsigned long )serio;
2504#line 102
2505 __cil_tmp11 = __cil_tmp10 + 152;
2506#line 102
2507 __cil_tmp12 = *((int (**)(struct serio * , unsigned char ))__cil_tmp11);
2508#line 102
2509 __cil_tmp13 = (int )data;
2510#line 102
2511 __cil_tmp14 = (unsigned char )__cil_tmp13;
2512#line 102
2513 tmp = (*__cil_tmp12)(serio, __cil_tmp14);
2514 }
2515#line 102
2516 return (tmp);
2517 } else {
2518#line 104
2519 return (-1);
2520 }
2521 }
2522}
2523}
2524#line 117 "include/linux/serio.h"
2525__inline static void *serio_get_drvdata(struct serio *serio )
2526{ void *tmp ;
2527 unsigned long __cil_tmp3 ;
2528 unsigned long __cil_tmp4 ;
2529 struct device *__cil_tmp5 ;
2530 struct device const *__cil_tmp6 ;
2531
2532 {
2533 {
2534#line 119
2535 __cil_tmp3 = (unsigned long )serio;
2536#line 119
2537 __cil_tmp4 = __cil_tmp3 + 416;
2538#line 119
2539 __cil_tmp5 = (struct device *)__cil_tmp4;
2540#line 119
2541 __cil_tmp6 = (struct device const *)__cil_tmp5;
2542#line 119
2543 tmp = dev_get_drvdata(__cil_tmp6);
2544 }
2545#line 119
2546 return (tmp);
2547}
2548}
2549#line 122 "include/linux/serio.h"
2550__inline static void serio_set_drvdata(struct serio *serio , void *data )
2551{ unsigned long __cil_tmp3 ;
2552 unsigned long __cil_tmp4 ;
2553 struct device *__cil_tmp5 ;
2554
2555 {
2556 {
2557#line 124
2558 __cil_tmp3 = (unsigned long )serio;
2559#line 124
2560 __cil_tmp4 = __cil_tmp3 + 416;
2561#line 124
2562 __cil_tmp5 = (struct device *)__cil_tmp4;
2563#line 124
2564 dev_set_drvdata(__cil_tmp5, data);
2565 }
2566#line 125
2567 return;
2568}
2569}
2570#line 46 "include/linux/delay.h"
2571extern void msleep(unsigned int ) ;
2572#line 117 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/3129/dscv_tempdir/dscv/ri/43_1a/drivers/input/touchscreen/wacom_w8001.c.p"
2573static void parse_pen_data(u8 *data , struct w8001_coord *coord )
2574{ void *__cil_tmp3 ;
2575 u8 __cil_tmp4 ;
2576 unsigned int __cil_tmp5 ;
2577 unsigned int __cil_tmp6 ;
2578 unsigned long __cil_tmp7 ;
2579 unsigned long __cil_tmp8 ;
2580 u8 __cil_tmp9 ;
2581 unsigned int __cil_tmp10 ;
2582 unsigned int __cil_tmp11 ;
2583 unsigned long __cil_tmp12 ;
2584 unsigned long __cil_tmp13 ;
2585 u8 __cil_tmp14 ;
2586 unsigned int __cil_tmp15 ;
2587 unsigned int __cil_tmp16 ;
2588 unsigned long __cil_tmp17 ;
2589 unsigned long __cil_tmp18 ;
2590 u8 __cil_tmp19 ;
2591 unsigned int __cil_tmp20 ;
2592 unsigned int __cil_tmp21 ;
2593 unsigned long __cil_tmp22 ;
2594 unsigned long __cil_tmp23 ;
2595 u8 *__cil_tmp24 ;
2596 u8 __cil_tmp25 ;
2597 int __cil_tmp26 ;
2598 int __cil_tmp27 ;
2599 unsigned long __cil_tmp28 ;
2600 unsigned long __cil_tmp29 ;
2601 u8 *__cil_tmp30 ;
2602 u8 __cil_tmp31 ;
2603 int __cil_tmp32 ;
2604 int __cil_tmp33 ;
2605 int __cil_tmp34 ;
2606 short __cil_tmp35 ;
2607 int __cil_tmp36 ;
2608 unsigned long __cil_tmp37 ;
2609 unsigned long __cil_tmp38 ;
2610 u16 __cil_tmp39 ;
2611 short __cil_tmp40 ;
2612 int __cil_tmp41 ;
2613 int __cil_tmp42 ;
2614 unsigned long __cil_tmp43 ;
2615 unsigned long __cil_tmp44 ;
2616 u8 *__cil_tmp45 ;
2617 u8 __cil_tmp46 ;
2618 int __cil_tmp47 ;
2619 int __cil_tmp48 ;
2620 int __cil_tmp49 ;
2621 short __cil_tmp50 ;
2622 int __cil_tmp51 ;
2623 unsigned long __cil_tmp52 ;
2624 unsigned long __cil_tmp53 ;
2625 u16 __cil_tmp54 ;
2626 short __cil_tmp55 ;
2627 int __cil_tmp56 ;
2628 int __cil_tmp57 ;
2629 unsigned long __cil_tmp58 ;
2630 unsigned long __cil_tmp59 ;
2631 u8 *__cil_tmp60 ;
2632 u8 __cil_tmp61 ;
2633 int __cil_tmp62 ;
2634 int __cil_tmp63 ;
2635 unsigned long __cil_tmp64 ;
2636 unsigned long __cil_tmp65 ;
2637 u8 *__cil_tmp66 ;
2638 u8 __cil_tmp67 ;
2639 int __cil_tmp68 ;
2640 int __cil_tmp69 ;
2641 int __cil_tmp70 ;
2642 short __cil_tmp71 ;
2643 int __cil_tmp72 ;
2644 unsigned long __cil_tmp73 ;
2645 unsigned long __cil_tmp74 ;
2646 u16 __cil_tmp75 ;
2647 short __cil_tmp76 ;
2648 int __cil_tmp77 ;
2649 int __cil_tmp78 ;
2650 unsigned long __cil_tmp79 ;
2651 unsigned long __cil_tmp80 ;
2652 u8 *__cil_tmp81 ;
2653 u8 __cil_tmp82 ;
2654 int __cil_tmp83 ;
2655 int __cil_tmp84 ;
2656 int __cil_tmp85 ;
2657 short __cil_tmp86 ;
2658 int __cil_tmp87 ;
2659 unsigned long __cil_tmp88 ;
2660 unsigned long __cil_tmp89 ;
2661 u16 __cil_tmp90 ;
2662 short __cil_tmp91 ;
2663 int __cil_tmp92 ;
2664 int __cil_tmp93 ;
2665 unsigned long __cil_tmp94 ;
2666 unsigned long __cil_tmp95 ;
2667 u8 *__cil_tmp96 ;
2668 u8 __cil_tmp97 ;
2669 u16 __cil_tmp98 ;
2670 unsigned int __cil_tmp99 ;
2671 unsigned int __cil_tmp100 ;
2672 unsigned long __cil_tmp101 ;
2673 unsigned long __cil_tmp102 ;
2674 u8 *__cil_tmp103 ;
2675 u8 __cil_tmp104 ;
2676 int __cil_tmp105 ;
2677 int __cil_tmp106 ;
2678 int __cil_tmp107 ;
2679 short __cil_tmp108 ;
2680 int __cil_tmp109 ;
2681 unsigned long __cil_tmp110 ;
2682 unsigned long __cil_tmp111 ;
2683 u16 __cil_tmp112 ;
2684 short __cil_tmp113 ;
2685 int __cil_tmp114 ;
2686 int __cil_tmp115 ;
2687 unsigned long __cil_tmp116 ;
2688 unsigned long __cil_tmp117 ;
2689 u8 *__cil_tmp118 ;
2690 u8 __cil_tmp119 ;
2691 unsigned int __cil_tmp120 ;
2692 unsigned int __cil_tmp121 ;
2693 unsigned long __cil_tmp122 ;
2694 unsigned long __cil_tmp123 ;
2695 u8 *__cil_tmp124 ;
2696 u8 __cil_tmp125 ;
2697 unsigned int __cil_tmp126 ;
2698 unsigned int __cil_tmp127 ;
2699
2700 {
2701 {
2702#line 119
2703 __cil_tmp3 = (void *)coord;
2704#line 119
2705 memset(__cil_tmp3, 0, 12UL);
2706#line 121
2707 __cil_tmp4 = *data;
2708#line 121
2709 __cil_tmp5 = (unsigned int )__cil_tmp4;
2710#line 121
2711 __cil_tmp6 = __cil_tmp5 & 32U;
2712#line 121
2713 *((u8 *)coord) = (u8 )__cil_tmp6;
2714#line 122
2715 __cil_tmp7 = (unsigned long )coord;
2716#line 122
2717 __cil_tmp8 = __cil_tmp7 + 1;
2718#line 122
2719 __cil_tmp9 = *data;
2720#line 122
2721 __cil_tmp10 = (unsigned int )__cil_tmp9;
2722#line 122
2723 __cil_tmp11 = __cil_tmp10 & 1U;
2724#line 122
2725 *((u8 *)__cil_tmp8) = (u8 )__cil_tmp11;
2726#line 123
2727 __cil_tmp12 = (unsigned long )coord;
2728#line 123
2729 __cil_tmp13 = __cil_tmp12 + 2;
2730#line 123
2731 __cil_tmp14 = *data;
2732#line 123
2733 __cil_tmp15 = (unsigned int )__cil_tmp14;
2734#line 123
2735 __cil_tmp16 = __cil_tmp15 & 2U;
2736#line 123
2737 *((u8 *)__cil_tmp13) = (u8 )__cil_tmp16;
2738#line 124
2739 __cil_tmp17 = (unsigned long )coord;
2740#line 124
2741 __cil_tmp18 = __cil_tmp17 + 3;
2742#line 124
2743 __cil_tmp19 = *data;
2744#line 124
2745 __cil_tmp20 = (unsigned int )__cil_tmp19;
2746#line 124
2747 __cil_tmp21 = __cil_tmp20 & 4U;
2748#line 124
2749 *((u8 *)__cil_tmp18) = (u8 )__cil_tmp21;
2750#line 126
2751 __cil_tmp22 = (unsigned long )coord;
2752#line 126
2753 __cil_tmp23 = __cil_tmp22 + 4;
2754#line 126
2755 __cil_tmp24 = data + 1UL;
2756#line 126
2757 __cil_tmp25 = *__cil_tmp24;
2758#line 126
2759 __cil_tmp26 = (int )__cil_tmp25;
2760#line 126
2761 __cil_tmp27 = __cil_tmp26 << 9;
2762#line 126
2763 *((u16 *)__cil_tmp23) = (u16 )__cil_tmp27;
2764#line 127
2765 __cil_tmp28 = (unsigned long )coord;
2766#line 127
2767 __cil_tmp29 = __cil_tmp28 + 4;
2768#line 127
2769 __cil_tmp30 = data + 2UL;
2770#line 127
2771 __cil_tmp31 = *__cil_tmp30;
2772#line 127
2773 __cil_tmp32 = (int )__cil_tmp31;
2774#line 127
2775 __cil_tmp33 = __cil_tmp32 & 127;
2776#line 127
2777 __cil_tmp34 = __cil_tmp33 << 2;
2778#line 127
2779 __cil_tmp35 = (short )__cil_tmp34;
2780#line 127
2781 __cil_tmp36 = (int )__cil_tmp35;
2782#line 127
2783 __cil_tmp37 = (unsigned long )coord;
2784#line 127
2785 __cil_tmp38 = __cil_tmp37 + 4;
2786#line 127
2787 __cil_tmp39 = *((u16 *)__cil_tmp38);
2788#line 127
2789 __cil_tmp40 = (short )__cil_tmp39;
2790#line 127
2791 __cil_tmp41 = (int )__cil_tmp40;
2792#line 127
2793 __cil_tmp42 = __cil_tmp41 | __cil_tmp36;
2794#line 127
2795 *((u16 *)__cil_tmp29) = (u16 )__cil_tmp42;
2796#line 128
2797 __cil_tmp43 = (unsigned long )coord;
2798#line 128
2799 __cil_tmp44 = __cil_tmp43 + 4;
2800#line 128
2801 __cil_tmp45 = data + 6UL;
2802#line 128
2803 __cil_tmp46 = *__cil_tmp45;
2804#line 128
2805 __cil_tmp47 = (int )__cil_tmp46;
2806#line 128
2807 __cil_tmp48 = __cil_tmp47 & 96;
2808#line 128
2809 __cil_tmp49 = __cil_tmp48 >> 5;
2810#line 128
2811 __cil_tmp50 = (short )__cil_tmp49;
2812#line 128
2813 __cil_tmp51 = (int )__cil_tmp50;
2814#line 128
2815 __cil_tmp52 = (unsigned long )coord;
2816#line 128
2817 __cil_tmp53 = __cil_tmp52 + 4;
2818#line 128
2819 __cil_tmp54 = *((u16 *)__cil_tmp53);
2820#line 128
2821 __cil_tmp55 = (short )__cil_tmp54;
2822#line 128
2823 __cil_tmp56 = (int )__cil_tmp55;
2824#line 128
2825 __cil_tmp57 = __cil_tmp56 | __cil_tmp51;
2826#line 128
2827 *((u16 *)__cil_tmp44) = (u16 )__cil_tmp57;
2828#line 130
2829 __cil_tmp58 = (unsigned long )coord;
2830#line 130
2831 __cil_tmp59 = __cil_tmp58 + 6;
2832#line 130
2833 __cil_tmp60 = data + 3UL;
2834#line 130
2835 __cil_tmp61 = *__cil_tmp60;
2836#line 130
2837 __cil_tmp62 = (int )__cil_tmp61;
2838#line 130
2839 __cil_tmp63 = __cil_tmp62 << 9;
2840#line 130
2841 *((u16 *)__cil_tmp59) = (u16 )__cil_tmp63;
2842#line 131
2843 __cil_tmp64 = (unsigned long )coord;
2844#line 131
2845 __cil_tmp65 = __cil_tmp64 + 6;
2846#line 131
2847 __cil_tmp66 = data + 4UL;
2848#line 131
2849 __cil_tmp67 = *__cil_tmp66;
2850#line 131
2851 __cil_tmp68 = (int )__cil_tmp67;
2852#line 131
2853 __cil_tmp69 = __cil_tmp68 & 127;
2854#line 131
2855 __cil_tmp70 = __cil_tmp69 << 2;
2856#line 131
2857 __cil_tmp71 = (short )__cil_tmp70;
2858#line 131
2859 __cil_tmp72 = (int )__cil_tmp71;
2860#line 131
2861 __cil_tmp73 = (unsigned long )coord;
2862#line 131
2863 __cil_tmp74 = __cil_tmp73 + 6;
2864#line 131
2865 __cil_tmp75 = *((u16 *)__cil_tmp74);
2866#line 131
2867 __cil_tmp76 = (short )__cil_tmp75;
2868#line 131
2869 __cil_tmp77 = (int )__cil_tmp76;
2870#line 131
2871 __cil_tmp78 = __cil_tmp77 | __cil_tmp72;
2872#line 131
2873 *((u16 *)__cil_tmp65) = (u16 )__cil_tmp78;
2874#line 132
2875 __cil_tmp79 = (unsigned long )coord;
2876#line 132
2877 __cil_tmp80 = __cil_tmp79 + 6;
2878#line 132
2879 __cil_tmp81 = data + 6UL;
2880#line 132
2881 __cil_tmp82 = *__cil_tmp81;
2882#line 132
2883 __cil_tmp83 = (int )__cil_tmp82;
2884#line 132
2885 __cil_tmp84 = __cil_tmp83 & 24;
2886#line 132
2887 __cil_tmp85 = __cil_tmp84 >> 3;
2888#line 132
2889 __cil_tmp86 = (short )__cil_tmp85;
2890#line 132
2891 __cil_tmp87 = (int )__cil_tmp86;
2892#line 132
2893 __cil_tmp88 = (unsigned long )coord;
2894#line 132
2895 __cil_tmp89 = __cil_tmp88 + 6;
2896#line 132
2897 __cil_tmp90 = *((u16 *)__cil_tmp89);
2898#line 132
2899 __cil_tmp91 = (short )__cil_tmp90;
2900#line 132
2901 __cil_tmp92 = (int )__cil_tmp91;
2902#line 132
2903 __cil_tmp93 = __cil_tmp92 | __cil_tmp87;
2904#line 132
2905 *((u16 *)__cil_tmp80) = (u16 )__cil_tmp93;
2906#line 134
2907 __cil_tmp94 = (unsigned long )coord;
2908#line 134
2909 __cil_tmp95 = __cil_tmp94 + 8;
2910#line 134
2911 __cil_tmp96 = data + 5UL;
2912#line 134
2913 __cil_tmp97 = *__cil_tmp96;
2914#line 134
2915 __cil_tmp98 = (u16 )__cil_tmp97;
2916#line 134
2917 __cil_tmp99 = (unsigned int )__cil_tmp98;
2918#line 134
2919 __cil_tmp100 = __cil_tmp99 & 127U;
2920#line 134
2921 *((u16 *)__cil_tmp95) = (u16 )__cil_tmp100;
2922#line 135
2923 __cil_tmp101 = (unsigned long )coord;
2924#line 135
2925 __cil_tmp102 = __cil_tmp101 + 8;
2926#line 135
2927 __cil_tmp103 = data + 6UL;
2928#line 135
2929 __cil_tmp104 = *__cil_tmp103;
2930#line 135
2931 __cil_tmp105 = (int )__cil_tmp104;
2932#line 135
2933 __cil_tmp106 = __cil_tmp105 & 7;
2934#line 135
2935 __cil_tmp107 = __cil_tmp106 << 7;
2936#line 135
2937 __cil_tmp108 = (short )__cil_tmp107;
2938#line 135
2939 __cil_tmp109 = (int )__cil_tmp108;
2940#line 135
2941 __cil_tmp110 = (unsigned long )coord;
2942#line 135
2943 __cil_tmp111 = __cil_tmp110 + 8;
2944#line 135
2945 __cil_tmp112 = *((u16 *)__cil_tmp111);
2946#line 135
2947 __cil_tmp113 = (short )__cil_tmp112;
2948#line 135
2949 __cil_tmp114 = (int )__cil_tmp113;
2950#line 135
2951 __cil_tmp115 = __cil_tmp114 | __cil_tmp109;
2952#line 135
2953 *((u16 *)__cil_tmp102) = (u16 )__cil_tmp115;
2954#line 137
2955 __cil_tmp116 = (unsigned long )coord;
2956#line 137
2957 __cil_tmp117 = __cil_tmp116 + 10;
2958#line 137
2959 __cil_tmp118 = data + 7UL;
2960#line 137
2961 __cil_tmp119 = *__cil_tmp118;
2962#line 137
2963 __cil_tmp120 = (unsigned int )__cil_tmp119;
2964#line 137
2965 __cil_tmp121 = __cil_tmp120 & 127U;
2966#line 137
2967 *((u8 *)__cil_tmp117) = (u8 )__cil_tmp121;
2968#line 138
2969 __cil_tmp122 = (unsigned long )coord;
2970#line 138
2971 __cil_tmp123 = __cil_tmp122 + 11;
2972#line 138
2973 __cil_tmp124 = data + 8UL;
2974#line 138
2975 __cil_tmp125 = *__cil_tmp124;
2976#line 138
2977 __cil_tmp126 = (unsigned int )__cil_tmp125;
2978#line 138
2979 __cil_tmp127 = __cil_tmp126 & 127U;
2980#line 138
2981 *((u8 *)__cil_tmp123) = (u8 )__cil_tmp127;
2982 }
2983#line 139
2984 return;
2985}
2986}
2987#line 141 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/3129/dscv_tempdir/dscv/ri/43_1a/drivers/input/touchscreen/wacom_w8001.c.p"
2988static void parse_single_touch(u8 *data , struct w8001_coord *coord )
2989{ unsigned long __cil_tmp3 ;
2990 unsigned long __cil_tmp4 ;
2991 u8 *__cil_tmp5 ;
2992 u8 __cil_tmp6 ;
2993 short __cil_tmp7 ;
2994 int __cil_tmp8 ;
2995 u8 *__cil_tmp9 ;
2996 u8 __cil_tmp10 ;
2997 int __cil_tmp11 ;
2998 int __cil_tmp12 ;
2999 short __cil_tmp13 ;
3000 int __cil_tmp14 ;
3001 int __cil_tmp15 ;
3002 unsigned long __cil_tmp16 ;
3003 unsigned long __cil_tmp17 ;
3004 u8 *__cil_tmp18 ;
3005 u8 __cil_tmp19 ;
3006 short __cil_tmp20 ;
3007 int __cil_tmp21 ;
3008 u8 *__cil_tmp22 ;
3009 u8 __cil_tmp23 ;
3010 int __cil_tmp24 ;
3011 int __cil_tmp25 ;
3012 short __cil_tmp26 ;
3013 int __cil_tmp27 ;
3014 int __cil_tmp28 ;
3015 unsigned long __cil_tmp29 ;
3016 unsigned long __cil_tmp30 ;
3017 u8 __cil_tmp31 ;
3018 unsigned int __cil_tmp32 ;
3019 unsigned int __cil_tmp33 ;
3020
3021 {
3022#line 143
3023 __cil_tmp3 = (unsigned long )coord;
3024#line 143
3025 __cil_tmp4 = __cil_tmp3 + 4;
3026#line 143
3027 __cil_tmp5 = data + 2UL;
3028#line 143
3029 __cil_tmp6 = *__cil_tmp5;
3030#line 143
3031 __cil_tmp7 = (short )__cil_tmp6;
3032#line 143
3033 __cil_tmp8 = (int )__cil_tmp7;
3034#line 143
3035 __cil_tmp9 = data + 1UL;
3036#line 143
3037 __cil_tmp10 = *__cil_tmp9;
3038#line 143
3039 __cil_tmp11 = (int )__cil_tmp10;
3040#line 143
3041 __cil_tmp12 = __cil_tmp11 << 7;
3042#line 143
3043 __cil_tmp13 = (short )__cil_tmp12;
3044#line 143
3045 __cil_tmp14 = (int )__cil_tmp13;
3046#line 143
3047 __cil_tmp15 = __cil_tmp14 | __cil_tmp8;
3048#line 143
3049 *((u16 *)__cil_tmp4) = (u16 )__cil_tmp15;
3050#line 144
3051 __cil_tmp16 = (unsigned long )coord;
3052#line 144
3053 __cil_tmp17 = __cil_tmp16 + 6;
3054#line 144
3055 __cil_tmp18 = data + 4UL;
3056#line 144
3057 __cil_tmp19 = *__cil_tmp18;
3058#line 144
3059 __cil_tmp20 = (short )__cil_tmp19;
3060#line 144
3061 __cil_tmp21 = (int )__cil_tmp20;
3062#line 144
3063 __cil_tmp22 = data + 3UL;
3064#line 144
3065 __cil_tmp23 = *__cil_tmp22;
3066#line 144
3067 __cil_tmp24 = (int )__cil_tmp23;
3068#line 144
3069 __cil_tmp25 = __cil_tmp24 << 7;
3070#line 144
3071 __cil_tmp26 = (short )__cil_tmp25;
3072#line 144
3073 __cil_tmp27 = (int )__cil_tmp26;
3074#line 144
3075 __cil_tmp28 = __cil_tmp27 | __cil_tmp21;
3076#line 144
3077 *((u16 *)__cil_tmp17) = (u16 )__cil_tmp28;
3078#line 145
3079 __cil_tmp29 = (unsigned long )coord;
3080#line 145
3081 __cil_tmp30 = __cil_tmp29 + 1;
3082#line 145
3083 __cil_tmp31 = *data;
3084#line 145
3085 __cil_tmp32 = (unsigned int )__cil_tmp31;
3086#line 145
3087 __cil_tmp33 = __cil_tmp32 & 1U;
3088#line 145
3089 *((u8 *)__cil_tmp30) = (u8 )__cil_tmp33;
3090#line 146
3091 return;
3092}
3093}
3094#line 148 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/3129/dscv_tempdir/dscv/ri/43_1a/drivers/input/touchscreen/wacom_w8001.c.p"
3095static void scale_touch_coordinates(struct w8001 *w8001 , unsigned int *x , unsigned int *y )
3096{ unsigned long __cil_tmp4 ;
3097 unsigned long __cil_tmp5 ;
3098 u16 __cil_tmp6 ;
3099 unsigned int __cil_tmp7 ;
3100 unsigned long __cil_tmp8 ;
3101 unsigned long __cil_tmp9 ;
3102 u16 __cil_tmp10 ;
3103 unsigned int __cil_tmp11 ;
3104 unsigned long __cil_tmp12 ;
3105 unsigned long __cil_tmp13 ;
3106 u16 __cil_tmp14 ;
3107 unsigned int __cil_tmp15 ;
3108 unsigned long __cil_tmp16 ;
3109 unsigned long __cil_tmp17 ;
3110 u16 __cil_tmp18 ;
3111 unsigned int __cil_tmp19 ;
3112 unsigned int __cil_tmp20 ;
3113 unsigned int __cil_tmp21 ;
3114 unsigned long __cil_tmp22 ;
3115 unsigned long __cil_tmp23 ;
3116 u16 __cil_tmp24 ;
3117 unsigned int __cil_tmp25 ;
3118 unsigned long __cil_tmp26 ;
3119 unsigned long __cil_tmp27 ;
3120 u16 __cil_tmp28 ;
3121 unsigned int __cil_tmp29 ;
3122 unsigned long __cil_tmp30 ;
3123 unsigned long __cil_tmp31 ;
3124 u16 __cil_tmp32 ;
3125 unsigned int __cil_tmp33 ;
3126 unsigned long __cil_tmp34 ;
3127 unsigned long __cil_tmp35 ;
3128 u16 __cil_tmp36 ;
3129 unsigned int __cil_tmp37 ;
3130 unsigned int __cil_tmp38 ;
3131 unsigned int __cil_tmp39 ;
3132
3133 {
3134 {
3135#line 151
3136 __cil_tmp4 = (unsigned long )w8001;
3137#line 151
3138 __cil_tmp5 = __cil_tmp4 + 188;
3139#line 151
3140 __cil_tmp6 = *((u16 *)__cil_tmp5);
3141#line 151
3142 __cil_tmp7 = (unsigned int )__cil_tmp6;
3143#line 151
3144 if (__cil_tmp7 != 0U) {
3145 {
3146#line 151
3147 __cil_tmp8 = (unsigned long )w8001;
3148#line 151
3149 __cil_tmp9 = __cil_tmp8 + 184;
3150#line 151
3151 __cil_tmp10 = *((u16 *)__cil_tmp9);
3152#line 151
3153 __cil_tmp11 = (unsigned int )__cil_tmp10;
3154#line 151
3155 if (__cil_tmp11 != 0U) {
3156#line 152
3157 __cil_tmp12 = (unsigned long )w8001;
3158#line 152
3159 __cil_tmp13 = __cil_tmp12 + 184;
3160#line 152
3161 __cil_tmp14 = *((u16 *)__cil_tmp13);
3162#line 152
3163 __cil_tmp15 = (unsigned int )__cil_tmp14;
3164#line 152
3165 __cil_tmp16 = (unsigned long )w8001;
3166#line 152
3167 __cil_tmp17 = __cil_tmp16 + 188;
3168#line 152
3169 __cil_tmp18 = *((u16 *)__cil_tmp17);
3170#line 152
3171 __cil_tmp19 = (unsigned int )__cil_tmp18;
3172#line 152
3173 __cil_tmp20 = *x;
3174#line 152
3175 __cil_tmp21 = __cil_tmp20 * __cil_tmp19;
3176#line 152
3177 *x = __cil_tmp21 / __cil_tmp15;
3178 } else {
3179
3180 }
3181 }
3182 } else {
3183
3184 }
3185 }
3186 {
3187#line 154
3188 __cil_tmp22 = (unsigned long )w8001;
3189#line 154
3190 __cil_tmp23 = __cil_tmp22 + 190;
3191#line 154
3192 __cil_tmp24 = *((u16 *)__cil_tmp23);
3193#line 154
3194 __cil_tmp25 = (unsigned int )__cil_tmp24;
3195#line 154
3196 if (__cil_tmp25 != 0U) {
3197 {
3198#line 154
3199 __cil_tmp26 = (unsigned long )w8001;
3200#line 154
3201 __cil_tmp27 = __cil_tmp26 + 186;
3202#line 154
3203 __cil_tmp28 = *((u16 *)__cil_tmp27);
3204#line 154
3205 __cil_tmp29 = (unsigned int )__cil_tmp28;
3206#line 154
3207 if (__cil_tmp29 != 0U) {
3208#line 155
3209 __cil_tmp30 = (unsigned long )w8001;
3210#line 155
3211 __cil_tmp31 = __cil_tmp30 + 186;
3212#line 155
3213 __cil_tmp32 = *((u16 *)__cil_tmp31);
3214#line 155
3215 __cil_tmp33 = (unsigned int )__cil_tmp32;
3216#line 155
3217 __cil_tmp34 = (unsigned long )w8001;
3218#line 155
3219 __cil_tmp35 = __cil_tmp34 + 190;
3220#line 155
3221 __cil_tmp36 = *((u16 *)__cil_tmp35);
3222#line 155
3223 __cil_tmp37 = (unsigned int )__cil_tmp36;
3224#line 155
3225 __cil_tmp38 = *y;
3226#line 155
3227 __cil_tmp39 = __cil_tmp38 * __cil_tmp37;
3228#line 155
3229 *y = __cil_tmp39 / __cil_tmp33;
3230 } else {
3231
3232 }
3233 }
3234 } else {
3235
3236 }
3237 }
3238#line 156
3239 return;
3240}
3241}
3242#line 158 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/3129/dscv_tempdir/dscv/ri/43_1a/drivers/input/touchscreen/wacom_w8001.c.p"
3243static void parse_multi_touch(struct w8001 *w8001 )
3244{ struct input_dev *dev ;
3245 unsigned char *data ;
3246 unsigned int x ;
3247 unsigned int y ;
3248 int i ;
3249 int count ;
3250 bool touch ;
3251 unsigned long __cil_tmp9 ;
3252 unsigned long __cil_tmp10 ;
3253 unsigned char (*__cil_tmp11)[11U] ;
3254 int __cil_tmp12 ;
3255 unsigned char __cil_tmp13 ;
3256 int __cil_tmp14 ;
3257 int __cil_tmp15 ;
3258 int __cil_tmp16 ;
3259 int __cil_tmp17 ;
3260 bool __cil_tmp18 ;
3261 unsigned int *__cil_tmp19 ;
3262 int __cil_tmp20 ;
3263 unsigned long __cil_tmp21 ;
3264 unsigned long __cil_tmp22 ;
3265 unsigned char *__cil_tmp23 ;
3266 unsigned char __cil_tmp24 ;
3267 int __cil_tmp25 ;
3268 int __cil_tmp26 ;
3269 unsigned long __cil_tmp27 ;
3270 unsigned long __cil_tmp28 ;
3271 unsigned char *__cil_tmp29 ;
3272 unsigned char __cil_tmp30 ;
3273 int __cil_tmp31 ;
3274 int __cil_tmp32 ;
3275 int __cil_tmp33 ;
3276 unsigned int *__cil_tmp34 ;
3277 int __cil_tmp35 ;
3278 unsigned long __cil_tmp36 ;
3279 unsigned long __cil_tmp37 ;
3280 unsigned char *__cil_tmp38 ;
3281 unsigned char __cil_tmp39 ;
3282 int __cil_tmp40 ;
3283 int __cil_tmp41 ;
3284 unsigned long __cil_tmp42 ;
3285 unsigned long __cil_tmp43 ;
3286 unsigned char *__cil_tmp44 ;
3287 unsigned char __cil_tmp45 ;
3288 int __cil_tmp46 ;
3289 int __cil_tmp47 ;
3290 int __cil_tmp48 ;
3291 unsigned int *__cil_tmp49 ;
3292 unsigned int __cil_tmp50 ;
3293 int __cil_tmp51 ;
3294 unsigned int *__cil_tmp52 ;
3295 unsigned int __cil_tmp53 ;
3296 int __cil_tmp54 ;
3297 unsigned long __cil_tmp55 ;
3298 unsigned long __cil_tmp56 ;
3299 int __cil_tmp57 ;
3300 unsigned long __cil_tmp58 ;
3301 unsigned long __cil_tmp59 ;
3302 int __cil_tmp60 ;
3303 unsigned long __cil_tmp61 ;
3304 unsigned long __cil_tmp62 ;
3305 unsigned long __cil_tmp63 ;
3306 unsigned long __cil_tmp64 ;
3307 bool __cil_tmp65 ;
3308
3309 {
3310#line 160
3311 dev = *((struct input_dev **)w8001);
3312#line 161
3313 __cil_tmp9 = (unsigned long )w8001;
3314#line 161
3315 __cil_tmp10 = __cil_tmp9 + 132;
3316#line 161
3317 __cil_tmp11 = (unsigned char (*)[11U])__cil_tmp10;
3318#line 161
3319 data = (unsigned char *)__cil_tmp11;
3320#line 164
3321 count = 0;
3322#line 166
3323 i = 0;
3324#line 166
3325 goto ldv_20849;
3326 ldv_20848:
3327 {
3328#line 167
3329 __cil_tmp12 = 1 << i;
3330#line 167
3331 __cil_tmp13 = *data;
3332#line 167
3333 __cil_tmp14 = (int )__cil_tmp13;
3334#line 167
3335 __cil_tmp15 = __cil_tmp14 & __cil_tmp12;
3336#line 167
3337 __cil_tmp16 = __cil_tmp15 != 0;
3338#line 167
3339 touch = (bool )__cil_tmp16;
3340#line 169
3341 input_mt_slot(dev, i);
3342#line 170
3343 __cil_tmp17 = (int )touch;
3344#line 170
3345 __cil_tmp18 = (bool )__cil_tmp17;
3346#line 170
3347 input_mt_report_slot_state(dev, 0U, __cil_tmp18);
3348 }
3349#line 171
3350 if ((int )touch) {
3351 {
3352#line 172
3353 __cil_tmp19 = & x;
3354#line 172
3355 __cil_tmp20 = i * 6;
3356#line 172
3357 __cil_tmp21 = (unsigned long )__cil_tmp20;
3358#line 172
3359 __cil_tmp22 = __cil_tmp21 + 2UL;
3360#line 172
3361 __cil_tmp23 = data + __cil_tmp22;
3362#line 172
3363 __cil_tmp24 = *__cil_tmp23;
3364#line 172
3365 __cil_tmp25 = (int )__cil_tmp24;
3366#line 172
3367 __cil_tmp26 = i * 6;
3368#line 172
3369 __cil_tmp27 = (unsigned long )__cil_tmp26;
3370#line 172
3371 __cil_tmp28 = __cil_tmp27 + 1UL;
3372#line 172
3373 __cil_tmp29 = data + __cil_tmp28;
3374#line 172
3375 __cil_tmp30 = *__cil_tmp29;
3376#line 172
3377 __cil_tmp31 = (int )__cil_tmp30;
3378#line 172
3379 __cil_tmp32 = __cil_tmp31 << 7;
3380#line 172
3381 __cil_tmp33 = __cil_tmp32 | __cil_tmp25;
3382#line 172
3383 *__cil_tmp19 = (unsigned int )__cil_tmp33;
3384#line 173
3385 __cil_tmp34 = & y;
3386#line 173
3387 __cil_tmp35 = i * 6;
3388#line 173
3389 __cil_tmp36 = (unsigned long )__cil_tmp35;
3390#line 173
3391 __cil_tmp37 = __cil_tmp36 + 4UL;
3392#line 173
3393 __cil_tmp38 = data + __cil_tmp37;
3394#line 173
3395 __cil_tmp39 = *__cil_tmp38;
3396#line 173
3397 __cil_tmp40 = (int )__cil_tmp39;
3398#line 173
3399 __cil_tmp41 = i * 6;
3400#line 173
3401 __cil_tmp42 = (unsigned long )__cil_tmp41;
3402#line 173
3403 __cil_tmp43 = __cil_tmp42 + 3UL;
3404#line 173
3405 __cil_tmp44 = data + __cil_tmp43;
3406#line 173
3407 __cil_tmp45 = *__cil_tmp44;
3408#line 173
3409 __cil_tmp46 = (int )__cil_tmp45;
3410#line 173
3411 __cil_tmp47 = __cil_tmp46 << 7;
3412#line 173
3413 __cil_tmp48 = __cil_tmp47 | __cil_tmp40;
3414#line 173
3415 *__cil_tmp34 = (unsigned int )__cil_tmp48;
3416#line 177
3417 scale_touch_coordinates(w8001, & x, & y);
3418#line 179
3419 __cil_tmp49 = & x;
3420#line 179
3421 __cil_tmp50 = *__cil_tmp49;
3422#line 179
3423 __cil_tmp51 = (int )__cil_tmp50;
3424#line 179
3425 input_report_abs(dev, 53U, __cil_tmp51);
3426#line 180
3427 __cil_tmp52 = & y;
3428#line 180
3429 __cil_tmp53 = *__cil_tmp52;
3430#line 180
3431 __cil_tmp54 = (int )__cil_tmp53;
3432#line 180
3433 input_report_abs(dev, 54U, __cil_tmp54);
3434#line 181
3435 count = count + 1;
3436 }
3437 } else {
3438
3439 }
3440#line 166
3441 i = i + 1;
3442 ldv_20849: ;
3443#line 166
3444 if (i <= 1) {
3445#line 167
3446 goto ldv_20848;
3447 } else {
3448#line 169
3449 goto ldv_20850;
3450 }
3451 ldv_20850: ;
3452 {
3453#line 189
3454 __cil_tmp55 = (unsigned long )w8001;
3455#line 189
3456 __cil_tmp56 = __cil_tmp55 + 176;
3457#line 189
3458 __cil_tmp57 = *((int *)__cil_tmp56);
3459#line 189
3460 if (__cil_tmp57 != 320) {
3461 {
3462#line 189
3463 __cil_tmp58 = (unsigned long )w8001;
3464#line 189
3465 __cil_tmp59 = __cil_tmp58 + 176;
3466#line 189
3467 __cil_tmp60 = *((int *)__cil_tmp59);
3468#line 189
3469 if (__cil_tmp60 != 321) {
3470#line 191
3471 if (count == 1) {
3472#line 191
3473 __cil_tmp61 = (unsigned long )w8001;
3474#line 191
3475 __cil_tmp62 = __cil_tmp61 + 176;
3476#line 191
3477 *((int *)__cil_tmp62) = 325;
3478 } else {
3479#line 191
3480 __cil_tmp63 = (unsigned long )w8001;
3481#line 191
3482 __cil_tmp64 = __cil_tmp63 + 176;
3483#line 191
3484 *((int *)__cil_tmp64) = 0;
3485 }
3486 {
3487#line 192
3488 __cil_tmp65 = (bool )1;
3489#line 192
3490 input_mt_report_pointer_emulation(dev, __cil_tmp65);
3491 }
3492 } else {
3493
3494 }
3495 }
3496 } else {
3497
3498 }
3499 }
3500 {
3501#line 195
3502 input_sync(dev);
3503 }
3504#line 196
3505 return;
3506}
3507}
3508#line 198 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/3129/dscv_tempdir/dscv/ri/43_1a/drivers/input/touchscreen/wacom_w8001.c.p"
3509static void parse_touchquery(u8 *data , struct w8001_touch_query *query )
3510{ u16 tmp ;
3511 void *__cil_tmp4 ;
3512 unsigned long __cil_tmp5 ;
3513 unsigned long __cil_tmp6 ;
3514 u8 *__cil_tmp7 ;
3515 unsigned long __cil_tmp8 ;
3516 unsigned long __cil_tmp9 ;
3517 u8 *__cil_tmp10 ;
3518 u8 __cil_tmp11 ;
3519 unsigned int __cil_tmp12 ;
3520 unsigned int __cil_tmp13 ;
3521 unsigned long __cil_tmp14 ;
3522 unsigned long __cil_tmp15 ;
3523 u8 *__cil_tmp16 ;
3524 u8 *__cil_tmp17 ;
3525 u8 __cil_tmp18 ;
3526 u16 __cil_tmp19 ;
3527 int __cil_tmp20 ;
3528 int __cil_tmp21 ;
3529 u8 *__cil_tmp22 ;
3530 u8 __cil_tmp23 ;
3531 int __cil_tmp24 ;
3532 int __cil_tmp25 ;
3533 short __cil_tmp26 ;
3534 int __cil_tmp27 ;
3535 u16 __cil_tmp28 ;
3536 short __cil_tmp29 ;
3537 int __cil_tmp30 ;
3538 int __cil_tmp31 ;
3539 u8 *__cil_tmp32 ;
3540 u8 __cil_tmp33 ;
3541 int __cil_tmp34 ;
3542 int __cil_tmp35 ;
3543 short __cil_tmp36 ;
3544 int __cil_tmp37 ;
3545 int __cil_tmp38 ;
3546 u16 __cil_tmp39 ;
3547 short __cil_tmp40 ;
3548 int __cil_tmp41 ;
3549 int __cil_tmp42 ;
3550 unsigned long __cil_tmp43 ;
3551 unsigned long __cil_tmp44 ;
3552 u8 *__cil_tmp45 ;
3553 u8 __cil_tmp46 ;
3554 u16 __cil_tmp47 ;
3555 int __cil_tmp48 ;
3556 int __cil_tmp49 ;
3557 unsigned long __cil_tmp50 ;
3558 unsigned long __cil_tmp51 ;
3559 u8 *__cil_tmp52 ;
3560 u8 __cil_tmp53 ;
3561 int __cil_tmp54 ;
3562 int __cil_tmp55 ;
3563 short __cil_tmp56 ;
3564 int __cil_tmp57 ;
3565 unsigned long __cil_tmp58 ;
3566 unsigned long __cil_tmp59 ;
3567 u16 __cil_tmp60 ;
3568 short __cil_tmp61 ;
3569 int __cil_tmp62 ;
3570 int __cil_tmp63 ;
3571 unsigned long __cil_tmp64 ;
3572 unsigned long __cil_tmp65 ;
3573 u8 *__cil_tmp66 ;
3574 u8 __cil_tmp67 ;
3575 int __cil_tmp68 ;
3576 int __cil_tmp69 ;
3577 short __cil_tmp70 ;
3578 int __cil_tmp71 ;
3579 int __cil_tmp72 ;
3580 unsigned long __cil_tmp73 ;
3581 unsigned long __cil_tmp74 ;
3582 u16 __cil_tmp75 ;
3583 short __cil_tmp76 ;
3584 int __cil_tmp77 ;
3585 int __cil_tmp78 ;
3586 u16 __cil_tmp79 ;
3587 unsigned int __cil_tmp80 ;
3588 unsigned long __cil_tmp81 ;
3589 unsigned long __cil_tmp82 ;
3590 u16 __cil_tmp83 ;
3591 unsigned int __cil_tmp84 ;
3592 unsigned long __cil_tmp85 ;
3593 unsigned long __cil_tmp86 ;
3594 unsigned long __cil_tmp87 ;
3595 unsigned long __cil_tmp88 ;
3596 u8 __cil_tmp89 ;
3597 unsigned int __cil_tmp90 ;
3598 unsigned long __cil_tmp91 ;
3599 unsigned long __cil_tmp92 ;
3600 u8 __cil_tmp93 ;
3601 int __cil_tmp94 ;
3602 int __cil_tmp95 ;
3603 unsigned long __cil_tmp96 ;
3604 unsigned long __cil_tmp97 ;
3605 unsigned long __cil_tmp98 ;
3606 unsigned long __cil_tmp99 ;
3607
3608 {
3609 {
3610#line 200
3611 __cil_tmp4 = (void *)query;
3612#line 200
3613 memset(__cil_tmp4, 0, 8UL);
3614#line 202
3615 __cil_tmp5 = (unsigned long )query;
3616#line 202
3617 __cil_tmp6 = __cil_tmp5 + 4;
3618#line 202
3619 __cil_tmp7 = data + 1UL;
3620#line 202
3621 *((u8 *)__cil_tmp6) = *__cil_tmp7;
3622#line 203
3623 __cil_tmp8 = (unsigned long )query;
3624#line 203
3625 __cil_tmp9 = __cil_tmp8 + 6;
3626#line 203
3627 __cil_tmp10 = data + 2UL;
3628#line 203
3629 __cil_tmp11 = *__cil_tmp10;
3630#line 203
3631 __cil_tmp12 = (unsigned int )__cil_tmp11;
3632#line 203
3633 __cil_tmp13 = __cil_tmp12 & 7U;
3634#line 203
3635 *((u8 *)__cil_tmp9) = (u8 )__cil_tmp13;
3636#line 204
3637 __cil_tmp14 = (unsigned long )query;
3638#line 204
3639 __cil_tmp15 = __cil_tmp14 + 5;
3640#line 204
3641 __cil_tmp16 = data + 7UL;
3642#line 204
3643 *((u8 *)__cil_tmp15) = *__cil_tmp16;
3644#line 206
3645 __cil_tmp17 = data + 3UL;
3646#line 206
3647 __cil_tmp18 = *__cil_tmp17;
3648#line 206
3649 __cil_tmp19 = (u16 )__cil_tmp18;
3650#line 206
3651 __cil_tmp20 = (int )__cil_tmp19;
3652#line 206
3653 __cil_tmp21 = __cil_tmp20 << 9U;
3654#line 206
3655 *((u16 *)query) = (u16 )__cil_tmp21;
3656#line 207
3657 __cil_tmp22 = data + 4UL;
3658#line 207
3659 __cil_tmp23 = *__cil_tmp22;
3660#line 207
3661 __cil_tmp24 = (int )__cil_tmp23;
3662#line 207
3663 __cil_tmp25 = __cil_tmp24 << 2;
3664#line 207
3665 __cil_tmp26 = (short )__cil_tmp25;
3666#line 207
3667 __cil_tmp27 = (int )__cil_tmp26;
3668#line 207
3669 __cil_tmp28 = *((u16 *)query);
3670#line 207
3671 __cil_tmp29 = (short )__cil_tmp28;
3672#line 207
3673 __cil_tmp30 = (int )__cil_tmp29;
3674#line 207
3675 __cil_tmp31 = __cil_tmp30 | __cil_tmp27;
3676#line 207
3677 *((u16 *)query) = (u16 )__cil_tmp31;
3678#line 208
3679 __cil_tmp32 = data + 2UL;
3680#line 208
3681 __cil_tmp33 = *__cil_tmp32;
3682#line 208
3683 __cil_tmp34 = (int )__cil_tmp33;
3684#line 208
3685 __cil_tmp35 = __cil_tmp34 >> 5;
3686#line 208
3687 __cil_tmp36 = (short )__cil_tmp35;
3688#line 208
3689 __cil_tmp37 = (int )__cil_tmp36;
3690#line 208
3691 __cil_tmp38 = __cil_tmp37 & 3;
3692#line 208
3693 __cil_tmp39 = *((u16 *)query);
3694#line 208
3695 __cil_tmp40 = (short )__cil_tmp39;
3696#line 208
3697 __cil_tmp41 = (int )__cil_tmp40;
3698#line 208
3699 __cil_tmp42 = __cil_tmp41 | __cil_tmp38;
3700#line 208
3701 *((u16 *)query) = (u16 )__cil_tmp42;
3702#line 210
3703 __cil_tmp43 = (unsigned long )query;
3704#line 210
3705 __cil_tmp44 = __cil_tmp43 + 2;
3706#line 210
3707 __cil_tmp45 = data + 5UL;
3708#line 210
3709 __cil_tmp46 = *__cil_tmp45;
3710#line 210
3711 __cil_tmp47 = (u16 )__cil_tmp46;
3712#line 210
3713 __cil_tmp48 = (int )__cil_tmp47;
3714#line 210
3715 __cil_tmp49 = __cil_tmp48 << 9U;
3716#line 210
3717 *((u16 *)__cil_tmp44) = (u16 )__cil_tmp49;
3718#line 211
3719 __cil_tmp50 = (unsigned long )query;
3720#line 211
3721 __cil_tmp51 = __cil_tmp50 + 2;
3722#line 211
3723 __cil_tmp52 = data + 6UL;
3724#line 211
3725 __cil_tmp53 = *__cil_tmp52;
3726#line 211
3727 __cil_tmp54 = (int )__cil_tmp53;
3728#line 211
3729 __cil_tmp55 = __cil_tmp54 << 2;
3730#line 211
3731 __cil_tmp56 = (short )__cil_tmp55;
3732#line 211
3733 __cil_tmp57 = (int )__cil_tmp56;
3734#line 211
3735 __cil_tmp58 = (unsigned long )query;
3736#line 211
3737 __cil_tmp59 = __cil_tmp58 + 2;
3738#line 211
3739 __cil_tmp60 = *((u16 *)__cil_tmp59);
3740#line 211
3741 __cil_tmp61 = (short )__cil_tmp60;
3742#line 211
3743 __cil_tmp62 = (int )__cil_tmp61;
3744#line 211
3745 __cil_tmp63 = __cil_tmp62 | __cil_tmp57;
3746#line 211
3747 *((u16 *)__cil_tmp51) = (u16 )__cil_tmp63;
3748#line 212
3749 __cil_tmp64 = (unsigned long )query;
3750#line 212
3751 __cil_tmp65 = __cil_tmp64 + 2;
3752#line 212
3753 __cil_tmp66 = data + 2UL;
3754#line 212
3755 __cil_tmp67 = *__cil_tmp66;
3756#line 212
3757 __cil_tmp68 = (int )__cil_tmp67;
3758#line 212
3759 __cil_tmp69 = __cil_tmp68 >> 3;
3760#line 212
3761 __cil_tmp70 = (short )__cil_tmp69;
3762#line 212
3763 __cil_tmp71 = (int )__cil_tmp70;
3764#line 212
3765 __cil_tmp72 = __cil_tmp71 & 3;
3766#line 212
3767 __cil_tmp73 = (unsigned long )query;
3768#line 212
3769 __cil_tmp74 = __cil_tmp73 + 2;
3770#line 212
3771 __cil_tmp75 = *((u16 *)__cil_tmp74);
3772#line 212
3773 __cil_tmp76 = (short )__cil_tmp75;
3774#line 212
3775 __cil_tmp77 = (int )__cil_tmp76;
3776#line 212
3777 __cil_tmp78 = __cil_tmp77 | __cil_tmp72;
3778#line 212
3779 *((u16 *)__cil_tmp65) = (u16 )__cil_tmp78;
3780 }
3781 {
3782#line 215
3783 __cil_tmp79 = *((u16 *)query);
3784#line 215
3785 __cil_tmp80 = (unsigned int )__cil_tmp79;
3786#line 215
3787 if (__cil_tmp80 == 0U) {
3788 {
3789#line 215
3790 __cil_tmp81 = (unsigned long )query;
3791#line 215
3792 __cil_tmp82 = __cil_tmp81 + 2;
3793#line 215
3794 __cil_tmp83 = *((u16 *)__cil_tmp82);
3795#line 215
3796 __cil_tmp84 = (unsigned int )__cil_tmp83;
3797#line 215
3798 if (__cil_tmp84 == 0U) {
3799#line 216
3800 *((u16 *)query) = (u16 )1024U;
3801#line 217
3802 __cil_tmp85 = (unsigned long )query;
3803#line 217
3804 __cil_tmp86 = __cil_tmp85 + 2;
3805#line 217
3806 *((u16 *)__cil_tmp86) = (u16 )1024U;
3807 {
3808#line 218
3809 __cil_tmp87 = (unsigned long )query;
3810#line 218
3811 __cil_tmp88 = __cil_tmp87 + 4;
3812#line 218
3813 __cil_tmp89 = *((u8 *)__cil_tmp88);
3814#line 218
3815 __cil_tmp90 = (unsigned int )__cil_tmp89;
3816#line 218
3817 if (__cil_tmp90 != 0U) {
3818#line 219
3819 __cil_tmp91 = (unsigned long )query;
3820#line 219
3821 __cil_tmp92 = __cil_tmp91 + 4;
3822#line 219
3823 __cil_tmp93 = *((u8 *)__cil_tmp92);
3824#line 219
3825 __cil_tmp94 = (int )__cil_tmp93;
3826#line 219
3827 __cil_tmp95 = 1 << __cil_tmp94;
3828#line 219
3829 tmp = (u16 )__cil_tmp95;
3830#line 219
3831 __cil_tmp96 = (unsigned long )query;
3832#line 219
3833 __cil_tmp97 = __cil_tmp96 + 2;
3834#line 219
3835 *((u16 *)__cil_tmp97) = tmp;
3836#line 219
3837 *((u16 *)query) = tmp;
3838 } else {
3839
3840 }
3841 }
3842#line 220
3843 __cil_tmp98 = (unsigned long )query;
3844#line 220
3845 __cil_tmp99 = __cil_tmp98 + 4;
3846#line 220
3847 *((u8 *)__cil_tmp99) = (u8 )10U;
3848 } else {
3849
3850 }
3851 }
3852 } else {
3853
3854 }
3855 }
3856#line 222
3857 return;
3858}
3859}
3860#line 224 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/3129/dscv_tempdir/dscv/ri/43_1a/drivers/input/touchscreen/wacom_w8001.c.p"
3861static void report_pen_events(struct w8001 *w8001 , struct w8001_coord *coord )
3862{ struct input_dev *dev ;
3863 unsigned long __cil_tmp4 ;
3864 unsigned long __cil_tmp5 ;
3865 unsigned long __cil_tmp6 ;
3866 unsigned long __cil_tmp7 ;
3867 u8 __cil_tmp8 ;
3868 unsigned int __cil_tmp9 ;
3869 unsigned long __cil_tmp10 ;
3870 unsigned long __cil_tmp11 ;
3871 unsigned long __cil_tmp12 ;
3872 unsigned long __cil_tmp13 ;
3873 u8 __cil_tmp14 ;
3874 unsigned int __cil_tmp15 ;
3875 unsigned long __cil_tmp16 ;
3876 unsigned long __cil_tmp17 ;
3877 unsigned long __cil_tmp18 ;
3878 unsigned long __cil_tmp19 ;
3879 unsigned long __cil_tmp20 ;
3880 unsigned long __cil_tmp21 ;
3881 u8 __cil_tmp22 ;
3882 int __cil_tmp23 ;
3883 unsigned long __cil_tmp24 ;
3884 unsigned long __cil_tmp25 ;
3885 u16 __cil_tmp26 ;
3886 int __cil_tmp27 ;
3887 unsigned long __cil_tmp28 ;
3888 unsigned long __cil_tmp29 ;
3889 u16 __cil_tmp30 ;
3890 int __cil_tmp31 ;
3891 unsigned long __cil_tmp32 ;
3892 unsigned long __cil_tmp33 ;
3893 u16 __cil_tmp34 ;
3894 int __cil_tmp35 ;
3895 unsigned long __cil_tmp36 ;
3896 unsigned long __cil_tmp37 ;
3897 u8 __cil_tmp38 ;
3898 int __cil_tmp39 ;
3899 unsigned long __cil_tmp40 ;
3900 unsigned long __cil_tmp41 ;
3901 u8 __cil_tmp42 ;
3902 int __cil_tmp43 ;
3903 unsigned long __cil_tmp44 ;
3904 unsigned long __cil_tmp45 ;
3905 int __cil_tmp46 ;
3906 unsigned int __cil_tmp47 ;
3907 u8 __cil_tmp48 ;
3908 int __cil_tmp49 ;
3909 u8 __cil_tmp50 ;
3910 unsigned int __cil_tmp51 ;
3911 unsigned long __cil_tmp52 ;
3912 unsigned long __cil_tmp53 ;
3913
3914 {
3915#line 226
3916 dev = *((struct input_dev **)w8001);
3917 {
3918#line 238
3919 __cil_tmp4 = (unsigned long )w8001;
3920#line 238
3921 __cil_tmp5 = __cil_tmp4 + 176;
3922#line 239
3923 if (*((int *)__cil_tmp5) == 321) {
3924#line 239
3925 goto case_321;
3926 } else
3927#line 251
3928 if (*((int *)__cil_tmp5) == 325) {
3929#line 251
3930 goto case_325;
3931 } else
3932#line 257
3933 if (*((int *)__cil_tmp5) == 0) {
3934#line 257
3935 goto case_0;
3936 } else {
3937 {
3938#line 261
3939 goto switch_default;
3940#line 238
3941 if (0) {
3942 case_321: ;
3943 {
3944#line 240
3945 __cil_tmp6 = (unsigned long )coord;
3946#line 240
3947 __cil_tmp7 = __cil_tmp6 + 3;
3948#line 240
3949 __cil_tmp8 = *((u8 *)__cil_tmp7);
3950#line 240
3951 __cil_tmp9 = (unsigned int )__cil_tmp8;
3952#line 240
3953 if (__cil_tmp9 == 0U) {
3954 {
3955#line 241
3956 input_report_abs(dev, 24U, 0);
3957#line 242
3958 input_report_key(dev, 330U, 0);
3959#line 243
3960 input_report_key(dev, 331U, 0);
3961#line 244
3962 input_report_key(dev, 332U, 0);
3963#line 245
3964 input_report_key(dev, 321U, 0);
3965#line 246
3966 input_sync(dev);
3967#line 247
3968 __cil_tmp10 = (unsigned long )w8001;
3969#line 247
3970 __cil_tmp11 = __cil_tmp10 + 176;
3971#line 247
3972 *((int *)__cil_tmp11) = 320;
3973 }
3974 } else {
3975
3976 }
3977 }
3978#line 249
3979 goto ldv_20861;
3980 case_325:
3981 {
3982#line 252
3983 input_report_key(dev, 330U, 0);
3984#line 253
3985 input_report_key(dev, 325U, 0);
3986#line 254
3987 input_sync(dev);
3988 }
3989 case_0: ;
3990 {
3991#line 258
3992 __cil_tmp12 = (unsigned long )coord;
3993#line 258
3994 __cil_tmp13 = __cil_tmp12 + 3;
3995#line 258
3996 __cil_tmp14 = *((u8 *)__cil_tmp13);
3997#line 258
3998 __cil_tmp15 = (unsigned int )__cil_tmp14;
3999#line 258
4000 if (__cil_tmp15 != 0U) {
4001#line 258
4002 __cil_tmp16 = (unsigned long )w8001;
4003#line 258
4004 __cil_tmp17 = __cil_tmp16 + 176;
4005#line 258
4006 *((int *)__cil_tmp17) = 321;
4007 } else {
4008#line 258
4009 __cil_tmp18 = (unsigned long )w8001;
4010#line 258
4011 __cil_tmp19 = __cil_tmp18 + 176;
4012#line 258
4013 *((int *)__cil_tmp19) = 320;
4014 }
4015 }
4016#line 259
4017 goto ldv_20861;
4018 switch_default:
4019 {
4020#line 262
4021 __cil_tmp20 = (unsigned long )coord;
4022#line 262
4023 __cil_tmp21 = __cil_tmp20 + 3;
4024#line 262
4025 __cil_tmp22 = *((u8 *)__cil_tmp21);
4026#line 262
4027 __cil_tmp23 = (int )__cil_tmp22;
4028#line 262
4029 input_report_key(dev, 332U, __cil_tmp23);
4030 }
4031#line 263
4032 goto ldv_20861;
4033 } else {
4034 switch_break: ;
4035 }
4036 }
4037 }
4038 }
4039 ldv_20861:
4040 {
4041#line 266
4042 __cil_tmp24 = (unsigned long )coord;
4043#line 266
4044 __cil_tmp25 = __cil_tmp24 + 4;
4045#line 266
4046 __cil_tmp26 = *((u16 *)__cil_tmp25);
4047#line 266
4048 __cil_tmp27 = (int )__cil_tmp26;
4049#line 266
4050 input_report_abs(dev, 0U, __cil_tmp27);
4051#line 267
4052 __cil_tmp28 = (unsigned long )coord;
4053#line 267
4054 __cil_tmp29 = __cil_tmp28 + 6;
4055#line 267
4056 __cil_tmp30 = *((u16 *)__cil_tmp29);
4057#line 267
4058 __cil_tmp31 = (int )__cil_tmp30;
4059#line 267
4060 input_report_abs(dev, 1U, __cil_tmp31);
4061#line 268
4062 __cil_tmp32 = (unsigned long )coord;
4063#line 268
4064 __cil_tmp33 = __cil_tmp32 + 8;
4065#line 268
4066 __cil_tmp34 = *((u16 *)__cil_tmp33);
4067#line 268
4068 __cil_tmp35 = (int )__cil_tmp34;
4069#line 268
4070 input_report_abs(dev, 24U, __cil_tmp35);
4071#line 269
4072 __cil_tmp36 = (unsigned long )coord;
4073#line 269
4074 __cil_tmp37 = __cil_tmp36 + 1;
4075#line 269
4076 __cil_tmp38 = *((u8 *)__cil_tmp37);
4077#line 269
4078 __cil_tmp39 = (int )__cil_tmp38;
4079#line 269
4080 input_report_key(dev, 330U, __cil_tmp39);
4081#line 270
4082 __cil_tmp40 = (unsigned long )coord;
4083#line 270
4084 __cil_tmp41 = __cil_tmp40 + 2;
4085#line 270
4086 __cil_tmp42 = *((u8 *)__cil_tmp41);
4087#line 270
4088 __cil_tmp43 = (int )__cil_tmp42;
4089#line 270
4090 input_report_key(dev, 331U, __cil_tmp43);
4091#line 271
4092 __cil_tmp44 = (unsigned long )w8001;
4093#line 271
4094 __cil_tmp45 = __cil_tmp44 + 176;
4095#line 271
4096 __cil_tmp46 = *((int *)__cil_tmp45);
4097#line 271
4098 __cil_tmp47 = (unsigned int )__cil_tmp46;
4099#line 271
4100 __cil_tmp48 = *((u8 *)coord);
4101#line 271
4102 __cil_tmp49 = (int )__cil_tmp48;
4103#line 271
4104 input_report_key(dev, __cil_tmp47, __cil_tmp49);
4105#line 272
4106 input_sync(dev);
4107 }
4108 {
4109#line 274
4110 __cil_tmp50 = *((u8 *)coord);
4111#line 274
4112 __cil_tmp51 = (unsigned int )__cil_tmp50;
4113#line 274
4114 if (__cil_tmp51 == 0U) {
4115#line 275
4116 __cil_tmp52 = (unsigned long )w8001;
4117#line 275
4118 __cil_tmp53 = __cil_tmp52 + 176;
4119#line 275
4120 *((int *)__cil_tmp53) = 0;
4121 } else {
4122
4123 }
4124 }
4125#line 276
4126 return;
4127}
4128}
4129#line 278 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/3129/dscv_tempdir/dscv/ri/43_1a/drivers/input/touchscreen/wacom_w8001.c.p"
4130static void report_single_touch(struct w8001 *w8001 , struct w8001_coord *coord )
4131{ struct input_dev *dev ;
4132 unsigned int x ;
4133 unsigned int y ;
4134 unsigned int *__cil_tmp6 ;
4135 unsigned long __cil_tmp7 ;
4136 unsigned long __cil_tmp8 ;
4137 u16 __cil_tmp9 ;
4138 unsigned int *__cil_tmp10 ;
4139 unsigned long __cil_tmp11 ;
4140 unsigned long __cil_tmp12 ;
4141 u16 __cil_tmp13 ;
4142 unsigned int *__cil_tmp14 ;
4143 unsigned int __cil_tmp15 ;
4144 int __cil_tmp16 ;
4145 unsigned int *__cil_tmp17 ;
4146 unsigned int __cil_tmp18 ;
4147 int __cil_tmp19 ;
4148 unsigned long __cil_tmp20 ;
4149 unsigned long __cil_tmp21 ;
4150 u8 __cil_tmp22 ;
4151 int __cil_tmp23 ;
4152 unsigned long __cil_tmp24 ;
4153 unsigned long __cil_tmp25 ;
4154 u8 __cil_tmp26 ;
4155 int __cil_tmp27 ;
4156 unsigned long __cil_tmp28 ;
4157 unsigned long __cil_tmp29 ;
4158 u8 __cil_tmp30 ;
4159 unsigned int __cil_tmp31 ;
4160 unsigned long __cil_tmp32 ;
4161 unsigned long __cil_tmp33 ;
4162 unsigned long __cil_tmp34 ;
4163 unsigned long __cil_tmp35 ;
4164
4165 {
4166 {
4167#line 280
4168 dev = *((struct input_dev **)w8001);
4169#line 281
4170 __cil_tmp6 = & x;
4171#line 281
4172 __cil_tmp7 = (unsigned long )coord;
4173#line 281
4174 __cil_tmp8 = __cil_tmp7 + 4;
4175#line 281
4176 __cil_tmp9 = *((u16 *)__cil_tmp8);
4177#line 281
4178 *__cil_tmp6 = (unsigned int )__cil_tmp9;
4179#line 282
4180 __cil_tmp10 = & y;
4181#line 282
4182 __cil_tmp11 = (unsigned long )coord;
4183#line 282
4184 __cil_tmp12 = __cil_tmp11 + 6;
4185#line 282
4186 __cil_tmp13 = *((u16 *)__cil_tmp12);
4187#line 282
4188 *__cil_tmp10 = (unsigned int )__cil_tmp13;
4189#line 285
4190 scale_touch_coordinates(w8001, & x, & y);
4191#line 287
4192 __cil_tmp14 = & x;
4193#line 287
4194 __cil_tmp15 = *__cil_tmp14;
4195#line 287
4196 __cil_tmp16 = (int )__cil_tmp15;
4197#line 287
4198 input_report_abs(dev, 0U, __cil_tmp16);
4199#line 288
4200 __cil_tmp17 = & y;
4201#line 288
4202 __cil_tmp18 = *__cil_tmp17;
4203#line 288
4204 __cil_tmp19 = (int )__cil_tmp18;
4205#line 288
4206 input_report_abs(dev, 1U, __cil_tmp19);
4207#line 289
4208 __cil_tmp20 = (unsigned long )coord;
4209#line 289
4210 __cil_tmp21 = __cil_tmp20 + 1;
4211#line 289
4212 __cil_tmp22 = *((u8 *)__cil_tmp21);
4213#line 289
4214 __cil_tmp23 = (int )__cil_tmp22;
4215#line 289
4216 input_report_key(dev, 330U, __cil_tmp23);
4217#line 290
4218 __cil_tmp24 = (unsigned long )coord;
4219#line 290
4220 __cil_tmp25 = __cil_tmp24 + 1;
4221#line 290
4222 __cil_tmp26 = *((u8 *)__cil_tmp25);
4223#line 290
4224 __cil_tmp27 = (int )__cil_tmp26;
4225#line 290
4226 input_report_key(dev, 325U, __cil_tmp27);
4227#line 292
4228 input_sync(dev);
4229 }
4230 {
4231#line 294
4232 __cil_tmp28 = (unsigned long )coord;
4233#line 294
4234 __cil_tmp29 = __cil_tmp28 + 1;
4235#line 294
4236 __cil_tmp30 = *((u8 *)__cil_tmp29);
4237#line 294
4238 __cil_tmp31 = (unsigned int )__cil_tmp30;
4239#line 294
4240 if (__cil_tmp31 != 0U) {
4241#line 294
4242 __cil_tmp32 = (unsigned long )w8001;
4243#line 294
4244 __cil_tmp33 = __cil_tmp32 + 176;
4245#line 294
4246 *((int *)__cil_tmp33) = 325;
4247 } else {
4248#line 294
4249 __cil_tmp34 = (unsigned long )w8001;
4250#line 294
4251 __cil_tmp35 = __cil_tmp34 + 176;
4252#line 294
4253 *((int *)__cil_tmp35) = 0;
4254 }
4255 }
4256#line 295
4257 return;
4258}
4259}
4260#line 297 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/3129/dscv_tempdir/dscv/ri/43_1a/drivers/input/touchscreen/wacom_w8001.c.p"
4261static irqreturn_t w8001_interrupt(struct serio *serio , unsigned char data , unsigned int flags )
4262{ struct w8001 *w8001 ;
4263 void *tmp ;
4264 struct w8001_coord coord ;
4265 unsigned char tmp___0 ;
4266 int tmp___1 ;
4267 struct _ddebug descriptor ;
4268 long tmp___2 ;
4269 long tmp___3 ;
4270 size_t __len ;
4271 void *__ret ;
4272 unsigned long __cil_tmp14 ;
4273 unsigned long __cil_tmp15 ;
4274 int __cil_tmp16 ;
4275 unsigned long __cil_tmp17 ;
4276 unsigned long __cil_tmp18 ;
4277 unsigned long __cil_tmp19 ;
4278 unsigned long __cil_tmp20 ;
4279 unsigned long __cil_tmp21 ;
4280 unsigned long __cil_tmp22 ;
4281 unsigned long __cil_tmp23 ;
4282 unsigned long __cil_tmp24 ;
4283 unsigned long __cil_tmp25 ;
4284 unsigned long __cil_tmp26 ;
4285 int __cil_tmp27 ;
4286 signed char __cil_tmp28 ;
4287 int __cil_tmp29 ;
4288 struct _ddebug *__cil_tmp30 ;
4289 unsigned long __cil_tmp31 ;
4290 unsigned long __cil_tmp32 ;
4291 unsigned long __cil_tmp33 ;
4292 unsigned long __cil_tmp34 ;
4293 unsigned long __cil_tmp35 ;
4294 unsigned long __cil_tmp36 ;
4295 unsigned char __cil_tmp37 ;
4296 long __cil_tmp38 ;
4297 long __cil_tmp39 ;
4298 int __cil_tmp40 ;
4299 unsigned long __cil_tmp41 ;
4300 unsigned long __cil_tmp42 ;
4301 unsigned long __cil_tmp43 ;
4302 unsigned long __cil_tmp44 ;
4303 unsigned long __cil_tmp45 ;
4304 unsigned long __cil_tmp46 ;
4305 unsigned char __cil_tmp47 ;
4306 unsigned int __cil_tmp48 ;
4307 unsigned int __cil_tmp49 ;
4308 unsigned int __cil_tmp50 ;
4309 unsigned long __cil_tmp51 ;
4310 unsigned long __cil_tmp52 ;
4311 int __cil_tmp53 ;
4312 unsigned int __cil_tmp54 ;
4313 unsigned long __cil_tmp55 ;
4314 unsigned long __cil_tmp56 ;
4315 unsigned int __cil_tmp57 ;
4316 unsigned long __cil_tmp58 ;
4317 unsigned long __cil_tmp59 ;
4318 unsigned long __cil_tmp60 ;
4319 unsigned long __cil_tmp61 ;
4320 int __cil_tmp62 ;
4321 unsigned long __cil_tmp63 ;
4322 unsigned long __cil_tmp64 ;
4323 int __cil_tmp65 ;
4324 unsigned long __cil_tmp66 ;
4325 unsigned long __cil_tmp67 ;
4326 unsigned char (*__cil_tmp68)[11U] ;
4327 u8 *__cil_tmp69 ;
4328 unsigned long __cil_tmp70 ;
4329 unsigned long __cil_tmp71 ;
4330 unsigned long __cil_tmp72 ;
4331 unsigned long __cil_tmp73 ;
4332 unsigned char __cil_tmp74 ;
4333 unsigned int __cil_tmp75 ;
4334 unsigned int __cil_tmp76 ;
4335 unsigned int __cil_tmp77 ;
4336 int __cil_tmp78 ;
4337 long __cil_tmp79 ;
4338 unsigned long __cil_tmp80 ;
4339 unsigned long __cil_tmp81 ;
4340 unsigned long __cil_tmp82 ;
4341 unsigned long __cil_tmp83 ;
4342 unsigned char __cil_tmp84 ;
4343 unsigned int __cil_tmp85 ;
4344 unsigned int __cil_tmp86 ;
4345 unsigned int __cil_tmp87 ;
4346 unsigned long __cil_tmp88 ;
4347 unsigned long __cil_tmp89 ;
4348 unsigned long __cil_tmp90 ;
4349 unsigned long __cil_tmp91 ;
4350 unsigned char (*__cil_tmp92)[11U] ;
4351 u8 *__cil_tmp93 ;
4352 unsigned long __cil_tmp94 ;
4353 unsigned long __cil_tmp95 ;
4354 unsigned long __cil_tmp96 ;
4355 unsigned long __cil_tmp97 ;
4356 unsigned char __cil_tmp98 ;
4357 unsigned int __cil_tmp99 ;
4358 unsigned int __cil_tmp100 ;
4359 unsigned int __cil_tmp101 ;
4360 unsigned long __cil_tmp102 ;
4361 unsigned long __cil_tmp103 ;
4362 unsigned long __cil_tmp104 ;
4363 unsigned long __cil_tmp105 ;
4364 unsigned char (*__cil_tmp106)[11U] ;
4365 void *__cil_tmp107 ;
4366 unsigned long __cil_tmp108 ;
4367 unsigned long __cil_tmp109 ;
4368 unsigned char (*__cil_tmp110)[11U] ;
4369 void const *__cil_tmp111 ;
4370 unsigned long __cil_tmp112 ;
4371 unsigned long __cil_tmp113 ;
4372 unsigned char (*__cil_tmp114)[11U] ;
4373 void *__cil_tmp115 ;
4374 unsigned long __cil_tmp116 ;
4375 unsigned long __cil_tmp117 ;
4376 unsigned char (*__cil_tmp118)[11U] ;
4377 void const *__cil_tmp119 ;
4378 unsigned long __cil_tmp120 ;
4379 unsigned long __cil_tmp121 ;
4380 unsigned long __cil_tmp122 ;
4381 unsigned long __cil_tmp123 ;
4382 struct completion *__cil_tmp124 ;
4383 unsigned long __cil_tmp125 ;
4384 unsigned long __cil_tmp126 ;
4385
4386 {
4387 {
4388#line 300
4389 tmp = serio_get_drvdata(serio);
4390#line 300
4391 w8001 = (struct w8001 *)tmp;
4392#line 304
4393 __cil_tmp14 = (unsigned long )w8001;
4394#line 304
4395 __cil_tmp15 = __cil_tmp14 + 116;
4396#line 304
4397 __cil_tmp16 = *((int *)__cil_tmp15);
4398#line 304
4399 __cil_tmp17 = __cil_tmp16 * 1UL;
4400#line 304
4401 __cil_tmp18 = 132 + __cil_tmp17;
4402#line 304
4403 __cil_tmp19 = (unsigned long )w8001;
4404#line 304
4405 __cil_tmp20 = __cil_tmp19 + __cil_tmp18;
4406#line 304
4407 *((unsigned char *)__cil_tmp20) = data;
4408#line 305
4409 __cil_tmp21 = (unsigned long )w8001;
4410#line 305
4411 __cil_tmp22 = __cil_tmp21 + 116;
4412#line 305
4413 tmp___1 = *((int *)__cil_tmp22);
4414#line 305
4415 __cil_tmp23 = (unsigned long )w8001;
4416#line 305
4417 __cil_tmp24 = __cil_tmp23 + 116;
4418#line 305
4419 __cil_tmp25 = (unsigned long )w8001;
4420#line 305
4421 __cil_tmp26 = __cil_tmp25 + 116;
4422#line 305
4423 __cil_tmp27 = *((int *)__cil_tmp26);
4424#line 305
4425 *((int *)__cil_tmp24) = __cil_tmp27 + 1;
4426 }
4427#line 306
4428 if (tmp___1 == 0) {
4429#line 306
4430 goto case_0;
4431 } else
4432#line 313
4433 if (tmp___1 == 4) {
4434#line 313
4435 goto case_4;
4436 } else
4437#line 314
4438 if (tmp___1 == 6) {
4439#line 314
4440 goto case_6;
4441 } else
4442#line 330
4443 if (tmp___1 == 8) {
4444#line 330
4445 goto case_8;
4446 } else
4447#line 345
4448 if (tmp___1 == 10) {
4449#line 345
4450 goto case_10;
4451 } else
4452#line 357
4453 if (tmp___1 == 12) {
4454#line 357
4455 goto case_12;
4456 } else
4457#line 305
4458 if (0) {
4459 case_0: ;
4460 {
4461#line 307
4462 __cil_tmp28 = (signed char )data;
4463#line 307
4464 __cil_tmp29 = (int )__cil_tmp28;
4465#line 307
4466 if (__cil_tmp29 >= 0) {
4467 {
4468#line 308
4469 __cil_tmp30 = & descriptor;
4470#line 308
4471 *((char const **)__cil_tmp30) = "wacom_w8001";
4472#line 308
4473 __cil_tmp31 = (unsigned long )(& descriptor) + 8;
4474#line 308
4475 *((char const **)__cil_tmp31) = "w8001_interrupt";
4476#line 308
4477 __cil_tmp32 = (unsigned long )(& descriptor) + 16;
4478#line 308
4479 *((char const **)__cil_tmp32) = "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/3129/dscv_tempdir/dscv/ri/43_1a/drivers/input/touchscreen/wacom_w8001.c.p";
4480#line 308
4481 __cil_tmp33 = (unsigned long )(& descriptor) + 24;
4482#line 308
4483 *((char const **)__cil_tmp33) = "w8001: unsynchronized data: 0x%02x\n";
4484#line 308
4485 __cil_tmp34 = (unsigned long )(& descriptor) + 32;
4486#line 308
4487 *((unsigned int *)__cil_tmp34) = 308U;
4488#line 308
4489 __cil_tmp35 = (unsigned long )(& descriptor) + 35;
4490#line 308
4491 *((unsigned char *)__cil_tmp35) = (unsigned char)0;
4492#line 308
4493 __cil_tmp36 = (unsigned long )(& descriptor) + 35;
4494#line 308
4495 __cil_tmp37 = *((unsigned char *)__cil_tmp36);
4496#line 308
4497 __cil_tmp38 = (long )__cil_tmp37;
4498#line 308
4499 __cil_tmp39 = __cil_tmp38 & 1L;
4500#line 308
4501 tmp___2 = __builtin_expect(__cil_tmp39, 0L);
4502 }
4503#line 308
4504 if (tmp___2 != 0L) {
4505 {
4506#line 308
4507 __cil_tmp40 = (int )data;
4508#line 308
4509 __dynamic_pr_debug(& descriptor, "w8001: unsynchronized data: 0x%02x\n", __cil_tmp40);
4510 }
4511 } else {
4512
4513 }
4514#line 309
4515 __cil_tmp41 = (unsigned long )w8001;
4516#line 309
4517 __cil_tmp42 = __cil_tmp41 + 116;
4518#line 309
4519 *((int *)__cil_tmp42) = 0;
4520 } else {
4521
4522 }
4523 }
4524#line 311
4525 goto ldv_20883;
4526 case_4: ;
4527 case_6:
4528#line 315
4529 __cil_tmp43 = 0 * 1UL;
4530#line 315
4531 __cil_tmp44 = 132 + __cil_tmp43;
4532#line 315
4533 __cil_tmp45 = (unsigned long )w8001;
4534#line 315
4535 __cil_tmp46 = __cil_tmp45 + __cil_tmp44;
4536#line 315
4537 __cil_tmp47 = *((unsigned char *)__cil_tmp46);
4538#line 315
4539 __cil_tmp48 = (unsigned int )__cil_tmp47;
4540#line 315
4541 __cil_tmp49 = __cil_tmp48 & 144U;
4542#line 315
4543 tmp___0 = (unsigned char )__cil_tmp49;
4544 {
4545#line 316
4546 __cil_tmp50 = (unsigned int )tmp___0;
4547#line 316
4548 if (__cil_tmp50 != 144U) {
4549#line 317
4550 goto ldv_20883;
4551 } else {
4552
4553 }
4554 }
4555 {
4556#line 319
4557 __cil_tmp51 = (unsigned long )w8001;
4558#line 319
4559 __cil_tmp52 = __cil_tmp51 + 116;
4560#line 319
4561 __cil_tmp53 = *((int *)__cil_tmp52);
4562#line 319
4563 __cil_tmp54 = (unsigned int )__cil_tmp53;
4564#line 319
4565 __cil_tmp55 = (unsigned long )w8001;
4566#line 319
4567 __cil_tmp56 = __cil_tmp55 + 180;
4568#line 319
4569 __cil_tmp57 = *((unsigned int *)__cil_tmp56);
4570#line 319
4571 if (__cil_tmp57 == __cil_tmp54) {
4572#line 320
4573 __cil_tmp58 = (unsigned long )w8001;
4574#line 320
4575 __cil_tmp59 = __cil_tmp58 + 116;
4576#line 320
4577 *((int *)__cil_tmp59) = 0;
4578 {
4579#line 321
4580 __cil_tmp60 = (unsigned long )w8001;
4581#line 321
4582 __cil_tmp61 = __cil_tmp60 + 176;
4583#line 321
4584 __cil_tmp62 = *((int *)__cil_tmp61);
4585#line 321
4586 if (__cil_tmp62 != 320) {
4587 {
4588#line 321
4589 __cil_tmp63 = (unsigned long )w8001;
4590#line 321
4591 __cil_tmp64 = __cil_tmp63 + 176;
4592#line 321
4593 __cil_tmp65 = *((int *)__cil_tmp64);
4594#line 321
4595 if (__cil_tmp65 != 321) {
4596 {
4597#line 323
4598 __cil_tmp66 = (unsigned long )w8001;
4599#line 323
4600 __cil_tmp67 = __cil_tmp66 + 132;
4601#line 323
4602 __cil_tmp68 = (unsigned char (*)[11U])__cil_tmp67;
4603#line 323
4604 __cil_tmp69 = (u8 *)__cil_tmp68;
4605#line 323
4606 parse_single_touch(__cil_tmp69, & coord);
4607#line 324
4608 report_single_touch(w8001, & coord);
4609 }
4610 } else {
4611
4612 }
4613 }
4614 } else {
4615
4616 }
4617 }
4618 } else {
4619
4620 }
4621 }
4622#line 327
4623 goto ldv_20883;
4624 case_8:
4625 {
4626#line 331
4627 __cil_tmp70 = 0 * 1UL;
4628#line 331
4629 __cil_tmp71 = 132 + __cil_tmp70;
4630#line 331
4631 __cil_tmp72 = (unsigned long )w8001;
4632#line 331
4633 __cil_tmp73 = __cil_tmp72 + __cil_tmp71;
4634#line 331
4635 __cil_tmp74 = *((unsigned char *)__cil_tmp73);
4636#line 331
4637 __cil_tmp75 = (unsigned int )__cil_tmp74;
4638#line 331
4639 __cil_tmp76 = __cil_tmp75 & 64U;
4640#line 331
4641 tmp___0 = (unsigned char )__cil_tmp76;
4642#line 332
4643 __cil_tmp77 = (unsigned int )tmp___0;
4644#line 332
4645 __cil_tmp78 = __cil_tmp77 == 64U;
4646#line 332
4647 __cil_tmp79 = (long )__cil_tmp78;
4648#line 332
4649 tmp___3 = __builtin_expect(__cil_tmp79, 0L);
4650 }
4651#line 332
4652 if (tmp___3 != 0L) {
4653#line 333
4654 goto ldv_20883;
4655 } else {
4656
4657 }
4658#line 335
4659 __cil_tmp80 = 0 * 1UL;
4660#line 335
4661 __cil_tmp81 = 132 + __cil_tmp80;
4662#line 335
4663 __cil_tmp82 = (unsigned long )w8001;
4664#line 335
4665 __cil_tmp83 = __cil_tmp82 + __cil_tmp81;
4666#line 335
4667 __cil_tmp84 = *((unsigned char *)__cil_tmp83);
4668#line 335
4669 __cil_tmp85 = (unsigned int )__cil_tmp84;
4670#line 335
4671 __cil_tmp86 = __cil_tmp85 & 144U;
4672#line 335
4673 tmp___0 = (unsigned char )__cil_tmp86;
4674 {
4675#line 336
4676 __cil_tmp87 = (unsigned int )tmp___0;
4677#line 336
4678 if (__cil_tmp87 == 144U) {
4679#line 337
4680 goto ldv_20883;
4681 } else {
4682
4683 }
4684 }
4685 {
4686#line 339
4687 __cil_tmp88 = (unsigned long )w8001;
4688#line 339
4689 __cil_tmp89 = __cil_tmp88 + 116;
4690#line 339
4691 *((int *)__cil_tmp89) = 0;
4692#line 340
4693 __cil_tmp90 = (unsigned long )w8001;
4694#line 340
4695 __cil_tmp91 = __cil_tmp90 + 132;
4696#line 340
4697 __cil_tmp92 = (unsigned char (*)[11U])__cil_tmp91;
4698#line 340
4699 __cil_tmp93 = (u8 *)__cil_tmp92;
4700#line 340
4701 parse_pen_data(__cil_tmp93, & coord);
4702#line 341
4703 report_pen_events(w8001, & coord);
4704 }
4705#line 342
4706 goto ldv_20883;
4707 case_10:
4708#line 346
4709 __cil_tmp94 = 0 * 1UL;
4710#line 346
4711 __cil_tmp95 = 132 + __cil_tmp94;
4712#line 346
4713 __cil_tmp96 = (unsigned long )w8001;
4714#line 346
4715 __cil_tmp97 = __cil_tmp96 + __cil_tmp95;
4716#line 346
4717 __cil_tmp98 = *((unsigned char *)__cil_tmp97);
4718#line 346
4719 __cil_tmp99 = (unsigned int )__cil_tmp98;
4720#line 346
4721 __cil_tmp100 = __cil_tmp99 & 144U;
4722#line 346
4723 tmp___0 = (unsigned char )__cil_tmp100;
4724 {
4725#line 347
4726 __cil_tmp101 = (unsigned int )tmp___0;
4727#line 347
4728 if (__cil_tmp101 == 144U) {
4729#line 348
4730 goto ldv_20883;
4731 } else {
4732
4733 }
4734 }
4735#line 350
4736 __cil_tmp102 = (unsigned long )w8001;
4737#line 350
4738 __cil_tmp103 = __cil_tmp102 + 116;
4739#line 350
4740 *((int *)__cil_tmp103) = 0;
4741#line 351
4742 __len = 11UL;
4743#line 351
4744 if (__len > 63UL) {
4745 {
4746#line 351
4747 __cil_tmp104 = (unsigned long )w8001;
4748#line 351
4749 __cil_tmp105 = __cil_tmp104 + 121;
4750#line 351
4751 __cil_tmp106 = (unsigned char (*)[11U])__cil_tmp105;
4752#line 351
4753 __cil_tmp107 = (void *)__cil_tmp106;
4754#line 351
4755 __cil_tmp108 = (unsigned long )w8001;
4756#line 351
4757 __cil_tmp109 = __cil_tmp108 + 132;
4758#line 351
4759 __cil_tmp110 = (unsigned char (*)[11U])__cil_tmp109;
4760#line 351
4761 __cil_tmp111 = (void const *)__cil_tmp110;
4762#line 351
4763 __ret = __memcpy(__cil_tmp107, __cil_tmp111, __len);
4764 }
4765 } else {
4766 {
4767#line 351
4768 __cil_tmp112 = (unsigned long )w8001;
4769#line 351
4770 __cil_tmp113 = __cil_tmp112 + 121;
4771#line 351
4772 __cil_tmp114 = (unsigned char (*)[11U])__cil_tmp113;
4773#line 351
4774 __cil_tmp115 = (void *)__cil_tmp114;
4775#line 351
4776 __cil_tmp116 = (unsigned long )w8001;
4777#line 351
4778 __cil_tmp117 = __cil_tmp116 + 132;
4779#line 351
4780 __cil_tmp118 = (unsigned char (*)[11U])__cil_tmp117;
4781#line 351
4782 __cil_tmp119 = (void const *)__cil_tmp118;
4783#line 351
4784 __ret = __builtin_memcpy(__cil_tmp115, __cil_tmp119, __len);
4785 }
4786 }
4787 {
4788#line 352
4789 __cil_tmp120 = (unsigned long )w8001;
4790#line 352
4791 __cil_tmp121 = __cil_tmp120 + 120;
4792#line 352
4793 *((unsigned char *)__cil_tmp121) = (unsigned char)32;
4794#line 353
4795 __cil_tmp122 = (unsigned long )w8001;
4796#line 353
4797 __cil_tmp123 = __cil_tmp122 + 16;
4798#line 353
4799 __cil_tmp124 = (struct completion *)__cil_tmp123;
4800#line 353
4801 complete(__cil_tmp124);
4802 }
4803#line 354
4804 goto ldv_20883;
4805 case_12:
4806 {
4807#line 358
4808 __cil_tmp125 = (unsigned long )w8001;
4809#line 358
4810 __cil_tmp126 = __cil_tmp125 + 116;
4811#line 358
4812 *((int *)__cil_tmp126) = 0;
4813#line 359
4814 parse_multi_touch(w8001);
4815 }
4816#line 360
4817 goto ldv_20883;
4818 } else {
4819 switch_break: ;
4820 }
4821 ldv_20883: ;
4822#line 363
4823 return ((irqreturn_t )1);
4824}
4825}
4826#line 366 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/3129/dscv_tempdir/dscv/ri/43_1a/drivers/input/touchscreen/wacom_w8001.c.p"
4827static int w8001_command(struct w8001 *w8001 , unsigned char command , bool wait_response )
4828{ int rc ;
4829 unsigned long __cil_tmp5 ;
4830 unsigned long __cil_tmp6 ;
4831 unsigned long __cil_tmp7 ;
4832 unsigned long __cil_tmp8 ;
4833 struct completion *__cil_tmp9 ;
4834 unsigned long __cil_tmp10 ;
4835 unsigned long __cil_tmp11 ;
4836 struct serio *__cil_tmp12 ;
4837 int __cil_tmp13 ;
4838 unsigned char __cil_tmp14 ;
4839 unsigned long __cil_tmp15 ;
4840 unsigned long __cil_tmp16 ;
4841 struct completion *__cil_tmp17 ;
4842 unsigned long __cil_tmp18 ;
4843 unsigned long __cil_tmp19 ;
4844 unsigned char __cil_tmp20 ;
4845 unsigned int __cil_tmp21 ;
4846
4847 {
4848 {
4849#line 371
4850 __cil_tmp5 = (unsigned long )w8001;
4851#line 371
4852 __cil_tmp6 = __cil_tmp5 + 120;
4853#line 371
4854 *((unsigned char *)__cil_tmp6) = (unsigned char)0;
4855#line 372
4856 __cil_tmp7 = (unsigned long )w8001;
4857#line 372
4858 __cil_tmp8 = __cil_tmp7 + 16;
4859#line 372
4860 __cil_tmp9 = (struct completion *)__cil_tmp8;
4861#line 372
4862 init_completion(__cil_tmp9);
4863#line 374
4864 __cil_tmp10 = (unsigned long )w8001;
4865#line 374
4866 __cil_tmp11 = __cil_tmp10 + 8;
4867#line 374
4868 __cil_tmp12 = *((struct serio **)__cil_tmp11);
4869#line 374
4870 __cil_tmp13 = (int )command;
4871#line 374
4872 __cil_tmp14 = (unsigned char )__cil_tmp13;
4873#line 374
4874 rc = serio_write(__cil_tmp12, __cil_tmp14);
4875 }
4876#line 375
4877 if (rc == 0) {
4878#line 375
4879 if ((int )wait_response) {
4880 {
4881#line 377
4882 __cil_tmp15 = (unsigned long )w8001;
4883#line 377
4884 __cil_tmp16 = __cil_tmp15 + 16;
4885#line 377
4886 __cil_tmp17 = (struct completion *)__cil_tmp16;
4887#line 377
4888 wait_for_completion_timeout(__cil_tmp17, 250UL);
4889 }
4890 {
4891#line 378
4892 __cil_tmp18 = (unsigned long )w8001;
4893#line 378
4894 __cil_tmp19 = __cil_tmp18 + 120;
4895#line 378
4896 __cil_tmp20 = *((unsigned char *)__cil_tmp19);
4897#line 378
4898 __cil_tmp21 = (unsigned int )__cil_tmp20;
4899#line 378
4900 if (__cil_tmp21 != 32U) {
4901#line 379
4902 rc = -5;
4903 } else {
4904
4905 }
4906 }
4907 } else {
4908
4909 }
4910 } else {
4911
4912 }
4913#line 382
4914 return (rc);
4915}
4916}
4917#line 385 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/3129/dscv_tempdir/dscv/ri/43_1a/drivers/input/touchscreen/wacom_w8001.c.p"
4918static int w8001_open(struct input_dev *dev )
4919{ struct w8001 *w8001 ;
4920 void *tmp ;
4921 int tmp___0 ;
4922 bool __cil_tmp5 ;
4923
4924 {
4925 {
4926#line 387
4927 tmp = input_get_drvdata(dev);
4928#line 387
4929 w8001 = (struct w8001 *)tmp;
4930#line 389
4931 __cil_tmp5 = (bool )0;
4932#line 389
4933 tmp___0 = w8001_command(w8001, (unsigned char)49, __cil_tmp5);
4934 }
4935#line 389
4936 return (tmp___0);
4937}
4938}
4939#line 392 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/3129/dscv_tempdir/dscv/ri/43_1a/drivers/input/touchscreen/wacom_w8001.c.p"
4940static void w8001_close(struct input_dev *dev )
4941{ struct w8001 *w8001 ;
4942 void *tmp ;
4943 bool __cil_tmp4 ;
4944
4945 {
4946 {
4947#line 394
4948 tmp = input_get_drvdata(dev);
4949#line 394
4950 w8001 = (struct w8001 *)tmp;
4951#line 396
4952 __cil_tmp4 = (bool )0;
4953#line 396
4954 w8001_command(w8001, (unsigned char)48, __cil_tmp4);
4955 }
4956#line 397
4957 return;
4958}
4959}
4960#line 399 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/3129/dscv_tempdir/dscv/ri/43_1a/drivers/input/touchscreen/wacom_w8001.c.p"
4961static int w8001_setup(struct w8001 *w8001 )
4962{ struct input_dev *dev ;
4963 struct w8001_coord coord ;
4964 struct w8001_touch_query touch ;
4965 int error ;
4966 bool __cil_tmp6 ;
4967 unsigned long __cil_tmp7 ;
4968 unsigned long __cil_tmp8 ;
4969 unsigned long __cil_tmp9 ;
4970 unsigned long __cil_tmp10 ;
4971 unsigned long __cil_tmp11 ;
4972 unsigned long __cil_tmp12 ;
4973 char (*__cil_tmp13)[64U] ;
4974 char *__cil_tmp14 ;
4975 unsigned long __cil_tmp15 ;
4976 unsigned long __cil_tmp16 ;
4977 unsigned long (*__cil_tmp17)[1U] ;
4978 unsigned long volatile *__cil_tmp18 ;
4979 bool __cil_tmp19 ;
4980 unsigned long __cil_tmp20 ;
4981 unsigned long __cil_tmp21 ;
4982 unsigned long (*__cil_tmp22)[12U] ;
4983 unsigned long volatile *__cil_tmp23 ;
4984 unsigned long __cil_tmp24 ;
4985 unsigned long __cil_tmp25 ;
4986 unsigned long (*__cil_tmp26)[12U] ;
4987 unsigned long volatile *__cil_tmp27 ;
4988 unsigned long __cil_tmp28 ;
4989 unsigned long __cil_tmp29 ;
4990 unsigned long (*__cil_tmp30)[12U] ;
4991 unsigned long volatile *__cil_tmp31 ;
4992 unsigned long __cil_tmp32 ;
4993 unsigned long __cil_tmp33 ;
4994 unsigned long (*__cil_tmp34)[12U] ;
4995 unsigned long volatile *__cil_tmp35 ;
4996 unsigned long __cil_tmp36 ;
4997 unsigned long __cil_tmp37 ;
4998 unsigned long (*__cil_tmp38)[12U] ;
4999 unsigned long volatile *__cil_tmp39 ;
5000 unsigned long __cil_tmp40 ;
5001 unsigned long __cil_tmp41 ;
5002 unsigned char (*__cil_tmp42)[11U] ;
5003 u8 *__cil_tmp43 ;
5004 unsigned long __cil_tmp44 ;
5005 unsigned long __cil_tmp45 ;
5006 unsigned long __cil_tmp46 ;
5007 unsigned long __cil_tmp47 ;
5008 unsigned long __cil_tmp48 ;
5009 unsigned long __cil_tmp49 ;
5010 unsigned long __cil_tmp50 ;
5011 u16 __cil_tmp51 ;
5012 int __cil_tmp52 ;
5013 unsigned long __cil_tmp53 ;
5014 u16 __cil_tmp54 ;
5015 int __cil_tmp55 ;
5016 unsigned long __cil_tmp56 ;
5017 u16 __cil_tmp57 ;
5018 int __cil_tmp58 ;
5019 unsigned long __cil_tmp59 ;
5020 u8 __cil_tmp60 ;
5021 unsigned int __cil_tmp61 ;
5022 unsigned long __cil_tmp62 ;
5023 u8 __cil_tmp63 ;
5024 unsigned int __cil_tmp64 ;
5025 unsigned long __cil_tmp65 ;
5026 u8 __cil_tmp66 ;
5027 int __cil_tmp67 ;
5028 unsigned long __cil_tmp68 ;
5029 u8 __cil_tmp69 ;
5030 int __cil_tmp70 ;
5031 unsigned long __cil_tmp71 ;
5032 unsigned long __cil_tmp72 ;
5033 unsigned long __cil_tmp73 ;
5034 unsigned long __cil_tmp74 ;
5035 char (*__cil_tmp75)[64U] ;
5036 char *__cil_tmp76 ;
5037 bool __cil_tmp77 ;
5038 unsigned long __cil_tmp78 ;
5039 unsigned long __cil_tmp79 ;
5040 unsigned long __cil_tmp80 ;
5041 unsigned long __cil_tmp81 ;
5042 unsigned char __cil_tmp82 ;
5043 unsigned int __cil_tmp83 ;
5044 unsigned long __cil_tmp84 ;
5045 unsigned long __cil_tmp85 ;
5046 unsigned long (*__cil_tmp86)[12U] ;
5047 unsigned long volatile *__cil_tmp87 ;
5048 unsigned long __cil_tmp88 ;
5049 unsigned long __cil_tmp89 ;
5050 unsigned long (*__cil_tmp90)[12U] ;
5051 unsigned long volatile *__cil_tmp91 ;
5052 unsigned long __cil_tmp92 ;
5053 unsigned long __cil_tmp93 ;
5054 unsigned char (*__cil_tmp94)[11U] ;
5055 u8 *__cil_tmp95 ;
5056 unsigned long __cil_tmp96 ;
5057 unsigned long __cil_tmp97 ;
5058 struct w8001_touch_query *__cil_tmp98 ;
5059 unsigned long __cil_tmp99 ;
5060 unsigned long __cil_tmp100 ;
5061 unsigned long __cil_tmp101 ;
5062 unsigned long __cil_tmp102 ;
5063 unsigned long __cil_tmp103 ;
5064 u16 __cil_tmp104 ;
5065 unsigned int __cil_tmp105 ;
5066 unsigned long __cil_tmp106 ;
5067 unsigned long __cil_tmp107 ;
5068 u16 __cil_tmp108 ;
5069 unsigned int __cil_tmp109 ;
5070 struct w8001_touch_query *__cil_tmp110 ;
5071 unsigned long __cil_tmp111 ;
5072 unsigned long __cil_tmp112 ;
5073 unsigned long __cil_tmp113 ;
5074 unsigned long __cil_tmp114 ;
5075 unsigned long __cil_tmp115 ;
5076 unsigned long __cil_tmp116 ;
5077 struct w8001_touch_query *__cil_tmp117 ;
5078 u16 __cil_tmp118 ;
5079 int __cil_tmp119 ;
5080 unsigned long __cil_tmp120 ;
5081 u16 __cil_tmp121 ;
5082 int __cil_tmp122 ;
5083 unsigned long __cil_tmp123 ;
5084 u8 __cil_tmp124 ;
5085 int __cil_tmp125 ;
5086 unsigned long __cil_tmp126 ;
5087 u8 __cil_tmp127 ;
5088 int __cil_tmp128 ;
5089 unsigned long __cil_tmp129 ;
5090 u8 __cil_tmp130 ;
5091 unsigned long __cil_tmp131 ;
5092 unsigned long __cil_tmp132 ;
5093 unsigned long __cil_tmp133 ;
5094 unsigned long __cil_tmp134 ;
5095 unsigned long __cil_tmp135 ;
5096 unsigned long __cil_tmp136 ;
5097 char (*__cil_tmp137)[64U] ;
5098 char *__cil_tmp138 ;
5099 unsigned long __cil_tmp139 ;
5100 unsigned long __cil_tmp140 ;
5101 unsigned long __cil_tmp141 ;
5102 unsigned long __cil_tmp142 ;
5103 char (*__cil_tmp143)[64U] ;
5104 char *__cil_tmp144 ;
5105 unsigned long __cil_tmp145 ;
5106 unsigned long __cil_tmp146 ;
5107 unsigned long __cil_tmp147 ;
5108 unsigned long __cil_tmp148 ;
5109 struct w8001_touch_query *__cil_tmp149 ;
5110 u16 __cil_tmp150 ;
5111 int __cil_tmp151 ;
5112 unsigned long __cil_tmp152 ;
5113 u16 __cil_tmp153 ;
5114 int __cil_tmp154 ;
5115 unsigned long __cil_tmp155 ;
5116 unsigned long __cil_tmp156 ;
5117 char (*__cil_tmp157)[64U] ;
5118 char *__cil_tmp158 ;
5119 unsigned long __cil_tmp159 ;
5120 unsigned long __cil_tmp160 ;
5121 u16 __cil_tmp161 ;
5122 unsigned int __cil_tmp162 ;
5123 unsigned long __cil_tmp163 ;
5124 unsigned long __cil_tmp164 ;
5125 u16 __cil_tmp165 ;
5126 unsigned int __cil_tmp166 ;
5127 unsigned long __cil_tmp167 ;
5128 unsigned long __cil_tmp168 ;
5129 unsigned long __cil_tmp169 ;
5130 unsigned long __cil_tmp170 ;
5131 unsigned long __cil_tmp171 ;
5132 unsigned long __cil_tmp172 ;
5133 unsigned long __cil_tmp173 ;
5134 unsigned long __cil_tmp174 ;
5135 char (*__cil_tmp175)[64U] ;
5136 char *__cil_tmp176 ;
5137
5138 {
5139 {
5140#line 401
5141 dev = *((struct input_dev **)w8001);
5142#line 406
5143 __cil_tmp6 = (bool )0;
5144#line 406
5145 error = w8001_command(w8001, (unsigned char)48, __cil_tmp6);
5146 }
5147#line 407
5148 if (error != 0) {
5149#line 408
5150 return (error);
5151 } else {
5152
5153 }
5154 {
5155#line 410
5156 msleep(250U);
5157#line 412
5158 __cil_tmp7 = 0 * 8UL;
5159#line 412
5160 __cil_tmp8 = 40 + __cil_tmp7;
5161#line 412
5162 __cil_tmp9 = (unsigned long )dev;
5163#line 412
5164 __cil_tmp10 = __cil_tmp9 + __cil_tmp8;
5165#line 412
5166 *((unsigned long *)__cil_tmp10) = 10UL;
5167#line 413
5168 __cil_tmp11 = (unsigned long )w8001;
5169#line 413
5170 __cil_tmp12 = __cil_tmp11 + 192;
5171#line 413
5172 __cil_tmp13 = (char (*)[64U])__cil_tmp12;
5173#line 413
5174 __cil_tmp14 = (char *)__cil_tmp13;
5175#line 413
5176 strlcat(__cil_tmp14, "Wacom Serial", 64UL);
5177#line 415
5178 __cil_tmp15 = (unsigned long )dev;
5179#line 415
5180 __cil_tmp16 = __cil_tmp15 + 32;
5181#line 415
5182 __cil_tmp17 = (unsigned long (*)[1U])__cil_tmp16;
5183#line 415
5184 __cil_tmp18 = (unsigned long volatile *)__cil_tmp17;
5185#line 415
5186 __set_bit(1, __cil_tmp18);
5187#line 418
5188 __cil_tmp19 = (bool )1;
5189#line 418
5190 error = w8001_command(w8001, (unsigned char)42, __cil_tmp19);
5191 }
5192#line 419
5193 if (error == 0) {
5194 {
5195#line 420
5196 __cil_tmp20 = (unsigned long )dev;
5197#line 420
5198 __cil_tmp21 = __cil_tmp20 + 48;
5199#line 420
5200 __cil_tmp22 = (unsigned long (*)[12U])__cil_tmp21;
5201#line 420
5202 __cil_tmp23 = (unsigned long volatile *)__cil_tmp22;
5203#line 420
5204 __set_bit(330, __cil_tmp23);
5205#line 421
5206 __cil_tmp24 = (unsigned long )dev;
5207#line 421
5208 __cil_tmp25 = __cil_tmp24 + 48;
5209#line 421
5210 __cil_tmp26 = (unsigned long (*)[12U])__cil_tmp25;
5211#line 421
5212 __cil_tmp27 = (unsigned long volatile *)__cil_tmp26;
5213#line 421
5214 __set_bit(320, __cil_tmp27);
5215#line 422
5216 __cil_tmp28 = (unsigned long )dev;
5217#line 422
5218 __cil_tmp29 = __cil_tmp28 + 48;
5219#line 422
5220 __cil_tmp30 = (unsigned long (*)[12U])__cil_tmp29;
5221#line 422
5222 __cil_tmp31 = (unsigned long volatile *)__cil_tmp30;
5223#line 422
5224 __set_bit(321, __cil_tmp31);
5225#line 423
5226 __cil_tmp32 = (unsigned long )dev;
5227#line 423
5228 __cil_tmp33 = __cil_tmp32 + 48;
5229#line 423
5230 __cil_tmp34 = (unsigned long (*)[12U])__cil_tmp33;
5231#line 423
5232 __cil_tmp35 = (unsigned long volatile *)__cil_tmp34;
5233#line 423
5234 __set_bit(331, __cil_tmp35);
5235#line 424
5236 __cil_tmp36 = (unsigned long )dev;
5237#line 424
5238 __cil_tmp37 = __cil_tmp36 + 48;
5239#line 424
5240 __cil_tmp38 = (unsigned long (*)[12U])__cil_tmp37;
5241#line 424
5242 __cil_tmp39 = (unsigned long volatile *)__cil_tmp38;
5243#line 424
5244 __set_bit(332, __cil_tmp39);
5245#line 426
5246 __cil_tmp40 = (unsigned long )w8001;
5247#line 426
5248 __cil_tmp41 = __cil_tmp40 + 121;
5249#line 426
5250 __cil_tmp42 = (unsigned char (*)[11U])__cil_tmp41;
5251#line 426
5252 __cil_tmp43 = (u8 *)__cil_tmp42;
5253#line 426
5254 parse_pen_data(__cil_tmp43, & coord);
5255#line 427
5256 __cil_tmp44 = (unsigned long )w8001;
5257#line 427
5258 __cil_tmp45 = __cil_tmp44 + 188;
5259#line 427
5260 __cil_tmp46 = (unsigned long )(& coord) + 4;
5261#line 427
5262 *((u16 *)__cil_tmp45) = *((u16 *)__cil_tmp46);
5263#line 428
5264 __cil_tmp47 = (unsigned long )w8001;
5265#line 428
5266 __cil_tmp48 = __cil_tmp47 + 190;
5267#line 428
5268 __cil_tmp49 = (unsigned long )(& coord) + 6;
5269#line 428
5270 *((u16 *)__cil_tmp48) = *((u16 *)__cil_tmp49);
5271#line 430
5272 __cil_tmp50 = (unsigned long )(& coord) + 4;
5273#line 430
5274 __cil_tmp51 = *((u16 *)__cil_tmp50);
5275#line 430
5276 __cil_tmp52 = (int )__cil_tmp51;
5277#line 430
5278 input_set_abs_params(dev, 0U, 0, __cil_tmp52, 0, 0);
5279#line 431
5280 __cil_tmp53 = (unsigned long )(& coord) + 6;
5281#line 431
5282 __cil_tmp54 = *((u16 *)__cil_tmp53);
5283#line 431
5284 __cil_tmp55 = (int )__cil_tmp54;
5285#line 431
5286 input_set_abs_params(dev, 1U, 0, __cil_tmp55, 0, 0);
5287#line 432
5288 input_abs_set_res(dev, 0U, 100);
5289#line 433
5290 input_abs_set_res(dev, 1U, 100);
5291#line 434
5292 __cil_tmp56 = (unsigned long )(& coord) + 8;
5293#line 434
5294 __cil_tmp57 = *((u16 *)__cil_tmp56);
5295#line 434
5296 __cil_tmp58 = (int )__cil_tmp57;
5297#line 434
5298 input_set_abs_params(dev, 24U, 0, __cil_tmp58, 0, 0);
5299 }
5300 {
5301#line 435
5302 __cil_tmp59 = (unsigned long )(& coord) + 10;
5303#line 435
5304 __cil_tmp60 = *((u8 *)__cil_tmp59);
5305#line 435
5306 __cil_tmp61 = (unsigned int )__cil_tmp60;
5307#line 435
5308 if (__cil_tmp61 != 0U) {
5309 {
5310#line 435
5311 __cil_tmp62 = (unsigned long )(& coord) + 11;
5312#line 435
5313 __cil_tmp63 = *((u8 *)__cil_tmp62);
5314#line 435
5315 __cil_tmp64 = (unsigned int )__cil_tmp63;
5316#line 435
5317 if (__cil_tmp64 != 0U) {
5318 {
5319#line 436
5320 __cil_tmp65 = (unsigned long )(& coord) + 10;
5321#line 436
5322 __cil_tmp66 = *((u8 *)__cil_tmp65);
5323#line 436
5324 __cil_tmp67 = (int )__cil_tmp66;
5325#line 436
5326 input_set_abs_params(dev, 26U, 0, __cil_tmp67, 0, 0);
5327#line 437
5328 __cil_tmp68 = (unsigned long )(& coord) + 11;
5329#line 437
5330 __cil_tmp69 = *((u8 *)__cil_tmp68);
5331#line 437
5332 __cil_tmp70 = (int )__cil_tmp69;
5333#line 437
5334 input_set_abs_params(dev, 27U, 0, __cil_tmp70, 0, 0);
5335 }
5336 } else {
5337
5338 }
5339 }
5340 } else {
5341
5342 }
5343 }
5344 {
5345#line 439
5346 __cil_tmp71 = (unsigned long )w8001;
5347#line 439
5348 __cil_tmp72 = __cil_tmp71 + 112;
5349#line 439
5350 *((int *)__cil_tmp72) = 144;
5351#line 440
5352 __cil_tmp73 = (unsigned long )w8001;
5353#line 440
5354 __cil_tmp74 = __cil_tmp73 + 192;
5355#line 440
5356 __cil_tmp75 = (char (*)[64U])__cil_tmp74;
5357#line 440
5358 __cil_tmp76 = (char *)__cil_tmp75;
5359#line 440
5360 strlcat(__cil_tmp76, " Penabled", 64UL);
5361 }
5362 } else {
5363
5364 }
5365 {
5366#line 444
5367 __cil_tmp77 = (bool )1;
5368#line 444
5369 error = w8001_command(w8001, (unsigned char)37, __cil_tmp77);
5370 }
5371#line 450
5372 if (error == 0) {
5373 {
5374#line 450
5375 __cil_tmp78 = 1 * 1UL;
5376#line 450
5377 __cil_tmp79 = 121 + __cil_tmp78;
5378#line 450
5379 __cil_tmp80 = (unsigned long )w8001;
5380#line 450
5381 __cil_tmp81 = __cil_tmp80 + __cil_tmp79;
5382#line 450
5383 __cil_tmp82 = *((unsigned char *)__cil_tmp81);
5384#line 450
5385 __cil_tmp83 = (unsigned int )__cil_tmp82;
5386#line 450
5387 if (__cil_tmp83 != 0U) {
5388 {
5389#line 451
5390 __cil_tmp84 = (unsigned long )dev;
5391#line 451
5392 __cil_tmp85 = __cil_tmp84 + 48;
5393#line 451
5394 __cil_tmp86 = (unsigned long (*)[12U])__cil_tmp85;
5395#line 451
5396 __cil_tmp87 = (unsigned long volatile *)__cil_tmp86;
5397#line 451
5398 __set_bit(330, __cil_tmp87);
5399#line 452
5400 __cil_tmp88 = (unsigned long )dev;
5401#line 452
5402 __cil_tmp89 = __cil_tmp88 + 48;
5403#line 452
5404 __cil_tmp90 = (unsigned long (*)[12U])__cil_tmp89;
5405#line 452
5406 __cil_tmp91 = (unsigned long volatile *)__cil_tmp90;
5407#line 452
5408 __set_bit(325, __cil_tmp91);
5409#line 454
5410 __cil_tmp92 = (unsigned long )w8001;
5411#line 454
5412 __cil_tmp93 = __cil_tmp92 + 121;
5413#line 454
5414 __cil_tmp94 = (unsigned char (*)[11U])__cil_tmp93;
5415#line 454
5416 __cil_tmp95 = (u8 *)__cil_tmp94;
5417#line 454
5418 parse_touchquery(__cil_tmp95, & touch);
5419#line 455
5420 __cil_tmp96 = (unsigned long )w8001;
5421#line 455
5422 __cil_tmp97 = __cil_tmp96 + 184;
5423#line 455
5424 __cil_tmp98 = & touch;
5425#line 455
5426 *((u16 *)__cil_tmp97) = *((u16 *)__cil_tmp98);
5427#line 456
5428 __cil_tmp99 = (unsigned long )w8001;
5429#line 456
5430 __cil_tmp100 = __cil_tmp99 + 186;
5431#line 456
5432 __cil_tmp101 = (unsigned long )(& touch) + 2;
5433#line 456
5434 *((u16 *)__cil_tmp100) = *((u16 *)__cil_tmp101);
5435 }
5436 {
5437#line 458
5438 __cil_tmp102 = (unsigned long )w8001;
5439#line 458
5440 __cil_tmp103 = __cil_tmp102 + 188;
5441#line 458
5442 __cil_tmp104 = *((u16 *)__cil_tmp103);
5443#line 458
5444 __cil_tmp105 = (unsigned int )__cil_tmp104;
5445#line 458
5446 if (__cil_tmp105 != 0U) {
5447 {
5448#line 458
5449 __cil_tmp106 = (unsigned long )w8001;
5450#line 458
5451 __cil_tmp107 = __cil_tmp106 + 190;
5452#line 458
5453 __cil_tmp108 = *((u16 *)__cil_tmp107);
5454#line 458
5455 __cil_tmp109 = (unsigned int )__cil_tmp108;
5456#line 458
5457 if (__cil_tmp109 != 0U) {
5458#line 460
5459 __cil_tmp110 = & touch;
5460#line 460
5461 __cil_tmp111 = (unsigned long )w8001;
5462#line 460
5463 __cil_tmp112 = __cil_tmp111 + 188;
5464#line 460
5465 *((u16 *)__cil_tmp110) = *((u16 *)__cil_tmp112);
5466#line 461
5467 __cil_tmp113 = (unsigned long )(& touch) + 2;
5468#line 461
5469 __cil_tmp114 = (unsigned long )w8001;
5470#line 461
5471 __cil_tmp115 = __cil_tmp114 + 190;
5472#line 461
5473 *((u16 *)__cil_tmp113) = *((u16 *)__cil_tmp115);
5474#line 462
5475 __cil_tmp116 = (unsigned long )(& touch) + 4;
5476#line 462
5477 *((u8 *)__cil_tmp116) = (u8 )100U;
5478 } else {
5479
5480 }
5481 }
5482 } else {
5483
5484 }
5485 }
5486 {
5487#line 465
5488 __cil_tmp117 = & touch;
5489#line 465
5490 __cil_tmp118 = *((u16 *)__cil_tmp117);
5491#line 465
5492 __cil_tmp119 = (int )__cil_tmp118;
5493#line 465
5494 input_set_abs_params(dev, 0U, 0, __cil_tmp119, 0, 0);
5495#line 466
5496 __cil_tmp120 = (unsigned long )(& touch) + 2;
5497#line 466
5498 __cil_tmp121 = *((u16 *)__cil_tmp120);
5499#line 466
5500 __cil_tmp122 = (int )__cil_tmp121;
5501#line 466
5502 input_set_abs_params(dev, 1U, 0, __cil_tmp122, 0, 0);
5503#line 467
5504 __cil_tmp123 = (unsigned long )(& touch) + 4;
5505#line 467
5506 __cil_tmp124 = *((u8 *)__cil_tmp123);
5507#line 467
5508 __cil_tmp125 = (int )__cil_tmp124;
5509#line 467
5510 input_abs_set_res(dev, 0U, __cil_tmp125);
5511#line 468
5512 __cil_tmp126 = (unsigned long )(& touch) + 4;
5513#line 468
5514 __cil_tmp127 = *((u8 *)__cil_tmp126);
5515#line 468
5516 __cil_tmp128 = (int )__cil_tmp127;
5517#line 468
5518 input_abs_set_res(dev, 1U, __cil_tmp128);
5519 }
5520 {
5521#line 470
5522 __cil_tmp129 = (unsigned long )(& touch) + 6;
5523#line 470
5524 __cil_tmp130 = *((u8 *)__cil_tmp129);
5525#line 471
5526 if ((int )__cil_tmp130 == 0) {
5527#line 471
5528 goto case_0;
5529 } else
5530#line 472
5531 if ((int )__cil_tmp130 == 2) {
5532#line 472
5533 goto case_2;
5534 } else
5535#line 478
5536 if ((int )__cil_tmp130 == 1) {
5537#line 478
5538 goto case_1;
5539 } else
5540#line 479
5541 if ((int )__cil_tmp130 == 3) {
5542#line 479
5543 goto case_3;
5544 } else
5545#line 480
5546 if ((int )__cil_tmp130 == 4) {
5547#line 480
5548 goto case_4;
5549 } else
5550#line 486
5551 if ((int )__cil_tmp130 == 5) {
5552#line 486
5553 goto case_5;
5554 } else
5555#line 470
5556 if (0) {
5557 case_0: ;
5558 case_2:
5559 {
5560#line 473
5561 __cil_tmp131 = (unsigned long )w8001;
5562#line 473
5563 __cil_tmp132 = __cil_tmp131 + 180;
5564#line 473
5565 *((unsigned int *)__cil_tmp132) = 5U;
5566#line 474
5567 __cil_tmp133 = (unsigned long )w8001;
5568#line 474
5569 __cil_tmp134 = __cil_tmp133 + 112;
5570#line 474
5571 *((int *)__cil_tmp134) = 147;
5572#line 475
5573 __cil_tmp135 = (unsigned long )w8001;
5574#line 475
5575 __cil_tmp136 = __cil_tmp135 + 192;
5576#line 475
5577 __cil_tmp137 = (char (*)[64U])__cil_tmp136;
5578#line 475
5579 __cil_tmp138 = (char *)__cil_tmp137;
5580#line 475
5581 strlcat(__cil_tmp138, " 1FG", 64UL);
5582 }
5583#line 476
5584 goto ldv_20915;
5585 case_1: ;
5586 case_3: ;
5587 case_4:
5588 {
5589#line 481
5590 __cil_tmp139 = (unsigned long )w8001;
5591#line 481
5592 __cil_tmp140 = __cil_tmp139 + 180;
5593#line 481
5594 *((unsigned int *)__cil_tmp140) = 7U;
5595#line 482
5596 __cil_tmp141 = (unsigned long )w8001;
5597#line 482
5598 __cil_tmp142 = __cil_tmp141 + 192;
5599#line 482
5600 __cil_tmp143 = (char (*)[64U])__cil_tmp142;
5601#line 482
5602 __cil_tmp144 = (char *)__cil_tmp143;
5603#line 482
5604 strlcat(__cil_tmp144, " 1FG", 64UL);
5605#line 483
5606 __cil_tmp145 = (unsigned long )w8001;
5607#line 483
5608 __cil_tmp146 = __cil_tmp145 + 112;
5609#line 483
5610 *((int *)__cil_tmp146) = 154;
5611 }
5612#line 484
5613 goto ldv_20915;
5614 case_5:
5615 {
5616#line 487
5617 __cil_tmp147 = (unsigned long )w8001;
5618#line 487
5619 __cil_tmp148 = __cil_tmp147 + 180;
5620#line 487
5621 *((unsigned int *)__cil_tmp148) = 13U;
5622#line 489
5623 input_mt_init_slots(dev, 2U);
5624#line 490
5625 __cil_tmp149 = & touch;
5626#line 490
5627 __cil_tmp150 = *((u16 *)__cil_tmp149);
5628#line 490
5629 __cil_tmp151 = (int )__cil_tmp150;
5630#line 490
5631 input_set_abs_params(dev, 53U, 0, __cil_tmp151, 0, 0);
5632#line 492
5633 __cil_tmp152 = (unsigned long )(& touch) + 2;
5634#line 492
5635 __cil_tmp153 = *((u16 *)__cil_tmp152);
5636#line 492
5637 __cil_tmp154 = (int )__cil_tmp153;
5638#line 492
5639 input_set_abs_params(dev, 54U, 0, __cil_tmp154, 0, 0);
5640#line 494
5641 input_set_abs_params(dev, 55U, 0, 1, 0, 0);
5642#line 497
5643 __cil_tmp155 = (unsigned long )w8001;
5644#line 497
5645 __cil_tmp156 = __cil_tmp155 + 192;
5646#line 497
5647 __cil_tmp157 = (char (*)[64U])__cil_tmp156;
5648#line 497
5649 __cil_tmp158 = (char *)__cil_tmp157;
5650#line 497
5651 strlcat(__cil_tmp158, " 2FG", 64UL);
5652 }
5653 {
5654#line 498
5655 __cil_tmp159 = (unsigned long )w8001;
5656#line 498
5657 __cil_tmp160 = __cil_tmp159 + 188;
5658#line 498
5659 __cil_tmp161 = *((u16 *)__cil_tmp160);
5660#line 498
5661 __cil_tmp162 = (unsigned int )__cil_tmp161;
5662#line 498
5663 if (__cil_tmp162 != 0U) {
5664 {
5665#line 498
5666 __cil_tmp163 = (unsigned long )w8001;
5667#line 498
5668 __cil_tmp164 = __cil_tmp163 + 190;
5669#line 498
5670 __cil_tmp165 = *((u16 *)__cil_tmp164);
5671#line 498
5672 __cil_tmp166 = (unsigned int )__cil_tmp165;
5673#line 498
5674 if (__cil_tmp166 != 0U) {
5675#line 499
5676 __cil_tmp167 = (unsigned long )w8001;
5677#line 499
5678 __cil_tmp168 = __cil_tmp167 + 112;
5679#line 499
5680 *((int *)__cil_tmp168) = 227;
5681 } else {
5682#line 501
5683 __cil_tmp169 = (unsigned long )w8001;
5684#line 501
5685 __cil_tmp170 = __cil_tmp169 + 112;
5686#line 501
5687 *((int *)__cil_tmp170) = 226;
5688 }
5689 }
5690 } else {
5691#line 501
5692 __cil_tmp171 = (unsigned long )w8001;
5693#line 501
5694 __cil_tmp172 = __cil_tmp171 + 112;
5695#line 501
5696 *((int *)__cil_tmp172) = 226;
5697 }
5698 }
5699#line 502
5700 goto ldv_20915;
5701 } else {
5702 switch_break: ;
5703 }
5704 }
5705 ldv_20915: ;
5706 } else {
5707
5708 }
5709 }
5710 } else {
5711
5712 }
5713 {
5714#line 506
5715 __cil_tmp173 = (unsigned long )w8001;
5716#line 506
5717 __cil_tmp174 = __cil_tmp173 + 192;
5718#line 506
5719 __cil_tmp175 = (char (*)[64U])__cil_tmp174;
5720#line 506
5721 __cil_tmp176 = (char *)__cil_tmp175;
5722#line 506
5723 strlcat(__cil_tmp176, " Touchscreen", 64UL);
5724 }
5725#line 508
5726 return (0);
5727}
5728}
5729#line 515 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/3129/dscv_tempdir/dscv/ri/43_1a/drivers/input/touchscreen/wacom_w8001.c.p"
5730static void w8001_disconnect(struct serio *serio )
5731{ struct w8001 *w8001 ;
5732 void *tmp ;
5733 struct input_dev *__cil_tmp4 ;
5734 void const *__cil_tmp5 ;
5735 void *__cil_tmp6 ;
5736
5737 {
5738 {
5739#line 517
5740 tmp = serio_get_drvdata(serio);
5741#line 517
5742 w8001 = (struct w8001 *)tmp;
5743#line 519
5744 serio_close(serio);
5745#line 521
5746 __cil_tmp4 = *((struct input_dev **)w8001);
5747#line 521
5748 input_unregister_device(__cil_tmp4);
5749#line 522
5750 __cil_tmp5 = (void const *)w8001;
5751#line 522
5752 kfree(__cil_tmp5);
5753#line 524
5754 __cil_tmp6 = (void *)0;
5755#line 524
5756 serio_set_drvdata(serio, __cil_tmp6);
5757 }
5758#line 525
5759 return;
5760}
5761}
5762#line 533 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/3129/dscv_tempdir/dscv/ri/43_1a/drivers/input/touchscreen/wacom_w8001.c.p"
5763static int w8001_connect(struct serio *serio , struct serio_driver *drv )
5764{ struct w8001 *w8001 ;
5765 struct input_dev *input_dev ;
5766 int err ;
5767 void *tmp ;
5768 struct w8001 *__cil_tmp7 ;
5769 unsigned long __cil_tmp8 ;
5770 unsigned long __cil_tmp9 ;
5771 struct input_dev *__cil_tmp10 ;
5772 unsigned long __cil_tmp11 ;
5773 unsigned long __cil_tmp12 ;
5774 unsigned long __cil_tmp13 ;
5775 unsigned long __cil_tmp14 ;
5776 unsigned long __cil_tmp15 ;
5777 unsigned long __cil_tmp16 ;
5778 struct completion *__cil_tmp17 ;
5779 unsigned long __cil_tmp18 ;
5780 unsigned long __cil_tmp19 ;
5781 char (*__cil_tmp20)[32U] ;
5782 char *__cil_tmp21 ;
5783 unsigned long __cil_tmp22 ;
5784 unsigned long __cil_tmp23 ;
5785 char (*__cil_tmp24)[32U] ;
5786 char *__cil_tmp25 ;
5787 void *__cil_tmp26 ;
5788 unsigned long __cil_tmp27 ;
5789 unsigned long __cil_tmp28 ;
5790 char (*__cil_tmp29)[64U] ;
5791 unsigned long __cil_tmp30 ;
5792 unsigned long __cil_tmp31 ;
5793 unsigned long __cil_tmp32 ;
5794 unsigned long __cil_tmp33 ;
5795 char (*__cil_tmp34)[32U] ;
5796 unsigned long __cil_tmp35 ;
5797 unsigned long __cil_tmp36 ;
5798 unsigned long __cil_tmp37 ;
5799 unsigned long __cil_tmp38 ;
5800 unsigned long __cil_tmp39 ;
5801 int __cil_tmp40 ;
5802 unsigned long __cil_tmp41 ;
5803 unsigned long __cil_tmp42 ;
5804 unsigned long __cil_tmp43 ;
5805 unsigned long __cil_tmp44 ;
5806 unsigned long __cil_tmp45 ;
5807 unsigned long __cil_tmp46 ;
5808 unsigned long __cil_tmp47 ;
5809 unsigned long __cil_tmp48 ;
5810 unsigned long __cil_tmp49 ;
5811 unsigned long __cil_tmp50 ;
5812 unsigned long __cil_tmp51 ;
5813 unsigned long __cil_tmp52 ;
5814 unsigned long __cil_tmp53 ;
5815 unsigned long __cil_tmp54 ;
5816 unsigned long __cil_tmp55 ;
5817 unsigned long __cil_tmp56 ;
5818 void *__cil_tmp57 ;
5819 struct input_dev *__cil_tmp58 ;
5820 void *__cil_tmp59 ;
5821 void const *__cil_tmp60 ;
5822
5823 {
5824 {
5825#line 539
5826 tmp = kzalloc(256UL, 208U);
5827#line 539
5828 w8001 = (struct w8001 *)tmp;
5829#line 540
5830 input_dev = input_allocate_device();
5831 }
5832 {
5833#line 541
5834 __cil_tmp7 = (struct w8001 *)0;
5835#line 541
5836 __cil_tmp8 = (unsigned long )__cil_tmp7;
5837#line 541
5838 __cil_tmp9 = (unsigned long )w8001;
5839#line 541
5840 if (__cil_tmp9 == __cil_tmp8) {
5841#line 542
5842 err = -12;
5843#line 543
5844 goto fail1;
5845 } else {
5846 {
5847#line 541
5848 __cil_tmp10 = (struct input_dev *)0;
5849#line 541
5850 __cil_tmp11 = (unsigned long )__cil_tmp10;
5851#line 541
5852 __cil_tmp12 = (unsigned long )input_dev;
5853#line 541
5854 if (__cil_tmp12 == __cil_tmp11) {
5855#line 542
5856 err = -12;
5857#line 543
5858 goto fail1;
5859 } else {
5860
5861 }
5862 }
5863 }
5864 }
5865 {
5866#line 546
5867 __cil_tmp13 = (unsigned long )w8001;
5868#line 546
5869 __cil_tmp14 = __cil_tmp13 + 8;
5870#line 546
5871 *((struct serio **)__cil_tmp14) = serio;
5872#line 547
5873 *((struct input_dev **)w8001) = input_dev;
5874#line 548
5875 __cil_tmp15 = (unsigned long )w8001;
5876#line 548
5877 __cil_tmp16 = __cil_tmp15 + 16;
5878#line 548
5879 __cil_tmp17 = (struct completion *)__cil_tmp16;
5880#line 548
5881 init_completion(__cil_tmp17);
5882#line 549
5883 __cil_tmp18 = (unsigned long )w8001;
5884#line 549
5885 __cil_tmp19 = __cil_tmp18 + 143;
5886#line 549
5887 __cil_tmp20 = (char (*)[32U])__cil_tmp19;
5888#line 549
5889 __cil_tmp21 = (char *)__cil_tmp20;
5890#line 549
5891 __cil_tmp22 = (unsigned long )serio;
5892#line 549
5893 __cil_tmp23 = __cil_tmp22 + 40;
5894#line 549
5895 __cil_tmp24 = (char (*)[32U])__cil_tmp23;
5896#line 549
5897 __cil_tmp25 = (char *)__cil_tmp24;
5898#line 549
5899 snprintf(__cil_tmp21, 32UL, "%s/input0", __cil_tmp25);
5900#line 551
5901 __cil_tmp26 = (void *)w8001;
5902#line 551
5903 serio_set_drvdata(serio, __cil_tmp26);
5904#line 552
5905 err = serio_open(serio, drv);
5906 }
5907#line 553
5908 if (err != 0) {
5909#line 554
5910 goto fail2;
5911 } else {
5912
5913 }
5914 {
5915#line 556
5916 err = w8001_setup(w8001);
5917 }
5918#line 557
5919 if (err != 0) {
5920#line 558
5921 goto fail3;
5922 } else {
5923
5924 }
5925 {
5926#line 560
5927 __cil_tmp27 = (unsigned long )w8001;
5928#line 560
5929 __cil_tmp28 = __cil_tmp27 + 192;
5930#line 560
5931 __cil_tmp29 = (char (*)[64U])__cil_tmp28;
5932#line 560
5933 *((char const **)input_dev) = (char const *)__cil_tmp29;
5934#line 561
5935 __cil_tmp30 = (unsigned long )input_dev;
5936#line 561
5937 __cil_tmp31 = __cil_tmp30 + 8;
5938#line 561
5939 __cil_tmp32 = (unsigned long )w8001;
5940#line 561
5941 __cil_tmp33 = __cil_tmp32 + 143;
5942#line 561
5943 __cil_tmp34 = (char (*)[32U])__cil_tmp33;
5944#line 561
5945 *((char const **)__cil_tmp31) = (char const *)__cil_tmp34;
5946#line 562
5947 __cil_tmp35 = 24 + 4;
5948#line 562
5949 __cil_tmp36 = (unsigned long )input_dev;
5950#line 562
5951 __cil_tmp37 = __cil_tmp36 + __cil_tmp35;
5952#line 562
5953 __cil_tmp38 = (unsigned long )w8001;
5954#line 562
5955 __cil_tmp39 = __cil_tmp38 + 112;
5956#line 562
5957 __cil_tmp40 = *((int *)__cil_tmp39);
5958#line 562
5959 *((__u16 *)__cil_tmp37) = (__u16 )__cil_tmp40;
5960#line 563
5961 __cil_tmp41 = (unsigned long )input_dev;
5962#line 563
5963 __cil_tmp42 = __cil_tmp41 + 24;
5964#line 563
5965 *((__u16 *)__cil_tmp42) = (__u16 )19U;
5966#line 564
5967 __cil_tmp43 = 24 + 2;
5968#line 564
5969 __cil_tmp44 = (unsigned long )input_dev;
5970#line 564
5971 __cil_tmp45 = __cil_tmp44 + __cil_tmp43;
5972#line 564
5973 *((__u16 *)__cil_tmp45) = (__u16 )1386U;
5974#line 565
5975 __cil_tmp46 = 24 + 6;
5976#line 565
5977 __cil_tmp47 = (unsigned long )input_dev;
5978#line 565
5979 __cil_tmp48 = __cil_tmp47 + __cil_tmp46;
5980#line 565
5981 *((__u16 *)__cil_tmp48) = (__u16 )256U;
5982#line 566
5983 __cil_tmp49 = (unsigned long )input_dev;
5984#line 566
5985 __cil_tmp50 = __cil_tmp49 + 840;
5986#line 566
5987 __cil_tmp51 = (unsigned long )serio;
5988#line 566
5989 __cil_tmp52 = __cil_tmp51 + 416;
5990#line 566
5991 *((struct device **)__cil_tmp50) = (struct device *)__cil_tmp52;
5992#line 568
5993 __cil_tmp53 = (unsigned long )input_dev;
5994#line 568
5995 __cil_tmp54 = __cil_tmp53 + 552;
5996#line 568
5997 *((int (**)(struct input_dev * ))__cil_tmp54) = & w8001_open;
5998#line 569
5999 __cil_tmp55 = (unsigned long )input_dev;
6000#line 569
6001 __cil_tmp56 = __cil_tmp55 + 560;
6002#line 569
6003 *((void (**)(struct input_dev * ))__cil_tmp56) = & w8001_close;
6004#line 571
6005 __cil_tmp57 = (void *)w8001;
6006#line 571
6007 input_set_drvdata(input_dev, __cil_tmp57);
6008#line 573
6009 __cil_tmp58 = *((struct input_dev **)w8001);
6010#line 573
6011 err = input_register_device(__cil_tmp58);
6012 }
6013#line 574
6014 if (err != 0) {
6015#line 575
6016 goto fail3;
6017 } else {
6018
6019 }
6020#line 577
6021 return (0);
6022 fail3:
6023 {
6024#line 580
6025 serio_close(serio);
6026 }
6027 fail2:
6028 {
6029#line 582
6030 __cil_tmp59 = (void *)0;
6031#line 582
6032 serio_set_drvdata(serio, __cil_tmp59);
6033 }
6034 fail1:
6035 {
6036#line 584
6037 input_free_device(input_dev);
6038#line 585
6039 __cil_tmp60 = (void const *)w8001;
6040#line 585
6041 kfree(__cil_tmp60);
6042 }
6043#line 586
6044 return (err);
6045}
6046}
6047#line 589 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/3129/dscv_tempdir/dscv/ri/43_1a/drivers/input/touchscreen/wacom_w8001.c.p"
6048static struct serio_device_id w8001_serio_ids[2U] = { {(__u8 )2U, (__u8 )255U, (__u8 )255U, (__u8 )57U},
6049 {(__u8 )0U, (unsigned char)0, (unsigned char)0, (unsigned char)0}};
6050#line 599 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/3129/dscv_tempdir/dscv/ri/43_1a/drivers/input/touchscreen/wacom_w8001.c.p"
6051struct serio_device_id const __mod_serio_device_table ;
6052#line 601 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/3129/dscv_tempdir/dscv/ri/43_1a/drivers/input/touchscreen/wacom_w8001.c.p"
6053static struct serio_driver w8001_drv =
6054#line 601
6055 {"Wacom W8001 serial touchscreen driver", (struct serio_device_id const *)(& w8001_serio_ids),
6056 (_Bool)0, (void (*)(struct serio * ))0, & w8001_interrupt, & w8001_connect, (int (*)(struct serio * ))0,
6057 & w8001_disconnect, (void (*)(struct serio * ))0, {"w8001", (struct bus_type *)0,
6058 (struct module *)0, (char const *)0,
6059 (_Bool)0, (struct of_device_id const *)0,
6060 (int (*)(struct device * ))0,
6061 (int (*)(struct device * ))0,
6062 (void (*)(struct device * ))0,
6063 (int (*)(struct device * ,
6064 pm_message_t ))0,
6065 (int (*)(struct device * ))0,
6066 (struct attribute_group const **)0,
6067 (struct dev_pm_ops const *)0,
6068 (struct driver_private *)0}};
6069#line 612 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/3129/dscv_tempdir/dscv/ri/43_1a/drivers/input/touchscreen/wacom_w8001.c.p"
6070static int w8001_init(void)
6071{ int tmp ;
6072
6073 {
6074 {
6075#line 614
6076 tmp = __serio_register_driver(& w8001_drv, & __this_module, "wacom_w8001");
6077 }
6078#line 614
6079 return (tmp);
6080}
6081}
6082#line 617 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/3129/dscv_tempdir/dscv/ri/43_1a/drivers/input/touchscreen/wacom_w8001.c.p"
6083static void w8001_exit(void)
6084{
6085
6086 {
6087 {
6088#line 619
6089 serio_unregister_driver(& w8001_drv);
6090 }
6091#line 620
6092 return;
6093}
6094}
6095#line 641
6096extern void ldv_check_final_state(void) ;
6097#line 644
6098extern void ldv_check_return_value(int ) ;
6099#line 647
6100extern void ldv_initialize(void) ;
6101#line 650
6102extern int __VERIFIER_nondet_int(void) ;
6103#line 653 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/3129/dscv_tempdir/dscv/ri/43_1a/drivers/input/touchscreen/wacom_w8001.c.p"
6104int LDV_IN_INTERRUPT ;
6105#line 656 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/3129/dscv_tempdir/dscv/ri/43_1a/drivers/input/touchscreen/wacom_w8001.c.p"
6106void main(void)
6107{ struct serio *var_group1 ;
6108 unsigned char var_w8001_interrupt_7_p1 ;
6109 unsigned int var_w8001_interrupt_7_p2 ;
6110 struct serio_driver *var_group2 ;
6111 int res_w8001_connect_13 ;
6112 int ldv_s_w8001_drv_serio_driver ;
6113 int tmp ;
6114 int tmp___0 ;
6115 int tmp___1 ;
6116 int __cil_tmp10 ;
6117 unsigned char __cil_tmp11 ;
6118
6119 {
6120 {
6121#line 787
6122 ldv_s_w8001_drv_serio_driver = 0;
6123#line 749
6124 LDV_IN_INTERRUPT = 1;
6125#line 758
6126 ldv_initialize();
6127#line 785
6128 tmp = w8001_init();
6129 }
6130#line 785
6131 if (tmp != 0) {
6132#line 786
6133 goto ldv_final;
6134 } else {
6135
6136 }
6137#line 791
6138 goto ldv_20979;
6139 ldv_20978:
6140 {
6141#line 795
6142 tmp___0 = __VERIFIER_nondet_int();
6143 }
6144#line 797
6145 if (tmp___0 == 0) {
6146#line 797
6147 goto case_0;
6148 } else
6149#line 837
6150 if (tmp___0 == 1) {
6151#line 837
6152 goto case_1;
6153 } else
6154#line 874
6155 if (tmp___0 == 2) {
6156#line 874
6157 goto case_2;
6158 } else {
6159 {
6160#line 911
6161 goto switch_default;
6162#line 795
6163 if (0) {
6164 case_0: ;
6165#line 800
6166 if (ldv_s_w8001_drv_serio_driver == 0) {
6167 {
6168#line 826
6169 res_w8001_connect_13 = w8001_connect(var_group1, var_group2);
6170#line 827
6171 ldv_check_return_value(res_w8001_connect_13);
6172 }
6173#line 828
6174 if (res_w8001_connect_13 != 0) {
6175#line 829
6176 goto ldv_module_exit;
6177 } else {
6178
6179 }
6180#line 830
6181 ldv_s_w8001_drv_serio_driver = ldv_s_w8001_drv_serio_driver + 1;
6182 } else {
6183
6184 }
6185#line 836
6186 goto ldv_20974;
6187 case_1: ;
6188#line 840
6189 if (ldv_s_w8001_drv_serio_driver == 1) {
6190 {
6191#line 866
6192 w8001_disconnect(var_group1);
6193#line 867
6194 ldv_s_w8001_drv_serio_driver = 0;
6195 }
6196 } else {
6197
6198 }
6199#line 873
6200 goto ldv_20974;
6201 case_2:
6202 {
6203#line 903
6204 __cil_tmp10 = (int )var_w8001_interrupt_7_p1;
6205#line 903
6206 __cil_tmp11 = (unsigned char )__cil_tmp10;
6207#line 903
6208 w8001_interrupt(var_group1, __cil_tmp11, var_w8001_interrupt_7_p2);
6209 }
6210#line 910
6211 goto ldv_20974;
6212 switch_default: ;
6213#line 911
6214 goto ldv_20974;
6215 } else {
6216 switch_break: ;
6217 }
6218 }
6219 }
6220 ldv_20974: ;
6221 ldv_20979:
6222 {
6223#line 791
6224 tmp___1 = __VERIFIER_nondet_int();
6225 }
6226#line 791
6227 if (tmp___1 != 0) {
6228#line 793
6229 goto ldv_20978;
6230 } else
6231#line 791
6232 if (ldv_s_w8001_drv_serio_driver != 0) {
6233#line 793
6234 goto ldv_20978;
6235 } else {
6236#line 795
6237 goto ldv_20980;
6238 }
6239 ldv_20980: ;
6240 ldv_module_exit:
6241 {
6242#line 944
6243 w8001_exit();
6244 }
6245 ldv_final:
6246 {
6247#line 947
6248 ldv_check_final_state();
6249 }
6250#line 950
6251 return;
6252}
6253}
6254#line 5 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/3129/dscv_tempdir/dscv/ri/43_1a/kernel-rules/files/engine-blast-assert.h"
6255void ldv_blast_assert(void)
6256{
6257
6258 {
6259 ERROR: ;
6260#line 6
6261 goto ERROR;
6262}
6263}
6264#line 6 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/3129/dscv_tempdir/dscv/ri/43_1a/kernel-rules/files/engine-blast.h"
6265extern int __VERIFIER_nondet_int(void) ;
6266#line 971 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/3129/dscv_tempdir/dscv/ri/43_1a/drivers/input/touchscreen/wacom_w8001.c.p"
6267int ldv_spin = 0;
6268#line 975 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/3129/dscv_tempdir/dscv/ri/43_1a/drivers/input/touchscreen/wacom_w8001.c.p"
6269void ldv_check_alloc_flags(gfp_t flags )
6270{
6271
6272 {
6273#line 978
6274 if (ldv_spin != 0) {
6275#line 978
6276 if (flags != 32U) {
6277 {
6278#line 978
6279 ldv_blast_assert();
6280 }
6281 } else {
6282
6283 }
6284 } else {
6285
6286 }
6287#line 981
6288 return;
6289}
6290}
6291#line 981
6292extern struct page *ldv_some_page(void) ;
6293#line 984 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/3129/dscv_tempdir/dscv/ri/43_1a/drivers/input/touchscreen/wacom_w8001.c.p"
6294struct page *ldv_check_alloc_flags_and_return_some_page(gfp_t flags )
6295{ struct page *tmp ;
6296
6297 {
6298#line 987
6299 if (ldv_spin != 0) {
6300#line 987
6301 if (flags != 32U) {
6302 {
6303#line 987
6304 ldv_blast_assert();
6305 }
6306 } else {
6307
6308 }
6309 } else {
6310
6311 }
6312 {
6313#line 989
6314 tmp = ldv_some_page();
6315 }
6316#line 989
6317 return (tmp);
6318}
6319}
6320#line 993 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/3129/dscv_tempdir/dscv/ri/43_1a/drivers/input/touchscreen/wacom_w8001.c.p"
6321void ldv_check_alloc_nonatomic(void)
6322{
6323
6324 {
6325#line 996
6326 if (ldv_spin != 0) {
6327 {
6328#line 996
6329 ldv_blast_assert();
6330 }
6331 } else {
6332
6333 }
6334#line 999
6335 return;
6336}
6337}
6338#line 1000 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/3129/dscv_tempdir/dscv/ri/43_1a/drivers/input/touchscreen/wacom_w8001.c.p"
6339void ldv_spin_lock(void)
6340{
6341
6342 {
6343#line 1003
6344 ldv_spin = 1;
6345#line 1004
6346 return;
6347}
6348}
6349#line 1007 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/3129/dscv_tempdir/dscv/ri/43_1a/drivers/input/touchscreen/wacom_w8001.c.p"
6350void ldv_spin_unlock(void)
6351{
6352
6353 {
6354#line 1010
6355 ldv_spin = 0;
6356#line 1011
6357 return;
6358}
6359}
6360#line 1014 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/3129/dscv_tempdir/dscv/ri/43_1a/drivers/input/touchscreen/wacom_w8001.c.p"
6361int ldv_spin_trylock(void)
6362{ int is_lock ;
6363
6364 {
6365 {
6366#line 1019
6367 is_lock = __VERIFIER_nondet_int();
6368 }
6369#line 1021
6370 if (is_lock != 0) {
6371#line 1024
6372 return (0);
6373 } else {
6374#line 1029
6375 ldv_spin = 1;
6376#line 1031
6377 return (1);
6378 }
6379}
6380}
6381#line 1198 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/3129/dscv_tempdir/dscv/ri/43_1a/drivers/input/touchscreen/wacom_w8001.c.p"
6382void *ldv_kmem_cache_alloc_16(struct kmem_cache *ldv_func_arg1 , gfp_t ldv_func_arg2 )
6383{
6384
6385 {
6386 {
6387#line 1204
6388 ldv_check_alloc_flags(ldv_func_arg2);
6389#line 1206
6390 kmem_cache_alloc(ldv_func_arg1, ldv_func_arg2);
6391 }
6392#line 1207
6393 return ((void *)0);
6394}
6395}
6396#line 1209 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/3129/dscv_tempdir/dscv/ri/43_1a/drivers/input/touchscreen/wacom_w8001.c.p"
6397__inline static void *kzalloc(size_t size , gfp_t flags )
6398{ void *tmp ;
6399
6400 {
6401 {
6402#line 1215
6403 ldv_check_alloc_flags(flags);
6404#line 1216
6405 tmp = __VERIFIER_nondet_pointer();
6406 }
6407#line 1216
6408 return (tmp);
6409}
6410}