Showing error 1202

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-stk17ta8.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out.c
Line in file: 5111
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/2671/dscv_tempdir/dscv/ri/43_1a/drivers/rtc/rtc-stk17ta8.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/2671/dscv_tempdir/dscv/ri/43_1a/drivers/rtc/rtc-stk17ta8.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 92 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2671/dscv_tempdir/dscv/ri/43_1a/drivers/rtc/rtc-stk17ta8.c.p"
2393static int stk17ta8_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 flags ;
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  unsigned char tmp___7 ;
2408  struct platform_device *__cil_tmp17 ;
2409  struct platform_device  const  *__cil_tmp18 ;
2410  unsigned long __cil_tmp19 ;
2411  unsigned long __cil_tmp20 ;
2412  unsigned long __cil_tmp21 ;
2413  unsigned long __cil_tmp22 ;
2414  void *__cil_tmp23 ;
2415  void const volatile   *__cil_tmp24 ;
2416  void const volatile   *__cil_tmp25 ;
2417  unsigned int __cil_tmp26 ;
2418  unsigned int __cil_tmp27 ;
2419  int __cil_tmp28 ;
2420  unsigned char __cil_tmp29 ;
2421  unsigned long __cil_tmp30 ;
2422  unsigned long __cil_tmp31 ;
2423  void *__cil_tmp32 ;
2424  void volatile   *__cil_tmp33 ;
2425  void volatile   *__cil_tmp34 ;
2426  unsigned long __cil_tmp35 ;
2427  unsigned long __cil_tmp36 ;
2428  int __cil_tmp37 ;
2429  int __cil_tmp38 ;
2430  unsigned int __cil_tmp39 ;
2431  int __cil_tmp40 ;
2432  unsigned char __cil_tmp41 ;
2433  void volatile   *__cil_tmp42 ;
2434  void volatile   *__cil_tmp43 ;
2435  unsigned long __cil_tmp44 ;
2436  unsigned long __cil_tmp45 ;
2437  int __cil_tmp46 ;
2438  int __cil_tmp47 ;
2439  unsigned int __cil_tmp48 ;
2440  int __cil_tmp49 ;
2441  unsigned char __cil_tmp50 ;
2442  void volatile   *__cil_tmp51 ;
2443  void volatile   *__cil_tmp52 ;
2444  unsigned long __cil_tmp53 ;
2445  unsigned long __cil_tmp54 ;
2446  int __cil_tmp55 ;
2447  unsigned int __cil_tmp56 ;
2448  int __cil_tmp57 ;
2449  int __cil_tmp58 ;
2450  unsigned char __cil_tmp59 ;
2451  void volatile   *__cil_tmp60 ;
2452  void volatile   *__cil_tmp61 ;
2453  unsigned long __cil_tmp62 ;
2454  unsigned long __cil_tmp63 ;
2455  int __cil_tmp64 ;
2456  unsigned int __cil_tmp65 ;
2457  int __cil_tmp66 ;
2458  unsigned char __cil_tmp67 ;
2459  void volatile   *__cil_tmp68 ;
2460  void volatile   *__cil_tmp69 ;
2461  unsigned long __cil_tmp70 ;
2462  unsigned long __cil_tmp71 ;
2463  int __cil_tmp72 ;
2464  unsigned int __cil_tmp73 ;
2465  int __cil_tmp74 ;
2466  unsigned char __cil_tmp75 ;
2467  void volatile   *__cil_tmp76 ;
2468  void volatile   *__cil_tmp77 ;
2469  unsigned long __cil_tmp78 ;
2470  unsigned long __cil_tmp79 ;
2471  int __cil_tmp80 ;
2472  unsigned int __cil_tmp81 ;
2473  int __cil_tmp82 ;
2474  unsigned char __cil_tmp83 ;
2475  void volatile   *__cil_tmp84 ;
2476  void volatile   *__cil_tmp85 ;
2477  int __cil_tmp86 ;
2478  unsigned int __cil_tmp87 ;
2479  int __cil_tmp88 ;
2480  int __cil_tmp89 ;
2481  unsigned char __cil_tmp90 ;
2482  void volatile   *__cil_tmp91 ;
2483  void volatile   *__cil_tmp92 ;
2484  unsigned long __cil_tmp93 ;
2485  unsigned long __cil_tmp94 ;
2486  int __cil_tmp95 ;
2487  int __cil_tmp96 ;
2488  int __cil_tmp97 ;
2489  unsigned int __cil_tmp98 ;
2490  int __cil_tmp99 ;
2491  unsigned char __cil_tmp100 ;
2492  void volatile   *__cil_tmp101 ;
2493  void volatile   *__cil_tmp102 ;
2494  int __cil_tmp103 ;
2495  int __cil_tmp104 ;
2496  unsigned char __cil_tmp105 ;
2497  unsigned long __cil_tmp106 ;
2498  unsigned long __cil_tmp107 ;
2499  void *__cil_tmp108 ;
2500  void volatile   *__cil_tmp109 ;
2501  void volatile   *__cil_tmp110 ;
2502
2503  {
2504  {
2505#line 94
2506  __mptr = (struct device  const  *)dev;
2507#line 94
2508  __cil_tmp17 = (struct platform_device *)__mptr;
2509#line 94
2510  pdev = __cil_tmp17 + 0xfffffffffffffff0UL;
2511#line 95
2512  __cil_tmp18 = (struct platform_device  const  *)pdev;
2513#line 95
2514  tmp = platform_get_drvdata(__cil_tmp18);
2515#line 95
2516  pdata = (struct rtc_plat_data *)tmp;
2517#line 96
2518  __cil_tmp19 = (unsigned long )pdata;
2519#line 96
2520  __cil_tmp20 = __cil_tmp19 + 8;
2521#line 96
2522  ioaddr = *((void **)__cil_tmp20);
2523#line 99
2524  __cil_tmp21 = (unsigned long )pdata;
2525#line 99
2526  __cil_tmp22 = __cil_tmp21 + 8;
2527#line 99
2528  __cil_tmp23 = *((void **)__cil_tmp22);
2529#line 99
2530  __cil_tmp24 = (void const volatile   *)__cil_tmp23;
2531#line 99
2532  __cil_tmp25 = __cil_tmp24 + 131056U;
2533#line 99
2534  flags = readb(__cil_tmp25);
2535#line 100
2536  __cil_tmp26 = (unsigned int )flags;
2537#line 100
2538  __cil_tmp27 = __cil_tmp26 | 2U;
2539#line 100
2540  __cil_tmp28 = (int )__cil_tmp27;
2541#line 100
2542  __cil_tmp29 = (unsigned char )__cil_tmp28;
2543#line 100
2544  __cil_tmp30 = (unsigned long )pdata;
2545#line 100
2546  __cil_tmp31 = __cil_tmp30 + 8;
2547#line 100
2548  __cil_tmp32 = *((void **)__cil_tmp31);
2549#line 100
2550  __cil_tmp33 = (void volatile   *)__cil_tmp32;
2551#line 100
2552  __cil_tmp34 = __cil_tmp33 + 131056U;
2553#line 100
2554  writeb(__cil_tmp29, __cil_tmp34);
2555#line 102
2556  __cil_tmp35 = (unsigned long )tm;
2557#line 102
2558  __cil_tmp36 = __cil_tmp35 + 20;
2559#line 102
2560  __cil_tmp37 = *((int *)__cil_tmp36);
2561#line 102
2562  __cil_tmp38 = __cil_tmp37 % 100;
2563#line 102
2564  __cil_tmp39 = (unsigned int )__cil_tmp38;
2565#line 102
2566  tmp___0 = bin2bcd(__cil_tmp39);
2567#line 102
2568  __cil_tmp40 = (int )tmp___0;
2569#line 102
2570  __cil_tmp41 = (unsigned char )__cil_tmp40;
2571#line 102
2572  __cil_tmp42 = (void volatile   *)ioaddr;
2573#line 102
2574  __cil_tmp43 = __cil_tmp42 + 131071U;
2575#line 102
2576  writeb(__cil_tmp41, __cil_tmp43);
2577#line 103
2578  __cil_tmp44 = (unsigned long )tm;
2579#line 103
2580  __cil_tmp45 = __cil_tmp44 + 16;
2581#line 103
2582  __cil_tmp46 = *((int *)__cil_tmp45);
2583#line 103
2584  __cil_tmp47 = __cil_tmp46 + 1;
2585#line 103
2586  __cil_tmp48 = (unsigned int )__cil_tmp47;
2587#line 103
2588  tmp___1 = bin2bcd(__cil_tmp48);
2589#line 103
2590  __cil_tmp49 = (int )tmp___1;
2591#line 103
2592  __cil_tmp50 = (unsigned char )__cil_tmp49;
2593#line 103
2594  __cil_tmp51 = (void volatile   *)ioaddr;
2595#line 103
2596  __cil_tmp52 = __cil_tmp51 + 131070U;
2597#line 103
2598  writeb(__cil_tmp50, __cil_tmp52);
2599#line 104
2600  __cil_tmp53 = (unsigned long )tm;
2601#line 104
2602  __cil_tmp54 = __cil_tmp53 + 24;
2603#line 104
2604  __cil_tmp55 = *((int *)__cil_tmp54);
2605#line 104
2606  __cil_tmp56 = (unsigned int )__cil_tmp55;
2607#line 104
2608  tmp___2 = bin2bcd(__cil_tmp56);
2609#line 104
2610  __cil_tmp57 = (int )tmp___2;
2611#line 104
2612  __cil_tmp58 = __cil_tmp57 & 7;
2613#line 104
2614  __cil_tmp59 = (unsigned char )__cil_tmp58;
2615#line 104
2616  __cil_tmp60 = (void volatile   *)ioaddr;
2617#line 104
2618  __cil_tmp61 = __cil_tmp60 + 131068U;
2619#line 104
2620  writeb(__cil_tmp59, __cil_tmp61);
2621#line 105
2622  __cil_tmp62 = (unsigned long )tm;
2623#line 105
2624  __cil_tmp63 = __cil_tmp62 + 12;
2625#line 105
2626  __cil_tmp64 = *((int *)__cil_tmp63);
2627#line 105
2628  __cil_tmp65 = (unsigned int )__cil_tmp64;
2629#line 105
2630  tmp___3 = bin2bcd(__cil_tmp65);
2631#line 105
2632  __cil_tmp66 = (int )tmp___3;
2633#line 105
2634  __cil_tmp67 = (unsigned char )__cil_tmp66;
2635#line 105
2636  __cil_tmp68 = (void volatile   *)ioaddr;
2637#line 105
2638  __cil_tmp69 = __cil_tmp68 + 131069U;
2639#line 105
2640  writeb(__cil_tmp67, __cil_tmp69);
2641#line 106
2642  __cil_tmp70 = (unsigned long )tm;
2643#line 106
2644  __cil_tmp71 = __cil_tmp70 + 8;
2645#line 106
2646  __cil_tmp72 = *((int *)__cil_tmp71);
2647#line 106
2648  __cil_tmp73 = (unsigned int )__cil_tmp72;
2649#line 106
2650  tmp___4 = bin2bcd(__cil_tmp73);
2651#line 106
2652  __cil_tmp74 = (int )tmp___4;
2653#line 106
2654  __cil_tmp75 = (unsigned char )__cil_tmp74;
2655#line 106
2656  __cil_tmp76 = (void volatile   *)ioaddr;
2657#line 106
2658  __cil_tmp77 = __cil_tmp76 + 131067U;
2659#line 106
2660  writeb(__cil_tmp75, __cil_tmp77);
2661#line 107
2662  __cil_tmp78 = (unsigned long )tm;
2663#line 107
2664  __cil_tmp79 = __cil_tmp78 + 4;
2665#line 107
2666  __cil_tmp80 = *((int *)__cil_tmp79);
2667#line 107
2668  __cil_tmp81 = (unsigned int )__cil_tmp80;
2669#line 107
2670  tmp___5 = bin2bcd(__cil_tmp81);
2671#line 107
2672  __cil_tmp82 = (int )tmp___5;
2673#line 107
2674  __cil_tmp83 = (unsigned char )__cil_tmp82;
2675#line 107
2676  __cil_tmp84 = (void volatile   *)ioaddr;
2677#line 107
2678  __cil_tmp85 = __cil_tmp84 + 131066U;
2679#line 107
2680  writeb(__cil_tmp83, __cil_tmp85);
2681#line 108
2682  __cil_tmp86 = *((int *)tm);
2683#line 108
2684  __cil_tmp87 = (unsigned int )__cil_tmp86;
2685#line 108
2686  tmp___6 = bin2bcd(__cil_tmp87);
2687#line 108
2688  __cil_tmp88 = (int )tmp___6;
2689#line 108
2690  __cil_tmp89 = __cil_tmp88 & 127;
2691#line 108
2692  __cil_tmp90 = (unsigned char )__cil_tmp89;
2693#line 108
2694  __cil_tmp91 = (void volatile   *)ioaddr;
2695#line 108
2696  __cil_tmp92 = __cil_tmp91 + 131065U;
2697#line 108
2698  writeb(__cil_tmp90, __cil_tmp92);
2699#line 109
2700  __cil_tmp93 = (unsigned long )tm;
2701#line 109
2702  __cil_tmp94 = __cil_tmp93 + 20;
2703#line 109
2704  __cil_tmp95 = *((int *)__cil_tmp94);
2705#line 109
2706  __cil_tmp96 = __cil_tmp95 + 1900;
2707#line 109
2708  __cil_tmp97 = __cil_tmp96 / 100;
2709#line 109
2710  __cil_tmp98 = (unsigned int )__cil_tmp97;
2711#line 109
2712  tmp___7 = bin2bcd(__cil_tmp98);
2713#line 109
2714  __cil_tmp99 = (int )tmp___7;
2715#line 109
2716  __cil_tmp100 = (unsigned char )__cil_tmp99;
2717#line 109
2718  __cil_tmp101 = (void volatile   *)ioaddr;
2719#line 109
2720  __cil_tmp102 = __cil_tmp101 + 131057U;
2721#line 109
2722  writeb(__cil_tmp100, __cil_tmp102);
2723#line 111
2724  __cil_tmp103 = (int )flags;
2725#line 111
2726  __cil_tmp104 = __cil_tmp103 & 253;
2727#line 111
2728  __cil_tmp105 = (unsigned char )__cil_tmp104;
2729#line 111
2730  __cil_tmp106 = (unsigned long )pdata;
2731#line 111
2732  __cil_tmp107 = __cil_tmp106 + 8;
2733#line 111
2734  __cil_tmp108 = *((void **)__cil_tmp107);
2735#line 111
2736  __cil_tmp109 = (void volatile   *)__cil_tmp108;
2737#line 111
2738  __cil_tmp110 = __cil_tmp109 + 131056U;
2739#line 111
2740  writeb(__cil_tmp105, __cil_tmp110);
2741  }
2742#line 112
2743  return (0);
2744}
2745}
2746#line 115 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2671/dscv_tempdir/dscv/ri/43_1a/drivers/rtc/rtc-stk17ta8.c.p"
2747static int stk17ta8_rtc_read_time(struct device *dev , struct rtc_time *tm ) 
2748{ struct platform_device *pdev ;
2749  struct device  const  *__mptr ;
2750  struct rtc_plat_data *pdata ;
2751  void *tmp ;
2752  void *ioaddr ;
2753  unsigned int year ;
2754  unsigned int month ;
2755  unsigned int day ;
2756  unsigned int hour ;
2757  unsigned int minute ;
2758  unsigned int second ;
2759  unsigned int week ;
2760  unsigned int century ;
2761  u8 flags ;
2762  unsigned char tmp___0 ;
2763  unsigned char tmp___1 ;
2764  unsigned char tmp___2 ;
2765  unsigned char tmp___3 ;
2766  unsigned char tmp___4 ;
2767  unsigned char tmp___5 ;
2768  unsigned char tmp___6 ;
2769  unsigned char tmp___7 ;
2770  unsigned int tmp___8 ;
2771  unsigned int tmp___9 ;
2772  unsigned int tmp___10 ;
2773  unsigned int tmp___11 ;
2774  unsigned int tmp___12 ;
2775  unsigned int tmp___13 ;
2776  unsigned int tmp___14 ;
2777  unsigned int tmp___15 ;
2778  int tmp___16 ;
2779  struct platform_device *__cil_tmp34 ;
2780  struct platform_device  const  *__cil_tmp35 ;
2781  unsigned long __cil_tmp36 ;
2782  unsigned long __cil_tmp37 ;
2783  unsigned long __cil_tmp38 ;
2784  unsigned long __cil_tmp39 ;
2785  unsigned long __cil_tmp40 ;
2786  unsigned long __cil_tmp41 ;
2787  unsigned long __cil_tmp42 ;
2788  unsigned long __cil_tmp43 ;
2789  unsigned long __cil_tmp44 ;
2790  unsigned long __cil_tmp45 ;
2791  void *__cil_tmp46 ;
2792  void const volatile   *__cil_tmp47 ;
2793  void const volatile   *__cil_tmp48 ;
2794  unsigned int __cil_tmp49 ;
2795  unsigned int __cil_tmp50 ;
2796  int __cil_tmp51 ;
2797  unsigned char __cil_tmp52 ;
2798  void volatile   *__cil_tmp53 ;
2799  void volatile   *__cil_tmp54 ;
2800  void const volatile   *__cil_tmp55 ;
2801  void const volatile   *__cil_tmp56 ;
2802  unsigned int __cil_tmp57 ;
2803  void const volatile   *__cil_tmp58 ;
2804  void const volatile   *__cil_tmp59 ;
2805  void const volatile   *__cil_tmp60 ;
2806  void const volatile   *__cil_tmp61 ;
2807  void const volatile   *__cil_tmp62 ;
2808  void const volatile   *__cil_tmp63 ;
2809  void const volatile   *__cil_tmp64 ;
2810  void const volatile   *__cil_tmp65 ;
2811  unsigned int __cil_tmp66 ;
2812  void const volatile   *__cil_tmp67 ;
2813  void const volatile   *__cil_tmp68 ;
2814  void const volatile   *__cil_tmp69 ;
2815  void const volatile   *__cil_tmp70 ;
2816  void const volatile   *__cil_tmp71 ;
2817  void const volatile   *__cil_tmp72 ;
2818  int __cil_tmp73 ;
2819  int __cil_tmp74 ;
2820  unsigned char __cil_tmp75 ;
2821  void volatile   *__cil_tmp76 ;
2822  void volatile   *__cil_tmp77 ;
2823  unsigned char __cil_tmp78 ;
2824  int __cil_tmp79 ;
2825  unsigned char __cil_tmp80 ;
2826  unsigned char __cil_tmp81 ;
2827  int __cil_tmp82 ;
2828  unsigned char __cil_tmp83 ;
2829  unsigned long __cil_tmp84 ;
2830  unsigned long __cil_tmp85 ;
2831  unsigned char __cil_tmp86 ;
2832  int __cil_tmp87 ;
2833  unsigned char __cil_tmp88 ;
2834  unsigned long __cil_tmp89 ;
2835  unsigned long __cil_tmp90 ;
2836  unsigned char __cil_tmp91 ;
2837  int __cil_tmp92 ;
2838  unsigned char __cil_tmp93 ;
2839  unsigned long __cil_tmp94 ;
2840  unsigned long __cil_tmp95 ;
2841  unsigned char __cil_tmp96 ;
2842  int __cil_tmp97 ;
2843  unsigned char __cil_tmp98 ;
2844  unsigned long __cil_tmp99 ;
2845  unsigned long __cil_tmp100 ;
2846  unsigned char __cil_tmp101 ;
2847  int __cil_tmp102 ;
2848  unsigned char __cil_tmp103 ;
2849  unsigned long __cil_tmp104 ;
2850  unsigned long __cil_tmp105 ;
2851  unsigned int __cil_tmp106 ;
2852  unsigned char __cil_tmp107 ;
2853  int __cil_tmp108 ;
2854  unsigned char __cil_tmp109 ;
2855  unsigned char __cil_tmp110 ;
2856  int __cil_tmp111 ;
2857  unsigned char __cil_tmp112 ;
2858  unsigned long __cil_tmp113 ;
2859  unsigned long __cil_tmp114 ;
2860  unsigned int __cil_tmp115 ;
2861  unsigned int __cil_tmp116 ;
2862  unsigned int __cil_tmp117 ;
2863  struct device  const  *__cil_tmp118 ;
2864
2865  {
2866  {
2867#line 117
2868  __mptr = (struct device  const  *)dev;
2869#line 117
2870  __cil_tmp34 = (struct platform_device *)__mptr;
2871#line 117
2872  pdev = __cil_tmp34 + 0xfffffffffffffff0UL;
2873#line 118
2874  __cil_tmp35 = (struct platform_device  const  *)pdev;
2875#line 118
2876  tmp = platform_get_drvdata(__cil_tmp35);
2877#line 118
2878  pdata = (struct rtc_plat_data *)tmp;
2879#line 119
2880  __cil_tmp36 = (unsigned long )pdata;
2881#line 119
2882  __cil_tmp37 = __cil_tmp36 + 8;
2883#line 119
2884  ioaddr = *((void **)__cil_tmp37);
2885  }
2886  {
2887#line 125
2888  __cil_tmp38 = (unsigned long )jiffies;
2889#line 125
2890  __cil_tmp39 = (unsigned long )pdata;
2891#line 125
2892  __cil_tmp40 = __cil_tmp39 + 16;
2893#line 125
2894  __cil_tmp41 = *((unsigned long *)__cil_tmp40);
2895#line 125
2896  if (__cil_tmp41 == __cil_tmp38) {
2897    {
2898#line 126
2899    msleep(1U);
2900    }
2901  } else {
2902
2903  }
2904  }
2905  {
2906#line 127
2907  __cil_tmp42 = (unsigned long )pdata;
2908#line 127
2909  __cil_tmp43 = __cil_tmp42 + 16;
2910#line 127
2911  *((unsigned long *)__cil_tmp43) = (unsigned long )jiffies;
2912#line 129
2913  __cil_tmp44 = (unsigned long )pdata;
2914#line 129
2915  __cil_tmp45 = __cil_tmp44 + 8;
2916#line 129
2917  __cil_tmp46 = *((void **)__cil_tmp45);
2918#line 129
2919  __cil_tmp47 = (void const volatile   *)__cil_tmp46;
2920#line 129
2921  __cil_tmp48 = __cil_tmp47 + 131056U;
2922#line 129
2923  flags = readb(__cil_tmp48);
2924#line 130
2925  __cil_tmp49 = (unsigned int )flags;
2926#line 130
2927  __cil_tmp50 = __cil_tmp49 | 1U;
2928#line 130
2929  __cil_tmp51 = (int )__cil_tmp50;
2930#line 130
2931  __cil_tmp52 = (unsigned char )__cil_tmp51;
2932#line 130
2933  __cil_tmp53 = (void volatile   *)ioaddr;
2934#line 130
2935  __cil_tmp54 = __cil_tmp53 + 131056U;
2936#line 130
2937  writeb(__cil_tmp52, __cil_tmp54);
2938#line 131
2939  __cil_tmp55 = (void const volatile   *)ioaddr;
2940#line 131
2941  __cil_tmp56 = __cil_tmp55 + 131065U;
2942#line 131
2943  tmp___0 = readb(__cil_tmp56);
2944#line 131
2945  __cil_tmp57 = (unsigned int )tmp___0;
2946#line 131
2947  second = __cil_tmp57 & 127U;
2948#line 132
2949  __cil_tmp58 = (void const volatile   *)ioaddr;
2950#line 132
2951  __cil_tmp59 = __cil_tmp58 + 131066U;
2952#line 132
2953  tmp___1 = readb(__cil_tmp59);
2954#line 132
2955  minute = (unsigned int )tmp___1;
2956#line 133
2957  __cil_tmp60 = (void const volatile   *)ioaddr;
2958#line 133
2959  __cil_tmp61 = __cil_tmp60 + 131067U;
2960#line 133
2961  tmp___2 = readb(__cil_tmp61);
2962#line 133
2963  hour = (unsigned int )tmp___2;
2964#line 134
2965  __cil_tmp62 = (void const volatile   *)ioaddr;
2966#line 134
2967  __cil_tmp63 = __cil_tmp62 + 131069U;
2968#line 134
2969  tmp___3 = readb(__cil_tmp63);
2970#line 134
2971  day = (unsigned int )tmp___3;
2972#line 135
2973  __cil_tmp64 = (void const volatile   *)ioaddr;
2974#line 135
2975  __cil_tmp65 = __cil_tmp64 + 131068U;
2976#line 135
2977  tmp___4 = readb(__cil_tmp65);
2978#line 135
2979  __cil_tmp66 = (unsigned int )tmp___4;
2980#line 135
2981  week = __cil_tmp66 & 7U;
2982#line 136
2983  __cil_tmp67 = (void const volatile   *)ioaddr;
2984#line 136
2985  __cil_tmp68 = __cil_tmp67 + 131070U;
2986#line 136
2987  tmp___5 = readb(__cil_tmp68);
2988#line 136
2989  month = (unsigned int )tmp___5;
2990#line 137
2991  __cil_tmp69 = (void const volatile   *)ioaddr;
2992#line 137
2993  __cil_tmp70 = __cil_tmp69 + 131071U;
2994#line 137
2995  tmp___6 = readb(__cil_tmp70);
2996#line 137
2997  year = (unsigned int )tmp___6;
2998#line 138
2999  __cil_tmp71 = (void const volatile   *)ioaddr;
3000#line 138
3001  __cil_tmp72 = __cil_tmp71 + 131057U;
3002#line 138
3003  tmp___7 = readb(__cil_tmp72);
3004#line 138
3005  century = (unsigned int )tmp___7;
3006#line 139
3007  __cil_tmp73 = (int )flags;
3008#line 139
3009  __cil_tmp74 = __cil_tmp73 & 254;
3010#line 139
3011  __cil_tmp75 = (unsigned char )__cil_tmp74;
3012#line 139
3013  __cil_tmp76 = (void volatile   *)ioaddr;
3014#line 139
3015  __cil_tmp77 = __cil_tmp76 + 131056U;
3016#line 139
3017  writeb(__cil_tmp75, __cil_tmp77);
3018#line 140
3019  __cil_tmp78 = (unsigned char )second;
3020#line 140
3021  __cil_tmp79 = (int )__cil_tmp78;
3022#line 140
3023  __cil_tmp80 = (unsigned char )__cil_tmp79;
3024#line 140
3025  tmp___8 = bcd2bin(__cil_tmp80);
3026#line 140
3027  *((int *)tm) = (int )tmp___8;
3028#line 141
3029  __cil_tmp81 = (unsigned char )minute;
3030#line 141
3031  __cil_tmp82 = (int )__cil_tmp81;
3032#line 141
3033  __cil_tmp83 = (unsigned char )__cil_tmp82;
3034#line 141
3035  tmp___9 = bcd2bin(__cil_tmp83);
3036#line 141
3037  __cil_tmp84 = (unsigned long )tm;
3038#line 141
3039  __cil_tmp85 = __cil_tmp84 + 4;
3040#line 141
3041  *((int *)__cil_tmp85) = (int )tmp___9;
3042#line 142
3043  __cil_tmp86 = (unsigned char )hour;
3044#line 142
3045  __cil_tmp87 = (int )__cil_tmp86;
3046#line 142
3047  __cil_tmp88 = (unsigned char )__cil_tmp87;
3048#line 142
3049  tmp___10 = bcd2bin(__cil_tmp88);
3050#line 142
3051  __cil_tmp89 = (unsigned long )tm;
3052#line 142
3053  __cil_tmp90 = __cil_tmp89 + 8;
3054#line 142
3055  *((int *)__cil_tmp90) = (int )tmp___10;
3056#line 143
3057  __cil_tmp91 = (unsigned char )day;
3058#line 143
3059  __cil_tmp92 = (int )__cil_tmp91;
3060#line 143
3061  __cil_tmp93 = (unsigned char )__cil_tmp92;
3062#line 143
3063  tmp___11 = bcd2bin(__cil_tmp93);
3064#line 143
3065  __cil_tmp94 = (unsigned long )tm;
3066#line 143
3067  __cil_tmp95 = __cil_tmp94 + 12;
3068#line 143
3069  *((int *)__cil_tmp95) = (int )tmp___11;
3070#line 144
3071  __cil_tmp96 = (unsigned char )week;
3072#line 144
3073  __cil_tmp97 = (int )__cil_tmp96;
3074#line 144
3075  __cil_tmp98 = (unsigned char )__cil_tmp97;
3076#line 144
3077  tmp___12 = bcd2bin(__cil_tmp98);
3078#line 144
3079  __cil_tmp99 = (unsigned long )tm;
3080#line 144
3081  __cil_tmp100 = __cil_tmp99 + 24;
3082#line 144
3083  *((int *)__cil_tmp100) = (int )tmp___12;
3084#line 145
3085  __cil_tmp101 = (unsigned char )month;
3086#line 145
3087  __cil_tmp102 = (int )__cil_tmp101;
3088#line 145
3089  __cil_tmp103 = (unsigned char )__cil_tmp102;
3090#line 145
3091  tmp___13 = bcd2bin(__cil_tmp103);
3092#line 145
3093  __cil_tmp104 = (unsigned long )tm;
3094#line 145
3095  __cil_tmp105 = __cil_tmp104 + 16;
3096#line 145
3097  __cil_tmp106 = tmp___13 - 1U;
3098#line 145
3099  *((int *)__cil_tmp105) = (int )__cil_tmp106;
3100#line 147
3101  __cil_tmp107 = (unsigned char )year;
3102#line 147
3103  __cil_tmp108 = (int )__cil_tmp107;
3104#line 147
3105  __cil_tmp109 = (unsigned char )__cil_tmp108;
3106#line 147
3107  tmp___14 = bcd2bin(__cil_tmp109);
3108#line 147
3109  __cil_tmp110 = (unsigned char )century;
3110#line 147
3111  __cil_tmp111 = (int )__cil_tmp110;
3112#line 147
3113  __cil_tmp112 = (unsigned char )__cil_tmp111;
3114#line 147
3115  tmp___15 = bcd2bin(__cil_tmp112);
3116#line 147
3117  __cil_tmp113 = (unsigned long )tm;
3118#line 147
3119  __cil_tmp114 = __cil_tmp113 + 20;
3120#line 147
3121  __cil_tmp115 = tmp___15 * 100U;
3122#line 147
3123  __cil_tmp116 = tmp___14 + __cil_tmp115;
3124#line 147
3125  __cil_tmp117 = __cil_tmp116 - 1900U;
3126#line 147
3127  *((int *)__cil_tmp114) = (int )__cil_tmp117;
3128#line 149
3129  tmp___16 = rtc_valid_tm(tm);
3130  }
3131#line 149
3132  if (tmp___16 < 0) {
3133    {
3134#line 150
3135    __cil_tmp118 = (struct device  const  *)dev;
3136#line 150
3137    dev_err(__cil_tmp118, "retrieved date/time is not valid.\n");
3138#line 151
3139    rtc_time_to_tm(0UL, tm);
3140    }
3141  } else {
3142
3143  }
3144#line 153
3145  return (0);
3146}
3147}
3148#line 156 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2671/dscv_tempdir/dscv/ri/43_1a/drivers/rtc/rtc-stk17ta8.c.p"
3149static void stk17ta8_rtc_update_alarm(struct rtc_plat_data *pdata ) 
3150{ void *ioaddr ;
3151  unsigned long irqflags ;
3152  u8 flags ;
3153  unsigned char tmp ;
3154  int tmp___0 ;
3155  unsigned char tmp___1 ;
3156  int tmp___2 ;
3157  unsigned char tmp___3 ;
3158  int tmp___4 ;
3159  unsigned char tmp___5 ;
3160  int tmp___6 ;
3161  int tmp___7 ;
3162  unsigned long __cil_tmp14 ;
3163  unsigned long __cil_tmp15 ;
3164  void const volatile   *__cil_tmp16 ;
3165  void const volatile   *__cil_tmp17 ;
3166  unsigned int __cil_tmp18 ;
3167  unsigned int __cil_tmp19 ;
3168  int __cil_tmp20 ;
3169  unsigned char __cil_tmp21 ;
3170  void volatile   *__cil_tmp22 ;
3171  void volatile   *__cil_tmp23 ;
3172  unsigned long __cil_tmp24 ;
3173  unsigned long __cil_tmp25 ;
3174  int __cil_tmp26 ;
3175  unsigned long __cil_tmp27 ;
3176  unsigned long __cil_tmp28 ;
3177  unsigned int __cil_tmp29 ;
3178  unsigned int __cil_tmp30 ;
3179  unsigned long __cil_tmp31 ;
3180  unsigned long __cil_tmp32 ;
3181  int __cil_tmp33 ;
3182  unsigned int __cil_tmp34 ;
3183  unsigned char __cil_tmp35 ;
3184  void volatile   *__cil_tmp36 ;
3185  void volatile   *__cil_tmp37 ;
3186  unsigned long __cil_tmp38 ;
3187  unsigned long __cil_tmp39 ;
3188  int __cil_tmp40 ;
3189  unsigned long __cil_tmp41 ;
3190  unsigned long __cil_tmp42 ;
3191  unsigned int __cil_tmp43 ;
3192  unsigned int __cil_tmp44 ;
3193  unsigned long __cil_tmp45 ;
3194  unsigned long __cil_tmp46 ;
3195  int __cil_tmp47 ;
3196  unsigned int __cil_tmp48 ;
3197  unsigned char __cil_tmp49 ;
3198  void volatile   *__cil_tmp50 ;
3199  void volatile   *__cil_tmp51 ;
3200  unsigned long __cil_tmp52 ;
3201  unsigned long __cil_tmp53 ;
3202  int __cil_tmp54 ;
3203  unsigned long __cil_tmp55 ;
3204  unsigned long __cil_tmp56 ;
3205  unsigned int __cil_tmp57 ;
3206  unsigned int __cil_tmp58 ;
3207  unsigned long __cil_tmp59 ;
3208  unsigned long __cil_tmp60 ;
3209  int __cil_tmp61 ;
3210  unsigned int __cil_tmp62 ;
3211  unsigned char __cil_tmp63 ;
3212  void volatile   *__cil_tmp64 ;
3213  void volatile   *__cil_tmp65 ;
3214  unsigned long __cil_tmp66 ;
3215  unsigned long __cil_tmp67 ;
3216  int __cil_tmp68 ;
3217  unsigned long __cil_tmp69 ;
3218  unsigned long __cil_tmp70 ;
3219  unsigned int __cil_tmp71 ;
3220  unsigned int __cil_tmp72 ;
3221  unsigned long __cil_tmp73 ;
3222  unsigned long __cil_tmp74 ;
3223  int __cil_tmp75 ;
3224  unsigned int __cil_tmp76 ;
3225  unsigned char __cil_tmp77 ;
3226  void volatile   *__cil_tmp78 ;
3227  void volatile   *__cil_tmp79 ;
3228  unsigned long __cil_tmp80 ;
3229  unsigned long __cil_tmp81 ;
3230  unsigned int __cil_tmp82 ;
3231  unsigned char __cil_tmp83 ;
3232  void volatile   *__cil_tmp84 ;
3233  void volatile   *__cil_tmp85 ;
3234  void const volatile   *__cil_tmp86 ;
3235  void const volatile   *__cil_tmp87 ;
3236  int __cil_tmp88 ;
3237  int __cil_tmp89 ;
3238  unsigned char __cil_tmp90 ;
3239  void volatile   *__cil_tmp91 ;
3240  void volatile   *__cil_tmp92 ;
3241  unsigned long __cil_tmp93 ;
3242  unsigned long __cil_tmp94 ;
3243  spinlock_t *__cil_tmp95 ;
3244
3245  {
3246  {
3247#line 158
3248  __cil_tmp14 = (unsigned long )pdata;
3249#line 158
3250  __cil_tmp15 = __cil_tmp14 + 8;
3251#line 158
3252  ioaddr = *((void **)__cil_tmp15);
3253#line 162
3254  ldv_spin_lock();
3255#line 164
3256  __cil_tmp16 = (void const volatile   *)ioaddr;
3257#line 164
3258  __cil_tmp17 = __cil_tmp16 + 131056U;
3259#line 164
3260  flags = readb(__cil_tmp17);
3261#line 165
3262  __cil_tmp18 = (unsigned int )flags;
3263#line 165
3264  __cil_tmp19 = __cil_tmp18 | 2U;
3265#line 165
3266  __cil_tmp20 = (int )__cil_tmp19;
3267#line 165
3268  __cil_tmp21 = (unsigned char )__cil_tmp20;
3269#line 165
3270  __cil_tmp22 = (void volatile   *)ioaddr;
3271#line 165
3272  __cil_tmp23 = __cil_tmp22 + 131056U;
3273#line 165
3274  writeb(__cil_tmp21, __cil_tmp23);
3275  }
3276  {
3277#line 167
3278  __cil_tmp24 = (unsigned long )pdata;
3279#line 167
3280  __cil_tmp25 = __cil_tmp24 + 44;
3281#line 167
3282  __cil_tmp26 = *((int *)__cil_tmp25);
3283#line 167
3284  if (__cil_tmp26 >= 0) {
3285    {
3286#line 167
3287    __cil_tmp27 = (unsigned long )pdata;
3288#line 167
3289    __cil_tmp28 = __cil_tmp27 + 28;
3290#line 167
3291    __cil_tmp29 = *((unsigned int *)__cil_tmp28);
3292#line 167
3293    __cil_tmp30 = __cil_tmp29 & 16U;
3294#line 167
3295    if (__cil_tmp30 == 0U) {
3296      {
3297#line 167
3298      __cil_tmp31 = (unsigned long )pdata;
3299#line 167
3300      __cil_tmp32 = __cil_tmp31 + 44;
3301#line 167
3302      __cil_tmp33 = *((int *)__cil_tmp32);
3303#line 167
3304      __cil_tmp34 = (unsigned int )__cil_tmp33;
3305#line 167
3306      tmp = bin2bcd(__cil_tmp34);
3307#line 167
3308      tmp___0 = (int )tmp;
3309      }
3310    } else {
3311#line 167
3312      tmp___0 = 128;
3313    }
3314    }
3315  } else {
3316#line 167
3317    tmp___0 = 128;
3318  }
3319  }
3320  {
3321#line 167
3322  __cil_tmp35 = (unsigned char )tmp___0;
3323#line 167
3324  __cil_tmp36 = (void volatile   *)ioaddr;
3325#line 167
3326  __cil_tmp37 = __cil_tmp36 + 131061U;
3327#line 167
3328  writeb(__cil_tmp35, __cil_tmp37);
3329  }
3330  {
3331#line 170
3332  __cil_tmp38 = (unsigned long )pdata;
3333#line 170
3334  __cil_tmp39 = __cil_tmp38 + 40;
3335#line 170
3336  __cil_tmp40 = *((int *)__cil_tmp39);
3337#line 170
3338  if (__cil_tmp40 >= 0) {
3339    {
3340#line 170
3341    __cil_tmp41 = (unsigned long )pdata;
3342#line 170
3343    __cil_tmp42 = __cil_tmp41 + 28;
3344#line 170
3345    __cil_tmp43 = *((unsigned int *)__cil_tmp42);
3346#line 170
3347    __cil_tmp44 = __cil_tmp43 & 16U;
3348#line 170
3349    if (__cil_tmp44 == 0U) {
3350      {
3351#line 170
3352      __cil_tmp45 = (unsigned long )pdata;
3353#line 170
3354      __cil_tmp46 = __cil_tmp45 + 40;
3355#line 170
3356      __cil_tmp47 = *((int *)__cil_tmp46);
3357#line 170
3358      __cil_tmp48 = (unsigned int )__cil_tmp47;
3359#line 170
3360      tmp___1 = bin2bcd(__cil_tmp48);
3361#line 170
3362      tmp___2 = (int )tmp___1;
3363      }
3364    } else {
3365#line 170
3366      tmp___2 = 128;
3367    }
3368    }
3369  } else {
3370#line 170
3371    tmp___2 = 128;
3372  }
3373  }
3374  {
3375#line 170
3376  __cil_tmp49 = (unsigned char )tmp___2;
3377#line 170
3378  __cil_tmp50 = (void volatile   *)ioaddr;
3379#line 170
3380  __cil_tmp51 = __cil_tmp50 + 131060U;
3381#line 170
3382  writeb(__cil_tmp49, __cil_tmp51);
3383  }
3384  {
3385#line 173
3386  __cil_tmp52 = (unsigned long )pdata;
3387#line 173
3388  __cil_tmp53 = __cil_tmp52 + 36;
3389#line 173
3390  __cil_tmp54 = *((int *)__cil_tmp53);
3391#line 173
3392  if (__cil_tmp54 >= 0) {
3393    {
3394#line 173
3395    __cil_tmp55 = (unsigned long )pdata;
3396#line 173
3397    __cil_tmp56 = __cil_tmp55 + 28;
3398#line 173
3399    __cil_tmp57 = *((unsigned int *)__cil_tmp56);
3400#line 173
3401    __cil_tmp58 = __cil_tmp57 & 16U;
3402#line 173
3403    if (__cil_tmp58 == 0U) {
3404      {
3405#line 173
3406      __cil_tmp59 = (unsigned long )pdata;
3407#line 173
3408      __cil_tmp60 = __cil_tmp59 + 36;
3409#line 173
3410      __cil_tmp61 = *((int *)__cil_tmp60);
3411#line 173
3412      __cil_tmp62 = (unsigned int )__cil_tmp61;
3413#line 173
3414      tmp___3 = bin2bcd(__cil_tmp62);
3415#line 173
3416      tmp___4 = (int )tmp___3;
3417      }
3418    } else {
3419#line 173
3420      tmp___4 = 128;
3421    }
3422    }
3423  } else {
3424#line 173
3425    tmp___4 = 128;
3426  }
3427  }
3428  {
3429#line 173
3430  __cil_tmp63 = (unsigned char )tmp___4;
3431#line 173
3432  __cil_tmp64 = (void volatile   *)ioaddr;
3433#line 173
3434  __cil_tmp65 = __cil_tmp64 + 131059U;
3435#line 173
3436  writeb(__cil_tmp63, __cil_tmp65);
3437  }
3438  {
3439#line 176
3440  __cil_tmp66 = (unsigned long )pdata;
3441#line 176
3442  __cil_tmp67 = __cil_tmp66 + 32;
3443#line 176
3444  __cil_tmp68 = *((int *)__cil_tmp67);
3445#line 176
3446  if (__cil_tmp68 >= 0) {
3447    {
3448#line 176
3449    __cil_tmp69 = (unsigned long )pdata;
3450#line 176
3451    __cil_tmp70 = __cil_tmp69 + 28;
3452#line 176
3453    __cil_tmp71 = *((unsigned int *)__cil_tmp70);
3454#line 176
3455    __cil_tmp72 = __cil_tmp71 & 16U;
3456#line 176
3457    if (__cil_tmp72 == 0U) {
3458      {
3459#line 176
3460      __cil_tmp73 = (unsigned long )pdata;
3461#line 176
3462      __cil_tmp74 = __cil_tmp73 + 32;
3463#line 176
3464      __cil_tmp75 = *((int *)__cil_tmp74);
3465#line 176
3466      __cil_tmp76 = (unsigned int )__cil_tmp75;
3467#line 176
3468      tmp___5 = bin2bcd(__cil_tmp76);
3469#line 176
3470      tmp___6 = (int )tmp___5;
3471      }
3472    } else {
3473#line 176
3474      tmp___6 = 128;
3475    }
3476    }
3477  } else {
3478#line 176
3479    tmp___6 = 128;
3480  }
3481  }
3482  {
3483#line 176
3484  __cil_tmp77 = (unsigned char )tmp___6;
3485#line 176
3486  __cil_tmp78 = (void volatile   *)ioaddr;
3487#line 176
3488  __cil_tmp79 = __cil_tmp78 + 131058U;
3489#line 176
3490  writeb(__cil_tmp77, __cil_tmp79);
3491  }
3492  {
3493#line 179
3494  __cil_tmp80 = (unsigned long )pdata;
3495#line 179
3496  __cil_tmp81 = __cil_tmp80 + 28;
3497#line 179
3498  __cil_tmp82 = *((unsigned int *)__cil_tmp81);
3499#line 179
3500  if (__cil_tmp82 != 0U) {
3501#line 179
3502    tmp___7 = 64;
3503  } else {
3504#line 179
3505    tmp___7 = 0;
3506  }
3507  }
3508  {
3509#line 179
3510  __cil_tmp83 = (unsigned char )tmp___7;
3511#line 179
3512  __cil_tmp84 = (void volatile   *)ioaddr;
3513#line 179
3514  __cil_tmp85 = __cil_tmp84 + 131062U;
3515#line 179
3516  writeb(__cil_tmp83, __cil_tmp85);
3517#line 180
3518  __cil_tmp86 = (void const volatile   *)ioaddr;
3519#line 180
3520  __cil_tmp87 = __cil_tmp86 + 131056U;
3521#line 180
3522  readb(__cil_tmp87);
3523#line 181
3524  __cil_tmp88 = (int )flags;
3525#line 181
3526  __cil_tmp89 = __cil_tmp88 & 253;
3527#line 181
3528  __cil_tmp90 = (unsigned char )__cil_tmp89;
3529#line 181
3530  __cil_tmp91 = (void volatile   *)ioaddr;
3531#line 181
3532  __cil_tmp92 = __cil_tmp91 + 131056U;
3533#line 181
3534  writeb(__cil_tmp90, __cil_tmp92);
3535#line 182
3536  __cil_tmp93 = (unsigned long )pdata;
3537#line 182
3538  __cil_tmp94 = __cil_tmp93 + 48;
3539#line 182
3540  __cil_tmp95 = (spinlock_t *)__cil_tmp94;
3541#line 182
3542  spin_unlock_irqrestore(__cil_tmp95, irqflags);
3543  }
3544#line 183
3545  return;
3546}
3547}
3548#line 185 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2671/dscv_tempdir/dscv/ri/43_1a/drivers/rtc/rtc-stk17ta8.c.p"
3549static int stk17ta8_rtc_set_alarm(struct device *dev , struct rtc_wkalrm *alrm ) 
3550{ struct platform_device *pdev ;
3551  struct device  const  *__mptr ;
3552  struct rtc_plat_data *pdata ;
3553  void *tmp ;
3554  struct platform_device *__cil_tmp7 ;
3555  struct platform_device  const  *__cil_tmp8 ;
3556  unsigned long __cil_tmp9 ;
3557  unsigned long __cil_tmp10 ;
3558  int __cil_tmp11 ;
3559  unsigned long __cil_tmp12 ;
3560  unsigned long __cil_tmp13 ;
3561  unsigned long __cil_tmp14 ;
3562  unsigned long __cil_tmp15 ;
3563  unsigned long __cil_tmp16 ;
3564  unsigned long __cil_tmp17 ;
3565  unsigned long __cil_tmp18 ;
3566  unsigned long __cil_tmp19 ;
3567  unsigned long __cil_tmp20 ;
3568  unsigned long __cil_tmp21 ;
3569  unsigned long __cil_tmp22 ;
3570  unsigned long __cil_tmp23 ;
3571  unsigned long __cil_tmp24 ;
3572  unsigned long __cil_tmp25 ;
3573  unsigned long __cil_tmp26 ;
3574  unsigned long __cil_tmp27 ;
3575  unsigned long __cil_tmp28 ;
3576  unsigned long __cil_tmp29 ;
3577  unsigned long __cil_tmp30 ;
3578  unsigned char __cil_tmp31 ;
3579  unsigned int __cil_tmp32 ;
3580  unsigned long __cil_tmp33 ;
3581  unsigned long __cil_tmp34 ;
3582  unsigned long __cil_tmp35 ;
3583  unsigned long __cil_tmp36 ;
3584  unsigned int __cil_tmp37 ;
3585
3586  {
3587  {
3588#line 187
3589  __mptr = (struct device  const  *)dev;
3590#line 187
3591  __cil_tmp7 = (struct platform_device *)__mptr;
3592#line 187
3593  pdev = __cil_tmp7 + 0xfffffffffffffff0UL;
3594#line 188
3595  __cil_tmp8 = (struct platform_device  const  *)pdev;
3596#line 188
3597  tmp = platform_get_drvdata(__cil_tmp8);
3598#line 188
3599  pdata = (struct rtc_plat_data *)tmp;
3600  }
3601  {
3602#line 190
3603  __cil_tmp9 = (unsigned long )pdata;
3604#line 190
3605  __cil_tmp10 = __cil_tmp9 + 24;
3606#line 190
3607  __cil_tmp11 = *((int *)__cil_tmp10);
3608#line 190
3609  if (__cil_tmp11 <= 0) {
3610#line 191
3611    return (-22);
3612  } else {
3613
3614  }
3615  }
3616#line 192
3617  __cil_tmp12 = (unsigned long )pdata;
3618#line 192
3619  __cil_tmp13 = __cil_tmp12 + 44;
3620#line 192
3621  __cil_tmp14 = 4 + 12;
3622#line 192
3623  __cil_tmp15 = (unsigned long )alrm;
3624#line 192
3625  __cil_tmp16 = __cil_tmp15 + __cil_tmp14;
3626#line 192
3627  *((int *)__cil_tmp13) = *((int *)__cil_tmp16);
3628#line 193
3629  __cil_tmp17 = (unsigned long )pdata;
3630#line 193
3631  __cil_tmp18 = __cil_tmp17 + 40;
3632#line 193
3633  __cil_tmp19 = 4 + 8;
3634#line 193
3635  __cil_tmp20 = (unsigned long )alrm;
3636#line 193
3637  __cil_tmp21 = __cil_tmp20 + __cil_tmp19;
3638#line 193
3639  *((int *)__cil_tmp18) = *((int *)__cil_tmp21);
3640#line 194
3641  __cil_tmp22 = (unsigned long )pdata;
3642#line 194
3643  __cil_tmp23 = __cil_tmp22 + 36;
3644#line 194
3645  __cil_tmp24 = 4 + 4;
3646#line 194
3647  __cil_tmp25 = (unsigned long )alrm;
3648#line 194
3649  __cil_tmp26 = __cil_tmp25 + __cil_tmp24;
3650#line 194
3651  *((int *)__cil_tmp23) = *((int *)__cil_tmp26);
3652#line 195
3653  __cil_tmp27 = (unsigned long )pdata;
3654#line 195
3655  __cil_tmp28 = __cil_tmp27 + 32;
3656#line 195
3657  __cil_tmp29 = (unsigned long )alrm;
3658#line 195
3659  __cil_tmp30 = __cil_tmp29 + 4;
3660#line 195
3661  *((int *)__cil_tmp28) = *((int *)__cil_tmp30);
3662  {
3663#line 196
3664  __cil_tmp31 = *((unsigned char *)alrm);
3665#line 196
3666  __cil_tmp32 = (unsigned int )__cil_tmp31;
3667#line 196
3668  if (__cil_tmp32 != 0U) {
3669#line 197
3670    __cil_tmp33 = (unsigned long )pdata;
3671#line 197
3672    __cil_tmp34 = __cil_tmp33 + 28;
3673#line 197
3674    __cil_tmp35 = (unsigned long )pdata;
3675#line 197
3676    __cil_tmp36 = __cil_tmp35 + 28;
3677#line 197
3678    __cil_tmp37 = *((unsigned int *)__cil_tmp36);
3679#line 197
3680    *((unsigned int *)__cil_tmp34) = __cil_tmp37 | 32U;
3681  } else {
3682
3683  }
3684  }
3685  {
3686#line 198
3687  stk17ta8_rtc_update_alarm(pdata);
3688  }
3689#line 199
3690  return (0);
3691}
3692}
3693#line 202 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2671/dscv_tempdir/dscv/ri/43_1a/drivers/rtc/rtc-stk17ta8.c.p"
3694static int stk17ta8_rtc_read_alarm(struct device *dev , struct rtc_wkalrm *alrm ) 
3695{ struct platform_device *pdev ;
3696  struct device  const  *__mptr ;
3697  struct rtc_plat_data *pdata ;
3698  void *tmp ;
3699  struct platform_device *__cil_tmp7 ;
3700  struct platform_device  const  *__cil_tmp8 ;
3701  unsigned long __cil_tmp9 ;
3702  unsigned long __cil_tmp10 ;
3703  int __cil_tmp11 ;
3704  unsigned long __cil_tmp12 ;
3705  unsigned long __cil_tmp13 ;
3706  int __cil_tmp14 ;
3707  unsigned long __cil_tmp15 ;
3708  unsigned long __cil_tmp16 ;
3709  unsigned long __cil_tmp17 ;
3710  unsigned long __cil_tmp18 ;
3711  unsigned long __cil_tmp19 ;
3712  unsigned long __cil_tmp20 ;
3713  unsigned long __cil_tmp21 ;
3714  unsigned long __cil_tmp22 ;
3715  unsigned long __cil_tmp23 ;
3716  unsigned long __cil_tmp24 ;
3717  int __cil_tmp25 ;
3718  unsigned long __cil_tmp26 ;
3719  unsigned long __cil_tmp27 ;
3720  unsigned long __cil_tmp28 ;
3721  unsigned long __cil_tmp29 ;
3722  unsigned long __cil_tmp30 ;
3723  unsigned long __cil_tmp31 ;
3724  unsigned long __cil_tmp32 ;
3725  unsigned long __cil_tmp33 ;
3726  unsigned long __cil_tmp34 ;
3727  unsigned long __cil_tmp35 ;
3728  int __cil_tmp36 ;
3729  unsigned long __cil_tmp37 ;
3730  unsigned long __cil_tmp38 ;
3731  unsigned long __cil_tmp39 ;
3732  unsigned long __cil_tmp40 ;
3733  unsigned long __cil_tmp41 ;
3734  unsigned long __cil_tmp42 ;
3735  unsigned long __cil_tmp43 ;
3736  unsigned long __cil_tmp44 ;
3737  unsigned long __cil_tmp45 ;
3738  unsigned long __cil_tmp46 ;
3739  int __cil_tmp47 ;
3740  unsigned long __cil_tmp48 ;
3741  unsigned long __cil_tmp49 ;
3742  unsigned long __cil_tmp50 ;
3743  unsigned long __cil_tmp51 ;
3744  unsigned long __cil_tmp52 ;
3745  unsigned long __cil_tmp53 ;
3746  unsigned long __cil_tmp54 ;
3747  unsigned long __cil_tmp55 ;
3748  unsigned int __cil_tmp56 ;
3749  unsigned int __cil_tmp57 ;
3750  int __cil_tmp58 ;
3751
3752  {
3753  {
3754#line 204
3755  __mptr = (struct device  const  *)dev;
3756#line 204
3757  __cil_tmp7 = (struct platform_device *)__mptr;
3758#line 204
3759  pdev = __cil_tmp7 + 0xfffffffffffffff0UL;
3760#line 205
3761  __cil_tmp8 = (struct platform_device  const  *)pdev;
3762#line 205
3763  tmp = platform_get_drvdata(__cil_tmp8);
3764#line 205
3765  pdata = (struct rtc_plat_data *)tmp;
3766  }
3767  {
3768#line 207
3769  __cil_tmp9 = (unsigned long )pdata;
3770#line 207
3771  __cil_tmp10 = __cil_tmp9 + 24;
3772#line 207
3773  __cil_tmp11 = *((int *)__cil_tmp10);
3774#line 207
3775  if (__cil_tmp11 <= 0) {
3776#line 208
3777    return (-22);
3778  } else {
3779
3780  }
3781  }
3782  {
3783#line 209
3784  __cil_tmp12 = (unsigned long )pdata;
3785#line 209
3786  __cil_tmp13 = __cil_tmp12 + 44;
3787#line 209
3788  __cil_tmp14 = *((int *)__cil_tmp13);
3789#line 209
3790  if (0 > __cil_tmp14) {
3791#line 209
3792    __cil_tmp15 = 4 + 12;
3793#line 209
3794    __cil_tmp16 = (unsigned long )alrm;
3795#line 209
3796    __cil_tmp17 = __cil_tmp16 + __cil_tmp15;
3797#line 209
3798    *((int *)__cil_tmp17) = 0;
3799  } else {
3800#line 209
3801    __cil_tmp18 = 4 + 12;
3802#line 209
3803    __cil_tmp19 = (unsigned long )alrm;
3804#line 209
3805    __cil_tmp20 = __cil_tmp19 + __cil_tmp18;
3806#line 209
3807    __cil_tmp21 = (unsigned long )pdata;
3808#line 209
3809    __cil_tmp22 = __cil_tmp21 + 44;
3810#line 209
3811    *((int *)__cil_tmp20) = *((int *)__cil_tmp22);
3812  }
3813  }
3814  {
3815#line 210
3816  __cil_tmp23 = (unsigned long )pdata;
3817#line 210
3818  __cil_tmp24 = __cil_tmp23 + 40;
3819#line 210
3820  __cil_tmp25 = *((int *)__cil_tmp24);
3821#line 210
3822  if (0 > __cil_tmp25) {
3823#line 210
3824    __cil_tmp26 = 4 + 8;
3825#line 210
3826    __cil_tmp27 = (unsigned long )alrm;
3827#line 210
3828    __cil_tmp28 = __cil_tmp27 + __cil_tmp26;
3829#line 210
3830    *((int *)__cil_tmp28) = 0;
3831  } else {
3832#line 210
3833    __cil_tmp29 = 4 + 8;
3834#line 210
3835    __cil_tmp30 = (unsigned long )alrm;
3836#line 210
3837    __cil_tmp31 = __cil_tmp30 + __cil_tmp29;
3838#line 210
3839    __cil_tmp32 = (unsigned long )pdata;
3840#line 210
3841    __cil_tmp33 = __cil_tmp32 + 40;
3842#line 210
3843    *((int *)__cil_tmp31) = *((int *)__cil_tmp33);
3844  }
3845  }
3846  {
3847#line 211
3848  __cil_tmp34 = (unsigned long )pdata;
3849#line 211
3850  __cil_tmp35 = __cil_tmp34 + 36;
3851#line 211
3852  __cil_tmp36 = *((int *)__cil_tmp35);
3853#line 211
3854  if (0 > __cil_tmp36) {
3855#line 211
3856    __cil_tmp37 = 4 + 4;
3857#line 211
3858    __cil_tmp38 = (unsigned long )alrm;
3859#line 211
3860    __cil_tmp39 = __cil_tmp38 + __cil_tmp37;
3861#line 211
3862    *((int *)__cil_tmp39) = 0;
3863  } else {
3864#line 211
3865    __cil_tmp40 = 4 + 4;
3866#line 211
3867    __cil_tmp41 = (unsigned long )alrm;
3868#line 211
3869    __cil_tmp42 = __cil_tmp41 + __cil_tmp40;
3870#line 211
3871    __cil_tmp43 = (unsigned long )pdata;
3872#line 211
3873    __cil_tmp44 = __cil_tmp43 + 36;
3874#line 211
3875    *((int *)__cil_tmp42) = *((int *)__cil_tmp44);
3876  }
3877  }
3878  {
3879#line 212
3880  __cil_tmp45 = (unsigned long )pdata;
3881#line 212
3882  __cil_tmp46 = __cil_tmp45 + 32;
3883#line 212
3884  __cil_tmp47 = *((int *)__cil_tmp46);
3885#line 212
3886  if (0 > __cil_tmp47) {
3887#line 212
3888    __cil_tmp48 = (unsigned long )alrm;
3889#line 212
3890    __cil_tmp49 = __cil_tmp48 + 4;
3891#line 212
3892    *((int *)__cil_tmp49) = 0;
3893  } else {
3894#line 212
3895    __cil_tmp50 = (unsigned long )alrm;
3896#line 212
3897    __cil_tmp51 = __cil_tmp50 + 4;
3898#line 212
3899    __cil_tmp52 = (unsigned long )pdata;
3900#line 212
3901    __cil_tmp53 = __cil_tmp52 + 32;
3902#line 212
3903    *((int *)__cil_tmp51) = *((int *)__cil_tmp53);
3904  }
3905  }
3906#line 213
3907  __cil_tmp54 = (unsigned long )pdata;
3908#line 213
3909  __cil_tmp55 = __cil_tmp54 + 28;
3910#line 213
3911  __cil_tmp56 = *((unsigned int *)__cil_tmp55);
3912#line 213
3913  __cil_tmp57 = __cil_tmp56 & 32U;
3914#line 213
3915  __cil_tmp58 = __cil_tmp57 != 0U;
3916#line 213
3917  *((unsigned char *)alrm) = (unsigned char )__cil_tmp58;
3918#line 214
3919  return (0);
3920}
3921}
3922#line 217 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2671/dscv_tempdir/dscv/ri/43_1a/drivers/rtc/rtc-stk17ta8.c.p"
3923static irqreturn_t stk17ta8_rtc_interrupt(int irq , void *dev_id ) 
3924{ struct platform_device *pdev ;
3925  struct rtc_plat_data *pdata ;
3926  void *tmp ;
3927  void *ioaddr ;
3928  unsigned long events ;
3929  unsigned char tmp___0 ;
3930  long tmp___1 ;
3931  unsigned char tmp___2 ;
3932  struct platform_device  const  *__cil_tmp11 ;
3933  unsigned long __cil_tmp12 ;
3934  unsigned long __cil_tmp13 ;
3935  unsigned long __cil_tmp14 ;
3936  unsigned long __cil_tmp15 ;
3937  spinlock_t *__cil_tmp16 ;
3938  void const volatile   *__cil_tmp17 ;
3939  void const volatile   *__cil_tmp18 ;
3940  int __cil_tmp19 ;
3941  int __cil_tmp20 ;
3942  void const volatile   *__cil_tmp21 ;
3943  void const volatile   *__cil_tmp22 ;
3944  signed char __cil_tmp23 ;
3945  int __cil_tmp24 ;
3946  struct rtc_device *__cil_tmp25 ;
3947  unsigned long __cil_tmp26 ;
3948  struct rtc_device *__cil_tmp27 ;
3949  unsigned long __cil_tmp28 ;
3950  int __cil_tmp29 ;
3951  long __cil_tmp30 ;
3952  struct rtc_device *__cil_tmp31 ;
3953  unsigned long __cil_tmp32 ;
3954  unsigned long __cil_tmp33 ;
3955  spinlock_t *__cil_tmp34 ;
3956  int __cil_tmp35 ;
3957
3958  {
3959  {
3960#line 219
3961  pdev = (struct platform_device *)dev_id;
3962#line 220
3963  __cil_tmp11 = (struct platform_device  const  *)pdev;
3964#line 220
3965  tmp = platform_get_drvdata(__cil_tmp11);
3966#line 220
3967  pdata = (struct rtc_plat_data *)tmp;
3968#line 221
3969  __cil_tmp12 = (unsigned long )pdata;
3970#line 221
3971  __cil_tmp13 = __cil_tmp12 + 8;
3972#line 221
3973  ioaddr = *((void **)__cil_tmp13);
3974#line 222
3975  events = 0UL;
3976#line 224
3977  __cil_tmp14 = (unsigned long )pdata;
3978#line 224
3979  __cil_tmp15 = __cil_tmp14 + 48;
3980#line 224
3981  __cil_tmp16 = (spinlock_t *)__cil_tmp15;
3982#line 224
3983  spin_lock(__cil_tmp16);
3984#line 226
3985  __cil_tmp17 = (void const volatile   *)ioaddr;
3986#line 226
3987  __cil_tmp18 = __cil_tmp17 + 131056U;
3988#line 226
3989  tmp___2 = readb(__cil_tmp18);
3990  }
3991  {
3992#line 226
3993  __cil_tmp19 = (int )tmp___2;
3994#line 226
3995  __cil_tmp20 = __cil_tmp19 & 64;
3996#line 226
3997  if (__cil_tmp20 != 0) {
3998    {
3999#line 227
4000    events = 128UL;
4001#line 228
4002    __cil_tmp21 = (void const volatile   *)ioaddr;
4003#line 228
4004    __cil_tmp22 = __cil_tmp21 + 131058U;
4005#line 228
4006    tmp___0 = readb(__cil_tmp22);
4007    }
4008    {
4009#line 228
4010    __cil_tmp23 = (signed char )tmp___0;
4011#line 228
4012    __cil_tmp24 = (int )__cil_tmp23;
4013#line 228
4014    if (__cil_tmp24 < 0) {
4015#line 229
4016      events = events | 16UL;
4017    } else {
4018#line 231
4019      events = events | 32UL;
4020    }
4021    }
4022    {
4023#line 232
4024    __cil_tmp25 = (struct rtc_device *)0;
4025#line 232
4026    __cil_tmp26 = (unsigned long )__cil_tmp25;
4027#line 232
4028    __cil_tmp27 = *((struct rtc_device **)pdata);
4029#line 232
4030    __cil_tmp28 = (unsigned long )__cil_tmp27;
4031#line 232
4032    __cil_tmp29 = __cil_tmp28 != __cil_tmp26;
4033#line 232
4034    __cil_tmp30 = (long )__cil_tmp29;
4035#line 232
4036    tmp___1 = __builtin_expect(__cil_tmp30, 1L);
4037    }
4038#line 232
4039    if (tmp___1 != 0L) {
4040      {
4041#line 233
4042      __cil_tmp31 = *((struct rtc_device **)pdata);
4043#line 233
4044      rtc_update_irq(__cil_tmp31, 1UL, events);
4045      }
4046    } else {
4047
4048    }
4049  } else {
4050
4051  }
4052  }
4053  {
4054#line 235
4055  __cil_tmp32 = (unsigned long )pdata;
4056#line 235
4057  __cil_tmp33 = __cil_tmp32 + 48;
4058#line 235
4059  __cil_tmp34 = (spinlock_t *)__cil_tmp33;
4060#line 235
4061  spin_unlock(__cil_tmp34);
4062  }
4063  {
4064#line 236
4065  __cil_tmp35 = events != 0UL;
4066#line 236
4067  return ((irqreturn_t )__cil_tmp35);
4068  }
4069}
4070}
4071#line 239 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2671/dscv_tempdir/dscv/ri/43_1a/drivers/rtc/rtc-stk17ta8.c.p"
4072static int stk17ta8_rtc_alarm_irq_enable(struct device *dev , unsigned int enabled ) 
4073{ struct platform_device *pdev ;
4074  struct device  const  *__mptr ;
4075  struct rtc_plat_data *pdata ;
4076  void *tmp ;
4077  struct platform_device *__cil_tmp7 ;
4078  struct platform_device  const  *__cil_tmp8 ;
4079  unsigned long __cil_tmp9 ;
4080  unsigned long __cil_tmp10 ;
4081  int __cil_tmp11 ;
4082  unsigned long __cil_tmp12 ;
4083  unsigned long __cil_tmp13 ;
4084  unsigned long __cil_tmp14 ;
4085  unsigned long __cil_tmp15 ;
4086  unsigned int __cil_tmp16 ;
4087  unsigned long __cil_tmp17 ;
4088  unsigned long __cil_tmp18 ;
4089  unsigned long __cil_tmp19 ;
4090  unsigned long __cil_tmp20 ;
4091  unsigned int __cil_tmp21 ;
4092
4093  {
4094  {
4095#line 242
4096  __mptr = (struct device  const  *)dev;
4097#line 242
4098  __cil_tmp7 = (struct platform_device *)__mptr;
4099#line 242
4100  pdev = __cil_tmp7 + 0xfffffffffffffff0UL;
4101#line 243
4102  __cil_tmp8 = (struct platform_device  const  *)pdev;
4103#line 243
4104  tmp = platform_get_drvdata(__cil_tmp8);
4105#line 243
4106  pdata = (struct rtc_plat_data *)tmp;
4107  }
4108  {
4109#line 245
4110  __cil_tmp9 = (unsigned long )pdata;
4111#line 245
4112  __cil_tmp10 = __cil_tmp9 + 24;
4113#line 245
4114  __cil_tmp11 = *((int *)__cil_tmp10);
4115#line 245
4116  if (__cil_tmp11 <= 0) {
4117#line 246
4118    return (-22);
4119  } else {
4120
4121  }
4122  }
4123#line 247
4124  if (enabled != 0U) {
4125#line 248
4126    __cil_tmp12 = (unsigned long )pdata;
4127#line 248
4128    __cil_tmp13 = __cil_tmp12 + 28;
4129#line 248
4130    __cil_tmp14 = (unsigned long )pdata;
4131#line 248
4132    __cil_tmp15 = __cil_tmp14 + 28;
4133#line 248
4134    __cil_tmp16 = *((unsigned int *)__cil_tmp15);
4135#line 248
4136    *((unsigned int *)__cil_tmp13) = __cil_tmp16 | 32U;
4137  } else {
4138#line 250
4139    __cil_tmp17 = (unsigned long )pdata;
4140#line 250
4141    __cil_tmp18 = __cil_tmp17 + 28;
4142#line 250
4143    __cil_tmp19 = (unsigned long )pdata;
4144#line 250
4145    __cil_tmp20 = __cil_tmp19 + 28;
4146#line 250
4147    __cil_tmp21 = *((unsigned int *)__cil_tmp20);
4148#line 250
4149    *((unsigned int *)__cil_tmp18) = __cil_tmp21 & 4294967263U;
4150  }
4151  {
4152#line 251
4153  stk17ta8_rtc_update_alarm(pdata);
4154  }
4155#line 252
4156  return (0);
4157}
4158}
4159#line 255 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2671/dscv_tempdir/dscv/ri/43_1a/drivers/rtc/rtc-stk17ta8.c.p"
4160static struct rtc_class_ops  const  stk17ta8_rtc_ops  = 
4161#line 255
4162     {(int (*)(struct device * ))0, (void (*)(struct device * ))0, (int (*)(struct device * ,
4163                                                                          unsigned int  ,
4164                                                                          unsigned long  ))0,
4165    & stk17ta8_rtc_read_time, & stk17ta8_rtc_set_time, & stk17ta8_rtc_read_alarm,
4166    & stk17ta8_rtc_set_alarm, (int (*)(struct device * , struct seq_file * ))0, (int (*)(struct device * ,
4167                                                                                         unsigned long  ))0,
4168    (int (*)(struct device * , int  ))0, & stk17ta8_rtc_alarm_irq_enable};
4169#line 263 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2671/dscv_tempdir/dscv/ri/43_1a/drivers/rtc/rtc-stk17ta8.c.p"
4170static ssize_t stk17ta8_nvram_read(struct file *filp , struct kobject *kobj , struct bin_attribute *attr ,
4171                                   char *buf , loff_t pos , size_t size ) 
4172{ struct device *dev ;
4173  struct kobject  const  *__mptr ;
4174  struct platform_device *pdev ;
4175  struct device  const  *__mptr___0 ;
4176  struct rtc_plat_data *pdata ;
4177  void *tmp ;
4178  void *ioaddr ;
4179  ssize_t count ;
4180  char *tmp___0 ;
4181  loff_t tmp___1 ;
4182  unsigned char tmp___2 ;
4183  struct device *__cil_tmp18 ;
4184  struct platform_device *__cil_tmp19 ;
4185  struct platform_device  const  *__cil_tmp20 ;
4186  unsigned long __cil_tmp21 ;
4187  unsigned long __cil_tmp22 ;
4188  unsigned long __cil_tmp23 ;
4189  void const volatile   *__cil_tmp24 ;
4190  void const volatile   *__cil_tmp25 ;
4191
4192  {
4193  {
4194#line 267
4195  __mptr = (struct kobject  const  *)kobj;
4196#line 267
4197  __cil_tmp18 = (struct device *)__mptr;
4198#line 267
4199  dev = __cil_tmp18 + 0xfffffffffffffff0UL;
4200#line 268
4201  __mptr___0 = (struct device  const  *)dev;
4202#line 268
4203  __cil_tmp19 = (struct platform_device *)__mptr___0;
4204#line 268
4205  pdev = __cil_tmp19 + 0xfffffffffffffff0UL;
4206#line 269
4207  __cil_tmp20 = (struct platform_device  const  *)pdev;
4208#line 269
4209  tmp = platform_get_drvdata(__cil_tmp20);
4210#line 269
4211  pdata = (struct rtc_plat_data *)tmp;
4212#line 270
4213  __cil_tmp21 = (unsigned long )pdata;
4214#line 270
4215  __cil_tmp22 = __cil_tmp21 + 8;
4216#line 270
4217  ioaddr = *((void **)__cil_tmp22);
4218#line 273
4219  count = 0L;
4220  }
4221#line 273
4222  goto ldv_21046;
4223  ldv_21045: 
4224  {
4225#line 274
4226  tmp___0 = buf;
4227#line 274
4228  buf = buf + 1;
4229#line 274
4230  tmp___1 = pos;
4231#line 274
4232  pos = pos + 1LL;
4233#line 274
4234  __cil_tmp23 = (unsigned long )tmp___1;
4235#line 274
4236  __cil_tmp24 = (void const volatile   *)ioaddr;
4237#line 274
4238  __cil_tmp25 = __cil_tmp24 + __cil_tmp23;
4239#line 274
4240  tmp___2 = readb(__cil_tmp25);
4241#line 274
4242  *tmp___0 = (char )tmp___2;
4243#line 273
4244  count = count + 1L;
4245#line 273
4246  size = size - 1UL;
4247  }
4248  ldv_21046: ;
4249#line 273
4250  if (size != 0UL) {
4251#line 273
4252    if (pos <= 131055LL) {
4253#line 274
4254      goto ldv_21045;
4255    } else {
4256#line 276
4257      goto ldv_21047;
4258    }
4259  } else {
4260#line 276
4261    goto ldv_21047;
4262  }
4263  ldv_21047: ;
4264#line 275
4265  return (count);
4266}
4267}
4268#line 278 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2671/dscv_tempdir/dscv/ri/43_1a/drivers/rtc/rtc-stk17ta8.c.p"
4269static ssize_t stk17ta8_nvram_write(struct file *filp , struct kobject *kobj , struct bin_attribute *attr ,
4270                                    char *buf , loff_t pos , size_t size ) 
4271{ struct device *dev ;
4272  struct kobject  const  *__mptr ;
4273  struct platform_device *pdev ;
4274  struct device  const  *__mptr___0 ;
4275  struct rtc_plat_data *pdata ;
4276  void *tmp ;
4277  void *ioaddr ;
4278  ssize_t count ;
4279  loff_t tmp___0 ;
4280  char *tmp___1 ;
4281  struct device *__cil_tmp17 ;
4282  struct platform_device *__cil_tmp18 ;
4283  struct platform_device  const  *__cil_tmp19 ;
4284  unsigned long __cil_tmp20 ;
4285  unsigned long __cil_tmp21 ;
4286  char __cil_tmp22 ;
4287  unsigned char __cil_tmp23 ;
4288  int __cil_tmp24 ;
4289  unsigned char __cil_tmp25 ;
4290  unsigned long __cil_tmp26 ;
4291  void volatile   *__cil_tmp27 ;
4292  void volatile   *__cil_tmp28 ;
4293
4294  {
4295  {
4296#line 282
4297  __mptr = (struct kobject  const  *)kobj;
4298#line 282
4299  __cil_tmp17 = (struct device *)__mptr;
4300#line 282
4301  dev = __cil_tmp17 + 0xfffffffffffffff0UL;
4302#line 283
4303  __mptr___0 = (struct device  const  *)dev;
4304#line 283
4305  __cil_tmp18 = (struct platform_device *)__mptr___0;
4306#line 283
4307  pdev = __cil_tmp18 + 0xfffffffffffffff0UL;
4308#line 284
4309  __cil_tmp19 = (struct platform_device  const  *)pdev;
4310#line 284
4311  tmp = platform_get_drvdata(__cil_tmp19);
4312#line 284
4313  pdata = (struct rtc_plat_data *)tmp;
4314#line 285
4315  __cil_tmp20 = (unsigned long )pdata;
4316#line 285
4317  __cil_tmp21 = __cil_tmp20 + 8;
4318#line 285
4319  ioaddr = *((void **)__cil_tmp21);
4320#line 288
4321  count = 0L;
4322  }
4323#line 288
4324  goto ldv_21066;
4325  ldv_21065: 
4326  {
4327#line 289
4328  tmp___0 = pos;
4329#line 289
4330  pos = pos + 1LL;
4331#line 289
4332  tmp___1 = buf;
4333#line 289
4334  buf = buf + 1;
4335#line 289
4336  __cil_tmp22 = *tmp___1;
4337#line 289
4338  __cil_tmp23 = (unsigned char )__cil_tmp22;
4339#line 289
4340  __cil_tmp24 = (int )__cil_tmp23;
4341#line 289
4342  __cil_tmp25 = (unsigned char )__cil_tmp24;
4343#line 289
4344  __cil_tmp26 = (unsigned long )tmp___0;
4345#line 289
4346  __cil_tmp27 = (void volatile   *)ioaddr;
4347#line 289
4348  __cil_tmp28 = __cil_tmp27 + __cil_tmp26;
4349#line 289
4350  writeb(__cil_tmp25, __cil_tmp28);
4351#line 288
4352  count = count + 1L;
4353#line 288
4354  size = size - 1UL;
4355  }
4356  ldv_21066: ;
4357#line 288
4358  if (size != 0UL) {
4359#line 288
4360    if (pos <= 131055LL) {
4361#line 289
4362      goto ldv_21065;
4363    } else {
4364#line 291
4365      goto ldv_21067;
4366    }
4367  } else {
4368#line 291
4369    goto ldv_21067;
4370  }
4371  ldv_21067: ;
4372#line 290
4373  return (count);
4374}
4375}
4376#line 293 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2671/dscv_tempdir/dscv/ri/43_1a/drivers/rtc/rtc-stk17ta8.c.p"
4377static struct bin_attribute stk17ta8_nvram_attr  =    {{"nvram", (umode_t )420U, (struct lock_class_key *)0, {{{(char)0}, {(char)0},
4378                                                            {(char)0}, {(char)0},
4379                                                            {(char)0}, {(char)0},
4380                                                            {(char)0}, {(char)0}}}},
4381    131056UL, (void *)0, & stk17ta8_nvram_read, & stk17ta8_nvram_write, (int (*)(struct file * ,
4382                                                                                 struct kobject * ,
4383                                                                                 struct bin_attribute * ,
4384                                                                                 struct vm_area_struct * ))0};
4385#line 303 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2671/dscv_tempdir/dscv/ri/43_1a/drivers/rtc/rtc-stk17ta8.c.p"
4386static int stk17ta8_rtc_probe(struct platform_device *pdev ) 
4387{ struct resource *res ;
4388  unsigned int cal ;
4389  unsigned int flags ;
4390  struct rtc_plat_data *pdata ;
4391  void *ioaddr ;
4392  int ret ;
4393  void *tmp ;
4394  struct resource *tmp___0 ;
4395  unsigned char tmp___1 ;
4396  unsigned char tmp___2 ;
4397  unsigned char tmp___3 ;
4398  struct lock_class_key __key ;
4399  int tmp___4 ;
4400  long tmp___5 ;
4401  long tmp___6 ;
4402  struct resource *__cil_tmp17 ;
4403  unsigned long __cil_tmp18 ;
4404  unsigned long __cil_tmp19 ;
4405  unsigned long __cil_tmp20 ;
4406  unsigned long __cil_tmp21 ;
4407  struct device *__cil_tmp22 ;
4408  struct rtc_plat_data *__cil_tmp23 ;
4409  unsigned long __cil_tmp24 ;
4410  unsigned long __cil_tmp25 ;
4411  unsigned long __cil_tmp26 ;
4412  unsigned long __cil_tmp27 ;
4413  struct device *__cil_tmp28 ;
4414  resource_size_t __cil_tmp29 ;
4415  char const   *__cil_tmp30 ;
4416  struct resource *__cil_tmp31 ;
4417  unsigned long __cil_tmp32 ;
4418  unsigned long __cil_tmp33 ;
4419  unsigned long __cil_tmp34 ;
4420  unsigned long __cil_tmp35 ;
4421  struct device *__cil_tmp36 ;
4422  resource_size_t __cil_tmp37 ;
4423  void *__cil_tmp38 ;
4424  unsigned long __cil_tmp39 ;
4425  unsigned long __cil_tmp40 ;
4426  unsigned long __cil_tmp41 ;
4427  unsigned long __cil_tmp42 ;
4428  unsigned long __cil_tmp43 ;
4429  unsigned long __cil_tmp44 ;
4430  void const volatile   *__cil_tmp45 ;
4431  void const volatile   *__cil_tmp46 ;
4432  unsigned int __cil_tmp47 ;
4433  void const volatile   *__cil_tmp48 ;
4434  void const volatile   *__cil_tmp49 ;
4435  unsigned char __cil_tmp50 ;
4436  unsigned int __cil_tmp51 ;
4437  unsigned int __cil_tmp52 ;
4438  int __cil_tmp53 ;
4439  unsigned char __cil_tmp54 ;
4440  void volatile   *__cil_tmp55 ;
4441  void volatile   *__cil_tmp56 ;
4442  unsigned char __cil_tmp57 ;
4443  int __cil_tmp58 ;
4444  unsigned char __cil_tmp59 ;
4445  void volatile   *__cil_tmp60 ;
4446  void volatile   *__cil_tmp61 ;
4447  unsigned char __cil_tmp62 ;
4448  int __cil_tmp63 ;
4449  int __cil_tmp64 ;
4450  unsigned char __cil_tmp65 ;
4451  void volatile   *__cil_tmp66 ;
4452  void volatile   *__cil_tmp67 ;
4453  void const volatile   *__cil_tmp68 ;
4454  void const volatile   *__cil_tmp69 ;
4455  int __cil_tmp70 ;
4456  int __cil_tmp71 ;
4457  unsigned long __cil_tmp72 ;
4458  unsigned long __cil_tmp73 ;
4459  struct device *__cil_tmp74 ;
4460  struct device  const  *__cil_tmp75 ;
4461  unsigned long __cil_tmp76 ;
4462  unsigned long __cil_tmp77 ;
4463  spinlock_t *__cil_tmp78 ;
4464  unsigned long __cil_tmp79 ;
4465  unsigned long __cil_tmp80 ;
4466  struct raw_spinlock *__cil_tmp81 ;
4467  unsigned long __cil_tmp82 ;
4468  unsigned long __cil_tmp83 ;
4469  void *__cil_tmp84 ;
4470  unsigned long __cil_tmp85 ;
4471  unsigned long __cil_tmp86 ;
4472  int __cil_tmp87 ;
4473  void volatile   *__cil_tmp88 ;
4474  void volatile   *__cil_tmp89 ;
4475  unsigned long __cil_tmp90 ;
4476  unsigned long __cil_tmp91 ;
4477  struct device *__cil_tmp92 ;
4478  unsigned long __cil_tmp93 ;
4479  unsigned long __cil_tmp94 ;
4480  int __cil_tmp95 ;
4481  unsigned int __cil_tmp96 ;
4482  char const   *__cil_tmp97 ;
4483  void *__cil_tmp98 ;
4484  unsigned long __cil_tmp99 ;
4485  unsigned long __cil_tmp100 ;
4486  struct device *__cil_tmp101 ;
4487  struct device  const  *__cil_tmp102 ;
4488  unsigned long __cil_tmp103 ;
4489  unsigned long __cil_tmp104 ;
4490  char const   *__cil_tmp105 ;
4491  unsigned long __cil_tmp106 ;
4492  unsigned long __cil_tmp107 ;
4493  struct device *__cil_tmp108 ;
4494  struct rtc_device *__cil_tmp109 ;
4495  void const   *__cil_tmp110 ;
4496  struct rtc_device *__cil_tmp111 ;
4497  void const   *__cil_tmp112 ;
4498  unsigned long __cil_tmp113 ;
4499  unsigned long __cil_tmp114 ;
4500  unsigned long __cil_tmp115 ;
4501  struct kobject *__cil_tmp116 ;
4502  struct bin_attribute  const  *__cil_tmp117 ;
4503  struct rtc_device *__cil_tmp118 ;
4504
4505  {
4506  {
4507#line 310
4508  ret = 0;
4509#line 312
4510  res = platform_get_resource(pdev, 512U, 0U);
4511  }
4512  {
4513#line 313
4514  __cil_tmp17 = (struct resource *)0;
4515#line 313
4516  __cil_tmp18 = (unsigned long )__cil_tmp17;
4517#line 313
4518  __cil_tmp19 = (unsigned long )res;
4519#line 313
4520  if (__cil_tmp19 == __cil_tmp18) {
4521#line 314
4522    return (-19);
4523  } else {
4524
4525  }
4526  }
4527  {
4528#line 316
4529  __cil_tmp20 = (unsigned long )pdev;
4530#line 316
4531  __cil_tmp21 = __cil_tmp20 + 16;
4532#line 316
4533  __cil_tmp22 = (struct device *)__cil_tmp21;
4534#line 316
4535  tmp = devm_kzalloc(__cil_tmp22, 120UL, 208U);
4536#line 316
4537  pdata = (struct rtc_plat_data *)tmp;
4538  }
4539  {
4540#line 317
4541  __cil_tmp23 = (struct rtc_plat_data *)0;
4542#line 317
4543  __cil_tmp24 = (unsigned long )__cil_tmp23;
4544#line 317
4545  __cil_tmp25 = (unsigned long )pdata;
4546#line 317
4547  if (__cil_tmp25 == __cil_tmp24) {
4548#line 318
4549    return (-12);
4550  } else {
4551
4552  }
4553  }
4554  {
4555#line 319
4556  __cil_tmp26 = (unsigned long )pdev;
4557#line 319
4558  __cil_tmp27 = __cil_tmp26 + 16;
4559#line 319
4560  __cil_tmp28 = (struct device *)__cil_tmp27;
4561#line 319
4562  __cil_tmp29 = *((resource_size_t *)res);
4563#line 319
4564  __cil_tmp30 = *((char const   **)pdev);
4565#line 319
4566  tmp___0 = __devm_request_region(__cil_tmp28, & iomem_resource, __cil_tmp29, 131072ULL,
4567                                  __cil_tmp30);
4568  }
4569  {
4570#line 319
4571  __cil_tmp31 = (struct resource *)0;
4572#line 319
4573  __cil_tmp32 = (unsigned long )__cil_tmp31;
4574#line 319
4575  __cil_tmp33 = (unsigned long )tmp___0;
4576#line 319
4577  if (__cil_tmp33 == __cil_tmp32) {
4578#line 321
4579    return (-16);
4580  } else {
4581
4582  }
4583  }
4584  {
4585#line 322
4586  __cil_tmp34 = (unsigned long )pdev;
4587#line 322
4588  __cil_tmp35 = __cil_tmp34 + 16;
4589#line 322
4590  __cil_tmp36 = (struct device *)__cil_tmp35;
4591#line 322
4592  __cil_tmp37 = *((resource_size_t *)res);
4593#line 322
4594  ioaddr = devm_ioremap(__cil_tmp36, __cil_tmp37, 131072UL);
4595  }
4596  {
4597#line 323
4598  __cil_tmp38 = (void *)0;
4599#line 323
4600  __cil_tmp39 = (unsigned long )__cil_tmp38;
4601#line 323
4602  __cil_tmp40 = (unsigned long )ioaddr;
4603#line 323
4604  if (__cil_tmp40 == __cil_tmp39) {
4605#line 324
4606    return (-12);
4607  } else {
4608
4609  }
4610  }
4611  {
4612#line 325
4613  __cil_tmp41 = (unsigned long )pdata;
4614#line 325
4615  __cil_tmp42 = __cil_tmp41 + 8;
4616#line 325
4617  *((void **)__cil_tmp42) = ioaddr;
4618#line 326
4619  __cil_tmp43 = (unsigned long )pdata;
4620#line 326
4621  __cil_tmp44 = __cil_tmp43 + 24;
4622#line 326
4623  *((int *)__cil_tmp44) = platform_get_irq(pdev, 0U);
4624#line 329
4625  __cil_tmp45 = (void const volatile   *)ioaddr;
4626#line 329
4627  __cil_tmp46 = __cil_tmp45 + 131064U;
4628#line 329
4629  tmp___1 = readb(__cil_tmp46);
4630#line 329
4631  cal = (unsigned int )tmp___1;
4632  }
4633  {
4634#line 330
4635  __cil_tmp47 = cal & 128U;
4636#line 330
4637  if (__cil_tmp47 != 0U) {
4638    {
4639#line 331
4640    cal = cal & 63U;
4641#line 332
4642    __cil_tmp48 = (void const volatile   *)ioaddr;
4643#line 332
4644    __cil_tmp49 = __cil_tmp48 + 131056U;
4645#line 332
4646    tmp___2 = readb(__cil_tmp49);
4647#line 332
4648    flags = (unsigned int )tmp___2;
4649#line 333
4650    __cil_tmp50 = (unsigned char )flags;
4651#line 333
4652    __cil_tmp51 = (unsigned int )__cil_tmp50;
4653#line 333
4654    __cil_tmp52 = __cil_tmp51 | 2U;
4655#line 333
4656    __cil_tmp53 = (int )__cil_tmp52;
4657#line 333
4658    __cil_tmp54 = (unsigned char )__cil_tmp53;
4659#line 333
4660    __cil_tmp55 = (void volatile   *)ioaddr;
4661#line 333
4662    __cil_tmp56 = __cil_tmp55 + 131056U;
4663#line 333
4664    writeb(__cil_tmp54, __cil_tmp56);
4665#line 334
4666    __cil_tmp57 = (unsigned char )cal;
4667#line 334
4668    __cil_tmp58 = (int )__cil_tmp57;
4669#line 334
4670    __cil_tmp59 = (unsigned char )__cil_tmp58;
4671#line 334
4672    __cil_tmp60 = (void volatile   *)ioaddr;
4673#line 334
4674    __cil_tmp61 = __cil_tmp60 + 131064U;
4675#line 334
4676    writeb(__cil_tmp59, __cil_tmp61);
4677#line 335
4678    __cil_tmp62 = (unsigned char )flags;
4679#line 335
4680    __cil_tmp63 = (int )__cil_tmp62;
4681#line 335
4682    __cil_tmp64 = __cil_tmp63 & 253;
4683#line 335
4684    __cil_tmp65 = (unsigned char )__cil_tmp64;
4685#line 335
4686    __cil_tmp66 = (void volatile   *)ioaddr;
4687#line 335
4688    __cil_tmp67 = __cil_tmp66 + 131056U;
4689#line 335
4690    writeb(__cil_tmp65, __cil_tmp67);
4691    }
4692  } else {
4693
4694  }
4695  }
4696  {
4697#line 337
4698  __cil_tmp68 = (void const volatile   *)ioaddr;
4699#line 337
4700  __cil_tmp69 = __cil_tmp68 + 131056U;
4701#line 337
4702  tmp___3 = readb(__cil_tmp69);
4703  }
4704  {
4705#line 337
4706  __cil_tmp70 = (int )tmp___3;
4707#line 337
4708  __cil_tmp71 = __cil_tmp70 & 32;
4709#line 337
4710  if (__cil_tmp71 != 0) {
4711    {
4712#line 338
4713    __cil_tmp72 = (unsigned long )pdev;
4714#line 338
4715    __cil_tmp73 = __cil_tmp72 + 16;
4716#line 338
4717    __cil_tmp74 = (struct device *)__cil_tmp73;
4718#line 338
4719    __cil_tmp75 = (struct device  const  *)__cil_tmp74;
4720#line 338
4721    dev_warn(__cil_tmp75, "voltage-low detected.\n");
4722    }
4723  } else {
4724
4725  }
4726  }
4727  {
4728#line 340
4729  __cil_tmp76 = (unsigned long )pdata;
4730#line 340
4731  __cil_tmp77 = __cil_tmp76 + 48;
4732#line 340
4733  __cil_tmp78 = (spinlock_t *)__cil_tmp77;
4734#line 340
4735  spinlock_check(__cil_tmp78);
4736#line 340
4737  __cil_tmp79 = (unsigned long )pdata;
4738#line 340
4739  __cil_tmp80 = __cil_tmp79 + 48;
4740#line 340
4741  __cil_tmp81 = (struct raw_spinlock *)__cil_tmp80;
4742#line 340
4743  __raw_spin_lock_init(__cil_tmp81, "&(&pdata->lock)->rlock", & __key);
4744#line 341
4745  __cil_tmp82 = (unsigned long )pdata;
4746#line 341
4747  __cil_tmp83 = __cil_tmp82 + 16;
4748#line 341
4749  *((unsigned long *)__cil_tmp83) = (unsigned long )jiffies;
4750#line 342
4751  __cil_tmp84 = (void *)pdata;
4752#line 342
4753  platform_set_drvdata(pdev, __cil_tmp84);
4754  }
4755  {
4756#line 343
4757  __cil_tmp85 = (unsigned long )pdata;
4758#line 343
4759  __cil_tmp86 = __cil_tmp85 + 24;
4760#line 343
4761  __cil_tmp87 = *((int *)__cil_tmp86);
4762#line 343
4763  if (__cil_tmp87 > 0) {
4764    {
4765#line 344
4766    __cil_tmp88 = (void volatile   *)ioaddr;
4767#line 344
4768    __cil_tmp89 = __cil_tmp88 + 131062U;
4769#line 344
4770    writeb((unsigned char)0, __cil_tmp89);
4771#line 345
4772    __cil_tmp90 = (unsigned long )pdev;
4773#line 345
4774    __cil_tmp91 = __cil_tmp90 + 16;
4775#line 345
4776    __cil_tmp92 = (struct device *)__cil_tmp91;
4777#line 345
4778    __cil_tmp93 = (unsigned long )pdata;
4779#line 345
4780    __cil_tmp94 = __cil_tmp93 + 24;
4781#line 345
4782    __cil_tmp95 = *((int *)__cil_tmp94);
4783#line 345
4784    __cil_tmp96 = (unsigned int )__cil_tmp95;
4785#line 345
4786    __cil_tmp97 = *((char const   **)pdev);
4787#line 345
4788    __cil_tmp98 = (void *)pdev;
4789#line 345
4790    tmp___4 = devm_request_irq(__cil_tmp92, __cil_tmp96, & stk17ta8_rtc_interrupt,
4791                               128UL, __cil_tmp97, __cil_tmp98);
4792    }
4793#line 345
4794    if (tmp___4 < 0) {
4795      {
4796#line 349
4797      __cil_tmp99 = (unsigned long )pdev;
4798#line 349
4799      __cil_tmp100 = __cil_tmp99 + 16;
4800#line 349
4801      __cil_tmp101 = (struct device *)__cil_tmp100;
4802#line 349
4803      __cil_tmp102 = (struct device  const  *)__cil_tmp101;
4804#line 349
4805      dev_warn(__cil_tmp102, "interrupt not available.\n");
4806#line 350
4807      __cil_tmp103 = (unsigned long )pdata;
4808#line 350
4809      __cil_tmp104 = __cil_tmp103 + 24;
4810#line 350
4811      *((int *)__cil_tmp104) = 0;
4812      }
4813    } else {
4814
4815    }
4816  } else {
4817
4818  }
4819  }
4820  {
4821#line 354
4822  __cil_tmp105 = *((char const   **)pdev);
4823#line 354
4824  __cil_tmp106 = (unsigned long )pdev;
4825#line 354
4826  __cil_tmp107 = __cil_tmp106 + 16;
4827#line 354
4828  __cil_tmp108 = (struct device *)__cil_tmp107;
4829#line 354
4830  *((struct rtc_device **)pdata) = rtc_device_register(__cil_tmp105, __cil_tmp108,
4831                                                       & stk17ta8_rtc_ops, & __this_module);
4832#line 356
4833  __cil_tmp109 = *((struct rtc_device **)pdata);
4834#line 356
4835  __cil_tmp110 = (void const   *)__cil_tmp109;
4836#line 356
4837  tmp___6 = IS_ERR(__cil_tmp110);
4838  }
4839#line 356
4840  if (tmp___6 != 0L) {
4841    {
4842#line 357
4843    __cil_tmp111 = *((struct rtc_device **)pdata);
4844#line 357
4845    __cil_tmp112 = (void const   *)__cil_tmp111;
4846#line 357
4847    tmp___5 = PTR_ERR(__cil_tmp112);
4848    }
4849#line 357
4850    return ((int )tmp___5);
4851  } else {
4852
4853  }
4854  {
4855#line 359
4856  __cil_tmp113 = 16 + 16;
4857#line 359
4858  __cil_tmp114 = (unsigned long )pdev;
4859#line 359
4860  __cil_tmp115 = __cil_tmp114 + __cil_tmp113;
4861#line 359
4862  __cil_tmp116 = (struct kobject *)__cil_tmp115;
4863#line 359
4864  __cil_tmp117 = (struct bin_attribute  const  *)(& stk17ta8_nvram_attr);
4865#line 359
4866  ret = sysfs_create_bin_file(__cil_tmp116, __cil_tmp117);
4867  }
4868#line 360
4869  if (ret != 0) {
4870    {
4871#line 361
4872    __cil_tmp118 = *((struct rtc_device **)pdata);
4873#line 361
4874    rtc_device_unregister(__cil_tmp118);
4875    }
4876  } else {
4877
4878  }
4879#line 362
4880  return (ret);
4881}
4882}
4883#line 411
4884extern void ldv_check_final_state(void) ;
4885#line 414
4886extern void ldv_check_return_value(int  ) ;
4887#line 417
4888extern void ldv_initialize(void) ;
4889#line 420
4890extern int __VERIFIER_nondet_int(void) ;
4891#line 423 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2671/dscv_tempdir/dscv/ri/43_1a/drivers/rtc/rtc-stk17ta8.c.p"
4892int LDV_IN_INTERRUPT  ;
4893#line 426 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2671/dscv_tempdir/dscv/ri/43_1a/drivers/rtc/rtc-stk17ta8.c.p"
4894void main(void) 
4895{ struct device *var_group1 ;
4896  struct rtc_time *var_group2 ;
4897  struct rtc_wkalrm *var_group3 ;
4898  unsigned int var_stk17ta8_rtc_alarm_irq_enable_6_p1 ;
4899  struct file *var_group4 ;
4900  struct kobject *var_group5 ;
4901  struct bin_attribute *var_stk17ta8_nvram_read_7_p2 ;
4902  char *var_stk17ta8_nvram_read_7_p3 ;
4903  loff_t var_stk17ta8_nvram_read_7_p4 ;
4904  size_t var_stk17ta8_nvram_read_7_p5 ;
4905  struct bin_attribute *var_stk17ta8_nvram_write_8_p2 ;
4906  char *var_stk17ta8_nvram_write_8_p3 ;
4907  loff_t var_stk17ta8_nvram_write_8_p4 ;
4908  size_t var_stk17ta8_nvram_write_8_p5 ;
4909  struct platform_device *var_group6 ;
4910  int res_stk17ta8_rtc_probe_9 ;
4911  int var_stk17ta8_rtc_interrupt_5_p0 ;
4912  void *var_stk17ta8_rtc_interrupt_5_p1 ;
4913  int ldv_s_stk17ta8_rtc_driver_platform_driver ;
4914  int tmp ;
4915  int tmp___0 ;
4916
4917  {
4918  {
4919#line 775
4920  ldv_s_stk17ta8_rtc_driver_platform_driver = 0;
4921#line 761
4922  LDV_IN_INTERRUPT = 1;
4923#line 770
4924  ldv_initialize();
4925  }
4926#line 780
4927  goto ldv_21149;
4928  ldv_21148: 
4929  {
4930#line 784
4931  tmp = __VERIFIER_nondet_int();
4932  }
4933#line 786
4934  if (tmp == 0) {
4935#line 786
4936    goto case_0;
4937  } else
4938#line 831
4939  if (tmp == 1) {
4940#line 831
4941    goto case_1;
4942  } else
4943#line 876
4944  if (tmp == 2) {
4945#line 876
4946    goto case_2;
4947  } else
4948#line 921
4949  if (tmp == 3) {
4950#line 921
4951    goto case_3;
4952  } else
4953#line 966
4954  if (tmp == 4) {
4955#line 966
4956    goto case_4;
4957  } else
4958#line 1011
4959  if (tmp == 5) {
4960#line 1011
4961    goto case_5;
4962  } else
4963#line 1056
4964  if (tmp == 6) {
4965#line 1056
4966    goto case_6;
4967  } else
4968#line 1101
4969  if (tmp == 7) {
4970#line 1101
4971    goto case_7;
4972  } else
4973#line 1149
4974  if (tmp == 8) {
4975#line 1149
4976    goto case_8;
4977  } else {
4978    {
4979#line 1194
4980    goto switch_default;
4981#line 784
4982    if (0) {
4983      case_0: /* CIL Label */ 
4984      {
4985#line 823
4986      stk17ta8_rtc_read_time(var_group1, var_group2);
4987      }
4988#line 830
4989      goto ldv_21137;
4990      case_1: /* CIL Label */ 
4991      {
4992#line 868
4993      stk17ta8_rtc_set_time(var_group1, var_group2);
4994      }
4995#line 875
4996      goto ldv_21137;
4997      case_2: /* CIL Label */ 
4998      {
4999#line 913
5000      stk17ta8_rtc_read_alarm(var_group1, var_group3);
5001      }
5002#line 920
5003      goto ldv_21137;
5004      case_3: /* CIL Label */ 
5005      {
5006#line 958
5007      stk17ta8_rtc_set_alarm(var_group1, var_group3);
5008      }
5009#line 965
5010      goto ldv_21137;
5011      case_4: /* CIL Label */ 
5012      {
5013#line 1003
5014      stk17ta8_rtc_alarm_irq_enable(var_group1, var_stk17ta8_rtc_alarm_irq_enable_6_p1);
5015      }
5016#line 1010
5017      goto ldv_21137;
5018      case_5: /* CIL Label */ 
5019      {
5020#line 1048
5021      stk17ta8_nvram_read(var_group4, var_group5, var_stk17ta8_nvram_read_7_p2, var_stk17ta8_nvram_read_7_p3,
5022                          var_stk17ta8_nvram_read_7_p4, var_stk17ta8_nvram_read_7_p5);
5023      }
5024#line 1055
5025      goto ldv_21137;
5026      case_6: /* CIL Label */ 
5027      {
5028#line 1093
5029      stk17ta8_nvram_write(var_group4, var_group5, var_stk17ta8_nvram_write_8_p2,
5030                           var_stk17ta8_nvram_write_8_p3, var_stk17ta8_nvram_write_8_p4,
5031                           var_stk17ta8_nvram_write_8_p5);
5032      }
5033#line 1100
5034      goto ldv_21137;
5035      case_7: /* CIL Label */ ;
5036#line 1104
5037      if (ldv_s_stk17ta8_rtc_driver_platform_driver == 0) {
5038        {
5039#line 1138
5040        res_stk17ta8_rtc_probe_9 = stk17ta8_rtc_probe(var_group6);
5041#line 1139
5042        ldv_check_return_value(res_stk17ta8_rtc_probe_9);
5043        }
5044#line 1140
5045        if (res_stk17ta8_rtc_probe_9 != 0) {
5046#line 1141
5047          goto ldv_module_exit;
5048        } else {
5049
5050        }
5051#line 1142
5052        ldv_s_stk17ta8_rtc_driver_platform_driver = 0;
5053      } else {
5054
5055      }
5056#line 1148
5057      goto ldv_21137;
5058      case_8: /* CIL Label */ 
5059      {
5060#line 1152
5061      LDV_IN_INTERRUPT = 2;
5062#line 1186
5063      stk17ta8_rtc_interrupt(var_stk17ta8_rtc_interrupt_5_p0, var_stk17ta8_rtc_interrupt_5_p1);
5064#line 1187
5065      LDV_IN_INTERRUPT = 1;
5066      }
5067#line 1193
5068      goto ldv_21137;
5069      switch_default: /* CIL Label */ ;
5070#line 1194
5071      goto ldv_21137;
5072    } else {
5073      switch_break: /* CIL Label */ ;
5074    }
5075    }
5076  }
5077  ldv_21137: ;
5078  ldv_21149: 
5079  {
5080#line 780
5081  tmp___0 = __VERIFIER_nondet_int();
5082  }
5083#line 780
5084  if (tmp___0 != 0) {
5085#line 782
5086    goto ldv_21148;
5087  } else
5088#line 780
5089  if (ldv_s_stk17ta8_rtc_driver_platform_driver != 0) {
5090#line 782
5091    goto ldv_21148;
5092  } else {
5093#line 784
5094    goto ldv_21150;
5095  }
5096  ldv_21150: ;
5097  ldv_module_exit: ;
5098  {
5099#line 1203
5100  ldv_check_final_state();
5101  }
5102#line 1206
5103  return;
5104}
5105}
5106#line 5 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2671/dscv_tempdir/dscv/ri/43_1a/kernel-rules/files/engine-blast-assert.h"
5107void ldv_blast_assert(void) 
5108{ 
5109
5110  {
5111  ERROR: ;
5112#line 6
5113  goto ERROR;
5114}
5115}
5116#line 6 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2671/dscv_tempdir/dscv/ri/43_1a/kernel-rules/files/engine-blast.h"
5117extern int __VERIFIER_nondet_int(void) ;
5118#line 1227 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2671/dscv_tempdir/dscv/ri/43_1a/drivers/rtc/rtc-stk17ta8.c.p"
5119int ldv_spin  =    0;
5120#line 1231 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2671/dscv_tempdir/dscv/ri/43_1a/drivers/rtc/rtc-stk17ta8.c.p"
5121void ldv_check_alloc_flags(gfp_t flags ) 
5122{ 
5123
5124  {
5125#line 1234
5126  if (ldv_spin != 0) {
5127#line 1234
5128    if (flags != 32U) {
5129      {
5130#line 1234
5131      ldv_blast_assert();
5132      }
5133    } else {
5134
5135    }
5136  } else {
5137
5138  }
5139#line 1237
5140  return;
5141}
5142}
5143#line 1237
5144extern struct page *ldv_some_page(void) ;
5145#line 1240 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2671/dscv_tempdir/dscv/ri/43_1a/drivers/rtc/rtc-stk17ta8.c.p"
5146struct page *ldv_check_alloc_flags_and_return_some_page(gfp_t flags ) 
5147{ struct page *tmp ;
5148
5149  {
5150#line 1243
5151  if (ldv_spin != 0) {
5152#line 1243
5153    if (flags != 32U) {
5154      {
5155#line 1243
5156      ldv_blast_assert();
5157      }
5158    } else {
5159
5160    }
5161  } else {
5162
5163  }
5164  {
5165#line 1245
5166  tmp = ldv_some_page();
5167  }
5168#line 1245
5169  return (tmp);
5170}
5171}
5172#line 1249 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2671/dscv_tempdir/dscv/ri/43_1a/drivers/rtc/rtc-stk17ta8.c.p"
5173void ldv_check_alloc_nonatomic(void) 
5174{ 
5175
5176  {
5177#line 1252
5178  if (ldv_spin != 0) {
5179    {
5180#line 1252
5181    ldv_blast_assert();
5182    }
5183  } else {
5184
5185  }
5186#line 1255
5187  return;
5188}
5189}
5190#line 1256 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2671/dscv_tempdir/dscv/ri/43_1a/drivers/rtc/rtc-stk17ta8.c.p"
5191void ldv_spin_lock(void) 
5192{ 
5193
5194  {
5195#line 1259
5196  ldv_spin = 1;
5197#line 1260
5198  return;
5199}
5200}
5201#line 1263 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2671/dscv_tempdir/dscv/ri/43_1a/drivers/rtc/rtc-stk17ta8.c.p"
5202void ldv_spin_unlock(void) 
5203{ 
5204
5205  {
5206#line 1266
5207  ldv_spin = 0;
5208#line 1267
5209  return;
5210}
5211}
5212#line 1270 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2671/dscv_tempdir/dscv/ri/43_1a/drivers/rtc/rtc-stk17ta8.c.p"
5213int ldv_spin_trylock(void) 
5214{ int is_lock ;
5215
5216  {
5217  {
5218#line 1275
5219  is_lock = __VERIFIER_nondet_int();
5220  }
5221#line 1277
5222  if (is_lock != 0) {
5223#line 1280
5224    return (0);
5225  } else {
5226#line 1285
5227    ldv_spin = 1;
5228#line 1287
5229    return (1);
5230  }
5231}
5232}
5233#line 1291 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2671/dscv_tempdir/dscv/ri/43_1a/drivers/rtc/rtc-stk17ta8.c.p"
5234__inline static void spin_lock(spinlock_t *lock ) 
5235{ 
5236
5237  {
5238  {
5239#line 1296
5240  ldv_spin_lock();
5241#line 1298
5242  ldv_spin_lock_1(lock);
5243  }
5244#line 1299
5245  return;
5246}
5247}
5248#line 1333 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2671/dscv_tempdir/dscv/ri/43_1a/drivers/rtc/rtc-stk17ta8.c.p"
5249__inline static void spin_unlock(spinlock_t *lock ) 
5250{ 
5251
5252  {
5253  {
5254#line 1338
5255  ldv_spin_unlock();
5256#line 1340
5257  ldv_spin_unlock_5(lock);
5258  }
5259#line 1341
5260  return;
5261}
5262}
5263#line 1363 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2671/dscv_tempdir/dscv/ri/43_1a/drivers/rtc/rtc-stk17ta8.c.p"
5264__inline static void spin_unlock_irqrestore(spinlock_t *lock , unsigned long flags ) 
5265{ 
5266
5267  {
5268  {
5269#line 1369
5270  ldv_spin_unlock();
5271#line 1371
5272  ldv_spin_unlock_irqrestore_8(lock, flags);
5273  }
5274#line 1372
5275  return;
5276}
5277}
5278#line 1454 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--43_1a--X--cpachecker/linux-3.4/csd_deg_dscv/2671/dscv_tempdir/dscv/ri/43_1a/drivers/rtc/rtc-stk17ta8.c.p"
5279void *ldv_kmem_cache_alloc_16(struct kmem_cache *ldv_func_arg1 , gfp_t ldv_func_arg2 ) 
5280{ 
5281
5282  {
5283  {
5284#line 1460
5285  ldv_check_alloc_flags(ldv_func_arg2);
5286#line 1462
5287  kmem_cache_alloc(ldv_func_arg1, ldv_func_arg2);
5288  }
5289#line 1463
5290  return ((void *)0);
5291}
5292}