Showing error 1188

User: Jiri Slaby
Error type: Reachable Error Location
Error type description: A specified error location is reachable in some program path
File location: ldv-linux-3.4/43_1a_cilled_safe_ok_nondet_linux-43_1a-drivers--rtc--rtc-ds1553.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out.c
Line in file: 4984
Project: SV-COMP 2013
Project version: 2.6.28
Tools: Manual Work
Entered: 2013-01-17 16:57:54 UTC


Source:

   1/* Generated by CIL v. 1.3.7 */
   2/* print_CIL_Input is true */
   3
   4#line 19 "include/asm-generic/int-ll64.h"
   5typedef signed char __s8;
   6#line 22 "include/asm-generic/int-ll64.h"
   7typedef short __s16;
   8#line 23 "include/asm-generic/int-ll64.h"
   9typedef unsigned short __u16;
  10#line 25 "include/asm-generic/int-ll64.h"
  11typedef int __s32;
  12#line 26 "include/asm-generic/int-ll64.h"
  13typedef unsigned int __u32;
  14#line 30 "include/asm-generic/int-ll64.h"
  15typedef unsigned long long __u64;
  16#line 43 "include/asm-generic/int-ll64.h"
  17typedef unsigned char u8;
  18#line 45 "include/asm-generic/int-ll64.h"
  19typedef short s16;
  20#line 46 "include/asm-generic/int-ll64.h"
  21typedef unsigned short u16;
  22#line 48 "include/asm-generic/int-ll64.h"
  23typedef int s32;
  24#line 49 "include/asm-generic/int-ll64.h"
  25typedef unsigned int u32;
  26#line 51 "include/asm-generic/int-ll64.h"
  27typedef long long s64;
  28#line 52 "include/asm-generic/int-ll64.h"
  29typedef unsigned long long u64;
  30#line 14 "include/asm-generic/posix_types.h"
  31typedef long __kernel_long_t;
  32#line 15 "include/asm-generic/posix_types.h"
  33typedef unsigned long __kernel_ulong_t;
  34#line 52 "include/asm-generic/posix_types.h"
  35typedef unsigned int __kernel_uid32_t;
  36#line 53 "include/asm-generic/posix_types.h"
  37typedef unsigned int __kernel_gid32_t;
  38#line 75 "include/asm-generic/posix_types.h"
  39typedef __kernel_ulong_t __kernel_size_t;
  40#line 76 "include/asm-generic/posix_types.h"
  41typedef __kernel_long_t __kernel_ssize_t;
  42#line 91 "include/asm-generic/posix_types.h"
  43typedef long long __kernel_loff_t;
  44#line 92 "include/asm-generic/posix_types.h"
  45typedef __kernel_long_t __kernel_time_t;
  46#line 95 "include/asm-generic/posix_types.h"
  47typedef int __kernel_clockid_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 35 "include/linux/types.h"
  55typedef __kernel_clockid_t clockid_t;
  56#line 38 "include/linux/types.h"
  57typedef _Bool bool;
  58#line 40 "include/linux/types.h"
  59typedef __kernel_uid32_t uid_t;
  60#line 41 "include/linux/types.h"
  61typedef __kernel_gid32_t gid_t;
  62#line 54 "include/linux/types.h"
  63typedef __kernel_loff_t loff_t;
  64#line 63 "include/linux/types.h"
  65typedef __kernel_size_t size_t;
  66#line 68 "include/linux/types.h"
  67typedef __kernel_ssize_t ssize_t;
  68#line 78 "include/linux/types.h"
  69typedef __kernel_time_t time_t;
  70#line 142 "include/linux/types.h"
  71typedef unsigned long sector_t;
  72#line 143 "include/linux/types.h"
  73typedef unsigned long blkcnt_t;
  74#line 202 "include/linux/types.h"
  75typedef unsigned int gfp_t;
  76#line 203 "include/linux/types.h"
  77typedef unsigned int fmode_t;
  78#line 206 "include/linux/types.h"
  79typedef u64 phys_addr_t;
  80#line 211 "include/linux/types.h"
  81typedef phys_addr_t resource_size_t;
  82#line 221 "include/linux/types.h"
  83struct __anonstruct_atomic_t_6 {
  84   int counter ;
  85};
  86#line 221 "include/linux/types.h"
  87typedef struct __anonstruct_atomic_t_6 atomic_t;
  88#line 226 "include/linux/types.h"
  89struct __anonstruct_atomic64_t_7 {
  90   long counter ;
  91};
  92#line 226 "include/linux/types.h"
  93typedef struct __anonstruct_atomic64_t_7 atomic64_t;
  94#line 227 "include/linux/types.h"
  95struct list_head {
  96   struct list_head *next ;
  97   struct list_head *prev ;
  98};
  99#line 232
 100struct hlist_node;
 101#line 232 "include/linux/types.h"
 102struct hlist_head {
 103   struct hlist_node *first ;
 104};
 105#line 236 "include/linux/types.h"
 106struct hlist_node {
 107   struct hlist_node *next ;
 108   struct hlist_node **pprev ;
 109};
 110#line 247 "include/linux/types.h"
 111struct rcu_head {
 112   struct rcu_head *next ;
 113   void (*func)(struct rcu_head * ) ;
 114};
 115#line 55 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/alternative.h"
 116struct module;
 117#line 55
 118struct module;
 119#line 146 "include/linux/init.h"
 120typedef void (*ctor_fn_t)(void);
 121#line 46 "include/linux/dynamic_debug.h"
 122struct device;
 123#line 46
 124struct device;
 125#line 57
 126struct completion;
 127#line 57
 128struct completion;
 129#line 348 "include/linux/kernel.h"
 130struct pid;
 131#line 348
 132struct pid;
 133#line 112 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/stat.h"
 134struct timespec;
 135#line 112
 136struct timespec;
 137#line 58 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/page_types.h"
 138struct page;
 139#line 58
 140struct page;
 141#line 26 "include/asm-generic/getorder.h"
 142struct task_struct;
 143#line 26
 144struct task_struct;
 145#line 290 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
 146struct file;
 147#line 290
 148struct file;
 149#line 305
 150struct seq_file;
 151#line 305
 152struct seq_file;
 153#line 327 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/paravirt_types.h"
 154struct arch_spinlock;
 155#line 327
 156struct arch_spinlock;
 157#line 306 "include/linux/bitmap.h"
 158struct bug_entry {
 159   int bug_addr_disp ;
 160   int file_disp ;
 161   unsigned short line ;
 162   unsigned short flags ;
 163};
 164#line 234 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/paravirt.h"
 165struct static_key;
 166#line 234
 167struct static_key;
 168#line 153 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
 169struct seq_operations;
 170#line 433
 171struct kmem_cache;
 172#line 23 "include/asm-generic/atomic-long.h"
 173typedef atomic64_t atomic_long_t;
 174#line 14 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
 175typedef u16 __ticket_t;
 176#line 15 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
 177typedef u32 __ticketpair_t;
 178#line 16 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
 179struct __raw_tickets {
 180   __ticket_t head ;
 181   __ticket_t tail ;
 182};
 183#line 26 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
 184union __anonunion_ldv_5907_29 {
 185   __ticketpair_t head_tail ;
 186   struct __raw_tickets tickets ;
 187};
 188#line 26 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
 189struct arch_spinlock {
 190   union __anonunion_ldv_5907_29 ldv_5907 ;
 191};
 192#line 27 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
 193typedef struct arch_spinlock arch_spinlock_t;
 194#line 33 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/rwlock.h"
 195struct __anonstruct_ldv_5914_31 {
 196   u32 read ;
 197   s32 write ;
 198};
 199#line 33 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/rwlock.h"
 200union __anonunion_arch_rwlock_t_30 {
 201   s64 lock ;
 202   struct __anonstruct_ldv_5914_31 ldv_5914 ;
 203};
 204#line 33 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/rwlock.h"
 205typedef union __anonunion_arch_rwlock_t_30 arch_rwlock_t;
 206#line 34
 207struct lockdep_map;
 208#line 34
 209struct lockdep_map;
 210#line 55 "include/linux/debug_locks.h"
 211struct stack_trace {
 212   unsigned int nr_entries ;
 213   unsigned int max_entries ;
 214   unsigned long *entries ;
 215   int skip ;
 216};
 217#line 26 "include/linux/stacktrace.h"
 218struct lockdep_subclass_key {
 219   char __one_byte ;
 220};
 221#line 53 "include/linux/lockdep.h"
 222struct lock_class_key {
 223   struct lockdep_subclass_key subkeys[8U] ;
 224};
 225#line 59 "include/linux/lockdep.h"
 226struct lock_class {
 227   struct list_head hash_entry ;
 228   struct list_head lock_entry ;
 229   struct lockdep_subclass_key *key ;
 230   unsigned int subclass ;
 231   unsigned int dep_gen_id ;
 232   unsigned long usage_mask ;
 233   struct stack_trace usage_traces[13U] ;
 234   struct list_head locks_after ;
 235   struct list_head locks_before ;
 236   unsigned int version ;
 237   unsigned long ops ;
 238   char const   *name ;
 239   int name_version ;
 240   unsigned long contention_point[4U] ;
 241   unsigned long contending_point[4U] ;
 242};
 243#line 144 "include/linux/lockdep.h"
 244struct lockdep_map {
 245   struct lock_class_key *key ;
 246   struct lock_class *class_cache[2U] ;
 247   char const   *name ;
 248   int cpu ;
 249   unsigned long ip ;
 250};
 251#line 556 "include/linux/lockdep.h"
 252struct raw_spinlock {
 253   arch_spinlock_t raw_lock ;
 254   unsigned int magic ;
 255   unsigned int owner_cpu ;
 256   void *owner ;
 257   struct lockdep_map dep_map ;
 258};
 259#line 32 "include/linux/spinlock_types.h"
 260typedef struct raw_spinlock raw_spinlock_t;
 261#line 33 "include/linux/spinlock_types.h"
 262struct __anonstruct_ldv_6122_33 {
 263   u8 __padding[24U] ;
 264   struct lockdep_map dep_map ;
 265};
 266#line 33 "include/linux/spinlock_types.h"
 267union __anonunion_ldv_6123_32 {
 268   struct raw_spinlock rlock ;
 269   struct __anonstruct_ldv_6122_33 ldv_6122 ;
 270};
 271#line 33 "include/linux/spinlock_types.h"
 272struct spinlock {
 273   union __anonunion_ldv_6123_32 ldv_6123 ;
 274};
 275#line 76 "include/linux/spinlock_types.h"
 276typedef struct spinlock spinlock_t;
 277#line 23 "include/linux/rwlock_types.h"
 278struct __anonstruct_rwlock_t_34 {
 279   arch_rwlock_t raw_lock ;
 280   unsigned int magic ;
 281   unsigned int owner_cpu ;
 282   void *owner ;
 283   struct lockdep_map dep_map ;
 284};
 285#line 23 "include/linux/rwlock_types.h"
 286typedef struct __anonstruct_rwlock_t_34 rwlock_t;
 287#line 110 "include/linux/seqlock.h"
 288struct seqcount {
 289   unsigned int sequence ;
 290};
 291#line 121 "include/linux/seqlock.h"
 292typedef struct seqcount seqcount_t;
 293#line 254 "include/linux/seqlock.h"
 294struct timespec {
 295   __kernel_time_t tv_sec ;
 296   long tv_nsec ;
 297};
 298#line 286 "include/linux/time.h"
 299struct kstat {
 300   u64 ino ;
 301   dev_t dev ;
 302   umode_t mode ;
 303   unsigned int nlink ;
 304   uid_t uid ;
 305   gid_t gid ;
 306   dev_t rdev ;
 307   loff_t size ;
 308   struct timespec atime ;
 309   struct timespec mtime ;
 310   struct timespec ctime ;
 311   unsigned long blksize ;
 312   unsigned long long blocks ;
 313};
 314#line 48 "include/linux/wait.h"
 315struct __wait_queue_head {
 316   spinlock_t lock ;
 317   struct list_head task_list ;
 318};
 319#line 53 "include/linux/wait.h"
 320typedef struct __wait_queue_head wait_queue_head_t;
 321#line 670 "include/linux/mmzone.h"
 322struct mutex {
 323   atomic_t count ;
 324   spinlock_t wait_lock ;
 325   struct list_head wait_list ;
 326   struct task_struct *owner ;
 327   char const   *name ;
 328   void *magic ;
 329   struct lockdep_map dep_map ;
 330};
 331#line 171 "include/linux/mutex.h"
 332struct rw_semaphore;
 333#line 171
 334struct rw_semaphore;
 335#line 172 "include/linux/mutex.h"
 336struct rw_semaphore {
 337   long count ;
 338   raw_spinlock_t wait_lock ;
 339   struct list_head wait_list ;
 340   struct lockdep_map dep_map ;
 341};
 342#line 128 "include/linux/rwsem.h"
 343struct completion {
 344   unsigned int done ;
 345   wait_queue_head_t wait ;
 346};
 347#line 139 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/e820.h"
 348struct resource {
 349   resource_size_t start ;
 350   resource_size_t end ;
 351   char const   *name ;
 352   unsigned long flags ;
 353   struct resource *parent ;
 354   struct resource *sibling ;
 355   struct resource *child ;
 356};
 357#line 312 "include/linux/jiffies.h"
 358union ktime {
 359   s64 tv64 ;
 360};
 361#line 59 "include/linux/ktime.h"
 362typedef union ktime ktime_t;
 363#line 341
 364struct tvec_base;
 365#line 341
 366struct tvec_base;
 367#line 342 "include/linux/ktime.h"
 368struct timer_list {
 369   struct list_head entry ;
 370   unsigned long expires ;
 371   struct tvec_base *base ;
 372   void (*function)(unsigned long  ) ;
 373   unsigned long data ;
 374   int slack ;
 375   int start_pid ;
 376   void *start_site ;
 377   char start_comm[16U] ;
 378   struct lockdep_map lockdep_map ;
 379};
 380#line 289 "include/linux/timer.h"
 381struct hrtimer;
 382#line 289
 383struct hrtimer;
 384#line 290
 385enum hrtimer_restart;
 386#line 302
 387struct work_struct;
 388#line 302
 389struct work_struct;
 390#line 45 "include/linux/workqueue.h"
 391struct work_struct {
 392   atomic_long_t data ;
 393   struct list_head entry ;
 394   void (*func)(struct work_struct * ) ;
 395   struct lockdep_map lockdep_map ;
 396};
 397#line 46 "include/linux/pm.h"
 398struct pm_message {
 399   int event ;
 400};
 401#line 52 "include/linux/pm.h"
 402typedef struct pm_message pm_message_t;
 403#line 53 "include/linux/pm.h"
 404struct dev_pm_ops {
 405   int (*prepare)(struct device * ) ;
 406   void (*complete)(struct device * ) ;
 407   int (*suspend)(struct device * ) ;
 408   int (*resume)(struct device * ) ;
 409   int (*freeze)(struct device * ) ;
 410   int (*thaw)(struct device * ) ;
 411   int (*poweroff)(struct device * ) ;
 412   int (*restore)(struct device * ) ;
 413   int (*suspend_late)(struct device * ) ;
 414   int (*resume_early)(struct device * ) ;
 415   int (*freeze_late)(struct device * ) ;
 416   int (*thaw_early)(struct device * ) ;
 417   int (*poweroff_late)(struct device * ) ;
 418   int (*restore_early)(struct device * ) ;
 419   int (*suspend_noirq)(struct device * ) ;
 420   int (*resume_noirq)(struct device * ) ;
 421   int (*freeze_noirq)(struct device * ) ;
 422   int (*thaw_noirq)(struct device * ) ;
 423   int (*poweroff_noirq)(struct device * ) ;
 424   int (*restore_noirq)(struct device * ) ;
 425   int (*runtime_suspend)(struct device * ) ;
 426   int (*runtime_resume)(struct device * ) ;
 427   int (*runtime_idle)(struct device * ) ;
 428};
 429#line 289
 430enum rpm_status {
 431    RPM_ACTIVE = 0,
 432    RPM_RESUMING = 1,
 433    RPM_SUSPENDED = 2,
 434    RPM_SUSPENDING = 3
 435} ;
 436#line 296
 437enum rpm_request {
 438    RPM_REQ_NONE = 0,
 439    RPM_REQ_IDLE = 1,
 440    RPM_REQ_SUSPEND = 2,
 441    RPM_REQ_AUTOSUSPEND = 3,
 442    RPM_REQ_RESUME = 4
 443} ;
 444#line 304
 445struct wakeup_source;
 446#line 304
 447struct wakeup_source;
 448#line 494 "include/linux/pm.h"
 449struct pm_subsys_data {
 450   spinlock_t lock ;
 451   unsigned int refcount ;
 452};
 453#line 499
 454struct dev_pm_qos_request;
 455#line 499
 456struct pm_qos_constraints;
 457#line 499 "include/linux/pm.h"
 458struct dev_pm_info {
 459   pm_message_t power_state ;
 460   unsigned char can_wakeup : 1 ;
 461   unsigned char async_suspend : 1 ;
 462   bool is_prepared ;
 463   bool is_suspended ;
 464   bool ignore_children ;
 465   spinlock_t lock ;
 466   struct list_head entry ;
 467   struct completion completion ;
 468   struct wakeup_source *wakeup ;
 469   bool wakeup_path ;
 470   struct timer_list suspend_timer ;
 471   unsigned long timer_expires ;
 472   struct work_struct work ;
 473   wait_queue_head_t wait_queue ;
 474   atomic_t usage_count ;
 475   atomic_t child_count ;
 476   unsigned char disable_depth : 3 ;
 477   unsigned char idle_notification : 1 ;
 478   unsigned char request_pending : 1 ;
 479   unsigned char deferred_resume : 1 ;
 480   unsigned char run_wake : 1 ;
 481   unsigned char runtime_auto : 1 ;
 482   unsigned char no_callbacks : 1 ;
 483   unsigned char irq_safe : 1 ;
 484   unsigned char use_autosuspend : 1 ;
 485   unsigned char timer_autosuspends : 1 ;
 486   enum rpm_request request ;
 487   enum rpm_status runtime_status ;
 488   int runtime_error ;
 489   int autosuspend_delay ;
 490   unsigned long last_busy ;
 491   unsigned long active_jiffies ;
 492   unsigned long suspended_jiffies ;
 493   unsigned long accounting_timestamp ;
 494   ktime_t suspend_time ;
 495   s64 max_time_suspended_ns ;
 496   struct dev_pm_qos_request *pq_req ;
 497   struct pm_subsys_data *subsys_data ;
 498   struct pm_qos_constraints *constraints ;
 499};
 500#line 558 "include/linux/pm.h"
 501struct dev_pm_domain {
 502   struct dev_pm_ops ops ;
 503};
 504#line 18 "include/asm-generic/pci_iomap.h"
 505struct vm_area_struct;
 506#line 18
 507struct vm_area_struct;
 508#line 835 "include/linux/sysctl.h"
 509struct rb_node {
 510   unsigned long rb_parent_color ;
 511   struct rb_node *rb_right ;
 512   struct rb_node *rb_left ;
 513};
 514#line 108 "include/linux/rbtree.h"
 515struct rb_root {
 516   struct rb_node *rb_node ;
 517};
 518#line 37 "include/linux/kmod.h"
 519struct cred;
 520#line 37
 521struct cred;
 522#line 18 "include/linux/elf.h"
 523typedef __u64 Elf64_Addr;
 524#line 19 "include/linux/elf.h"
 525typedef __u16 Elf64_Half;
 526#line 23 "include/linux/elf.h"
 527typedef __u32 Elf64_Word;
 528#line 24 "include/linux/elf.h"
 529typedef __u64 Elf64_Xword;
 530#line 193 "include/linux/elf.h"
 531struct elf64_sym {
 532   Elf64_Word st_name ;
 533   unsigned char st_info ;
 534   unsigned char st_other ;
 535   Elf64_Half st_shndx ;
 536   Elf64_Addr st_value ;
 537   Elf64_Xword st_size ;
 538};
 539#line 201 "include/linux/elf.h"
 540typedef struct elf64_sym Elf64_Sym;
 541#line 445
 542struct sock;
 543#line 445
 544struct sock;
 545#line 446
 546struct kobject;
 547#line 446
 548struct kobject;
 549#line 447
 550enum kobj_ns_type {
 551    KOBJ_NS_TYPE_NONE = 0,
 552    KOBJ_NS_TYPE_NET = 1,
 553    KOBJ_NS_TYPES = 2
 554} ;
 555#line 453 "include/linux/elf.h"
 556struct kobj_ns_type_operations {
 557   enum kobj_ns_type type ;
 558   void *(*grab_current_ns)(void) ;
 559   void const   *(*netlink_ns)(struct sock * ) ;
 560   void const   *(*initial_ns)(void) ;
 561   void (*drop_ns)(void * ) ;
 562};
 563#line 57 "include/linux/kobject_ns.h"
 564struct attribute {
 565   char const   *name ;
 566   umode_t mode ;
 567   struct lock_class_key *key ;
 568   struct lock_class_key skey ;
 569};
 570#line 33 "include/linux/sysfs.h"
 571struct attribute_group {
 572   char const   *name ;
 573   umode_t (*is_visible)(struct kobject * , struct attribute * , int  ) ;
 574   struct attribute **attrs ;
 575};
 576#line 62 "include/linux/sysfs.h"
 577struct bin_attribute {
 578   struct attribute attr ;
 579   size_t size ;
 580   void *private ;
 581   ssize_t (*read)(struct file * , struct kobject * , struct bin_attribute * , char * ,
 582                   loff_t  , size_t  ) ;
 583   ssize_t (*write)(struct file * , struct kobject * , struct bin_attribute * , char * ,
 584                    loff_t  , size_t  ) ;
 585   int (*mmap)(struct file * , struct kobject * , struct bin_attribute * , struct vm_area_struct * ) ;
 586};
 587#line 98 "include/linux/sysfs.h"
 588struct sysfs_ops {
 589   ssize_t (*show)(struct kobject * , struct attribute * , char * ) ;
 590   ssize_t (*store)(struct kobject * , struct attribute * , char const   * , size_t  ) ;
 591   void const   *(*namespace)(struct kobject * , struct attribute  const  * ) ;
 592};
 593#line 117
 594struct sysfs_dirent;
 595#line 117
 596struct sysfs_dirent;
 597#line 182 "include/linux/sysfs.h"
 598struct kref {
 599   atomic_t refcount ;
 600};
 601#line 49 "include/linux/kobject.h"
 602struct kset;
 603#line 49
 604struct kobj_type;
 605#line 49 "include/linux/kobject.h"
 606struct kobject {
 607   char const   *name ;
 608   struct list_head entry ;
 609   struct kobject *parent ;
 610   struct kset *kset ;
 611   struct kobj_type *ktype ;
 612   struct sysfs_dirent *sd ;
 613   struct kref kref ;
 614   unsigned char state_initialized : 1 ;
 615   unsigned char state_in_sysfs : 1 ;
 616   unsigned char state_add_uevent_sent : 1 ;
 617   unsigned char state_remove_uevent_sent : 1 ;
 618   unsigned char uevent_suppress : 1 ;
 619};
 620#line 107 "include/linux/kobject.h"
 621struct kobj_type {
 622   void (*release)(struct kobject * ) ;
 623   struct sysfs_ops  const  *sysfs_ops ;
 624   struct attribute **default_attrs ;
 625   struct kobj_ns_type_operations  const  *(*child_ns_type)(struct kobject * ) ;
 626   void const   *(*namespace)(struct kobject * ) ;
 627};
 628#line 115 "include/linux/kobject.h"
 629struct kobj_uevent_env {
 630   char *envp[32U] ;
 631   int envp_idx ;
 632   char buf[2048U] ;
 633   int buflen ;
 634};
 635#line 122 "include/linux/kobject.h"
 636struct kset_uevent_ops {
 637   int (* const  filter)(struct kset * , struct kobject * ) ;
 638   char const   *(* const  name)(struct kset * , struct kobject * ) ;
 639   int (* const  uevent)(struct kset * , struct kobject * , struct kobj_uevent_env * ) ;
 640};
 641#line 139 "include/linux/kobject.h"
 642struct kset {
 643   struct list_head list ;
 644   spinlock_t list_lock ;
 645   struct kobject kobj ;
 646   struct kset_uevent_ops  const  *uevent_ops ;
 647};
 648#line 215
 649struct kernel_param;
 650#line 215
 651struct kernel_param;
 652#line 216 "include/linux/kobject.h"
 653struct kernel_param_ops {
 654   int (*set)(char const   * , struct kernel_param  const  * ) ;
 655   int (*get)(char * , struct kernel_param  const  * ) ;
 656   void (*free)(void * ) ;
 657};
 658#line 49 "include/linux/moduleparam.h"
 659struct kparam_string;
 660#line 49
 661struct kparam_array;
 662#line 49 "include/linux/moduleparam.h"
 663union __anonunion_ldv_13363_134 {
 664   void *arg ;
 665   struct kparam_string  const  *str ;
 666   struct kparam_array  const  *arr ;
 667};
 668#line 49 "include/linux/moduleparam.h"
 669struct kernel_param {
 670   char const   *name ;
 671   struct kernel_param_ops  const  *ops ;
 672   u16 perm ;
 673   s16 level ;
 674   union __anonunion_ldv_13363_134 ldv_13363 ;
 675};
 676#line 61 "include/linux/moduleparam.h"
 677struct kparam_string {
 678   unsigned int maxlen ;
 679   char *string ;
 680};
 681#line 67 "include/linux/moduleparam.h"
 682struct kparam_array {
 683   unsigned int max ;
 684   unsigned int elemsize ;
 685   unsigned int *num ;
 686   struct kernel_param_ops  const  *ops ;
 687   void *elem ;
 688};
 689#line 458 "include/linux/moduleparam.h"
 690struct static_key {
 691   atomic_t enabled ;
 692};
 693#line 225 "include/linux/jump_label.h"
 694struct tracepoint;
 695#line 225
 696struct tracepoint;
 697#line 226 "include/linux/jump_label.h"
 698struct tracepoint_func {
 699   void *func ;
 700   void *data ;
 701};
 702#line 29 "include/linux/tracepoint.h"
 703struct tracepoint {
 704   char const   *name ;
 705   struct static_key key ;
 706   void (*regfunc)(void) ;
 707   void (*unregfunc)(void) ;
 708   struct tracepoint_func *funcs ;
 709};
 710#line 86 "include/linux/tracepoint.h"
 711struct kernel_symbol {
 712   unsigned long value ;
 713   char const   *name ;
 714};
 715#line 27 "include/linux/export.h"
 716struct mod_arch_specific {
 717
 718};
 719#line 34 "include/linux/module.h"
 720struct module_param_attrs;
 721#line 34 "include/linux/module.h"
 722struct module_kobject {
 723   struct kobject kobj ;
 724   struct module *mod ;
 725   struct kobject *drivers_dir ;
 726   struct module_param_attrs *mp ;
 727};
 728#line 43 "include/linux/module.h"
 729struct module_attribute {
 730   struct attribute attr ;
 731   ssize_t (*show)(struct module_attribute * , struct module_kobject * , char * ) ;
 732   ssize_t (*store)(struct module_attribute * , struct module_kobject * , char const   * ,
 733                    size_t  ) ;
 734   void (*setup)(struct module * , char const   * ) ;
 735   int (*test)(struct module * ) ;
 736   void (*free)(struct module * ) ;
 737};
 738#line 69
 739struct exception_table_entry;
 740#line 69
 741struct exception_table_entry;
 742#line 198
 743enum module_state {
 744    MODULE_STATE_LIVE = 0,
 745    MODULE_STATE_COMING = 1,
 746    MODULE_STATE_GOING = 2
 747} ;
 748#line 204 "include/linux/module.h"
 749struct module_ref {
 750   unsigned long incs ;
 751   unsigned long decs ;
 752};
 753#line 219
 754struct module_sect_attrs;
 755#line 219
 756struct module_notes_attrs;
 757#line 219
 758struct ftrace_event_call;
 759#line 219 "include/linux/module.h"
 760struct module {
 761   enum module_state state ;
 762   struct list_head list ;
 763   char name[56U] ;
 764   struct module_kobject mkobj ;
 765   struct module_attribute *modinfo_attrs ;
 766   char const   *version ;
 767   char const   *srcversion ;
 768   struct kobject *holders_dir ;
 769   struct kernel_symbol  const  *syms ;
 770   unsigned long const   *crcs ;
 771   unsigned int num_syms ;
 772   struct kernel_param *kp ;
 773   unsigned int num_kp ;
 774   unsigned int num_gpl_syms ;
 775   struct kernel_symbol  const  *gpl_syms ;
 776   unsigned long const   *gpl_crcs ;
 777   struct kernel_symbol  const  *unused_syms ;
 778   unsigned long const   *unused_crcs ;
 779   unsigned int num_unused_syms ;
 780   unsigned int num_unused_gpl_syms ;
 781   struct kernel_symbol  const  *unused_gpl_syms ;
 782   unsigned long const   *unused_gpl_crcs ;
 783   struct kernel_symbol  const  *gpl_future_syms ;
 784   unsigned long const   *gpl_future_crcs ;
 785   unsigned int num_gpl_future_syms ;
 786   unsigned int num_exentries ;
 787   struct exception_table_entry *extable ;
 788   int (*init)(void) ;
 789   void *module_init ;
 790   void *module_core ;
 791   unsigned int init_size ;
 792   unsigned int core_size ;
 793   unsigned int init_text_size ;
 794   unsigned int core_text_size ;
 795   unsigned int init_ro_size ;
 796   unsigned int core_ro_size ;
 797   struct mod_arch_specific arch ;
 798   unsigned int taints ;
 799   unsigned int num_bugs ;
 800   struct list_head bug_list ;
 801   struct bug_entry *bug_table ;
 802   Elf64_Sym *symtab ;
 803   Elf64_Sym *core_symtab ;
 804   unsigned int num_symtab ;
 805   unsigned int core_num_syms ;
 806   char *strtab ;
 807   char *core_strtab ;
 808   struct module_sect_attrs *sect_attrs ;
 809   struct module_notes_attrs *notes_attrs ;
 810   char *args ;
 811   void *percpu ;
 812   unsigned int percpu_size ;
 813   unsigned int num_tracepoints ;
 814   struct tracepoint * const  *tracepoints_ptrs ;
 815   unsigned int num_trace_bprintk_fmt ;
 816   char const   **trace_bprintk_fmt_start ;
 817   struct ftrace_event_call **trace_events ;
 818   unsigned int num_trace_events ;
 819   struct list_head source_list ;
 820   struct list_head target_list ;
 821   struct task_struct *waiter ;
 822   void (*exit)(void) ;
 823   struct module_ref *refptr ;
 824   ctor_fn_t (**ctors)(void) ;
 825   unsigned int num_ctors ;
 826};
 827#line 88 "include/linux/kmemleak.h"
 828struct kmem_cache_cpu {
 829   void **freelist ;
 830   unsigned long tid ;
 831   struct page *page ;
 832   struct page *partial ;
 833   int node ;
 834   unsigned int stat[26U] ;
 835};
 836#line 55 "include/linux/slub_def.h"
 837struct kmem_cache_node {
 838   spinlock_t list_lock ;
 839   unsigned long nr_partial ;
 840   struct list_head partial ;
 841   atomic_long_t nr_slabs ;
 842   atomic_long_t total_objects ;
 843   struct list_head full ;
 844};
 845#line 66 "include/linux/slub_def.h"
 846struct kmem_cache_order_objects {
 847   unsigned long x ;
 848};
 849#line 76 "include/linux/slub_def.h"
 850struct kmem_cache {
 851   struct kmem_cache_cpu *cpu_slab ;
 852   unsigned long flags ;
 853   unsigned long min_partial ;
 854   int size ;
 855   int objsize ;
 856   int offset ;
 857   int cpu_partial ;
 858   struct kmem_cache_order_objects oo ;
 859   struct kmem_cache_order_objects max ;
 860   struct kmem_cache_order_objects min ;
 861   gfp_t allocflags ;
 862   int refcount ;
 863   void (*ctor)(void * ) ;
 864   int inuse ;
 865   int align ;
 866   int reserved ;
 867   char const   *name ;
 868   struct list_head list ;
 869   struct kobject kobj ;
 870   int remote_node_defrag_ratio ;
 871   struct kmem_cache_node *node[1024U] ;
 872};
 873#line 54 "include/linux/delay.h"
 874enum irqreturn {
 875    IRQ_NONE = 0,
 876    IRQ_HANDLED = 1,
 877    IRQ_WAKE_THREAD = 2
 878} ;
 879#line 16 "include/linux/irqreturn.h"
 880typedef enum irqreturn irqreturn_t;
 881#line 41 "include/asm-generic/sections.h"
 882struct exception_table_entry {
 883   unsigned long insn ;
 884   unsigned long fixup ;
 885};
 886#line 189 "include/linux/hardirq.h"
 887struct timerqueue_node {
 888   struct rb_node node ;
 889   ktime_t expires ;
 890};
 891#line 12 "include/linux/timerqueue.h"
 892struct timerqueue_head {
 893   struct rb_root head ;
 894   struct timerqueue_node *next ;
 895};
 896#line 50
 897struct hrtimer_clock_base;
 898#line 50
 899struct hrtimer_clock_base;
 900#line 51
 901struct hrtimer_cpu_base;
 902#line 51
 903struct hrtimer_cpu_base;
 904#line 60
 905enum hrtimer_restart {
 906    HRTIMER_NORESTART = 0,
 907    HRTIMER_RESTART = 1
 908} ;
 909#line 65 "include/linux/timerqueue.h"
 910struct hrtimer {
 911   struct timerqueue_node node ;
 912   ktime_t _softexpires ;
 913   enum hrtimer_restart (*function)(struct hrtimer * ) ;
 914   struct hrtimer_clock_base *base ;
 915   unsigned long state ;
 916   int start_pid ;
 917   void *start_site ;
 918   char start_comm[16U] ;
 919};
 920#line 132 "include/linux/hrtimer.h"
 921struct hrtimer_clock_base {
 922   struct hrtimer_cpu_base *cpu_base ;
 923   int index ;
 924   clockid_t clockid ;
 925   struct timerqueue_head active ;
 926   ktime_t resolution ;
 927   ktime_t (*get_time)(void) ;
 928   ktime_t softirq_time ;
 929   ktime_t offset ;
 930};
 931#line 162 "include/linux/hrtimer.h"
 932struct hrtimer_cpu_base {
 933   raw_spinlock_t lock ;
 934   unsigned long active_bases ;
 935   ktime_t expires_next ;
 936   int hres_active ;
 937   int hang_detected ;
 938   unsigned long nr_events ;
 939   unsigned long nr_retries ;
 940   unsigned long nr_hangs ;
 941   ktime_t max_hang_time ;
 942   struct hrtimer_clock_base clock_base[3U] ;
 943};
 944#line 702 "include/linux/interrupt.h"
 945struct rtc_time {
 946   int tm_sec ;
 947   int tm_min ;
 948   int tm_hour ;
 949   int tm_mday ;
 950   int tm_mon ;
 951   int tm_year ;
 952   int tm_wday ;
 953   int tm_yday ;
 954   int tm_isdst ;
 955};
 956#line 31 "include/linux/rtc.h"
 957struct rtc_wkalrm {
 958   unsigned char enabled ;
 959   unsigned char pending ;
 960   struct rtc_time time ;
 961};
 962#line 115
 963struct klist_node;
 964#line 115
 965struct klist_node;
 966#line 37 "include/linux/klist.h"
 967struct klist_node {
 968   void *n_klist ;
 969   struct list_head n_node ;
 970   struct kref n_ref ;
 971};
 972#line 67
 973struct dma_map_ops;
 974#line 67 "include/linux/klist.h"
 975struct dev_archdata {
 976   void *acpi_handle ;
 977   struct dma_map_ops *dma_ops ;
 978   void *iommu ;
 979};
 980#line 14 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/device.h"
 981struct pdev_archdata {
 982
 983};
 984#line 17
 985struct device_private;
 986#line 17
 987struct device_private;
 988#line 18
 989struct device_driver;
 990#line 18
 991struct device_driver;
 992#line 19
 993struct driver_private;
 994#line 19
 995struct driver_private;
 996#line 20
 997struct class;
 998#line 20
 999struct class;
1000#line 21
1001struct subsys_private;
1002#line 21
1003struct subsys_private;
1004#line 22
1005struct bus_type;
1006#line 22
1007struct bus_type;
1008#line 23
1009struct device_node;
1010#line 23
1011struct device_node;
1012#line 24
1013struct iommu_ops;
1014#line 24
1015struct iommu_ops;
1016#line 25 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/device.h"
1017struct bus_attribute {
1018   struct attribute attr ;
1019   ssize_t (*show)(struct bus_type * , char * ) ;
1020   ssize_t (*store)(struct bus_type * , char const   * , size_t  ) ;
1021};
1022#line 51 "include/linux/device.h"
1023struct device_attribute;
1024#line 51
1025struct driver_attribute;
1026#line 51 "include/linux/device.h"
1027struct bus_type {
1028   char const   *name ;
1029   char const   *dev_name ;
1030   struct device *dev_root ;
1031   struct bus_attribute *bus_attrs ;
1032   struct device_attribute *dev_attrs ;
1033   struct driver_attribute *drv_attrs ;
1034   int (*match)(struct device * , struct device_driver * ) ;
1035   int (*uevent)(struct device * , struct kobj_uevent_env * ) ;
1036   int (*probe)(struct device * ) ;
1037   int (*remove)(struct device * ) ;
1038   void (*shutdown)(struct device * ) ;
1039   int (*suspend)(struct device * , pm_message_t  ) ;
1040   int (*resume)(struct device * ) ;
1041   struct dev_pm_ops  const  *pm ;
1042   struct iommu_ops *iommu_ops ;
1043   struct subsys_private *p ;
1044};
1045#line 125
1046struct device_type;
1047#line 182
1048struct of_device_id;
1049#line 182 "include/linux/device.h"
1050struct device_driver {
1051   char const   *name ;
1052   struct bus_type *bus ;
1053   struct module *owner ;
1054   char const   *mod_name ;
1055   bool suppress_bind_attrs ;
1056   struct of_device_id  const  *of_match_table ;
1057   int (*probe)(struct device * ) ;
1058   int (*remove)(struct device * ) ;
1059   void (*shutdown)(struct device * ) ;
1060   int (*suspend)(struct device * , pm_message_t  ) ;
1061   int (*resume)(struct device * ) ;
1062   struct attribute_group  const  **groups ;
1063   struct dev_pm_ops  const  *pm ;
1064   struct driver_private *p ;
1065};
1066#line 245 "include/linux/device.h"
1067struct driver_attribute {
1068   struct attribute attr ;
1069   ssize_t (*show)(struct device_driver * , char * ) ;
1070   ssize_t (*store)(struct device_driver * , char const   * , size_t  ) ;
1071};
1072#line 299
1073struct class_attribute;
1074#line 299 "include/linux/device.h"
1075struct class {
1076   char const   *name ;
1077   struct module *owner ;
1078   struct class_attribute *class_attrs ;
1079   struct device_attribute *dev_attrs ;
1080   struct bin_attribute *dev_bin_attrs ;
1081   struct kobject *dev_kobj ;
1082   int (*dev_uevent)(struct device * , struct kobj_uevent_env * ) ;
1083   char *(*devnode)(struct device * , umode_t * ) ;
1084   void (*class_release)(struct class * ) ;
1085   void (*dev_release)(struct device * ) ;
1086   int (*suspend)(struct device * , pm_message_t  ) ;
1087   int (*resume)(struct device * ) ;
1088   struct kobj_ns_type_operations  const  *ns_type ;
1089   void const   *(*namespace)(struct device * ) ;
1090   struct dev_pm_ops  const  *pm ;
1091   struct subsys_private *p ;
1092};
1093#line 394 "include/linux/device.h"
1094struct class_attribute {
1095   struct attribute attr ;
1096   ssize_t (*show)(struct class * , struct class_attribute * , char * ) ;
1097   ssize_t (*store)(struct class * , struct class_attribute * , char const   * , size_t  ) ;
1098   void const   *(*namespace)(struct class * , struct class_attribute  const  * ) ;
1099};
1100#line 447 "include/linux/device.h"
1101struct device_type {
1102   char const   *name ;
1103   struct attribute_group  const  **groups ;
1104   int (*uevent)(struct device * , struct kobj_uevent_env * ) ;
1105   char *(*devnode)(struct device * , umode_t * ) ;
1106   void (*release)(struct device * ) ;
1107   struct dev_pm_ops  const  *pm ;
1108};
1109#line 474 "include/linux/device.h"
1110struct device_attribute {
1111   struct attribute attr ;
1112   ssize_t (*show)(struct device * , struct device_attribute * , char * ) ;
1113   ssize_t (*store)(struct device * , struct device_attribute * , char const   * ,
1114                    size_t  ) ;
1115};
1116#line 557 "include/linux/device.h"
1117struct device_dma_parameters {
1118   unsigned int max_segment_size ;
1119   unsigned long segment_boundary_mask ;
1120};
1121#line 567
1122struct dma_coherent_mem;
1123#line 567 "include/linux/device.h"
1124struct device {
1125   struct device *parent ;
1126   struct device_private *p ;
1127   struct kobject kobj ;
1128   char const   *init_name ;
1129   struct device_type  const  *type ;
1130   struct mutex mutex ;
1131   struct bus_type *bus ;
1132   struct device_driver *driver ;
1133   void *platform_data ;
1134   struct dev_pm_info power ;
1135   struct dev_pm_domain *pm_domain ;
1136   int numa_node ;
1137   u64 *dma_mask ;
1138   u64 coherent_dma_mask ;
1139   struct device_dma_parameters *dma_parms ;
1140   struct list_head dma_pools ;
1141   struct dma_coherent_mem *dma_mem ;
1142   struct dev_archdata archdata ;
1143   struct device_node *of_node ;
1144   dev_t devt ;
1145   u32 id ;
1146   spinlock_t devres_lock ;
1147   struct list_head devres_head ;
1148   struct klist_node knode_class ;
1149   struct class *class ;
1150   struct attribute_group  const  **groups ;
1151   void (*release)(struct device * ) ;
1152};
1153#line 681 "include/linux/device.h"
1154struct wakeup_source {
1155   char const   *name ;
1156   struct list_head entry ;
1157   spinlock_t lock ;
1158   struct timer_list timer ;
1159   unsigned long timer_expires ;
1160   ktime_t total_time ;
1161   ktime_t max_time ;
1162   ktime_t last_time ;
1163   unsigned long event_count ;
1164   unsigned long active_count ;
1165   unsigned long relax_count ;
1166   unsigned long hit_count ;
1167   unsigned char active : 1 ;
1168};
1169#line 991
1170struct path;
1171#line 991
1172struct path;
1173#line 992
1174struct inode;
1175#line 992
1176struct inode;
1177#line 993
1178struct dentry;
1179#line 993
1180struct dentry;
1181#line 994 "include/linux/device.h"
1182struct seq_file {
1183   char *buf ;
1184   size_t size ;
1185   size_t from ;
1186   size_t count ;
1187   loff_t index ;
1188   loff_t read_pos ;
1189   u64 version ;
1190   struct mutex lock ;
1191   struct seq_operations  const  *op ;
1192   int poll_event ;
1193   void *private ;
1194};
1195#line 30 "include/linux/seq_file.h"
1196struct seq_operations {
1197   void *(*start)(struct seq_file * , loff_t * ) ;
1198   void (*stop)(struct seq_file * , void * ) ;
1199   void *(*next)(struct seq_file * , void * , loff_t * ) ;
1200   int (*show)(struct seq_file * , void * ) ;
1201};
1202#line 89 "include/linux/kdev_t.h"
1203struct file_operations;
1204#line 89
1205struct file_operations;
1206#line 90 "include/linux/kdev_t.h"
1207struct cdev {
1208   struct kobject kobj ;
1209   struct module *owner ;
1210   struct file_operations  const  *ops ;
1211   struct list_head list ;
1212   dev_t dev ;
1213   unsigned int count ;
1214};
1215#line 33 "include/linux/cdev.h"
1216struct backing_dev_info;
1217#line 41 "include/asm-generic/poll.h"
1218struct block_device;
1219#line 41
1220struct block_device;
1221#line 93 "include/linux/bit_spinlock.h"
1222struct hlist_bl_node;
1223#line 93 "include/linux/bit_spinlock.h"
1224struct hlist_bl_head {
1225   struct hlist_bl_node *first ;
1226};
1227#line 36 "include/linux/list_bl.h"
1228struct hlist_bl_node {
1229   struct hlist_bl_node *next ;
1230   struct hlist_bl_node **pprev ;
1231};
1232#line 114 "include/linux/rculist_bl.h"
1233struct nameidata;
1234#line 114
1235struct nameidata;
1236#line 115
1237struct vfsmount;
1238#line 115
1239struct vfsmount;
1240#line 116 "include/linux/rculist_bl.h"
1241struct qstr {
1242   unsigned int hash ;
1243   unsigned int len ;
1244   unsigned char const   *name ;
1245};
1246#line 72 "include/linux/dcache.h"
1247struct dentry_operations;
1248#line 72
1249struct super_block;
1250#line 72 "include/linux/dcache.h"
1251union __anonunion_d_u_136 {
1252   struct list_head d_child ;
1253   struct rcu_head d_rcu ;
1254};
1255#line 72 "include/linux/dcache.h"
1256struct dentry {
1257   unsigned int d_flags ;
1258   seqcount_t d_seq ;
1259   struct hlist_bl_node d_hash ;
1260   struct dentry *d_parent ;
1261   struct qstr d_name ;
1262   struct inode *d_inode ;
1263   unsigned char d_iname[32U] ;
1264   unsigned int d_count ;
1265   spinlock_t d_lock ;
1266   struct dentry_operations  const  *d_op ;
1267   struct super_block *d_sb ;
1268   unsigned long d_time ;
1269   void *d_fsdata ;
1270   struct list_head d_lru ;
1271   union __anonunion_d_u_136 d_u ;
1272   struct list_head d_subdirs ;
1273   struct list_head d_alias ;
1274};
1275#line 123 "include/linux/dcache.h"
1276struct dentry_operations {
1277   int (*d_revalidate)(struct dentry * , struct nameidata * ) ;
1278   int (*d_hash)(struct dentry  const  * , struct inode  const  * , struct qstr * ) ;
1279   int (*d_compare)(struct dentry  const  * , struct inode  const  * , struct dentry  const  * ,
1280                    struct inode  const  * , unsigned int  , char const   * , struct qstr  const  * ) ;
1281   int (*d_delete)(struct dentry  const  * ) ;
1282   void (*d_release)(struct dentry * ) ;
1283   void (*d_prune)(struct dentry * ) ;
1284   void (*d_iput)(struct dentry * , struct inode * ) ;
1285   char *(*d_dname)(struct dentry * , char * , int  ) ;
1286   struct vfsmount *(*d_automount)(struct path * ) ;
1287   int (*d_manage)(struct dentry * , bool  ) ;
1288};
1289#line 402 "include/linux/dcache.h"
1290struct path {
1291   struct vfsmount *mnt ;
1292   struct dentry *dentry ;
1293};
1294#line 58 "include/linux/radix-tree.h"
1295struct radix_tree_node;
1296#line 58 "include/linux/radix-tree.h"
1297struct radix_tree_root {
1298   unsigned int height ;
1299   gfp_t gfp_mask ;
1300   struct radix_tree_node *rnode ;
1301};
1302#line 377
1303struct prio_tree_node;
1304#line 19 "include/linux/prio_tree.h"
1305struct prio_tree_node {
1306   struct prio_tree_node *left ;
1307   struct prio_tree_node *right ;
1308   struct prio_tree_node *parent ;
1309   unsigned long start ;
1310   unsigned long last ;
1311};
1312#line 27 "include/linux/prio_tree.h"
1313struct prio_tree_root {
1314   struct prio_tree_node *prio_tree_node ;
1315   unsigned short index_bits ;
1316   unsigned short raw ;
1317};
1318#line 111
1319enum pid_type {
1320    PIDTYPE_PID = 0,
1321    PIDTYPE_PGID = 1,
1322    PIDTYPE_SID = 2,
1323    PIDTYPE_MAX = 3
1324} ;
1325#line 118
1326struct pid_namespace;
1327#line 118 "include/linux/prio_tree.h"
1328struct upid {
1329   int nr ;
1330   struct pid_namespace *ns ;
1331   struct hlist_node pid_chain ;
1332};
1333#line 56 "include/linux/pid.h"
1334struct pid {
1335   atomic_t count ;
1336   unsigned int level ;
1337   struct hlist_head tasks[3U] ;
1338   struct rcu_head rcu ;
1339   struct upid numbers[1U] ;
1340};
1341#line 45 "include/linux/semaphore.h"
1342struct fiemap_extent {
1343   __u64 fe_logical ;
1344   __u64 fe_physical ;
1345   __u64 fe_length ;
1346   __u64 fe_reserved64[2U] ;
1347   __u32 fe_flags ;
1348   __u32 fe_reserved[3U] ;
1349};
1350#line 38 "include/linux/fiemap.h"
1351struct shrink_control {
1352   gfp_t gfp_mask ;
1353   unsigned long nr_to_scan ;
1354};
1355#line 14 "include/linux/shrinker.h"
1356struct shrinker {
1357   int (*shrink)(struct shrinker * , struct shrink_control * ) ;
1358   int seeks ;
1359   long batch ;
1360   struct list_head list ;
1361   atomic_long_t nr_in_batch ;
1362};
1363#line 43
1364enum migrate_mode {
1365    MIGRATE_ASYNC = 0,
1366    MIGRATE_SYNC_LIGHT = 1,
1367    MIGRATE_SYNC = 2
1368} ;
1369#line 49
1370struct export_operations;
1371#line 49
1372struct export_operations;
1373#line 51
1374struct iovec;
1375#line 51
1376struct iovec;
1377#line 52
1378struct kiocb;
1379#line 52
1380struct kiocb;
1381#line 53
1382struct pipe_inode_info;
1383#line 53
1384struct pipe_inode_info;
1385#line 54
1386struct poll_table_struct;
1387#line 54
1388struct poll_table_struct;
1389#line 55
1390struct kstatfs;
1391#line 55
1392struct kstatfs;
1393#line 435 "include/linux/fs.h"
1394struct iattr {
1395   unsigned int ia_valid ;
1396   umode_t ia_mode ;
1397   uid_t ia_uid ;
1398   gid_t ia_gid ;
1399   loff_t ia_size ;
1400   struct timespec ia_atime ;
1401   struct timespec ia_mtime ;
1402   struct timespec ia_ctime ;
1403   struct file *ia_file ;
1404};
1405#line 119 "include/linux/quota.h"
1406struct if_dqinfo {
1407   __u64 dqi_bgrace ;
1408   __u64 dqi_igrace ;
1409   __u32 dqi_flags ;
1410   __u32 dqi_valid ;
1411};
1412#line 176 "include/linux/percpu_counter.h"
1413struct fs_disk_quota {
1414   __s8 d_version ;
1415   __s8 d_flags ;
1416   __u16 d_fieldmask ;
1417   __u32 d_id ;
1418   __u64 d_blk_hardlimit ;
1419   __u64 d_blk_softlimit ;
1420   __u64 d_ino_hardlimit ;
1421   __u64 d_ino_softlimit ;
1422   __u64 d_bcount ;
1423   __u64 d_icount ;
1424   __s32 d_itimer ;
1425   __s32 d_btimer ;
1426   __u16 d_iwarns ;
1427   __u16 d_bwarns ;
1428   __s32 d_padding2 ;
1429   __u64 d_rtb_hardlimit ;
1430   __u64 d_rtb_softlimit ;
1431   __u64 d_rtbcount ;
1432   __s32 d_rtbtimer ;
1433   __u16 d_rtbwarns ;
1434   __s16 d_padding3 ;
1435   char d_padding4[8U] ;
1436};
1437#line 75 "include/linux/dqblk_xfs.h"
1438struct fs_qfilestat {
1439   __u64 qfs_ino ;
1440   __u64 qfs_nblks ;
1441   __u32 qfs_nextents ;
1442};
1443#line 150 "include/linux/dqblk_xfs.h"
1444typedef struct fs_qfilestat fs_qfilestat_t;
1445#line 151 "include/linux/dqblk_xfs.h"
1446struct fs_quota_stat {
1447   __s8 qs_version ;
1448   __u16 qs_flags ;
1449   __s8 qs_pad ;
1450   fs_qfilestat_t qs_uquota ;
1451   fs_qfilestat_t qs_gquota ;
1452   __u32 qs_incoredqs ;
1453   __s32 qs_btimelimit ;
1454   __s32 qs_itimelimit ;
1455   __s32 qs_rtbtimelimit ;
1456   __u16 qs_bwarnlimit ;
1457   __u16 qs_iwarnlimit ;
1458};
1459#line 165
1460struct dquot;
1461#line 165
1462struct dquot;
1463#line 185 "include/linux/quota.h"
1464typedef __kernel_uid32_t qid_t;
1465#line 186 "include/linux/quota.h"
1466typedef long long qsize_t;
1467#line 189 "include/linux/quota.h"
1468struct mem_dqblk {
1469   qsize_t dqb_bhardlimit ;
1470   qsize_t dqb_bsoftlimit ;
1471   qsize_t dqb_curspace ;
1472   qsize_t dqb_rsvspace ;
1473   qsize_t dqb_ihardlimit ;
1474   qsize_t dqb_isoftlimit ;
1475   qsize_t dqb_curinodes ;
1476   time_t dqb_btime ;
1477   time_t dqb_itime ;
1478};
1479#line 211
1480struct quota_format_type;
1481#line 211
1482struct quota_format_type;
1483#line 212 "include/linux/quota.h"
1484struct mem_dqinfo {
1485   struct quota_format_type *dqi_format ;
1486   int dqi_fmt_id ;
1487   struct list_head dqi_dirty_list ;
1488   unsigned long dqi_flags ;
1489   unsigned int dqi_bgrace ;
1490   unsigned int dqi_igrace ;
1491   qsize_t dqi_maxblimit ;
1492   qsize_t dqi_maxilimit ;
1493   void *dqi_priv ;
1494};
1495#line 275 "include/linux/quota.h"
1496struct dquot {
1497   struct hlist_node dq_hash ;
1498   struct list_head dq_inuse ;
1499   struct list_head dq_free ;
1500   struct list_head dq_dirty ;
1501   struct mutex dq_lock ;
1502   atomic_t dq_count ;
1503   wait_queue_head_t dq_wait_unused ;
1504   struct super_block *dq_sb ;
1505   unsigned int dq_id ;
1506   loff_t dq_off ;
1507   unsigned long dq_flags ;
1508   short dq_type ;
1509   struct mem_dqblk dq_dqb ;
1510};
1511#line 303 "include/linux/quota.h"
1512struct quota_format_ops {
1513   int (*check_quota_file)(struct super_block * , int  ) ;
1514   int (*read_file_info)(struct super_block * , int  ) ;
1515   int (*write_file_info)(struct super_block * , int  ) ;
1516   int (*free_file_info)(struct super_block * , int  ) ;
1517   int (*read_dqblk)(struct dquot * ) ;
1518   int (*commit_dqblk)(struct dquot * ) ;
1519   int (*release_dqblk)(struct dquot * ) ;
1520};
1521#line 314 "include/linux/quota.h"
1522struct dquot_operations {
1523   int (*write_dquot)(struct dquot * ) ;
1524   struct dquot *(*alloc_dquot)(struct super_block * , int  ) ;
1525   void (*destroy_dquot)(struct dquot * ) ;
1526   int (*acquire_dquot)(struct dquot * ) ;
1527   int (*release_dquot)(struct dquot * ) ;
1528   int (*mark_dirty)(struct dquot * ) ;
1529   int (*write_info)(struct super_block * , int  ) ;
1530   qsize_t *(*get_reserved_space)(struct inode * ) ;
1531};
1532#line 328 "include/linux/quota.h"
1533struct quotactl_ops {
1534   int (*quota_on)(struct super_block * , int  , int  , struct path * ) ;
1535   int (*quota_on_meta)(struct super_block * , int  , int  ) ;
1536   int (*quota_off)(struct super_block * , int  ) ;
1537   int (*quota_sync)(struct super_block * , int  , int  ) ;
1538   int (*get_info)(struct super_block * , int  , struct if_dqinfo * ) ;
1539   int (*set_info)(struct super_block * , int  , struct if_dqinfo * ) ;
1540   int (*get_dqblk)(struct super_block * , int  , qid_t  , struct fs_disk_quota * ) ;
1541   int (*set_dqblk)(struct super_block * , int  , qid_t  , struct fs_disk_quota * ) ;
1542   int (*get_xstate)(struct super_block * , struct fs_quota_stat * ) ;
1543   int (*set_xstate)(struct super_block * , unsigned int  , int  ) ;
1544};
1545#line 344 "include/linux/quota.h"
1546struct quota_format_type {
1547   int qf_fmt_id ;
1548   struct quota_format_ops  const  *qf_ops ;
1549   struct module *qf_owner ;
1550   struct quota_format_type *qf_next ;
1551};
1552#line 390 "include/linux/quota.h"
1553struct quota_info {
1554   unsigned int flags ;
1555   struct mutex dqio_mutex ;
1556   struct mutex dqonoff_mutex ;
1557   struct rw_semaphore dqptr_sem ;
1558   struct inode *files[2U] ;
1559   struct mem_dqinfo info[2U] ;
1560   struct quota_format_ops  const  *ops[2U] ;
1561};
1562#line 421
1563struct address_space;
1564#line 421
1565struct address_space;
1566#line 422
1567struct writeback_control;
1568#line 422
1569struct writeback_control;
1570#line 585 "include/linux/fs.h"
1571union __anonunion_arg_139 {
1572   char *buf ;
1573   void *data ;
1574};
1575#line 585 "include/linux/fs.h"
1576struct __anonstruct_read_descriptor_t_138 {
1577   size_t written ;
1578   size_t count ;
1579   union __anonunion_arg_139 arg ;
1580   int error ;
1581};
1582#line 585 "include/linux/fs.h"
1583typedef struct __anonstruct_read_descriptor_t_138 read_descriptor_t;
1584#line 588 "include/linux/fs.h"
1585struct address_space_operations {
1586   int (*writepage)(struct page * , struct writeback_control * ) ;
1587   int (*readpage)(struct file * , struct page * ) ;
1588   int (*writepages)(struct address_space * , struct writeback_control * ) ;
1589   int (*set_page_dirty)(struct page * ) ;
1590   int (*readpages)(struct file * , struct address_space * , struct list_head * ,
1591                    unsigned int  ) ;
1592   int (*write_begin)(struct file * , struct address_space * , loff_t  , unsigned int  ,
1593                      unsigned int  , struct page ** , void ** ) ;
1594   int (*write_end)(struct file * , struct address_space * , loff_t  , unsigned int  ,
1595                    unsigned int  , struct page * , void * ) ;
1596   sector_t (*bmap)(struct address_space * , sector_t  ) ;
1597   void (*invalidatepage)(struct page * , unsigned long  ) ;
1598   int (*releasepage)(struct page * , gfp_t  ) ;
1599   void (*freepage)(struct page * ) ;
1600   ssize_t (*direct_IO)(int  , struct kiocb * , struct iovec  const  * , loff_t  ,
1601                        unsigned long  ) ;
1602   int (*get_xip_mem)(struct address_space * , unsigned long  , int  , void ** , unsigned long * ) ;
1603   int (*migratepage)(struct address_space * , struct page * , struct page * , enum migrate_mode  ) ;
1604   int (*launder_page)(struct page * ) ;
1605   int (*is_partially_uptodate)(struct page * , read_descriptor_t * , unsigned long  ) ;
1606   int (*error_remove_page)(struct address_space * , struct page * ) ;
1607};
1608#line 642 "include/linux/fs.h"
1609struct address_space {
1610   struct inode *host ;
1611   struct radix_tree_root page_tree ;
1612   spinlock_t tree_lock ;
1613   unsigned int i_mmap_writable ;
1614   struct prio_tree_root i_mmap ;
1615   struct list_head i_mmap_nonlinear ;
1616   struct mutex i_mmap_mutex ;
1617   unsigned long nrpages ;
1618   unsigned long writeback_index ;
1619   struct address_space_operations  const  *a_ops ;
1620   unsigned long flags ;
1621   struct backing_dev_info *backing_dev_info ;
1622   spinlock_t private_lock ;
1623   struct list_head private_list ;
1624   struct address_space *assoc_mapping ;
1625};
1626#line 664
1627struct request_queue;
1628#line 664
1629struct request_queue;
1630#line 665
1631struct hd_struct;
1632#line 665
1633struct gendisk;
1634#line 665 "include/linux/fs.h"
1635struct block_device {
1636   dev_t bd_dev ;
1637   int bd_openers ;
1638   struct inode *bd_inode ;
1639   struct super_block *bd_super ;
1640   struct mutex bd_mutex ;
1641   struct list_head bd_inodes ;
1642   void *bd_claiming ;
1643   void *bd_holder ;
1644   int bd_holders ;
1645   bool bd_write_holder ;
1646   struct list_head bd_holder_disks ;
1647   struct block_device *bd_contains ;
1648   unsigned int bd_block_size ;
1649   struct hd_struct *bd_part ;
1650   unsigned int bd_part_count ;
1651   int bd_invalidated ;
1652   struct gendisk *bd_disk ;
1653   struct request_queue *bd_queue ;
1654   struct list_head bd_list ;
1655   unsigned long bd_private ;
1656   int bd_fsfreeze_count ;
1657   struct mutex bd_fsfreeze_mutex ;
1658};
1659#line 737
1660struct posix_acl;
1661#line 737
1662struct posix_acl;
1663#line 738
1664struct inode_operations;
1665#line 738 "include/linux/fs.h"
1666union __anonunion_ldv_18371_140 {
1667   unsigned int const   i_nlink ;
1668   unsigned int __i_nlink ;
1669};
1670#line 738 "include/linux/fs.h"
1671union __anonunion_ldv_18390_141 {
1672   struct list_head i_dentry ;
1673   struct rcu_head i_rcu ;
1674};
1675#line 738
1676struct file_lock;
1677#line 738 "include/linux/fs.h"
1678union __anonunion_ldv_18406_142 {
1679   struct pipe_inode_info *i_pipe ;
1680   struct block_device *i_bdev ;
1681   struct cdev *i_cdev ;
1682};
1683#line 738 "include/linux/fs.h"
1684struct inode {
1685   umode_t i_mode ;
1686   unsigned short i_opflags ;
1687   uid_t i_uid ;
1688   gid_t i_gid ;
1689   unsigned int i_flags ;
1690   struct posix_acl *i_acl ;
1691   struct posix_acl *i_default_acl ;
1692   struct inode_operations  const  *i_op ;
1693   struct super_block *i_sb ;
1694   struct address_space *i_mapping ;
1695   void *i_security ;
1696   unsigned long i_ino ;
1697   union __anonunion_ldv_18371_140 ldv_18371 ;
1698   dev_t i_rdev ;
1699   struct timespec i_atime ;
1700   struct timespec i_mtime ;
1701   struct timespec i_ctime ;
1702   spinlock_t i_lock ;
1703   unsigned short i_bytes ;
1704   blkcnt_t i_blocks ;
1705   loff_t i_size ;
1706   unsigned long i_state ;
1707   struct mutex i_mutex ;
1708   unsigned long dirtied_when ;
1709   struct hlist_node i_hash ;
1710   struct list_head i_wb_list ;
1711   struct list_head i_lru ;
1712   struct list_head i_sb_list ;
1713   union __anonunion_ldv_18390_141 ldv_18390 ;
1714   atomic_t i_count ;
1715   unsigned int i_blkbits ;
1716   u64 i_version ;
1717   atomic_t i_dio_count ;
1718   atomic_t i_writecount ;
1719   struct file_operations  const  *i_fop ;
1720   struct file_lock *i_flock ;
1721   struct address_space i_data ;
1722   struct dquot *i_dquot[2U] ;
1723   struct list_head i_devices ;
1724   union __anonunion_ldv_18406_142 ldv_18406 ;
1725   __u32 i_generation ;
1726   __u32 i_fsnotify_mask ;
1727   struct hlist_head i_fsnotify_marks ;
1728   atomic_t i_readcount ;
1729   void *i_private ;
1730};
1731#line 941 "include/linux/fs.h"
1732struct fown_struct {
1733   rwlock_t lock ;
1734   struct pid *pid ;
1735   enum pid_type pid_type ;
1736   uid_t uid ;
1737   uid_t euid ;
1738   int signum ;
1739};
1740#line 949 "include/linux/fs.h"
1741struct file_ra_state {
1742   unsigned long start ;
1743   unsigned int size ;
1744   unsigned int async_size ;
1745   unsigned int ra_pages ;
1746   unsigned int mmap_miss ;
1747   loff_t prev_pos ;
1748};
1749#line 972 "include/linux/fs.h"
1750union __anonunion_f_u_143 {
1751   struct list_head fu_list ;
1752   struct rcu_head fu_rcuhead ;
1753};
1754#line 972 "include/linux/fs.h"
1755struct file {
1756   union __anonunion_f_u_143 f_u ;
1757   struct path f_path ;
1758   struct file_operations  const  *f_op ;
1759   spinlock_t f_lock ;
1760   int f_sb_list_cpu ;
1761   atomic_long_t f_count ;
1762   unsigned int f_flags ;
1763   fmode_t f_mode ;
1764   loff_t f_pos ;
1765   struct fown_struct f_owner ;
1766   struct cred  const  *f_cred ;
1767   struct file_ra_state f_ra ;
1768   u64 f_version ;
1769   void *f_security ;
1770   void *private_data ;
1771   struct list_head f_ep_links ;
1772   struct list_head f_tfile_llink ;
1773   struct address_space *f_mapping ;
1774   unsigned long f_mnt_write_state ;
1775};
1776#line 1111
1777struct files_struct;
1778#line 1111 "include/linux/fs.h"
1779typedef struct files_struct *fl_owner_t;
1780#line 1112 "include/linux/fs.h"
1781struct file_lock_operations {
1782   void (*fl_copy_lock)(struct file_lock * , struct file_lock * ) ;
1783   void (*fl_release_private)(struct file_lock * ) ;
1784};
1785#line 1117 "include/linux/fs.h"
1786struct lock_manager_operations {
1787   int (*lm_compare_owner)(struct file_lock * , struct file_lock * ) ;
1788   void (*lm_notify)(struct file_lock * ) ;
1789   int (*lm_grant)(struct file_lock * , struct file_lock * , int  ) ;
1790   void (*lm_release_private)(struct file_lock * ) ;
1791   void (*lm_break)(struct file_lock * ) ;
1792   int (*lm_change)(struct file_lock ** , int  ) ;
1793};
1794#line 1134
1795struct nlm_lockowner;
1796#line 1134
1797struct nlm_lockowner;
1798#line 1135 "include/linux/fs.h"
1799struct nfs_lock_info {
1800   u32 state ;
1801   struct nlm_lockowner *owner ;
1802   struct list_head list ;
1803};
1804#line 14 "include/linux/nfs_fs_i.h"
1805struct nfs4_lock_state;
1806#line 14
1807struct nfs4_lock_state;
1808#line 15 "include/linux/nfs_fs_i.h"
1809struct nfs4_lock_info {
1810   struct nfs4_lock_state *owner ;
1811};
1812#line 19
1813struct fasync_struct;
1814#line 19 "include/linux/nfs_fs_i.h"
1815struct __anonstruct_afs_145 {
1816   struct list_head link ;
1817   int state ;
1818};
1819#line 19 "include/linux/nfs_fs_i.h"
1820union __anonunion_fl_u_144 {
1821   struct nfs_lock_info nfs_fl ;
1822   struct nfs4_lock_info nfs4_fl ;
1823   struct __anonstruct_afs_145 afs ;
1824};
1825#line 19 "include/linux/nfs_fs_i.h"
1826struct file_lock {
1827   struct file_lock *fl_next ;
1828   struct list_head fl_link ;
1829   struct list_head fl_block ;
1830   fl_owner_t fl_owner ;
1831   unsigned int fl_flags ;
1832   unsigned char fl_type ;
1833   unsigned int fl_pid ;
1834   struct pid *fl_nspid ;
1835   wait_queue_head_t fl_wait ;
1836   struct file *fl_file ;
1837   loff_t fl_start ;
1838   loff_t fl_end ;
1839   struct fasync_struct *fl_fasync ;
1840   unsigned long fl_break_time ;
1841   unsigned long fl_downgrade_time ;
1842   struct file_lock_operations  const  *fl_ops ;
1843   struct lock_manager_operations  const  *fl_lmops ;
1844   union __anonunion_fl_u_144 fl_u ;
1845};
1846#line 1221 "include/linux/fs.h"
1847struct fasync_struct {
1848   spinlock_t fa_lock ;
1849   int magic ;
1850   int fa_fd ;
1851   struct fasync_struct *fa_next ;
1852   struct file *fa_file ;
1853   struct rcu_head fa_rcu ;
1854};
1855#line 1417
1856struct file_system_type;
1857#line 1417
1858struct super_operations;
1859#line 1417
1860struct xattr_handler;
1861#line 1417
1862struct mtd_info;
1863#line 1417 "include/linux/fs.h"
1864struct super_block {
1865   struct list_head s_list ;
1866   dev_t s_dev ;
1867   unsigned char s_dirt ;
1868   unsigned char s_blocksize_bits ;
1869   unsigned long s_blocksize ;
1870   loff_t s_maxbytes ;
1871   struct file_system_type *s_type ;
1872   struct super_operations  const  *s_op ;
1873   struct dquot_operations  const  *dq_op ;
1874   struct quotactl_ops  const  *s_qcop ;
1875   struct export_operations  const  *s_export_op ;
1876   unsigned long s_flags ;
1877   unsigned long s_magic ;
1878   struct dentry *s_root ;
1879   struct rw_semaphore s_umount ;
1880   struct mutex s_lock ;
1881   int s_count ;
1882   atomic_t s_active ;
1883   void *s_security ;
1884   struct xattr_handler  const  **s_xattr ;
1885   struct list_head s_inodes ;
1886   struct hlist_bl_head s_anon ;
1887   struct list_head *s_files ;
1888   struct list_head s_mounts ;
1889   struct list_head s_dentry_lru ;
1890   int s_nr_dentry_unused ;
1891   spinlock_t s_inode_lru_lock ;
1892   struct list_head s_inode_lru ;
1893   int s_nr_inodes_unused ;
1894   struct block_device *s_bdev ;
1895   struct backing_dev_info *s_bdi ;
1896   struct mtd_info *s_mtd ;
1897   struct hlist_node s_instances ;
1898   struct quota_info s_dquot ;
1899   int s_frozen ;
1900   wait_queue_head_t s_wait_unfrozen ;
1901   char s_id[32U] ;
1902   u8 s_uuid[16U] ;
1903   void *s_fs_info ;
1904   unsigned int s_max_links ;
1905   fmode_t s_mode ;
1906   u32 s_time_gran ;
1907   struct mutex s_vfs_rename_mutex ;
1908   char *s_subtype ;
1909   char *s_options ;
1910   struct dentry_operations  const  *s_d_op ;
1911   int cleancache_poolid ;
1912   struct shrinker s_shrink ;
1913   atomic_long_t s_remove_count ;
1914   int s_readonly_remount ;
1915};
1916#line 1563 "include/linux/fs.h"
1917struct fiemap_extent_info {
1918   unsigned int fi_flags ;
1919   unsigned int fi_extents_mapped ;
1920   unsigned int fi_extents_max ;
1921   struct fiemap_extent *fi_extents_start ;
1922};
1923#line 1602 "include/linux/fs.h"
1924struct file_operations {
1925   struct module *owner ;
1926   loff_t (*llseek)(struct file * , loff_t  , int  ) ;
1927   ssize_t (*read)(struct file * , char * , size_t  , loff_t * ) ;
1928   ssize_t (*write)(struct file * , char const   * , size_t  , loff_t * ) ;
1929   ssize_t (*aio_read)(struct kiocb * , struct iovec  const  * , unsigned long  ,
1930                       loff_t  ) ;
1931   ssize_t (*aio_write)(struct kiocb * , struct iovec  const  * , unsigned long  ,
1932                        loff_t  ) ;
1933   int (*readdir)(struct file * , void * , int (*)(void * , char const   * , int  ,
1934                                                   loff_t  , u64  , unsigned int  ) ) ;
1935   unsigned int (*poll)(struct file * , struct poll_table_struct * ) ;
1936   long (*unlocked_ioctl)(struct file * , unsigned int  , unsigned long  ) ;
1937   long (*compat_ioctl)(struct file * , unsigned int  , unsigned long  ) ;
1938   int (*mmap)(struct file * , struct vm_area_struct * ) ;
1939   int (*open)(struct inode * , struct file * ) ;
1940   int (*flush)(struct file * , fl_owner_t  ) ;
1941   int (*release)(struct inode * , struct file * ) ;
1942   int (*fsync)(struct file * , loff_t  , loff_t  , int  ) ;
1943   int (*aio_fsync)(struct kiocb * , int  ) ;
1944   int (*fasync)(int  , struct file * , int  ) ;
1945   int (*lock)(struct file * , int  , struct file_lock * ) ;
1946   ssize_t (*sendpage)(struct file * , struct page * , int  , size_t  , loff_t * ,
1947                       int  ) ;
1948   unsigned long (*get_unmapped_area)(struct file * , unsigned long  , unsigned long  ,
1949                                      unsigned long  , unsigned long  ) ;
1950   int (*check_flags)(int  ) ;
1951   int (*flock)(struct file * , int  , struct file_lock * ) ;
1952   ssize_t (*splice_write)(struct pipe_inode_info * , struct file * , loff_t * , size_t  ,
1953                           unsigned int  ) ;
1954   ssize_t (*splice_read)(struct file * , loff_t * , struct pipe_inode_info * , size_t  ,
1955                          unsigned int  ) ;
1956   int (*setlease)(struct file * , long  , struct file_lock ** ) ;
1957   long (*fallocate)(struct file * , int  , loff_t  , loff_t  ) ;
1958};
1959#line 1637 "include/linux/fs.h"
1960struct inode_operations {
1961   struct dentry *(*lookup)(struct inode * , struct dentry * , struct nameidata * ) ;
1962   void *(*follow_link)(struct dentry * , struct nameidata * ) ;
1963   int (*permission)(struct inode * , int  ) ;
1964   struct posix_acl *(*get_acl)(struct inode * , int  ) ;
1965   int (*readlink)(struct dentry * , char * , int  ) ;
1966   void (*put_link)(struct dentry * , struct nameidata * , void * ) ;
1967   int (*create)(struct inode * , struct dentry * , umode_t  , struct nameidata * ) ;
1968   int (*link)(struct dentry * , struct inode * , struct dentry * ) ;
1969   int (*unlink)(struct inode * , struct dentry * ) ;
1970   int (*symlink)(struct inode * , struct dentry * , char const   * ) ;
1971   int (*mkdir)(struct inode * , struct dentry * , umode_t  ) ;
1972   int (*rmdir)(struct inode * , struct dentry * ) ;
1973   int (*mknod)(struct inode * , struct dentry * , umode_t  , dev_t  ) ;
1974   int (*rename)(struct inode * , struct dentry * , struct inode * , struct dentry * ) ;
1975   void (*truncate)(struct inode * ) ;
1976   int (*setattr)(struct dentry * , struct iattr * ) ;
1977   int (*getattr)(struct vfsmount * , struct dentry * , struct kstat * ) ;
1978   int (*setxattr)(struct dentry * , char const   * , void const   * , size_t  , int  ) ;
1979   ssize_t (*getxattr)(struct dentry * , char const   * , void * , size_t  ) ;
1980   ssize_t (*listxattr)(struct dentry * , char * , size_t  ) ;
1981   int (*removexattr)(struct dentry * , char const   * ) ;
1982   void (*truncate_range)(struct inode * , loff_t  , loff_t  ) ;
1983   int (*fiemap)(struct inode * , struct fiemap_extent_info * , u64  , u64  ) ;
1984};
1985#line 1682 "include/linux/fs.h"
1986struct super_operations {
1987   struct inode *(*alloc_inode)(struct super_block * ) ;
1988   void (*destroy_inode)(struct inode * ) ;
1989   void (*dirty_inode)(struct inode * , int  ) ;
1990   int (*write_inode)(struct inode * , struct writeback_control * ) ;
1991   int (*drop_inode)(struct inode * ) ;
1992   void (*evict_inode)(struct inode * ) ;
1993   void (*put_super)(struct super_block * ) ;
1994   void (*write_super)(struct super_block * ) ;
1995   int (*sync_fs)(struct super_block * , int  ) ;
1996   int (*freeze_fs)(struct super_block * ) ;
1997   int (*unfreeze_fs)(struct super_block * ) ;
1998   int (*statfs)(struct dentry * , struct kstatfs * ) ;
1999   int (*remount_fs)(struct super_block * , int * , char * ) ;
2000   void (*umount_begin)(struct super_block * ) ;
2001   int (*show_options)(struct seq_file * , struct dentry * ) ;
2002   int (*show_devname)(struct seq_file * , struct dentry * ) ;
2003   int (*show_path)(struct seq_file * , struct dentry * ) ;
2004   int (*show_stats)(struct seq_file * , struct dentry * ) ;
2005   ssize_t (*quota_read)(struct super_block * , int  , char * , size_t  , loff_t  ) ;
2006   ssize_t (*quota_write)(struct super_block * , int  , char const   * , size_t  ,
2007                          loff_t  ) ;
2008   int (*bdev_try_to_free_page)(struct super_block * , struct page * , gfp_t  ) ;
2009   int (*nr_cached_objects)(struct super_block * ) ;
2010   void (*free_cached_objects)(struct super_block * , int  ) ;
2011};
2012#line 1834 "include/linux/fs.h"
2013struct file_system_type {
2014   char const   *name ;
2015   int fs_flags ;
2016   struct dentry *(*mount)(struct file_system_type * , int  , char const   * , void * ) ;
2017   void (*kill_sb)(struct super_block * ) ;
2018   struct module *owner ;
2019   struct file_system_type *next ;
2020   struct hlist_head fs_supers ;
2021   struct lock_class_key s_lock_key ;
2022   struct lock_class_key s_umount_key ;
2023   struct lock_class_key s_vfs_rename_key ;
2024   struct lock_class_key i_lock_key ;
2025   struct lock_class_key i_mutex_key ;
2026   struct lock_class_key i_mutex_dir_key ;
2027};
2028#line 34 "include/linux/poll.h"
2029struct poll_table_struct {
2030   void (*_qproc)(struct file * , wait_queue_head_t * , struct poll_table_struct * ) ;
2031   unsigned long _key ;
2032};
2033#line 126 "include/linux/rtc.h"
2034struct rtc_class_ops {
2035   int (*open)(struct device * ) ;
2036   void (*release)(struct device * ) ;
2037   int (*ioctl)(struct device * , unsigned int  , unsigned long  ) ;
2038   int (*read_time)(struct device * , struct rtc_time * ) ;
2039   int (*set_time)(struct device * , struct rtc_time * ) ;
2040   int (*read_alarm)(struct device * , struct rtc_wkalrm * ) ;
2041   int (*set_alarm)(struct device * , struct rtc_wkalrm * ) ;
2042   int (*proc)(struct device * , struct seq_file * ) ;
2043   int (*set_mmss)(struct device * , unsigned long  ) ;
2044   int (*read_callback)(struct device * , int  ) ;
2045   int (*alarm_irq_enable)(struct device * , unsigned int  ) ;
2046};
2047#line 156 "include/linux/rtc.h"
2048struct rtc_task {
2049   void (*func)(void * ) ;
2050   void *private_data ;
2051};
2052#line 162 "include/linux/rtc.h"
2053struct rtc_timer {
2054   struct rtc_task task ;
2055   struct timerqueue_node node ;
2056   ktime_t period ;
2057   int enabled ;
2058};
2059#line 170 "include/linux/rtc.h"
2060struct rtc_device {
2061   struct device dev ;
2062   struct module *owner ;
2063   int id ;
2064   char name[20U] ;
2065   struct rtc_class_ops  const  *ops ;
2066   struct mutex ops_lock ;
2067   struct cdev char_dev ;
2068   unsigned long flags ;
2069   unsigned long irq_data ;
2070   spinlock_t irq_lock ;
2071   wait_queue_head_t irq_queue ;
2072   struct fasync_struct *async_queue ;
2073   struct rtc_task *irq_task ;
2074   spinlock_t irq_task_lock ;
2075   int irq_freq ;
2076   int max_user_freq ;
2077   struct timerqueue_head timerqueue ;
2078   struct rtc_timer aie_timer ;
2079   struct rtc_timer uie_rtctimer ;
2080   struct hrtimer pie_timer ;
2081   int pie_enabled ;
2082   struct work_struct irqwork ;
2083   int uie_unsupported ;
2084   struct work_struct uie_task ;
2085   struct timer_list uie_timer ;
2086   unsigned int oldsecs ;
2087   unsigned char uie_irq_active : 1 ;
2088   unsigned char stop_uie_polling : 1 ;
2089   unsigned char uie_task_active : 1 ;
2090   unsigned char uie_timer_active : 1 ;
2091};
2092#line 12 "include/linux/mod_devicetable.h"
2093typedef unsigned long kernel_ulong_t;
2094#line 215 "include/linux/mod_devicetable.h"
2095struct of_device_id {
2096   char name[32U] ;
2097   char type[32U] ;
2098   char compatible[128U] ;
2099   void *data ;
2100};
2101#line 492 "include/linux/mod_devicetable.h"
2102struct platform_device_id {
2103   char name[20U] ;
2104   kernel_ulong_t driver_data ;
2105};
2106#line 584
2107struct mfd_cell;
2108#line 584
2109struct mfd_cell;
2110#line 585 "include/linux/mod_devicetable.h"
2111struct platform_device {
2112   char const   *name ;
2113   int id ;
2114   struct device dev ;
2115   u32 num_resources ;
2116   struct resource *resource ;
2117   struct platform_device_id  const  *id_entry ;
2118   struct mfd_cell *mfd_cell ;
2119   struct pdev_archdata archdata ;
2120};
2121#line 69 "include/linux/io.h"
2122struct rtc_plat_data {
2123   struct rtc_device *rtc ;
2124   void *ioaddr ;
2125   unsigned long last_jiffies ;
2126   int irq ;
2127   unsigned int irqen ;
2128   int alrm_sec ;
2129   int alrm_min ;
2130   int alrm_hour ;
2131   int alrm_mday ;
2132   spinlock_t lock ;
2133};
2134#line 1 "<compiler builtins>"
2135long __builtin_expect(long  , long  ) ;
2136#line 2 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2639/dscv_tempdir/dscv/ri/43_1a/drivers/rtc/rtc-ds1553.c.p"
2137void ldv_spin_lock(void) ;
2138#line 3
2139void ldv_spin_unlock(void) ;
2140#line 4
2141int ldv_spin_trylock(void) ;
2142#line 27 "include/linux/err.h"
2143__inline static long PTR_ERR(void const   *ptr ) 
2144{ 
2145
2146  {
2147#line 29
2148  return ((long )ptr);
2149}
2150}
2151#line 32 "include/linux/err.h"
2152__inline static long IS_ERR(void const   *ptr ) 
2153{ long tmp ;
2154  unsigned long __cil_tmp3 ;
2155  int __cil_tmp4 ;
2156  long __cil_tmp5 ;
2157
2158  {
2159  {
2160#line 34
2161  __cil_tmp3 = (unsigned long )ptr;
2162#line 34
2163  __cil_tmp4 = __cil_tmp3 > 0xfffffffffffff000UL;
2164#line 34
2165  __cil_tmp5 = (long )__cil_tmp4;
2166#line 34
2167  tmp = __builtin_expect(__cil_tmp5, 0L);
2168  }
2169#line 34
2170  return (tmp);
2171}
2172}
2173#line 93 "include/linux/spinlock.h"
2174extern void __raw_spin_lock_init(raw_spinlock_t * , char const   * , struct lock_class_key * ) ;
2175#line 22 "include/linux/spinlock_api_smp.h"
2176extern void _raw_spin_lock(raw_spinlock_t * ) ;
2177#line 39
2178extern void _raw_spin_unlock(raw_spinlock_t * ) ;
2179#line 43
2180extern void _raw_spin_unlock_irqrestore(raw_spinlock_t * , unsigned long  ) ;
2181#line 272 "include/linux/spinlock.h"
2182__inline static raw_spinlock_t *spinlock_check(spinlock_t *lock ) 
2183{ 
2184
2185  {
2186#line 274
2187  return ((struct raw_spinlock *)lock);
2188}
2189}
2190#line 283 "include/linux/spinlock.h"
2191__inline static void ldv_spin_lock_1(spinlock_t *lock ) 
2192{ struct raw_spinlock *__cil_tmp2 ;
2193
2194  {
2195  {
2196#line 285
2197  __cil_tmp2 = (struct raw_spinlock *)lock;
2198#line 285
2199  _raw_spin_lock(__cil_tmp2);
2200  }
2201#line 286
2202  return;
2203}
2204}
2205#line 283
2206__inline static void spin_lock(spinlock_t *lock ) ;
2207#line 323 "include/linux/spinlock.h"
2208__inline static void ldv_spin_unlock_5(spinlock_t *lock ) 
2209{ struct raw_spinlock *__cil_tmp2 ;
2210
2211  {
2212  {
2213#line 325
2214  __cil_tmp2 = (struct raw_spinlock *)lock;
2215#line 325
2216  _raw_spin_unlock(__cil_tmp2);
2217  }
2218#line 326
2219  return;
2220}
2221}
2222#line 323
2223__inline static void spin_unlock(spinlock_t *lock ) ;
2224#line 350 "include/linux/spinlock.h"
2225__inline static void ldv_spin_unlock_irqrestore_8(spinlock_t *lock , unsigned long flags ) 
2226{ struct raw_spinlock *__cil_tmp5 ;
2227
2228  {
2229  {
2230#line 352
2231  __cil_tmp5 = (struct raw_spinlock *)lock;
2232#line 352
2233  _raw_spin_unlock_irqrestore(__cil_tmp5, flags);
2234  }
2235#line 353
2236  return;
2237}
2238}
2239#line 350
2240__inline static void spin_unlock_irqrestore(spinlock_t *lock , unsigned long flags ) ;
2241#line 138 "include/linux/ioport.h"
2242extern struct resource iomem_resource ;
2243#line 208
2244extern struct resource *__devm_request_region(struct device * , struct resource * ,
2245                                              resource_size_t  , resource_size_t  ,
2246                                              char const   * ) ;
2247#line 82 "include/linux/jiffies.h"
2248extern unsigned long volatile   jiffies ;
2249#line 53 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/io.h"
2250__inline static unsigned char readb(void const volatile   *addr ) 
2251{ unsigned char ret ;
2252  unsigned char volatile   *__cil_tmp3 ;
2253
2254  {
2255#line 53
2256  __cil_tmp3 = (unsigned char volatile   *)addr;
2257#line 53
2258  __asm__  volatile   ("movb %1,%0": "=q" (ret): "m" (*__cil_tmp3): "memory");
2259#line 53
2260  return (ret);
2261}
2262}
2263#line 61 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/io.h"
2264__inline static void writeb(unsigned char val , void volatile   *addr ) 
2265{ unsigned char volatile   *__cil_tmp3 ;
2266
2267  {
2268#line 61
2269  __cil_tmp3 = (unsigned char volatile   *)addr;
2270#line 61
2271  __asm__  volatile   ("movb %0,%1": : "q" (val), "m" (*__cil_tmp3): "memory");
2272#line 62
2273  return;
2274}
2275}
2276#line 140 "include/linux/sysfs.h"
2277extern int sysfs_create_bin_file(struct kobject * , struct bin_attribute  const  * ) ;
2278#line 26 "include/linux/export.h"
2279extern struct module __this_module ;
2280#line 220 "include/linux/slub_def.h"
2281extern void *kmem_cache_alloc(struct kmem_cache * , gfp_t  ) ;
2282#line 223
2283void *ldv_kmem_cache_alloc_16(struct kmem_cache *ldv_func_arg1 , gfp_t ldv_func_arg2 ) ;
2284#line 11 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2639/dscv_tempdir/dscv/ri/43_1a/drivers/rtc/rtc-ds1553.c.p"
2285void ldv_check_alloc_flags(gfp_t flags ) ;
2286#line 12
2287void ldv_check_alloc_nonatomic(void) ;
2288#line 14
2289struct page *ldv_check_alloc_flags_and_return_some_page(gfp_t flags ) ;
2290#line 6 "include/linux/bcd.h"
2291extern unsigned int bcd2bin(unsigned char  ) ;
2292#line 7
2293extern unsigned char bin2bcd(unsigned int  ) ;
2294#line 46 "include/linux/delay.h"
2295extern void msleep(unsigned int  ) ;
2296#line 190 "include/linux/interrupt.h"
2297extern int devm_request_threaded_irq(struct device * , unsigned int  , irqreturn_t (*)(int  ,
2298                                                                                       void * ) ,
2299                                     irqreturn_t (*)(int  , void * ) , unsigned long  ,
2300                                     char const   * , void * ) ;
2301#line 196 "include/linux/interrupt.h"
2302__inline static int devm_request_irq(struct device *dev , unsigned int irq , irqreturn_t (*handler)(int  ,
2303                                                                                                    void * ) ,
2304                                     unsigned long irqflags , char const   *devname ,
2305                                     void *dev_id ) 
2306{ int tmp ;
2307  irqreturn_t (*__cil_tmp8)(int  , void * ) ;
2308
2309  {
2310  {
2311#line 199
2312  __cil_tmp8 = (irqreturn_t (*)(int  , void * ))0;
2313#line 199
2314  tmp = devm_request_threaded_irq(dev, irq, handler, __cil_tmp8, irqflags, devname,
2315                                  dev_id);
2316  }
2317#line 199
2318  return (tmp);
2319}
2320}
2321#line 110 "include/linux/rtc.h"
2322extern int rtc_valid_tm(struct rtc_time * ) ;
2323#line 112
2324extern void rtc_time_to_tm(unsigned long  , struct rtc_time * ) ;
2325#line 553 "include/linux/device.h"
2326extern void *devm_kzalloc(struct device * , size_t  , gfp_t  ) ;
2327#line 792
2328extern void *dev_get_drvdata(struct device  const  * ) ;
2329#line 793
2330extern int dev_set_drvdata(struct device * , void * ) ;
2331#line 892
2332extern int dev_err(struct device  const  * , char const   *  , ...) ;
2333#line 894
2334extern int dev_warn(struct device  const  * , char const   *  , ...) ;
2335#line 221 "include/linux/rtc.h"
2336extern struct rtc_device *rtc_device_register(char const   * , struct device * , struct rtc_class_ops  const  * ,
2337                                              struct module * ) ;
2338#line 225
2339extern void rtc_device_unregister(struct rtc_device * ) ;
2340#line 237
2341extern void rtc_update_irq(struct rtc_device * , unsigned long  , unsigned long  ) ;
2342#line 46 "include/linux/platform_device.h"
2343extern struct resource *platform_get_resource(struct platform_device * , unsigned int  ,
2344                                              unsigned int  ) ;
2345#line 47
2346extern int platform_get_irq(struct platform_device * , unsigned int  ) ;
2347#line 183 "include/linux/platform_device.h"
2348__inline static void *platform_get_drvdata(struct platform_device  const  *pdev ) 
2349{ void *tmp ;
2350  unsigned long __cil_tmp3 ;
2351  unsigned long __cil_tmp4 ;
2352  struct device  const  *__cil_tmp5 ;
2353
2354  {
2355  {
2356#line 185
2357  __cil_tmp3 = (unsigned long )pdev;
2358#line 185
2359  __cil_tmp4 = __cil_tmp3 + 16;
2360#line 185
2361  __cil_tmp5 = (struct device  const  *)__cil_tmp4;
2362#line 185
2363  tmp = dev_get_drvdata(__cil_tmp5);
2364  }
2365#line 185
2366  return (tmp);
2367}
2368}
2369#line 188 "include/linux/platform_device.h"
2370__inline static void platform_set_drvdata(struct platform_device *pdev , void *data ) 
2371{ unsigned long __cil_tmp3 ;
2372  unsigned long __cil_tmp4 ;
2373  struct device *__cil_tmp5 ;
2374
2375  {
2376  {
2377#line 190
2378  __cil_tmp3 = (unsigned long )pdev;
2379#line 190
2380  __cil_tmp4 = __cil_tmp3 + 16;
2381#line 190
2382  __cil_tmp5 = (struct device *)__cil_tmp4;
2383#line 190
2384  dev_set_drvdata(__cil_tmp5, data);
2385  }
2386#line 191
2387  return;
2388}
2389}
2390#line 61 "include/linux/io.h"
2391extern void *devm_ioremap(struct device * , resource_size_t  , unsigned long  ) ;
2392#line 91 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2639/dscv_tempdir/dscv/ri/43_1a/drivers/rtc/rtc-ds1553.c.p"
2393static int ds1553_rtc_set_time(struct device *dev , struct rtc_time *tm ) 
2394{ struct platform_device *pdev ;
2395  struct device  const  *__mptr ;
2396  struct rtc_plat_data *pdata ;
2397  void *tmp ;
2398  void *ioaddr ;
2399  u8 century ;
2400  unsigned char tmp___0 ;
2401  unsigned char tmp___1 ;
2402  unsigned char tmp___2 ;
2403  unsigned char tmp___3 ;
2404  unsigned char tmp___4 ;
2405  unsigned char tmp___5 ;
2406  unsigned char tmp___6 ;
2407  struct platform_device *__cil_tmp16 ;
2408  struct platform_device  const  *__cil_tmp17 ;
2409  unsigned long __cil_tmp18 ;
2410  unsigned long __cil_tmp19 ;
2411  unsigned long __cil_tmp20 ;
2412  unsigned long __cil_tmp21 ;
2413  int __cil_tmp22 ;
2414  int __cil_tmp23 ;
2415  int __cil_tmp24 ;
2416  unsigned int __cil_tmp25 ;
2417  unsigned long __cil_tmp26 ;
2418  unsigned long __cil_tmp27 ;
2419  void *__cil_tmp28 ;
2420  void volatile   *__cil_tmp29 ;
2421  void volatile   *__cil_tmp30 ;
2422  unsigned long __cil_tmp31 ;
2423  unsigned long __cil_tmp32 ;
2424  int __cil_tmp33 ;
2425  int __cil_tmp34 ;
2426  unsigned int __cil_tmp35 ;
2427  int __cil_tmp36 ;
2428  unsigned char __cil_tmp37 ;
2429  void volatile   *__cil_tmp38 ;
2430  void volatile   *__cil_tmp39 ;
2431  unsigned long __cil_tmp40 ;
2432  unsigned long __cil_tmp41 ;
2433  int __cil_tmp42 ;
2434  int __cil_tmp43 ;
2435  unsigned int __cil_tmp44 ;
2436  int __cil_tmp45 ;
2437  unsigned char __cil_tmp46 ;
2438  void volatile   *__cil_tmp47 ;
2439  void volatile   *__cil_tmp48 ;
2440  unsigned long __cil_tmp49 ;
2441  unsigned long __cil_tmp50 ;
2442  int __cil_tmp51 ;
2443  unsigned int __cil_tmp52 ;
2444  int __cil_tmp53 ;
2445  int __cil_tmp54 ;
2446  unsigned char __cil_tmp55 ;
2447  void volatile   *__cil_tmp56 ;
2448  void volatile   *__cil_tmp57 ;
2449  unsigned long __cil_tmp58 ;
2450  unsigned long __cil_tmp59 ;
2451  int __cil_tmp60 ;
2452  unsigned int __cil_tmp61 ;
2453  int __cil_tmp62 ;
2454  unsigned char __cil_tmp63 ;
2455  void volatile   *__cil_tmp64 ;
2456  void volatile   *__cil_tmp65 ;
2457  unsigned long __cil_tmp66 ;
2458  unsigned long __cil_tmp67 ;
2459  int __cil_tmp68 ;
2460  unsigned int __cil_tmp69 ;
2461  int __cil_tmp70 ;
2462  unsigned char __cil_tmp71 ;
2463  void volatile   *__cil_tmp72 ;
2464  void volatile   *__cil_tmp73 ;
2465  unsigned long __cil_tmp74 ;
2466  unsigned long __cil_tmp75 ;
2467  int __cil_tmp76 ;
2468  unsigned int __cil_tmp77 ;
2469  int __cil_tmp78 ;
2470  unsigned char __cil_tmp79 ;
2471  void volatile   *__cil_tmp80 ;
2472  void volatile   *__cil_tmp81 ;
2473  int __cil_tmp82 ;
2474  unsigned int __cil_tmp83 ;
2475  int __cil_tmp84 ;
2476  int __cil_tmp85 ;
2477  unsigned char __cil_tmp86 ;
2478  void volatile   *__cil_tmp87 ;
2479  void volatile   *__cil_tmp88 ;
2480  signed char __cil_tmp89 ;
2481  int __cil_tmp90 ;
2482  int __cil_tmp91 ;
2483  int __cil_tmp92 ;
2484  unsigned char __cil_tmp93 ;
2485  int __cil_tmp94 ;
2486  unsigned char __cil_tmp95 ;
2487  void volatile   *__cil_tmp96 ;
2488  void volatile   *__cil_tmp97 ;
2489  int __cil_tmp98 ;
2490  int __cil_tmp99 ;
2491  unsigned char __cil_tmp100 ;
2492  void volatile   *__cil_tmp101 ;
2493  void volatile   *__cil_tmp102 ;
2494
2495  {
2496  {
2497#line 93
2498  __mptr = (struct device  const  *)dev;
2499#line 93
2500  __cil_tmp16 = (struct platform_device *)__mptr;
2501#line 93
2502  pdev = __cil_tmp16 + 0xfffffffffffffff0UL;
2503#line 94
2504  __cil_tmp17 = (struct platform_device  const  *)pdev;
2505#line 94
2506  tmp = platform_get_drvdata(__cil_tmp17);
2507#line 94
2508  pdata = (struct rtc_plat_data *)tmp;
2509#line 95
2510  __cil_tmp18 = (unsigned long )pdata;
2511#line 95
2512  __cil_tmp19 = __cil_tmp18 + 8;
2513#line 95
2514  ioaddr = *((void **)__cil_tmp19);
2515#line 98
2516  __cil_tmp20 = (unsigned long )tm;
2517#line 98
2518  __cil_tmp21 = __cil_tmp20 + 20;
2519#line 98
2520  __cil_tmp22 = *((int *)__cil_tmp21);
2521#line 98
2522  __cil_tmp23 = __cil_tmp22 + 1900;
2523#line 98
2524  __cil_tmp24 = __cil_tmp23 / 100;
2525#line 98
2526  __cil_tmp25 = (unsigned int )__cil_tmp24;
2527#line 98
2528  century = bin2bcd(__cil_tmp25);
2529#line 100
2530  __cil_tmp26 = (unsigned long )pdata;
2531#line 100
2532  __cil_tmp27 = __cil_tmp26 + 8;
2533#line 100
2534  __cil_tmp28 = *((void **)__cil_tmp27);
2535#line 100
2536  __cil_tmp29 = (void volatile   *)__cil_tmp28;
2537#line 100
2538  __cil_tmp30 = __cil_tmp29 + 8184U;
2539#line 100
2540  writeb((unsigned char)128, __cil_tmp30);
2541#line 102
2542  __cil_tmp31 = (unsigned long )tm;
2543#line 102
2544  __cil_tmp32 = __cil_tmp31 + 20;
2545#line 102
2546  __cil_tmp33 = *((int *)__cil_tmp32);
2547#line 102
2548  __cil_tmp34 = __cil_tmp33 % 100;
2549#line 102
2550  __cil_tmp35 = (unsigned int )__cil_tmp34;
2551#line 102
2552  tmp___0 = bin2bcd(__cil_tmp35);
2553#line 102
2554  __cil_tmp36 = (int )tmp___0;
2555#line 102
2556  __cil_tmp37 = (unsigned char )__cil_tmp36;
2557#line 102
2558  __cil_tmp38 = (void volatile   *)ioaddr;
2559#line 102
2560  __cil_tmp39 = __cil_tmp38 + 8191U;
2561#line 102
2562  writeb(__cil_tmp37, __cil_tmp39);
2563#line 103
2564  __cil_tmp40 = (unsigned long )tm;
2565#line 103
2566  __cil_tmp41 = __cil_tmp40 + 16;
2567#line 103
2568  __cil_tmp42 = *((int *)__cil_tmp41);
2569#line 103
2570  __cil_tmp43 = __cil_tmp42 + 1;
2571#line 103
2572  __cil_tmp44 = (unsigned int )__cil_tmp43;
2573#line 103
2574  tmp___1 = bin2bcd(__cil_tmp44);
2575#line 103
2576  __cil_tmp45 = (int )tmp___1;
2577#line 103
2578  __cil_tmp46 = (unsigned char )__cil_tmp45;
2579#line 103
2580  __cil_tmp47 = (void volatile   *)ioaddr;
2581#line 103
2582  __cil_tmp48 = __cil_tmp47 + 8190U;
2583#line 103
2584  writeb(__cil_tmp46, __cil_tmp48);
2585#line 104
2586  __cil_tmp49 = (unsigned long )tm;
2587#line 104
2588  __cil_tmp50 = __cil_tmp49 + 24;
2589#line 104
2590  __cil_tmp51 = *((int *)__cil_tmp50);
2591#line 104
2592  __cil_tmp52 = (unsigned int )__cil_tmp51;
2593#line 104
2594  tmp___2 = bin2bcd(__cil_tmp52);
2595#line 104
2596  __cil_tmp53 = (int )tmp___2;
2597#line 104
2598  __cil_tmp54 = __cil_tmp53 & 7;
2599#line 104
2600  __cil_tmp55 = (unsigned char )__cil_tmp54;
2601#line 104
2602  __cil_tmp56 = (void volatile   *)ioaddr;
2603#line 104
2604  __cil_tmp57 = __cil_tmp56 + 8188U;
2605#line 104
2606  writeb(__cil_tmp55, __cil_tmp57);
2607#line 105
2608  __cil_tmp58 = (unsigned long )tm;
2609#line 105
2610  __cil_tmp59 = __cil_tmp58 + 12;
2611#line 105
2612  __cil_tmp60 = *((int *)__cil_tmp59);
2613#line 105
2614  __cil_tmp61 = (unsigned int )__cil_tmp60;
2615#line 105
2616  tmp___3 = bin2bcd(__cil_tmp61);
2617#line 105
2618  __cil_tmp62 = (int )tmp___3;
2619#line 105
2620  __cil_tmp63 = (unsigned char )__cil_tmp62;
2621#line 105
2622  __cil_tmp64 = (void volatile   *)ioaddr;
2623#line 105
2624  __cil_tmp65 = __cil_tmp64 + 8189U;
2625#line 105
2626  writeb(__cil_tmp63, __cil_tmp65);
2627#line 106
2628  __cil_tmp66 = (unsigned long )tm;
2629#line 106
2630  __cil_tmp67 = __cil_tmp66 + 8;
2631#line 106
2632  __cil_tmp68 = *((int *)__cil_tmp67);
2633#line 106
2634  __cil_tmp69 = (unsigned int )__cil_tmp68;
2635#line 106
2636  tmp___4 = bin2bcd(__cil_tmp69);
2637#line 106
2638  __cil_tmp70 = (int )tmp___4;
2639#line 106
2640  __cil_tmp71 = (unsigned char )__cil_tmp70;
2641#line 106
2642  __cil_tmp72 = (void volatile   *)ioaddr;
2643#line 106
2644  __cil_tmp73 = __cil_tmp72 + 8187U;
2645#line 106
2646  writeb(__cil_tmp71, __cil_tmp73);
2647#line 107
2648  __cil_tmp74 = (unsigned long )tm;
2649#line 107
2650  __cil_tmp75 = __cil_tmp74 + 4;
2651#line 107
2652  __cil_tmp76 = *((int *)__cil_tmp75);
2653#line 107
2654  __cil_tmp77 = (unsigned int )__cil_tmp76;
2655#line 107
2656  tmp___5 = bin2bcd(__cil_tmp77);
2657#line 107
2658  __cil_tmp78 = (int )tmp___5;
2659#line 107
2660  __cil_tmp79 = (unsigned char )__cil_tmp78;
2661#line 107
2662  __cil_tmp80 = (void volatile   *)ioaddr;
2663#line 107
2664  __cil_tmp81 = __cil_tmp80 + 8186U;
2665#line 107
2666  writeb(__cil_tmp79, __cil_tmp81);
2667#line 108
2668  __cil_tmp82 = *((int *)tm);
2669#line 108
2670  __cil_tmp83 = (unsigned int )__cil_tmp82;
2671#line 108
2672  tmp___6 = bin2bcd(__cil_tmp83);
2673#line 108
2674  __cil_tmp84 = (int )tmp___6;
2675#line 108
2676  __cil_tmp85 = __cil_tmp84 & 127;
2677#line 108
2678  __cil_tmp86 = (unsigned char )__cil_tmp85;
2679#line 108
2680  __cil_tmp87 = (void volatile   *)ioaddr;
2681#line 108
2682  __cil_tmp88 = __cil_tmp87 + 8185U;
2683#line 108
2684  writeb(__cil_tmp86, __cil_tmp88);
2685#line 111
2686  __cil_tmp89 = (signed char )century;
2687#line 111
2688  __cil_tmp90 = (int )__cil_tmp89;
2689#line 111
2690  __cil_tmp91 = __cil_tmp90 & 63;
2691#line 111
2692  __cil_tmp92 = __cil_tmp91 | -128;
2693#line 111
2694  __cil_tmp93 = (unsigned char )__cil_tmp92;
2695#line 111
2696  __cil_tmp94 = (int )__cil_tmp93;
2697#line 111
2698  __cil_tmp95 = (unsigned char )__cil_tmp94;
2699#line 111
2700  __cil_tmp96 = (void volatile   *)ioaddr;
2701#line 111
2702  __cil_tmp97 = __cil_tmp96 + 8184U;
2703#line 111
2704  writeb(__cil_tmp95, __cil_tmp97);
2705#line 112
2706  __cil_tmp98 = (int )century;
2707#line 112
2708  __cil_tmp99 = __cil_tmp98 & 63;
2709#line 112
2710  __cil_tmp100 = (unsigned char )__cil_tmp99;
2711#line 112
2712  __cil_tmp101 = (void volatile   *)ioaddr;
2713#line 112
2714  __cil_tmp102 = __cil_tmp101 + 8184U;
2715#line 112
2716  writeb(__cil_tmp100, __cil_tmp102);
2717  }
2718#line 113
2719  return (0);
2720}
2721}
2722#line 116 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2639/dscv_tempdir/dscv/ri/43_1a/drivers/rtc/rtc-ds1553.c.p"
2723static int ds1553_rtc_read_time(struct device *dev , struct rtc_time *tm ) 
2724{ struct platform_device *pdev ;
2725  struct device  const  *__mptr ;
2726  struct rtc_plat_data *pdata ;
2727  void *tmp ;
2728  void *ioaddr ;
2729  unsigned int year ;
2730  unsigned int month ;
2731  unsigned int day ;
2732  unsigned int hour ;
2733  unsigned int minute ;
2734  unsigned int second ;
2735  unsigned int week ;
2736  unsigned int century ;
2737  unsigned char tmp___0 ;
2738  unsigned char tmp___1 ;
2739  unsigned char tmp___2 ;
2740  unsigned char tmp___3 ;
2741  unsigned char tmp___4 ;
2742  unsigned char tmp___5 ;
2743  unsigned char tmp___6 ;
2744  unsigned char tmp___7 ;
2745  unsigned int tmp___8 ;
2746  unsigned int tmp___9 ;
2747  unsigned int tmp___10 ;
2748  unsigned int tmp___11 ;
2749  unsigned int tmp___12 ;
2750  unsigned int tmp___13 ;
2751  unsigned int tmp___14 ;
2752  unsigned int tmp___15 ;
2753  int tmp___16 ;
2754  struct platform_device *__cil_tmp33 ;
2755  struct platform_device  const  *__cil_tmp34 ;
2756  unsigned long __cil_tmp35 ;
2757  unsigned long __cil_tmp36 ;
2758  unsigned long __cil_tmp37 ;
2759  unsigned long __cil_tmp38 ;
2760  unsigned long __cil_tmp39 ;
2761  unsigned long __cil_tmp40 ;
2762  unsigned long __cil_tmp41 ;
2763  unsigned long __cil_tmp42 ;
2764  void volatile   *__cil_tmp43 ;
2765  void volatile   *__cil_tmp44 ;
2766  void const volatile   *__cil_tmp45 ;
2767  void const volatile   *__cil_tmp46 ;
2768  unsigned int __cil_tmp47 ;
2769  void const volatile   *__cil_tmp48 ;
2770  void const volatile   *__cil_tmp49 ;
2771  void const volatile   *__cil_tmp50 ;
2772  void const volatile   *__cil_tmp51 ;
2773  void const volatile   *__cil_tmp52 ;
2774  void const volatile   *__cil_tmp53 ;
2775  void const volatile   *__cil_tmp54 ;
2776  void const volatile   *__cil_tmp55 ;
2777  unsigned int __cil_tmp56 ;
2778  void const volatile   *__cil_tmp57 ;
2779  void const volatile   *__cil_tmp58 ;
2780  void const volatile   *__cil_tmp59 ;
2781  void const volatile   *__cil_tmp60 ;
2782  void const volatile   *__cil_tmp61 ;
2783  void const volatile   *__cil_tmp62 ;
2784  unsigned int __cil_tmp63 ;
2785  void volatile   *__cil_tmp64 ;
2786  void volatile   *__cil_tmp65 ;
2787  unsigned char __cil_tmp66 ;
2788  int __cil_tmp67 ;
2789  unsigned char __cil_tmp68 ;
2790  unsigned char __cil_tmp69 ;
2791  int __cil_tmp70 ;
2792  unsigned char __cil_tmp71 ;
2793  unsigned long __cil_tmp72 ;
2794  unsigned long __cil_tmp73 ;
2795  unsigned char __cil_tmp74 ;
2796  int __cil_tmp75 ;
2797  unsigned char __cil_tmp76 ;
2798  unsigned long __cil_tmp77 ;
2799  unsigned long __cil_tmp78 ;
2800  unsigned char __cil_tmp79 ;
2801  int __cil_tmp80 ;
2802  unsigned char __cil_tmp81 ;
2803  unsigned long __cil_tmp82 ;
2804  unsigned long __cil_tmp83 ;
2805  unsigned char __cil_tmp84 ;
2806  int __cil_tmp85 ;
2807  unsigned char __cil_tmp86 ;
2808  unsigned long __cil_tmp87 ;
2809  unsigned long __cil_tmp88 ;
2810  unsigned char __cil_tmp89 ;
2811  int __cil_tmp90 ;
2812  unsigned char __cil_tmp91 ;
2813  unsigned long __cil_tmp92 ;
2814  unsigned long __cil_tmp93 ;
2815  unsigned int __cil_tmp94 ;
2816  unsigned char __cil_tmp95 ;
2817  int __cil_tmp96 ;
2818  unsigned char __cil_tmp97 ;
2819  unsigned char __cil_tmp98 ;
2820  int __cil_tmp99 ;
2821  unsigned char __cil_tmp100 ;
2822  unsigned long __cil_tmp101 ;
2823  unsigned long __cil_tmp102 ;
2824  unsigned int __cil_tmp103 ;
2825  unsigned int __cil_tmp104 ;
2826  unsigned int __cil_tmp105 ;
2827  struct device  const  *__cil_tmp106 ;
2828
2829  {
2830  {
2831#line 118
2832  __mptr = (struct device  const  *)dev;
2833#line 118
2834  __cil_tmp33 = (struct platform_device *)__mptr;
2835#line 118
2836  pdev = __cil_tmp33 + 0xfffffffffffffff0UL;
2837#line 119
2838  __cil_tmp34 = (struct platform_device  const  *)pdev;
2839#line 119
2840  tmp = platform_get_drvdata(__cil_tmp34);
2841#line 119
2842  pdata = (struct rtc_plat_data *)tmp;
2843#line 120
2844  __cil_tmp35 = (unsigned long )pdata;
2845#line 120
2846  __cil_tmp36 = __cil_tmp35 + 8;
2847#line 120
2848  ioaddr = *((void **)__cil_tmp36);
2849  }
2850  {
2851#line 125
2852  __cil_tmp37 = (unsigned long )jiffies;
2853#line 125
2854  __cil_tmp38 = (unsigned long )pdata;
2855#line 125
2856  __cil_tmp39 = __cil_tmp38 + 16;
2857#line 125
2858  __cil_tmp40 = *((unsigned long *)__cil_tmp39);
2859#line 125
2860  if (__cil_tmp40 == __cil_tmp37) {
2861    {
2862#line 126
2863    msleep(1U);
2864    }
2865  } else {
2866
2867  }
2868  }
2869  {
2870#line 127
2871  __cil_tmp41 = (unsigned long )pdata;
2872#line 127
2873  __cil_tmp42 = __cil_tmp41 + 16;
2874#line 127
2875  *((unsigned long *)__cil_tmp42) = (unsigned long )jiffies;
2876#line 128
2877  __cil_tmp43 = (void volatile   *)ioaddr;
2878#line 128
2879  __cil_tmp44 = __cil_tmp43 + 8184U;
2880#line 128
2881  writeb((unsigned char)64, __cil_tmp44);
2882#line 129
2883  __cil_tmp45 = (void const volatile   *)ioaddr;
2884#line 129
2885  __cil_tmp46 = __cil_tmp45 + 8185U;
2886#line 129
2887  tmp___0 = readb(__cil_tmp46);
2888#line 129
2889  __cil_tmp47 = (unsigned int )tmp___0;
2890#line 129
2891  second = __cil_tmp47 & 127U;
2892#line 130
2893  __cil_tmp48 = (void const volatile   *)ioaddr;
2894#line 130
2895  __cil_tmp49 = __cil_tmp48 + 8186U;
2896#line 130
2897  tmp___1 = readb(__cil_tmp49);
2898#line 130
2899  minute = (unsigned int )tmp___1;
2900#line 131
2901  __cil_tmp50 = (void const volatile   *)ioaddr;
2902#line 131
2903  __cil_tmp51 = __cil_tmp50 + 8187U;
2904#line 131
2905  tmp___2 = readb(__cil_tmp51);
2906#line 131
2907  hour = (unsigned int )tmp___2;
2908#line 132
2909  __cil_tmp52 = (void const volatile   *)ioaddr;
2910#line 132
2911  __cil_tmp53 = __cil_tmp52 + 8189U;
2912#line 132
2913  tmp___3 = readb(__cil_tmp53);
2914#line 132
2915  day = (unsigned int )tmp___3;
2916#line 133
2917  __cil_tmp54 = (void const volatile   *)ioaddr;
2918#line 133
2919  __cil_tmp55 = __cil_tmp54 + 8188U;
2920#line 133
2921  tmp___4 = readb(__cil_tmp55);
2922#line 133
2923  __cil_tmp56 = (unsigned int )tmp___4;
2924#line 133
2925  week = __cil_tmp56 & 7U;
2926#line 134
2927  __cil_tmp57 = (void const volatile   *)ioaddr;
2928#line 134
2929  __cil_tmp58 = __cil_tmp57 + 8190U;
2930#line 134
2931  tmp___5 = readb(__cil_tmp58);
2932#line 134
2933  month = (unsigned int )tmp___5;
2934#line 135
2935  __cil_tmp59 = (void const volatile   *)ioaddr;
2936#line 135
2937  __cil_tmp60 = __cil_tmp59 + 8191U;
2938#line 135
2939  tmp___6 = readb(__cil_tmp60);
2940#line 135
2941  year = (unsigned int )tmp___6;
2942#line 136
2943  __cil_tmp61 = (void const volatile   *)ioaddr;
2944#line 136
2945  __cil_tmp62 = __cil_tmp61 + 8184U;
2946#line 136
2947  tmp___7 = readb(__cil_tmp62);
2948#line 136
2949  __cil_tmp63 = (unsigned int )tmp___7;
2950#line 136
2951  century = __cil_tmp63 & 63U;
2952#line 137
2953  __cil_tmp64 = (void volatile   *)ioaddr;
2954#line 137
2955  __cil_tmp65 = __cil_tmp64 + 8184U;
2956#line 137
2957  writeb((unsigned char)0, __cil_tmp65);
2958#line 138
2959  __cil_tmp66 = (unsigned char )second;
2960#line 138
2961  __cil_tmp67 = (int )__cil_tmp66;
2962#line 138
2963  __cil_tmp68 = (unsigned char )__cil_tmp67;
2964#line 138
2965  tmp___8 = bcd2bin(__cil_tmp68);
2966#line 138
2967  *((int *)tm) = (int )tmp___8;
2968#line 139
2969  __cil_tmp69 = (unsigned char )minute;
2970#line 139
2971  __cil_tmp70 = (int )__cil_tmp69;
2972#line 139
2973  __cil_tmp71 = (unsigned char )__cil_tmp70;
2974#line 139
2975  tmp___9 = bcd2bin(__cil_tmp71);
2976#line 139
2977  __cil_tmp72 = (unsigned long )tm;
2978#line 139
2979  __cil_tmp73 = __cil_tmp72 + 4;
2980#line 139
2981  *((int *)__cil_tmp73) = (int )tmp___9;
2982#line 140
2983  __cil_tmp74 = (unsigned char )hour;
2984#line 140
2985  __cil_tmp75 = (int )__cil_tmp74;
2986#line 140
2987  __cil_tmp76 = (unsigned char )__cil_tmp75;
2988#line 140
2989  tmp___10 = bcd2bin(__cil_tmp76);
2990#line 140
2991  __cil_tmp77 = (unsigned long )tm;
2992#line 140
2993  __cil_tmp78 = __cil_tmp77 + 8;
2994#line 140
2995  *((int *)__cil_tmp78) = (int )tmp___10;
2996#line 141
2997  __cil_tmp79 = (unsigned char )day;
2998#line 141
2999  __cil_tmp80 = (int )__cil_tmp79;
3000#line 141
3001  __cil_tmp81 = (unsigned char )__cil_tmp80;
3002#line 141
3003  tmp___11 = bcd2bin(__cil_tmp81);
3004#line 141
3005  __cil_tmp82 = (unsigned long )tm;
3006#line 141
3007  __cil_tmp83 = __cil_tmp82 + 12;
3008#line 141
3009  *((int *)__cil_tmp83) = (int )tmp___11;
3010#line 142
3011  __cil_tmp84 = (unsigned char )week;
3012#line 142
3013  __cil_tmp85 = (int )__cil_tmp84;
3014#line 142
3015  __cil_tmp86 = (unsigned char )__cil_tmp85;
3016#line 142
3017  tmp___12 = bcd2bin(__cil_tmp86);
3018#line 142
3019  __cil_tmp87 = (unsigned long )tm;
3020#line 142
3021  __cil_tmp88 = __cil_tmp87 + 24;
3022#line 142
3023  *((int *)__cil_tmp88) = (int )tmp___12;
3024#line 143
3025  __cil_tmp89 = (unsigned char )month;
3026#line 143
3027  __cil_tmp90 = (int )__cil_tmp89;
3028#line 143
3029  __cil_tmp91 = (unsigned char )__cil_tmp90;
3030#line 143
3031  tmp___13 = bcd2bin(__cil_tmp91);
3032#line 143
3033  __cil_tmp92 = (unsigned long )tm;
3034#line 143
3035  __cil_tmp93 = __cil_tmp92 + 16;
3036#line 143
3037  __cil_tmp94 = tmp___13 - 1U;
3038#line 143
3039  *((int *)__cil_tmp93) = (int )__cil_tmp94;
3040#line 145
3041  __cil_tmp95 = (unsigned char )year;
3042#line 145
3043  __cil_tmp96 = (int )__cil_tmp95;
3044#line 145
3045  __cil_tmp97 = (unsigned char )__cil_tmp96;
3046#line 145
3047  tmp___14 = bcd2bin(__cil_tmp97);
3048#line 145
3049  __cil_tmp98 = (unsigned char )century;
3050#line 145
3051  __cil_tmp99 = (int )__cil_tmp98;
3052#line 145
3053  __cil_tmp100 = (unsigned char )__cil_tmp99;
3054#line 145
3055  tmp___15 = bcd2bin(__cil_tmp100);
3056#line 145
3057  __cil_tmp101 = (unsigned long )tm;
3058#line 145
3059  __cil_tmp102 = __cil_tmp101 + 20;
3060#line 145
3061  __cil_tmp103 = tmp___15 * 100U;
3062#line 145
3063  __cil_tmp104 = tmp___14 + __cil_tmp103;
3064#line 145
3065  __cil_tmp105 = __cil_tmp104 - 1900U;
3066#line 145
3067  *((int *)__cil_tmp102) = (int )__cil_tmp105;
3068#line 147
3069  tmp___16 = rtc_valid_tm(tm);
3070  }
3071#line 147
3072  if (tmp___16 < 0) {
3073    {
3074#line 148
3075    __cil_tmp106 = (struct device  const  *)dev;
3076#line 148
3077    dev_err(__cil_tmp106, "retrieved date/time is not valid.\n");
3078#line 149
3079    rtc_time_to_tm(0UL, tm);
3080    }
3081  } else {
3082
3083  }
3084#line 151
3085  return (0);
3086}
3087}
3088#line 154 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2639/dscv_tempdir/dscv/ri/43_1a/drivers/rtc/rtc-ds1553.c.p"
3089static void ds1553_rtc_update_alarm(struct rtc_plat_data *pdata ) 
3090{ void *ioaddr ;
3091  unsigned long flags ;
3092  unsigned char tmp ;
3093  int tmp___0 ;
3094  unsigned char tmp___1 ;
3095  int tmp___2 ;
3096  unsigned char tmp___3 ;
3097  int tmp___4 ;
3098  unsigned char tmp___5 ;
3099  int tmp___6 ;
3100  int tmp___7 ;
3101  unsigned long __cil_tmp13 ;
3102  unsigned long __cil_tmp14 ;
3103  unsigned long __cil_tmp15 ;
3104  unsigned long __cil_tmp16 ;
3105  int __cil_tmp17 ;
3106  unsigned long __cil_tmp18 ;
3107  unsigned long __cil_tmp19 ;
3108  unsigned int __cil_tmp20 ;
3109  unsigned int __cil_tmp21 ;
3110  unsigned long __cil_tmp22 ;
3111  unsigned long __cil_tmp23 ;
3112  int __cil_tmp24 ;
3113  unsigned int __cil_tmp25 ;
3114  unsigned char __cil_tmp26 ;
3115  void volatile   *__cil_tmp27 ;
3116  void volatile   *__cil_tmp28 ;
3117  unsigned long __cil_tmp29 ;
3118  unsigned long __cil_tmp30 ;
3119  int __cil_tmp31 ;
3120  unsigned long __cil_tmp32 ;
3121  unsigned long __cil_tmp33 ;
3122  unsigned int __cil_tmp34 ;
3123  unsigned int __cil_tmp35 ;
3124  unsigned long __cil_tmp36 ;
3125  unsigned long __cil_tmp37 ;
3126  int __cil_tmp38 ;
3127  unsigned int __cil_tmp39 ;
3128  unsigned char __cil_tmp40 ;
3129  void volatile   *__cil_tmp41 ;
3130  void volatile   *__cil_tmp42 ;
3131  unsigned long __cil_tmp43 ;
3132  unsigned long __cil_tmp44 ;
3133  int __cil_tmp45 ;
3134  unsigned long __cil_tmp46 ;
3135  unsigned long __cil_tmp47 ;
3136  unsigned int __cil_tmp48 ;
3137  unsigned int __cil_tmp49 ;
3138  unsigned long __cil_tmp50 ;
3139  unsigned long __cil_tmp51 ;
3140  int __cil_tmp52 ;
3141  unsigned int __cil_tmp53 ;
3142  unsigned char __cil_tmp54 ;
3143  void volatile   *__cil_tmp55 ;
3144  void volatile   *__cil_tmp56 ;
3145  unsigned long __cil_tmp57 ;
3146  unsigned long __cil_tmp58 ;
3147  int __cil_tmp59 ;
3148  unsigned long __cil_tmp60 ;
3149  unsigned long __cil_tmp61 ;
3150  unsigned int __cil_tmp62 ;
3151  unsigned int __cil_tmp63 ;
3152  unsigned long __cil_tmp64 ;
3153  unsigned long __cil_tmp65 ;
3154  int __cil_tmp66 ;
3155  unsigned int __cil_tmp67 ;
3156  unsigned char __cil_tmp68 ;
3157  void volatile   *__cil_tmp69 ;
3158  void volatile   *__cil_tmp70 ;
3159  unsigned long __cil_tmp71 ;
3160  unsigned long __cil_tmp72 ;
3161  unsigned int __cil_tmp73 ;
3162  unsigned char __cil_tmp74 ;
3163  void volatile   *__cil_tmp75 ;
3164  void volatile   *__cil_tmp76 ;
3165  void const volatile   *__cil_tmp77 ;
3166  void const volatile   *__cil_tmp78 ;
3167  unsigned long __cil_tmp79 ;
3168  unsigned long __cil_tmp80 ;
3169  spinlock_t *__cil_tmp81 ;
3170
3171  {
3172  {
3173#line 156
3174  __cil_tmp13 = (unsigned long )pdata;
3175#line 156
3176  __cil_tmp14 = __cil_tmp13 + 8;
3177#line 156
3178  ioaddr = *((void **)__cil_tmp14);
3179#line 159
3180  ldv_spin_lock();
3181  }
3182  {
3183#line 160
3184  __cil_tmp15 = (unsigned long )pdata;
3185#line 160
3186  __cil_tmp16 = __cil_tmp15 + 44;
3187#line 160
3188  __cil_tmp17 = *((int *)__cil_tmp16);
3189#line 160
3190  if (__cil_tmp17 >= 0) {
3191    {
3192#line 160
3193    __cil_tmp18 = (unsigned long )pdata;
3194#line 160
3195    __cil_tmp19 = __cil_tmp18 + 28;
3196#line 160
3197    __cil_tmp20 = *((unsigned int *)__cil_tmp19);
3198#line 160
3199    __cil_tmp21 = __cil_tmp20 & 16U;
3200#line 160
3201    if (__cil_tmp21 == 0U) {
3202      {
3203#line 160
3204      __cil_tmp22 = (unsigned long )pdata;
3205#line 160
3206      __cil_tmp23 = __cil_tmp22 + 44;
3207#line 160
3208      __cil_tmp24 = *((int *)__cil_tmp23);
3209#line 160
3210      __cil_tmp25 = (unsigned int )__cil_tmp24;
3211#line 160
3212      tmp = bin2bcd(__cil_tmp25);
3213#line 160
3214      tmp___0 = (int )tmp;
3215      }
3216    } else {
3217#line 160
3218      tmp___0 = 128;
3219    }
3220    }
3221  } else {
3222#line 160
3223    tmp___0 = 128;
3224  }
3225  }
3226  {
3227#line 160
3228  __cil_tmp26 = (unsigned char )tmp___0;
3229#line 160
3230  __cil_tmp27 = (void volatile   *)ioaddr;
3231#line 160
3232  __cil_tmp28 = __cil_tmp27 + 8181U;
3233#line 160
3234  writeb(__cil_tmp26, __cil_tmp28);
3235  }
3236  {
3237#line 163
3238  __cil_tmp29 = (unsigned long )pdata;
3239#line 163
3240  __cil_tmp30 = __cil_tmp29 + 40;
3241#line 163
3242  __cil_tmp31 = *((int *)__cil_tmp30);
3243#line 163
3244  if (__cil_tmp31 >= 0) {
3245    {
3246#line 163
3247    __cil_tmp32 = (unsigned long )pdata;
3248#line 163
3249    __cil_tmp33 = __cil_tmp32 + 28;
3250#line 163
3251    __cil_tmp34 = *((unsigned int *)__cil_tmp33);
3252#line 163
3253    __cil_tmp35 = __cil_tmp34 & 16U;
3254#line 163
3255    if (__cil_tmp35 == 0U) {
3256      {
3257#line 163
3258      __cil_tmp36 = (unsigned long )pdata;
3259#line 163
3260      __cil_tmp37 = __cil_tmp36 + 40;
3261#line 163
3262      __cil_tmp38 = *((int *)__cil_tmp37);
3263#line 163
3264      __cil_tmp39 = (unsigned int )__cil_tmp38;
3265#line 163
3266      tmp___1 = bin2bcd(__cil_tmp39);
3267#line 163
3268      tmp___2 = (int )tmp___1;
3269      }
3270    } else {
3271#line 163
3272      tmp___2 = 128;
3273    }
3274    }
3275  } else {
3276#line 163
3277    tmp___2 = 128;
3278  }
3279  }
3280  {
3281#line 163
3282  __cil_tmp40 = (unsigned char )tmp___2;
3283#line 163
3284  __cil_tmp41 = (void volatile   *)ioaddr;
3285#line 163
3286  __cil_tmp42 = __cil_tmp41 + 8180U;
3287#line 163
3288  writeb(__cil_tmp40, __cil_tmp42);
3289  }
3290  {
3291#line 166
3292  __cil_tmp43 = (unsigned long )pdata;
3293#line 166
3294  __cil_tmp44 = __cil_tmp43 + 36;
3295#line 166
3296  __cil_tmp45 = *((int *)__cil_tmp44);
3297#line 166
3298  if (__cil_tmp45 >= 0) {
3299    {
3300#line 166
3301    __cil_tmp46 = (unsigned long )pdata;
3302#line 166
3303    __cil_tmp47 = __cil_tmp46 + 28;
3304#line 166
3305    __cil_tmp48 = *((unsigned int *)__cil_tmp47);
3306#line 166
3307    __cil_tmp49 = __cil_tmp48 & 16U;
3308#line 166
3309    if (__cil_tmp49 == 0U) {
3310      {
3311#line 166
3312      __cil_tmp50 = (unsigned long )pdata;
3313#line 166
3314      __cil_tmp51 = __cil_tmp50 + 36;
3315#line 166
3316      __cil_tmp52 = *((int *)__cil_tmp51);
3317#line 166
3318      __cil_tmp53 = (unsigned int )__cil_tmp52;
3319#line 166
3320      tmp___3 = bin2bcd(__cil_tmp53);
3321#line 166
3322      tmp___4 = (int )tmp___3;
3323      }
3324    } else {
3325#line 166
3326      tmp___4 = 128;
3327    }
3328    }
3329  } else {
3330#line 166
3331    tmp___4 = 128;
3332  }
3333  }
3334  {
3335#line 166
3336  __cil_tmp54 = (unsigned char )tmp___4;
3337#line 166
3338  __cil_tmp55 = (void volatile   *)ioaddr;
3339#line 166
3340  __cil_tmp56 = __cil_tmp55 + 8179U;
3341#line 166
3342  writeb(__cil_tmp54, __cil_tmp56);
3343  }
3344  {
3345#line 169
3346  __cil_tmp57 = (unsigned long )pdata;
3347#line 169
3348  __cil_tmp58 = __cil_tmp57 + 32;
3349#line 169
3350  __cil_tmp59 = *((int *)__cil_tmp58);
3351#line 169
3352  if (__cil_tmp59 >= 0) {
3353    {
3354#line 169
3355    __cil_tmp60 = (unsigned long )pdata;
3356#line 169
3357    __cil_tmp61 = __cil_tmp60 + 28;
3358#line 169
3359    __cil_tmp62 = *((unsigned int *)__cil_tmp61);
3360#line 169
3361    __cil_tmp63 = __cil_tmp62 & 16U;
3362#line 169
3363    if (__cil_tmp63 == 0U) {
3364      {
3365#line 169
3366      __cil_tmp64 = (unsigned long )pdata;
3367#line 169
3368      __cil_tmp65 = __cil_tmp64 + 32;
3369#line 169
3370      __cil_tmp66 = *((int *)__cil_tmp65);
3371#line 169
3372      __cil_tmp67 = (unsigned int )__cil_tmp66;
3373#line 169
3374      tmp___5 = bin2bcd(__cil_tmp67);
3375#line 169
3376      tmp___6 = (int )tmp___5;
3377      }
3378    } else {
3379#line 169
3380      tmp___6 = 128;
3381    }
3382    }
3383  } else {
3384#line 169
3385    tmp___6 = 128;
3386  }
3387  }
3388  {
3389#line 169
3390  __cil_tmp68 = (unsigned char )tmp___6;
3391#line 169
3392  __cil_tmp69 = (void volatile   *)ioaddr;
3393#line 169
3394  __cil_tmp70 = __cil_tmp69 + 8178U;
3395#line 169
3396  writeb(__cil_tmp68, __cil_tmp70);
3397  }
3398  {
3399#line 172
3400  __cil_tmp71 = (unsigned long )pdata;
3401#line 172
3402  __cil_tmp72 = __cil_tmp71 + 28;
3403#line 172
3404  __cil_tmp73 = *((unsigned int *)__cil_tmp72);
3405#line 172
3406  if (__cil_tmp73 != 0U) {
3407#line 172
3408    tmp___7 = 128;
3409  } else {
3410#line 172
3411    tmp___7 = 0;
3412  }
3413  }
3414  {
3415#line 172
3416  __cil_tmp74 = (unsigned char )tmp___7;
3417#line 172
3418  __cil_tmp75 = (void volatile   *)ioaddr;
3419#line 172
3420  __cil_tmp76 = __cil_tmp75 + 8182U;
3421#line 172
3422  writeb(__cil_tmp74, __cil_tmp76);
3423#line 173
3424  __cil_tmp77 = (void const volatile   *)ioaddr;
3425#line 173
3426  __cil_tmp78 = __cil_tmp77 + 8176U;
3427#line 173
3428  readb(__cil_tmp78);
3429#line 174
3430  __cil_tmp79 = (unsigned long )pdata;
3431#line 174
3432  __cil_tmp80 = __cil_tmp79 + 48;
3433#line 174
3434  __cil_tmp81 = (spinlock_t *)__cil_tmp80;
3435#line 174
3436  spin_unlock_irqrestore(__cil_tmp81, flags);
3437  }
3438#line 175
3439  return;
3440}
3441}
3442#line 177 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2639/dscv_tempdir/dscv/ri/43_1a/drivers/rtc/rtc-ds1553.c.p"
3443static int ds1553_rtc_set_alarm(struct device *dev , struct rtc_wkalrm *alrm ) 
3444{ struct platform_device *pdev ;
3445  struct device  const  *__mptr ;
3446  struct rtc_plat_data *pdata ;
3447  void *tmp ;
3448  struct platform_device *__cil_tmp7 ;
3449  struct platform_device  const  *__cil_tmp8 ;
3450  unsigned long __cil_tmp9 ;
3451  unsigned long __cil_tmp10 ;
3452  int __cil_tmp11 ;
3453  unsigned long __cil_tmp12 ;
3454  unsigned long __cil_tmp13 ;
3455  unsigned long __cil_tmp14 ;
3456  unsigned long __cil_tmp15 ;
3457  unsigned long __cil_tmp16 ;
3458  unsigned long __cil_tmp17 ;
3459  unsigned long __cil_tmp18 ;
3460  unsigned long __cil_tmp19 ;
3461  unsigned long __cil_tmp20 ;
3462  unsigned long __cil_tmp21 ;
3463  unsigned long __cil_tmp22 ;
3464  unsigned long __cil_tmp23 ;
3465  unsigned long __cil_tmp24 ;
3466  unsigned long __cil_tmp25 ;
3467  unsigned long __cil_tmp26 ;
3468  unsigned long __cil_tmp27 ;
3469  unsigned long __cil_tmp28 ;
3470  unsigned long __cil_tmp29 ;
3471  unsigned long __cil_tmp30 ;
3472  unsigned char __cil_tmp31 ;
3473  unsigned int __cil_tmp32 ;
3474  unsigned long __cil_tmp33 ;
3475  unsigned long __cil_tmp34 ;
3476  unsigned long __cil_tmp35 ;
3477  unsigned long __cil_tmp36 ;
3478  unsigned int __cil_tmp37 ;
3479
3480  {
3481  {
3482#line 179
3483  __mptr = (struct device  const  *)dev;
3484#line 179
3485  __cil_tmp7 = (struct platform_device *)__mptr;
3486#line 179
3487  pdev = __cil_tmp7 + 0xfffffffffffffff0UL;
3488#line 180
3489  __cil_tmp8 = (struct platform_device  const  *)pdev;
3490#line 180
3491  tmp = platform_get_drvdata(__cil_tmp8);
3492#line 180
3493  pdata = (struct rtc_plat_data *)tmp;
3494  }
3495  {
3496#line 182
3497  __cil_tmp9 = (unsigned long )pdata;
3498#line 182
3499  __cil_tmp10 = __cil_tmp9 + 24;
3500#line 182
3501  __cil_tmp11 = *((int *)__cil_tmp10);
3502#line 182
3503  if (__cil_tmp11 <= 0) {
3504#line 183
3505    return (-22);
3506  } else {
3507
3508  }
3509  }
3510#line 184
3511  __cil_tmp12 = (unsigned long )pdata;
3512#line 184
3513  __cil_tmp13 = __cil_tmp12 + 44;
3514#line 184
3515  __cil_tmp14 = 4 + 12;
3516#line 184
3517  __cil_tmp15 = (unsigned long )alrm;
3518#line 184
3519  __cil_tmp16 = __cil_tmp15 + __cil_tmp14;
3520#line 184
3521  *((int *)__cil_tmp13) = *((int *)__cil_tmp16);
3522#line 185
3523  __cil_tmp17 = (unsigned long )pdata;
3524#line 185
3525  __cil_tmp18 = __cil_tmp17 + 40;
3526#line 185
3527  __cil_tmp19 = 4 + 8;
3528#line 185
3529  __cil_tmp20 = (unsigned long )alrm;
3530#line 185
3531  __cil_tmp21 = __cil_tmp20 + __cil_tmp19;
3532#line 185
3533  *((int *)__cil_tmp18) = *((int *)__cil_tmp21);
3534#line 186
3535  __cil_tmp22 = (unsigned long )pdata;
3536#line 186
3537  __cil_tmp23 = __cil_tmp22 + 36;
3538#line 186
3539  __cil_tmp24 = 4 + 4;
3540#line 186
3541  __cil_tmp25 = (unsigned long )alrm;
3542#line 186
3543  __cil_tmp26 = __cil_tmp25 + __cil_tmp24;
3544#line 186
3545  *((int *)__cil_tmp23) = *((int *)__cil_tmp26);
3546#line 187
3547  __cil_tmp27 = (unsigned long )pdata;
3548#line 187
3549  __cil_tmp28 = __cil_tmp27 + 32;
3550#line 187
3551  __cil_tmp29 = (unsigned long )alrm;
3552#line 187
3553  __cil_tmp30 = __cil_tmp29 + 4;
3554#line 187
3555  *((int *)__cil_tmp28) = *((int *)__cil_tmp30);
3556  {
3557#line 188
3558  __cil_tmp31 = *((unsigned char *)alrm);
3559#line 188
3560  __cil_tmp32 = (unsigned int )__cil_tmp31;
3561#line 188
3562  if (__cil_tmp32 != 0U) {
3563#line 189
3564    __cil_tmp33 = (unsigned long )pdata;
3565#line 189
3566    __cil_tmp34 = __cil_tmp33 + 28;
3567#line 189
3568    __cil_tmp35 = (unsigned long )pdata;
3569#line 189
3570    __cil_tmp36 = __cil_tmp35 + 28;
3571#line 189
3572    __cil_tmp37 = *((unsigned int *)__cil_tmp36);
3573#line 189
3574    *((unsigned int *)__cil_tmp34) = __cil_tmp37 | 32U;
3575  } else {
3576
3577  }
3578  }
3579  {
3580#line 190
3581  ds1553_rtc_update_alarm(pdata);
3582  }
3583#line 191
3584  return (0);
3585}
3586}
3587#line 194 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2639/dscv_tempdir/dscv/ri/43_1a/drivers/rtc/rtc-ds1553.c.p"
3588static int ds1553_rtc_read_alarm(struct device *dev , struct rtc_wkalrm *alrm ) 
3589{ struct platform_device *pdev ;
3590  struct device  const  *__mptr ;
3591  struct rtc_plat_data *pdata ;
3592  void *tmp ;
3593  struct platform_device *__cil_tmp7 ;
3594  struct platform_device  const  *__cil_tmp8 ;
3595  unsigned long __cil_tmp9 ;
3596  unsigned long __cil_tmp10 ;
3597  int __cil_tmp11 ;
3598  unsigned long __cil_tmp12 ;
3599  unsigned long __cil_tmp13 ;
3600  int __cil_tmp14 ;
3601  unsigned long __cil_tmp15 ;
3602  unsigned long __cil_tmp16 ;
3603  unsigned long __cil_tmp17 ;
3604  unsigned long __cil_tmp18 ;
3605  unsigned long __cil_tmp19 ;
3606  unsigned long __cil_tmp20 ;
3607  unsigned long __cil_tmp21 ;
3608  unsigned long __cil_tmp22 ;
3609  unsigned long __cil_tmp23 ;
3610  unsigned long __cil_tmp24 ;
3611  int __cil_tmp25 ;
3612  unsigned long __cil_tmp26 ;
3613  unsigned long __cil_tmp27 ;
3614  unsigned long __cil_tmp28 ;
3615  unsigned long __cil_tmp29 ;
3616  unsigned long __cil_tmp30 ;
3617  unsigned long __cil_tmp31 ;
3618  unsigned long __cil_tmp32 ;
3619  unsigned long __cil_tmp33 ;
3620  unsigned long __cil_tmp34 ;
3621  unsigned long __cil_tmp35 ;
3622  int __cil_tmp36 ;
3623  unsigned long __cil_tmp37 ;
3624  unsigned long __cil_tmp38 ;
3625  unsigned long __cil_tmp39 ;
3626  unsigned long __cil_tmp40 ;
3627  unsigned long __cil_tmp41 ;
3628  unsigned long __cil_tmp42 ;
3629  unsigned long __cil_tmp43 ;
3630  unsigned long __cil_tmp44 ;
3631  unsigned long __cil_tmp45 ;
3632  unsigned long __cil_tmp46 ;
3633  int __cil_tmp47 ;
3634  unsigned long __cil_tmp48 ;
3635  unsigned long __cil_tmp49 ;
3636  unsigned long __cil_tmp50 ;
3637  unsigned long __cil_tmp51 ;
3638  unsigned long __cil_tmp52 ;
3639  unsigned long __cil_tmp53 ;
3640  unsigned long __cil_tmp54 ;
3641  unsigned long __cil_tmp55 ;
3642  unsigned int __cil_tmp56 ;
3643  unsigned int __cil_tmp57 ;
3644  int __cil_tmp58 ;
3645
3646  {
3647  {
3648#line 196
3649  __mptr = (struct device  const  *)dev;
3650#line 196
3651  __cil_tmp7 = (struct platform_device *)__mptr;
3652#line 196
3653  pdev = __cil_tmp7 + 0xfffffffffffffff0UL;
3654#line 197
3655  __cil_tmp8 = (struct platform_device  const  *)pdev;
3656#line 197
3657  tmp = platform_get_drvdata(__cil_tmp8);
3658#line 197
3659  pdata = (struct rtc_plat_data *)tmp;
3660  }
3661  {
3662#line 199
3663  __cil_tmp9 = (unsigned long )pdata;
3664#line 199
3665  __cil_tmp10 = __cil_tmp9 + 24;
3666#line 199
3667  __cil_tmp11 = *((int *)__cil_tmp10);
3668#line 199
3669  if (__cil_tmp11 <= 0) {
3670#line 200
3671    return (-22);
3672  } else {
3673
3674  }
3675  }
3676  {
3677#line 201
3678  __cil_tmp12 = (unsigned long )pdata;
3679#line 201
3680  __cil_tmp13 = __cil_tmp12 + 44;
3681#line 201
3682  __cil_tmp14 = *((int *)__cil_tmp13);
3683#line 201
3684  if (0 > __cil_tmp14) {
3685#line 201
3686    __cil_tmp15 = 4 + 12;
3687#line 201
3688    __cil_tmp16 = (unsigned long )alrm;
3689#line 201
3690    __cil_tmp17 = __cil_tmp16 + __cil_tmp15;
3691#line 201
3692    *((int *)__cil_tmp17) = 0;
3693  } else {
3694#line 201
3695    __cil_tmp18 = 4 + 12;
3696#line 201
3697    __cil_tmp19 = (unsigned long )alrm;
3698#line 201
3699    __cil_tmp20 = __cil_tmp19 + __cil_tmp18;
3700#line 201
3701    __cil_tmp21 = (unsigned long )pdata;
3702#line 201
3703    __cil_tmp22 = __cil_tmp21 + 44;
3704#line 201
3705    *((int *)__cil_tmp20) = *((int *)__cil_tmp22);
3706  }
3707  }
3708  {
3709#line 202
3710  __cil_tmp23 = (unsigned long )pdata;
3711#line 202
3712  __cil_tmp24 = __cil_tmp23 + 40;
3713#line 202
3714  __cil_tmp25 = *((int *)__cil_tmp24);
3715#line 202
3716  if (0 > __cil_tmp25) {
3717#line 202
3718    __cil_tmp26 = 4 + 8;
3719#line 202
3720    __cil_tmp27 = (unsigned long )alrm;
3721#line 202
3722    __cil_tmp28 = __cil_tmp27 + __cil_tmp26;
3723#line 202
3724    *((int *)__cil_tmp28) = 0;
3725  } else {
3726#line 202
3727    __cil_tmp29 = 4 + 8;
3728#line 202
3729    __cil_tmp30 = (unsigned long )alrm;
3730#line 202
3731    __cil_tmp31 = __cil_tmp30 + __cil_tmp29;
3732#line 202
3733    __cil_tmp32 = (unsigned long )pdata;
3734#line 202
3735    __cil_tmp33 = __cil_tmp32 + 40;
3736#line 202
3737    *((int *)__cil_tmp31) = *((int *)__cil_tmp33);
3738  }
3739  }
3740  {
3741#line 203
3742  __cil_tmp34 = (unsigned long )pdata;
3743#line 203
3744  __cil_tmp35 = __cil_tmp34 + 36;
3745#line 203
3746  __cil_tmp36 = *((int *)__cil_tmp35);
3747#line 203
3748  if (0 > __cil_tmp36) {
3749#line 203
3750    __cil_tmp37 = 4 + 4;
3751#line 203
3752    __cil_tmp38 = (unsigned long )alrm;
3753#line 203
3754    __cil_tmp39 = __cil_tmp38 + __cil_tmp37;
3755#line 203
3756    *((int *)__cil_tmp39) = 0;
3757  } else {
3758#line 203
3759    __cil_tmp40 = 4 + 4;
3760#line 203
3761    __cil_tmp41 = (unsigned long )alrm;
3762#line 203
3763    __cil_tmp42 = __cil_tmp41 + __cil_tmp40;
3764#line 203
3765    __cil_tmp43 = (unsigned long )pdata;
3766#line 203
3767    __cil_tmp44 = __cil_tmp43 + 36;
3768#line 203
3769    *((int *)__cil_tmp42) = *((int *)__cil_tmp44);
3770  }
3771  }
3772  {
3773#line 204
3774  __cil_tmp45 = (unsigned long )pdata;
3775#line 204
3776  __cil_tmp46 = __cil_tmp45 + 32;
3777#line 204
3778  __cil_tmp47 = *((int *)__cil_tmp46);
3779#line 204
3780  if (0 > __cil_tmp47) {
3781#line 204
3782    __cil_tmp48 = (unsigned long )alrm;
3783#line 204
3784    __cil_tmp49 = __cil_tmp48 + 4;
3785#line 204
3786    *((int *)__cil_tmp49) = 0;
3787  } else {
3788#line 204
3789    __cil_tmp50 = (unsigned long )alrm;
3790#line 204
3791    __cil_tmp51 = __cil_tmp50 + 4;
3792#line 204
3793    __cil_tmp52 = (unsigned long )pdata;
3794#line 204
3795    __cil_tmp53 = __cil_tmp52 + 32;
3796#line 204
3797    *((int *)__cil_tmp51) = *((int *)__cil_tmp53);
3798  }
3799  }
3800#line 205
3801  __cil_tmp54 = (unsigned long )pdata;
3802#line 205
3803  __cil_tmp55 = __cil_tmp54 + 28;
3804#line 205
3805  __cil_tmp56 = *((unsigned int *)__cil_tmp55);
3806#line 205
3807  __cil_tmp57 = __cil_tmp56 & 32U;
3808#line 205
3809  __cil_tmp58 = __cil_tmp57 != 0U;
3810#line 205
3811  *((unsigned char *)alrm) = (unsigned char )__cil_tmp58;
3812#line 206
3813  return (0);
3814}
3815}
3816#line 209 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2639/dscv_tempdir/dscv/ri/43_1a/drivers/rtc/rtc-ds1553.c.p"
3817static irqreturn_t ds1553_rtc_interrupt(int irq , void *dev_id ) 
3818{ struct platform_device *pdev ;
3819  struct rtc_plat_data *pdata ;
3820  void *tmp ;
3821  void *ioaddr ;
3822  unsigned long events ;
3823  unsigned char tmp___0 ;
3824  long tmp___1 ;
3825  unsigned char tmp___2 ;
3826  struct platform_device  const  *__cil_tmp11 ;
3827  unsigned long __cil_tmp12 ;
3828  unsigned long __cil_tmp13 ;
3829  unsigned long __cil_tmp14 ;
3830  unsigned long __cil_tmp15 ;
3831  spinlock_t *__cil_tmp16 ;
3832  void const volatile   *__cil_tmp17 ;
3833  void const volatile   *__cil_tmp18 ;
3834  int __cil_tmp19 ;
3835  int __cil_tmp20 ;
3836  void const volatile   *__cil_tmp21 ;
3837  void const volatile   *__cil_tmp22 ;
3838  signed char __cil_tmp23 ;
3839  int __cil_tmp24 ;
3840  struct rtc_device *__cil_tmp25 ;
3841  unsigned long __cil_tmp26 ;
3842  struct rtc_device *__cil_tmp27 ;
3843  unsigned long __cil_tmp28 ;
3844  int __cil_tmp29 ;
3845  long __cil_tmp30 ;
3846  struct rtc_device *__cil_tmp31 ;
3847  unsigned long __cil_tmp32 ;
3848  unsigned long __cil_tmp33 ;
3849  spinlock_t *__cil_tmp34 ;
3850  int __cil_tmp35 ;
3851
3852  {
3853  {
3854#line 211
3855  pdev = (struct platform_device *)dev_id;
3856#line 212
3857  __cil_tmp11 = (struct platform_device  const  *)pdev;
3858#line 212
3859  tmp = platform_get_drvdata(__cil_tmp11);
3860#line 212
3861  pdata = (struct rtc_plat_data *)tmp;
3862#line 213
3863  __cil_tmp12 = (unsigned long )pdata;
3864#line 213
3865  __cil_tmp13 = __cil_tmp12 + 8;
3866#line 213
3867  ioaddr = *((void **)__cil_tmp13);
3868#line 214
3869  events = 0UL;
3870#line 216
3871  __cil_tmp14 = (unsigned long )pdata;
3872#line 216
3873  __cil_tmp15 = __cil_tmp14 + 48;
3874#line 216
3875  __cil_tmp16 = (spinlock_t *)__cil_tmp15;
3876#line 216
3877  spin_lock(__cil_tmp16);
3878#line 218
3879  __cil_tmp17 = (void const volatile   *)ioaddr;
3880#line 218
3881  __cil_tmp18 = __cil_tmp17 + 8176U;
3882#line 218
3883  tmp___2 = readb(__cil_tmp18);
3884  }
3885  {
3886#line 218
3887  __cil_tmp19 = (int )tmp___2;
3888#line 218
3889  __cil_tmp20 = __cil_tmp19 & 64;
3890#line 218
3891  if (__cil_tmp20 != 0) {
3892    {
3893#line 219
3894    events = 128UL;
3895#line 220
3896    __cil_tmp21 = (void const volatile   *)ioaddr;
3897#line 220
3898    __cil_tmp22 = __cil_tmp21 + 8178U;
3899#line 220
3900    tmp___0 = readb(__cil_tmp22);
3901    }
3902    {
3903#line 220
3904    __cil_tmp23 = (signed char )tmp___0;
3905#line 220
3906    __cil_tmp24 = (int )__cil_tmp23;
3907#line 220
3908    if (__cil_tmp24 < 0) {
3909#line 221
3910      events = events | 16UL;
3911    } else {
3912#line 223
3913      events = events | 32UL;
3914    }
3915    }
3916    {
3917#line 224
3918    __cil_tmp25 = (struct rtc_device *)0;
3919#line 224
3920    __cil_tmp26 = (unsigned long )__cil_tmp25;
3921#line 224
3922    __cil_tmp27 = *((struct rtc_device **)pdata);
3923#line 224
3924    __cil_tmp28 = (unsigned long )__cil_tmp27;
3925#line 224
3926    __cil_tmp29 = __cil_tmp28 != __cil_tmp26;
3927#line 224
3928    __cil_tmp30 = (long )__cil_tmp29;
3929#line 224
3930    tmp___1 = __builtin_expect(__cil_tmp30, 1L);
3931    }
3932#line 224
3933    if (tmp___1 != 0L) {
3934      {
3935#line 225
3936      __cil_tmp31 = *((struct rtc_device **)pdata);
3937#line 225
3938      rtc_update_irq(__cil_tmp31, 1UL, events);
3939      }
3940    } else {
3941
3942    }
3943  } else {
3944
3945  }
3946  }
3947  {
3948#line 227
3949  __cil_tmp32 = (unsigned long )pdata;
3950#line 227
3951  __cil_tmp33 = __cil_tmp32 + 48;
3952#line 227
3953  __cil_tmp34 = (spinlock_t *)__cil_tmp33;
3954#line 227
3955  spin_unlock(__cil_tmp34);
3956  }
3957  {
3958#line 228
3959  __cil_tmp35 = events != 0UL;
3960#line 228
3961  return ((irqreturn_t )__cil_tmp35);
3962  }
3963}
3964}
3965#line 231 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2639/dscv_tempdir/dscv/ri/43_1a/drivers/rtc/rtc-ds1553.c.p"
3966static int ds1553_rtc_alarm_irq_enable(struct device *dev , unsigned int enabled ) 
3967{ struct platform_device *pdev ;
3968  struct device  const  *__mptr ;
3969  struct rtc_plat_data *pdata ;
3970  void *tmp ;
3971  struct platform_device *__cil_tmp7 ;
3972  struct platform_device  const  *__cil_tmp8 ;
3973  unsigned long __cil_tmp9 ;
3974  unsigned long __cil_tmp10 ;
3975  int __cil_tmp11 ;
3976  unsigned long __cil_tmp12 ;
3977  unsigned long __cil_tmp13 ;
3978  unsigned long __cil_tmp14 ;
3979  unsigned long __cil_tmp15 ;
3980  unsigned int __cil_tmp16 ;
3981  unsigned long __cil_tmp17 ;
3982  unsigned long __cil_tmp18 ;
3983  unsigned long __cil_tmp19 ;
3984  unsigned long __cil_tmp20 ;
3985  unsigned int __cil_tmp21 ;
3986
3987  {
3988  {
3989#line 233
3990  __mptr = (struct device  const  *)dev;
3991#line 233
3992  __cil_tmp7 = (struct platform_device *)__mptr;
3993#line 233
3994  pdev = __cil_tmp7 + 0xfffffffffffffff0UL;
3995#line 234
3996  __cil_tmp8 = (struct platform_device  const  *)pdev;
3997#line 234
3998  tmp = platform_get_drvdata(__cil_tmp8);
3999#line 234
4000  pdata = (struct rtc_plat_data *)tmp;
4001  }
4002  {
4003#line 236
4004  __cil_tmp9 = (unsigned long )pdata;
4005#line 236
4006  __cil_tmp10 = __cil_tmp9 + 24;
4007#line 236
4008  __cil_tmp11 = *((int *)__cil_tmp10);
4009#line 236
4010  if (__cil_tmp11 <= 0) {
4011#line 237
4012    return (-22);
4013  } else {
4014
4015  }
4016  }
4017#line 238
4018  if (enabled != 0U) {
4019#line 239
4020    __cil_tmp12 = (unsigned long )pdata;
4021#line 239
4022    __cil_tmp13 = __cil_tmp12 + 28;
4023#line 239
4024    __cil_tmp14 = (unsigned long )pdata;
4025#line 239
4026    __cil_tmp15 = __cil_tmp14 + 28;
4027#line 239
4028    __cil_tmp16 = *((unsigned int *)__cil_tmp15);
4029#line 239
4030    *((unsigned int *)__cil_tmp13) = __cil_tmp16 | 32U;
4031  } else {
4032#line 241
4033    __cil_tmp17 = (unsigned long )pdata;
4034#line 241
4035    __cil_tmp18 = __cil_tmp17 + 28;
4036#line 241
4037    __cil_tmp19 = (unsigned long )pdata;
4038#line 241
4039    __cil_tmp20 = __cil_tmp19 + 28;
4040#line 241
4041    __cil_tmp21 = *((unsigned int *)__cil_tmp20);
4042#line 241
4043    *((unsigned int *)__cil_tmp18) = __cil_tmp21 & 4294967263U;
4044  }
4045  {
4046#line 242
4047  ds1553_rtc_update_alarm(pdata);
4048  }
4049#line 243
4050  return (0);
4051}
4052}
4053#line 246 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2639/dscv_tempdir/dscv/ri/43_1a/drivers/rtc/rtc-ds1553.c.p"
4054static struct rtc_class_ops  const  ds1553_rtc_ops  = 
4055#line 246
4056     {(int (*)(struct device * ))0, (void (*)(struct device * ))0, (int (*)(struct device * ,
4057                                                                          unsigned int  ,
4058                                                                          unsigned long  ))0,
4059    & ds1553_rtc_read_time, & ds1553_rtc_set_time, & ds1553_rtc_read_alarm, & ds1553_rtc_set_alarm,
4060    (int (*)(struct device * , struct seq_file * ))0, (int (*)(struct device * , unsigned long  ))0,
4061    (int (*)(struct device * , int  ))0, & ds1553_rtc_alarm_irq_enable};
4062#line 254 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2639/dscv_tempdir/dscv/ri/43_1a/drivers/rtc/rtc-ds1553.c.p"
4063static ssize_t ds1553_nvram_read(struct file *filp , struct kobject *kobj , struct bin_attribute *bin_attr ,
4064                                 char *buf , loff_t pos , size_t size ) 
4065{ struct device *dev ;
4066  struct kobject  const  *__mptr ;
4067  struct platform_device *pdev ;
4068  struct device  const  *__mptr___0 ;
4069  struct rtc_plat_data *pdata ;
4070  void *tmp ;
4071  void *ioaddr ;
4072  ssize_t count ;
4073  char *tmp___0 ;
4074  loff_t tmp___1 ;
4075  unsigned char tmp___2 ;
4076  struct device *__cil_tmp18 ;
4077  struct platform_device *__cil_tmp19 ;
4078  struct platform_device  const  *__cil_tmp20 ;
4079  unsigned long __cil_tmp21 ;
4080  unsigned long __cil_tmp22 ;
4081  unsigned long __cil_tmp23 ;
4082  void const volatile   *__cil_tmp24 ;
4083  void const volatile   *__cil_tmp25 ;
4084
4085  {
4086  {
4087#line 258
4088  __mptr = (struct kobject  const  *)kobj;
4089#line 258
4090  __cil_tmp18 = (struct device *)__mptr;
4091#line 258
4092  dev = __cil_tmp18 + 0xfffffffffffffff0UL;
4093#line 259
4094  __mptr___0 = (struct device  const  *)dev;
4095#line 259
4096  __cil_tmp19 = (struct platform_device *)__mptr___0;
4097#line 259
4098  pdev = __cil_tmp19 + 0xfffffffffffffff0UL;
4099#line 260
4100  __cil_tmp20 = (struct platform_device  const  *)pdev;
4101#line 260
4102  tmp = platform_get_drvdata(__cil_tmp20);
4103#line 260
4104  pdata = (struct rtc_plat_data *)tmp;
4105#line 261
4106  __cil_tmp21 = (unsigned long )pdata;
4107#line 261
4108  __cil_tmp22 = __cil_tmp21 + 8;
4109#line 261
4110  ioaddr = *((void **)__cil_tmp22);
4111#line 264
4112  count = 0L;
4113  }
4114#line 264
4115  goto ldv_21044;
4116  ldv_21043: 
4117  {
4118#line 265
4119  tmp___0 = buf;
4120#line 265
4121  buf = buf + 1;
4122#line 265
4123  tmp___1 = pos;
4124#line 265
4125  pos = pos + 1LL;
4126#line 265
4127  __cil_tmp23 = (unsigned long )tmp___1;
4128#line 265
4129  __cil_tmp24 = (void const volatile   *)ioaddr;
4130#line 265
4131  __cil_tmp25 = __cil_tmp24 + __cil_tmp23;
4132#line 265
4133  tmp___2 = readb(__cil_tmp25);
4134#line 265
4135  *tmp___0 = (char )tmp___2;
4136#line 264
4137  count = count + 1L;
4138#line 264
4139  size = size - 1UL;
4140  }
4141  ldv_21044: ;
4142#line 264
4143  if (size != 0UL) {
4144#line 264
4145    if (pos <= 8175LL) {
4146#line 265
4147      goto ldv_21043;
4148    } else {
4149#line 267
4150      goto ldv_21045;
4151    }
4152  } else {
4153#line 267
4154    goto ldv_21045;
4155  }
4156  ldv_21045: ;
4157#line 266
4158  return (count);
4159}
4160}
4161#line 269 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2639/dscv_tempdir/dscv/ri/43_1a/drivers/rtc/rtc-ds1553.c.p"
4162static ssize_t ds1553_nvram_write(struct file *filp , struct kobject *kobj , struct bin_attribute *bin_attr ,
4163                                  char *buf , loff_t pos , size_t size ) 
4164{ struct device *dev ;
4165  struct kobject  const  *__mptr ;
4166  struct platform_device *pdev ;
4167  struct device  const  *__mptr___0 ;
4168  struct rtc_plat_data *pdata ;
4169  void *tmp ;
4170  void *ioaddr ;
4171  ssize_t count ;
4172  loff_t tmp___0 ;
4173  char *tmp___1 ;
4174  struct device *__cil_tmp17 ;
4175  struct platform_device *__cil_tmp18 ;
4176  struct platform_device  const  *__cil_tmp19 ;
4177  unsigned long __cil_tmp20 ;
4178  unsigned long __cil_tmp21 ;
4179  char __cil_tmp22 ;
4180  unsigned char __cil_tmp23 ;
4181  int __cil_tmp24 ;
4182  unsigned char __cil_tmp25 ;
4183  unsigned long __cil_tmp26 ;
4184  void volatile   *__cil_tmp27 ;
4185  void volatile   *__cil_tmp28 ;
4186
4187  {
4188  {
4189#line 273
4190  __mptr = (struct kobject  const  *)kobj;
4191#line 273
4192  __cil_tmp17 = (struct device *)__mptr;
4193#line 273
4194  dev = __cil_tmp17 + 0xfffffffffffffff0UL;
4195#line 274
4196  __mptr___0 = (struct device  const  *)dev;
4197#line 274
4198  __cil_tmp18 = (struct platform_device *)__mptr___0;
4199#line 274
4200  pdev = __cil_tmp18 + 0xfffffffffffffff0UL;
4201#line 275
4202  __cil_tmp19 = (struct platform_device  const  *)pdev;
4203#line 275
4204  tmp = platform_get_drvdata(__cil_tmp19);
4205#line 275
4206  pdata = (struct rtc_plat_data *)tmp;
4207#line 276
4208  __cil_tmp20 = (unsigned long )pdata;
4209#line 276
4210  __cil_tmp21 = __cil_tmp20 + 8;
4211#line 276
4212  ioaddr = *((void **)__cil_tmp21);
4213#line 279
4214  count = 0L;
4215  }
4216#line 279
4217  goto ldv_21064;
4218  ldv_21063: 
4219  {
4220#line 280
4221  tmp___0 = pos;
4222#line 280
4223  pos = pos + 1LL;
4224#line 280
4225  tmp___1 = buf;
4226#line 280
4227  buf = buf + 1;
4228#line 280
4229  __cil_tmp22 = *tmp___1;
4230#line 280
4231  __cil_tmp23 = (unsigned char )__cil_tmp22;
4232#line 280
4233  __cil_tmp24 = (int )__cil_tmp23;
4234#line 280
4235  __cil_tmp25 = (unsigned char )__cil_tmp24;
4236#line 280
4237  __cil_tmp26 = (unsigned long )tmp___0;
4238#line 280
4239  __cil_tmp27 = (void volatile   *)ioaddr;
4240#line 280
4241  __cil_tmp28 = __cil_tmp27 + __cil_tmp26;
4242#line 280
4243  writeb(__cil_tmp25, __cil_tmp28);
4244#line 279
4245  count = count + 1L;
4246#line 279
4247  size = size - 1UL;
4248  }
4249  ldv_21064: ;
4250#line 279
4251  if (size != 0UL) {
4252#line 279
4253    if (pos <= 8175LL) {
4254#line 280
4255      goto ldv_21063;
4256    } else {
4257#line 282
4258      goto ldv_21065;
4259    }
4260  } else {
4261#line 282
4262    goto ldv_21065;
4263  }
4264  ldv_21065: ;
4265#line 281
4266  return (count);
4267}
4268}
4269#line 284 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2639/dscv_tempdir/dscv/ri/43_1a/drivers/rtc/rtc-ds1553.c.p"
4270static struct bin_attribute ds1553_nvram_attr  =    {{"nvram", (umode_t )420U, (struct lock_class_key *)0, {{{(char)0}, {(char)0},
4271                                                            {(char)0}, {(char)0},
4272                                                            {(char)0}, {(char)0},
4273                                                            {(char)0}, {(char)0}}}},
4274    8176UL, (void *)0, & ds1553_nvram_read, & ds1553_nvram_write, (int (*)(struct file * ,
4275                                                                           struct kobject * ,
4276                                                                           struct bin_attribute * ,
4277                                                                           struct vm_area_struct * ))0};
4278#line 294 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2639/dscv_tempdir/dscv/ri/43_1a/drivers/rtc/rtc-ds1553.c.p"
4279static int ds1553_rtc_probe(struct platform_device *pdev ) 
4280{ struct rtc_device *rtc ;
4281  struct resource *res ;
4282  unsigned int cen ;
4283  unsigned int sec ;
4284  struct rtc_plat_data *pdata ;
4285  void *ioaddr ;
4286  int ret ;
4287  void *tmp ;
4288  struct resource *tmp___0 ;
4289  unsigned char tmp___1 ;
4290  unsigned char tmp___2 ;
4291  unsigned char tmp___3 ;
4292  struct lock_class_key __key ;
4293  int tmp___4 ;
4294  long tmp___5 ;
4295  long tmp___6 ;
4296  struct resource *__cil_tmp18 ;
4297  unsigned long __cil_tmp19 ;
4298  unsigned long __cil_tmp20 ;
4299  unsigned long __cil_tmp21 ;
4300  unsigned long __cil_tmp22 ;
4301  struct device *__cil_tmp23 ;
4302  struct rtc_plat_data *__cil_tmp24 ;
4303  unsigned long __cil_tmp25 ;
4304  unsigned long __cil_tmp26 ;
4305  unsigned long __cil_tmp27 ;
4306  unsigned long __cil_tmp28 ;
4307  struct device *__cil_tmp29 ;
4308  resource_size_t __cil_tmp30 ;
4309  char const   *__cil_tmp31 ;
4310  struct resource *__cil_tmp32 ;
4311  unsigned long __cil_tmp33 ;
4312  unsigned long __cil_tmp34 ;
4313  unsigned long __cil_tmp35 ;
4314  unsigned long __cil_tmp36 ;
4315  struct device *__cil_tmp37 ;
4316  resource_size_t __cil_tmp38 ;
4317  void *__cil_tmp39 ;
4318  unsigned long __cil_tmp40 ;
4319  unsigned long __cil_tmp41 ;
4320  unsigned long __cil_tmp42 ;
4321  unsigned long __cil_tmp43 ;
4322  unsigned long __cil_tmp44 ;
4323  unsigned long __cil_tmp45 ;
4324  void const volatile   *__cil_tmp46 ;
4325  void const volatile   *__cil_tmp47 ;
4326  unsigned int __cil_tmp48 ;
4327  void const volatile   *__cil_tmp49 ;
4328  void const volatile   *__cil_tmp50 ;
4329  unsigned int __cil_tmp51 ;
4330  void volatile   *__cil_tmp52 ;
4331  void volatile   *__cil_tmp53 ;
4332  unsigned char __cil_tmp54 ;
4333  int __cil_tmp55 ;
4334  unsigned char __cil_tmp56 ;
4335  void volatile   *__cil_tmp57 ;
4336  void volatile   *__cil_tmp58 ;
4337  unsigned char __cil_tmp59 ;
4338  int __cil_tmp60 ;
4339  int __cil_tmp61 ;
4340  unsigned char __cil_tmp62 ;
4341  void volatile   *__cil_tmp63 ;
4342  void volatile   *__cil_tmp64 ;
4343  void const volatile   *__cil_tmp65 ;
4344  void const volatile   *__cil_tmp66 ;
4345  int __cil_tmp67 ;
4346  int __cil_tmp68 ;
4347  unsigned long __cil_tmp69 ;
4348  unsigned long __cil_tmp70 ;
4349  struct device *__cil_tmp71 ;
4350  struct device  const  *__cil_tmp72 ;
4351  unsigned long __cil_tmp73 ;
4352  unsigned long __cil_tmp74 ;
4353  spinlock_t *__cil_tmp75 ;
4354  unsigned long __cil_tmp76 ;
4355  unsigned long __cil_tmp77 ;
4356  struct raw_spinlock *__cil_tmp78 ;
4357  unsigned long __cil_tmp79 ;
4358  unsigned long __cil_tmp80 ;
4359  void *__cil_tmp81 ;
4360  unsigned long __cil_tmp82 ;
4361  unsigned long __cil_tmp83 ;
4362  int __cil_tmp84 ;
4363  void volatile   *__cil_tmp85 ;
4364  void volatile   *__cil_tmp86 ;
4365  unsigned long __cil_tmp87 ;
4366  unsigned long __cil_tmp88 ;
4367  struct device *__cil_tmp89 ;
4368  unsigned long __cil_tmp90 ;
4369  unsigned long __cil_tmp91 ;
4370  int __cil_tmp92 ;
4371  unsigned int __cil_tmp93 ;
4372  char const   *__cil_tmp94 ;
4373  void *__cil_tmp95 ;
4374  unsigned long __cil_tmp96 ;
4375  unsigned long __cil_tmp97 ;
4376  struct device *__cil_tmp98 ;
4377  struct device  const  *__cil_tmp99 ;
4378  unsigned long __cil_tmp100 ;
4379  unsigned long __cil_tmp101 ;
4380  char const   *__cil_tmp102 ;
4381  unsigned long __cil_tmp103 ;
4382  unsigned long __cil_tmp104 ;
4383  struct device *__cil_tmp105 ;
4384  void const   *__cil_tmp106 ;
4385  void const   *__cil_tmp107 ;
4386  unsigned long __cil_tmp108 ;
4387  unsigned long __cil_tmp109 ;
4388  unsigned long __cil_tmp110 ;
4389  struct kobject *__cil_tmp111 ;
4390  struct bin_attribute  const  *__cil_tmp112 ;
4391
4392  {
4393  {
4394#line 301
4395  ret = 0;
4396#line 303
4397  res = platform_get_resource(pdev, 512U, 0U);
4398  }
4399  {
4400#line 304
4401  __cil_tmp18 = (struct resource *)0;
4402#line 304
4403  __cil_tmp19 = (unsigned long )__cil_tmp18;
4404#line 304
4405  __cil_tmp20 = (unsigned long )res;
4406#line 304
4407  if (__cil_tmp20 == __cil_tmp19) {
4408#line 305
4409    return (-19);
4410  } else {
4411
4412  }
4413  }
4414  {
4415#line 306
4416  __cil_tmp21 = (unsigned long )pdev;
4417#line 306
4418  __cil_tmp22 = __cil_tmp21 + 16;
4419#line 306
4420  __cil_tmp23 = (struct device *)__cil_tmp22;
4421#line 306
4422  tmp = devm_kzalloc(__cil_tmp23, 120UL, 208U);
4423#line 306
4424  pdata = (struct rtc_plat_data *)tmp;
4425  }
4426  {
4427#line 307
4428  __cil_tmp24 = (struct rtc_plat_data *)0;
4429#line 307
4430  __cil_tmp25 = (unsigned long )__cil_tmp24;
4431#line 307
4432  __cil_tmp26 = (unsigned long )pdata;
4433#line 307
4434  if (__cil_tmp26 == __cil_tmp25) {
4435#line 308
4436    return (-12);
4437  } else {
4438
4439  }
4440  }
4441  {
4442#line 309
4443  __cil_tmp27 = (unsigned long )pdev;
4444#line 309
4445  __cil_tmp28 = __cil_tmp27 + 16;
4446#line 309
4447  __cil_tmp29 = (struct device *)__cil_tmp28;
4448#line 309
4449  __cil_tmp30 = *((resource_size_t *)res);
4450#line 309
4451  __cil_tmp31 = *((char const   **)pdev);
4452#line 309
4453  tmp___0 = __devm_request_region(__cil_tmp29, & iomem_resource, __cil_tmp30, 8192ULL,
4454                                  __cil_tmp31);
4455  }
4456  {
4457#line 309
4458  __cil_tmp32 = (struct resource *)0;
4459#line 309
4460  __cil_tmp33 = (unsigned long )__cil_tmp32;
4461#line 309
4462  __cil_tmp34 = (unsigned long )tmp___0;
4463#line 309
4464  if (__cil_tmp34 == __cil_tmp33) {
4465#line 311
4466    return (-16);
4467  } else {
4468
4469  }
4470  }
4471  {
4472#line 313
4473  __cil_tmp35 = (unsigned long )pdev;
4474#line 313
4475  __cil_tmp36 = __cil_tmp35 + 16;
4476#line 313
4477  __cil_tmp37 = (struct device *)__cil_tmp36;
4478#line 313
4479  __cil_tmp38 = *((resource_size_t *)res);
4480#line 313
4481  ioaddr = devm_ioremap(__cil_tmp37, __cil_tmp38, 8192UL);
4482  }
4483  {
4484#line 314
4485  __cil_tmp39 = (void *)0;
4486#line 314
4487  __cil_tmp40 = (unsigned long )__cil_tmp39;
4488#line 314
4489  __cil_tmp41 = (unsigned long )ioaddr;
4490#line 314
4491  if (__cil_tmp41 == __cil_tmp40) {
4492#line 315
4493    return (-12);
4494  } else {
4495
4496  }
4497  }
4498  {
4499#line 316
4500  __cil_tmp42 = (unsigned long )pdata;
4501#line 316
4502  __cil_tmp43 = __cil_tmp42 + 8;
4503#line 316
4504  *((void **)__cil_tmp43) = ioaddr;
4505#line 317
4506  __cil_tmp44 = (unsigned long )pdata;
4507#line 317
4508  __cil_tmp45 = __cil_tmp44 + 24;
4509#line 317
4510  *((int *)__cil_tmp45) = platform_get_irq(pdev, 0U);
4511#line 320
4512  __cil_tmp46 = (void const volatile   *)ioaddr;
4513#line 320
4514  __cil_tmp47 = __cil_tmp46 + 8185U;
4515#line 320
4516  tmp___1 = readb(__cil_tmp47);
4517#line 320
4518  sec = (unsigned int )tmp___1;
4519  }
4520  {
4521#line 321
4522  __cil_tmp48 = sec & 128U;
4523#line 321
4524  if (__cil_tmp48 != 0U) {
4525    {
4526#line 322
4527    sec = sec & 127U;
4528#line 323
4529    __cil_tmp49 = (void const volatile   *)ioaddr;
4530#line 323
4531    __cil_tmp50 = __cil_tmp49 + 8184U;
4532#line 323
4533    tmp___2 = readb(__cil_tmp50);
4534#line 323
4535    __cil_tmp51 = (unsigned int )tmp___2;
4536#line 323
4537    cen = __cil_tmp51 & 63U;
4538#line 324
4539    __cil_tmp52 = (void volatile   *)ioaddr;
4540#line 324
4541    __cil_tmp53 = __cil_tmp52 + 8184U;
4542#line 324
4543    writeb((unsigned char)128, __cil_tmp53);
4544#line 325
4545    __cil_tmp54 = (unsigned char )sec;
4546#line 325
4547    __cil_tmp55 = (int )__cil_tmp54;
4548#line 325
4549    __cil_tmp56 = (unsigned char )__cil_tmp55;
4550#line 325
4551    __cil_tmp57 = (void volatile   *)ioaddr;
4552#line 325
4553    __cil_tmp58 = __cil_tmp57 + 8185U;
4554#line 325
4555    writeb(__cil_tmp56, __cil_tmp58);
4556#line 326
4557    __cil_tmp59 = (unsigned char )cen;
4558#line 326
4559    __cil_tmp60 = (int )__cil_tmp59;
4560#line 326
4561    __cil_tmp61 = __cil_tmp60 & 63;
4562#line 326
4563    __cil_tmp62 = (unsigned char )__cil_tmp61;
4564#line 326
4565    __cil_tmp63 = (void volatile   *)ioaddr;
4566#line 326
4567    __cil_tmp64 = __cil_tmp63 + 8184U;
4568#line 326
4569    writeb(__cil_tmp62, __cil_tmp64);
4570    }
4571  } else {
4572
4573  }
4574  }
4575  {
4576#line 328
4577  __cil_tmp65 = (void const volatile   *)ioaddr;
4578#line 328
4579  __cil_tmp66 = __cil_tmp65 + 8176U;
4580#line 328
4581  tmp___3 = readb(__cil_tmp66);
4582  }
4583  {
4584#line 328
4585  __cil_tmp67 = (int )tmp___3;
4586#line 328
4587  __cil_tmp68 = __cil_tmp67 & 16;
4588#line 328
4589  if (__cil_tmp68 != 0) {
4590    {
4591#line 329
4592    __cil_tmp69 = (unsigned long )pdev;
4593#line 329
4594    __cil_tmp70 = __cil_tmp69 + 16;
4595#line 329
4596    __cil_tmp71 = (struct device *)__cil_tmp70;
4597#line 329
4598    __cil_tmp72 = (struct device  const  *)__cil_tmp71;
4599#line 329
4600    dev_warn(__cil_tmp72, "voltage-low detected.\n");
4601    }
4602  } else {
4603
4604  }
4605  }
4606  {
4607#line 331
4608  __cil_tmp73 = (unsigned long )pdata;
4609#line 331
4610  __cil_tmp74 = __cil_tmp73 + 48;
4611#line 331
4612  __cil_tmp75 = (spinlock_t *)__cil_tmp74;
4613#line 331
4614  spinlock_check(__cil_tmp75);
4615#line 331
4616  __cil_tmp76 = (unsigned long )pdata;
4617#line 331
4618  __cil_tmp77 = __cil_tmp76 + 48;
4619#line 331
4620  __cil_tmp78 = (struct raw_spinlock *)__cil_tmp77;
4621#line 331
4622  __raw_spin_lock_init(__cil_tmp78, "&(&pdata->lock)->rlock", & __key);
4623#line 332
4624  __cil_tmp79 = (unsigned long )pdata;
4625#line 332
4626  __cil_tmp80 = __cil_tmp79 + 16;
4627#line 332
4628  *((unsigned long *)__cil_tmp80) = (unsigned long )jiffies;
4629#line 333
4630  __cil_tmp81 = (void *)pdata;
4631#line 333
4632  platform_set_drvdata(pdev, __cil_tmp81);
4633  }
4634  {
4635#line 334
4636  __cil_tmp82 = (unsigned long )pdata;
4637#line 334
4638  __cil_tmp83 = __cil_tmp82 + 24;
4639#line 334
4640  __cil_tmp84 = *((int *)__cil_tmp83);
4641#line 334
4642  if (__cil_tmp84 > 0) {
4643    {
4644#line 335
4645    __cil_tmp85 = (void volatile   *)ioaddr;
4646#line 335
4647    __cil_tmp86 = __cil_tmp85 + 8182U;
4648#line 335
4649    writeb((unsigned char)0, __cil_tmp86);
4650#line 336
4651    __cil_tmp87 = (unsigned long )pdev;
4652#line 336
4653    __cil_tmp88 = __cil_tmp87 + 16;
4654#line 336
4655    __cil_tmp89 = (struct device *)__cil_tmp88;
4656#line 336
4657    __cil_tmp90 = (unsigned long )pdata;
4658#line 336
4659    __cil_tmp91 = __cil_tmp90 + 24;
4660#line 336
4661    __cil_tmp92 = *((int *)__cil_tmp91);
4662#line 336
4663    __cil_tmp93 = (unsigned int )__cil_tmp92;
4664#line 336
4665    __cil_tmp94 = *((char const   **)pdev);
4666#line 336
4667    __cil_tmp95 = (void *)pdev;
4668#line 336
4669    tmp___4 = devm_request_irq(__cil_tmp89, __cil_tmp93, & ds1553_rtc_interrupt, 0UL,
4670                               __cil_tmp94, __cil_tmp95);
4671    }
4672#line 336
4673    if (tmp___4 < 0) {
4674      {
4675#line 339
4676      __cil_tmp96 = (unsigned long )pdev;
4677#line 339
4678      __cil_tmp97 = __cil_tmp96 + 16;
4679#line 339
4680      __cil_tmp98 = (struct device *)__cil_tmp97;
4681#line 339
4682      __cil_tmp99 = (struct device  const  *)__cil_tmp98;
4683#line 339
4684      dev_warn(__cil_tmp99, "interrupt not available.\n");
4685#line 340
4686      __cil_tmp100 = (unsigned long )pdata;
4687#line 340
4688      __cil_tmp101 = __cil_tmp100 + 24;
4689#line 340
4690      *((int *)__cil_tmp101) = 0;
4691      }
4692    } else {
4693
4694    }
4695  } else {
4696
4697  }
4698  }
4699  {
4700#line 344
4701  __cil_tmp102 = *((char const   **)pdev);
4702#line 344
4703  __cil_tmp103 = (unsigned long )pdev;
4704#line 344
4705  __cil_tmp104 = __cil_tmp103 + 16;
4706#line 344
4707  __cil_tmp105 = (struct device *)__cil_tmp104;
4708#line 344
4709  rtc = rtc_device_register(__cil_tmp102, __cil_tmp105, & ds1553_rtc_ops, & __this_module);
4710#line 346
4711  __cil_tmp106 = (void const   *)rtc;
4712#line 346
4713  tmp___6 = IS_ERR(__cil_tmp106);
4714  }
4715#line 346
4716  if (tmp___6 != 0L) {
4717    {
4718#line 347
4719    __cil_tmp107 = (void const   *)rtc;
4720#line 347
4721    tmp___5 = PTR_ERR(__cil_tmp107);
4722    }
4723#line 347
4724    return ((int )tmp___5);
4725  } else {
4726
4727  }
4728  {
4729#line 348
4730  *((struct rtc_device **)pdata) = rtc;
4731#line 350
4732  __cil_tmp108 = 16 + 16;
4733#line 350
4734  __cil_tmp109 = (unsigned long )pdev;
4735#line 350
4736  __cil_tmp110 = __cil_tmp109 + __cil_tmp108;
4737#line 350
4738  __cil_tmp111 = (struct kobject *)__cil_tmp110;
4739#line 350
4740  __cil_tmp112 = (struct bin_attribute  const  *)(& ds1553_nvram_attr);
4741#line 350
4742  ret = sysfs_create_bin_file(__cil_tmp111, __cil_tmp112);
4743  }
4744#line 351
4745  if (ret != 0) {
4746    {
4747#line 352
4748    rtc_device_unregister(rtc);
4749    }
4750  } else {
4751
4752  }
4753#line 353
4754  return (ret);
4755}
4756}
4757#line 402
4758extern void ldv_check_final_state(void) ;
4759#line 405
4760extern void ldv_check_return_value(int  ) ;
4761#line 408
4762extern void ldv_initialize(void) ;
4763#line 411
4764extern int __VERIFIER_nondet_int(void) ;
4765#line 414 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2639/dscv_tempdir/dscv/ri/43_1a/drivers/rtc/rtc-ds1553.c.p"
4766int LDV_IN_INTERRUPT  ;
4767#line 417 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2639/dscv_tempdir/dscv/ri/43_1a/drivers/rtc/rtc-ds1553.c.p"
4768void main(void) 
4769{ struct device *var_group1 ;
4770  struct rtc_time *var_group2 ;
4771  struct rtc_wkalrm *var_group3 ;
4772  unsigned int var_ds1553_rtc_alarm_irq_enable_6_p1 ;
4773  struct file *var_group4 ;
4774  struct kobject *var_group5 ;
4775  struct bin_attribute *var_ds1553_nvram_read_7_p2 ;
4776  char *var_ds1553_nvram_read_7_p3 ;
4777  loff_t var_ds1553_nvram_read_7_p4 ;
4778  size_t var_ds1553_nvram_read_7_p5 ;
4779  struct bin_attribute *var_ds1553_nvram_write_8_p2 ;
4780  char *var_ds1553_nvram_write_8_p3 ;
4781  loff_t var_ds1553_nvram_write_8_p4 ;
4782  size_t var_ds1553_nvram_write_8_p5 ;
4783  struct platform_device *var_group6 ;
4784  int res_ds1553_rtc_probe_9 ;
4785  int var_ds1553_rtc_interrupt_5_p0 ;
4786  void *var_ds1553_rtc_interrupt_5_p1 ;
4787  int ldv_s_ds1553_rtc_driver_platform_driver ;
4788  int tmp ;
4789  int tmp___0 ;
4790
4791  {
4792  {
4793#line 766
4794  ldv_s_ds1553_rtc_driver_platform_driver = 0;
4795#line 752
4796  LDV_IN_INTERRUPT = 1;
4797#line 761
4798  ldv_initialize();
4799  }
4800#line 771
4801  goto ldv_21148;
4802  ldv_21147: 
4803  {
4804#line 775
4805  tmp = __VERIFIER_nondet_int();
4806  }
4807#line 777
4808  if (tmp == 0) {
4809#line 777
4810    goto case_0;
4811  } else
4812#line 822
4813  if (tmp == 1) {
4814#line 822
4815    goto case_1;
4816  } else
4817#line 867
4818  if (tmp == 2) {
4819#line 867
4820    goto case_2;
4821  } else
4822#line 912
4823  if (tmp == 3) {
4824#line 912
4825    goto case_3;
4826  } else
4827#line 957
4828  if (tmp == 4) {
4829#line 957
4830    goto case_4;
4831  } else
4832#line 1002
4833  if (tmp == 5) {
4834#line 1002
4835    goto case_5;
4836  } else
4837#line 1047
4838  if (tmp == 6) {
4839#line 1047
4840    goto case_6;
4841  } else
4842#line 1092
4843  if (tmp == 7) {
4844#line 1092
4845    goto case_7;
4846  } else
4847#line 1140
4848  if (tmp == 8) {
4849#line 1140
4850    goto case_8;
4851  } else {
4852    {
4853#line 1185
4854    goto switch_default;
4855#line 775
4856    if (0) {
4857      case_0: /* CIL Label */ 
4858      {
4859#line 814
4860      ds1553_rtc_read_time(var_group1, var_group2);
4861      }
4862#line 821
4863      goto ldv_21136;
4864      case_1: /* CIL Label */ 
4865      {
4866#line 859
4867      ds1553_rtc_set_time(var_group1, var_group2);
4868      }
4869#line 866
4870      goto ldv_21136;
4871      case_2: /* CIL Label */ 
4872      {
4873#line 904
4874      ds1553_rtc_read_alarm(var_group1, var_group3);
4875      }
4876#line 911
4877      goto ldv_21136;
4878      case_3: /* CIL Label */ 
4879      {
4880#line 949
4881      ds1553_rtc_set_alarm(var_group1, var_group3);
4882      }
4883#line 956
4884      goto ldv_21136;
4885      case_4: /* CIL Label */ 
4886      {
4887#line 994
4888      ds1553_rtc_alarm_irq_enable(var_group1, var_ds1553_rtc_alarm_irq_enable_6_p1);
4889      }
4890#line 1001
4891      goto ldv_21136;
4892      case_5: /* CIL Label */ 
4893      {
4894#line 1039
4895      ds1553_nvram_read(var_group4, var_group5, var_ds1553_nvram_read_7_p2, var_ds1553_nvram_read_7_p3,
4896                        var_ds1553_nvram_read_7_p4, var_ds1553_nvram_read_7_p5);
4897      }
4898#line 1046
4899      goto ldv_21136;
4900      case_6: /* CIL Label */ 
4901      {
4902#line 1084
4903      ds1553_nvram_write(var_group4, var_group5, var_ds1553_nvram_write_8_p2, var_ds1553_nvram_write_8_p3,
4904                         var_ds1553_nvram_write_8_p4, var_ds1553_nvram_write_8_p5);
4905      }
4906#line 1091
4907      goto ldv_21136;
4908      case_7: /* CIL Label */ ;
4909#line 1095
4910      if (ldv_s_ds1553_rtc_driver_platform_driver == 0) {
4911        {
4912#line 1129
4913        res_ds1553_rtc_probe_9 = ds1553_rtc_probe(var_group6);
4914#line 1130
4915        ldv_check_return_value(res_ds1553_rtc_probe_9);
4916        }
4917#line 1131
4918        if (res_ds1553_rtc_probe_9 != 0) {
4919#line 1132
4920          goto ldv_module_exit;
4921        } else {
4922
4923        }
4924#line 1133
4925        ldv_s_ds1553_rtc_driver_platform_driver = 0;
4926      } else {
4927
4928      }
4929#line 1139
4930      goto ldv_21136;
4931      case_8: /* CIL Label */ 
4932      {
4933#line 1143
4934      LDV_IN_INTERRUPT = 2;
4935#line 1177
4936      ds1553_rtc_interrupt(var_ds1553_rtc_interrupt_5_p0, var_ds1553_rtc_interrupt_5_p1);
4937#line 1178
4938      LDV_IN_INTERRUPT = 1;
4939      }
4940#line 1184
4941      goto ldv_21136;
4942      switch_default: /* CIL Label */ ;
4943#line 1185
4944      goto ldv_21136;
4945    } else {
4946      switch_break: /* CIL Label */ ;
4947    }
4948    }
4949  }
4950  ldv_21136: ;
4951  ldv_21148: 
4952  {
4953#line 771
4954  tmp___0 = __VERIFIER_nondet_int();
4955  }
4956#line 771
4957  if (tmp___0 != 0) {
4958#line 773
4959    goto ldv_21147;
4960  } else
4961#line 771
4962  if (ldv_s_ds1553_rtc_driver_platform_driver != 0) {
4963#line 773
4964    goto ldv_21147;
4965  } else {
4966#line 775
4967    goto ldv_21149;
4968  }
4969  ldv_21149: ;
4970  ldv_module_exit: ;
4971  {
4972#line 1194
4973  ldv_check_final_state();
4974  }
4975#line 1197
4976  return;
4977}
4978}
4979#line 5 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2639/dscv_tempdir/dscv/ri/43_1a/kernel-rules/files/engine-blast-assert.h"
4980void ldv_blast_assert(void) 
4981{ 
4982
4983  {
4984  ERROR: ;
4985#line 6
4986  goto ERROR;
4987}
4988}
4989#line 6 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2639/dscv_tempdir/dscv/ri/43_1a/kernel-rules/files/engine-blast.h"
4990extern int __VERIFIER_nondet_int(void) ;
4991#line 1218 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2639/dscv_tempdir/dscv/ri/43_1a/drivers/rtc/rtc-ds1553.c.p"
4992int ldv_spin  =    0;
4993#line 1222 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2639/dscv_tempdir/dscv/ri/43_1a/drivers/rtc/rtc-ds1553.c.p"
4994void ldv_check_alloc_flags(gfp_t flags ) 
4995{ 
4996
4997  {
4998#line 1225
4999  if (ldv_spin != 0) {
5000#line 1225
5001    if (flags != 32U) {
5002      {
5003#line 1225
5004      ldv_blast_assert();
5005      }
5006    } else {
5007
5008    }
5009  } else {
5010
5011  }
5012#line 1228
5013  return;
5014}
5015}
5016#line 1228
5017extern struct page *ldv_some_page(void) ;
5018#line 1231 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2639/dscv_tempdir/dscv/ri/43_1a/drivers/rtc/rtc-ds1553.c.p"
5019struct page *ldv_check_alloc_flags_and_return_some_page(gfp_t flags ) 
5020{ struct page *tmp ;
5021
5022  {
5023#line 1234
5024  if (ldv_spin != 0) {
5025#line 1234
5026    if (flags != 32U) {
5027      {
5028#line 1234
5029      ldv_blast_assert();
5030      }
5031    } else {
5032
5033    }
5034  } else {
5035
5036  }
5037  {
5038#line 1236
5039  tmp = ldv_some_page();
5040  }
5041#line 1236
5042  return (tmp);
5043}
5044}
5045#line 1240 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2639/dscv_tempdir/dscv/ri/43_1a/drivers/rtc/rtc-ds1553.c.p"
5046void ldv_check_alloc_nonatomic(void) 
5047{ 
5048
5049  {
5050#line 1243
5051  if (ldv_spin != 0) {
5052    {
5053#line 1243
5054    ldv_blast_assert();
5055    }
5056  } else {
5057
5058  }
5059#line 1246
5060  return;
5061}
5062}
5063#line 1247 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2639/dscv_tempdir/dscv/ri/43_1a/drivers/rtc/rtc-ds1553.c.p"
5064void ldv_spin_lock(void) 
5065{ 
5066
5067  {
5068#line 1250
5069  ldv_spin = 1;
5070#line 1251
5071  return;
5072}
5073}
5074#line 1254 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2639/dscv_tempdir/dscv/ri/43_1a/drivers/rtc/rtc-ds1553.c.p"
5075void ldv_spin_unlock(void) 
5076{ 
5077
5078  {
5079#line 1257
5080  ldv_spin = 0;
5081#line 1258
5082  return;
5083}
5084}
5085#line 1261 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2639/dscv_tempdir/dscv/ri/43_1a/drivers/rtc/rtc-ds1553.c.p"
5086int ldv_spin_trylock(void) 
5087{ int is_lock ;
5088
5089  {
5090  {
5091#line 1266
5092  is_lock = __VERIFIER_nondet_int();
5093  }
5094#line 1268
5095  if (is_lock != 0) {
5096#line 1271
5097    return (0);
5098  } else {
5099#line 1276
5100    ldv_spin = 1;
5101#line 1278
5102    return (1);
5103  }
5104}
5105}
5106#line 1282 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2639/dscv_tempdir/dscv/ri/43_1a/drivers/rtc/rtc-ds1553.c.p"
5107__inline static void spin_lock(spinlock_t *lock ) 
5108{ 
5109
5110  {
5111  {
5112#line 1287
5113  ldv_spin_lock();
5114#line 1289
5115  ldv_spin_lock_1(lock);
5116  }
5117#line 1290
5118  return;
5119}
5120}
5121#line 1324 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2639/dscv_tempdir/dscv/ri/43_1a/drivers/rtc/rtc-ds1553.c.p"
5122__inline static void spin_unlock(spinlock_t *lock ) 
5123{ 
5124
5125  {
5126  {
5127#line 1329
5128  ldv_spin_unlock();
5129#line 1331
5130  ldv_spin_unlock_5(lock);
5131  }
5132#line 1332
5133  return;
5134}
5135}
5136#line 1354 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2639/dscv_tempdir/dscv/ri/43_1a/drivers/rtc/rtc-ds1553.c.p"
5137__inline static void spin_unlock_irqrestore(spinlock_t *lock , unsigned long flags ) 
5138{ 
5139
5140  {
5141  {
5142#line 1360
5143  ldv_spin_unlock();
5144#line 1362
5145  ldv_spin_unlock_irqrestore_8(lock, flags);
5146  }
5147#line 1363
5148  return;
5149}
5150}
5151#line 1445 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2639/dscv_tempdir/dscv/ri/43_1a/drivers/rtc/rtc-ds1553.c.p"
5152void *ldv_kmem_cache_alloc_16(struct kmem_cache *ldv_func_arg1 , gfp_t ldv_func_arg2 ) 
5153{ 
5154
5155  {
5156  {
5157#line 1451
5158  ldv_check_alloc_flags(ldv_func_arg2);
5159#line 1453
5160  kmem_cache_alloc(ldv_func_arg1, ldv_func_arg2);
5161  }
5162#line 1454
5163  return ((void *)0);
5164}
5165}