Showing error 887

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