Showing error 648

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/32_1_cilled_safe_ok_nondet_linux-3.4-32_1-drivers--staging--iio--meter--ade7854-i2c.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out.c
Line in file: 4885
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 20 "include/asm-generic/int-ll64.h"
   5typedef unsigned char __u8;
   6#line 23 "include/asm-generic/int-ll64.h"
   7typedef unsigned short __u16;
   8#line 25 "include/asm-generic/int-ll64.h"
   9typedef int __s32;
  10#line 26 "include/asm-generic/int-ll64.h"
  11typedef unsigned int __u32;
  12#line 30 "include/asm-generic/int-ll64.h"
  13typedef unsigned long long __u64;
  14#line 43 "include/asm-generic/int-ll64.h"
  15typedef unsigned char u8;
  16#line 45 "include/asm-generic/int-ll64.h"
  17typedef short s16;
  18#line 46 "include/asm-generic/int-ll64.h"
  19typedef unsigned short u16;
  20#line 49 "include/asm-generic/int-ll64.h"
  21typedef unsigned int u32;
  22#line 51 "include/asm-generic/int-ll64.h"
  23typedef long long s64;
  24#line 52 "include/asm-generic/int-ll64.h"
  25typedef unsigned long long u64;
  26#line 14 "include/asm-generic/posix_types.h"
  27typedef long __kernel_long_t;
  28#line 15 "include/asm-generic/posix_types.h"
  29typedef unsigned long __kernel_ulong_t;
  30#line 31 "include/asm-generic/posix_types.h"
  31typedef int __kernel_pid_t;
  32#line 52 "include/asm-generic/posix_types.h"
  33typedef unsigned int __kernel_uid32_t;
  34#line 53 "include/asm-generic/posix_types.h"
  35typedef unsigned int __kernel_gid32_t;
  36#line 75 "include/asm-generic/posix_types.h"
  37typedef __kernel_ulong_t __kernel_size_t;
  38#line 76 "include/asm-generic/posix_types.h"
  39typedef __kernel_long_t __kernel_ssize_t;
  40#line 91 "include/asm-generic/posix_types.h"
  41typedef long long __kernel_loff_t;
  42#line 92 "include/asm-generic/posix_types.h"
  43typedef __kernel_long_t __kernel_time_t;
  44#line 93 "include/asm-generic/posix_types.h"
  45typedef __kernel_long_t __kernel_clock_t;
  46#line 94 "include/asm-generic/posix_types.h"
  47typedef int __kernel_timer_t;
  48#line 95 "include/asm-generic/posix_types.h"
  49typedef int __kernel_clockid_t;
  50#line 21 "include/linux/types.h"
  51typedef __u32 __kernel_dev_t;
  52#line 24 "include/linux/types.h"
  53typedef __kernel_dev_t dev_t;
  54#line 27 "include/linux/types.h"
  55typedef unsigned short umode_t;
  56#line 30 "include/linux/types.h"
  57typedef __kernel_pid_t pid_t;
  58#line 35 "include/linux/types.h"
  59typedef __kernel_clockid_t clockid_t;
  60#line 38 "include/linux/types.h"
  61typedef _Bool bool;
  62#line 40 "include/linux/types.h"
  63typedef __kernel_uid32_t uid_t;
  64#line 41 "include/linux/types.h"
  65typedef __kernel_gid32_t gid_t;
  66#line 54 "include/linux/types.h"
  67typedef __kernel_loff_t loff_t;
  68#line 63 "include/linux/types.h"
  69typedef __kernel_size_t size_t;
  70#line 68 "include/linux/types.h"
  71typedef __kernel_ssize_t ssize_t;
  72#line 78 "include/linux/types.h"
  73typedef __kernel_time_t time_t;
  74#line 111 "include/linux/types.h"
  75typedef __s32 int32_t;
  76#line 117 "include/linux/types.h"
  77typedef __u32 uint32_t;
  78#line 202 "include/linux/types.h"
  79typedef unsigned int gfp_t;
  80#line 219 "include/linux/types.h"
  81struct __anonstruct_atomic_t_7 {
  82   int counter ;
  83};
  84#line 219 "include/linux/types.h"
  85typedef struct __anonstruct_atomic_t_7 atomic_t;
  86#line 224 "include/linux/types.h"
  87struct __anonstruct_atomic64_t_8 {
  88   long counter ;
  89};
  90#line 224 "include/linux/types.h"
  91typedef struct __anonstruct_atomic64_t_8 atomic64_t;
  92#line 229 "include/linux/types.h"
  93struct list_head {
  94   struct list_head *next ;
  95   struct list_head *prev ;
  96};
  97#line 233
  98struct hlist_node;
  99#line 233 "include/linux/types.h"
 100struct hlist_head {
 101   struct hlist_node *first ;
 102};
 103#line 237 "include/linux/types.h"
 104struct hlist_node {
 105   struct hlist_node *next ;
 106   struct hlist_node **pprev ;
 107};
 108#line 253 "include/linux/types.h"
 109struct rcu_head {
 110   struct rcu_head *next ;
 111   void (*func)(struct rcu_head *head ) ;
 112};
 113#line 202 "include/linux/ioport.h"
 114struct device;
 115#line 202
 116struct device;
 117#line 12 "include/linux/lockdep.h"
 118struct task_struct;
 119#line 12
 120struct task_struct;
 121#line 20 "include/linux/kobject_ns.h"
 122struct sock;
 123#line 20
 124struct sock;
 125#line 21
 126struct kobject;
 127#line 21
 128struct kobject;
 129#line 27
 130enum kobj_ns_type {
 131    KOBJ_NS_TYPE_NONE = 0,
 132    KOBJ_NS_TYPE_NET = 1,
 133    KOBJ_NS_TYPES = 2
 134} ;
 135#line 40 "include/linux/kobject_ns.h"
 136struct kobj_ns_type_operations {
 137   enum kobj_ns_type type ;
 138   void *(*grab_current_ns)(void) ;
 139   void const   *(*netlink_ns)(struct sock *sk ) ;
 140   void const   *(*initial_ns)(void) ;
 141   void (*drop_ns)(void * ) ;
 142};
 143#line 7 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
 144struct task_struct;
 145#line 8
 146struct mm_struct;
 147#line 8
 148struct mm_struct;
 149#line 99 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/ptrace.h"
 150struct pt_regs {
 151   unsigned long r15 ;
 152   unsigned long r14 ;
 153   unsigned long r13 ;
 154   unsigned long r12 ;
 155   unsigned long bp ;
 156   unsigned long bx ;
 157   unsigned long r11 ;
 158   unsigned long r10 ;
 159   unsigned long r9 ;
 160   unsigned long r8 ;
 161   unsigned long ax ;
 162   unsigned long cx ;
 163   unsigned long dx ;
 164   unsigned long si ;
 165   unsigned long di ;
 166   unsigned long orig_ax ;
 167   unsigned long ip ;
 168   unsigned long cs ;
 169   unsigned long flags ;
 170   unsigned long sp ;
 171   unsigned long ss ;
 172};
 173#line 146 "include/linux/init.h"
 174typedef void (*ctor_fn_t)(void);
 175#line 22 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/desc_defs.h"
 176struct __anonstruct____missing_field_name_10 {
 177   unsigned int a ;
 178   unsigned int b ;
 179};
 180#line 22 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/desc_defs.h"
 181struct __anonstruct____missing_field_name_11 {
 182   u16 limit0 ;
 183   u16 base0 ;
 184   unsigned int base1 : 8 ;
 185   unsigned int type : 4 ;
 186   unsigned int s : 1 ;
 187   unsigned int dpl : 2 ;
 188   unsigned int p : 1 ;
 189   unsigned int limit : 4 ;
 190   unsigned int avl : 1 ;
 191   unsigned int l : 1 ;
 192   unsigned int d : 1 ;
 193   unsigned int g : 1 ;
 194   unsigned int base2 : 8 ;
 195};
 196#line 22 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/desc_defs.h"
 197union __anonunion____missing_field_name_9 {
 198   struct __anonstruct____missing_field_name_10 __annonCompField4 ;
 199   struct __anonstruct____missing_field_name_11 __annonCompField5 ;
 200};
 201#line 22 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/desc_defs.h"
 202struct desc_struct {
 203   union __anonunion____missing_field_name_9 __annonCompField6 ;
 204} __attribute__((__packed__)) ;
 205#line 13 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_64_types.h"
 206typedef unsigned long pgdval_t;
 207#line 14 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_64_types.h"
 208typedef unsigned long pgprotval_t;
 209#line 192 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
 210struct pgprot {
 211   pgprotval_t pgprot ;
 212};
 213#line 192 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
 214typedef struct pgprot pgprot_t;
 215#line 194 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
 216struct __anonstruct_pgd_t_15 {
 217   pgdval_t pgd ;
 218};
 219#line 194 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
 220typedef struct __anonstruct_pgd_t_15 pgd_t;
 221#line 282
 222struct page;
 223#line 282 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/pgtable_types.h"
 224typedef struct page *pgtable_t;
 225#line 295
 226struct file;
 227#line 295
 228struct file;
 229#line 46 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/paravirt_types.h"
 230struct page;
 231#line 47
 232struct thread_struct;
 233#line 47
 234struct thread_struct;
 235#line 50
 236struct mm_struct;
 237#line 51
 238struct desc_struct;
 239#line 52
 240struct task_struct;
 241#line 53
 242struct cpumask;
 243#line 53
 244struct cpumask;
 245#line 329
 246struct arch_spinlock;
 247#line 329
 248struct arch_spinlock;
 249#line 139 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/ptrace.h"
 250struct task_struct;
 251#line 141 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/vm86.h"
 252struct kernel_vm86_regs {
 253   struct pt_regs pt ;
 254   unsigned short es ;
 255   unsigned short __esh ;
 256   unsigned short ds ;
 257   unsigned short __dsh ;
 258   unsigned short fs ;
 259   unsigned short __fsh ;
 260   unsigned short gs ;
 261   unsigned short __gsh ;
 262};
 263#line 11 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/math_emu.h"
 264union __anonunion____missing_field_name_19 {
 265   struct pt_regs *regs ;
 266   struct kernel_vm86_regs *vm86 ;
 267};
 268#line 11 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/math_emu.h"
 269struct math_emu_info {
 270   long ___orig_eip ;
 271   union __anonunion____missing_field_name_19 __annonCompField7 ;
 272};
 273#line 56 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/alternative.h"
 274struct module;
 275#line 56
 276struct module;
 277#line 47 "include/linux/dynamic_debug.h"
 278struct device;
 279#line 135 "include/linux/kernel.h"
 280struct completion;
 281#line 135
 282struct completion;
 283#line 136
 284struct pt_regs;
 285#line 349
 286struct pid;
 287#line 349
 288struct pid;
 289#line 8 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/current.h"
 290struct task_struct;
 291#line 18 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/page.h"
 292struct page;
 293#line 10 "include/asm-generic/bug.h"
 294struct bug_entry {
 295   int bug_addr_disp ;
 296   int file_disp ;
 297   unsigned short line ;
 298   unsigned short flags ;
 299};
 300#line 12 "include/linux/bug.h"
 301struct pt_regs;
 302#line 14 "include/linux/cpumask.h"
 303struct cpumask {
 304   unsigned long bits[((4096UL + 8UL * sizeof(long )) - 1UL) / (8UL * sizeof(long ))] ;
 305};
 306#line 14 "include/linux/cpumask.h"
 307typedef struct cpumask cpumask_t;
 308#line 637 "include/linux/cpumask.h"
 309typedef struct cpumask *cpumask_var_t;
 310#line 234 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/paravirt.h"
 311struct static_key;
 312#line 234
 313struct static_key;
 314#line 11 "include/linux/personality.h"
 315struct pt_regs;
 316#line 290 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
 317struct i387_fsave_struct {
 318   u32 cwd ;
 319   u32 swd ;
 320   u32 twd ;
 321   u32 fip ;
 322   u32 fcs ;
 323   u32 foo ;
 324   u32 fos ;
 325   u32 st_space[20] ;
 326   u32 status ;
 327};
 328#line 306 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
 329struct __anonstruct____missing_field_name_27 {
 330   u64 rip ;
 331   u64 rdp ;
 332};
 333#line 306 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
 334struct __anonstruct____missing_field_name_28 {
 335   u32 fip ;
 336   u32 fcs ;
 337   u32 foo ;
 338   u32 fos ;
 339};
 340#line 306 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
 341union __anonunion____missing_field_name_26 {
 342   struct __anonstruct____missing_field_name_27 __annonCompField11 ;
 343   struct __anonstruct____missing_field_name_28 __annonCompField12 ;
 344};
 345#line 306 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
 346union __anonunion____missing_field_name_29 {
 347   u32 padding1[12] ;
 348   u32 sw_reserved[12] ;
 349};
 350#line 306 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
 351struct i387_fxsave_struct {
 352   u16 cwd ;
 353   u16 swd ;
 354   u16 twd ;
 355   u16 fop ;
 356   union __anonunion____missing_field_name_26 __annonCompField13 ;
 357   u32 mxcsr ;
 358   u32 mxcsr_mask ;
 359   u32 st_space[32] ;
 360   u32 xmm_space[64] ;
 361   u32 padding[12] ;
 362   union __anonunion____missing_field_name_29 __annonCompField14 ;
 363} __attribute__((__aligned__(16))) ;
 364#line 341 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
 365struct i387_soft_struct {
 366   u32 cwd ;
 367   u32 swd ;
 368   u32 twd ;
 369   u32 fip ;
 370   u32 fcs ;
 371   u32 foo ;
 372   u32 fos ;
 373   u32 st_space[20] ;
 374   u8 ftop ;
 375   u8 changed ;
 376   u8 lookahead ;
 377   u8 no_update ;
 378   u8 rm ;
 379   u8 alimit ;
 380   struct math_emu_info *info ;
 381   u32 entry_eip ;
 382};
 383#line 361 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
 384struct ymmh_struct {
 385   u32 ymmh_space[64] ;
 386};
 387#line 366 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
 388struct xsave_hdr_struct {
 389   u64 xstate_bv ;
 390   u64 reserved1[2] ;
 391   u64 reserved2[5] ;
 392} __attribute__((__packed__)) ;
 393#line 372 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
 394struct xsave_struct {
 395   struct i387_fxsave_struct i387 ;
 396   struct xsave_hdr_struct xsave_hdr ;
 397   struct ymmh_struct ymmh ;
 398} __attribute__((__packed__, __aligned__(64))) ;
 399#line 379 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
 400union thread_xstate {
 401   struct i387_fsave_struct fsave ;
 402   struct i387_fxsave_struct fxsave ;
 403   struct i387_soft_struct soft ;
 404   struct xsave_struct xsave ;
 405};
 406#line 386 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
 407struct fpu {
 408   unsigned int last_cpu ;
 409   unsigned int has_fpu ;
 410   union thread_xstate *state ;
 411};
 412#line 433
 413struct kmem_cache;
 414#line 435
 415struct perf_event;
 416#line 435
 417struct perf_event;
 418#line 437 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
 419struct thread_struct {
 420   struct desc_struct tls_array[3] ;
 421   unsigned long sp0 ;
 422   unsigned long sp ;
 423   unsigned long usersp ;
 424   unsigned short es ;
 425   unsigned short ds ;
 426   unsigned short fsindex ;
 427   unsigned short gsindex ;
 428   unsigned long fs ;
 429   unsigned long gs ;
 430   struct perf_event *ptrace_bps[4] ;
 431   unsigned long debugreg6 ;
 432   unsigned long ptrace_dr7 ;
 433   unsigned long cr2 ;
 434   unsigned long trap_nr ;
 435   unsigned long error_code ;
 436   struct fpu fpu ;
 437   unsigned long *io_bitmap_ptr ;
 438   unsigned long iopl ;
 439   unsigned int io_bitmap_max ;
 440};
 441#line 23 "include/asm-generic/atomic-long.h"
 442typedef atomic64_t atomic_long_t;
 443#line 22 "include/linux/sysfs.h"
 444struct kobject;
 445#line 23
 446struct module;
 447#line 24
 448enum kobj_ns_type;
 449#line 26 "include/linux/sysfs.h"
 450struct attribute {
 451   char const   *name ;
 452   umode_t mode ;
 453};
 454#line 56 "include/linux/sysfs.h"
 455struct attribute_group {
 456   char const   *name ;
 457   umode_t (*is_visible)(struct kobject * , struct attribute * , int  ) ;
 458   struct attribute **attrs ;
 459};
 460#line 85
 461struct file;
 462#line 86
 463struct vm_area_struct;
 464#line 86
 465struct vm_area_struct;
 466#line 88 "include/linux/sysfs.h"
 467struct bin_attribute {
 468   struct attribute attr ;
 469   size_t size ;
 470   void *private ;
 471   ssize_t (*read)(struct file * , struct kobject * , struct bin_attribute * , char * ,
 472                   loff_t  , size_t  ) ;
 473   ssize_t (*write)(struct file * , struct kobject * , struct bin_attribute * , char * ,
 474                    loff_t  , size_t  ) ;
 475   int (*mmap)(struct file * , struct kobject * , struct bin_attribute *attr , struct vm_area_struct *vma ) ;
 476};
 477#line 112 "include/linux/sysfs.h"
 478struct sysfs_ops {
 479   ssize_t (*show)(struct kobject * , struct attribute * , char * ) ;
 480   ssize_t (*store)(struct kobject * , struct attribute * , char const   * , size_t  ) ;
 481   void const   *(*namespace)(struct kobject * , struct attribute  const  * ) ;
 482};
 483#line 118
 484struct sysfs_dirent;
 485#line 118
 486struct sysfs_dirent;
 487#line 12 "include/linux/thread_info.h"
 488struct timespec;
 489#line 12
 490struct timespec;
 491#line 20 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/thread_info.h"
 492struct task_struct;
 493#line 14 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
 494typedef u16 __ticket_t;
 495#line 15 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
 496typedef u32 __ticketpair_t;
 497#line 20 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
 498struct __raw_tickets {
 499   __ticket_t head ;
 500   __ticket_t tail ;
 501};
 502#line 20 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
 503union __anonunion____missing_field_name_36 {
 504   __ticketpair_t head_tail ;
 505   struct __raw_tickets tickets ;
 506};
 507#line 20 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
 508struct arch_spinlock {
 509   union __anonunion____missing_field_name_36 __annonCompField17 ;
 510};
 511#line 20 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
 512typedef struct arch_spinlock arch_spinlock_t;
 513#line 20 "include/linux/spinlock_types.h"
 514struct raw_spinlock {
 515   arch_spinlock_t raw_lock ;
 516   unsigned int magic ;
 517   unsigned int owner_cpu ;
 518   void *owner ;
 519};
 520#line 20 "include/linux/spinlock_types.h"
 521typedef struct raw_spinlock raw_spinlock_t;
 522#line 64 "include/linux/spinlock_types.h"
 523union __anonunion____missing_field_name_39 {
 524   struct raw_spinlock rlock ;
 525};
 526#line 64 "include/linux/spinlock_types.h"
 527struct spinlock {
 528   union __anonunion____missing_field_name_39 __annonCompField19 ;
 529};
 530#line 64 "include/linux/spinlock_types.h"
 531typedef struct spinlock spinlock_t;
 532#line 22 "include/linux/kref.h"
 533struct kref {
 534   atomic_t refcount ;
 535};
 536#line 49 "include/linux/wait.h"
 537struct __wait_queue_head {
 538   spinlock_t lock ;
 539   struct list_head task_list ;
 540};
 541#line 53 "include/linux/wait.h"
 542typedef struct __wait_queue_head wait_queue_head_t;
 543#line 55
 544struct task_struct;
 545#line 60 "include/linux/kobject.h"
 546struct kset;
 547#line 60
 548struct kobj_type;
 549#line 60 "include/linux/kobject.h"
 550struct kobject {
 551   char const   *name ;
 552   struct list_head entry ;
 553   struct kobject *parent ;
 554   struct kset *kset ;
 555   struct kobj_type *ktype ;
 556   struct sysfs_dirent *sd ;
 557   struct kref kref ;
 558   unsigned int state_initialized : 1 ;
 559   unsigned int state_in_sysfs : 1 ;
 560   unsigned int state_add_uevent_sent : 1 ;
 561   unsigned int state_remove_uevent_sent : 1 ;
 562   unsigned int uevent_suppress : 1 ;
 563};
 564#line 108 "include/linux/kobject.h"
 565struct kobj_type {
 566   void (*release)(struct kobject *kobj ) ;
 567   struct sysfs_ops  const  *sysfs_ops ;
 568   struct attribute **default_attrs ;
 569   struct kobj_ns_type_operations  const  *(*child_ns_type)(struct kobject *kobj ) ;
 570   void const   *(*namespace)(struct kobject *kobj ) ;
 571};
 572#line 116 "include/linux/kobject.h"
 573struct kobj_uevent_env {
 574   char *envp[32] ;
 575   int envp_idx ;
 576   char buf[2048] ;
 577   int buflen ;
 578};
 579#line 123 "include/linux/kobject.h"
 580struct kset_uevent_ops {
 581   int (* const  filter)(struct kset *kset , struct kobject *kobj ) ;
 582   char const   *(* const  name)(struct kset *kset , struct kobject *kobj ) ;
 583   int (* const  uevent)(struct kset *kset , struct kobject *kobj , struct kobj_uevent_env *env ) ;
 584};
 585#line 140
 586struct sock;
 587#line 159 "include/linux/kobject.h"
 588struct kset {
 589   struct list_head list ;
 590   spinlock_t list_lock ;
 591   struct kobject kobj ;
 592   struct kset_uevent_ops  const  *uevent_ops ;
 593};
 594#line 19 "include/linux/klist.h"
 595struct klist_node;
 596#line 19
 597struct klist_node;
 598#line 39 "include/linux/klist.h"
 599struct klist_node {
 600   void *n_klist ;
 601   struct list_head n_node ;
 602   struct kref n_ref ;
 603};
 604#line 48 "include/linux/mutex.h"
 605struct mutex {
 606   atomic_t count ;
 607   spinlock_t wait_lock ;
 608   struct list_head wait_list ;
 609   struct task_struct *owner ;
 610   char const   *name ;
 611   void *magic ;
 612};
 613#line 69 "include/linux/mutex.h"
 614struct mutex_waiter {
 615   struct list_head list ;
 616   struct task_struct *task ;
 617   void *magic ;
 618};
 619#line 119 "include/linux/seqlock.h"
 620struct seqcount {
 621   unsigned int sequence ;
 622};
 623#line 119 "include/linux/seqlock.h"
 624typedef struct seqcount seqcount_t;
 625#line 14 "include/linux/time.h"
 626struct timespec {
 627   __kernel_time_t tv_sec ;
 628   long tv_nsec ;
 629};
 630#line 46 "include/linux/ktime.h"
 631union ktime {
 632   s64 tv64 ;
 633};
 634#line 59 "include/linux/ktime.h"
 635typedef union ktime ktime_t;
 636#line 10 "include/linux/timer.h"
 637struct tvec_base;
 638#line 10
 639struct tvec_base;
 640#line 12 "include/linux/timer.h"
 641struct timer_list {
 642   struct list_head entry ;
 643   unsigned long expires ;
 644   struct tvec_base *base ;
 645   void (*function)(unsigned long  ) ;
 646   unsigned long data ;
 647   int slack ;
 648   int start_pid ;
 649   void *start_site ;
 650   char start_comm[16] ;
 651};
 652#line 289
 653struct hrtimer;
 654#line 289
 655struct hrtimer;
 656#line 290
 657enum hrtimer_restart;
 658#line 17 "include/linux/workqueue.h"
 659struct work_struct;
 660#line 17
 661struct work_struct;
 662#line 79 "include/linux/workqueue.h"
 663struct work_struct {
 664   atomic_long_t data ;
 665   struct list_head entry ;
 666   void (*func)(struct work_struct *work ) ;
 667};
 668#line 25 "include/linux/completion.h"
 669struct completion {
 670   unsigned int done ;
 671   wait_queue_head_t wait ;
 672};
 673#line 42 "include/linux/pm.h"
 674struct device;
 675#line 50 "include/linux/pm.h"
 676struct pm_message {
 677   int event ;
 678};
 679#line 50 "include/linux/pm.h"
 680typedef struct pm_message pm_message_t;
 681#line 264 "include/linux/pm.h"
 682struct dev_pm_ops {
 683   int (*prepare)(struct device *dev ) ;
 684   void (*complete)(struct device *dev ) ;
 685   int (*suspend)(struct device *dev ) ;
 686   int (*resume)(struct device *dev ) ;
 687   int (*freeze)(struct device *dev ) ;
 688   int (*thaw)(struct device *dev ) ;
 689   int (*poweroff)(struct device *dev ) ;
 690   int (*restore)(struct device *dev ) ;
 691   int (*suspend_late)(struct device *dev ) ;
 692   int (*resume_early)(struct device *dev ) ;
 693   int (*freeze_late)(struct device *dev ) ;
 694   int (*thaw_early)(struct device *dev ) ;
 695   int (*poweroff_late)(struct device *dev ) ;
 696   int (*restore_early)(struct device *dev ) ;
 697   int (*suspend_noirq)(struct device *dev ) ;
 698   int (*resume_noirq)(struct device *dev ) ;
 699   int (*freeze_noirq)(struct device *dev ) ;
 700   int (*thaw_noirq)(struct device *dev ) ;
 701   int (*poweroff_noirq)(struct device *dev ) ;
 702   int (*restore_noirq)(struct device *dev ) ;
 703   int (*runtime_suspend)(struct device *dev ) ;
 704   int (*runtime_resume)(struct device *dev ) ;
 705   int (*runtime_idle)(struct device *dev ) ;
 706};
 707#line 458
 708enum rpm_status {
 709    RPM_ACTIVE = 0,
 710    RPM_RESUMING = 1,
 711    RPM_SUSPENDED = 2,
 712    RPM_SUSPENDING = 3
 713} ;
 714#line 480
 715enum rpm_request {
 716    RPM_REQ_NONE = 0,
 717    RPM_REQ_IDLE = 1,
 718    RPM_REQ_SUSPEND = 2,
 719    RPM_REQ_AUTOSUSPEND = 3,
 720    RPM_REQ_RESUME = 4
 721} ;
 722#line 488
 723struct wakeup_source;
 724#line 488
 725struct wakeup_source;
 726#line 495 "include/linux/pm.h"
 727struct pm_subsys_data {
 728   spinlock_t lock ;
 729   unsigned int refcount ;
 730};
 731#line 506
 732struct dev_pm_qos_request;
 733#line 506
 734struct pm_qos_constraints;
 735#line 506 "include/linux/pm.h"
 736struct dev_pm_info {
 737   pm_message_t power_state ;
 738   unsigned int can_wakeup : 1 ;
 739   unsigned int async_suspend : 1 ;
 740   bool is_prepared : 1 ;
 741   bool is_suspended : 1 ;
 742   bool ignore_children : 1 ;
 743   spinlock_t lock ;
 744   struct list_head entry ;
 745   struct completion completion ;
 746   struct wakeup_source *wakeup ;
 747   bool wakeup_path : 1 ;
 748   struct timer_list suspend_timer ;
 749   unsigned long timer_expires ;
 750   struct work_struct work ;
 751   wait_queue_head_t wait_queue ;
 752   atomic_t usage_count ;
 753   atomic_t child_count ;
 754   unsigned int disable_depth : 3 ;
 755   unsigned int idle_notification : 1 ;
 756   unsigned int request_pending : 1 ;
 757   unsigned int deferred_resume : 1 ;
 758   unsigned int run_wake : 1 ;
 759   unsigned int runtime_auto : 1 ;
 760   unsigned int no_callbacks : 1 ;
 761   unsigned int irq_safe : 1 ;
 762   unsigned int use_autosuspend : 1 ;
 763   unsigned int timer_autosuspends : 1 ;
 764   enum rpm_request request ;
 765   enum rpm_status runtime_status ;
 766   int runtime_error ;
 767   int autosuspend_delay ;
 768   unsigned long last_busy ;
 769   unsigned long active_jiffies ;
 770   unsigned long suspended_jiffies ;
 771   unsigned long accounting_timestamp ;
 772   ktime_t suspend_time ;
 773   s64 max_time_suspended_ns ;
 774   struct dev_pm_qos_request *pq_req ;
 775   struct pm_subsys_data *subsys_data ;
 776   struct pm_qos_constraints *constraints ;
 777};
 778#line 564 "include/linux/pm.h"
 779struct dev_pm_domain {
 780   struct dev_pm_ops ops ;
 781};
 782#line 4 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/device.h"
 783struct dma_map_ops;
 784#line 4 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/device.h"
 785struct dev_archdata {
 786   void *acpi_handle ;
 787   struct dma_map_ops *dma_ops ;
 788   void *iommu ;
 789};
 790#line 28 "include/linux/device.h"
 791struct device;
 792#line 29
 793struct device_private;
 794#line 29
 795struct device_private;
 796#line 30
 797struct device_driver;
 798#line 30
 799struct device_driver;
 800#line 31
 801struct driver_private;
 802#line 31
 803struct driver_private;
 804#line 32
 805struct module;
 806#line 33
 807struct class;
 808#line 33
 809struct class;
 810#line 34
 811struct subsys_private;
 812#line 34
 813struct subsys_private;
 814#line 35
 815struct bus_type;
 816#line 35
 817struct bus_type;
 818#line 36
 819struct device_node;
 820#line 36
 821struct device_node;
 822#line 37
 823struct iommu_ops;
 824#line 37
 825struct iommu_ops;
 826#line 39 "include/linux/device.h"
 827struct bus_attribute {
 828   struct attribute attr ;
 829   ssize_t (*show)(struct bus_type *bus , char *buf ) ;
 830   ssize_t (*store)(struct bus_type *bus , char const   *buf , size_t count ) ;
 831};
 832#line 89
 833struct device_attribute;
 834#line 89
 835struct driver_attribute;
 836#line 89 "include/linux/device.h"
 837struct bus_type {
 838   char const   *name ;
 839   char const   *dev_name ;
 840   struct device *dev_root ;
 841   struct bus_attribute *bus_attrs ;
 842   struct device_attribute *dev_attrs ;
 843   struct driver_attribute *drv_attrs ;
 844   int (*match)(struct device *dev , struct device_driver *drv ) ;
 845   int (*uevent)(struct device *dev , struct kobj_uevent_env *env ) ;
 846   int (*probe)(struct device *dev ) ;
 847   int (*remove)(struct device *dev ) ;
 848   void (*shutdown)(struct device *dev ) ;
 849   int (*suspend)(struct device *dev , pm_message_t state ) ;
 850   int (*resume)(struct device *dev ) ;
 851   struct dev_pm_ops  const  *pm ;
 852   struct iommu_ops *iommu_ops ;
 853   struct subsys_private *p ;
 854};
 855#line 127
 856struct device_type;
 857#line 214
 858struct of_device_id;
 859#line 214 "include/linux/device.h"
 860struct device_driver {
 861   char const   *name ;
 862   struct bus_type *bus ;
 863   struct module *owner ;
 864   char const   *mod_name ;
 865   bool suppress_bind_attrs ;
 866   struct of_device_id  const  *of_match_table ;
 867   int (*probe)(struct device *dev ) ;
 868   int (*remove)(struct device *dev ) ;
 869   void (*shutdown)(struct device *dev ) ;
 870   int (*suspend)(struct device *dev , pm_message_t state ) ;
 871   int (*resume)(struct device *dev ) ;
 872   struct attribute_group  const  **groups ;
 873   struct dev_pm_ops  const  *pm ;
 874   struct driver_private *p ;
 875};
 876#line 249 "include/linux/device.h"
 877struct driver_attribute {
 878   struct attribute attr ;
 879   ssize_t (*show)(struct device_driver *driver , char *buf ) ;
 880   ssize_t (*store)(struct device_driver *driver , char const   *buf , size_t count ) ;
 881};
 882#line 330
 883struct class_attribute;
 884#line 330 "include/linux/device.h"
 885struct class {
 886   char const   *name ;
 887   struct module *owner ;
 888   struct class_attribute *class_attrs ;
 889   struct device_attribute *dev_attrs ;
 890   struct bin_attribute *dev_bin_attrs ;
 891   struct kobject *dev_kobj ;
 892   int (*dev_uevent)(struct device *dev , struct kobj_uevent_env *env ) ;
 893   char *(*devnode)(struct device *dev , umode_t *mode ) ;
 894   void (*class_release)(struct class *class ) ;
 895   void (*dev_release)(struct device *dev ) ;
 896   int (*suspend)(struct device *dev , pm_message_t state ) ;
 897   int (*resume)(struct device *dev ) ;
 898   struct kobj_ns_type_operations  const  *ns_type ;
 899   void const   *(*namespace)(struct device *dev ) ;
 900   struct dev_pm_ops  const  *pm ;
 901   struct subsys_private *p ;
 902};
 903#line 397 "include/linux/device.h"
 904struct class_attribute {
 905   struct attribute attr ;
 906   ssize_t (*show)(struct class *class , struct class_attribute *attr , char *buf ) ;
 907   ssize_t (*store)(struct class *class , struct class_attribute *attr , char const   *buf ,
 908                    size_t count ) ;
 909   void const   *(*namespace)(struct class *class , struct class_attribute  const  *attr ) ;
 910};
 911#line 465 "include/linux/device.h"
 912struct device_type {
 913   char const   *name ;
 914   struct attribute_group  const  **groups ;
 915   int (*uevent)(struct device *dev , struct kobj_uevent_env *env ) ;
 916   char *(*devnode)(struct device *dev , umode_t *mode ) ;
 917   void (*release)(struct device *dev ) ;
 918   struct dev_pm_ops  const  *pm ;
 919};
 920#line 476 "include/linux/device.h"
 921struct device_attribute {
 922   struct attribute attr ;
 923   ssize_t (*show)(struct device *dev , struct device_attribute *attr , char *buf ) ;
 924   ssize_t (*store)(struct device *dev , struct device_attribute *attr , char const   *buf ,
 925                    size_t count ) ;
 926};
 927#line 559 "include/linux/device.h"
 928struct device_dma_parameters {
 929   unsigned int max_segment_size ;
 930   unsigned long segment_boundary_mask ;
 931};
 932#line 627
 933struct dma_coherent_mem;
 934#line 627 "include/linux/device.h"
 935struct device {
 936   struct device *parent ;
 937   struct device_private *p ;
 938   struct kobject kobj ;
 939   char const   *init_name ;
 940   struct device_type  const  *type ;
 941   struct mutex mutex ;
 942   struct bus_type *bus ;
 943   struct device_driver *driver ;
 944   void *platform_data ;
 945   struct dev_pm_info power ;
 946   struct dev_pm_domain *pm_domain ;
 947   int numa_node ;
 948   u64 *dma_mask ;
 949   u64 coherent_dma_mask ;
 950   struct device_dma_parameters *dma_parms ;
 951   struct list_head dma_pools ;
 952   struct dma_coherent_mem *dma_mem ;
 953   struct dev_archdata archdata ;
 954   struct device_node *of_node ;
 955   dev_t devt ;
 956   u32 id ;
 957   spinlock_t devres_lock ;
 958   struct list_head devres_head ;
 959   struct klist_node knode_class ;
 960   struct class *class ;
 961   struct attribute_group  const  **groups ;
 962   void (*release)(struct device *dev ) ;
 963};
 964#line 43 "include/linux/pm_wakeup.h"
 965struct wakeup_source {
 966   char const   *name ;
 967   struct list_head entry ;
 968   spinlock_t lock ;
 969   struct timer_list timer ;
 970   unsigned long timer_expires ;
 971   ktime_t total_time ;
 972   ktime_t max_time ;
 973   ktime_t last_time ;
 974   unsigned long event_count ;
 975   unsigned long active_count ;
 976   unsigned long relax_count ;
 977   unsigned long hit_count ;
 978   unsigned int active : 1 ;
 979};
 980#line 12 "include/linux/mod_devicetable.h"
 981typedef unsigned long kernel_ulong_t;
 982#line 219 "include/linux/mod_devicetable.h"
 983struct of_device_id {
 984   char name[32] ;
 985   char type[32] ;
 986   char compatible[128] ;
 987   void *data ;
 988};
 989#line 431 "include/linux/mod_devicetable.h"
 990struct i2c_device_id {
 991   char name[20] ;
 992   kernel_ulong_t driver_data  __attribute__((__aligned__(sizeof(kernel_ulong_t )))) ;
 993};
 994#line 18 "include/linux/capability.h"
 995struct task_struct;
 996#line 94 "include/linux/capability.h"
 997struct kernel_cap_struct {
 998   __u32 cap[2] ;
 999};
1000#line 94 "include/linux/capability.h"
1001typedef struct kernel_cap_struct kernel_cap_t;
1002#line 377
1003struct dentry;
1004#line 377
1005struct dentry;
1006#line 378
1007struct user_namespace;
1008#line 378
1009struct user_namespace;
1010#line 100 "include/linux/rbtree.h"
1011struct rb_node {
1012   unsigned long rb_parent_color ;
1013   struct rb_node *rb_right ;
1014   struct rb_node *rb_left ;
1015} __attribute__((__aligned__(sizeof(long )))) ;
1016#line 110 "include/linux/rbtree.h"
1017struct rb_root {
1018   struct rb_node *rb_node ;
1019};
1020#line 98 "include/linux/nodemask.h"
1021struct __anonstruct_nodemask_t_46 {
1022   unsigned long bits[(((unsigned long )(1 << 10) + 8UL * sizeof(long )) - 1UL) / (8UL * sizeof(long ))] ;
1023};
1024#line 98 "include/linux/nodemask.h"
1025typedef struct __anonstruct_nodemask_t_46 nodemask_t;
1026#line 14 "include/linux/prio_tree.h"
1027struct prio_tree_node;
1028#line 14 "include/linux/prio_tree.h"
1029struct raw_prio_tree_node {
1030   struct prio_tree_node *left ;
1031   struct prio_tree_node *right ;
1032   struct prio_tree_node *parent ;
1033};
1034#line 20 "include/linux/prio_tree.h"
1035struct prio_tree_node {
1036   struct prio_tree_node *left ;
1037   struct prio_tree_node *right ;
1038   struct prio_tree_node *parent ;
1039   unsigned long start ;
1040   unsigned long last ;
1041};
1042#line 19 "include/linux/rwsem.h"
1043struct rw_semaphore;
1044#line 19
1045struct rw_semaphore;
1046#line 25 "include/linux/rwsem.h"
1047struct rw_semaphore {
1048   long count ;
1049   raw_spinlock_t wait_lock ;
1050   struct list_head wait_list ;
1051};
1052#line 11 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/mmu.h"
1053struct __anonstruct_mm_context_t_47 {
1054   void *ldt ;
1055   int size ;
1056   unsigned short ia32_compat ;
1057   struct mutex lock ;
1058   void *vdso ;
1059};
1060#line 11 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/mmu.h"
1061typedef struct __anonstruct_mm_context_t_47 mm_context_t;
1062#line 23 "include/linux/mm_types.h"
1063struct address_space;
1064#line 23
1065struct address_space;
1066#line 40 "include/linux/mm_types.h"
1067union __anonunion____missing_field_name_49 {
1068   unsigned long index ;
1069   void *freelist ;
1070};
1071#line 40 "include/linux/mm_types.h"
1072struct __anonstruct____missing_field_name_53 {
1073   unsigned int inuse : 16 ;
1074   unsigned int objects : 15 ;
1075   unsigned int frozen : 1 ;
1076};
1077#line 40 "include/linux/mm_types.h"
1078union __anonunion____missing_field_name_52 {
1079   atomic_t _mapcount ;
1080   struct __anonstruct____missing_field_name_53 __annonCompField21 ;
1081};
1082#line 40 "include/linux/mm_types.h"
1083struct __anonstruct____missing_field_name_51 {
1084   union __anonunion____missing_field_name_52 __annonCompField22 ;
1085   atomic_t _count ;
1086};
1087#line 40 "include/linux/mm_types.h"
1088union __anonunion____missing_field_name_50 {
1089   unsigned long counters ;
1090   struct __anonstruct____missing_field_name_51 __annonCompField23 ;
1091};
1092#line 40 "include/linux/mm_types.h"
1093struct __anonstruct____missing_field_name_48 {
1094   union __anonunion____missing_field_name_49 __annonCompField20 ;
1095   union __anonunion____missing_field_name_50 __annonCompField24 ;
1096};
1097#line 40 "include/linux/mm_types.h"
1098struct __anonstruct____missing_field_name_55 {
1099   struct page *next ;
1100   int pages ;
1101   int pobjects ;
1102};
1103#line 40 "include/linux/mm_types.h"
1104union __anonunion____missing_field_name_54 {
1105   struct list_head lru ;
1106   struct __anonstruct____missing_field_name_55 __annonCompField26 ;
1107};
1108#line 40 "include/linux/mm_types.h"
1109union __anonunion____missing_field_name_56 {
1110   unsigned long private ;
1111   struct kmem_cache *slab ;
1112   struct page *first_page ;
1113};
1114#line 40 "include/linux/mm_types.h"
1115struct page {
1116   unsigned long flags ;
1117   struct address_space *mapping ;
1118   struct __anonstruct____missing_field_name_48 __annonCompField25 ;
1119   union __anonunion____missing_field_name_54 __annonCompField27 ;
1120   union __anonunion____missing_field_name_56 __annonCompField28 ;
1121   unsigned long debug_flags ;
1122} __attribute__((__aligned__((2) *  (sizeof(unsigned long )) ))) ;
1123#line 200 "include/linux/mm_types.h"
1124struct __anonstruct_vm_set_58 {
1125   struct list_head list ;
1126   void *parent ;
1127   struct vm_area_struct *head ;
1128};
1129#line 200 "include/linux/mm_types.h"
1130union __anonunion_shared_57 {
1131   struct __anonstruct_vm_set_58 vm_set ;
1132   struct raw_prio_tree_node prio_tree_node ;
1133};
1134#line 200
1135struct anon_vma;
1136#line 200
1137struct vm_operations_struct;
1138#line 200
1139struct mempolicy;
1140#line 200 "include/linux/mm_types.h"
1141struct vm_area_struct {
1142   struct mm_struct *vm_mm ;
1143   unsigned long vm_start ;
1144   unsigned long vm_end ;
1145   struct vm_area_struct *vm_next ;
1146   struct vm_area_struct *vm_prev ;
1147   pgprot_t vm_page_prot ;
1148   unsigned long vm_flags ;
1149   struct rb_node vm_rb ;
1150   union __anonunion_shared_57 shared ;
1151   struct list_head anon_vma_chain ;
1152   struct anon_vma *anon_vma ;
1153   struct vm_operations_struct  const  *vm_ops ;
1154   unsigned long vm_pgoff ;
1155   struct file *vm_file ;
1156   void *vm_private_data ;
1157   struct mempolicy *vm_policy ;
1158};
1159#line 257 "include/linux/mm_types.h"
1160struct core_thread {
1161   struct task_struct *task ;
1162   struct core_thread *next ;
1163};
1164#line 262 "include/linux/mm_types.h"
1165struct core_state {
1166   atomic_t nr_threads ;
1167   struct core_thread dumper ;
1168   struct completion startup ;
1169};
1170#line 284 "include/linux/mm_types.h"
1171struct mm_rss_stat {
1172   atomic_long_t count[3] ;
1173};
1174#line 288
1175struct linux_binfmt;
1176#line 288
1177struct mmu_notifier_mm;
1178#line 288 "include/linux/mm_types.h"
1179struct mm_struct {
1180   struct vm_area_struct *mmap ;
1181   struct rb_root mm_rb ;
1182   struct vm_area_struct *mmap_cache ;
1183   unsigned long (*get_unmapped_area)(struct file *filp , unsigned long addr , unsigned long len ,
1184                                      unsigned long pgoff , unsigned long flags ) ;
1185   void (*unmap_area)(struct mm_struct *mm , unsigned long addr ) ;
1186   unsigned long mmap_base ;
1187   unsigned long task_size ;
1188   unsigned long cached_hole_size ;
1189   unsigned long free_area_cache ;
1190   pgd_t *pgd ;
1191   atomic_t mm_users ;
1192   atomic_t mm_count ;
1193   int map_count ;
1194   spinlock_t page_table_lock ;
1195   struct rw_semaphore mmap_sem ;
1196   struct list_head mmlist ;
1197   unsigned long hiwater_rss ;
1198   unsigned long hiwater_vm ;
1199   unsigned long total_vm ;
1200   unsigned long locked_vm ;
1201   unsigned long pinned_vm ;
1202   unsigned long shared_vm ;
1203   unsigned long exec_vm ;
1204   unsigned long stack_vm ;
1205   unsigned long reserved_vm ;
1206   unsigned long def_flags ;
1207   unsigned long nr_ptes ;
1208   unsigned long start_code ;
1209   unsigned long end_code ;
1210   unsigned long start_data ;
1211   unsigned long end_data ;
1212   unsigned long start_brk ;
1213   unsigned long brk ;
1214   unsigned long start_stack ;
1215   unsigned long arg_start ;
1216   unsigned long arg_end ;
1217   unsigned long env_start ;
1218   unsigned long env_end ;
1219   unsigned long saved_auxv[44] ;
1220   struct mm_rss_stat rss_stat ;
1221   struct linux_binfmt *binfmt ;
1222   cpumask_var_t cpu_vm_mask_var ;
1223   mm_context_t context ;
1224   unsigned int faultstamp ;
1225   unsigned int token_priority ;
1226   unsigned int last_interval ;
1227   unsigned long flags ;
1228   struct core_state *core_state ;
1229   spinlock_t ioctx_lock ;
1230   struct hlist_head ioctx_list ;
1231   struct task_struct *owner ;
1232   struct file *exe_file ;
1233   unsigned long num_exe_file_vmas ;
1234   struct mmu_notifier_mm *mmu_notifier_mm ;
1235   pgtable_t pmd_huge_pte ;
1236   struct cpumask cpumask_allocation ;
1237};
1238#line 7 "include/asm-generic/cputime.h"
1239typedef unsigned long cputime_t;
1240#line 103 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/mpspec.h"
1241struct device;
1242#line 8 "include/linux/vmalloc.h"
1243struct vm_area_struct;
1244#line 84 "include/linux/sem.h"
1245struct task_struct;
1246#line 101
1247struct sem_undo_list;
1248#line 101 "include/linux/sem.h"
1249struct sysv_sem {
1250   struct sem_undo_list *undo_list ;
1251};
1252#line 10 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/signal.h"
1253struct siginfo;
1254#line 10
1255struct siginfo;
1256#line 30 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/signal.h"
1257struct __anonstruct_sigset_t_151 {
1258   unsigned long sig[1] ;
1259};
1260#line 30 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/signal.h"
1261typedef struct __anonstruct_sigset_t_151 sigset_t;
1262#line 17 "include/asm-generic/signal-defs.h"
1263typedef void __signalfn_t(int  );
1264#line 18 "include/asm-generic/signal-defs.h"
1265typedef __signalfn_t *__sighandler_t;
1266#line 20 "include/asm-generic/signal-defs.h"
1267typedef void __restorefn_t(void);
1268#line 21 "include/asm-generic/signal-defs.h"
1269typedef __restorefn_t *__sigrestore_t;
1270#line 167 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/signal.h"
1271struct sigaction {
1272   __sighandler_t sa_handler ;
1273   unsigned long sa_flags ;
1274   __sigrestore_t sa_restorer ;
1275   sigset_t sa_mask ;
1276};
1277#line 174 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/signal.h"
1278struct k_sigaction {
1279   struct sigaction sa ;
1280};
1281#line 7 "include/asm-generic/siginfo.h"
1282union sigval {
1283   int sival_int ;
1284   void *sival_ptr ;
1285};
1286#line 7 "include/asm-generic/siginfo.h"
1287typedef union sigval sigval_t;
1288#line 48 "include/asm-generic/siginfo.h"
1289struct __anonstruct__kill_153 {
1290   __kernel_pid_t _pid ;
1291   __kernel_uid32_t _uid ;
1292};
1293#line 48 "include/asm-generic/siginfo.h"
1294struct __anonstruct__timer_154 {
1295   __kernel_timer_t _tid ;
1296   int _overrun ;
1297   char _pad[sizeof(__kernel_uid32_t ) - sizeof(int )] ;
1298   sigval_t _sigval ;
1299   int _sys_private ;
1300};
1301#line 48 "include/asm-generic/siginfo.h"
1302struct __anonstruct__rt_155 {
1303   __kernel_pid_t _pid ;
1304   __kernel_uid32_t _uid ;
1305   sigval_t _sigval ;
1306};
1307#line 48 "include/asm-generic/siginfo.h"
1308struct __anonstruct__sigchld_156 {
1309   __kernel_pid_t _pid ;
1310   __kernel_uid32_t _uid ;
1311   int _status ;
1312   __kernel_clock_t _utime ;
1313   __kernel_clock_t _stime ;
1314};
1315#line 48 "include/asm-generic/siginfo.h"
1316struct __anonstruct__sigfault_157 {
1317   void *_addr ;
1318   short _addr_lsb ;
1319};
1320#line 48 "include/asm-generic/siginfo.h"
1321struct __anonstruct__sigpoll_158 {
1322   long _band ;
1323   int _fd ;
1324};
1325#line 48 "include/asm-generic/siginfo.h"
1326union __anonunion__sifields_152 {
1327   int _pad[(128UL - 4UL * sizeof(int )) / sizeof(int )] ;
1328   struct __anonstruct__kill_153 _kill ;
1329   struct __anonstruct__timer_154 _timer ;
1330   struct __anonstruct__rt_155 _rt ;
1331   struct __anonstruct__sigchld_156 _sigchld ;
1332   struct __anonstruct__sigfault_157 _sigfault ;
1333   struct __anonstruct__sigpoll_158 _sigpoll ;
1334};
1335#line 48 "include/asm-generic/siginfo.h"
1336struct siginfo {
1337   int si_signo ;
1338   int si_errno ;
1339   int si_code ;
1340   union __anonunion__sifields_152 _sifields ;
1341};
1342#line 48 "include/asm-generic/siginfo.h"
1343typedef struct siginfo siginfo_t;
1344#line 288
1345struct siginfo;
1346#line 10 "include/linux/signal.h"
1347struct task_struct;
1348#line 18
1349struct user_struct;
1350#line 28 "include/linux/signal.h"
1351struct sigpending {
1352   struct list_head list ;
1353   sigset_t signal ;
1354};
1355#line 239
1356struct timespec;
1357#line 240
1358struct pt_regs;
1359#line 50 "include/linux/pid.h"
1360struct pid_namespace;
1361#line 50 "include/linux/pid.h"
1362struct upid {
1363   int nr ;
1364   struct pid_namespace *ns ;
1365   struct hlist_node pid_chain ;
1366};
1367#line 57 "include/linux/pid.h"
1368struct pid {
1369   atomic_t count ;
1370   unsigned int level ;
1371   struct hlist_head tasks[3] ;
1372   struct rcu_head rcu ;
1373   struct upid numbers[1] ;
1374};
1375#line 69 "include/linux/pid.h"
1376struct pid_link {
1377   struct hlist_node node ;
1378   struct pid *pid ;
1379};
1380#line 100
1381struct pid_namespace;
1382#line 60 "include/linux/pageblock-flags.h"
1383struct page;
1384#line 9 "include/linux/memory_hotplug.h"
1385struct page;
1386#line 994 "include/linux/mmzone.h"
1387struct page;
1388#line 10 "include/linux/seccomp.h"
1389struct __anonstruct_seccomp_t_163 {
1390   int mode ;
1391};
1392#line 10 "include/linux/seccomp.h"
1393typedef struct __anonstruct_seccomp_t_163 seccomp_t;
1394#line 81 "include/linux/plist.h"
1395struct plist_head {
1396   struct list_head node_list ;
1397};
1398#line 85 "include/linux/plist.h"
1399struct plist_node {
1400   int prio ;
1401   struct list_head prio_list ;
1402   struct list_head node_list ;
1403};
1404#line 28 "include/linux/rtmutex.h"
1405struct rt_mutex {
1406   raw_spinlock_t wait_lock ;
1407   struct plist_head wait_list ;
1408   struct task_struct *owner ;
1409   int save_state ;
1410   char const   *name ;
1411   char const   *file ;
1412   int line ;
1413   void *magic ;
1414};
1415#line 40
1416struct rt_mutex_waiter;
1417#line 40
1418struct rt_mutex_waiter;
1419#line 42 "include/linux/resource.h"
1420struct rlimit {
1421   unsigned long rlim_cur ;
1422   unsigned long rlim_max ;
1423};
1424#line 81
1425struct task_struct;
1426#line 8 "include/linux/timerqueue.h"
1427struct timerqueue_node {
1428   struct rb_node node ;
1429   ktime_t expires ;
1430};
1431#line 13 "include/linux/timerqueue.h"
1432struct timerqueue_head {
1433   struct rb_root head ;
1434   struct timerqueue_node *next ;
1435};
1436#line 27 "include/linux/hrtimer.h"
1437struct hrtimer_clock_base;
1438#line 27
1439struct hrtimer_clock_base;
1440#line 28
1441struct hrtimer_cpu_base;
1442#line 28
1443struct hrtimer_cpu_base;
1444#line 44
1445enum hrtimer_restart {
1446    HRTIMER_NORESTART = 0,
1447    HRTIMER_RESTART = 1
1448} ;
1449#line 108 "include/linux/hrtimer.h"
1450struct hrtimer {
1451   struct timerqueue_node node ;
1452   ktime_t _softexpires ;
1453   enum hrtimer_restart (*function)(struct hrtimer * ) ;
1454   struct hrtimer_clock_base *base ;
1455   unsigned long state ;
1456   int start_pid ;
1457   void *start_site ;
1458   char start_comm[16] ;
1459};
1460#line 145 "include/linux/hrtimer.h"
1461struct hrtimer_clock_base {
1462   struct hrtimer_cpu_base *cpu_base ;
1463   int index ;
1464   clockid_t clockid ;
1465   struct timerqueue_head active ;
1466   ktime_t resolution ;
1467   ktime_t (*get_time)(void) ;
1468   ktime_t softirq_time ;
1469   ktime_t offset ;
1470};
1471#line 178 "include/linux/hrtimer.h"
1472struct hrtimer_cpu_base {
1473   raw_spinlock_t lock ;
1474   unsigned long active_bases ;
1475   ktime_t expires_next ;
1476   int hres_active ;
1477   int hang_detected ;
1478   unsigned long nr_events ;
1479   unsigned long nr_retries ;
1480   unsigned long nr_hangs ;
1481   ktime_t max_hang_time ;
1482   struct hrtimer_clock_base clock_base[3] ;
1483};
1484#line 11 "include/linux/task_io_accounting.h"
1485struct task_io_accounting {
1486   u64 rchar ;
1487   u64 wchar ;
1488   u64 syscr ;
1489   u64 syscw ;
1490   u64 read_bytes ;
1491   u64 write_bytes ;
1492   u64 cancelled_write_bytes ;
1493};
1494#line 13 "include/linux/latencytop.h"
1495struct task_struct;
1496#line 20 "include/linux/latencytop.h"
1497struct latency_record {
1498   unsigned long backtrace[12] ;
1499   unsigned int count ;
1500   unsigned long time ;
1501   unsigned long max ;
1502};
1503#line 29 "include/linux/sysctl.h"
1504struct completion;
1505#line 939
1506struct nsproxy;
1507#line 939
1508struct nsproxy;
1509#line 29 "include/linux/key.h"
1510typedef int32_t key_serial_t;
1511#line 32 "include/linux/key.h"
1512typedef uint32_t key_perm_t;
1513#line 34
1514struct key;
1515#line 34
1516struct key;
1517#line 75
1518struct user_struct;
1519#line 76
1520struct signal_struct;
1521#line 76
1522struct signal_struct;
1523#line 77
1524struct cred;
1525#line 77
1526struct cred;
1527#line 79
1528struct key_type;
1529#line 79
1530struct key_type;
1531#line 81
1532struct keyring_list;
1533#line 81
1534struct keyring_list;
1535#line 124
1536struct key_user;
1537#line 124 "include/linux/key.h"
1538union __anonunion____missing_field_name_220 {
1539   time_t expiry ;
1540   time_t revoked_at ;
1541};
1542#line 124 "include/linux/key.h"
1543union __anonunion_type_data_221 {
1544   struct list_head link ;
1545   unsigned long x[2] ;
1546   void *p[2] ;
1547   int reject_error ;
1548};
1549#line 124 "include/linux/key.h"
1550union __anonunion_payload_222 {
1551   unsigned long value ;
1552   void *rcudata ;
1553   void *data ;
1554   struct keyring_list *subscriptions ;
1555};
1556#line 124 "include/linux/key.h"
1557struct key {
1558   atomic_t usage ;
1559   key_serial_t serial ;
1560   struct rb_node serial_node ;
1561   struct key_type *type ;
1562   struct rw_semaphore sem ;
1563   struct key_user *user ;
1564   void *security ;
1565   union __anonunion____missing_field_name_220 __annonCompField41 ;
1566   uid_t uid ;
1567   gid_t gid ;
1568   key_perm_t perm ;
1569   unsigned short quotalen ;
1570   unsigned short datalen ;
1571   unsigned long flags ;
1572   char *description ;
1573   union __anonunion_type_data_221 type_data ;
1574   union __anonunion_payload_222 payload ;
1575};
1576#line 18 "include/linux/selinux.h"
1577struct audit_context;
1578#line 18
1579struct audit_context;
1580#line 21 "include/linux/cred.h"
1581struct user_struct;
1582#line 22
1583struct cred;
1584#line 31 "include/linux/cred.h"
1585struct group_info {
1586   atomic_t usage ;
1587   int ngroups ;
1588   int nblocks ;
1589   gid_t small_block[32] ;
1590   gid_t *blocks[0] ;
1591};
1592#line 83 "include/linux/cred.h"
1593struct thread_group_cred {
1594   atomic_t usage ;
1595   pid_t tgid ;
1596   spinlock_t lock ;
1597   struct key *session_keyring ;
1598   struct key *process_keyring ;
1599   struct rcu_head rcu ;
1600};
1601#line 116 "include/linux/cred.h"
1602struct cred {
1603   atomic_t usage ;
1604   atomic_t subscribers ;
1605   void *put_addr ;
1606   unsigned int magic ;
1607   uid_t uid ;
1608   gid_t gid ;
1609   uid_t suid ;
1610   gid_t sgid ;
1611   uid_t euid ;
1612   gid_t egid ;
1613   uid_t fsuid ;
1614   gid_t fsgid ;
1615   unsigned int securebits ;
1616   kernel_cap_t cap_inheritable ;
1617   kernel_cap_t cap_permitted ;
1618   kernel_cap_t cap_effective ;
1619   kernel_cap_t cap_bset ;
1620   unsigned char jit_keyring ;
1621   struct key *thread_keyring ;
1622   struct key *request_key_auth ;
1623   struct thread_group_cred *tgcred ;
1624   void *security ;
1625   struct user_struct *user ;
1626   struct user_namespace *user_ns ;
1627   struct group_info *group_info ;
1628   struct rcu_head rcu ;
1629};
1630#line 61 "include/linux/llist.h"
1631struct llist_node;
1632#line 65 "include/linux/llist.h"
1633struct llist_node {
1634   struct llist_node *next ;
1635};
1636#line 97 "include/linux/sched.h"
1637struct futex_pi_state;
1638#line 97
1639struct futex_pi_state;
1640#line 98
1641struct robust_list_head;
1642#line 98
1643struct robust_list_head;
1644#line 99
1645struct bio_list;
1646#line 99
1647struct bio_list;
1648#line 100
1649struct fs_struct;
1650#line 100
1651struct fs_struct;
1652#line 101
1653struct perf_event_context;
1654#line 101
1655struct perf_event_context;
1656#line 102
1657struct blk_plug;
1658#line 102
1659struct blk_plug;
1660#line 151
1661struct cfs_rq;
1662#line 151
1663struct cfs_rq;
1664#line 259
1665struct task_struct;
1666#line 366
1667struct nsproxy;
1668#line 367
1669struct user_namespace;
1670#line 214 "include/linux/aio.h"
1671struct mm_struct;
1672#line 443 "include/linux/sched.h"
1673struct sighand_struct {
1674   atomic_t count ;
1675   struct k_sigaction action[64] ;
1676   spinlock_t siglock ;
1677   wait_queue_head_t signalfd_wqh ;
1678};
1679#line 450 "include/linux/sched.h"
1680struct pacct_struct {
1681   int ac_flag ;
1682   long ac_exitcode ;
1683   unsigned long ac_mem ;
1684   cputime_t ac_utime ;
1685   cputime_t ac_stime ;
1686   unsigned long ac_minflt ;
1687   unsigned long ac_majflt ;
1688};
1689#line 458 "include/linux/sched.h"
1690struct cpu_itimer {
1691   cputime_t expires ;
1692   cputime_t incr ;
1693   u32 error ;
1694   u32 incr_error ;
1695};
1696#line 476 "include/linux/sched.h"
1697struct task_cputime {
1698   cputime_t utime ;
1699   cputime_t stime ;
1700   unsigned long long sum_exec_runtime ;
1701};
1702#line 512 "include/linux/sched.h"
1703struct thread_group_cputimer {
1704   struct task_cputime cputime ;
1705   int running ;
1706   raw_spinlock_t lock ;
1707};
1708#line 519
1709struct autogroup;
1710#line 519
1711struct autogroup;
1712#line 528
1713struct tty_struct;
1714#line 528
1715struct taskstats;
1716#line 528
1717struct tty_audit_buf;
1718#line 528 "include/linux/sched.h"
1719struct signal_struct {
1720   atomic_t sigcnt ;
1721   atomic_t live ;
1722   int nr_threads ;
1723   wait_queue_head_t wait_chldexit ;
1724   struct task_struct *curr_target ;
1725   struct sigpending shared_pending ;
1726   int group_exit_code ;
1727   int notify_count ;
1728   struct task_struct *group_exit_task ;
1729   int group_stop_count ;
1730   unsigned int flags ;
1731   unsigned int is_child_subreaper : 1 ;
1732   unsigned int has_child_subreaper : 1 ;
1733   struct list_head posix_timers ;
1734   struct hrtimer real_timer ;
1735   struct pid *leader_pid ;
1736   ktime_t it_real_incr ;
1737   struct cpu_itimer it[2] ;
1738   struct thread_group_cputimer cputimer ;
1739   struct task_cputime cputime_expires ;
1740   struct list_head cpu_timers[3] ;
1741   struct pid *tty_old_pgrp ;
1742   int leader ;
1743   struct tty_struct *tty ;
1744   struct autogroup *autogroup ;
1745   cputime_t utime ;
1746   cputime_t stime ;
1747   cputime_t cutime ;
1748   cputime_t cstime ;
1749   cputime_t gtime ;
1750   cputime_t cgtime ;
1751   cputime_t prev_utime ;
1752   cputime_t prev_stime ;
1753   unsigned long nvcsw ;
1754   unsigned long nivcsw ;
1755   unsigned long cnvcsw ;
1756   unsigned long cnivcsw ;
1757   unsigned long min_flt ;
1758   unsigned long maj_flt ;
1759   unsigned long cmin_flt ;
1760   unsigned long cmaj_flt ;
1761   unsigned long inblock ;
1762   unsigned long oublock ;
1763   unsigned long cinblock ;
1764   unsigned long coublock ;
1765   unsigned long maxrss ;
1766   unsigned long cmaxrss ;
1767   struct task_io_accounting ioac ;
1768   unsigned long long sum_sched_runtime ;
1769   struct rlimit rlim[16] ;
1770   struct pacct_struct pacct ;
1771   struct taskstats *stats ;
1772   unsigned int audit_tty ;
1773   struct tty_audit_buf *tty_audit_buf ;
1774   struct rw_semaphore group_rwsem ;
1775   int oom_adj ;
1776   int oom_score_adj ;
1777   int oom_score_adj_min ;
1778   struct mutex cred_guard_mutex ;
1779};
1780#line 703 "include/linux/sched.h"
1781struct user_struct {
1782   atomic_t __count ;
1783   atomic_t processes ;
1784   atomic_t files ;
1785   atomic_t sigpending ;
1786   atomic_t inotify_watches ;
1787   atomic_t inotify_devs ;
1788   atomic_t fanotify_listeners ;
1789   atomic_long_t epoll_watches ;
1790   unsigned long mq_bytes ;
1791   unsigned long locked_shm ;
1792   struct key *uid_keyring ;
1793   struct key *session_keyring ;
1794   struct hlist_node uidhash_node ;
1795   uid_t uid ;
1796   struct user_namespace *user_ns ;
1797   atomic_long_t locked_vm ;
1798};
1799#line 747
1800struct backing_dev_info;
1801#line 747
1802struct backing_dev_info;
1803#line 748
1804struct reclaim_state;
1805#line 748
1806struct reclaim_state;
1807#line 751 "include/linux/sched.h"
1808struct sched_info {
1809   unsigned long pcount ;
1810   unsigned long long run_delay ;
1811   unsigned long long last_arrival ;
1812   unsigned long long last_queued ;
1813};
1814#line 763 "include/linux/sched.h"
1815struct task_delay_info {
1816   spinlock_t lock ;
1817   unsigned int flags ;
1818   struct timespec blkio_start ;
1819   struct timespec blkio_end ;
1820   u64 blkio_delay ;
1821   u64 swapin_delay ;
1822   u32 blkio_count ;
1823   u32 swapin_count ;
1824   struct timespec freepages_start ;
1825   struct timespec freepages_end ;
1826   u64 freepages_delay ;
1827   u32 freepages_count ;
1828};
1829#line 1088
1830struct io_context;
1831#line 1088
1832struct io_context;
1833#line 1097
1834struct audit_context;
1835#line 1098
1836struct mempolicy;
1837#line 1099
1838struct pipe_inode_info;
1839#line 1099
1840struct pipe_inode_info;
1841#line 1102
1842struct rq;
1843#line 1102
1844struct rq;
1845#line 1122 "include/linux/sched.h"
1846struct sched_class {
1847   struct sched_class  const  *next ;
1848   void (*enqueue_task)(struct rq *rq , struct task_struct *p , int flags ) ;
1849   void (*dequeue_task)(struct rq *rq , struct task_struct *p , int flags ) ;
1850   void (*yield_task)(struct rq *rq ) ;
1851   bool (*yield_to_task)(struct rq *rq , struct task_struct *p , bool preempt ) ;
1852   void (*check_preempt_curr)(struct rq *rq , struct task_struct *p , int flags ) ;
1853   struct task_struct *(*pick_next_task)(struct rq *rq ) ;
1854   void (*put_prev_task)(struct rq *rq , struct task_struct *p ) ;
1855   int (*select_task_rq)(struct task_struct *p , int sd_flag , int flags ) ;
1856   void (*pre_schedule)(struct rq *this_rq , struct task_struct *task ) ;
1857   void (*post_schedule)(struct rq *this_rq ) ;
1858   void (*task_waking)(struct task_struct *task ) ;
1859   void (*task_woken)(struct rq *this_rq , struct task_struct *task ) ;
1860   void (*set_cpus_allowed)(struct task_struct *p , struct cpumask  const  *newmask ) ;
1861   void (*rq_online)(struct rq *rq ) ;
1862   void (*rq_offline)(struct rq *rq ) ;
1863   void (*set_curr_task)(struct rq *rq ) ;
1864   void (*task_tick)(struct rq *rq , struct task_struct *p , int queued ) ;
1865   void (*task_fork)(struct task_struct *p ) ;
1866   void (*switched_from)(struct rq *this_rq , struct task_struct *task ) ;
1867   void (*switched_to)(struct rq *this_rq , struct task_struct *task ) ;
1868   void (*prio_changed)(struct rq *this_rq , struct task_struct *task , int oldprio ) ;
1869   unsigned int (*get_rr_interval)(struct rq *rq , struct task_struct *task ) ;
1870   void (*task_move_group)(struct task_struct *p , int on_rq ) ;
1871};
1872#line 1167 "include/linux/sched.h"
1873struct load_weight {
1874   unsigned long weight ;
1875   unsigned long inv_weight ;
1876};
1877#line 1172 "include/linux/sched.h"
1878struct sched_statistics {
1879   u64 wait_start ;
1880   u64 wait_max ;
1881   u64 wait_count ;
1882   u64 wait_sum ;
1883   u64 iowait_count ;
1884   u64 iowait_sum ;
1885   u64 sleep_start ;
1886   u64 sleep_max ;
1887   s64 sum_sleep_runtime ;
1888   u64 block_start ;
1889   u64 block_max ;
1890   u64 exec_max ;
1891   u64 slice_max ;
1892   u64 nr_migrations_cold ;
1893   u64 nr_failed_migrations_affine ;
1894   u64 nr_failed_migrations_running ;
1895   u64 nr_failed_migrations_hot ;
1896   u64 nr_forced_migrations ;
1897   u64 nr_wakeups ;
1898   u64 nr_wakeups_sync ;
1899   u64 nr_wakeups_migrate ;
1900   u64 nr_wakeups_local ;
1901   u64 nr_wakeups_remote ;
1902   u64 nr_wakeups_affine ;
1903   u64 nr_wakeups_affine_attempts ;
1904   u64 nr_wakeups_passive ;
1905   u64 nr_wakeups_idle ;
1906};
1907#line 1207 "include/linux/sched.h"
1908struct sched_entity {
1909   struct load_weight load ;
1910   struct rb_node run_node ;
1911   struct list_head group_node ;
1912   unsigned int on_rq ;
1913   u64 exec_start ;
1914   u64 sum_exec_runtime ;
1915   u64 vruntime ;
1916   u64 prev_sum_exec_runtime ;
1917   u64 nr_migrations ;
1918   struct sched_statistics statistics ;
1919   struct sched_entity *parent ;
1920   struct cfs_rq *cfs_rq ;
1921   struct cfs_rq *my_q ;
1922};
1923#line 1233
1924struct rt_rq;
1925#line 1233 "include/linux/sched.h"
1926struct sched_rt_entity {
1927   struct list_head run_list ;
1928   unsigned long timeout ;
1929   unsigned int time_slice ;
1930   int nr_cpus_allowed ;
1931   struct sched_rt_entity *back ;
1932   struct sched_rt_entity *parent ;
1933   struct rt_rq *rt_rq ;
1934   struct rt_rq *my_q ;
1935};
1936#line 1264
1937struct files_struct;
1938#line 1264
1939struct css_set;
1940#line 1264
1941struct compat_robust_list_head;
1942#line 1264
1943struct mem_cgroup;
1944#line 1264 "include/linux/sched.h"
1945struct memcg_batch_info {
1946   int do_batch ;
1947   struct mem_cgroup *memcg ;
1948   unsigned long nr_pages ;
1949   unsigned long memsw_nr_pages ;
1950};
1951#line 1264 "include/linux/sched.h"
1952struct task_struct {
1953   long volatile   state ;
1954   void *stack ;
1955   atomic_t usage ;
1956   unsigned int flags ;
1957   unsigned int ptrace ;
1958   struct llist_node wake_entry ;
1959   int on_cpu ;
1960   int on_rq ;
1961   int prio ;
1962   int static_prio ;
1963   int normal_prio ;
1964   unsigned int rt_priority ;
1965   struct sched_class  const  *sched_class ;
1966   struct sched_entity se ;
1967   struct sched_rt_entity rt ;
1968   struct hlist_head preempt_notifiers ;
1969   unsigned char fpu_counter ;
1970   unsigned int policy ;
1971   cpumask_t cpus_allowed ;
1972   struct sched_info sched_info ;
1973   struct list_head tasks ;
1974   struct plist_node pushable_tasks ;
1975   struct mm_struct *mm ;
1976   struct mm_struct *active_mm ;
1977   unsigned int brk_randomized : 1 ;
1978   int exit_state ;
1979   int exit_code ;
1980   int exit_signal ;
1981   int pdeath_signal ;
1982   unsigned int jobctl ;
1983   unsigned int personality ;
1984   unsigned int did_exec : 1 ;
1985   unsigned int in_execve : 1 ;
1986   unsigned int in_iowait : 1 ;
1987   unsigned int sched_reset_on_fork : 1 ;
1988   unsigned int sched_contributes_to_load : 1 ;
1989   unsigned int irq_thread : 1 ;
1990   pid_t pid ;
1991   pid_t tgid ;
1992   unsigned long stack_canary ;
1993   struct task_struct *real_parent ;
1994   struct task_struct *parent ;
1995   struct list_head children ;
1996   struct list_head sibling ;
1997   struct task_struct *group_leader ;
1998   struct list_head ptraced ;
1999   struct list_head ptrace_entry ;
2000   struct pid_link pids[3] ;
2001   struct list_head thread_group ;
2002   struct completion *vfork_done ;
2003   int *set_child_tid ;
2004   int *clear_child_tid ;
2005   cputime_t utime ;
2006   cputime_t stime ;
2007   cputime_t utimescaled ;
2008   cputime_t stimescaled ;
2009   cputime_t gtime ;
2010   cputime_t prev_utime ;
2011   cputime_t prev_stime ;
2012   unsigned long nvcsw ;
2013   unsigned long nivcsw ;
2014   struct timespec start_time ;
2015   struct timespec real_start_time ;
2016   unsigned long min_flt ;
2017   unsigned long maj_flt ;
2018   struct task_cputime cputime_expires ;
2019   struct list_head cpu_timers[3] ;
2020   struct cred  const  *real_cred ;
2021   struct cred  const  *cred ;
2022   struct cred *replacement_session_keyring ;
2023   char comm[16] ;
2024   int link_count ;
2025   int total_link_count ;
2026   struct sysv_sem sysvsem ;
2027   unsigned long last_switch_count ;
2028   struct thread_struct thread ;
2029   struct fs_struct *fs ;
2030   struct files_struct *files ;
2031   struct nsproxy *nsproxy ;
2032   struct signal_struct *signal ;
2033   struct sighand_struct *sighand ;
2034   sigset_t blocked ;
2035   sigset_t real_blocked ;
2036   sigset_t saved_sigmask ;
2037   struct sigpending pending ;
2038   unsigned long sas_ss_sp ;
2039   size_t sas_ss_size ;
2040   int (*notifier)(void *priv ) ;
2041   void *notifier_data ;
2042   sigset_t *notifier_mask ;
2043   struct audit_context *audit_context ;
2044   uid_t loginuid ;
2045   unsigned int sessionid ;
2046   seccomp_t seccomp ;
2047   u32 parent_exec_id ;
2048   u32 self_exec_id ;
2049   spinlock_t alloc_lock ;
2050   raw_spinlock_t pi_lock ;
2051   struct plist_head pi_waiters ;
2052   struct rt_mutex_waiter *pi_blocked_on ;
2053   struct mutex_waiter *blocked_on ;
2054   unsigned int irq_events ;
2055   unsigned long hardirq_enable_ip ;
2056   unsigned long hardirq_disable_ip ;
2057   unsigned int hardirq_enable_event ;
2058   unsigned int hardirq_disable_event ;
2059   int hardirqs_enabled ;
2060   int hardirq_context ;
2061   unsigned long softirq_disable_ip ;
2062   unsigned long softirq_enable_ip ;
2063   unsigned int softirq_disable_event ;
2064   unsigned int softirq_enable_event ;
2065   int softirqs_enabled ;
2066   int softirq_context ;
2067   void *journal_info ;
2068   struct bio_list *bio_list ;
2069   struct blk_plug *plug ;
2070   struct reclaim_state *reclaim_state ;
2071   struct backing_dev_info *backing_dev_info ;
2072   struct io_context *io_context ;
2073   unsigned long ptrace_message ;
2074   siginfo_t *last_siginfo ;
2075   struct task_io_accounting ioac ;
2076   u64 acct_rss_mem1 ;
2077   u64 acct_vm_mem1 ;
2078   cputime_t acct_timexpd ;
2079   nodemask_t mems_allowed ;
2080   seqcount_t mems_allowed_seq ;
2081   int cpuset_mem_spread_rotor ;
2082   int cpuset_slab_spread_rotor ;
2083   struct css_set *cgroups ;
2084   struct list_head cg_list ;
2085   struct robust_list_head *robust_list ;
2086   struct compat_robust_list_head *compat_robust_list ;
2087   struct list_head pi_state_list ;
2088   struct futex_pi_state *pi_state_cache ;
2089   struct perf_event_context *perf_event_ctxp[2] ;
2090   struct mutex perf_event_mutex ;
2091   struct list_head perf_event_list ;
2092   struct mempolicy *mempolicy ;
2093   short il_next ;
2094   short pref_node_fork ;
2095   struct rcu_head rcu ;
2096   struct pipe_inode_info *splice_pipe ;
2097   struct task_delay_info *delays ;
2098   int make_it_fail ;
2099   int nr_dirtied ;
2100   int nr_dirtied_pause ;
2101   unsigned long dirty_paused_when ;
2102   int latency_record_count ;
2103   struct latency_record latency_record[32] ;
2104   unsigned long timer_slack_ns ;
2105   unsigned long default_timer_slack_ns ;
2106   struct list_head *scm_work_list ;
2107   unsigned long trace ;
2108   unsigned long trace_recursion ;
2109   struct memcg_batch_info memcg_batch ;
2110   atomic_t ptrace_bp_refcnt ;
2111};
2112#line 1681
2113struct pid_namespace;
2114#line 28 "include/linux/of.h"
2115typedef u32 phandle;
2116#line 31 "include/linux/of.h"
2117struct property {
2118   char *name ;
2119   int length ;
2120   void *value ;
2121   struct property *next ;
2122   unsigned long _flags ;
2123   unsigned int unique_id ;
2124};
2125#line 44
2126struct proc_dir_entry;
2127#line 44 "include/linux/of.h"
2128struct device_node {
2129   char const   *name ;
2130   char const   *type ;
2131   phandle phandle ;
2132   char *full_name ;
2133   struct property *properties ;
2134   struct property *deadprops ;
2135   struct device_node *parent ;
2136   struct device_node *child ;
2137   struct device_node *sibling ;
2138   struct device_node *next ;
2139   struct device_node *allnext ;
2140   struct proc_dir_entry *pde ;
2141   struct kref kref ;
2142   unsigned long _flags ;
2143   void *data ;
2144};
2145#line 44 "include/linux/i2c.h"
2146struct i2c_msg;
2147#line 44
2148struct i2c_msg;
2149#line 45
2150struct i2c_algorithm;
2151#line 45
2152struct i2c_algorithm;
2153#line 46
2154struct i2c_adapter;
2155#line 46
2156struct i2c_adapter;
2157#line 47
2158struct i2c_client;
2159#line 47
2160struct i2c_client;
2161#line 48
2162struct i2c_driver;
2163#line 48
2164struct i2c_driver;
2165#line 49
2166union i2c_smbus_data;
2167#line 49
2168union i2c_smbus_data;
2169#line 50
2170struct i2c_board_info;
2171#line 50
2172struct i2c_board_info;
2173#line 52
2174struct module;
2175#line 161 "include/linux/i2c.h"
2176struct i2c_driver {
2177   unsigned int class ;
2178   int (*attach_adapter)(struct i2c_adapter * )  __attribute__((__deprecated__)) ;
2179   int (*detach_adapter)(struct i2c_adapter * )  __attribute__((__deprecated__)) ;
2180   int (*probe)(struct i2c_client * , struct i2c_device_id  const  * ) ;
2181   int (*remove)(struct i2c_client * ) ;
2182   void (*shutdown)(struct i2c_client * ) ;
2183   int (*suspend)(struct i2c_client * , pm_message_t mesg ) ;
2184   int (*resume)(struct i2c_client * ) ;
2185   void (*alert)(struct i2c_client * , unsigned int data ) ;
2186   int (*command)(struct i2c_client *client , unsigned int cmd , void *arg ) ;
2187   struct device_driver driver ;
2188   struct i2c_device_id  const  *id_table ;
2189   int (*detect)(struct i2c_client * , struct i2c_board_info * ) ;
2190   unsigned short const   *address_list ;
2191   struct list_head clients ;
2192};
2193#line 220 "include/linux/i2c.h"
2194struct i2c_client {
2195   unsigned short flags ;
2196   unsigned short addr ;
2197   char name[20] ;
2198   struct i2c_adapter *adapter ;
2199   struct i2c_driver *driver ;
2200   struct device dev ;
2201   int irq ;
2202   struct list_head detected ;
2203};
2204#line 273 "include/linux/i2c.h"
2205struct i2c_board_info {
2206   char type[20] ;
2207   unsigned short flags ;
2208   unsigned short addr ;
2209   void *platform_data ;
2210   struct dev_archdata *archdata ;
2211   struct device_node *of_node ;
2212   int irq ;
2213};
2214#line 352 "include/linux/i2c.h"
2215struct i2c_algorithm {
2216   int (*master_xfer)(struct i2c_adapter *adap , struct i2c_msg *msgs , int num ) ;
2217   int (*smbus_xfer)(struct i2c_adapter *adap , u16 addr , unsigned short flags ,
2218                     char read_write , u8 command , int size , union i2c_smbus_data *data ) ;
2219   u32 (*functionality)(struct i2c_adapter * ) ;
2220};
2221#line 373 "include/linux/i2c.h"
2222struct i2c_adapter {
2223   struct module *owner ;
2224   unsigned int class ;
2225   struct i2c_algorithm  const  *algo ;
2226   void *algo_data ;
2227   struct rt_mutex bus_lock ;
2228   int timeout ;
2229   int retries ;
2230   struct device dev ;
2231   int nr ;
2232   char name[48] ;
2233   struct completion dev_released ;
2234   struct mutex userspace_clients_lock ;
2235   struct list_head userspace_clients ;
2236};
2237#line 538 "include/linux/i2c.h"
2238struct i2c_msg {
2239   __u16 addr ;
2240   __u16 flags ;
2241   __u16 len ;
2242   __u8 *buf ;
2243};
2244#line 596 "include/linux/i2c.h"
2245union i2c_smbus_data {
2246   __u8 byte ;
2247   __u16 word ;
2248   __u8 block[34] ;
2249};
2250#line 10 "include/linux/gfp.h"
2251struct vm_area_struct;
2252#line 46 "include/linux/slub_def.h"
2253struct kmem_cache_cpu {
2254   void **freelist ;
2255   unsigned long tid ;
2256   struct page *page ;
2257   struct page *partial ;
2258   int node ;
2259   unsigned int stat[26] ;
2260};
2261#line 57 "include/linux/slub_def.h"
2262struct kmem_cache_node {
2263   spinlock_t list_lock ;
2264   unsigned long nr_partial ;
2265   struct list_head partial ;
2266   atomic_long_t nr_slabs ;
2267   atomic_long_t total_objects ;
2268   struct list_head full ;
2269};
2270#line 73 "include/linux/slub_def.h"
2271struct kmem_cache_order_objects {
2272   unsigned long x ;
2273};
2274#line 80 "include/linux/slub_def.h"
2275struct kmem_cache {
2276   struct kmem_cache_cpu *cpu_slab ;
2277   unsigned long flags ;
2278   unsigned long min_partial ;
2279   int size ;
2280   int objsize ;
2281   int offset ;
2282   int cpu_partial ;
2283   struct kmem_cache_order_objects oo ;
2284   struct kmem_cache_order_objects max ;
2285   struct kmem_cache_order_objects min ;
2286   gfp_t allocflags ;
2287   int refcount ;
2288   void (*ctor)(void * ) ;
2289   int inuse ;
2290   int align ;
2291   int reserved ;
2292   char const   *name ;
2293   struct list_head list ;
2294   struct kobject kobj ;
2295   int remote_node_defrag_ratio ;
2296   struct kmem_cache_node *node[1 << 10] ;
2297};
2298#line 48 "include/linux/kmod.h"
2299struct cred;
2300#line 49
2301struct file;
2302#line 270 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/elf.h"
2303struct task_struct;
2304#line 18 "include/linux/elf.h"
2305typedef __u64 Elf64_Addr;
2306#line 19 "include/linux/elf.h"
2307typedef __u16 Elf64_Half;
2308#line 23 "include/linux/elf.h"
2309typedef __u32 Elf64_Word;
2310#line 24 "include/linux/elf.h"
2311typedef __u64 Elf64_Xword;
2312#line 194 "include/linux/elf.h"
2313struct elf64_sym {
2314   Elf64_Word st_name ;
2315   unsigned char st_info ;
2316   unsigned char st_other ;
2317   Elf64_Half st_shndx ;
2318   Elf64_Addr st_value ;
2319   Elf64_Xword st_size ;
2320};
2321#line 194 "include/linux/elf.h"
2322typedef struct elf64_sym Elf64_Sym;
2323#line 438
2324struct file;
2325#line 39 "include/linux/moduleparam.h"
2326struct kernel_param;
2327#line 39
2328struct kernel_param;
2329#line 41 "include/linux/moduleparam.h"
2330struct kernel_param_ops {
2331   int (*set)(char const   *val , struct kernel_param  const  *kp ) ;
2332   int (*get)(char *buffer , struct kernel_param  const  *kp ) ;
2333   void (*free)(void *arg ) ;
2334};
2335#line 50
2336struct kparam_string;
2337#line 50
2338struct kparam_array;
2339#line 50 "include/linux/moduleparam.h"
2340union __anonunion____missing_field_name_230 {
2341   void *arg ;
2342   struct kparam_string  const  *str ;
2343   struct kparam_array  const  *arr ;
2344};
2345#line 50 "include/linux/moduleparam.h"
2346struct kernel_param {
2347   char const   *name ;
2348   struct kernel_param_ops  const  *ops ;
2349   u16 perm ;
2350   s16 level ;
2351   union __anonunion____missing_field_name_230 __annonCompField43 ;
2352};
2353#line 63 "include/linux/moduleparam.h"
2354struct kparam_string {
2355   unsigned int maxlen ;
2356   char *string ;
2357};
2358#line 69 "include/linux/moduleparam.h"
2359struct kparam_array {
2360   unsigned int max ;
2361   unsigned int elemsize ;
2362   unsigned int *num ;
2363   struct kernel_param_ops  const  *ops ;
2364   void *elem ;
2365};
2366#line 445
2367struct module;
2368#line 80 "include/linux/jump_label.h"
2369struct module;
2370#line 143 "include/linux/jump_label.h"
2371struct static_key {
2372   atomic_t enabled ;
2373};
2374#line 22 "include/linux/tracepoint.h"
2375struct module;
2376#line 23
2377struct tracepoint;
2378#line 23
2379struct tracepoint;
2380#line 25 "include/linux/tracepoint.h"
2381struct tracepoint_func {
2382   void *func ;
2383   void *data ;
2384};
2385#line 30 "include/linux/tracepoint.h"
2386struct tracepoint {
2387   char const   *name ;
2388   struct static_key key ;
2389   void (*regfunc)(void) ;
2390   void (*unregfunc)(void) ;
2391   struct tracepoint_func *funcs ;
2392};
2393#line 19 "include/linux/export.h"
2394struct kernel_symbol {
2395   unsigned long value ;
2396   char const   *name ;
2397};
2398#line 8 "include/asm-generic/module.h"
2399struct mod_arch_specific {
2400
2401};
2402#line 35 "include/linux/module.h"
2403struct module;
2404#line 37
2405struct module_param_attrs;
2406#line 37 "include/linux/module.h"
2407struct module_kobject {
2408   struct kobject kobj ;
2409   struct module *mod ;
2410   struct kobject *drivers_dir ;
2411   struct module_param_attrs *mp ;
2412};
2413#line 44 "include/linux/module.h"
2414struct module_attribute {
2415   struct attribute attr ;
2416   ssize_t (*show)(struct module_attribute * , struct module_kobject * , char * ) ;
2417   ssize_t (*store)(struct module_attribute * , struct module_kobject * , char const   * ,
2418                    size_t count ) ;
2419   void (*setup)(struct module * , char const   * ) ;
2420   int (*test)(struct module * ) ;
2421   void (*free)(struct module * ) ;
2422};
2423#line 71
2424struct exception_table_entry;
2425#line 71
2426struct exception_table_entry;
2427#line 199
2428enum module_state {
2429    MODULE_STATE_LIVE = 0,
2430    MODULE_STATE_COMING = 1,
2431    MODULE_STATE_GOING = 2
2432} ;
2433#line 215 "include/linux/module.h"
2434struct module_ref {
2435   unsigned long incs ;
2436   unsigned long decs ;
2437} __attribute__((__aligned__((2) *  (sizeof(unsigned long )) ))) ;
2438#line 220
2439struct module_sect_attrs;
2440#line 220
2441struct module_notes_attrs;
2442#line 220
2443struct ftrace_event_call;
2444#line 220 "include/linux/module.h"
2445struct module {
2446   enum module_state state ;
2447   struct list_head list ;
2448   char name[64UL - sizeof(unsigned long )] ;
2449   struct module_kobject mkobj ;
2450   struct module_attribute *modinfo_attrs ;
2451   char const   *version ;
2452   char const   *srcversion ;
2453   struct kobject *holders_dir ;
2454   struct kernel_symbol  const  *syms ;
2455   unsigned long const   *crcs ;
2456   unsigned int num_syms ;
2457   struct kernel_param *kp ;
2458   unsigned int num_kp ;
2459   unsigned int num_gpl_syms ;
2460   struct kernel_symbol  const  *gpl_syms ;
2461   unsigned long const   *gpl_crcs ;
2462   struct kernel_symbol  const  *unused_syms ;
2463   unsigned long const   *unused_crcs ;
2464   unsigned int num_unused_syms ;
2465   unsigned int num_unused_gpl_syms ;
2466   struct kernel_symbol  const  *unused_gpl_syms ;
2467   unsigned long const   *unused_gpl_crcs ;
2468   struct kernel_symbol  const  *gpl_future_syms ;
2469   unsigned long const   *gpl_future_crcs ;
2470   unsigned int num_gpl_future_syms ;
2471   unsigned int num_exentries ;
2472   struct exception_table_entry *extable ;
2473   int (*init)(void) ;
2474   void *module_init ;
2475   void *module_core ;
2476   unsigned int init_size ;
2477   unsigned int core_size ;
2478   unsigned int init_text_size ;
2479   unsigned int core_text_size ;
2480   unsigned int init_ro_size ;
2481   unsigned int core_ro_size ;
2482   struct mod_arch_specific arch ;
2483   unsigned int taints ;
2484   unsigned int num_bugs ;
2485   struct list_head bug_list ;
2486   struct bug_entry *bug_table ;
2487   Elf64_Sym *symtab ;
2488   Elf64_Sym *core_symtab ;
2489   unsigned int num_symtab ;
2490   unsigned int core_num_syms ;
2491   char *strtab ;
2492   char *core_strtab ;
2493   struct module_sect_attrs *sect_attrs ;
2494   struct module_notes_attrs *notes_attrs ;
2495   char *args ;
2496   void *percpu ;
2497   unsigned int percpu_size ;
2498   unsigned int num_tracepoints ;
2499   struct tracepoint * const  *tracepoints_ptrs ;
2500   unsigned int num_trace_bprintk_fmt ;
2501   char const   **trace_bprintk_fmt_start ;
2502   struct ftrace_event_call **trace_events ;
2503   unsigned int num_trace_events ;
2504   struct list_head source_list ;
2505   struct list_head target_list ;
2506   struct task_struct *waiter ;
2507   void (*exit)(void) ;
2508   struct module_ref *refptr ;
2509   ctor_fn_t *ctors ;
2510   unsigned int num_ctors ;
2511};
2512#line 8 "include/linux/cdev.h"
2513struct file_operations;
2514#line 8
2515struct file_operations;
2516#line 10
2517struct module;
2518#line 12 "include/linux/cdev.h"
2519struct cdev {
2520   struct kobject kobj ;
2521   struct module *owner ;
2522   struct file_operations  const  *ops ;
2523   struct list_head list ;
2524   dev_t dev ;
2525   unsigned int count ;
2526};
2527#line 13 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/drivers/staging/iio/meter/../types.h"
2528enum iio_chan_type {
2529    IIO_VOLTAGE = 0,
2530    IIO_CURRENT = 1,
2531    IIO_POWER = 2,
2532    IIO_ACCEL = 3,
2533    IIO_ANGL_VEL = 4,
2534    IIO_MAGN = 5,
2535    IIO_LIGHT = 6,
2536    IIO_INTENSITY = 7,
2537    IIO_PROXIMITY = 8,
2538    IIO_TEMP = 9,
2539    IIO_INCLI = 10,
2540    IIO_ROT = 11,
2541    IIO_ANGL = 12,
2542    IIO_TIMESTAMP = 13,
2543    IIO_CAPACITANCE = 14
2544} ;
2545#line 85 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/drivers/staging/iio/meter/../iio.h"
2546enum iio_endian {
2547    IIO_CPU = 0,
2548    IIO_BE = 1,
2549    IIO_LE = 2
2550} ;
2551#line 91
2552struct iio_chan_spec;
2553#line 91
2554struct iio_chan_spec;
2555#line 92
2556struct iio_dev;
2557#line 92
2558struct iio_dev;
2559#line 101 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/drivers/staging/iio/meter/../iio.h"
2560struct iio_chan_spec_ext_info {
2561   char const   *name ;
2562   bool shared ;
2563   ssize_t (*read)(struct iio_dev * , struct iio_chan_spec  const  * , char *buf ) ;
2564   ssize_t (*write)(struct iio_dev * , struct iio_chan_spec  const  * , char const   *buf ,
2565                    size_t len ) ;
2566};
2567#line 151 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/drivers/staging/iio/meter/../iio.h"
2568struct __anonstruct_scan_type_232 {
2569   char sign ;
2570   u8 realbits ;
2571   u8 storagebits ;
2572   u8 shift ;
2573   enum iio_endian endianness ;
2574};
2575#line 151 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/drivers/staging/iio/meter/../iio.h"
2576struct iio_chan_spec {
2577   enum iio_chan_type type ;
2578   int channel ;
2579   int channel2 ;
2580   unsigned long address ;
2581   int scan_index ;
2582   struct __anonstruct_scan_type_232 scan_type ;
2583   long info_mask ;
2584   long event_mask ;
2585   struct iio_chan_spec_ext_info  const  *ext_info ;
2586   char *extend_name ;
2587   char const   *datasheet_name ;
2588   unsigned int processed_val : 1 ;
2589   unsigned int modified : 1 ;
2590   unsigned int indexed : 1 ;
2591   unsigned int output : 1 ;
2592   unsigned int differential : 1 ;
2593};
2594#line 223
2595struct iio_trigger;
2596#line 223
2597struct iio_trigger;
2598#line 224
2599struct iio_dev;
2600#line 251 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/drivers/staging/iio/meter/../iio.h"
2601struct iio_info {
2602   struct module *driver_module ;
2603   struct attribute_group *event_attrs ;
2604   struct attribute_group  const  *attrs ;
2605   int (*read_raw)(struct iio_dev *indio_dev , struct iio_chan_spec  const  *chan ,
2606                   int *val , int *val2 , long mask ) ;
2607   int (*write_raw)(struct iio_dev *indio_dev , struct iio_chan_spec  const  *chan ,
2608                    int val , int val2 , long mask ) ;
2609   int (*write_raw_get_fmt)(struct iio_dev *indio_dev , struct iio_chan_spec  const  *chan ,
2610                            long mask ) ;
2611   int (*read_event_config)(struct iio_dev *indio_dev , u64 event_code ) ;
2612   int (*write_event_config)(struct iio_dev *indio_dev , u64 event_code , int state ) ;
2613   int (*read_event_value)(struct iio_dev *indio_dev , u64 event_code , int *val ) ;
2614   int (*write_event_value)(struct iio_dev *indio_dev , u64 event_code , int val ) ;
2615   int (*validate_trigger)(struct iio_dev *indio_dev , struct iio_trigger *trig ) ;
2616   int (*update_scan_mode)(struct iio_dev *indio_dev , unsigned long const   *scan_mask ) ;
2617   int (*debugfs_reg_access)(struct iio_dev *indio_dev , unsigned int reg , unsigned int writeval ,
2618                             unsigned int *readval ) ;
2619};
2620#line 302 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/drivers/staging/iio/meter/../iio.h"
2621struct iio_buffer_setup_ops {
2622   int (*preenable)(struct iio_dev * ) ;
2623   int (*postenable)(struct iio_dev * ) ;
2624   int (*predisable)(struct iio_dev * ) ;
2625   int (*postdisable)(struct iio_dev * ) ;
2626};
2627#line 341
2628struct iio_event_interface;
2629#line 341
2630struct iio_buffer;
2631#line 341
2632struct iio_poll_func;
2633#line 341 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/drivers/staging/iio/meter/../iio.h"
2634struct iio_dev {
2635   int id ;
2636   int modes ;
2637   int currentmode ;
2638   struct device dev ;
2639   struct iio_event_interface *event_interface ;
2640   struct iio_buffer *buffer ;
2641   struct mutex mlock ;
2642   unsigned long const   *available_scan_masks ;
2643   unsigned int masklength ;
2644   unsigned long const   *active_scan_mask ;
2645   struct iio_trigger *trig ;
2646   struct iio_poll_func *pollfunc ;
2647   struct iio_chan_spec  const  *channels ;
2648   int num_channels ;
2649   struct list_head channel_attr_list ;
2650   struct attribute_group chan_attr_group ;
2651   char const   *name ;
2652   struct iio_info  const  *info ;
2653   struct mutex info_exist_lock ;
2654   struct iio_buffer_setup_ops  const  *setup_ops ;
2655   struct cdev chrdev ;
2656   struct attribute_group  const  *groups[7] ;
2657   int groupcounter ;
2658   unsigned long flags ;
2659   struct dentry *debugfs_dentry ;
2660   unsigned int cached_reg_addr ;
2661};
2662#line 155 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/drivers/staging/iio/meter/ade7854.h"
2663struct spi_device;
2664#line 155 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/drivers/staging/iio/meter/ade7854.h"
2665struct ade7854_state {
2666   struct spi_device *spi ;
2667   struct i2c_client *i2c ;
2668   int (*read_reg_8)(struct device * , u16  , u8 * ) ;
2669   int (*read_reg_16)(struct device * , u16  , u16 * ) ;
2670   int (*read_reg_24)(struct device * , u16  , u32 * ) ;
2671   int (*read_reg_32)(struct device * , u16  , u32 * ) ;
2672   int (*write_reg_8)(struct device * , u16  , u8  ) ;
2673   int (*write_reg_16)(struct device * , u16  , u16  ) ;
2674   int (*write_reg_24)(struct device * , u16  , u32  ) ;
2675   int (*write_reg_32)(struct device * , u16  , u32  ) ;
2676   int irq ;
2677   struct mutex buf_lock ;
2678   u8 tx[7]  __attribute__((__aligned__((1) <<  (6) ))) ;
2679   u8 rx[7] ;
2680};
2681#line 1 "<compiler builtins>"
2682long __builtin_expect(long val , long res ) ;
2683#line 152 "include/linux/mutex.h"
2684void mutex_lock(struct mutex *lock ) ;
2685#line 153
2686int __attribute__((__warn_unused_result__))  mutex_lock_interruptible(struct mutex *lock ) ;
2687#line 154
2688int __attribute__((__warn_unused_result__))  mutex_lock_killable(struct mutex *lock ) ;
2689#line 168
2690int mutex_trylock(struct mutex *lock ) ;
2691#line 169
2692void mutex_unlock(struct mutex *lock ) ;
2693#line 170
2694int atomic_dec_and_mutex_lock(atomic_t *cnt , struct mutex *lock ) ;
2695#line 792 "include/linux/device.h"
2696extern void *dev_get_drvdata(struct device  const  *dev ) ;
2697#line 793
2698extern int dev_set_drvdata(struct device *dev , void *data ) ;
2699#line 62 "include/linux/i2c.h"
2700extern int i2c_master_send(struct i2c_client  const  *client , char const   *buf ,
2701                           int count ) ;
2702#line 64
2703extern int i2c_master_recv(struct i2c_client  const  *client , char *buf , int count ) ;
2704#line 242
2705__inline static void *i2c_get_clientdata(struct i2c_client  const  *dev )  __attribute__((__no_instrument_function__)) ;
2706#line 242 "include/linux/i2c.h"
2707__inline static void *i2c_get_clientdata(struct i2c_client  const  *dev ) 
2708{ void *tmp___7 ;
2709  unsigned long __cil_tmp3 ;
2710  unsigned long __cil_tmp4 ;
2711  struct device  const  *__cil_tmp5 ;
2712
2713  {
2714  {
2715#line 244
2716  __cil_tmp3 = (unsigned long )dev;
2717#line 244
2718  __cil_tmp4 = __cil_tmp3 + 40;
2719#line 244
2720  __cil_tmp5 = (struct device  const  *)__cil_tmp4;
2721#line 244
2722  tmp___7 = dev_get_drvdata(__cil_tmp5);
2723  }
2724#line 244
2725  return (tmp___7);
2726}
2727}
2728#line 247
2729__inline static void i2c_set_clientdata(struct i2c_client *dev , void *data )  __attribute__((__no_instrument_function__)) ;
2730#line 247 "include/linux/i2c.h"
2731__inline static void i2c_set_clientdata(struct i2c_client *dev , void *data ) 
2732{ unsigned long __cil_tmp3 ;
2733  unsigned long __cil_tmp4 ;
2734  struct device *__cil_tmp5 ;
2735
2736  {
2737  {
2738#line 249
2739  __cil_tmp3 = (unsigned long )dev;
2740#line 249
2741  __cil_tmp4 = __cil_tmp3 + 40;
2742#line 249
2743  __cil_tmp5 = (struct device *)__cil_tmp4;
2744#line 249
2745  dev_set_drvdata(__cil_tmp5, data);
2746  }
2747#line 250
2748  return;
2749}
2750}
2751#line 450
2752extern int i2c_register_driver(struct module * , struct i2c_driver * ) ;
2753#line 451
2754extern void i2c_del_driver(struct i2c_driver * ) ;
2755#line 26 "include/linux/export.h"
2756extern struct module __this_module ;
2757#line 67 "include/linux/module.h"
2758int init_module(void) ;
2759#line 68
2760void cleanup_module(void) ;
2761#line 426 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/drivers/staging/iio/meter/../iio.h"
2762extern struct iio_dev *iio_allocate_device(int sizeof_priv ) ;
2763#line 428
2764__inline static void *iio_priv(struct iio_dev  const  *indio_dev )  __attribute__((__no_instrument_function__)) ;
2765#line 428 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/drivers/staging/iio/meter/../iio.h"
2766__inline static void *iio_priv(struct iio_dev  const  *indio_dev ) 
2767{ int __cil_tmp2 ;
2768  unsigned long __cil_tmp3 ;
2769  unsigned long __cil_tmp4 ;
2770  unsigned long __cil_tmp5 ;
2771  int __cil_tmp6 ;
2772  unsigned long __cil_tmp7 ;
2773  unsigned long __cil_tmp8 ;
2774  unsigned long __cil_tmp9 ;
2775  unsigned long __cil_tmp10 ;
2776  char *__cil_tmp11 ;
2777  char *__cil_tmp12 ;
2778
2779  {
2780  {
2781#line 430
2782  __cil_tmp2 = 1 << 6;
2783#line 430
2784  __cil_tmp3 = (unsigned long )__cil_tmp2;
2785#line 430
2786  __cil_tmp4 = __cil_tmp3 - 1UL;
2787#line 430
2788  __cil_tmp5 = ~ __cil_tmp4;
2789#line 430
2790  __cil_tmp6 = 1 << 6;
2791#line 430
2792  __cil_tmp7 = (unsigned long )__cil_tmp6;
2793#line 430
2794  __cil_tmp8 = __cil_tmp7 - 1UL;
2795#line 430
2796  __cil_tmp9 = 1256UL + __cil_tmp8;
2797#line 430
2798  __cil_tmp10 = __cil_tmp9 & __cil_tmp5;
2799#line 430
2800  __cil_tmp11 = (char *)indio_dev;
2801#line 430
2802  __cil_tmp12 = __cil_tmp11 + __cil_tmp10;
2803#line 430
2804  return ((void *)__cil_tmp12);
2805  }
2806}
2807}
2808#line 443
2809extern void iio_free_device(struct iio_dev *indio_dev ) ;
2810#line 173 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/drivers/staging/iio/meter/ade7854.h"
2811extern int ade7854_probe(struct iio_dev *indio_dev , struct device *dev ) ;
2812#line 174
2813extern int ade7854_remove(struct iio_dev *indio_dev ) ;
2814#line 19 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/1849/dscv_tempdir/dscv/ri/32_1/drivers/staging/iio/meter/ade7854-i2c.c.common.c"
2815static int ade7854_i2c_write_reg_8(struct device *dev , u16 reg_address , u8 value ) 
2816{ int ret ;
2817  struct iio_dev *indio_dev ;
2818  void *tmp___7 ;
2819  struct ade7854_state *st ;
2820  void *tmp___8 ;
2821  struct device  const  *__cil_tmp9 ;
2822  struct iio_dev  const  *__cil_tmp10 ;
2823  unsigned long __cil_tmp11 ;
2824  unsigned long __cil_tmp12 ;
2825  struct mutex *__cil_tmp13 ;
2826  unsigned long __cil_tmp14 ;
2827  unsigned long __cil_tmp15 ;
2828  unsigned long __cil_tmp16 ;
2829  unsigned long __cil_tmp17 ;
2830  int __cil_tmp18 ;
2831  int __cil_tmp19 ;
2832  int __cil_tmp20 ;
2833  unsigned long __cil_tmp21 ;
2834  unsigned long __cil_tmp22 ;
2835  unsigned long __cil_tmp23 ;
2836  unsigned long __cil_tmp24 ;
2837  int __cil_tmp25 ;
2838  int __cil_tmp26 ;
2839  unsigned long __cil_tmp27 ;
2840  unsigned long __cil_tmp28 ;
2841  unsigned long __cil_tmp29 ;
2842  unsigned long __cil_tmp30 ;
2843  unsigned long __cil_tmp31 ;
2844  unsigned long __cil_tmp32 ;
2845  struct i2c_client *__cil_tmp33 ;
2846  struct i2c_client  const  *__cil_tmp34 ;
2847  unsigned long __cil_tmp35 ;
2848  unsigned long __cil_tmp36 ;
2849  unsigned long __cil_tmp37 ;
2850  unsigned long __cil_tmp38 ;
2851  u8 *__cil_tmp39 ;
2852  char const   *__cil_tmp40 ;
2853  unsigned long __cil_tmp41 ;
2854  unsigned long __cil_tmp42 ;
2855  struct mutex *__cil_tmp43 ;
2856
2857  {
2858  {
2859#line 24
2860  __cil_tmp9 = (struct device  const  *)dev;
2861#line 24
2862  tmp___7 = dev_get_drvdata(__cil_tmp9);
2863#line 24
2864  indio_dev = (struct iio_dev *)tmp___7;
2865#line 25
2866  __cil_tmp10 = (struct iio_dev  const  *)indio_dev;
2867#line 25
2868  tmp___8 = iio_priv(__cil_tmp10);
2869#line 25
2870  st = (struct ade7854_state *)tmp___8;
2871#line 27
2872  __cil_tmp11 = (unsigned long )st;
2873#line 27
2874  __cil_tmp12 = __cil_tmp11 + 88;
2875#line 27
2876  __cil_tmp13 = (struct mutex *)__cil_tmp12;
2877#line 27
2878  mutex_lock(__cil_tmp13);
2879#line 28
2880  __cil_tmp14 = 0 * 1UL;
2881#line 28
2882  __cil_tmp15 = 160 + __cil_tmp14;
2883#line 28
2884  __cil_tmp16 = (unsigned long )st;
2885#line 28
2886  __cil_tmp17 = __cil_tmp16 + __cil_tmp15;
2887#line 28
2888  __cil_tmp18 = (int )reg_address;
2889#line 28
2890  __cil_tmp19 = __cil_tmp18 >> 8;
2891#line 28
2892  __cil_tmp20 = __cil_tmp19 & 255;
2893#line 28
2894  *((u8 *)__cil_tmp17) = (u8 )__cil_tmp20;
2895#line 29
2896  __cil_tmp21 = 1 * 1UL;
2897#line 29
2898  __cil_tmp22 = 160 + __cil_tmp21;
2899#line 29
2900  __cil_tmp23 = (unsigned long )st;
2901#line 29
2902  __cil_tmp24 = __cil_tmp23 + __cil_tmp22;
2903#line 29
2904  __cil_tmp25 = (int )reg_address;
2905#line 29
2906  __cil_tmp26 = __cil_tmp25 & 255;
2907#line 29
2908  *((u8 *)__cil_tmp24) = (u8 )__cil_tmp26;
2909#line 30
2910  __cil_tmp27 = 2 * 1UL;
2911#line 30
2912  __cil_tmp28 = 160 + __cil_tmp27;
2913#line 30
2914  __cil_tmp29 = (unsigned long )st;
2915#line 30
2916  __cil_tmp30 = __cil_tmp29 + __cil_tmp28;
2917#line 30
2918  *((u8 *)__cil_tmp30) = value;
2919#line 32
2920  __cil_tmp31 = (unsigned long )st;
2921#line 32
2922  __cil_tmp32 = __cil_tmp31 + 8;
2923#line 32
2924  __cil_tmp33 = *((struct i2c_client **)__cil_tmp32);
2925#line 32
2926  __cil_tmp34 = (struct i2c_client  const  *)__cil_tmp33;
2927#line 32
2928  __cil_tmp35 = 0 * 1UL;
2929#line 32
2930  __cil_tmp36 = 160 + __cil_tmp35;
2931#line 32
2932  __cil_tmp37 = (unsigned long )st;
2933#line 32
2934  __cil_tmp38 = __cil_tmp37 + __cil_tmp36;
2935#line 32
2936  __cil_tmp39 = (u8 *)__cil_tmp38;
2937#line 32
2938  __cil_tmp40 = (char const   *)__cil_tmp39;
2939#line 32
2940  ret = i2c_master_send(__cil_tmp34, __cil_tmp40, 3);
2941#line 33
2942  __cil_tmp41 = (unsigned long )st;
2943#line 33
2944  __cil_tmp42 = __cil_tmp41 + 88;
2945#line 33
2946  __cil_tmp43 = (struct mutex *)__cil_tmp42;
2947#line 33
2948  mutex_unlock(__cil_tmp43);
2949  }
2950#line 35
2951  return (ret);
2952}
2953}
2954#line 38 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/1849/dscv_tempdir/dscv/ri/32_1/drivers/staging/iio/meter/ade7854-i2c.c.common.c"
2955static int ade7854_i2c_write_reg_16(struct device *dev , u16 reg_address , u16 value ) 
2956{ int ret ;
2957  struct iio_dev *indio_dev ;
2958  void *tmp___7 ;
2959  struct ade7854_state *st ;
2960  void *tmp___8 ;
2961  struct device  const  *__cil_tmp9 ;
2962  struct iio_dev  const  *__cil_tmp10 ;
2963  unsigned long __cil_tmp11 ;
2964  unsigned long __cil_tmp12 ;
2965  struct mutex *__cil_tmp13 ;
2966  unsigned long __cil_tmp14 ;
2967  unsigned long __cil_tmp15 ;
2968  unsigned long __cil_tmp16 ;
2969  unsigned long __cil_tmp17 ;
2970  int __cil_tmp18 ;
2971  int __cil_tmp19 ;
2972  int __cil_tmp20 ;
2973  unsigned long __cil_tmp21 ;
2974  unsigned long __cil_tmp22 ;
2975  unsigned long __cil_tmp23 ;
2976  unsigned long __cil_tmp24 ;
2977  int __cil_tmp25 ;
2978  int __cil_tmp26 ;
2979  unsigned long __cil_tmp27 ;
2980  unsigned long __cil_tmp28 ;
2981  unsigned long __cil_tmp29 ;
2982  unsigned long __cil_tmp30 ;
2983  int __cil_tmp31 ;
2984  int __cil_tmp32 ;
2985  int __cil_tmp33 ;
2986  unsigned long __cil_tmp34 ;
2987  unsigned long __cil_tmp35 ;
2988  unsigned long __cil_tmp36 ;
2989  unsigned long __cil_tmp37 ;
2990  int __cil_tmp38 ;
2991  int __cil_tmp39 ;
2992  unsigned long __cil_tmp40 ;
2993  unsigned long __cil_tmp41 ;
2994  struct i2c_client *__cil_tmp42 ;
2995  struct i2c_client  const  *__cil_tmp43 ;
2996  unsigned long __cil_tmp44 ;
2997  unsigned long __cil_tmp45 ;
2998  unsigned long __cil_tmp46 ;
2999  unsigned long __cil_tmp47 ;
3000  u8 *__cil_tmp48 ;
3001  char const   *__cil_tmp49 ;
3002  unsigned long __cil_tmp50 ;
3003  unsigned long __cil_tmp51 ;
3004  struct mutex *__cil_tmp52 ;
3005
3006  {
3007  {
3008#line 43
3009  __cil_tmp9 = (struct device  const  *)dev;
3010#line 43
3011  tmp___7 = dev_get_drvdata(__cil_tmp9);
3012#line 43
3013  indio_dev = (struct iio_dev *)tmp___7;
3014#line 44
3015  __cil_tmp10 = (struct iio_dev  const  *)indio_dev;
3016#line 44
3017  tmp___8 = iio_priv(__cil_tmp10);
3018#line 44
3019  st = (struct ade7854_state *)tmp___8;
3020#line 46
3021  __cil_tmp11 = (unsigned long )st;
3022#line 46
3023  __cil_tmp12 = __cil_tmp11 + 88;
3024#line 46
3025  __cil_tmp13 = (struct mutex *)__cil_tmp12;
3026#line 46
3027  mutex_lock(__cil_tmp13);
3028#line 47
3029  __cil_tmp14 = 0 * 1UL;
3030#line 47
3031  __cil_tmp15 = 160 + __cil_tmp14;
3032#line 47
3033  __cil_tmp16 = (unsigned long )st;
3034#line 47
3035  __cil_tmp17 = __cil_tmp16 + __cil_tmp15;
3036#line 47
3037  __cil_tmp18 = (int )reg_address;
3038#line 47
3039  __cil_tmp19 = __cil_tmp18 >> 8;
3040#line 47
3041  __cil_tmp20 = __cil_tmp19 & 255;
3042#line 47
3043  *((u8 *)__cil_tmp17) = (u8 )__cil_tmp20;
3044#line 48
3045  __cil_tmp21 = 1 * 1UL;
3046#line 48
3047  __cil_tmp22 = 160 + __cil_tmp21;
3048#line 48
3049  __cil_tmp23 = (unsigned long )st;
3050#line 48
3051  __cil_tmp24 = __cil_tmp23 + __cil_tmp22;
3052#line 48
3053  __cil_tmp25 = (int )reg_address;
3054#line 48
3055  __cil_tmp26 = __cil_tmp25 & 255;
3056#line 48
3057  *((u8 *)__cil_tmp24) = (u8 )__cil_tmp26;
3058#line 49
3059  __cil_tmp27 = 2 * 1UL;
3060#line 49
3061  __cil_tmp28 = 160 + __cil_tmp27;
3062#line 49
3063  __cil_tmp29 = (unsigned long )st;
3064#line 49
3065  __cil_tmp30 = __cil_tmp29 + __cil_tmp28;
3066#line 49
3067  __cil_tmp31 = (int )value;
3068#line 49
3069  __cil_tmp32 = __cil_tmp31 >> 8;
3070#line 49
3071  __cil_tmp33 = __cil_tmp32 & 255;
3072#line 49
3073  *((u8 *)__cil_tmp30) = (u8 )__cil_tmp33;
3074#line 50
3075  __cil_tmp34 = 3 * 1UL;
3076#line 50
3077  __cil_tmp35 = 160 + __cil_tmp34;
3078#line 50
3079  __cil_tmp36 = (unsigned long )st;
3080#line 50
3081  __cil_tmp37 = __cil_tmp36 + __cil_tmp35;
3082#line 50
3083  __cil_tmp38 = (int )value;
3084#line 50
3085  __cil_tmp39 = __cil_tmp38 & 255;
3086#line 50
3087  *((u8 *)__cil_tmp37) = (u8 )__cil_tmp39;
3088#line 52
3089  __cil_tmp40 = (unsigned long )st;
3090#line 52
3091  __cil_tmp41 = __cil_tmp40 + 8;
3092#line 52
3093  __cil_tmp42 = *((struct i2c_client **)__cil_tmp41);
3094#line 52
3095  __cil_tmp43 = (struct i2c_client  const  *)__cil_tmp42;
3096#line 52
3097  __cil_tmp44 = 0 * 1UL;
3098#line 52
3099  __cil_tmp45 = 160 + __cil_tmp44;
3100#line 52
3101  __cil_tmp46 = (unsigned long )st;
3102#line 52
3103  __cil_tmp47 = __cil_tmp46 + __cil_tmp45;
3104#line 52
3105  __cil_tmp48 = (u8 *)__cil_tmp47;
3106#line 52
3107  __cil_tmp49 = (char const   *)__cil_tmp48;
3108#line 52
3109  ret = i2c_master_send(__cil_tmp43, __cil_tmp49, 4);
3110#line 53
3111  __cil_tmp50 = (unsigned long )st;
3112#line 53
3113  __cil_tmp51 = __cil_tmp50 + 88;
3114#line 53
3115  __cil_tmp52 = (struct mutex *)__cil_tmp51;
3116#line 53
3117  mutex_unlock(__cil_tmp52);
3118  }
3119#line 55
3120  return (ret);
3121}
3122}
3123#line 58 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/1849/dscv_tempdir/dscv/ri/32_1/drivers/staging/iio/meter/ade7854-i2c.c.common.c"
3124static int ade7854_i2c_write_reg_24(struct device *dev , u16 reg_address , u32 value ) 
3125{ int ret ;
3126  struct iio_dev *indio_dev ;
3127  void *tmp___7 ;
3128  struct ade7854_state *st ;
3129  void *tmp___8 ;
3130  struct device  const  *__cil_tmp9 ;
3131  struct iio_dev  const  *__cil_tmp10 ;
3132  unsigned long __cil_tmp11 ;
3133  unsigned long __cil_tmp12 ;
3134  struct mutex *__cil_tmp13 ;
3135  unsigned long __cil_tmp14 ;
3136  unsigned long __cil_tmp15 ;
3137  unsigned long __cil_tmp16 ;
3138  unsigned long __cil_tmp17 ;
3139  int __cil_tmp18 ;
3140  int __cil_tmp19 ;
3141  int __cil_tmp20 ;
3142  unsigned long __cil_tmp21 ;
3143  unsigned long __cil_tmp22 ;
3144  unsigned long __cil_tmp23 ;
3145  unsigned long __cil_tmp24 ;
3146  int __cil_tmp25 ;
3147  int __cil_tmp26 ;
3148  unsigned long __cil_tmp27 ;
3149  unsigned long __cil_tmp28 ;
3150  unsigned long __cil_tmp29 ;
3151  unsigned long __cil_tmp30 ;
3152  u32 __cil_tmp31 ;
3153  unsigned int __cil_tmp32 ;
3154  unsigned long __cil_tmp33 ;
3155  unsigned long __cil_tmp34 ;
3156  unsigned long __cil_tmp35 ;
3157  unsigned long __cil_tmp36 ;
3158  u32 __cil_tmp37 ;
3159  unsigned int __cil_tmp38 ;
3160  unsigned long __cil_tmp39 ;
3161  unsigned long __cil_tmp40 ;
3162  unsigned long __cil_tmp41 ;
3163  unsigned long __cil_tmp42 ;
3164  unsigned int __cil_tmp43 ;
3165  unsigned long __cil_tmp44 ;
3166  unsigned long __cil_tmp45 ;
3167  struct i2c_client *__cil_tmp46 ;
3168  struct i2c_client  const  *__cil_tmp47 ;
3169  unsigned long __cil_tmp48 ;
3170  unsigned long __cil_tmp49 ;
3171  unsigned long __cil_tmp50 ;
3172  unsigned long __cil_tmp51 ;
3173  u8 *__cil_tmp52 ;
3174  char const   *__cil_tmp53 ;
3175  unsigned long __cil_tmp54 ;
3176  unsigned long __cil_tmp55 ;
3177  struct mutex *__cil_tmp56 ;
3178
3179  {
3180  {
3181#line 63
3182  __cil_tmp9 = (struct device  const  *)dev;
3183#line 63
3184  tmp___7 = dev_get_drvdata(__cil_tmp9);
3185#line 63
3186  indio_dev = (struct iio_dev *)tmp___7;
3187#line 64
3188  __cil_tmp10 = (struct iio_dev  const  *)indio_dev;
3189#line 64
3190  tmp___8 = iio_priv(__cil_tmp10);
3191#line 64
3192  st = (struct ade7854_state *)tmp___8;
3193#line 66
3194  __cil_tmp11 = (unsigned long )st;
3195#line 66
3196  __cil_tmp12 = __cil_tmp11 + 88;
3197#line 66
3198  __cil_tmp13 = (struct mutex *)__cil_tmp12;
3199#line 66
3200  mutex_lock(__cil_tmp13);
3201#line 67
3202  __cil_tmp14 = 0 * 1UL;
3203#line 67
3204  __cil_tmp15 = 160 + __cil_tmp14;
3205#line 67
3206  __cil_tmp16 = (unsigned long )st;
3207#line 67
3208  __cil_tmp17 = __cil_tmp16 + __cil_tmp15;
3209#line 67
3210  __cil_tmp18 = (int )reg_address;
3211#line 67
3212  __cil_tmp19 = __cil_tmp18 >> 8;
3213#line 67
3214  __cil_tmp20 = __cil_tmp19 & 255;
3215#line 67
3216  *((u8 *)__cil_tmp17) = (u8 )__cil_tmp20;
3217#line 68
3218  __cil_tmp21 = 1 * 1UL;
3219#line 68
3220  __cil_tmp22 = 160 + __cil_tmp21;
3221#line 68
3222  __cil_tmp23 = (unsigned long )st;
3223#line 68
3224  __cil_tmp24 = __cil_tmp23 + __cil_tmp22;
3225#line 68
3226  __cil_tmp25 = (int )reg_address;
3227#line 68
3228  __cil_tmp26 = __cil_tmp25 & 255;
3229#line 68
3230  *((u8 *)__cil_tmp24) = (u8 )__cil_tmp26;
3231#line 69
3232  __cil_tmp27 = 2 * 1UL;
3233#line 69
3234  __cil_tmp28 = 160 + __cil_tmp27;
3235#line 69
3236  __cil_tmp29 = (unsigned long )st;
3237#line 69
3238  __cil_tmp30 = __cil_tmp29 + __cil_tmp28;
3239#line 69
3240  __cil_tmp31 = value >> 16;
3241#line 69
3242  __cil_tmp32 = __cil_tmp31 & 255U;
3243#line 69
3244  *((u8 *)__cil_tmp30) = (u8 )__cil_tmp32;
3245#line 70
3246  __cil_tmp33 = 3 * 1UL;
3247#line 70
3248  __cil_tmp34 = 160 + __cil_tmp33;
3249#line 70
3250  __cil_tmp35 = (unsigned long )st;
3251#line 70
3252  __cil_tmp36 = __cil_tmp35 + __cil_tmp34;
3253#line 70
3254  __cil_tmp37 = value >> 8;
3255#line 70
3256  __cil_tmp38 = __cil_tmp37 & 255U;
3257#line 70
3258  *((u8 *)__cil_tmp36) = (u8 )__cil_tmp38;
3259#line 71
3260  __cil_tmp39 = 4 * 1UL;
3261#line 71
3262  __cil_tmp40 = 160 + __cil_tmp39;
3263#line 71
3264  __cil_tmp41 = (unsigned long )st;
3265#line 71
3266  __cil_tmp42 = __cil_tmp41 + __cil_tmp40;
3267#line 71
3268  __cil_tmp43 = value & 255U;
3269#line 71
3270  *((u8 *)__cil_tmp42) = (u8 )__cil_tmp43;
3271#line 73
3272  __cil_tmp44 = (unsigned long )st;
3273#line 73
3274  __cil_tmp45 = __cil_tmp44 + 8;
3275#line 73
3276  __cil_tmp46 = *((struct i2c_client **)__cil_tmp45);
3277#line 73
3278  __cil_tmp47 = (struct i2c_client  const  *)__cil_tmp46;
3279#line 73
3280  __cil_tmp48 = 0 * 1UL;
3281#line 73
3282  __cil_tmp49 = 160 + __cil_tmp48;
3283#line 73
3284  __cil_tmp50 = (unsigned long )st;
3285#line 73
3286  __cil_tmp51 = __cil_tmp50 + __cil_tmp49;
3287#line 73
3288  __cil_tmp52 = (u8 *)__cil_tmp51;
3289#line 73
3290  __cil_tmp53 = (char const   *)__cil_tmp52;
3291#line 73
3292  ret = i2c_master_send(__cil_tmp47, __cil_tmp53, 5);
3293#line 74
3294  __cil_tmp54 = (unsigned long )st;
3295#line 74
3296  __cil_tmp55 = __cil_tmp54 + 88;
3297#line 74
3298  __cil_tmp56 = (struct mutex *)__cil_tmp55;
3299#line 74
3300  mutex_unlock(__cil_tmp56);
3301  }
3302#line 76
3303  return (ret);
3304}
3305}
3306#line 79 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/1849/dscv_tempdir/dscv/ri/32_1/drivers/staging/iio/meter/ade7854-i2c.c.common.c"
3307static int ade7854_i2c_write_reg_32(struct device *dev , u16 reg_address , u32 value ) 
3308{ int ret ;
3309  struct iio_dev *indio_dev ;
3310  void *tmp___7 ;
3311  struct ade7854_state *st ;
3312  void *tmp___8 ;
3313  struct device  const  *__cil_tmp9 ;
3314  struct iio_dev  const  *__cil_tmp10 ;
3315  unsigned long __cil_tmp11 ;
3316  unsigned long __cil_tmp12 ;
3317  struct mutex *__cil_tmp13 ;
3318  unsigned long __cil_tmp14 ;
3319  unsigned long __cil_tmp15 ;
3320  unsigned long __cil_tmp16 ;
3321  unsigned long __cil_tmp17 ;
3322  int __cil_tmp18 ;
3323  int __cil_tmp19 ;
3324  int __cil_tmp20 ;
3325  unsigned long __cil_tmp21 ;
3326  unsigned long __cil_tmp22 ;
3327  unsigned long __cil_tmp23 ;
3328  unsigned long __cil_tmp24 ;
3329  int __cil_tmp25 ;
3330  int __cil_tmp26 ;
3331  unsigned long __cil_tmp27 ;
3332  unsigned long __cil_tmp28 ;
3333  unsigned long __cil_tmp29 ;
3334  unsigned long __cil_tmp30 ;
3335  u32 __cil_tmp31 ;
3336  unsigned int __cil_tmp32 ;
3337  unsigned long __cil_tmp33 ;
3338  unsigned long __cil_tmp34 ;
3339  unsigned long __cil_tmp35 ;
3340  unsigned long __cil_tmp36 ;
3341  u32 __cil_tmp37 ;
3342  unsigned int __cil_tmp38 ;
3343  unsigned long __cil_tmp39 ;
3344  unsigned long __cil_tmp40 ;
3345  unsigned long __cil_tmp41 ;
3346  unsigned long __cil_tmp42 ;
3347  u32 __cil_tmp43 ;
3348  unsigned int __cil_tmp44 ;
3349  unsigned long __cil_tmp45 ;
3350  unsigned long __cil_tmp46 ;
3351  unsigned long __cil_tmp47 ;
3352  unsigned long __cil_tmp48 ;
3353  unsigned int __cil_tmp49 ;
3354  unsigned long __cil_tmp50 ;
3355  unsigned long __cil_tmp51 ;
3356  struct i2c_client *__cil_tmp52 ;
3357  struct i2c_client  const  *__cil_tmp53 ;
3358  unsigned long __cil_tmp54 ;
3359  unsigned long __cil_tmp55 ;
3360  unsigned long __cil_tmp56 ;
3361  unsigned long __cil_tmp57 ;
3362  u8 *__cil_tmp58 ;
3363  char const   *__cil_tmp59 ;
3364  unsigned long __cil_tmp60 ;
3365  unsigned long __cil_tmp61 ;
3366  struct mutex *__cil_tmp62 ;
3367
3368  {
3369  {
3370#line 84
3371  __cil_tmp9 = (struct device  const  *)dev;
3372#line 84
3373  tmp___7 = dev_get_drvdata(__cil_tmp9);
3374#line 84
3375  indio_dev = (struct iio_dev *)tmp___7;
3376#line 85
3377  __cil_tmp10 = (struct iio_dev  const  *)indio_dev;
3378#line 85
3379  tmp___8 = iio_priv(__cil_tmp10);
3380#line 85
3381  st = (struct ade7854_state *)tmp___8;
3382#line 87
3383  __cil_tmp11 = (unsigned long )st;
3384#line 87
3385  __cil_tmp12 = __cil_tmp11 + 88;
3386#line 87
3387  __cil_tmp13 = (struct mutex *)__cil_tmp12;
3388#line 87
3389  mutex_lock(__cil_tmp13);
3390#line 88
3391  __cil_tmp14 = 0 * 1UL;
3392#line 88
3393  __cil_tmp15 = 160 + __cil_tmp14;
3394#line 88
3395  __cil_tmp16 = (unsigned long )st;
3396#line 88
3397  __cil_tmp17 = __cil_tmp16 + __cil_tmp15;
3398#line 88
3399  __cil_tmp18 = (int )reg_address;
3400#line 88
3401  __cil_tmp19 = __cil_tmp18 >> 8;
3402#line 88
3403  __cil_tmp20 = __cil_tmp19 & 255;
3404#line 88
3405  *((u8 *)__cil_tmp17) = (u8 )__cil_tmp20;
3406#line 89
3407  __cil_tmp21 = 1 * 1UL;
3408#line 89
3409  __cil_tmp22 = 160 + __cil_tmp21;
3410#line 89
3411  __cil_tmp23 = (unsigned long )st;
3412#line 89
3413  __cil_tmp24 = __cil_tmp23 + __cil_tmp22;
3414#line 89
3415  __cil_tmp25 = (int )reg_address;
3416#line 89
3417  __cil_tmp26 = __cil_tmp25 & 255;
3418#line 89
3419  *((u8 *)__cil_tmp24) = (u8 )__cil_tmp26;
3420#line 90
3421  __cil_tmp27 = 2 * 1UL;
3422#line 90
3423  __cil_tmp28 = 160 + __cil_tmp27;
3424#line 90
3425  __cil_tmp29 = (unsigned long )st;
3426#line 90
3427  __cil_tmp30 = __cil_tmp29 + __cil_tmp28;
3428#line 90
3429  __cil_tmp31 = value >> 24;
3430#line 90
3431  __cil_tmp32 = __cil_tmp31 & 255U;
3432#line 90
3433  *((u8 *)__cil_tmp30) = (u8 )__cil_tmp32;
3434#line 91
3435  __cil_tmp33 = 3 * 1UL;
3436#line 91
3437  __cil_tmp34 = 160 + __cil_tmp33;
3438#line 91
3439  __cil_tmp35 = (unsigned long )st;
3440#line 91
3441  __cil_tmp36 = __cil_tmp35 + __cil_tmp34;
3442#line 91
3443  __cil_tmp37 = value >> 16;
3444#line 91
3445  __cil_tmp38 = __cil_tmp37 & 255U;
3446#line 91
3447  *((u8 *)__cil_tmp36) = (u8 )__cil_tmp38;
3448#line 92
3449  __cil_tmp39 = 4 * 1UL;
3450#line 92
3451  __cil_tmp40 = 160 + __cil_tmp39;
3452#line 92
3453  __cil_tmp41 = (unsigned long )st;
3454#line 92
3455  __cil_tmp42 = __cil_tmp41 + __cil_tmp40;
3456#line 92
3457  __cil_tmp43 = value >> 8;
3458#line 92
3459  __cil_tmp44 = __cil_tmp43 & 255U;
3460#line 92
3461  *((u8 *)__cil_tmp42) = (u8 )__cil_tmp44;
3462#line 93
3463  __cil_tmp45 = 5 * 1UL;
3464#line 93
3465  __cil_tmp46 = 160 + __cil_tmp45;
3466#line 93
3467  __cil_tmp47 = (unsigned long )st;
3468#line 93
3469  __cil_tmp48 = __cil_tmp47 + __cil_tmp46;
3470#line 93
3471  __cil_tmp49 = value & 255U;
3472#line 93
3473  *((u8 *)__cil_tmp48) = (u8 )__cil_tmp49;
3474#line 95
3475  __cil_tmp50 = (unsigned long )st;
3476#line 95
3477  __cil_tmp51 = __cil_tmp50 + 8;
3478#line 95
3479  __cil_tmp52 = *((struct i2c_client **)__cil_tmp51);
3480#line 95
3481  __cil_tmp53 = (struct i2c_client  const  *)__cil_tmp52;
3482#line 95
3483  __cil_tmp54 = 0 * 1UL;
3484#line 95
3485  __cil_tmp55 = 160 + __cil_tmp54;
3486#line 95
3487  __cil_tmp56 = (unsigned long )st;
3488#line 95
3489  __cil_tmp57 = __cil_tmp56 + __cil_tmp55;
3490#line 95
3491  __cil_tmp58 = (u8 *)__cil_tmp57;
3492#line 95
3493  __cil_tmp59 = (char const   *)__cil_tmp58;
3494#line 95
3495  ret = i2c_master_send(__cil_tmp53, __cil_tmp59, 6);
3496#line 96
3497  __cil_tmp60 = (unsigned long )st;
3498#line 96
3499  __cil_tmp61 = __cil_tmp60 + 88;
3500#line 96
3501  __cil_tmp62 = (struct mutex *)__cil_tmp61;
3502#line 96
3503  mutex_unlock(__cil_tmp62);
3504  }
3505#line 98
3506  return (ret);
3507}
3508}
3509#line 101 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/1849/dscv_tempdir/dscv/ri/32_1/drivers/staging/iio/meter/ade7854-i2c.c.common.c"
3510static int ade7854_i2c_read_reg_8(struct device *dev , u16 reg_address , u8 *val ) 
3511{ struct iio_dev *indio_dev ;
3512  void *tmp___7 ;
3513  struct ade7854_state *st ;
3514  void *tmp___8 ;
3515  int ret ;
3516  struct device  const  *__cil_tmp9 ;
3517  struct iio_dev  const  *__cil_tmp10 ;
3518  unsigned long __cil_tmp11 ;
3519  unsigned long __cil_tmp12 ;
3520  struct mutex *__cil_tmp13 ;
3521  unsigned long __cil_tmp14 ;
3522  unsigned long __cil_tmp15 ;
3523  unsigned long __cil_tmp16 ;
3524  unsigned long __cil_tmp17 ;
3525  int __cil_tmp18 ;
3526  int __cil_tmp19 ;
3527  int __cil_tmp20 ;
3528  unsigned long __cil_tmp21 ;
3529  unsigned long __cil_tmp22 ;
3530  unsigned long __cil_tmp23 ;
3531  unsigned long __cil_tmp24 ;
3532  int __cil_tmp25 ;
3533  int __cil_tmp26 ;
3534  unsigned long __cil_tmp27 ;
3535  unsigned long __cil_tmp28 ;
3536  struct i2c_client *__cil_tmp29 ;
3537  struct i2c_client  const  *__cil_tmp30 ;
3538  unsigned long __cil_tmp31 ;
3539  unsigned long __cil_tmp32 ;
3540  unsigned long __cil_tmp33 ;
3541  unsigned long __cil_tmp34 ;
3542  u8 *__cil_tmp35 ;
3543  char const   *__cil_tmp36 ;
3544  unsigned long __cil_tmp37 ;
3545  unsigned long __cil_tmp38 ;
3546  struct i2c_client *__cil_tmp39 ;
3547  struct i2c_client  const  *__cil_tmp40 ;
3548  unsigned long __cil_tmp41 ;
3549  unsigned long __cil_tmp42 ;
3550  unsigned long __cil_tmp43 ;
3551  unsigned long __cil_tmp44 ;
3552  u8 *__cil_tmp45 ;
3553  char *__cil_tmp46 ;
3554  unsigned long __cil_tmp47 ;
3555  unsigned long __cil_tmp48 ;
3556  unsigned long __cil_tmp49 ;
3557  unsigned long __cil_tmp50 ;
3558  unsigned long __cil_tmp51 ;
3559  unsigned long __cil_tmp52 ;
3560  struct mutex *__cil_tmp53 ;
3561
3562  {
3563  {
3564#line 105
3565  __cil_tmp9 = (struct device  const  *)dev;
3566#line 105
3567  tmp___7 = dev_get_drvdata(__cil_tmp9);
3568#line 105
3569  indio_dev = (struct iio_dev *)tmp___7;
3570#line 106
3571  __cil_tmp10 = (struct iio_dev  const  *)indio_dev;
3572#line 106
3573  tmp___8 = iio_priv(__cil_tmp10);
3574#line 106
3575  st = (struct ade7854_state *)tmp___8;
3576#line 109
3577  __cil_tmp11 = (unsigned long )st;
3578#line 109
3579  __cil_tmp12 = __cil_tmp11 + 88;
3580#line 109
3581  __cil_tmp13 = (struct mutex *)__cil_tmp12;
3582#line 109
3583  mutex_lock(__cil_tmp13);
3584#line 110
3585  __cil_tmp14 = 0 * 1UL;
3586#line 110
3587  __cil_tmp15 = 160 + __cil_tmp14;
3588#line 110
3589  __cil_tmp16 = (unsigned long )st;
3590#line 110
3591  __cil_tmp17 = __cil_tmp16 + __cil_tmp15;
3592#line 110
3593  __cil_tmp18 = (int )reg_address;
3594#line 110
3595  __cil_tmp19 = __cil_tmp18 >> 8;
3596#line 110
3597  __cil_tmp20 = __cil_tmp19 & 255;
3598#line 110
3599  *((u8 *)__cil_tmp17) = (u8 )__cil_tmp20;
3600#line 111
3601  __cil_tmp21 = 1 * 1UL;
3602#line 111
3603  __cil_tmp22 = 160 + __cil_tmp21;
3604#line 111
3605  __cil_tmp23 = (unsigned long )st;
3606#line 111
3607  __cil_tmp24 = __cil_tmp23 + __cil_tmp22;
3608#line 111
3609  __cil_tmp25 = (int )reg_address;
3610#line 111
3611  __cil_tmp26 = __cil_tmp25 & 255;
3612#line 111
3613  *((u8 *)__cil_tmp24) = (u8 )__cil_tmp26;
3614#line 113
3615  __cil_tmp27 = (unsigned long )st;
3616#line 113
3617  __cil_tmp28 = __cil_tmp27 + 8;
3618#line 113
3619  __cil_tmp29 = *((struct i2c_client **)__cil_tmp28);
3620#line 113
3621  __cil_tmp30 = (struct i2c_client  const  *)__cil_tmp29;
3622#line 113
3623  __cil_tmp31 = 0 * 1UL;
3624#line 113
3625  __cil_tmp32 = 160 + __cil_tmp31;
3626#line 113
3627  __cil_tmp33 = (unsigned long )st;
3628#line 113
3629  __cil_tmp34 = __cil_tmp33 + __cil_tmp32;
3630#line 113
3631  __cil_tmp35 = (u8 *)__cil_tmp34;
3632#line 113
3633  __cil_tmp36 = (char const   *)__cil_tmp35;
3634#line 113
3635  ret = i2c_master_send(__cil_tmp30, __cil_tmp36, 2);
3636  }
3637#line 114
3638  if (ret) {
3639#line 115
3640    goto out;
3641  } else {
3642
3643  }
3644  {
3645#line 117
3646  __cil_tmp37 = (unsigned long )st;
3647#line 117
3648  __cil_tmp38 = __cil_tmp37 + 8;
3649#line 117
3650  __cil_tmp39 = *((struct i2c_client **)__cil_tmp38);
3651#line 117
3652  __cil_tmp40 = (struct i2c_client  const  *)__cil_tmp39;
3653#line 117
3654  __cil_tmp41 = 0 * 1UL;
3655#line 117
3656  __cil_tmp42 = 167 + __cil_tmp41;
3657#line 117
3658  __cil_tmp43 = (unsigned long )st;
3659#line 117
3660  __cil_tmp44 = __cil_tmp43 + __cil_tmp42;
3661#line 117
3662  __cil_tmp45 = (u8 *)__cil_tmp44;
3663#line 117
3664  __cil_tmp46 = (char *)__cil_tmp45;
3665#line 117
3666  ret = i2c_master_recv(__cil_tmp40, __cil_tmp46, 1);
3667  }
3668#line 118
3669  if (ret) {
3670#line 119
3671    goto out;
3672  } else {
3673
3674  }
3675#line 121
3676  __cil_tmp47 = 0 * 1UL;
3677#line 121
3678  __cil_tmp48 = 167 + __cil_tmp47;
3679#line 121
3680  __cil_tmp49 = (unsigned long )st;
3681#line 121
3682  __cil_tmp50 = __cil_tmp49 + __cil_tmp48;
3683#line 121
3684  *val = *((u8 *)__cil_tmp50);
3685  out: 
3686  {
3687#line 123
3688  __cil_tmp51 = (unsigned long )st;
3689#line 123
3690  __cil_tmp52 = __cil_tmp51 + 88;
3691#line 123
3692  __cil_tmp53 = (struct mutex *)__cil_tmp52;
3693#line 123
3694  mutex_unlock(__cil_tmp53);
3695  }
3696#line 124
3697  return (ret);
3698}
3699}
3700#line 127 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/1849/dscv_tempdir/dscv/ri/32_1/drivers/staging/iio/meter/ade7854-i2c.c.common.c"
3701static int ade7854_i2c_read_reg_16(struct device *dev , u16 reg_address , u16 *val ) 
3702{ struct iio_dev *indio_dev ;
3703  void *tmp___7 ;
3704  struct ade7854_state *st ;
3705  void *tmp___8 ;
3706  int ret ;
3707  struct device  const  *__cil_tmp9 ;
3708  struct iio_dev  const  *__cil_tmp10 ;
3709  unsigned long __cil_tmp11 ;
3710  unsigned long __cil_tmp12 ;
3711  struct mutex *__cil_tmp13 ;
3712  unsigned long __cil_tmp14 ;
3713  unsigned long __cil_tmp15 ;
3714  unsigned long __cil_tmp16 ;
3715  unsigned long __cil_tmp17 ;
3716  int __cil_tmp18 ;
3717  int __cil_tmp19 ;
3718  int __cil_tmp20 ;
3719  unsigned long __cil_tmp21 ;
3720  unsigned long __cil_tmp22 ;
3721  unsigned long __cil_tmp23 ;
3722  unsigned long __cil_tmp24 ;
3723  int __cil_tmp25 ;
3724  int __cil_tmp26 ;
3725  unsigned long __cil_tmp27 ;
3726  unsigned long __cil_tmp28 ;
3727  struct i2c_client *__cil_tmp29 ;
3728  struct i2c_client  const  *__cil_tmp30 ;
3729  unsigned long __cil_tmp31 ;
3730  unsigned long __cil_tmp32 ;
3731  unsigned long __cil_tmp33 ;
3732  unsigned long __cil_tmp34 ;
3733  u8 *__cil_tmp35 ;
3734  char const   *__cil_tmp36 ;
3735  unsigned long __cil_tmp37 ;
3736  unsigned long __cil_tmp38 ;
3737  struct i2c_client *__cil_tmp39 ;
3738  struct i2c_client  const  *__cil_tmp40 ;
3739  unsigned long __cil_tmp41 ;
3740  unsigned long __cil_tmp42 ;
3741  unsigned long __cil_tmp43 ;
3742  unsigned long __cil_tmp44 ;
3743  u8 *__cil_tmp45 ;
3744  char *__cil_tmp46 ;
3745  unsigned long __cil_tmp47 ;
3746  unsigned long __cil_tmp48 ;
3747  unsigned long __cil_tmp49 ;
3748  unsigned long __cil_tmp50 ;
3749  u8 __cil_tmp51 ;
3750  int __cil_tmp52 ;
3751  unsigned long __cil_tmp53 ;
3752  unsigned long __cil_tmp54 ;
3753  unsigned long __cil_tmp55 ;
3754  unsigned long __cil_tmp56 ;
3755  u8 __cil_tmp57 ;
3756  int __cil_tmp58 ;
3757  int __cil_tmp59 ;
3758  int __cil_tmp60 ;
3759  unsigned long __cil_tmp61 ;
3760  unsigned long __cil_tmp62 ;
3761  struct mutex *__cil_tmp63 ;
3762
3763  {
3764  {
3765#line 131
3766  __cil_tmp9 = (struct device  const  *)dev;
3767#line 131
3768  tmp___7 = dev_get_drvdata(__cil_tmp9);
3769#line 131
3770  indio_dev = (struct iio_dev *)tmp___7;
3771#line 132
3772  __cil_tmp10 = (struct iio_dev  const  *)indio_dev;
3773#line 132
3774  tmp___8 = iio_priv(__cil_tmp10);
3775#line 132
3776  st = (struct ade7854_state *)tmp___8;
3777#line 135
3778  __cil_tmp11 = (unsigned long )st;
3779#line 135
3780  __cil_tmp12 = __cil_tmp11 + 88;
3781#line 135
3782  __cil_tmp13 = (struct mutex *)__cil_tmp12;
3783#line 135
3784  mutex_lock(__cil_tmp13);
3785#line 136
3786  __cil_tmp14 = 0 * 1UL;
3787#line 136
3788  __cil_tmp15 = 160 + __cil_tmp14;
3789#line 136
3790  __cil_tmp16 = (unsigned long )st;
3791#line 136
3792  __cil_tmp17 = __cil_tmp16 + __cil_tmp15;
3793#line 136
3794  __cil_tmp18 = (int )reg_address;
3795#line 136
3796  __cil_tmp19 = __cil_tmp18 >> 8;
3797#line 136
3798  __cil_tmp20 = __cil_tmp19 & 255;
3799#line 136
3800  *((u8 *)__cil_tmp17) = (u8 )__cil_tmp20;
3801#line 137
3802  __cil_tmp21 = 1 * 1UL;
3803#line 137
3804  __cil_tmp22 = 160 + __cil_tmp21;
3805#line 137
3806  __cil_tmp23 = (unsigned long )st;
3807#line 137
3808  __cil_tmp24 = __cil_tmp23 + __cil_tmp22;
3809#line 137
3810  __cil_tmp25 = (int )reg_address;
3811#line 137
3812  __cil_tmp26 = __cil_tmp25 & 255;
3813#line 137
3814  *((u8 *)__cil_tmp24) = (u8 )__cil_tmp26;
3815#line 139
3816  __cil_tmp27 = (unsigned long )st;
3817#line 139
3818  __cil_tmp28 = __cil_tmp27 + 8;
3819#line 139
3820  __cil_tmp29 = *((struct i2c_client **)__cil_tmp28);
3821#line 139
3822  __cil_tmp30 = (struct i2c_client  const  *)__cil_tmp29;
3823#line 139
3824  __cil_tmp31 = 0 * 1UL;
3825#line 139
3826  __cil_tmp32 = 160 + __cil_tmp31;
3827#line 139
3828  __cil_tmp33 = (unsigned long )st;
3829#line 139
3830  __cil_tmp34 = __cil_tmp33 + __cil_tmp32;
3831#line 139
3832  __cil_tmp35 = (u8 *)__cil_tmp34;
3833#line 139
3834  __cil_tmp36 = (char const   *)__cil_tmp35;
3835#line 139
3836  ret = i2c_master_send(__cil_tmp30, __cil_tmp36, 2);
3837  }
3838#line 140
3839  if (ret) {
3840#line 141
3841    goto out;
3842  } else {
3843
3844  }
3845  {
3846#line 143
3847  __cil_tmp37 = (unsigned long )st;
3848#line 143
3849  __cil_tmp38 = __cil_tmp37 + 8;
3850#line 143
3851  __cil_tmp39 = *((struct i2c_client **)__cil_tmp38);
3852#line 143
3853  __cil_tmp40 = (struct i2c_client  const  *)__cil_tmp39;
3854#line 143
3855  __cil_tmp41 = 0 * 1UL;
3856#line 143
3857  __cil_tmp42 = 167 + __cil_tmp41;
3858#line 143
3859  __cil_tmp43 = (unsigned long )st;
3860#line 143
3861  __cil_tmp44 = __cil_tmp43 + __cil_tmp42;
3862#line 143
3863  __cil_tmp45 = (u8 *)__cil_tmp44;
3864#line 143
3865  __cil_tmp46 = (char *)__cil_tmp45;
3866#line 143
3867  ret = i2c_master_recv(__cil_tmp40, __cil_tmp46, 2);
3868  }
3869#line 144
3870  if (ret) {
3871#line 145
3872    goto out;
3873  } else {
3874
3875  }
3876#line 147
3877  __cil_tmp47 = 1 * 1UL;
3878#line 147
3879  __cil_tmp48 = 167 + __cil_tmp47;
3880#line 147
3881  __cil_tmp49 = (unsigned long )st;
3882#line 147
3883  __cil_tmp50 = __cil_tmp49 + __cil_tmp48;
3884#line 147
3885  __cil_tmp51 = *((u8 *)__cil_tmp50);
3886#line 147
3887  __cil_tmp52 = (int )__cil_tmp51;
3888#line 147
3889  __cil_tmp53 = 0 * 1UL;
3890#line 147
3891  __cil_tmp54 = 167 + __cil_tmp53;
3892#line 147
3893  __cil_tmp55 = (unsigned long )st;
3894#line 147
3895  __cil_tmp56 = __cil_tmp55 + __cil_tmp54;
3896#line 147
3897  __cil_tmp57 = *((u8 *)__cil_tmp56);
3898#line 147
3899  __cil_tmp58 = (int )__cil_tmp57;
3900#line 147
3901  __cil_tmp59 = __cil_tmp58 << 8;
3902#line 147
3903  __cil_tmp60 = __cil_tmp59 | __cil_tmp52;
3904#line 147
3905  *val = (u16 )__cil_tmp60;
3906  out: 
3907  {
3908#line 149
3909  __cil_tmp61 = (unsigned long )st;
3910#line 149
3911  __cil_tmp62 = __cil_tmp61 + 88;
3912#line 149
3913  __cil_tmp63 = (struct mutex *)__cil_tmp62;
3914#line 149
3915  mutex_unlock(__cil_tmp63);
3916  }
3917#line 150
3918  return (ret);
3919}
3920}
3921#line 153 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/1849/dscv_tempdir/dscv/ri/32_1/drivers/staging/iio/meter/ade7854-i2c.c.common.c"
3922static int ade7854_i2c_read_reg_24(struct device *dev , u16 reg_address , u32 *val ) 
3923{ struct iio_dev *indio_dev ;
3924  void *tmp___7 ;
3925  struct ade7854_state *st ;
3926  void *tmp___8 ;
3927  int ret ;
3928  struct device  const  *__cil_tmp9 ;
3929  struct iio_dev  const  *__cil_tmp10 ;
3930  unsigned long __cil_tmp11 ;
3931  unsigned long __cil_tmp12 ;
3932  struct mutex *__cil_tmp13 ;
3933  unsigned long __cil_tmp14 ;
3934  unsigned long __cil_tmp15 ;
3935  unsigned long __cil_tmp16 ;
3936  unsigned long __cil_tmp17 ;
3937  int __cil_tmp18 ;
3938  int __cil_tmp19 ;
3939  int __cil_tmp20 ;
3940  unsigned long __cil_tmp21 ;
3941  unsigned long __cil_tmp22 ;
3942  unsigned long __cil_tmp23 ;
3943  unsigned long __cil_tmp24 ;
3944  int __cil_tmp25 ;
3945  int __cil_tmp26 ;
3946  unsigned long __cil_tmp27 ;
3947  unsigned long __cil_tmp28 ;
3948  struct i2c_client *__cil_tmp29 ;
3949  struct i2c_client  const  *__cil_tmp30 ;
3950  unsigned long __cil_tmp31 ;
3951  unsigned long __cil_tmp32 ;
3952  unsigned long __cil_tmp33 ;
3953  unsigned long __cil_tmp34 ;
3954  u8 *__cil_tmp35 ;
3955  char const   *__cil_tmp36 ;
3956  unsigned long __cil_tmp37 ;
3957  unsigned long __cil_tmp38 ;
3958  struct i2c_client *__cil_tmp39 ;
3959  struct i2c_client  const  *__cil_tmp40 ;
3960  unsigned long __cil_tmp41 ;
3961  unsigned long __cil_tmp42 ;
3962  unsigned long __cil_tmp43 ;
3963  unsigned long __cil_tmp44 ;
3964  u8 *__cil_tmp45 ;
3965  char *__cil_tmp46 ;
3966  unsigned long __cil_tmp47 ;
3967  unsigned long __cil_tmp48 ;
3968  unsigned long __cil_tmp49 ;
3969  unsigned long __cil_tmp50 ;
3970  u8 __cil_tmp51 ;
3971  int __cil_tmp52 ;
3972  unsigned long __cil_tmp53 ;
3973  unsigned long __cil_tmp54 ;
3974  unsigned long __cil_tmp55 ;
3975  unsigned long __cil_tmp56 ;
3976  u8 __cil_tmp57 ;
3977  int __cil_tmp58 ;
3978  int __cil_tmp59 ;
3979  unsigned long __cil_tmp60 ;
3980  unsigned long __cil_tmp61 ;
3981  unsigned long __cil_tmp62 ;
3982  unsigned long __cil_tmp63 ;
3983  u8 __cil_tmp64 ;
3984  int __cil_tmp65 ;
3985  int __cil_tmp66 ;
3986  int __cil_tmp67 ;
3987  int __cil_tmp68 ;
3988  unsigned long __cil_tmp69 ;
3989  unsigned long __cil_tmp70 ;
3990  struct mutex *__cil_tmp71 ;
3991
3992  {
3993  {
3994#line 157
3995  __cil_tmp9 = (struct device  const  *)dev;
3996#line 157
3997  tmp___7 = dev_get_drvdata(__cil_tmp9);
3998#line 157
3999  indio_dev = (struct iio_dev *)tmp___7;
4000#line 158
4001  __cil_tmp10 = (struct iio_dev  const  *)indio_dev;
4002#line 158
4003  tmp___8 = iio_priv(__cil_tmp10);
4004#line 158
4005  st = (struct ade7854_state *)tmp___8;
4006#line 161
4007  __cil_tmp11 = (unsigned long )st;
4008#line 161
4009  __cil_tmp12 = __cil_tmp11 + 88;
4010#line 161
4011  __cil_tmp13 = (struct mutex *)__cil_tmp12;
4012#line 161
4013  mutex_lock(__cil_tmp13);
4014#line 162
4015  __cil_tmp14 = 0 * 1UL;
4016#line 162
4017  __cil_tmp15 = 160 + __cil_tmp14;
4018#line 162
4019  __cil_tmp16 = (unsigned long )st;
4020#line 162
4021  __cil_tmp17 = __cil_tmp16 + __cil_tmp15;
4022#line 162
4023  __cil_tmp18 = (int )reg_address;
4024#line 162
4025  __cil_tmp19 = __cil_tmp18 >> 8;
4026#line 162
4027  __cil_tmp20 = __cil_tmp19 & 255;
4028#line 162
4029  *((u8 *)__cil_tmp17) = (u8 )__cil_tmp20;
4030#line 163
4031  __cil_tmp21 = 1 * 1UL;
4032#line 163
4033  __cil_tmp22 = 160 + __cil_tmp21;
4034#line 163
4035  __cil_tmp23 = (unsigned long )st;
4036#line 163
4037  __cil_tmp24 = __cil_tmp23 + __cil_tmp22;
4038#line 163
4039  __cil_tmp25 = (int )reg_address;
4040#line 163
4041  __cil_tmp26 = __cil_tmp25 & 255;
4042#line 163
4043  *((u8 *)__cil_tmp24) = (u8 )__cil_tmp26;
4044#line 165
4045  __cil_tmp27 = (unsigned long )st;
4046#line 165
4047  __cil_tmp28 = __cil_tmp27 + 8;
4048#line 165
4049  __cil_tmp29 = *((struct i2c_client **)__cil_tmp28);
4050#line 165
4051  __cil_tmp30 = (struct i2c_client  const  *)__cil_tmp29;
4052#line 165
4053  __cil_tmp31 = 0 * 1UL;
4054#line 165
4055  __cil_tmp32 = 160 + __cil_tmp31;
4056#line 165
4057  __cil_tmp33 = (unsigned long )st;
4058#line 165
4059  __cil_tmp34 = __cil_tmp33 + __cil_tmp32;
4060#line 165
4061  __cil_tmp35 = (u8 *)__cil_tmp34;
4062#line 165
4063  __cil_tmp36 = (char const   *)__cil_tmp35;
4064#line 165
4065  ret = i2c_master_send(__cil_tmp30, __cil_tmp36, 2);
4066  }
4067#line 166
4068  if (ret) {
4069#line 167
4070    goto out;
4071  } else {
4072
4073  }
4074  {
4075#line 169
4076  __cil_tmp37 = (unsigned long )st;
4077#line 169
4078  __cil_tmp38 = __cil_tmp37 + 8;
4079#line 169
4080  __cil_tmp39 = *((struct i2c_client **)__cil_tmp38);
4081#line 169
4082  __cil_tmp40 = (struct i2c_client  const  *)__cil_tmp39;
4083#line 169
4084  __cil_tmp41 = 0 * 1UL;
4085#line 169
4086  __cil_tmp42 = 167 + __cil_tmp41;
4087#line 169
4088  __cil_tmp43 = (unsigned long )st;
4089#line 169
4090  __cil_tmp44 = __cil_tmp43 + __cil_tmp42;
4091#line 169
4092  __cil_tmp45 = (u8 *)__cil_tmp44;
4093#line 169
4094  __cil_tmp46 = (char *)__cil_tmp45;
4095#line 169
4096  ret = i2c_master_recv(__cil_tmp40, __cil_tmp46, 3);
4097  }
4098#line 170
4099  if (ret) {
4100#line 171
4101    goto out;
4102  } else {
4103
4104  }
4105#line 173
4106  __cil_tmp47 = 2 * 1UL;
4107#line 173
4108  __cil_tmp48 = 167 + __cil_tmp47;
4109#line 173
4110  __cil_tmp49 = (unsigned long )st;
4111#line 173
4112  __cil_tmp50 = __cil_tmp49 + __cil_tmp48;
4113#line 173
4114  __cil_tmp51 = *((u8 *)__cil_tmp50);
4115#line 173
4116  __cil_tmp52 = (int )__cil_tmp51;
4117#line 173
4118  __cil_tmp53 = 1 * 1UL;
4119#line 173
4120  __cil_tmp54 = 167 + __cil_tmp53;
4121#line 173
4122  __cil_tmp55 = (unsigned long )st;
4123#line 173
4124  __cil_tmp56 = __cil_tmp55 + __cil_tmp54;
4125#line 173
4126  __cil_tmp57 = *((u8 *)__cil_tmp56);
4127#line 173
4128  __cil_tmp58 = (int )__cil_tmp57;
4129#line 173
4130  __cil_tmp59 = __cil_tmp58 << 8;
4131#line 173
4132  __cil_tmp60 = 0 * 1UL;
4133#line 173
4134  __cil_tmp61 = 167 + __cil_tmp60;
4135#line 173
4136  __cil_tmp62 = (unsigned long )st;
4137#line 173
4138  __cil_tmp63 = __cil_tmp62 + __cil_tmp61;
4139#line 173
4140  __cil_tmp64 = *((u8 *)__cil_tmp63);
4141#line 173
4142  __cil_tmp65 = (int )__cil_tmp64;
4143#line 173
4144  __cil_tmp66 = __cil_tmp65 << 16;
4145#line 173
4146  __cil_tmp67 = __cil_tmp66 | __cil_tmp59;
4147#line 173
4148  __cil_tmp68 = __cil_tmp67 | __cil_tmp52;
4149#line 173
4150  *val = (u32 )__cil_tmp68;
4151  out: 
4152  {
4153#line 175
4154  __cil_tmp69 = (unsigned long )st;
4155#line 175
4156  __cil_tmp70 = __cil_tmp69 + 88;
4157#line 175
4158  __cil_tmp71 = (struct mutex *)__cil_tmp70;
4159#line 175
4160  mutex_unlock(__cil_tmp71);
4161  }
4162#line 176
4163  return (ret);
4164}
4165}
4166#line 179 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/1849/dscv_tempdir/dscv/ri/32_1/drivers/staging/iio/meter/ade7854-i2c.c.common.c"
4167static int ade7854_i2c_read_reg_32(struct device *dev , u16 reg_address , u32 *val ) 
4168{ struct iio_dev *indio_dev ;
4169  void *tmp___7 ;
4170  struct ade7854_state *st ;
4171  void *tmp___8 ;
4172  int ret ;
4173  struct device  const  *__cil_tmp9 ;
4174  struct iio_dev  const  *__cil_tmp10 ;
4175  unsigned long __cil_tmp11 ;
4176  unsigned long __cil_tmp12 ;
4177  struct mutex *__cil_tmp13 ;
4178  unsigned long __cil_tmp14 ;
4179  unsigned long __cil_tmp15 ;
4180  unsigned long __cil_tmp16 ;
4181  unsigned long __cil_tmp17 ;
4182  int __cil_tmp18 ;
4183  int __cil_tmp19 ;
4184  int __cil_tmp20 ;
4185  unsigned long __cil_tmp21 ;
4186  unsigned long __cil_tmp22 ;
4187  unsigned long __cil_tmp23 ;
4188  unsigned long __cil_tmp24 ;
4189  int __cil_tmp25 ;
4190  int __cil_tmp26 ;
4191  unsigned long __cil_tmp27 ;
4192  unsigned long __cil_tmp28 ;
4193  struct i2c_client *__cil_tmp29 ;
4194  struct i2c_client  const  *__cil_tmp30 ;
4195  unsigned long __cil_tmp31 ;
4196  unsigned long __cil_tmp32 ;
4197  unsigned long __cil_tmp33 ;
4198  unsigned long __cil_tmp34 ;
4199  u8 *__cil_tmp35 ;
4200  char const   *__cil_tmp36 ;
4201  unsigned long __cil_tmp37 ;
4202  unsigned long __cil_tmp38 ;
4203  struct i2c_client *__cil_tmp39 ;
4204  struct i2c_client  const  *__cil_tmp40 ;
4205  unsigned long __cil_tmp41 ;
4206  unsigned long __cil_tmp42 ;
4207  unsigned long __cil_tmp43 ;
4208  unsigned long __cil_tmp44 ;
4209  u8 *__cil_tmp45 ;
4210  char *__cil_tmp46 ;
4211  unsigned long __cil_tmp47 ;
4212  unsigned long __cil_tmp48 ;
4213  unsigned long __cil_tmp49 ;
4214  unsigned long __cil_tmp50 ;
4215  u8 __cil_tmp51 ;
4216  int __cil_tmp52 ;
4217  unsigned long __cil_tmp53 ;
4218  unsigned long __cil_tmp54 ;
4219  unsigned long __cil_tmp55 ;
4220  unsigned long __cil_tmp56 ;
4221  u8 __cil_tmp57 ;
4222  int __cil_tmp58 ;
4223  int __cil_tmp59 ;
4224  unsigned long __cil_tmp60 ;
4225  unsigned long __cil_tmp61 ;
4226  unsigned long __cil_tmp62 ;
4227  unsigned long __cil_tmp63 ;
4228  u8 __cil_tmp64 ;
4229  int __cil_tmp65 ;
4230  int __cil_tmp66 ;
4231  unsigned long __cil_tmp67 ;
4232  unsigned long __cil_tmp68 ;
4233  unsigned long __cil_tmp69 ;
4234  unsigned long __cil_tmp70 ;
4235  u8 __cil_tmp71 ;
4236  int __cil_tmp72 ;
4237  int __cil_tmp73 ;
4238  int __cil_tmp74 ;
4239  int __cil_tmp75 ;
4240  int __cil_tmp76 ;
4241  unsigned long __cil_tmp77 ;
4242  unsigned long __cil_tmp78 ;
4243  struct mutex *__cil_tmp79 ;
4244
4245  {
4246  {
4247#line 183
4248  __cil_tmp9 = (struct device  const  *)dev;
4249#line 183
4250  tmp___7 = dev_get_drvdata(__cil_tmp9);
4251#line 183
4252  indio_dev = (struct iio_dev *)tmp___7;
4253#line 184
4254  __cil_tmp10 = (struct iio_dev  const  *)indio_dev;
4255#line 184
4256  tmp___8 = iio_priv(__cil_tmp10);
4257#line 184
4258  st = (struct ade7854_state *)tmp___8;
4259#line 187
4260  __cil_tmp11 = (unsigned long )st;
4261#line 187
4262  __cil_tmp12 = __cil_tmp11 + 88;
4263#line 187
4264  __cil_tmp13 = (struct mutex *)__cil_tmp12;
4265#line 187
4266  mutex_lock(__cil_tmp13);
4267#line 188
4268  __cil_tmp14 = 0 * 1UL;
4269#line 188
4270  __cil_tmp15 = 160 + __cil_tmp14;
4271#line 188
4272  __cil_tmp16 = (unsigned long )st;
4273#line 188
4274  __cil_tmp17 = __cil_tmp16 + __cil_tmp15;
4275#line 188
4276  __cil_tmp18 = (int )reg_address;
4277#line 188
4278  __cil_tmp19 = __cil_tmp18 >> 8;
4279#line 188
4280  __cil_tmp20 = __cil_tmp19 & 255;
4281#line 188
4282  *((u8 *)__cil_tmp17) = (u8 )__cil_tmp20;
4283#line 189
4284  __cil_tmp21 = 1 * 1UL;
4285#line 189
4286  __cil_tmp22 = 160 + __cil_tmp21;
4287#line 189
4288  __cil_tmp23 = (unsigned long )st;
4289#line 189
4290  __cil_tmp24 = __cil_tmp23 + __cil_tmp22;
4291#line 189
4292  __cil_tmp25 = (int )reg_address;
4293#line 189
4294  __cil_tmp26 = __cil_tmp25 & 255;
4295#line 189
4296  *((u8 *)__cil_tmp24) = (u8 )__cil_tmp26;
4297#line 191
4298  __cil_tmp27 = (unsigned long )st;
4299#line 191
4300  __cil_tmp28 = __cil_tmp27 + 8;
4301#line 191
4302  __cil_tmp29 = *((struct i2c_client **)__cil_tmp28);
4303#line 191
4304  __cil_tmp30 = (struct i2c_client  const  *)__cil_tmp29;
4305#line 191
4306  __cil_tmp31 = 0 * 1UL;
4307#line 191
4308  __cil_tmp32 = 160 + __cil_tmp31;
4309#line 191
4310  __cil_tmp33 = (unsigned long )st;
4311#line 191
4312  __cil_tmp34 = __cil_tmp33 + __cil_tmp32;
4313#line 191
4314  __cil_tmp35 = (u8 *)__cil_tmp34;
4315#line 191
4316  __cil_tmp36 = (char const   *)__cil_tmp35;
4317#line 191
4318  ret = i2c_master_send(__cil_tmp30, __cil_tmp36, 2);
4319  }
4320#line 192
4321  if (ret) {
4322#line 193
4323    goto out;
4324  } else {
4325
4326  }
4327  {
4328#line 195
4329  __cil_tmp37 = (unsigned long )st;
4330#line 195
4331  __cil_tmp38 = __cil_tmp37 + 8;
4332#line 195
4333  __cil_tmp39 = *((struct i2c_client **)__cil_tmp38);
4334#line 195
4335  __cil_tmp40 = (struct i2c_client  const  *)__cil_tmp39;
4336#line 195
4337  __cil_tmp41 = 0 * 1UL;
4338#line 195
4339  __cil_tmp42 = 167 + __cil_tmp41;
4340#line 195
4341  __cil_tmp43 = (unsigned long )st;
4342#line 195
4343  __cil_tmp44 = __cil_tmp43 + __cil_tmp42;
4344#line 195
4345  __cil_tmp45 = (u8 *)__cil_tmp44;
4346#line 195
4347  __cil_tmp46 = (char *)__cil_tmp45;
4348#line 195
4349  ret = i2c_master_recv(__cil_tmp40, __cil_tmp46, 3);
4350  }
4351#line 196
4352  if (ret) {
4353#line 197
4354    goto out;
4355  } else {
4356
4357  }
4358#line 199
4359  __cil_tmp47 = 3 * 1UL;
4360#line 199
4361  __cil_tmp48 = 167 + __cil_tmp47;
4362#line 199
4363  __cil_tmp49 = (unsigned long )st;
4364#line 199
4365  __cil_tmp50 = __cil_tmp49 + __cil_tmp48;
4366#line 199
4367  __cil_tmp51 = *((u8 *)__cil_tmp50);
4368#line 199
4369  __cil_tmp52 = (int )__cil_tmp51;
4370#line 199
4371  __cil_tmp53 = 2 * 1UL;
4372#line 199
4373  __cil_tmp54 = 167 + __cil_tmp53;
4374#line 199
4375  __cil_tmp55 = (unsigned long )st;
4376#line 199
4377  __cil_tmp56 = __cil_tmp55 + __cil_tmp54;
4378#line 199
4379  __cil_tmp57 = *((u8 *)__cil_tmp56);
4380#line 199
4381  __cil_tmp58 = (int )__cil_tmp57;
4382#line 199
4383  __cil_tmp59 = __cil_tmp58 << 8;
4384#line 199
4385  __cil_tmp60 = 1 * 1UL;
4386#line 199
4387  __cil_tmp61 = 167 + __cil_tmp60;
4388#line 199
4389  __cil_tmp62 = (unsigned long )st;
4390#line 199
4391  __cil_tmp63 = __cil_tmp62 + __cil_tmp61;
4392#line 199
4393  __cil_tmp64 = *((u8 *)__cil_tmp63);
4394#line 199
4395  __cil_tmp65 = (int )__cil_tmp64;
4396#line 199
4397  __cil_tmp66 = __cil_tmp65 << 16;
4398#line 199
4399  __cil_tmp67 = 0 * 1UL;
4400#line 199
4401  __cil_tmp68 = 167 + __cil_tmp67;
4402#line 199
4403  __cil_tmp69 = (unsigned long )st;
4404#line 199
4405  __cil_tmp70 = __cil_tmp69 + __cil_tmp68;
4406#line 199
4407  __cil_tmp71 = *((u8 *)__cil_tmp70);
4408#line 199
4409  __cil_tmp72 = (int )__cil_tmp71;
4410#line 199
4411  __cil_tmp73 = __cil_tmp72 << 24;
4412#line 199
4413  __cil_tmp74 = __cil_tmp73 | __cil_tmp66;
4414#line 199
4415  __cil_tmp75 = __cil_tmp74 | __cil_tmp59;
4416#line 199
4417  __cil_tmp76 = __cil_tmp75 | __cil_tmp52;
4418#line 199
4419  *val = (u32 )__cil_tmp76;
4420  out: 
4421  {
4422#line 201
4423  __cil_tmp77 = (unsigned long )st;
4424#line 201
4425  __cil_tmp78 = __cil_tmp77 + 88;
4426#line 201
4427  __cil_tmp79 = (struct mutex *)__cil_tmp78;
4428#line 201
4429  mutex_unlock(__cil_tmp79);
4430  }
4431#line 202
4432  return (ret);
4433}
4434}
4435#line 205
4436static int ade7854_i2c_probe(struct i2c_client *client , struct i2c_device_id  const  *id )  __attribute__((__section__(".devinit.text"),
4437__no_instrument_function__)) ;
4438#line 205 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/1849/dscv_tempdir/dscv/ri/32_1/drivers/staging/iio/meter/ade7854-i2c.c.common.c"
4439static int ade7854_i2c_probe(struct i2c_client *client , struct i2c_device_id  const  *id ) 
4440{ int ret ;
4441  struct ade7854_state *st ;
4442  struct iio_dev *indio_dev ;
4443  void *tmp___7 ;
4444  int __cil_tmp7 ;
4445  void *__cil_tmp8 ;
4446  unsigned long __cil_tmp9 ;
4447  unsigned long __cil_tmp10 ;
4448  struct iio_dev  const  *__cil_tmp11 ;
4449  void *__cil_tmp12 ;
4450  unsigned long __cil_tmp13 ;
4451  unsigned long __cil_tmp14 ;
4452  unsigned long __cil_tmp15 ;
4453  unsigned long __cil_tmp16 ;
4454  unsigned long __cil_tmp17 ;
4455  unsigned long __cil_tmp18 ;
4456  unsigned long __cil_tmp19 ;
4457  unsigned long __cil_tmp20 ;
4458  unsigned long __cil_tmp21 ;
4459  unsigned long __cil_tmp22 ;
4460  unsigned long __cil_tmp23 ;
4461  unsigned long __cil_tmp24 ;
4462  unsigned long __cil_tmp25 ;
4463  unsigned long __cil_tmp26 ;
4464  unsigned long __cil_tmp27 ;
4465  unsigned long __cil_tmp28 ;
4466  unsigned long __cil_tmp29 ;
4467  unsigned long __cil_tmp30 ;
4468  unsigned long __cil_tmp31 ;
4469  unsigned long __cil_tmp32 ;
4470  unsigned long __cil_tmp33 ;
4471  unsigned long __cil_tmp34 ;
4472  unsigned long __cil_tmp35 ;
4473  unsigned long __cil_tmp36 ;
4474  struct device *__cil_tmp37 ;
4475
4476  {
4477  {
4478#line 212
4479  __cil_tmp7 = (int )176UL;
4480#line 212
4481  indio_dev = iio_allocate_device(__cil_tmp7);
4482  }
4483  {
4484#line 213
4485  __cil_tmp8 = (void *)0;
4486#line 213
4487  __cil_tmp9 = (unsigned long )__cil_tmp8;
4488#line 213
4489  __cil_tmp10 = (unsigned long )indio_dev;
4490#line 213
4491  if (__cil_tmp10 == __cil_tmp9) {
4492#line 214
4493    return (-12);
4494  } else {
4495
4496  }
4497  }
4498  {
4499#line 215
4500  __cil_tmp11 = (struct iio_dev  const  *)indio_dev;
4501#line 215
4502  tmp___7 = iio_priv(__cil_tmp11);
4503#line 215
4504  st = (struct ade7854_state *)tmp___7;
4505#line 216
4506  __cil_tmp12 = (void *)indio_dev;
4507#line 216
4508  i2c_set_clientdata(client, __cil_tmp12);
4509#line 217
4510  __cil_tmp13 = (unsigned long )st;
4511#line 217
4512  __cil_tmp14 = __cil_tmp13 + 16;
4513#line 217
4514  *((int (**)(struct device * , u16  , u8 * ))__cil_tmp14) = & ade7854_i2c_read_reg_8;
4515#line 218
4516  __cil_tmp15 = (unsigned long )st;
4517#line 218
4518  __cil_tmp16 = __cil_tmp15 + 24;
4519#line 218
4520  *((int (**)(struct device * , u16  , u16 * ))__cil_tmp16) = & ade7854_i2c_read_reg_16;
4521#line 219
4522  __cil_tmp17 = (unsigned long )st;
4523#line 219
4524  __cil_tmp18 = __cil_tmp17 + 32;
4525#line 219
4526  *((int (**)(struct device * , u16  , u32 * ))__cil_tmp18) = & ade7854_i2c_read_reg_24;
4527#line 220
4528  __cil_tmp19 = (unsigned long )st;
4529#line 220
4530  __cil_tmp20 = __cil_tmp19 + 40;
4531#line 220
4532  *((int (**)(struct device * , u16  , u32 * ))__cil_tmp20) = & ade7854_i2c_read_reg_32;
4533#line 221
4534  __cil_tmp21 = (unsigned long )st;
4535#line 221
4536  __cil_tmp22 = __cil_tmp21 + 48;
4537#line 221
4538  *((int (**)(struct device * , u16  , u8  ))__cil_tmp22) = & ade7854_i2c_write_reg_8;
4539#line 222
4540  __cil_tmp23 = (unsigned long )st;
4541#line 222
4542  __cil_tmp24 = __cil_tmp23 + 56;
4543#line 222
4544  *((int (**)(struct device * , u16  , u16  ))__cil_tmp24) = & ade7854_i2c_write_reg_16;
4545#line 223
4546  __cil_tmp25 = (unsigned long )st;
4547#line 223
4548  __cil_tmp26 = __cil_tmp25 + 64;
4549#line 223
4550  *((int (**)(struct device * , u16  , u32  ))__cil_tmp26) = & ade7854_i2c_write_reg_24;
4551#line 224
4552  __cil_tmp27 = (unsigned long )st;
4553#line 224
4554  __cil_tmp28 = __cil_tmp27 + 72;
4555#line 224
4556  *((int (**)(struct device * , u16  , u32  ))__cil_tmp28) = & ade7854_i2c_write_reg_32;
4557#line 225
4558  __cil_tmp29 = (unsigned long )st;
4559#line 225
4560  __cil_tmp30 = __cil_tmp29 + 8;
4561#line 225
4562  *((struct i2c_client **)__cil_tmp30) = client;
4563#line 226
4564  __cil_tmp31 = (unsigned long )st;
4565#line 226
4566  __cil_tmp32 = __cil_tmp31 + 80;
4567#line 226
4568  __cil_tmp33 = (unsigned long )client;
4569#line 226
4570  __cil_tmp34 = __cil_tmp33 + 808;
4571#line 226
4572  *((int *)__cil_tmp32) = *((int *)__cil_tmp34);
4573#line 228
4574  __cil_tmp35 = (unsigned long )client;
4575#line 228
4576  __cil_tmp36 = __cil_tmp35 + 40;
4577#line 228
4578  __cil_tmp37 = (struct device *)__cil_tmp36;
4579#line 228
4580  ret = ade7854_probe(indio_dev, __cil_tmp37);
4581  }
4582#line 229
4583  if (ret) {
4584    {
4585#line 230
4586    iio_free_device(indio_dev);
4587    }
4588  } else {
4589
4590  }
4591#line 232
4592  return (ret);
4593}
4594}
4595#line 235
4596static int ade7854_i2c_remove(struct i2c_client *client )  __attribute__((__section__(".devexit.text"),
4597__no_instrument_function__)) ;
4598#line 235 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/1849/dscv_tempdir/dscv/ri/32_1/drivers/staging/iio/meter/ade7854-i2c.c.common.c"
4599static int ade7854_i2c_remove(struct i2c_client *client ) 
4600{ void *tmp___7 ;
4601  int tmp___8 ;
4602  struct i2c_client  const  *__cil_tmp4 ;
4603  struct iio_dev *__cil_tmp5 ;
4604
4605  {
4606  {
4607#line 237
4608  __cil_tmp4 = (struct i2c_client  const  *)client;
4609#line 237
4610  tmp___7 = i2c_get_clientdata(__cil_tmp4);
4611#line 237
4612  __cil_tmp5 = (struct iio_dev *)tmp___7;
4613#line 237
4614  tmp___8 = ade7854_remove(__cil_tmp5);
4615  }
4616#line 237
4617  return (tmp___8);
4618}
4619}
4620#line 240 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/1849/dscv_tempdir/dscv/ri/32_1/drivers/staging/iio/meter/ade7854-i2c.c.common.c"
4621static struct i2c_device_id  const  ade7854_id[4]  = {      {{(char )'a', (char )'d', (char )'e', (char )'7', (char )'8', (char )'5', (char )'4',
4622       (char )'\000', (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0,
4623       (char)0, (char)0, (char)0, (char)0, (char)0}, (kernel_ulong_t )0}, 
4624        {{(char )'a', (char )'d', (char )'e', (char )'7', (char )'8', (char )'5', (char )'8',
4625       (char )'\000', (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0,
4626       (char)0, (char)0, (char)0, (char)0, (char)0}, (kernel_ulong_t )0}, 
4627        {{(char )'a', (char )'d', (char )'e', (char )'7', (char )'8', (char )'6', (char )'8',
4628       (char )'\000', (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0,
4629       (char)0, (char)0, (char)0, (char)0, (char)0}, (kernel_ulong_t )0}, 
4630        {{(char )'a', (char )'d', (char )'e', (char )'7', (char )'8', (char )'7', (char )'8',
4631       (char )'\000', (char)0, (char)0, (char)0, (char)0, (char)0, (char)0, (char)0,
4632       (char)0, (char)0, (char)0, (char)0, (char)0}, (kernel_ulong_t )0}};
4633#line 247
4634extern struct i2c_device_id  const  __mod_i2c_device_table  __attribute__((__unused__,
4635__alias__("ade7854_id"))) ;
4636#line 249 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/1849/dscv_tempdir/dscv/ri/32_1/drivers/staging/iio/meter/ade7854-i2c.c.common.c"
4637static struct i2c_driver ade7854_i2c_driver  = 
4638#line 249
4639     {0U, (int (*)(struct i2c_adapter * ))0, (int (*)(struct i2c_adapter * ))0, & ade7854_i2c_probe,
4640    & ade7854_i2c_remove, (void (*)(struct i2c_client * ))0, (int (*)(struct i2c_client * ,
4641                                                                      pm_message_t mesg ))0,
4642    (int (*)(struct i2c_client * ))0, (void (*)(struct i2c_client * , unsigned int data ))0,
4643    (int (*)(struct i2c_client *client , unsigned int cmd , void *arg ))0, {"ade7854",
4644                                                                            (struct bus_type *)0,
4645                                                                            (struct module *)0,
4646                                                                            (char const   *)0,
4647                                                                            (_Bool)0,
4648                                                                            (struct of_device_id  const  *)0,
4649                                                                            (int (*)(struct device *dev ))0,
4650                                                                            (int (*)(struct device *dev ))0,
4651                                                                            (void (*)(struct device *dev ))0,
4652                                                                            (int (*)(struct device *dev ,
4653                                                                                     pm_message_t state ))0,
4654                                                                            (int (*)(struct device *dev ))0,
4655                                                                            (struct attribute_group  const  **)0,
4656                                                                            (struct dev_pm_ops  const  *)0,
4657                                                                            (struct driver_private *)0},
4658    ade7854_id, (int (*)(struct i2c_client * , struct i2c_board_info * ))0, (unsigned short const   *)0,
4659    {(struct list_head *)0, (struct list_head *)0}};
4660#line 257
4661static int ade7854_i2c_driver_init(void)  __attribute__((__section__(".init.text"),
4662__no_instrument_function__)) ;
4663#line 257 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/1849/dscv_tempdir/dscv/ri/32_1/drivers/staging/iio/meter/ade7854-i2c.c.common.c"
4664static int ade7854_i2c_driver_init(void) 
4665{ int tmp___7 ;
4666
4667  {
4668  {
4669#line 257
4670  tmp___7 = i2c_register_driver(& __this_module, & ade7854_i2c_driver);
4671  }
4672#line 257
4673  return (tmp___7);
4674}
4675}
4676#line 257 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/1849/dscv_tempdir/dscv/ri/32_1/drivers/staging/iio/meter/ade7854-i2c.c.common.c"
4677int init_module(void) 
4678{ int tmp___7 ;
4679
4680  {
4681  {
4682#line 257
4683  tmp___7 = ade7854_i2c_driver_init();
4684  }
4685#line 257
4686  return (tmp___7);
4687}
4688}
4689#line 257
4690static void ade7854_i2c_driver_exit(void)  __attribute__((__section__(".exit.text"),
4691__no_instrument_function__)) ;
4692#line 257 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/1849/dscv_tempdir/dscv/ri/32_1/drivers/staging/iio/meter/ade7854-i2c.c.common.c"
4693static void ade7854_i2c_driver_exit(void) 
4694{ 
4695
4696  {
4697  {
4698#line 257
4699  i2c_del_driver(& ade7854_i2c_driver);
4700  }
4701#line 257
4702  return;
4703}
4704}
4705#line 257 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/1849/dscv_tempdir/dscv/ri/32_1/drivers/staging/iio/meter/ade7854-i2c.c.common.c"
4706void cleanup_module(void) 
4707{ 
4708
4709  {
4710  {
4711#line 257
4712  ade7854_i2c_driver_exit();
4713  }
4714#line 257
4715  return;
4716}
4717}
4718#line 259 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/1849/dscv_tempdir/dscv/ri/32_1/drivers/staging/iio/meter/ade7854-i2c.c.common.c"
4719static char const   __mod_author259[38]  __attribute__((__used__, __unused__, __section__(".modinfo"),
4720__aligned__(1)))  = 
4721#line 259
4722  {      (char const   )'a',      (char const   )'u',      (char const   )'t',      (char const   )'h', 
4723        (char const   )'o',      (char const   )'r',      (char const   )'=',      (char const   )'B', 
4724        (char const   )'a',      (char const   )'r',      (char const   )'r',      (char const   )'y', 
4725        (char const   )' ',      (char const   )'S',      (char const   )'o',      (char const   )'n', 
4726        (char const   )'g',      (char const   )' ',      (char const   )'<',      (char const   )'2', 
4727        (char const   )'1',      (char const   )'c',      (char const   )'n',      (char const   )'b', 
4728        (char const   )'a',      (char const   )'o',      (char const   )'@',      (char const   )'g', 
4729        (char const   )'m',      (char const   )'a',      (char const   )'i',      (char const   )'l', 
4730        (char const   )'.',      (char const   )'c',      (char const   )'o',      (char const   )'m', 
4731        (char const   )'>',      (char const   )'\000'};
4732#line 260 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/1849/dscv_tempdir/dscv/ri/32_1/drivers/staging/iio/meter/ade7854-i2c.c.common.c"
4733static char const   __mod_description260[98]  __attribute__((__used__, __unused__,
4734__section__(".modinfo"), __aligned__(1)))  = 
4735#line 260
4736  {      (char const   )'d',      (char const   )'e',      (char const   )'s',      (char const   )'c', 
4737        (char const   )'r',      (char const   )'i',      (char const   )'p',      (char const   )'t', 
4738        (char const   )'i',      (char const   )'o',      (char const   )'n',      (char const   )'=', 
4739        (char const   )'A',      (char const   )'n',      (char const   )'a',      (char const   )'l', 
4740        (char const   )'o',      (char const   )'g',      (char const   )' ',      (char const   )'D', 
4741        (char const   )'e',      (char const   )'v',      (char const   )'i',      (char const   )'c', 
4742        (char const   )'e',      (char const   )'s',      (char const   )' ',      (char const   )'A', 
4743        (char const   )'D',      (char const   )'E',      (char const   )'7',      (char const   )'8', 
4744        (char const   )'5',      (char const   )'4',      (char const   )'/',      (char const   )'5', 
4745        (char const   )'8',      (char const   )'/',      (char const   )'6',      (char const   )'8', 
4746        (char const   )'/',      (char const   )'7',      (char const   )'8',      (char const   )' ', 
4747        (char const   )'P',      (char const   )'o',      (char const   )'l',      (char const   )'y', 
4748        (char const   )'p',      (char const   )'h',      (char const   )'a',      (char const   )'s', 
4749        (char const   )'e',      (char const   )' ',      (char const   )'M',      (char const   )'u', 
4750        (char const   )'l',      (char const   )'t',      (char const   )'i',      (char const   )'f', 
4751        (char const   )'u',      (char const   )'n',      (char const   )'c',      (char const   )'t', 
4752        (char const   )'i',      (char const   )'o',      (char const   )'n',      (char const   )' ', 
4753        (char const   )'E',      (char const   )'n',      (char const   )'e',      (char const   )'r', 
4754        (char const   )'g',      (char const   )'y',      (char const   )' ',      (char const   )'M', 
4755        (char const   )'e',      (char const   )'t',      (char const   )'e',      (char const   )'r', 
4756        (char const   )'i',      (char const   )'n',      (char const   )'g',      (char const   )' ', 
4757        (char const   )'I',      (char const   )'C',      (char const   )' ',      (char const   )'I', 
4758        (char const   )'2',      (char const   )'C',      (char const   )' ',      (char const   )'D', 
4759        (char const   )'r',      (char const   )'i',      (char const   )'v',      (char const   )'e', 
4760        (char const   )'r',      (char const   )'\000'};
4761#line 261 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/1849/dscv_tempdir/dscv/ri/32_1/drivers/staging/iio/meter/ade7854-i2c.c.common.c"
4762static char const   __mod_license261[15]  __attribute__((__used__, __unused__, __section__(".modinfo"),
4763__aligned__(1)))  = 
4764#line 261
4765  {      (char const   )'l',      (char const   )'i',      (char const   )'c',      (char const   )'e', 
4766        (char const   )'n',      (char const   )'s',      (char const   )'e',      (char const   )'=', 
4767        (char const   )'G',      (char const   )'P',      (char const   )'L',      (char const   )' ', 
4768        (char const   )'v',      (char const   )'2',      (char const   )'\000'};
4769#line 279
4770void ldv_check_final_state(void) ;
4771#line 282
4772extern void ldv_check_return_value(int res ) ;
4773#line 285
4774extern void ldv_initialize(void) ;
4775#line 288
4776extern int __VERIFIER_nondet_int(void) ;
4777#line 291 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/1849/dscv_tempdir/dscv/ri/32_1/drivers/staging/iio/meter/ade7854-i2c.c.common.c"
4778int LDV_IN_INTERRUPT  ;
4779#line 308 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/1849/dscv_tempdir/dscv/ri/32_1/drivers/staging/iio/meter/ade7854-i2c.c.common.c"
4780static int res_ade7854_i2c_probe_8  ;
4781#line 294 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/1849/dscv_tempdir/dscv/ri/32_1/drivers/staging/iio/meter/ade7854-i2c.c.common.c"
4782void main(void) 
4783{ struct i2c_client *var_group1 ;
4784  struct i2c_device_id  const  *var_ade7854_i2c_probe_8_p1 ;
4785  int ldv_s_ade7854_i2c_driver_i2c_driver ;
4786  int tmp___7 ;
4787  int tmp___8 ;
4788  int __cil_tmp6 ;
4789
4790  {
4791  {
4792#line 316
4793  LDV_IN_INTERRUPT = 1;
4794#line 325
4795  ldv_initialize();
4796#line 326
4797  ldv_s_ade7854_i2c_driver_i2c_driver = 0;
4798  }
4799  {
4800#line 329
4801  while (1) {
4802    while_continue: /* CIL Label */ ;
4803    {
4804#line 329
4805    tmp___8 = __VERIFIER_nondet_int();
4806    }
4807#line 329
4808    if (tmp___8) {
4809
4810    } else {
4811      {
4812#line 329
4813      __cil_tmp6 = ldv_s_ade7854_i2c_driver_i2c_driver == 0;
4814#line 329
4815      if (! __cil_tmp6) {
4816
4817      } else {
4818#line 329
4819        goto while_break;
4820      }
4821      }
4822    }
4823    {
4824#line 333
4825    tmp___7 = __VERIFIER_nondet_int();
4826    }
4827#line 335
4828    if (tmp___7 == 0) {
4829#line 335
4830      goto case_0;
4831    } else {
4832      {
4833#line 354
4834      goto switch_default;
4835#line 333
4836      if (0) {
4837        case_0: /* CIL Label */ 
4838#line 338
4839        if (ldv_s_ade7854_i2c_driver_i2c_driver == 0) {
4840          {
4841#line 343
4842          res_ade7854_i2c_probe_8 = ade7854_i2c_probe(var_group1, var_ade7854_i2c_probe_8_p1);
4843#line 344
4844          ldv_check_return_value(res_ade7854_i2c_probe_8);
4845          }
4846#line 345
4847          if (res_ade7854_i2c_probe_8) {
4848#line 346
4849            goto ldv_module_exit;
4850          } else {
4851
4852          }
4853#line 347
4854          ldv_s_ade7854_i2c_driver_i2c_driver = 0;
4855        } else {
4856
4857        }
4858#line 353
4859        goto switch_break;
4860        switch_default: /* CIL Label */ 
4861#line 354
4862        goto switch_break;
4863      } else {
4864        switch_break: /* CIL Label */ ;
4865      }
4866      }
4867    }
4868  }
4869  while_break: /* CIL Label */ ;
4870  }
4871  ldv_module_exit: 
4872  {
4873#line 363
4874  ldv_check_final_state();
4875  }
4876#line 366
4877  return;
4878}
4879}
4880#line 5 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/1849/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/engine-blast-assert.h"
4881void ldv_blast_assert(void) 
4882{ 
4883
4884  {
4885  ERROR: 
4886#line 6
4887  goto ERROR;
4888}
4889}
4890#line 6 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/1849/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/engine-blast.h"
4891extern int __VERIFIER_nondet_int(void) ;
4892#line 19 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/1849/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
4893int ldv_mutex  =    1;
4894#line 22 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/1849/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
4895int __attribute__((__warn_unused_result__))  mutex_lock_interruptible(struct mutex *lock ) 
4896{ int nondetermined ;
4897
4898  {
4899#line 29
4900  if (ldv_mutex == 1) {
4901
4902  } else {
4903    {
4904#line 29
4905    ldv_blast_assert();
4906    }
4907  }
4908  {
4909#line 32
4910  nondetermined = __VERIFIER_nondet_int();
4911  }
4912#line 35
4913  if (nondetermined) {
4914#line 38
4915    ldv_mutex = 2;
4916#line 40
4917    return (0);
4918  } else {
4919#line 45
4920    return (-4);
4921  }
4922}
4923}
4924#line 50 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/1849/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
4925int __attribute__((__warn_unused_result__))  mutex_lock_killable(struct mutex *lock ) 
4926{ int nondetermined ;
4927
4928  {
4929#line 57
4930  if (ldv_mutex == 1) {
4931
4932  } else {
4933    {
4934#line 57
4935    ldv_blast_assert();
4936    }
4937  }
4938  {
4939#line 60
4940  nondetermined = __VERIFIER_nondet_int();
4941  }
4942#line 63
4943  if (nondetermined) {
4944#line 66
4945    ldv_mutex = 2;
4946#line 68
4947    return (0);
4948  } else {
4949#line 73
4950    return (-4);
4951  }
4952}
4953}
4954#line 78 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/1849/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
4955int atomic_dec_and_mutex_lock(atomic_t *cnt , struct mutex *lock ) 
4956{ int atomic_value_after_dec ;
4957
4958  {
4959#line 83
4960  if (ldv_mutex == 1) {
4961
4962  } else {
4963    {
4964#line 83
4965    ldv_blast_assert();
4966    }
4967  }
4968  {
4969#line 86
4970  atomic_value_after_dec = __VERIFIER_nondet_int();
4971  }
4972#line 89
4973  if (atomic_value_after_dec == 0) {
4974#line 92
4975    ldv_mutex = 2;
4976#line 94
4977    return (1);
4978  } else {
4979
4980  }
4981#line 98
4982  return (0);
4983}
4984}
4985#line 103 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/1849/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
4986void mutex_lock(struct mutex *lock ) 
4987{ 
4988
4989  {
4990#line 108
4991  if (ldv_mutex == 1) {
4992
4993  } else {
4994    {
4995#line 108
4996    ldv_blast_assert();
4997    }
4998  }
4999#line 110
5000  ldv_mutex = 2;
5001#line 111
5002  return;
5003}
5004}
5005#line 114 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/1849/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
5006int mutex_trylock(struct mutex *lock ) 
5007{ int nondetermined ;
5008
5009  {
5010#line 121
5011  if (ldv_mutex == 1) {
5012
5013  } else {
5014    {
5015#line 121
5016    ldv_blast_assert();
5017    }
5018  }
5019  {
5020#line 124
5021  nondetermined = __VERIFIER_nondet_int();
5022  }
5023#line 127
5024  if (nondetermined) {
5025#line 130
5026    ldv_mutex = 2;
5027#line 132
5028    return (1);
5029  } else {
5030#line 137
5031    return (0);
5032  }
5033}
5034}
5035#line 142 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/1849/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
5036void mutex_unlock(struct mutex *lock ) 
5037{ 
5038
5039  {
5040#line 147
5041  if (ldv_mutex == 2) {
5042
5043  } else {
5044    {
5045#line 147
5046    ldv_blast_assert();
5047    }
5048  }
5049#line 149
5050  ldv_mutex = 1;
5051#line 150
5052  return;
5053}
5054}
5055#line 153 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/1849/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
5056void ldv_check_final_state(void) 
5057{ 
5058
5059  {
5060#line 156
5061  if (ldv_mutex == 1) {
5062
5063  } else {
5064    {
5065#line 156
5066    ldv_blast_assert();
5067    }
5068  }
5069#line 157
5070  return;
5071}
5072}
5073#line 375 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/1849/dscv_tempdir/dscv/ri/32_1/drivers/staging/iio/meter/ade7854-i2c.c.common.c"
5074long s__builtin_expect(long val , long res ) 
5075{ 
5076
5077  {
5078#line 376
5079  return (val);
5080}
5081}