Showing error 480

User: Jiri Slaby
Error type: Reachable Error Location
Error type description: A specified error location is reachable in some program path
File location: ldv-linux-3.4/32_1_cilled_safe_ok_nondet_linux-3.4-32_1-drivers--media--video--zoran--zr36016.ko-ldv_main0_sequence_infinite_withcheck_stateful.cil.out.c
Line in file: 3468
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 26 "include/asm-generic/int-ll64.h"
   9typedef unsigned int __u32;
  10#line 30 "include/asm-generic/int-ll64.h"
  11typedef unsigned long long __u64;
  12#line 43 "include/asm-generic/int-ll64.h"
  13typedef unsigned char u8;
  14#line 45 "include/asm-generic/int-ll64.h"
  15typedef short s16;
  16#line 46 "include/asm-generic/int-ll64.h"
  17typedef unsigned short u16;
  18#line 49 "include/asm-generic/int-ll64.h"
  19typedef unsigned int u32;
  20#line 14 "include/asm-generic/posix_types.h"
  21typedef long __kernel_long_t;
  22#line 15 "include/asm-generic/posix_types.h"
  23typedef unsigned long __kernel_ulong_t;
  24#line 75 "include/asm-generic/posix_types.h"
  25typedef __kernel_ulong_t __kernel_size_t;
  26#line 76 "include/asm-generic/posix_types.h"
  27typedef __kernel_long_t __kernel_ssize_t;
  28#line 27 "include/linux/types.h"
  29typedef unsigned short umode_t;
  30#line 63 "include/linux/types.h"
  31typedef __kernel_size_t size_t;
  32#line 68 "include/linux/types.h"
  33typedef __kernel_ssize_t ssize_t;
  34#line 202 "include/linux/types.h"
  35typedef unsigned int gfp_t;
  36#line 219 "include/linux/types.h"
  37struct __anonstruct_atomic_t_7 {
  38   int counter ;
  39};
  40#line 219 "include/linux/types.h"
  41typedef struct __anonstruct_atomic_t_7 atomic_t;
  42#line 224 "include/linux/types.h"
  43struct __anonstruct_atomic64_t_8 {
  44   long counter ;
  45};
  46#line 224 "include/linux/types.h"
  47typedef struct __anonstruct_atomic64_t_8 atomic64_t;
  48#line 229 "include/linux/types.h"
  49struct list_head {
  50   struct list_head *next ;
  51   struct list_head *prev ;
  52};
  53#line 56 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/alternative.h"
  54struct module;
  55#line 56
  56struct module;
  57#line 146 "include/linux/init.h"
  58typedef void (*ctor_fn_t)(void);
  59#line 18 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/page.h"
  60struct page;
  61#line 18
  62struct page;
  63#line 20 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/thread_info.h"
  64struct task_struct;
  65#line 20
  66struct task_struct;
  67#line 7 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
  68struct task_struct;
  69#line 46 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/paravirt_types.h"
  70struct page;
  71#line 52
  72struct task_struct;
  73#line 329
  74struct arch_spinlock;
  75#line 329
  76struct arch_spinlock;
  77#line 139 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/ptrace.h"
  78struct task_struct;
  79#line 8 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/current.h"
  80struct task_struct;
  81#line 10 "include/asm-generic/bug.h"
  82struct bug_entry {
  83   int bug_addr_disp ;
  84   int file_disp ;
  85   unsigned short line ;
  86   unsigned short flags ;
  87};
  88#line 234 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/paravirt.h"
  89struct static_key;
  90#line 234
  91struct static_key;
  92#line 433 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/processor.h"
  93struct kmem_cache;
  94#line 23 "include/asm-generic/atomic-long.h"
  95typedef atomic64_t atomic_long_t;
  96#line 14 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
  97typedef u16 __ticket_t;
  98#line 15 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
  99typedef u32 __ticketpair_t;
 100#line 20 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
 101struct __raw_tickets {
 102   __ticket_t head ;
 103   __ticket_t tail ;
 104};
 105#line 20 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
 106union __anonunion____missing_field_name_36 {
 107   __ticketpair_t head_tail ;
 108   struct __raw_tickets tickets ;
 109};
 110#line 20 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
 111struct arch_spinlock {
 112   union __anonunion____missing_field_name_36 __annonCompField17 ;
 113};
 114#line 20 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/spinlock_types.h"
 115typedef struct arch_spinlock arch_spinlock_t;
 116#line 12 "include/linux/lockdep.h"
 117struct task_struct;
 118#line 20 "include/linux/spinlock_types.h"
 119struct raw_spinlock {
 120   arch_spinlock_t raw_lock ;
 121   unsigned int magic ;
 122   unsigned int owner_cpu ;
 123   void *owner ;
 124};
 125#line 64 "include/linux/spinlock_types.h"
 126union __anonunion____missing_field_name_39 {
 127   struct raw_spinlock rlock ;
 128};
 129#line 64 "include/linux/spinlock_types.h"
 130struct spinlock {
 131   union __anonunion____missing_field_name_39 __annonCompField19 ;
 132};
 133#line 64 "include/linux/spinlock_types.h"
 134typedef struct spinlock spinlock_t;
 135#line 55 "include/linux/wait.h"
 136struct task_struct;
 137#line 60 "include/linux/pageblock-flags.h"
 138struct page;
 139#line 48 "include/linux/mutex.h"
 140struct mutex {
 141   atomic_t count ;
 142   spinlock_t wait_lock ;
 143   struct list_head wait_list ;
 144   struct task_struct *owner ;
 145   char const   *name ;
 146   void *magic ;
 147};
 148#line 9 "include/linux/memory_hotplug.h"
 149struct page;
 150#line 994 "include/linux/mmzone.h"
 151struct page;
 152#line 270 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/arch/x86/include/asm/elf.h"
 153struct task_struct;
 154#line 18 "include/linux/elf.h"
 155typedef __u64 Elf64_Addr;
 156#line 19 "include/linux/elf.h"
 157typedef __u16 Elf64_Half;
 158#line 23 "include/linux/elf.h"
 159typedef __u32 Elf64_Word;
 160#line 24 "include/linux/elf.h"
 161typedef __u64 Elf64_Xword;
 162#line 194 "include/linux/elf.h"
 163struct elf64_sym {
 164   Elf64_Word st_name ;
 165   unsigned char st_info ;
 166   unsigned char st_other ;
 167   Elf64_Half st_shndx ;
 168   Elf64_Addr st_value ;
 169   Elf64_Xword st_size ;
 170};
 171#line 194 "include/linux/elf.h"
 172typedef struct elf64_sym Elf64_Sym;
 173#line 20 "include/linux/kobject_ns.h"
 174struct sock;
 175#line 20
 176struct sock;
 177#line 21
 178struct kobject;
 179#line 21
 180struct kobject;
 181#line 27
 182enum kobj_ns_type {
 183    KOBJ_NS_TYPE_NONE = 0,
 184    KOBJ_NS_TYPE_NET = 1,
 185    KOBJ_NS_TYPES = 2
 186} ;
 187#line 40 "include/linux/kobject_ns.h"
 188struct kobj_ns_type_operations {
 189   enum kobj_ns_type type ;
 190   void *(*grab_current_ns)(void) ;
 191   void const   *(*netlink_ns)(struct sock *sk ) ;
 192   void const   *(*initial_ns)(void) ;
 193   void (*drop_ns)(void * ) ;
 194};
 195#line 22 "include/linux/sysfs.h"
 196struct kobject;
 197#line 23
 198struct module;
 199#line 24
 200enum kobj_ns_type;
 201#line 26 "include/linux/sysfs.h"
 202struct attribute {
 203   char const   *name ;
 204   umode_t mode ;
 205};
 206#line 112 "include/linux/sysfs.h"
 207struct sysfs_ops {
 208   ssize_t (*show)(struct kobject * , struct attribute * , char * ) ;
 209   ssize_t (*store)(struct kobject * , struct attribute * , char const   * , size_t  ) ;
 210   void const   *(*namespace)(struct kobject * , struct attribute  const  * ) ;
 211};
 212#line 118
 213struct sysfs_dirent;
 214#line 118
 215struct sysfs_dirent;
 216#line 22 "include/linux/kref.h"
 217struct kref {
 218   atomic_t refcount ;
 219};
 220#line 60 "include/linux/kobject.h"
 221struct kset;
 222#line 60
 223struct kobj_type;
 224#line 60 "include/linux/kobject.h"
 225struct kobject {
 226   char const   *name ;
 227   struct list_head entry ;
 228   struct kobject *parent ;
 229   struct kset *kset ;
 230   struct kobj_type *ktype ;
 231   struct sysfs_dirent *sd ;
 232   struct kref kref ;
 233   unsigned int state_initialized : 1 ;
 234   unsigned int state_in_sysfs : 1 ;
 235   unsigned int state_add_uevent_sent : 1 ;
 236   unsigned int state_remove_uevent_sent : 1 ;
 237   unsigned int uevent_suppress : 1 ;
 238};
 239#line 108 "include/linux/kobject.h"
 240struct kobj_type {
 241   void (*release)(struct kobject *kobj ) ;
 242   struct sysfs_ops  const  *sysfs_ops ;
 243   struct attribute **default_attrs ;
 244   struct kobj_ns_type_operations  const  *(*child_ns_type)(struct kobject *kobj ) ;
 245   void const   *(*namespace)(struct kobject *kobj ) ;
 246};
 247#line 116 "include/linux/kobject.h"
 248struct kobj_uevent_env {
 249   char *envp[32] ;
 250   int envp_idx ;
 251   char buf[2048] ;
 252   int buflen ;
 253};
 254#line 123 "include/linux/kobject.h"
 255struct kset_uevent_ops {
 256   int (* const  filter)(struct kset *kset , struct kobject *kobj ) ;
 257   char const   *(* const  name)(struct kset *kset , struct kobject *kobj ) ;
 258   int (* const  uevent)(struct kset *kset , struct kobject *kobj , struct kobj_uevent_env *env ) ;
 259};
 260#line 140
 261struct sock;
 262#line 159 "include/linux/kobject.h"
 263struct kset {
 264   struct list_head list ;
 265   spinlock_t list_lock ;
 266   struct kobject kobj ;
 267   struct kset_uevent_ops  const  *uevent_ops ;
 268};
 269#line 39 "include/linux/moduleparam.h"
 270struct kernel_param;
 271#line 39
 272struct kernel_param;
 273#line 41 "include/linux/moduleparam.h"
 274struct kernel_param_ops {
 275   int (*set)(char const   *val , struct kernel_param  const  *kp ) ;
 276   int (*get)(char *buffer , struct kernel_param  const  *kp ) ;
 277   void (*free)(void *arg ) ;
 278};
 279#line 50
 280struct kparam_string;
 281#line 50
 282struct kparam_array;
 283#line 50 "include/linux/moduleparam.h"
 284union __anonunion____missing_field_name_199 {
 285   void *arg ;
 286   struct kparam_string  const  *str ;
 287   struct kparam_array  const  *arr ;
 288};
 289#line 50 "include/linux/moduleparam.h"
 290struct kernel_param {
 291   char const   *name ;
 292   struct kernel_param_ops  const  *ops ;
 293   u16 perm ;
 294   s16 level ;
 295   union __anonunion____missing_field_name_199 __annonCompField32 ;
 296};
 297#line 63 "include/linux/moduleparam.h"
 298struct kparam_string {
 299   unsigned int maxlen ;
 300   char *string ;
 301};
 302#line 69 "include/linux/moduleparam.h"
 303struct kparam_array {
 304   unsigned int max ;
 305   unsigned int elemsize ;
 306   unsigned int *num ;
 307   struct kernel_param_ops  const  *ops ;
 308   void *elem ;
 309};
 310#line 445
 311struct module;
 312#line 80 "include/linux/jump_label.h"
 313struct module;
 314#line 143 "include/linux/jump_label.h"
 315struct static_key {
 316   atomic_t enabled ;
 317};
 318#line 22 "include/linux/tracepoint.h"
 319struct module;
 320#line 23
 321struct tracepoint;
 322#line 23
 323struct tracepoint;
 324#line 25 "include/linux/tracepoint.h"
 325struct tracepoint_func {
 326   void *func ;
 327   void *data ;
 328};
 329#line 30 "include/linux/tracepoint.h"
 330struct tracepoint {
 331   char const   *name ;
 332   struct static_key key ;
 333   void (*regfunc)(void) ;
 334   void (*unregfunc)(void) ;
 335   struct tracepoint_func *funcs ;
 336};
 337#line 19 "include/linux/export.h"
 338struct kernel_symbol {
 339   unsigned long value ;
 340   char const   *name ;
 341};
 342#line 8 "include/asm-generic/module.h"
 343struct mod_arch_specific {
 344
 345};
 346#line 35 "include/linux/module.h"
 347struct module;
 348#line 37
 349struct module_param_attrs;
 350#line 37 "include/linux/module.h"
 351struct module_kobject {
 352   struct kobject kobj ;
 353   struct module *mod ;
 354   struct kobject *drivers_dir ;
 355   struct module_param_attrs *mp ;
 356};
 357#line 44 "include/linux/module.h"
 358struct module_attribute {
 359   struct attribute attr ;
 360   ssize_t (*show)(struct module_attribute * , struct module_kobject * , char * ) ;
 361   ssize_t (*store)(struct module_attribute * , struct module_kobject * , char const   * ,
 362                    size_t count ) ;
 363   void (*setup)(struct module * , char const   * ) ;
 364   int (*test)(struct module * ) ;
 365   void (*free)(struct module * ) ;
 366};
 367#line 71
 368struct exception_table_entry;
 369#line 71
 370struct exception_table_entry;
 371#line 199
 372enum module_state {
 373    MODULE_STATE_LIVE = 0,
 374    MODULE_STATE_COMING = 1,
 375    MODULE_STATE_GOING = 2
 376} ;
 377#line 215 "include/linux/module.h"
 378struct module_ref {
 379   unsigned long incs ;
 380   unsigned long decs ;
 381} __attribute__((__aligned__((2) *  (sizeof(unsigned long )) ))) ;
 382#line 220
 383struct module_sect_attrs;
 384#line 220
 385struct module_notes_attrs;
 386#line 220
 387struct ftrace_event_call;
 388#line 220 "include/linux/module.h"
 389struct module {
 390   enum module_state state ;
 391   struct list_head list ;
 392   char name[64UL - sizeof(unsigned long )] ;
 393   struct module_kobject mkobj ;
 394   struct module_attribute *modinfo_attrs ;
 395   char const   *version ;
 396   char const   *srcversion ;
 397   struct kobject *holders_dir ;
 398   struct kernel_symbol  const  *syms ;
 399   unsigned long const   *crcs ;
 400   unsigned int num_syms ;
 401   struct kernel_param *kp ;
 402   unsigned int num_kp ;
 403   unsigned int num_gpl_syms ;
 404   struct kernel_symbol  const  *gpl_syms ;
 405   unsigned long const   *gpl_crcs ;
 406   struct kernel_symbol  const  *unused_syms ;
 407   unsigned long const   *unused_crcs ;
 408   unsigned int num_unused_syms ;
 409   unsigned int num_unused_gpl_syms ;
 410   struct kernel_symbol  const  *unused_gpl_syms ;
 411   unsigned long const   *unused_gpl_crcs ;
 412   struct kernel_symbol  const  *gpl_future_syms ;
 413   unsigned long const   *gpl_future_crcs ;
 414   unsigned int num_gpl_future_syms ;
 415   unsigned int num_exentries ;
 416   struct exception_table_entry *extable ;
 417   int (*init)(void) ;
 418   void *module_init ;
 419   void *module_core ;
 420   unsigned int init_size ;
 421   unsigned int core_size ;
 422   unsigned int init_text_size ;
 423   unsigned int core_text_size ;
 424   unsigned int init_ro_size ;
 425   unsigned int core_ro_size ;
 426   struct mod_arch_specific arch ;
 427   unsigned int taints ;
 428   unsigned int num_bugs ;
 429   struct list_head bug_list ;
 430   struct bug_entry *bug_table ;
 431   Elf64_Sym *symtab ;
 432   Elf64_Sym *core_symtab ;
 433   unsigned int num_symtab ;
 434   unsigned int core_num_syms ;
 435   char *strtab ;
 436   char *core_strtab ;
 437   struct module_sect_attrs *sect_attrs ;
 438   struct module_notes_attrs *notes_attrs ;
 439   char *args ;
 440   void *percpu ;
 441   unsigned int percpu_size ;
 442   unsigned int num_tracepoints ;
 443   struct tracepoint * const  *tracepoints_ptrs ;
 444   unsigned int num_trace_bprintk_fmt ;
 445   char const   **trace_bprintk_fmt_start ;
 446   struct ftrace_event_call **trace_events ;
 447   unsigned int num_trace_events ;
 448   struct list_head source_list ;
 449   struct list_head target_list ;
 450   struct task_struct *waiter ;
 451   void (*exit)(void) ;
 452   struct module_ref *refptr ;
 453   ctor_fn_t *ctors ;
 454   unsigned int num_ctors ;
 455};
 456#line 46 "include/linux/slub_def.h"
 457struct kmem_cache_cpu {
 458   void **freelist ;
 459   unsigned long tid ;
 460   struct page *page ;
 461   struct page *partial ;
 462   int node ;
 463   unsigned int stat[26] ;
 464};
 465#line 57 "include/linux/slub_def.h"
 466struct kmem_cache_node {
 467   spinlock_t list_lock ;
 468   unsigned long nr_partial ;
 469   struct list_head partial ;
 470   atomic_long_t nr_slabs ;
 471   atomic_long_t total_objects ;
 472   struct list_head full ;
 473};
 474#line 73 "include/linux/slub_def.h"
 475struct kmem_cache_order_objects {
 476   unsigned long x ;
 477};
 478#line 80 "include/linux/slub_def.h"
 479struct kmem_cache {
 480   struct kmem_cache_cpu *cpu_slab ;
 481   unsigned long flags ;
 482   unsigned long min_partial ;
 483   int size ;
 484   int objsize ;
 485   int offset ;
 486   int cpu_partial ;
 487   struct kmem_cache_order_objects oo ;
 488   struct kmem_cache_order_objects max ;
 489   struct kmem_cache_order_objects min ;
 490   gfp_t allocflags ;
 491   int refcount ;
 492   void (*ctor)(void * ) ;
 493   int inuse ;
 494   int align ;
 495   int reserved ;
 496   char const   *name ;
 497   struct list_head list ;
 498   struct kobject kobj ;
 499   int remote_node_defrag_ratio ;
 500   struct kmem_cache_node *node[1 << 10] ;
 501};
 502#line 31 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/drivers/media/video/zoran/zr36016.h"
 503struct videocodec;
 504#line 31 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/drivers/media/video/zoran/zr36016.h"
 505struct zr36016 {
 506   char name[32] ;
 507   int num ;
 508   struct videocodec *codec ;
 509   __u8 version ;
 510   int mode ;
 511   __u16 xoff ;
 512   __u16 yoff ;
 513   __u16 width ;
 514   __u16 height ;
 515   __u16 xdec ;
 516   __u16 ydec ;
 517};
 518#line 223 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/drivers/media/video/zoran/videocodec.h"
 519struct vfe_polarity {
 520   unsigned int vsync_pol : 1 ;
 521   unsigned int hsync_pol : 1 ;
 522   unsigned int field_pol : 1 ;
 523   unsigned int blank_pol : 1 ;
 524   unsigned int subimg_pol : 1 ;
 525   unsigned int poe_pol : 1 ;
 526   unsigned int pvalid_pol : 1 ;
 527   unsigned int vclk_pol : 1 ;
 528};
 529#line 234 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/drivers/media/video/zoran/videocodec.h"
 530struct vfe_settings {
 531   __u32 x ;
 532   __u32 y ;
 533   __u32 width ;
 534   __u32 height ;
 535   __u16 decimation ;
 536   __u16 flags ;
 537   __u16 quality ;
 538};
 539#line 242 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/drivers/media/video/zoran/videocodec.h"
 540struct tvnorm {
 541   u16 Wt ;
 542   u16 Wa ;
 543   u16 HStart ;
 544   u16 HSyncStart ;
 545   u16 Ht ;
 546   u16 Ha ;
 547   u16 VStart ;
 548};
 549#line 257
 550struct videocodec_master;
 551#line 257 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/drivers/media/video/zoran/videocodec.h"
 552struct videocodec {
 553   struct module *owner ;
 554   char name[32] ;
 555   unsigned long magic ;
 556   unsigned long flags ;
 557   unsigned int type ;
 558   struct videocodec_master *master_data ;
 559   void *data ;
 560   int (*setup)(struct videocodec *codec ) ;
 561   int (*unset)(struct videocodec *codec ) ;
 562   int (*set_mode)(struct videocodec *codec , int mode ) ;
 563   int (*set_video)(struct videocodec *codec , struct tvnorm *norm , struct vfe_settings *cap ,
 564                    struct vfe_polarity *pol ) ;
 565   int (*control)(struct videocodec *codec , int type , int size , void *data ) ;
 566   int (*setup_interrupt)(struct videocodec *codec , long mode ) ;
 567   int (*handle_interrupt)(struct videocodec *codec , int source , long flag ) ;
 568   long (*put_image)(struct videocodec *codec , int tr_type , int block , long *fr_num ,
 569                     long *flag , long size , void *buf ) ;
 570   long (*get_image)(struct videocodec *codec , int tr_type , int block , long *fr_num ,
 571                     long *flag , long size , void *buf ) ;
 572};
 573#line 316 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/drivers/media/video/zoran/videocodec.h"
 574struct videocodec_master {
 575   char name[32] ;
 576   unsigned long magic ;
 577   unsigned long flags ;
 578   unsigned int type ;
 579   void *data ;
 580   __u32 (*readreg)(struct videocodec *codec , __u16 reg ) ;
 581   void (*writereg)(struct videocodec *codec , __u16 reg , __u32 value ) ;
 582};
 583#line 1 "<compiler builtins>"
 584long __builtin_expect(long val , long res ) ;
 585#line 100 "include/linux/printk.h"
 586extern int ( /* format attribute */  printk)(char const   *fmt  , ...) ;
 587#line 322 "include/linux/kernel.h"
 588extern int ( /* format attribute */  snprintf)(char *buf , size_t size , char const   *fmt 
 589                                               , ...) ;
 590#line 152 "include/linux/mutex.h"
 591void mutex_lock(struct mutex *lock ) ;
 592#line 153
 593int __attribute__((__warn_unused_result__))  mutex_lock_interruptible(struct mutex *lock ) ;
 594#line 154
 595int __attribute__((__warn_unused_result__))  mutex_lock_killable(struct mutex *lock ) ;
 596#line 168
 597int mutex_trylock(struct mutex *lock ) ;
 598#line 169
 599void mutex_unlock(struct mutex *lock ) ;
 600#line 170
 601int atomic_dec_and_mutex_lock(atomic_t *cnt , struct mutex *lock ) ;
 602#line 356 "include/linux/moduleparam.h"
 603extern struct kernel_param_ops param_ops_int ;
 604#line 26 "include/linux/export.h"
 605extern struct module __this_module ;
 606#line 67 "include/linux/module.h"
 607int init_module(void) ;
 608#line 68
 609void cleanup_module(void) ;
 610#line 161 "include/linux/slab.h"
 611extern void kfree(void const   * ) ;
 612#line 221 "include/linux/slub_def.h"
 613extern void *__kmalloc(size_t size , gfp_t flags ) ;
 614#line 268
 615__inline static void *( __attribute__((__always_inline__)) kmalloc)(size_t size ,
 616                                                                    gfp_t flags )  __attribute__((__no_instrument_function__)) ;
 617#line 268 "include/linux/slub_def.h"
 618__inline static void *( __attribute__((__always_inline__)) kmalloc)(size_t size ,
 619                                                                    gfp_t flags ) 
 620{ void *tmp___2 ;
 621
 622  {
 623  {
 624#line 283
 625  tmp___2 = __kmalloc(size, flags);
 626  }
 627#line 283
 628  return (tmp___2);
 629}
 630}
 631#line 349 "include/linux/slab.h"
 632__inline static void *kzalloc(size_t size , gfp_t flags )  __attribute__((__no_instrument_function__)) ;
 633#line 349 "include/linux/slab.h"
 634__inline static void *kzalloc(size_t size , gfp_t flags ) 
 635{ void *tmp ;
 636  unsigned int __cil_tmp4 ;
 637
 638  {
 639  {
 640#line 351
 641  __cil_tmp4 = flags | 32768U;
 642#line 351
 643  tmp = kmalloc(size, __cil_tmp4);
 644  }
 645#line 351
 646  return (tmp);
 647}
 648}
 649#line 347 "/home/zakharov/launch/inst/current/envs/linux-3.4/linux-3.4/drivers/media/video/zoran/videocodec.h"
 650extern int videocodec_register(struct videocodec  const  * ) ;
 651#line 349
 652extern int videocodec_unregister(struct videocodec  const  * ) ;
 653#line 54 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/14424/dscv_tempdir/dscv/ri/32_1/drivers/media/video/zoran/zr36016.c.common.c"
 654static int zr36016_codecs  ;
 655#line 57 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/14424/dscv_tempdir/dscv/ri/32_1/drivers/media/video/zoran/zr36016.c.common.c"
 656static int debug  ;
 657#line 58 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/14424/dscv_tempdir/dscv/ri/32_1/drivers/media/video/zoran/zr36016.c.common.c"
 658static char const   __param_str_debug[6]  = {      (char const   )'d',      (char const   )'e',      (char const   )'b',      (char const   )'u', 
 659        (char const   )'g',      (char const   )'\000'};
 660#line 58 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/14424/dscv_tempdir/dscv/ri/32_1/drivers/media/video/zoran/zr36016.c.common.c"
 661static struct kernel_param  const  __param_debug  __attribute__((__used__, __unused__,
 662__section__("__param"), __aligned__(sizeof(void *))))  =    {__param_str_debug, (struct kernel_param_ops  const  *)(& param_ops_int), (u16 )0,
 663    (s16 )0, {(void *)(& debug)}};
 664#line 58 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/14424/dscv_tempdir/dscv/ri/32_1/drivers/media/video/zoran/zr36016.c.common.c"
 665static char const   __mod_debugtype58[19]  __attribute__((__used__, __unused__, __section__(".modinfo"),
 666__aligned__(1)))  = 
 667#line 58
 668  {      (char const   )'p',      (char const   )'a',      (char const   )'r',      (char const   )'m', 
 669        (char const   )'t',      (char const   )'y',      (char const   )'p',      (char const   )'e', 
 670        (char const   )'=',      (char const   )'d',      (char const   )'e',      (char const   )'b', 
 671        (char const   )'u',      (char const   )'g',      (char const   )':',      (char const   )'i', 
 672        (char const   )'n',      (char const   )'t',      (char const   )'\000'};
 673#line 59 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/14424/dscv_tempdir/dscv/ri/32_1/drivers/media/video/zoran/zr36016.c.common.c"
 674static char const   __mod_debug59[29]  __attribute__((__used__, __unused__, __section__(".modinfo"),
 675__aligned__(1)))  = 
 676#line 59
 677  {      (char const   )'p',      (char const   )'a',      (char const   )'r',      (char const   )'m', 
 678        (char const   )'=',      (char const   )'d',      (char const   )'e',      (char const   )'b', 
 679        (char const   )'u',      (char const   )'g',      (char const   )':',      (char const   )'D', 
 680        (char const   )'e',      (char const   )'b',      (char const   )'u',      (char const   )'g', 
 681        (char const   )' ',      (char const   )'l',      (char const   )'e',      (char const   )'v', 
 682        (char const   )'e',      (char const   )'l',      (char const   )' ',      (char const   )'(', 
 683        (char const   )'0',      (char const   )'-',      (char const   )'4',      (char const   )')', 
 684        (char const   )'\000'};
 685#line 74 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/14424/dscv_tempdir/dscv/ri/32_1/drivers/media/video/zoran/zr36016.c.common.c"
 686static u8 zr36016_read(struct zr36016 *ptr , u16 reg ) 
 687{ u8 value ;
 688  __u32 tmp ;
 689  unsigned long __cil_tmp5 ;
 690  unsigned long __cil_tmp6 ;
 691  struct videocodec *__cil_tmp7 ;
 692  unsigned long __cil_tmp8 ;
 693  unsigned long __cil_tmp9 ;
 694  struct videocodec_master *__cil_tmp10 ;
 695  unsigned long __cil_tmp11 ;
 696  unsigned long __cil_tmp12 ;
 697  unsigned long __cil_tmp13 ;
 698  unsigned long __cil_tmp14 ;
 699  struct videocodec *__cil_tmp15 ;
 700  unsigned long __cil_tmp16 ;
 701  unsigned long __cil_tmp17 ;
 702  struct videocodec_master *__cil_tmp18 ;
 703  unsigned long __cil_tmp19 ;
 704  unsigned long __cil_tmp20 ;
 705  __u32 (*__cil_tmp21)(struct videocodec *codec , __u16 reg ) ;
 706  unsigned long __cil_tmp22 ;
 707  unsigned long __cil_tmp23 ;
 708  struct videocodec *__cil_tmp24 ;
 709  unsigned int __cil_tmp25 ;
 710  int *__cil_tmp26 ;
 711  int __cil_tmp27 ;
 712  unsigned long __cil_tmp28 ;
 713  unsigned long __cil_tmp29 ;
 714  unsigned long __cil_tmp30 ;
 715  unsigned long __cil_tmp31 ;
 716  char *__cil_tmp32 ;
 717  int *__cil_tmp33 ;
 718  int __cil_tmp34 ;
 719  unsigned long __cil_tmp35 ;
 720  unsigned long __cil_tmp36 ;
 721  unsigned long __cil_tmp37 ;
 722  unsigned long __cil_tmp38 ;
 723  char *__cil_tmp39 ;
 724  int __cil_tmp40 ;
 725  int __cil_tmp41 ;
 726
 727  {
 728#line 78
 729  value = (u8 )0;
 730  {
 731#line 81
 732  __cil_tmp5 = (unsigned long )ptr;
 733#line 81
 734  __cil_tmp6 = __cil_tmp5 + 40;
 735#line 81
 736  __cil_tmp7 = *((struct videocodec **)__cil_tmp6);
 737#line 81
 738  __cil_tmp8 = (unsigned long )__cil_tmp7;
 739#line 81
 740  __cil_tmp9 = __cil_tmp8 + 64;
 741#line 81
 742  __cil_tmp10 = *((struct videocodec_master **)__cil_tmp9);
 743#line 81
 744  __cil_tmp11 = (unsigned long )__cil_tmp10;
 745#line 81
 746  __cil_tmp12 = __cil_tmp11 + 64;
 747#line 81
 748  if (*((__u32 (**)(struct videocodec *codec , __u16 reg ))__cil_tmp12)) {
 749    {
 750#line 82
 751    __cil_tmp13 = (unsigned long )ptr;
 752#line 82
 753    __cil_tmp14 = __cil_tmp13 + 40;
 754#line 82
 755    __cil_tmp15 = *((struct videocodec **)__cil_tmp14);
 756#line 82
 757    __cil_tmp16 = (unsigned long )__cil_tmp15;
 758#line 82
 759    __cil_tmp17 = __cil_tmp16 + 64;
 760#line 82
 761    __cil_tmp18 = *((struct videocodec_master **)__cil_tmp17);
 762#line 82
 763    __cil_tmp19 = (unsigned long )__cil_tmp18;
 764#line 82
 765    __cil_tmp20 = __cil_tmp19 + 64;
 766#line 82
 767    __cil_tmp21 = *((__u32 (**)(struct videocodec *codec , __u16 reg ))__cil_tmp20);
 768#line 82
 769    __cil_tmp22 = (unsigned long )ptr;
 770#line 82
 771    __cil_tmp23 = __cil_tmp22 + 40;
 772#line 82
 773    __cil_tmp24 = *((struct videocodec **)__cil_tmp23);
 774#line 82
 775    tmp = (*__cil_tmp21)(__cil_tmp24, reg);
 776#line 82
 777    __cil_tmp25 = tmp & 255U;
 778#line 82
 779    value = (u8 )__cil_tmp25;
 780    }
 781  } else {
 782    {
 783#line 86
 784    while (1) {
 785      while_continue: /* CIL Label */ ;
 786      {
 787#line 86
 788      __cil_tmp26 = & debug;
 789#line 86
 790      __cil_tmp27 = *__cil_tmp26;
 791#line 86
 792      if (__cil_tmp27 >= 1) {
 793        {
 794#line 86
 795        __cil_tmp28 = 0 * 1UL;
 796#line 86
 797        __cil_tmp29 = 0 + __cil_tmp28;
 798#line 86
 799        __cil_tmp30 = (unsigned long )ptr;
 800#line 86
 801        __cil_tmp31 = __cil_tmp30 + __cil_tmp29;
 802#line 86
 803        __cil_tmp32 = (char *)__cil_tmp31;
 804#line 86
 805        printk("<3>%s: invalid I/O setup, nothing read!\n", __cil_tmp32);
 806        }
 807      } else {
 808
 809      }
 810      }
 811#line 86
 812      goto while_break;
 813    }
 814    while_break: /* CIL Label */ ;
 815    }
 816  }
 817  }
 818  {
 819#line 90
 820  while (1) {
 821    while_continue___0: /* CIL Label */ ;
 822    {
 823#line 90
 824    __cil_tmp33 = & debug;
 825#line 90
 826    __cil_tmp34 = *__cil_tmp33;
 827#line 90
 828    if (__cil_tmp34 >= 4) {
 829      {
 830#line 90
 831      __cil_tmp35 = 0 * 1UL;
 832#line 90
 833      __cil_tmp36 = 0 + __cil_tmp35;
 834#line 90
 835      __cil_tmp37 = (unsigned long )ptr;
 836#line 90
 837      __cil_tmp38 = __cil_tmp37 + __cil_tmp36;
 838#line 90
 839      __cil_tmp39 = (char *)__cil_tmp38;
 840#line 90
 841      __cil_tmp40 = (int )reg;
 842#line 90
 843      __cil_tmp41 = (int )value;
 844#line 90
 845      printk("%s: reading from 0x%04x: %02x\n", __cil_tmp39, __cil_tmp40, __cil_tmp41);
 846      }
 847    } else {
 848
 849    }
 850    }
 851#line 90
 852    goto while_break___0;
 853  }
 854  while_break___0: /* CIL Label */ ;
 855  }
 856#line 93
 857  return (value);
 858}
 859}
 860#line 96 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/14424/dscv_tempdir/dscv/ri/32_1/drivers/media/video/zoran/zr36016.c.common.c"
 861static void zr36016_write(struct zr36016 *ptr , u16 reg , u8 value ) 
 862{ int *__cil_tmp4 ;
 863  int __cil_tmp5 ;
 864  unsigned long __cil_tmp6 ;
 865  unsigned long __cil_tmp7 ;
 866  unsigned long __cil_tmp8 ;
 867  unsigned long __cil_tmp9 ;
 868  char *__cil_tmp10 ;
 869  int __cil_tmp11 ;
 870  int __cil_tmp12 ;
 871  unsigned long __cil_tmp13 ;
 872  unsigned long __cil_tmp14 ;
 873  struct videocodec *__cil_tmp15 ;
 874  unsigned long __cil_tmp16 ;
 875  unsigned long __cil_tmp17 ;
 876  struct videocodec_master *__cil_tmp18 ;
 877  unsigned long __cil_tmp19 ;
 878  unsigned long __cil_tmp20 ;
 879  unsigned long __cil_tmp21 ;
 880  unsigned long __cil_tmp22 ;
 881  struct videocodec *__cil_tmp23 ;
 882  unsigned long __cil_tmp24 ;
 883  unsigned long __cil_tmp25 ;
 884  struct videocodec_master *__cil_tmp26 ;
 885  unsigned long __cil_tmp27 ;
 886  unsigned long __cil_tmp28 ;
 887  void (*__cil_tmp29)(struct videocodec *codec , __u16 reg , __u32 value ) ;
 888  unsigned long __cil_tmp30 ;
 889  unsigned long __cil_tmp31 ;
 890  struct videocodec *__cil_tmp32 ;
 891  __u32 __cil_tmp33 ;
 892  int *__cil_tmp34 ;
 893  int __cil_tmp35 ;
 894  unsigned long __cil_tmp36 ;
 895  unsigned long __cil_tmp37 ;
 896  unsigned long __cil_tmp38 ;
 897  unsigned long __cil_tmp39 ;
 898  char *__cil_tmp40 ;
 899
 900  {
 901  {
 902#line 101
 903  while (1) {
 904    while_continue: /* CIL Label */ ;
 905    {
 906#line 101
 907    __cil_tmp4 = & debug;
 908#line 101
 909    __cil_tmp5 = *__cil_tmp4;
 910#line 101
 911    if (__cil_tmp5 >= 4) {
 912      {
 913#line 101
 914      __cil_tmp6 = 0 * 1UL;
 915#line 101
 916      __cil_tmp7 = 0 + __cil_tmp6;
 917#line 101
 918      __cil_tmp8 = (unsigned long )ptr;
 919#line 101
 920      __cil_tmp9 = __cil_tmp8 + __cil_tmp7;
 921#line 101
 922      __cil_tmp10 = (char *)__cil_tmp9;
 923#line 101
 924      __cil_tmp11 = (int )value;
 925#line 101
 926      __cil_tmp12 = (int )reg;
 927#line 101
 928      printk("%s: writing 0x%02x to 0x%04x\n", __cil_tmp10, __cil_tmp11, __cil_tmp12);
 929      }
 930    } else {
 931
 932    }
 933    }
 934#line 101
 935    goto while_break;
 936  }
 937  while_break: /* CIL Label */ ;
 938  }
 939  {
 940#line 105
 941  __cil_tmp13 = (unsigned long )ptr;
 942#line 105
 943  __cil_tmp14 = __cil_tmp13 + 40;
 944#line 105
 945  __cil_tmp15 = *((struct videocodec **)__cil_tmp14);
 946#line 105
 947  __cil_tmp16 = (unsigned long )__cil_tmp15;
 948#line 105
 949  __cil_tmp17 = __cil_tmp16 + 64;
 950#line 105
 951  __cil_tmp18 = *((struct videocodec_master **)__cil_tmp17);
 952#line 105
 953  __cil_tmp19 = (unsigned long )__cil_tmp18;
 954#line 105
 955  __cil_tmp20 = __cil_tmp19 + 72;
 956#line 105
 957  if (*((void (**)(struct videocodec *codec , __u16 reg , __u32 value ))__cil_tmp20)) {
 958    {
 959#line 106
 960    __cil_tmp21 = (unsigned long )ptr;
 961#line 106
 962    __cil_tmp22 = __cil_tmp21 + 40;
 963#line 106
 964    __cil_tmp23 = *((struct videocodec **)__cil_tmp22);
 965#line 106
 966    __cil_tmp24 = (unsigned long )__cil_tmp23;
 967#line 106
 968    __cil_tmp25 = __cil_tmp24 + 64;
 969#line 106
 970    __cil_tmp26 = *((struct videocodec_master **)__cil_tmp25);
 971#line 106
 972    __cil_tmp27 = (unsigned long )__cil_tmp26;
 973#line 106
 974    __cil_tmp28 = __cil_tmp27 + 72;
 975#line 106
 976    __cil_tmp29 = *((void (**)(struct videocodec *codec , __u16 reg , __u32 value ))__cil_tmp28);
 977#line 106
 978    __cil_tmp30 = (unsigned long )ptr;
 979#line 106
 980    __cil_tmp31 = __cil_tmp30 + 40;
 981#line 106
 982    __cil_tmp32 = *((struct videocodec **)__cil_tmp31);
 983#line 106
 984    __cil_tmp33 = (__u32 )value;
 985#line 106
 986    (*__cil_tmp29)(__cil_tmp32, reg, __cil_tmp33);
 987    }
 988  } else {
 989    {
 990#line 108
 991    while (1) {
 992      while_continue___0: /* CIL Label */ ;
 993      {
 994#line 108
 995      __cil_tmp34 = & debug;
 996#line 108
 997      __cil_tmp35 = *__cil_tmp34;
 998#line 108
 999      if (__cil_tmp35 >= 1) {
1000        {
1001#line 108
1002        __cil_tmp36 = 0 * 1UL;
1003#line 108
1004        __cil_tmp37 = 0 + __cil_tmp36;
1005#line 108
1006        __cil_tmp38 = (unsigned long )ptr;
1007#line 108
1008        __cil_tmp39 = __cil_tmp38 + __cil_tmp37;
1009#line 108
1010        __cil_tmp40 = (char *)__cil_tmp39;
1011#line 108
1012        printk("<3>%s: invalid I/O setup, nothing written!\n", __cil_tmp40);
1013        }
1014      } else {
1015
1016      }
1017      }
1018#line 108
1019      goto while_break___0;
1020    }
1021    while_break___0: /* CIL Label */ ;
1022    }
1023  }
1024  }
1025#line 112
1026  return;
1027}
1028}
1029#line 117 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/14424/dscv_tempdir/dscv/ri/32_1/drivers/media/video/zoran/zr36016.c.common.c"
1030static u8 zr36016_readi(struct zr36016 *ptr , u16 reg ) 
1031{ u8 value ;
1032  __u32 tmp ;
1033  unsigned long __cil_tmp5 ;
1034  unsigned long __cil_tmp6 ;
1035  struct videocodec *__cil_tmp7 ;
1036  unsigned long __cil_tmp8 ;
1037  unsigned long __cil_tmp9 ;
1038  struct videocodec_master *__cil_tmp10 ;
1039  unsigned long __cil_tmp11 ;
1040  unsigned long __cil_tmp12 ;
1041  unsigned long __cil_tmp13 ;
1042  unsigned long __cil_tmp14 ;
1043  struct videocodec *__cil_tmp15 ;
1044  unsigned long __cil_tmp16 ;
1045  unsigned long __cil_tmp17 ;
1046  struct videocodec_master *__cil_tmp18 ;
1047  unsigned long __cil_tmp19 ;
1048  unsigned long __cil_tmp20 ;
1049  unsigned long __cil_tmp21 ;
1050  unsigned long __cil_tmp22 ;
1051  struct videocodec *__cil_tmp23 ;
1052  unsigned long __cil_tmp24 ;
1053  unsigned long __cil_tmp25 ;
1054  struct videocodec_master *__cil_tmp26 ;
1055  unsigned long __cil_tmp27 ;
1056  unsigned long __cil_tmp28 ;
1057  void (*__cil_tmp29)(struct videocodec *codec , __u16 reg , __u32 value ) ;
1058  unsigned long __cil_tmp30 ;
1059  unsigned long __cil_tmp31 ;
1060  struct videocodec *__cil_tmp32 ;
1061  __u16 __cil_tmp33 ;
1062  int __cil_tmp34 ;
1063  int __cil_tmp35 ;
1064  __u32 __cil_tmp36 ;
1065  unsigned long __cil_tmp37 ;
1066  unsigned long __cil_tmp38 ;
1067  struct videocodec *__cil_tmp39 ;
1068  unsigned long __cil_tmp40 ;
1069  unsigned long __cil_tmp41 ;
1070  struct videocodec_master *__cil_tmp42 ;
1071  unsigned long __cil_tmp43 ;
1072  unsigned long __cil_tmp44 ;
1073  __u32 (*__cil_tmp45)(struct videocodec *codec , __u16 reg ) ;
1074  unsigned long __cil_tmp46 ;
1075  unsigned long __cil_tmp47 ;
1076  struct videocodec *__cil_tmp48 ;
1077  __u16 __cil_tmp49 ;
1078  unsigned int __cil_tmp50 ;
1079  int *__cil_tmp51 ;
1080  int __cil_tmp52 ;
1081  unsigned long __cil_tmp53 ;
1082  unsigned long __cil_tmp54 ;
1083  unsigned long __cil_tmp55 ;
1084  unsigned long __cil_tmp56 ;
1085  char *__cil_tmp57 ;
1086  int *__cil_tmp58 ;
1087  int __cil_tmp59 ;
1088  unsigned long __cil_tmp60 ;
1089  unsigned long __cil_tmp61 ;
1090  unsigned long __cil_tmp62 ;
1091  unsigned long __cil_tmp63 ;
1092  char *__cil_tmp64 ;
1093  int __cil_tmp65 ;
1094  int __cil_tmp66 ;
1095
1096  {
1097#line 121
1098  value = (u8 )0;
1099  {
1100#line 124
1101  __cil_tmp5 = (unsigned long )ptr;
1102#line 124
1103  __cil_tmp6 = __cil_tmp5 + 40;
1104#line 124
1105  __cil_tmp7 = *((struct videocodec **)__cil_tmp6);
1106#line 124
1107  __cil_tmp8 = (unsigned long )__cil_tmp7;
1108#line 124
1109  __cil_tmp9 = __cil_tmp8 + 64;
1110#line 124
1111  __cil_tmp10 = *((struct videocodec_master **)__cil_tmp9);
1112#line 124
1113  __cil_tmp11 = (unsigned long )__cil_tmp10;
1114#line 124
1115  __cil_tmp12 = __cil_tmp11 + 72;
1116#line 124
1117  if (*((void (**)(struct videocodec *codec , __u16 reg , __u32 value ))__cil_tmp12)) {
1118    {
1119#line 124
1120    __cil_tmp13 = (unsigned long )ptr;
1121#line 124
1122    __cil_tmp14 = __cil_tmp13 + 40;
1123#line 124
1124    __cil_tmp15 = *((struct videocodec **)__cil_tmp14);
1125#line 124
1126    __cil_tmp16 = (unsigned long )__cil_tmp15;
1127#line 124
1128    __cil_tmp17 = __cil_tmp16 + 64;
1129#line 124
1130    __cil_tmp18 = *((struct videocodec_master **)__cil_tmp17);
1131#line 124
1132    __cil_tmp19 = (unsigned long )__cil_tmp18;
1133#line 124
1134    __cil_tmp20 = __cil_tmp19 + 64;
1135#line 124
1136    if (*((__u32 (**)(struct videocodec *codec , __u16 reg ))__cil_tmp20)) {
1137      {
1138#line 126
1139      __cil_tmp21 = (unsigned long )ptr;
1140#line 126
1141      __cil_tmp22 = __cil_tmp21 + 40;
1142#line 126
1143      __cil_tmp23 = *((struct videocodec **)__cil_tmp22);
1144#line 126
1145      __cil_tmp24 = (unsigned long )__cil_tmp23;
1146#line 126
1147      __cil_tmp25 = __cil_tmp24 + 64;
1148#line 126
1149      __cil_tmp26 = *((struct videocodec_master **)__cil_tmp25);
1150#line 126
1151      __cil_tmp27 = (unsigned long )__cil_tmp26;
1152#line 126
1153      __cil_tmp28 = __cil_tmp27 + 72;
1154#line 126
1155      __cil_tmp29 = *((void (**)(struct videocodec *codec , __u16 reg , __u32 value ))__cil_tmp28);
1156#line 126
1157      __cil_tmp30 = (unsigned long )ptr;
1158#line 126
1159      __cil_tmp31 = __cil_tmp30 + 40;
1160#line 126
1161      __cil_tmp32 = *((struct videocodec **)__cil_tmp31);
1162#line 126
1163      __cil_tmp33 = (__u16 )2;
1164#line 126
1165      __cil_tmp34 = (int )reg;
1166#line 126
1167      __cil_tmp35 = __cil_tmp34 & 15;
1168#line 126
1169      __cil_tmp36 = (__u32 )__cil_tmp35;
1170#line 126
1171      (*__cil_tmp29)(__cil_tmp32, __cil_tmp33, __cil_tmp36);
1172#line 127
1173      __cil_tmp37 = (unsigned long )ptr;
1174#line 127
1175      __cil_tmp38 = __cil_tmp37 + 40;
1176#line 127
1177      __cil_tmp39 = *((struct videocodec **)__cil_tmp38);
1178#line 127
1179      __cil_tmp40 = (unsigned long )__cil_tmp39;
1180#line 127
1181      __cil_tmp41 = __cil_tmp40 + 64;
1182#line 127
1183      __cil_tmp42 = *((struct videocodec_master **)__cil_tmp41);
1184#line 127
1185      __cil_tmp43 = (unsigned long )__cil_tmp42;
1186#line 127
1187      __cil_tmp44 = __cil_tmp43 + 64;
1188#line 127
1189      __cil_tmp45 = *((__u32 (**)(struct videocodec *codec , __u16 reg ))__cil_tmp44);
1190#line 127
1191      __cil_tmp46 = (unsigned long )ptr;
1192#line 127
1193      __cil_tmp47 = __cil_tmp46 + 40;
1194#line 127
1195      __cil_tmp48 = *((struct videocodec **)__cil_tmp47);
1196#line 127
1197      __cil_tmp49 = (__u16 )3;
1198#line 127
1199      tmp = (*__cil_tmp45)(__cil_tmp48, __cil_tmp49);
1200#line 127
1201      __cil_tmp50 = tmp & 255U;
1202#line 127
1203      value = (u8 )__cil_tmp50;
1204      }
1205    } else {
1206#line 124
1207      goto _L;
1208    }
1209    }
1210  } else {
1211    _L: /* CIL Label */ 
1212    {
1213#line 129
1214    while (1) {
1215      while_continue: /* CIL Label */ ;
1216      {
1217#line 129
1218      __cil_tmp51 = & debug;
1219#line 129
1220      __cil_tmp52 = *__cil_tmp51;
1221#line 129
1222      if (__cil_tmp52 >= 1) {
1223        {
1224#line 129
1225        __cil_tmp53 = 0 * 1UL;
1226#line 129
1227        __cil_tmp54 = 0 + __cil_tmp53;
1228#line 129
1229        __cil_tmp55 = (unsigned long )ptr;
1230#line 129
1231        __cil_tmp56 = __cil_tmp55 + __cil_tmp54;
1232#line 129
1233        __cil_tmp57 = (char *)__cil_tmp56;
1234#line 129
1235        printk("<3>%s: invalid I/O setup, nothing read (i)!\n", __cil_tmp57);
1236        }
1237      } else {
1238
1239      }
1240      }
1241#line 129
1242      goto while_break;
1243    }
1244    while_break: /* CIL Label */ ;
1245    }
1246  }
1247  }
1248  {
1249#line 134
1250  while (1) {
1251    while_continue___0: /* CIL Label */ ;
1252    {
1253#line 134
1254    __cil_tmp58 = & debug;
1255#line 134
1256    __cil_tmp59 = *__cil_tmp58;
1257#line 134
1258    if (__cil_tmp59 >= 4) {
1259      {
1260#line 134
1261      __cil_tmp60 = 0 * 1UL;
1262#line 134
1263      __cil_tmp61 = 0 + __cil_tmp60;
1264#line 134
1265      __cil_tmp62 = (unsigned long )ptr;
1266#line 134
1267      __cil_tmp63 = __cil_tmp62 + __cil_tmp61;
1268#line 134
1269      __cil_tmp64 = (char *)__cil_tmp63;
1270#line 134
1271      __cil_tmp65 = (int )reg;
1272#line 134
1273      __cil_tmp66 = (int )value;
1274#line 134
1275      printk("%s: reading indirect from 0x%04x: %02x\n", __cil_tmp64, __cil_tmp65,
1276             __cil_tmp66);
1277      }
1278    } else {
1279
1280    }
1281    }
1282#line 134
1283    goto while_break___0;
1284  }
1285  while_break___0: /* CIL Label */ ;
1286  }
1287#line 136
1288  return (value);
1289}
1290}
1291#line 139 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/14424/dscv_tempdir/dscv/ri/32_1/drivers/media/video/zoran/zr36016.c.common.c"
1292static void zr36016_writei(struct zr36016 *ptr , u16 reg , u8 value ) 
1293{ int *__cil_tmp4 ;
1294  int __cil_tmp5 ;
1295  unsigned long __cil_tmp6 ;
1296  unsigned long __cil_tmp7 ;
1297  unsigned long __cil_tmp8 ;
1298  unsigned long __cil_tmp9 ;
1299  char *__cil_tmp10 ;
1300  int __cil_tmp11 ;
1301  int __cil_tmp12 ;
1302  unsigned long __cil_tmp13 ;
1303  unsigned long __cil_tmp14 ;
1304  struct videocodec *__cil_tmp15 ;
1305  unsigned long __cil_tmp16 ;
1306  unsigned long __cil_tmp17 ;
1307  struct videocodec_master *__cil_tmp18 ;
1308  unsigned long __cil_tmp19 ;
1309  unsigned long __cil_tmp20 ;
1310  unsigned long __cil_tmp21 ;
1311  unsigned long __cil_tmp22 ;
1312  struct videocodec *__cil_tmp23 ;
1313  unsigned long __cil_tmp24 ;
1314  unsigned long __cil_tmp25 ;
1315  struct videocodec_master *__cil_tmp26 ;
1316  unsigned long __cil_tmp27 ;
1317  unsigned long __cil_tmp28 ;
1318  void (*__cil_tmp29)(struct videocodec *codec , __u16 reg , __u32 value ) ;
1319  unsigned long __cil_tmp30 ;
1320  unsigned long __cil_tmp31 ;
1321  struct videocodec *__cil_tmp32 ;
1322  __u16 __cil_tmp33 ;
1323  int __cil_tmp34 ;
1324  int __cil_tmp35 ;
1325  __u32 __cil_tmp36 ;
1326  unsigned long __cil_tmp37 ;
1327  unsigned long __cil_tmp38 ;
1328  struct videocodec *__cil_tmp39 ;
1329  unsigned long __cil_tmp40 ;
1330  unsigned long __cil_tmp41 ;
1331  struct videocodec_master *__cil_tmp42 ;
1332  unsigned long __cil_tmp43 ;
1333  unsigned long __cil_tmp44 ;
1334  void (*__cil_tmp45)(struct videocodec *codec , __u16 reg , __u32 value ) ;
1335  unsigned long __cil_tmp46 ;
1336  unsigned long __cil_tmp47 ;
1337  struct videocodec *__cil_tmp48 ;
1338  __u16 __cil_tmp49 ;
1339  int __cil_tmp50 ;
1340  int __cil_tmp51 ;
1341  __u32 __cil_tmp52 ;
1342  int *__cil_tmp53 ;
1343  int __cil_tmp54 ;
1344  unsigned long __cil_tmp55 ;
1345  unsigned long __cil_tmp56 ;
1346  unsigned long __cil_tmp57 ;
1347  unsigned long __cil_tmp58 ;
1348  char *__cil_tmp59 ;
1349
1350  {
1351  {
1352#line 144
1353  while (1) {
1354    while_continue: /* CIL Label */ ;
1355    {
1356#line 144
1357    __cil_tmp4 = & debug;
1358#line 144
1359    __cil_tmp5 = *__cil_tmp4;
1360#line 144
1361    if (__cil_tmp5 >= 4) {
1362      {
1363#line 144
1364      __cil_tmp6 = 0 * 1UL;
1365#line 144
1366      __cil_tmp7 = 0 + __cil_tmp6;
1367#line 144
1368      __cil_tmp8 = (unsigned long )ptr;
1369#line 144
1370      __cil_tmp9 = __cil_tmp8 + __cil_tmp7;
1371#line 144
1372      __cil_tmp10 = (char *)__cil_tmp9;
1373#line 144
1374      __cil_tmp11 = (int )value;
1375#line 144
1376      __cil_tmp12 = (int )reg;
1377#line 144
1378      printk("%s: writing indirect 0x%02x to 0x%04x\n", __cil_tmp10, __cil_tmp11,
1379             __cil_tmp12);
1380      }
1381    } else {
1382
1383    }
1384    }
1385#line 144
1386    goto while_break;
1387  }
1388  while_break: /* CIL Label */ ;
1389  }
1390  {
1391#line 148
1392  __cil_tmp13 = (unsigned long )ptr;
1393#line 148
1394  __cil_tmp14 = __cil_tmp13 + 40;
1395#line 148
1396  __cil_tmp15 = *((struct videocodec **)__cil_tmp14);
1397#line 148
1398  __cil_tmp16 = (unsigned long )__cil_tmp15;
1399#line 148
1400  __cil_tmp17 = __cil_tmp16 + 64;
1401#line 148
1402  __cil_tmp18 = *((struct videocodec_master **)__cil_tmp17);
1403#line 148
1404  __cil_tmp19 = (unsigned long )__cil_tmp18;
1405#line 148
1406  __cil_tmp20 = __cil_tmp19 + 72;
1407#line 148
1408  if (*((void (**)(struct videocodec *codec , __u16 reg , __u32 value ))__cil_tmp20)) {
1409    {
1410#line 149
1411    __cil_tmp21 = (unsigned long )ptr;
1412#line 149
1413    __cil_tmp22 = __cil_tmp21 + 40;
1414#line 149
1415    __cil_tmp23 = *((struct videocodec **)__cil_tmp22);
1416#line 149
1417    __cil_tmp24 = (unsigned long )__cil_tmp23;
1418#line 149
1419    __cil_tmp25 = __cil_tmp24 + 64;
1420#line 149
1421    __cil_tmp26 = *((struct videocodec_master **)__cil_tmp25);
1422#line 149
1423    __cil_tmp27 = (unsigned long )__cil_tmp26;
1424#line 149
1425    __cil_tmp28 = __cil_tmp27 + 72;
1426#line 149
1427    __cil_tmp29 = *((void (**)(struct videocodec *codec , __u16 reg , __u32 value ))__cil_tmp28);
1428#line 149
1429    __cil_tmp30 = (unsigned long )ptr;
1430#line 149
1431    __cil_tmp31 = __cil_tmp30 + 40;
1432#line 149
1433    __cil_tmp32 = *((struct videocodec **)__cil_tmp31);
1434#line 149
1435    __cil_tmp33 = (__u16 )2;
1436#line 149
1437    __cil_tmp34 = (int )reg;
1438#line 149
1439    __cil_tmp35 = __cil_tmp34 & 15;
1440#line 149
1441    __cil_tmp36 = (__u32 )__cil_tmp35;
1442#line 149
1443    (*__cil_tmp29)(__cil_tmp32, __cil_tmp33, __cil_tmp36);
1444#line 150
1445    __cil_tmp37 = (unsigned long )ptr;
1446#line 150
1447    __cil_tmp38 = __cil_tmp37 + 40;
1448#line 150
1449    __cil_tmp39 = *((struct videocodec **)__cil_tmp38);
1450#line 150
1451    __cil_tmp40 = (unsigned long )__cil_tmp39;
1452#line 150
1453    __cil_tmp41 = __cil_tmp40 + 64;
1454#line 150
1455    __cil_tmp42 = *((struct videocodec_master **)__cil_tmp41);
1456#line 150
1457    __cil_tmp43 = (unsigned long )__cil_tmp42;
1458#line 150
1459    __cil_tmp44 = __cil_tmp43 + 72;
1460#line 150
1461    __cil_tmp45 = *((void (**)(struct videocodec *codec , __u16 reg , __u32 value ))__cil_tmp44);
1462#line 150
1463    __cil_tmp46 = (unsigned long )ptr;
1464#line 150
1465    __cil_tmp47 = __cil_tmp46 + 40;
1466#line 150
1467    __cil_tmp48 = *((struct videocodec **)__cil_tmp47);
1468#line 150
1469    __cil_tmp49 = (__u16 )3;
1470#line 150
1471    __cil_tmp50 = (int )value;
1472#line 150
1473    __cil_tmp51 = __cil_tmp50 & 255;
1474#line 150
1475    __cil_tmp52 = (__u32 )__cil_tmp51;
1476#line 150
1477    (*__cil_tmp45)(__cil_tmp48, __cil_tmp49, __cil_tmp52);
1478    }
1479  } else {
1480    {
1481#line 152
1482    while (1) {
1483      while_continue___0: /* CIL Label */ ;
1484      {
1485#line 152
1486      __cil_tmp53 = & debug;
1487#line 152
1488      __cil_tmp54 = *__cil_tmp53;
1489#line 152
1490      if (__cil_tmp54 >= 1) {
1491        {
1492#line 152
1493        __cil_tmp55 = 0 * 1UL;
1494#line 152
1495        __cil_tmp56 = 0 + __cil_tmp55;
1496#line 152
1497        __cil_tmp57 = (unsigned long )ptr;
1498#line 152
1499        __cil_tmp58 = __cil_tmp57 + __cil_tmp56;
1500#line 152
1501        __cil_tmp59 = (char *)__cil_tmp58;
1502#line 152
1503        printk("<3>%s: invalid I/O setup, nothing written (i)!\n", __cil_tmp59);
1504        }
1505      } else {
1506
1507      }
1508      }
1509#line 152
1510      goto while_break___0;
1511    }
1512    while_break___0: /* CIL Label */ ;
1513    }
1514  }
1515  }
1516#line 156
1517  return;
1518}
1519}
1520#line 165 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/14424/dscv_tempdir/dscv/ri/32_1/drivers/media/video/zoran/zr36016.c.common.c"
1521static u8 zr36016_read_version(struct zr36016 *ptr ) 
1522{ u8 tmp ;
1523  u16 __cil_tmp3 ;
1524  unsigned long __cil_tmp4 ;
1525  unsigned long __cil_tmp5 ;
1526  int __cil_tmp6 ;
1527  int __cil_tmp7 ;
1528  unsigned long __cil_tmp8 ;
1529  unsigned long __cil_tmp9 ;
1530
1531  {
1532  {
1533#line 168
1534  __cil_tmp3 = (u16 )0;
1535#line 168
1536  tmp = zr36016_read(ptr, __cil_tmp3);
1537#line 168
1538  __cil_tmp4 = (unsigned long )ptr;
1539#line 168
1540  __cil_tmp5 = __cil_tmp4 + 48;
1541#line 168
1542  __cil_tmp6 = (int )tmp;
1543#line 168
1544  __cil_tmp7 = __cil_tmp6 >> 4;
1545#line 168
1546  *((__u8 *)__cil_tmp5) = (__u8 )__cil_tmp7;
1547  }
1548  {
1549#line 169
1550  __cil_tmp8 = (unsigned long )ptr;
1551#line 169
1552  __cil_tmp9 = __cil_tmp8 + 48;
1553#line 169
1554  return (*((__u8 *)__cil_tmp9));
1555  }
1556}
1557}
1558#line 178 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/14424/dscv_tempdir/dscv/ri/32_1/drivers/media/video/zoran/zr36016.c.common.c"
1559static int zr36016_basic_test(struct zr36016 *ptr ) 
1560{ int i ;
1561  u8 tmp ;
1562  u8 tmp___0 ;
1563  u8 tmp___1 ;
1564  int *__cil_tmp6 ;
1565  u16 __cil_tmp7 ;
1566  u8 __cil_tmp8 ;
1567  int *__cil_tmp9 ;
1568  int __cil_tmp10 ;
1569  unsigned long __cil_tmp11 ;
1570  unsigned long __cil_tmp12 ;
1571  unsigned long __cil_tmp13 ;
1572  unsigned long __cil_tmp14 ;
1573  char *__cil_tmp15 ;
1574  int *__cil_tmp16 ;
1575  int __cil_tmp17 ;
1576  u16 __cil_tmp18 ;
1577  int __cil_tmp19 ;
1578  int *__cil_tmp20 ;
1579  int __cil_tmp21 ;
1580  u16 __cil_tmp22 ;
1581  u8 __cil_tmp23 ;
1582  u16 __cil_tmp24 ;
1583  int __cil_tmp25 ;
1584  int *__cil_tmp26 ;
1585  int __cil_tmp27 ;
1586  unsigned long __cil_tmp28 ;
1587  unsigned long __cil_tmp29 ;
1588  unsigned long __cil_tmp30 ;
1589  unsigned long __cil_tmp31 ;
1590  char *__cil_tmp32 ;
1591  u16 __cil_tmp33 ;
1592  u8 __cil_tmp34 ;
1593  u16 __cil_tmp35 ;
1594  int __cil_tmp36 ;
1595  int *__cil_tmp37 ;
1596  int __cil_tmp38 ;
1597  unsigned long __cil_tmp39 ;
1598  unsigned long __cil_tmp40 ;
1599  unsigned long __cil_tmp41 ;
1600  unsigned long __cil_tmp42 ;
1601  char *__cil_tmp43 ;
1602  unsigned long __cil_tmp44 ;
1603  unsigned long __cil_tmp45 ;
1604  __u8 __cil_tmp46 ;
1605  int __cil_tmp47 ;
1606  int *__cil_tmp48 ;
1607  int __cil_tmp49 ;
1608  unsigned long __cil_tmp50 ;
1609  unsigned long __cil_tmp51 ;
1610  unsigned long __cil_tmp52 ;
1611  unsigned long __cil_tmp53 ;
1612  char *__cil_tmp54 ;
1613  unsigned long __cil_tmp55 ;
1614  unsigned long __cil_tmp56 ;
1615  __u8 __cil_tmp57 ;
1616  int __cil_tmp58 ;
1617
1618  {
1619  {
1620#line 181
1621  __cil_tmp6 = & debug;
1622#line 181
1623  if (*__cil_tmp6) {
1624    {
1625#line 183
1626    __cil_tmp7 = (u16 )4;
1627#line 183
1628    __cil_tmp8 = (u8 )85;
1629#line 183
1630    zr36016_writei(ptr, __cil_tmp7, __cil_tmp8);
1631    }
1632    {
1633#line 184
1634    while (1) {
1635      while_continue: /* CIL Label */ ;
1636      {
1637#line 184
1638      __cil_tmp9 = & debug;
1639#line 184
1640      __cil_tmp10 = *__cil_tmp9;
1641#line 184
1642      if (__cil_tmp10 >= 1) {
1643        {
1644#line 184
1645        __cil_tmp11 = 0 * 1UL;
1646#line 184
1647        __cil_tmp12 = 0 + __cil_tmp11;
1648#line 184
1649        __cil_tmp13 = (unsigned long )ptr;
1650#line 184
1651        __cil_tmp14 = __cil_tmp13 + __cil_tmp12;
1652#line 184
1653        __cil_tmp15 = (char *)__cil_tmp14;
1654#line 184
1655        printk("<6>%s: registers: ", __cil_tmp15);
1656        }
1657      } else {
1658
1659      }
1660      }
1661#line 184
1662      goto while_break;
1663    }
1664    while_break: /* CIL Label */ ;
1665    }
1666#line 185
1667    i = 0;
1668    {
1669#line 185
1670    while (1) {
1671      while_continue___0: /* CIL Label */ ;
1672#line 185
1673      if (i <= 11) {
1674
1675      } else {
1676#line 185
1677        goto while_break___0;
1678      }
1679      {
1680#line 186
1681      while (1) {
1682        while_continue___1: /* CIL Label */ ;
1683        {
1684#line 186
1685        __cil_tmp16 = & debug;
1686#line 186
1687        __cil_tmp17 = *__cil_tmp16;
1688#line 186
1689        if (__cil_tmp17 >= 1) {
1690          {
1691#line 186
1692          __cil_tmp18 = (u16 )i;
1693#line 186
1694          tmp = zr36016_readi(ptr, __cil_tmp18);
1695#line 186
1696          __cil_tmp19 = (int )tmp;
1697#line 186
1698          printk("%02x ", __cil_tmp19);
1699          }
1700        } else {
1701
1702        }
1703        }
1704#line 186
1705        goto while_break___1;
1706      }
1707      while_break___1: /* CIL Label */ ;
1708      }
1709#line 185
1710      i = i + 1;
1711    }
1712    while_break___0: /* CIL Label */ ;
1713    }
1714    {
1715#line 187
1716    while (1) {
1717      while_continue___2: /* CIL Label */ ;
1718      {
1719#line 187
1720      __cil_tmp20 = & debug;
1721#line 187
1722      __cil_tmp21 = *__cil_tmp20;
1723#line 187
1724      if (__cil_tmp21 >= 1) {
1725        {
1726#line 187
1727        printk("\n");
1728        }
1729      } else {
1730
1731      }
1732      }
1733#line 187
1734      goto while_break___2;
1735    }
1736    while_break___2: /* CIL Label */ ;
1737    }
1738  } else {
1739
1740  }
1741  }
1742  {
1743#line 191
1744  __cil_tmp22 = (u16 )4;
1745#line 191
1746  __cil_tmp23 = (u8 )0;
1747#line 191
1748  zr36016_writei(ptr, __cil_tmp22, __cil_tmp23);
1749#line 192
1750  __cil_tmp24 = (u16 )4;
1751#line 192
1752  tmp___0 = zr36016_readi(ptr, __cil_tmp24);
1753  }
1754  {
1755#line 192
1756  __cil_tmp25 = (int )tmp___0;
1757#line 192
1758  if (__cil_tmp25 != 0) {
1759    {
1760#line 193
1761    while (1) {
1762      while_continue___3: /* CIL Label */ ;
1763      {
1764#line 193
1765      __cil_tmp26 = & debug;
1766#line 193
1767      __cil_tmp27 = *__cil_tmp26;
1768#line 193
1769      if (__cil_tmp27 >= 1) {
1770        {
1771#line 193
1772        __cil_tmp28 = 0 * 1UL;
1773#line 193
1774        __cil_tmp29 = 0 + __cil_tmp28;
1775#line 193
1776        __cil_tmp30 = (unsigned long )ptr;
1777#line 193
1778        __cil_tmp31 = __cil_tmp30 + __cil_tmp29;
1779#line 193
1780        __cil_tmp32 = (char *)__cil_tmp31;
1781#line 193
1782        printk("<3>%s: attach failed, can\'t connect to vfe processor!\n", __cil_tmp32);
1783        }
1784      } else {
1785
1786      }
1787      }
1788#line 193
1789      goto while_break___3;
1790    }
1791    while_break___3: /* CIL Label */ ;
1792    }
1793#line 197
1794    return (-6);
1795  } else {
1796
1797  }
1798  }
1799  {
1800#line 199
1801  __cil_tmp33 = (u16 )4;
1802#line 199
1803  __cil_tmp34 = (u8 )208;
1804#line 199
1805  zr36016_writei(ptr, __cil_tmp33, __cil_tmp34);
1806#line 200
1807  __cil_tmp35 = (u16 )4;
1808#line 200
1809  tmp___1 = zr36016_readi(ptr, __cil_tmp35);
1810  }
1811  {
1812#line 200
1813  __cil_tmp36 = (int )tmp___1;
1814#line 200
1815  if (__cil_tmp36 != 208) {
1816    {
1817#line 201
1818    while (1) {
1819      while_continue___4: /* CIL Label */ ;
1820      {
1821#line 201
1822      __cil_tmp37 = & debug;
1823#line 201
1824      __cil_tmp38 = *__cil_tmp37;
1825#line 201
1826      if (__cil_tmp38 >= 1) {
1827        {
1828#line 201
1829        __cil_tmp39 = 0 * 1UL;
1830#line 201
1831        __cil_tmp40 = 0 + __cil_tmp39;
1832#line 201
1833        __cil_tmp41 = (unsigned long )ptr;
1834#line 201
1835        __cil_tmp42 = __cil_tmp41 + __cil_tmp40;
1836#line 201
1837        __cil_tmp43 = (char *)__cil_tmp42;
1838#line 201
1839        printk("<3>%s: attach failed, can\'t connect to vfe processor!\n", __cil_tmp43);
1840        }
1841      } else {
1842
1843      }
1844      }
1845#line 201
1846      goto while_break___4;
1847    }
1848    while_break___4: /* CIL Label */ ;
1849    }
1850#line 205
1851    return (-6);
1852  } else {
1853
1854  }
1855  }
1856  {
1857#line 208
1858  zr36016_read_version(ptr);
1859  }
1860  {
1861#line 209
1862  __cil_tmp44 = (unsigned long )ptr;
1863#line 209
1864  __cil_tmp45 = __cil_tmp44 + 48;
1865#line 209
1866  __cil_tmp46 = *((__u8 *)__cil_tmp45);
1867#line 209
1868  __cil_tmp47 = (int )__cil_tmp46;
1869#line 209
1870  if (__cil_tmp47 & 12) {
1871    {
1872#line 210
1873    while (1) {
1874      while_continue___5: /* CIL Label */ ;
1875      {
1876#line 210
1877      __cil_tmp48 = & debug;
1878#line 210
1879      __cil_tmp49 = *__cil_tmp48;
1880#line 210
1881      if (__cil_tmp49 >= 1) {
1882        {
1883#line 210
1884        __cil_tmp50 = 0 * 1UL;
1885#line 210
1886        __cil_tmp51 = 0 + __cil_tmp50;
1887#line 210
1888        __cil_tmp52 = (unsigned long )ptr;
1889#line 210
1890        __cil_tmp53 = __cil_tmp52 + __cil_tmp51;
1891#line 210
1892        __cil_tmp54 = (char *)__cil_tmp53;
1893#line 210
1894        __cil_tmp55 = (unsigned long )ptr;
1895#line 210
1896        __cil_tmp56 = __cil_tmp55 + 48;
1897#line 210
1898        __cil_tmp57 = *((__u8 *)__cil_tmp56);
1899#line 210
1900        __cil_tmp58 = (int )__cil_tmp57;
1901#line 210
1902        printk("<3>%s: attach failed, suspicious version %d found...\n", __cil_tmp54,
1903               __cil_tmp58);
1904        }
1905      } else {
1906
1907      }
1908      }
1909#line 210
1910      goto while_break___5;
1911    }
1912    while_break___5: /* CIL Label */ ;
1913    }
1914#line 214
1915    return (-6);
1916  } else {
1917
1918  }
1919  }
1920#line 217
1921  return (0);
1922}
1923}
1924#line 254 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/14424/dscv_tempdir/dscv/ri/32_1/drivers/media/video/zoran/zr36016.c.common.c"
1925static void zr36016_init(struct zr36016 *ptr ) 
1926{ int tmp ;
1927  int tmp___0 ;
1928  int tmp___1 ;
1929  u16 __cil_tmp5 ;
1930  u8 __cil_tmp6 ;
1931  unsigned long __cil_tmp7 ;
1932  unsigned long __cil_tmp8 ;
1933  int __cil_tmp9 ;
1934  u16 __cil_tmp10 ;
1935  int __cil_tmp11 ;
1936  u8 __cil_tmp12 ;
1937  unsigned long __cil_tmp13 ;
1938  unsigned long __cil_tmp14 ;
1939  unsigned long __cil_tmp15 ;
1940  unsigned long __cil_tmp16 ;
1941  u16 __cil_tmp17 ;
1942  int __cil_tmp18 ;
1943  int __cil_tmp19 ;
1944  u8 __cil_tmp20 ;
1945  u16 __cil_tmp21 ;
1946  u8 __cil_tmp22 ;
1947  u16 __cil_tmp23 ;
1948  unsigned long __cil_tmp24 ;
1949  unsigned long __cil_tmp25 ;
1950  __u16 __cil_tmp26 ;
1951  int __cil_tmp27 ;
1952  int __cil_tmp28 ;
1953  u8 __cil_tmp29 ;
1954  u16 __cil_tmp30 ;
1955  unsigned long __cil_tmp31 ;
1956  unsigned long __cil_tmp32 ;
1957  __u16 __cil_tmp33 ;
1958  int __cil_tmp34 ;
1959  int __cil_tmp35 ;
1960  u8 __cil_tmp36 ;
1961  u16 __cil_tmp37 ;
1962  unsigned long __cil_tmp38 ;
1963  unsigned long __cil_tmp39 ;
1964  __u16 __cil_tmp40 ;
1965  int __cil_tmp41 ;
1966  int __cil_tmp42 ;
1967  u8 __cil_tmp43 ;
1968  u16 __cil_tmp44 ;
1969  unsigned long __cil_tmp45 ;
1970  unsigned long __cil_tmp46 ;
1971  __u16 __cil_tmp47 ;
1972  int __cil_tmp48 ;
1973  int __cil_tmp49 ;
1974  u8 __cil_tmp50 ;
1975  u16 __cil_tmp51 ;
1976  unsigned long __cil_tmp52 ;
1977  unsigned long __cil_tmp53 ;
1978  __u16 __cil_tmp54 ;
1979  int __cil_tmp55 ;
1980  int __cil_tmp56 ;
1981  u8 __cil_tmp57 ;
1982  u16 __cil_tmp58 ;
1983  unsigned long __cil_tmp59 ;
1984  unsigned long __cil_tmp60 ;
1985  __u16 __cil_tmp61 ;
1986  int __cil_tmp62 ;
1987  int __cil_tmp63 ;
1988  u8 __cil_tmp64 ;
1989  u16 __cil_tmp65 ;
1990  unsigned long __cil_tmp66 ;
1991  unsigned long __cil_tmp67 ;
1992  __u16 __cil_tmp68 ;
1993  int __cil_tmp69 ;
1994  int __cil_tmp70 ;
1995  u8 __cil_tmp71 ;
1996  u16 __cil_tmp72 ;
1997  unsigned long __cil_tmp73 ;
1998  unsigned long __cil_tmp74 ;
1999  __u16 __cil_tmp75 ;
2000  int __cil_tmp76 ;
2001  int __cil_tmp77 ;
2002  u8 __cil_tmp78 ;
2003  u16 __cil_tmp79 ;
2004  u8 __cil_tmp80 ;
2005
2006  {
2007  {
2008#line 258
2009  __cil_tmp5 = (u16 )0;
2010#line 258
2011  __cil_tmp6 = (u8 )0;
2012#line 258
2013  zr36016_write(ptr, __cil_tmp5, __cil_tmp6);
2014  }
2015  {
2016#line 261
2017  __cil_tmp7 = (unsigned long )ptr;
2018#line 261
2019  __cil_tmp8 = __cil_tmp7 + 52;
2020#line 261
2021  __cil_tmp9 = *((int *)__cil_tmp8);
2022#line 261
2023  if (__cil_tmp9 == 0) {
2024#line 261
2025    tmp = 128;
2026  } else {
2027#line 261
2028    tmp = 128;
2029  }
2030  }
2031  {
2032#line 261
2033  __cil_tmp10 = (u16 )1;
2034#line 261
2035  __cil_tmp11 = 81 | tmp;
2036#line 261
2037  __cil_tmp12 = (u8 )__cil_tmp11;
2038#line 261
2039  zr36016_write(ptr, __cil_tmp10, __cil_tmp12);
2040  }
2041  {
2042#line 267
2043  __cil_tmp13 = (unsigned long )ptr;
2044#line 267
2045  __cil_tmp14 = __cil_tmp13 + 64;
2046#line 267
2047  if (*((__u16 *)__cil_tmp14)) {
2048#line 267
2049    tmp___0 = 48;
2050  } else {
2051#line 267
2052    tmp___0 = 0;
2053  }
2054  }
2055  {
2056#line 267
2057  __cil_tmp15 = (unsigned long )ptr;
2058#line 267
2059  __cil_tmp16 = __cil_tmp15 + 66;
2060#line 267
2061  if (*((__u16 *)__cil_tmp16)) {
2062#line 267
2063    tmp___1 = 64;
2064  } else {
2065#line 267
2066    tmp___1 = 0;
2067  }
2068  }
2069  {
2070#line 267
2071  __cil_tmp17 = (u16 )0;
2072#line 267
2073  __cil_tmp18 = tmp___0 | tmp___1;
2074#line 267
2075  __cil_tmp19 = __cil_tmp18 | 1;
2076#line 267
2077  __cil_tmp20 = (u8 )__cil_tmp19;
2078#line 267
2079  zr36016_writei(ptr, __cil_tmp17, __cil_tmp20);
2080#line 270
2081  __cil_tmp21 = (u16 )1;
2082#line 270
2083  __cil_tmp22 = (u8 )4;
2084#line 270
2085  zr36016_writei(ptr, __cil_tmp21, __cil_tmp22);
2086#line 274
2087  __cil_tmp23 = (u16 )5;
2088#line 274
2089  __cil_tmp24 = (unsigned long )ptr;
2090#line 274
2091  __cil_tmp25 = __cil_tmp24 + 60;
2092#line 274
2093  __cil_tmp26 = *((__u16 *)__cil_tmp25);
2094#line 274
2095  __cil_tmp27 = (int )__cil_tmp26;
2096#line 274
2097  __cil_tmp28 = __cil_tmp27 >> 8;
2098#line 274
2099  __cil_tmp29 = (u8 )__cil_tmp28;
2100#line 274
2101  zr36016_writei(ptr, __cil_tmp23, __cil_tmp29);
2102#line 275
2103  __cil_tmp30 = (u16 )4;
2104#line 275
2105  __cil_tmp31 = (unsigned long )ptr;
2106#line 275
2107  __cil_tmp32 = __cil_tmp31 + 60;
2108#line 275
2109  __cil_tmp33 = *((__u16 *)__cil_tmp32);
2110#line 275
2111  __cil_tmp34 = (int )__cil_tmp33;
2112#line 275
2113  __cil_tmp35 = __cil_tmp34 & 255;
2114#line 275
2115  __cil_tmp36 = (u8 )__cil_tmp35;
2116#line 275
2117  zr36016_writei(ptr, __cil_tmp30, __cil_tmp36);
2118#line 276
2119  __cil_tmp37 = (u16 )9;
2120#line 276
2121  __cil_tmp38 = (unsigned long )ptr;
2122#line 276
2123  __cil_tmp39 = __cil_tmp38 + 62;
2124#line 276
2125  __cil_tmp40 = *((__u16 *)__cil_tmp39);
2126#line 276
2127  __cil_tmp41 = (int )__cil_tmp40;
2128#line 276
2129  __cil_tmp42 = __cil_tmp41 >> 8;
2130#line 276
2131  __cil_tmp43 = (u8 )__cil_tmp42;
2132#line 276
2133  zr36016_writei(ptr, __cil_tmp37, __cil_tmp43);
2134#line 277
2135  __cil_tmp44 = (u16 )8;
2136#line 277
2137  __cil_tmp45 = (unsigned long )ptr;
2138#line 277
2139  __cil_tmp46 = __cil_tmp45 + 62;
2140#line 277
2141  __cil_tmp47 = *((__u16 *)__cil_tmp46);
2142#line 277
2143  __cil_tmp48 = (int )__cil_tmp47;
2144#line 277
2145  __cil_tmp49 = __cil_tmp48 & 255;
2146#line 277
2147  __cil_tmp50 = (u8 )__cil_tmp49;
2148#line 277
2149  zr36016_writei(ptr, __cil_tmp44, __cil_tmp50);
2150#line 278
2151  __cil_tmp51 = (u16 )3;
2152#line 278
2153  __cil_tmp52 = (unsigned long )ptr;
2154#line 278
2155  __cil_tmp53 = __cil_tmp52 + 56;
2156#line 278
2157  __cil_tmp54 = *((__u16 *)__cil_tmp53);
2158#line 278
2159  __cil_tmp55 = (int )__cil_tmp54;
2160#line 278
2161  __cil_tmp56 = __cil_tmp55 >> 8;
2162#line 278
2163  __cil_tmp57 = (u8 )__cil_tmp56;
2164#line 278
2165  zr36016_writei(ptr, __cil_tmp51, __cil_tmp57);
2166#line 279
2167  __cil_tmp58 = (u16 )2;
2168#line 279
2169  __cil_tmp59 = (unsigned long )ptr;
2170#line 279
2171  __cil_tmp60 = __cil_tmp59 + 56;
2172#line 279
2173  __cil_tmp61 = *((__u16 *)__cil_tmp60);
2174#line 279
2175  __cil_tmp62 = (int )__cil_tmp61;
2176#line 279
2177  __cil_tmp63 = __cil_tmp62 & 255;
2178#line 279
2179  __cil_tmp64 = (u8 )__cil_tmp63;
2180#line 279
2181  zr36016_writei(ptr, __cil_tmp58, __cil_tmp64);
2182#line 280
2183  __cil_tmp65 = (u16 )7;
2184#line 280
2185  __cil_tmp66 = (unsigned long )ptr;
2186#line 280
2187  __cil_tmp67 = __cil_tmp66 + 58;
2188#line 280
2189  __cil_tmp68 = *((__u16 *)__cil_tmp67);
2190#line 280
2191  __cil_tmp69 = (int )__cil_tmp68;
2192#line 280
2193  __cil_tmp70 = __cil_tmp69 >> 8;
2194#line 280
2195  __cil_tmp71 = (u8 )__cil_tmp70;
2196#line 280
2197  zr36016_writei(ptr, __cil_tmp65, __cil_tmp71);
2198#line 281
2199  __cil_tmp72 = (u16 )6;
2200#line 281
2201  __cil_tmp73 = (unsigned long )ptr;
2202#line 281
2203  __cil_tmp74 = __cil_tmp73 + 58;
2204#line 281
2205  __cil_tmp75 = *((__u16 *)__cil_tmp74);
2206#line 281
2207  __cil_tmp76 = (int )__cil_tmp75;
2208#line 281
2209  __cil_tmp77 = __cil_tmp76 & 255;
2210#line 281
2211  __cil_tmp78 = (u8 )__cil_tmp77;
2212#line 281
2213  zr36016_writei(ptr, __cil_tmp72, __cil_tmp78);
2214#line 284
2215  __cil_tmp79 = (u16 )0;
2216#line 284
2217  __cil_tmp80 = (u8 )1;
2218#line 284
2219  zr36016_write(ptr, __cil_tmp79, __cil_tmp80);
2220  }
2221#line 285
2222  return;
2223}
2224}
2225#line 295 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/14424/dscv_tempdir/dscv/ri/32_1/drivers/media/video/zoran/zr36016.c.common.c"
2226static int zr36016_set_mode(struct videocodec *codec , int mode ) 
2227{ struct zr36016 *ptr ;
2228  unsigned long __cil_tmp4 ;
2229  unsigned long __cil_tmp5 ;
2230  void *__cil_tmp6 ;
2231  int *__cil_tmp7 ;
2232  int __cil_tmp8 ;
2233  unsigned long __cil_tmp9 ;
2234  unsigned long __cil_tmp10 ;
2235  unsigned long __cil_tmp11 ;
2236  unsigned long __cil_tmp12 ;
2237  char *__cil_tmp13 ;
2238  unsigned long __cil_tmp14 ;
2239  unsigned long __cil_tmp15 ;
2240
2241  {
2242#line 299
2243  __cil_tmp4 = (unsigned long )codec;
2244#line 299
2245  __cil_tmp5 = __cil_tmp4 + 72;
2246#line 299
2247  __cil_tmp6 = *((void **)__cil_tmp5);
2248#line 299
2249  ptr = (struct zr36016 *)__cil_tmp6;
2250  {
2251#line 301
2252  while (1) {
2253    while_continue: /* CIL Label */ ;
2254    {
2255#line 301
2256    __cil_tmp7 = & debug;
2257#line 301
2258    __cil_tmp8 = *__cil_tmp7;
2259#line 301
2260    if (__cil_tmp8 >= 2) {
2261      {
2262#line 301
2263      __cil_tmp9 = 0 * 1UL;
2264#line 301
2265      __cil_tmp10 = 0 + __cil_tmp9;
2266#line 301
2267      __cil_tmp11 = (unsigned long )ptr;
2268#line 301
2269      __cil_tmp12 = __cil_tmp11 + __cil_tmp10;
2270#line 301
2271      __cil_tmp13 = (char *)__cil_tmp12;
2272#line 301
2273      printk("%s: set_mode %d call\n", __cil_tmp13, mode);
2274      }
2275    } else {
2276
2277    }
2278    }
2279#line 301
2280    goto while_break;
2281  }
2282  while_break: /* CIL Label */ ;
2283  }
2284#line 303
2285  if (mode != 1) {
2286#line 303
2287    if (mode != 0) {
2288#line 304
2289      return (-22);
2290    } else {
2291
2292    }
2293  } else {
2294
2295  }
2296  {
2297#line 306
2298  __cil_tmp14 = (unsigned long )ptr;
2299#line 306
2300  __cil_tmp15 = __cil_tmp14 + 52;
2301#line 306
2302  *((int *)__cil_tmp15) = mode;
2303#line 307
2304  zr36016_init(ptr);
2305  }
2306#line 309
2307  return (0);
2308}
2309}
2310#line 313 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/14424/dscv_tempdir/dscv/ri/32_1/drivers/media/video/zoran/zr36016.c.common.c"
2311static int zr36016_set_video(struct videocodec *codec , struct tvnorm *norm , struct vfe_settings *cap ,
2312                             struct vfe_polarity *pol ) 
2313{ struct zr36016 *ptr ;
2314  int tmp ;
2315  unsigned long __cil_tmp7 ;
2316  unsigned long __cil_tmp8 ;
2317  void *__cil_tmp9 ;
2318  int *__cil_tmp10 ;
2319  int __cil_tmp11 ;
2320  unsigned long __cil_tmp12 ;
2321  unsigned long __cil_tmp13 ;
2322  unsigned long __cil_tmp14 ;
2323  unsigned long __cil_tmp15 ;
2324  char *__cil_tmp16 ;
2325  unsigned long __cil_tmp17 ;
2326  unsigned long __cil_tmp18 ;
2327  u16 __cil_tmp19 ;
2328  int __cil_tmp20 ;
2329  unsigned long __cil_tmp21 ;
2330  unsigned long __cil_tmp22 ;
2331  u16 __cil_tmp23 ;
2332  int __cil_tmp24 ;
2333  __u32 __cil_tmp25 ;
2334  unsigned long __cil_tmp26 ;
2335  unsigned long __cil_tmp27 ;
2336  __u32 __cil_tmp28 ;
2337  unsigned long __cil_tmp29 ;
2338  unsigned long __cil_tmp30 ;
2339  __u32 __cil_tmp31 ;
2340  unsigned long __cil_tmp32 ;
2341  unsigned long __cil_tmp33 ;
2342  __u32 __cil_tmp34 ;
2343  unsigned long __cil_tmp35 ;
2344  unsigned long __cil_tmp36 ;
2345  __u16 __cil_tmp37 ;
2346  int __cil_tmp38 ;
2347  unsigned long __cil_tmp39 ;
2348  unsigned long __cil_tmp40 ;
2349  unsigned long __cil_tmp41 ;
2350  unsigned long __cil_tmp42 ;
2351  __u32 __cil_tmp43 ;
2352  unsigned long __cil_tmp44 ;
2353  unsigned long __cil_tmp45 ;
2354  unsigned long __cil_tmp46 ;
2355  unsigned long __cil_tmp47 ;
2356  __u32 __cil_tmp48 ;
2357  unsigned long __cil_tmp49 ;
2358  unsigned long __cil_tmp50 ;
2359  unsigned long __cil_tmp51 ;
2360  unsigned long __cil_tmp52 ;
2361  u16 __cil_tmp53 ;
2362  unsigned long __cil_tmp54 ;
2363  unsigned long __cil_tmp55 ;
2364  __u32 __cil_tmp56 ;
2365  __u32 __cil_tmp57 ;
2366  __u32 __cil_tmp58 ;
2367  unsigned long __cil_tmp59 ;
2368  unsigned long __cil_tmp60 ;
2369  unsigned long __cil_tmp61 ;
2370  unsigned long __cil_tmp62 ;
2371  __u32 __cil_tmp63 ;
2372  unsigned long __cil_tmp64 ;
2373  unsigned long __cil_tmp65 ;
2374  u16 __cil_tmp66 ;
2375  __u32 __cil_tmp67 ;
2376  __u32 __cil_tmp68 ;
2377  unsigned long __cil_tmp69 ;
2378  unsigned long __cil_tmp70 ;
2379  __u16 __cil_tmp71 ;
2380  int __cil_tmp72 ;
2381  int __cil_tmp73 ;
2382  unsigned long __cil_tmp74 ;
2383  unsigned long __cil_tmp75 ;
2384  unsigned long __cil_tmp76 ;
2385  unsigned long __cil_tmp77 ;
2386  unsigned long __cil_tmp78 ;
2387  unsigned long __cil_tmp79 ;
2388  __u16 __cil_tmp80 ;
2389  int __cil_tmp81 ;
2390  int __cil_tmp82 ;
2391  int __cil_tmp83 ;
2392  unsigned long __cil_tmp84 ;
2393  unsigned long __cil_tmp85 ;
2394  unsigned long __cil_tmp86 ;
2395  unsigned long __cil_tmp87 ;
2396
2397  {
2398#line 319
2399  __cil_tmp7 = (unsigned long )codec;
2400#line 319
2401  __cil_tmp8 = __cil_tmp7 + 72;
2402#line 319
2403  __cil_tmp9 = *((void **)__cil_tmp8);
2404#line 319
2405  ptr = (struct zr36016 *)__cil_tmp9;
2406  {
2407#line 321
2408  while (1) {
2409    while_continue: /* CIL Label */ ;
2410    {
2411#line 321
2412    __cil_tmp10 = & debug;
2413#line 321
2414    __cil_tmp11 = *__cil_tmp10;
2415#line 321
2416    if (__cil_tmp11 >= 2) {
2417      {
2418#line 321
2419      __cil_tmp12 = 0 * 1UL;
2420#line 321
2421      __cil_tmp13 = 0 + __cil_tmp12;
2422#line 321
2423      __cil_tmp14 = (unsigned long )ptr;
2424#line 321
2425      __cil_tmp15 = __cil_tmp14 + __cil_tmp13;
2426#line 321
2427      __cil_tmp16 = (char *)__cil_tmp15;
2428#line 321
2429      __cil_tmp17 = (unsigned long )norm;
2430#line 321
2431      __cil_tmp18 = __cil_tmp17 + 4;
2432#line 321
2433      __cil_tmp19 = *((u16 *)__cil_tmp18);
2434#line 321
2435      __cil_tmp20 = (int )__cil_tmp19;
2436#line 321
2437      __cil_tmp21 = (unsigned long )norm;
2438#line 321
2439      __cil_tmp22 = __cil_tmp21 + 12;
2440#line 321
2441      __cil_tmp23 = *((u16 *)__cil_tmp22);
2442#line 321
2443      __cil_tmp24 = (int )__cil_tmp23;
2444#line 321
2445      __cil_tmp25 = *((__u32 *)cap);
2446#line 321
2447      __cil_tmp26 = (unsigned long )cap;
2448#line 321
2449      __cil_tmp27 = __cil_tmp26 + 4;
2450#line 321
2451      __cil_tmp28 = *((__u32 *)__cil_tmp27);
2452#line 321
2453      __cil_tmp29 = (unsigned long )cap;
2454#line 321
2455      __cil_tmp30 = __cil_tmp29 + 8;
2456#line 321
2457      __cil_tmp31 = *((__u32 *)__cil_tmp30);
2458#line 321
2459      __cil_tmp32 = (unsigned long )cap;
2460#line 321
2461      __cil_tmp33 = __cil_tmp32 + 12;
2462#line 321
2463      __cil_tmp34 = *((__u32 *)__cil_tmp33);
2464#line 321
2465      __cil_tmp35 = (unsigned long )cap;
2466#line 321
2467      __cil_tmp36 = __cil_tmp35 + 16;
2468#line 321
2469      __cil_tmp37 = *((__u16 *)__cil_tmp36);
2470#line 321
2471      __cil_tmp38 = (int )__cil_tmp37;
2472#line 321
2473      printk("%s: set_video %d.%d, %d/%d-%dx%d (0x%x) call\n", __cil_tmp16, __cil_tmp20,
2474             __cil_tmp24, __cil_tmp25, __cil_tmp28, __cil_tmp31, __cil_tmp34, __cil_tmp38);
2475      }
2476    } else {
2477
2478    }
2479    }
2480#line 321
2481    goto while_break;
2482  }
2483  while_break: /* CIL Label */ ;
2484  }
2485#line 329
2486  __cil_tmp39 = (unsigned long )ptr;
2487#line 329
2488  __cil_tmp40 = __cil_tmp39 + 60;
2489#line 329
2490  __cil_tmp41 = (unsigned long )cap;
2491#line 329
2492  __cil_tmp42 = __cil_tmp41 + 8;
2493#line 329
2494  __cil_tmp43 = *((__u32 *)__cil_tmp42);
2495#line 329
2496  *((__u16 *)__cil_tmp40) = (__u16 )__cil_tmp43;
2497#line 330
2498  __cil_tmp44 = (unsigned long )ptr;
2499#line 330
2500  __cil_tmp45 = __cil_tmp44 + 62;
2501#line 330
2502  __cil_tmp46 = (unsigned long )cap;
2503#line 330
2504  __cil_tmp47 = __cil_tmp46 + 12;
2505#line 330
2506  __cil_tmp48 = *((__u32 *)__cil_tmp47);
2507#line 330
2508  *((__u16 *)__cil_tmp45) = (__u16 )__cil_tmp48;
2509  {
2510#line 337
2511  __cil_tmp49 = (unsigned long )norm;
2512#line 337
2513  __cil_tmp50 = __cil_tmp49 + 4;
2514#line 337
2515  if (*((u16 *)__cil_tmp50)) {
2516#line 337
2517    __cil_tmp51 = (unsigned long )norm;
2518#line 337
2519    __cil_tmp52 = __cil_tmp51 + 4;
2520#line 337
2521    __cil_tmp53 = *((u16 *)__cil_tmp52);
2522#line 337
2523    tmp = (int )__cil_tmp53;
2524  } else {
2525#line 337
2526    tmp = 1;
2527  }
2528  }
2529#line 337
2530  __cil_tmp54 = (unsigned long )ptr;
2531#line 337
2532  __cil_tmp55 = __cil_tmp54 + 56;
2533#line 337
2534  __cil_tmp56 = *((__u32 *)cap);
2535#line 337
2536  __cil_tmp57 = (__u32 )tmp;
2537#line 337
2538  __cil_tmp58 = __cil_tmp57 + __cil_tmp56;
2539#line 337
2540  *((__u16 *)__cil_tmp55) = (__u16 )__cil_tmp58;
2541#line 342
2542  __cil_tmp59 = (unsigned long )ptr;
2543#line 342
2544  __cil_tmp60 = __cil_tmp59 + 58;
2545#line 342
2546  __cil_tmp61 = (unsigned long )cap;
2547#line 342
2548  __cil_tmp62 = __cil_tmp61 + 4;
2549#line 342
2550  __cil_tmp63 = *((__u32 *)__cil_tmp62);
2551#line 342
2552  __cil_tmp64 = (unsigned long )norm;
2553#line 342
2554  __cil_tmp65 = __cil_tmp64 + 12;
2555#line 342
2556  __cil_tmp66 = *((u16 *)__cil_tmp65);
2557#line 342
2558  __cil_tmp67 = (__u32 )__cil_tmp66;
2559#line 342
2560  __cil_tmp68 = __cil_tmp67 + __cil_tmp63;
2561#line 342
2562  *((__u16 *)__cil_tmp60) = (__u16 )__cil_tmp68;
2563  {
2564#line 344
2565  __cil_tmp69 = (unsigned long )cap;
2566#line 344
2567  __cil_tmp70 = __cil_tmp69 + 16;
2568#line 344
2569  __cil_tmp71 = *((__u16 *)__cil_tmp70);
2570#line 344
2571  __cil_tmp72 = (int )__cil_tmp71;
2572#line 344
2573  __cil_tmp73 = __cil_tmp72 & 255;
2574#line 344
2575  if (__cil_tmp73 == 1) {
2576#line 344
2577    __cil_tmp74 = (unsigned long )ptr;
2578#line 344
2579    __cil_tmp75 = __cil_tmp74 + 64;
2580#line 344
2581    *((__u16 *)__cil_tmp75) = (__u16 )0;
2582  } else {
2583#line 344
2584    __cil_tmp76 = (unsigned long )ptr;
2585#line 344
2586    __cil_tmp77 = __cil_tmp76 + 64;
2587#line 344
2588    *((__u16 *)__cil_tmp77) = (__u16 )1;
2589  }
2590  }
2591  {
2592#line 345
2593  __cil_tmp78 = (unsigned long )cap;
2594#line 345
2595  __cil_tmp79 = __cil_tmp78 + 16;
2596#line 345
2597  __cil_tmp80 = *((__u16 *)__cil_tmp79);
2598#line 345
2599  __cil_tmp81 = (int )__cil_tmp80;
2600#line 345
2601  __cil_tmp82 = __cil_tmp81 >> 8;
2602#line 345
2603  __cil_tmp83 = __cil_tmp82 & 255;
2604#line 345
2605  if (__cil_tmp83 == 1) {
2606#line 345
2607    __cil_tmp84 = (unsigned long )ptr;
2608#line 345
2609    __cil_tmp85 = __cil_tmp84 + 66;
2610#line 345
2611    *((__u16 *)__cil_tmp85) = (__u16 )0;
2612  } else {
2613#line 345
2614    __cil_tmp86 = (unsigned long )ptr;
2615#line 345
2616    __cil_tmp87 = __cil_tmp86 + 66;
2617#line 345
2618    *((__u16 *)__cil_tmp87) = (__u16 )1;
2619  }
2620  }
2621#line 347
2622  return (0);
2623}
2624}
2625#line 351 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/14424/dscv_tempdir/dscv/ri/32_1/drivers/media/video/zoran/zr36016.c.common.c"
2626static int zr36016_control(struct videocodec *codec , int type , int size , void *data ) 
2627{ struct zr36016 *ptr ;
2628  int *ival ;
2629  unsigned long __cil_tmp7 ;
2630  unsigned long __cil_tmp8 ;
2631  void *__cil_tmp9 ;
2632  int *__cil_tmp10 ;
2633  int __cil_tmp11 ;
2634  unsigned long __cil_tmp12 ;
2635  unsigned long __cil_tmp13 ;
2636  unsigned long __cil_tmp14 ;
2637  unsigned long __cil_tmp15 ;
2638  char *__cil_tmp16 ;
2639  unsigned long __cil_tmp17 ;
2640  unsigned long __cil_tmp18 ;
2641  unsigned long __cil_tmp19 ;
2642  int __cil_tmp20 ;
2643
2644  {
2645#line 357
2646  __cil_tmp7 = (unsigned long )codec;
2647#line 357
2648  __cil_tmp8 = __cil_tmp7 + 72;
2649#line 357
2650  __cil_tmp9 = *((void **)__cil_tmp8);
2651#line 357
2652  ptr = (struct zr36016 *)__cil_tmp9;
2653#line 358
2654  ival = (int *)data;
2655  {
2656#line 360
2657  while (1) {
2658    while_continue: /* CIL Label */ ;
2659    {
2660#line 360
2661    __cil_tmp10 = & debug;
2662#line 360
2663    __cil_tmp11 = *__cil_tmp10;
2664#line 360
2665    if (__cil_tmp11 >= 2) {
2666      {
2667#line 360
2668      __cil_tmp12 = 0 * 1UL;
2669#line 360
2670      __cil_tmp13 = 0 + __cil_tmp12;
2671#line 360
2672      __cil_tmp14 = (unsigned long )ptr;
2673#line 360
2674      __cil_tmp15 = __cil_tmp14 + __cil_tmp13;
2675#line 360
2676      __cil_tmp16 = (char *)__cil_tmp15;
2677#line 360
2678      printk("%s: control %d call with %d byte\n", __cil_tmp16, type, size);
2679      }
2680    } else {
2681
2682    }
2683    }
2684#line 360
2685    goto while_break;
2686  }
2687  while_break: /* CIL Label */ ;
2688  }
2689#line 364
2690  if (type == 0) {
2691#line 364
2692    goto case_0;
2693  } else
2694#line 370
2695  if (type == 32769) {
2696#line 370
2697    goto case_32769;
2698  } else
2699#line 376
2700  if (type == 1) {
2701#line 376
2702    goto case_1;
2703  } else
2704#line 384
2705  if (type == 32770) {
2706#line 384
2707    goto case_32770;
2708  } else
2709#line 385
2710  if (type == 2) {
2711#line 385
2712    goto case_32770;
2713  } else
2714#line 388
2715  if (type == 3) {
2716#line 388
2717    goto case_3;
2718  } else {
2719    {
2720#line 392
2721    goto switch_default;
2722#line 363
2723    if (0) {
2724      case_0: /* CIL Label */ 
2725      {
2726#line 365
2727      __cil_tmp17 = (unsigned long )size;
2728#line 365
2729      if (__cil_tmp17 != 4UL) {
2730#line 366
2731        return (-14);
2732      } else {
2733
2734      }
2735      }
2736#line 367
2737      *ival = 0;
2738#line 368
2739      goto switch_break;
2740      case_32769: /* CIL Label */ 
2741      {
2742#line 371
2743      __cil_tmp18 = (unsigned long )size;
2744#line 371
2745      if (__cil_tmp18 != 4UL) {
2746#line 372
2747        return (-14);
2748      } else {
2749
2750      }
2751      }
2752#line 373
2753      *ival = 0;
2754#line 374
2755      goto switch_break;
2756      case_1: /* CIL Label */ 
2757      {
2758#line 377
2759      __cil_tmp19 = (unsigned long )size;
2760#line 377
2761      if (__cil_tmp19 != 4UL) {
2762#line 378
2763        return (-14);
2764      } else {
2765
2766      }
2767      }
2768      {
2769#line 379
2770      __cil_tmp20 = *ival;
2771#line 379
2772      if (__cil_tmp20 != 0) {
2773#line 380
2774        return (-22);
2775      } else {
2776
2777      }
2778      }
2779#line 382
2780      return (0);
2781      case_32770: /* CIL Label */ 
2782      case_2: /* CIL Label */ 
2783#line 386
2784      return (0);
2785      case_3: /* CIL Label */ 
2786#line 390
2787      return (-6);
2788      switch_default: /* CIL Label */ 
2789#line 393
2790      return (-22);
2791    } else {
2792      switch_break: /* CIL Label */ ;
2793    }
2794    }
2795  }
2796#line 396
2797  return (size);
2798}
2799}
2800#line 405 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/14424/dscv_tempdir/dscv/ri/32_1/drivers/media/video/zoran/zr36016.c.common.c"
2801static int zr36016_unset(struct videocodec *codec ) 
2802{ struct zr36016 *ptr ;
2803  unsigned long __cil_tmp3 ;
2804  unsigned long __cil_tmp4 ;
2805  void *__cil_tmp5 ;
2806  int *__cil_tmp6 ;
2807  int __cil_tmp7 ;
2808  unsigned long __cil_tmp8 ;
2809  unsigned long __cil_tmp9 ;
2810  unsigned long __cil_tmp10 ;
2811  unsigned long __cil_tmp11 ;
2812  char *__cil_tmp12 ;
2813  unsigned long __cil_tmp13 ;
2814  unsigned long __cil_tmp14 ;
2815  int __cil_tmp15 ;
2816  void const   *__cil_tmp16 ;
2817  unsigned long __cil_tmp17 ;
2818  unsigned long __cil_tmp18 ;
2819
2820  {
2821#line 408
2822  __cil_tmp3 = (unsigned long )codec;
2823#line 408
2824  __cil_tmp4 = __cil_tmp3 + 72;
2825#line 408
2826  __cil_tmp5 = *((void **)__cil_tmp4);
2827#line 408
2828  ptr = (struct zr36016 *)__cil_tmp5;
2829#line 410
2830  if (ptr) {
2831    {
2832#line 413
2833    while (1) {
2834      while_continue: /* CIL Label */ ;
2835      {
2836#line 413
2837      __cil_tmp6 = & debug;
2838#line 413
2839      __cil_tmp7 = *__cil_tmp6;
2840#line 413
2841      if (__cil_tmp7 >= 1) {
2842        {
2843#line 413
2844        __cil_tmp8 = 0 * 1UL;
2845#line 413
2846        __cil_tmp9 = 0 + __cil_tmp8;
2847#line 413
2848        __cil_tmp10 = (unsigned long )ptr;
2849#line 413
2850        __cil_tmp11 = __cil_tmp10 + __cil_tmp9;
2851#line 413
2852        __cil_tmp12 = (char *)__cil_tmp11;
2853#line 413
2854        __cil_tmp13 = (unsigned long )ptr;
2855#line 413
2856        __cil_tmp14 = __cil_tmp13 + 32;
2857#line 413
2858        __cil_tmp15 = *((int *)__cil_tmp14);
2859#line 413
2860        printk("%s: finished codec #%d\n", __cil_tmp12, __cil_tmp15);
2861        }
2862      } else {
2863
2864      }
2865      }
2866#line 413
2867      goto while_break;
2868    }
2869    while_break: /* CIL Label */ ;
2870    }
2871    {
2872#line 415
2873    __cil_tmp16 = (void const   *)ptr;
2874#line 415
2875    kfree(__cil_tmp16);
2876#line 416
2877    __cil_tmp17 = (unsigned long )codec;
2878#line 416
2879    __cil_tmp18 = __cil_tmp17 + 72;
2880#line 416
2881    *((void **)__cil_tmp18) = (void *)0;
2882#line 418
2883    zr36016_codecs = zr36016_codecs - 1;
2884    }
2885#line 419
2886    return (0);
2887  } else {
2888
2889  }
2890#line 422
2891  return (-14);
2892}
2893}
2894#line 434 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/14424/dscv_tempdir/dscv/ri/32_1/drivers/media/video/zoran/zr36016.c.common.c"
2895static int zr36016_setup(struct videocodec *codec ) 
2896{ struct zr36016 *ptr ;
2897  int res ;
2898  void *tmp ;
2899  int tmp___0 ;
2900  int *__cil_tmp6 ;
2901  int __cil_tmp7 ;
2902  int *__cil_tmp8 ;
2903  int __cil_tmp9 ;
2904  unsigned long __cil_tmp10 ;
2905  unsigned long __cil_tmp11 ;
2906  unsigned long __cil_tmp12 ;
2907  void *__cil_tmp13 ;
2908  unsigned long __cil_tmp14 ;
2909  int *__cil_tmp15 ;
2910  int __cil_tmp16 ;
2911  unsigned long __cil_tmp17 ;
2912  unsigned long __cil_tmp18 ;
2913  unsigned long __cil_tmp19 ;
2914  unsigned long __cil_tmp20 ;
2915  char *__cil_tmp21 ;
2916  unsigned long __cil_tmp22 ;
2917  unsigned long __cil_tmp23 ;
2918  unsigned long __cil_tmp24 ;
2919  unsigned long __cil_tmp25 ;
2920  unsigned long __cil_tmp26 ;
2921  unsigned long __cil_tmp27 ;
2922  unsigned long __cil_tmp28 ;
2923  unsigned long __cil_tmp29 ;
2924  unsigned long __cil_tmp30 ;
2925  unsigned long __cil_tmp31 ;
2926  unsigned long __cil_tmp32 ;
2927  unsigned long __cil_tmp33 ;
2928  unsigned long __cil_tmp34 ;
2929  unsigned long __cil_tmp35 ;
2930  int *__cil_tmp36 ;
2931  int __cil_tmp37 ;
2932  unsigned long __cil_tmp38 ;
2933  unsigned long __cil_tmp39 ;
2934  unsigned long __cil_tmp40 ;
2935  unsigned long __cil_tmp41 ;
2936  char *__cil_tmp42 ;
2937  unsigned long __cil_tmp43 ;
2938  unsigned long __cil_tmp44 ;
2939  __u8 __cil_tmp45 ;
2940  int __cil_tmp46 ;
2941
2942  {
2943  {
2944#line 440
2945  while (1) {
2946    while_continue: /* CIL Label */ ;
2947    {
2948#line 440
2949    __cil_tmp6 = & debug;
2950#line 440
2951    __cil_tmp7 = *__cil_tmp6;
2952#line 440
2953    if (__cil_tmp7 >= 2) {
2954      {
2955#line 440
2956      printk("zr36016: initializing VFE subsystem #%d.\n", zr36016_codecs);
2957      }
2958    } else {
2959
2960    }
2961    }
2962#line 440
2963    goto while_break;
2964  }
2965  while_break: /* CIL Label */ ;
2966  }
2967#line 443
2968  if (zr36016_codecs == 20) {
2969    {
2970#line 444
2971    while (1) {
2972      while_continue___0: /* CIL Label */ ;
2973      {
2974#line 444
2975      __cil_tmp8 = & debug;
2976#line 444
2977      __cil_tmp9 = *__cil_tmp8;
2978#line 444
2979      if (__cil_tmp9 >= 1) {
2980        {
2981#line 444
2982        printk("<3>zr36016: Can\'t attach more codecs!\n");
2983        }
2984      } else {
2985
2986      }
2987      }
2988#line 444
2989      goto while_break___0;
2990    }
2991    while_break___0: /* CIL Label */ ;
2992    }
2993#line 446
2994    return (-28);
2995  } else {
2996
2997  }
2998  {
2999#line 449
3000  tmp = kzalloc(72UL, 208U);
3001#line 449
3002  ptr = (struct zr36016 *)tmp;
3003#line 449
3004  __cil_tmp10 = (unsigned long )codec;
3005#line 449
3006  __cil_tmp11 = __cil_tmp10 + 72;
3007#line 449
3008  *((void **)__cil_tmp11) = (void *)ptr;
3009  }
3010  {
3011#line 450
3012  __cil_tmp12 = (unsigned long )ptr;
3013#line 450
3014  __cil_tmp13 = (void *)0;
3015#line 450
3016  __cil_tmp14 = (unsigned long )__cil_tmp13;
3017#line 450
3018  if (__cil_tmp14 == __cil_tmp12) {
3019    {
3020#line 451
3021    while (1) {
3022      while_continue___1: /* CIL Label */ ;
3023      {
3024#line 451
3025      __cil_tmp15 = & debug;
3026#line 451
3027      __cil_tmp16 = *__cil_tmp15;
3028#line 451
3029      if (__cil_tmp16 >= 1) {
3030        {
3031#line 451
3032        printk("<3>zr36016: Can\'t get enough memory!\n");
3033        }
3034      } else {
3035
3036      }
3037      }
3038#line 451
3039      goto while_break___1;
3040    }
3041    while_break___1: /* CIL Label */ ;
3042    }
3043#line 452
3044    return (-12);
3045  } else {
3046
3047  }
3048  }
3049  {
3050#line 455
3051  __cil_tmp17 = 0 * 1UL;
3052#line 455
3053  __cil_tmp18 = 0 + __cil_tmp17;
3054#line 455
3055  __cil_tmp19 = (unsigned long )ptr;
3056#line 455
3057  __cil_tmp20 = __cil_tmp19 + __cil_tmp18;
3058#line 455
3059  __cil_tmp21 = (char *)__cil_tmp20;
3060#line 455
3061  snprintf(__cil_tmp21, 32UL, "zr36016[%d]", zr36016_codecs);
3062#line 457
3063  tmp___0 = zr36016_codecs;
3064#line 457
3065  zr36016_codecs = zr36016_codecs + 1;
3066#line 457
3067  __cil_tmp22 = (unsigned long )ptr;
3068#line 457
3069  __cil_tmp23 = __cil_tmp22 + 32;
3070#line 457
3071  *((int *)__cil_tmp23) = tmp___0;
3072#line 458
3073  __cil_tmp24 = (unsigned long )ptr;
3074#line 458
3075  __cil_tmp25 = __cil_tmp24 + 40;
3076#line 458
3077  *((struct videocodec **)__cil_tmp25) = codec;
3078#line 461
3079  res = zr36016_basic_test(ptr);
3080  }
3081#line 462
3082  if (res < 0) {
3083    {
3084#line 463
3085    zr36016_unset(codec);
3086    }
3087#line 464
3088    return (res);
3089  } else {
3090
3091  }
3092  {
3093#line 467
3094  __cil_tmp26 = (unsigned long )ptr;
3095#line 467
3096  __cil_tmp27 = __cil_tmp26 + 52;
3097#line 467
3098  *((int *)__cil_tmp27) = 0;
3099#line 468
3100  __cil_tmp28 = (unsigned long )ptr;
3101#line 468
3102  __cil_tmp29 = __cil_tmp28 + 60;
3103#line 468
3104  *((__u16 *)__cil_tmp29) = (__u16 )768;
3105#line 469
3106  __cil_tmp30 = (unsigned long )ptr;
3107#line 469
3108  __cil_tmp31 = __cil_tmp30 + 62;
3109#line 469
3110  *((__u16 *)__cil_tmp31) = (__u16 )288;
3111#line 470
3112  __cil_tmp32 = (unsigned long )ptr;
3113#line 470
3114  __cil_tmp33 = __cil_tmp32 + 64;
3115#line 470
3116  *((__u16 *)__cil_tmp33) = (__u16 )1;
3117#line 471
3118  __cil_tmp34 = (unsigned long )ptr;
3119#line 471
3120  __cil_tmp35 = __cil_tmp34 + 66;
3121#line 471
3122  *((__u16 *)__cil_tmp35) = (__u16 )0;
3123#line 472
3124  zr36016_init(ptr);
3125  }
3126  {
3127#line 474
3128  while (1) {
3129    while_continue___2: /* CIL Label */ ;
3130    {
3131#line 474
3132    __cil_tmp36 = & debug;
3133#line 474
3134    __cil_tmp37 = *__cil_tmp36;
3135#line 474
3136    if (__cil_tmp37 >= 1) {
3137      {
3138#line 474
3139      __cil_tmp38 = 0 * 1UL;
3140#line 474
3141      __cil_tmp39 = 0 + __cil_tmp38;
3142#line 474
3143      __cil_tmp40 = (unsigned long )ptr;
3144#line 474
3145      __cil_tmp41 = __cil_tmp40 + __cil_tmp39;
3146#line 474
3147      __cil_tmp42 = (char *)__cil_tmp41;
3148#line 474
3149      __cil_tmp43 = (unsigned long )ptr;
3150#line 474
3151      __cil_tmp44 = __cil_tmp43 + 48;
3152#line 474
3153      __cil_tmp45 = *((__u8 *)__cil_tmp44);
3154#line 474
3155      __cil_tmp46 = (int )__cil_tmp45;
3156#line 474
3157      printk("<6>%s: codec v%d attached and running\n", __cil_tmp42, __cil_tmp46);
3158      }
3159    } else {
3160
3161    }
3162    }
3163#line 474
3164    goto while_break___2;
3165  }
3166  while_break___2: /* CIL Label */ ;
3167  }
3168#line 477
3169  return (0);
3170}
3171}
3172#line 480 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/14424/dscv_tempdir/dscv/ri/32_1/drivers/media/video/zoran/zr36016.c.common.c"
3173static struct videocodec  const  zr36016_codec  = 
3174#line 480
3175     {& __this_module, {(char )'z', (char )'r', (char )'3', (char )'6', (char )'0',
3176                      (char )'1', (char )'6', (char )'\000'}, 0UL, 61440UL, 3U, (struct videocodec_master *)0,
3177    (void *)0, & zr36016_setup, & zr36016_unset, & zr36016_set_mode, & zr36016_set_video,
3178    & zr36016_control, (int (*)(struct videocodec *codec , long mode ))0, (int (*)(struct videocodec *codec ,
3179                                                                                   int source ,
3180                                                                                   long flag ))0,
3181    (long (*)(struct videocodec *codec , int tr_type , int block , long *fr_num ,
3182              long *flag , long size , void *buf ))0, (long (*)(struct videocodec *codec ,
3183                                                                int tr_type , int block ,
3184                                                                long *fr_num , long *flag ,
3185                                                                long size , void *buf ))0};
3186#line 500
3187static int zr36016_init_module(void)  __attribute__((__section__(".init.text"), __no_instrument_function__)) ;
3188#line 500 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/14424/dscv_tempdir/dscv/ri/32_1/drivers/media/video/zoran/zr36016.c.common.c"
3189static int zr36016_init_module(void) 
3190{ int tmp ;
3191
3192  {
3193  {
3194#line 504
3195  zr36016_codecs = 0;
3196#line 505
3197  tmp = videocodec_register(& zr36016_codec);
3198  }
3199#line 505
3200  return (tmp);
3201}
3202}
3203#line 508
3204static void zr36016_cleanup_module(void)  __attribute__((__section__(".exit.text"),
3205__no_instrument_function__)) ;
3206#line 508 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/14424/dscv_tempdir/dscv/ri/32_1/drivers/media/video/zoran/zr36016.c.common.c"
3207static void zr36016_cleanup_module(void) 
3208{ int *__cil_tmp1 ;
3209  int __cil_tmp2 ;
3210
3211  {
3212#line 511
3213  if (zr36016_codecs) {
3214    {
3215#line 512
3216    while (1) {
3217      while_continue: /* CIL Label */ ;
3218      {
3219#line 512
3220      __cil_tmp1 = & debug;
3221#line 512
3222      __cil_tmp2 = *__cil_tmp1;
3223#line 512
3224      if (__cil_tmp2 >= 1) {
3225        {
3226#line 512
3227        printk("zr36016: something\'s wrong - %d codecs left somehow.\n", zr36016_codecs);
3228        }
3229      } else {
3230
3231      }
3232      }
3233#line 512
3234      goto while_break;
3235    }
3236    while_break: /* CIL Label */ ;
3237    }
3238  } else {
3239
3240  }
3241  {
3242#line 516
3243  videocodec_unregister(& zr36016_codec);
3244  }
3245#line 517
3246  return;
3247}
3248}
3249#line 519 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/14424/dscv_tempdir/dscv/ri/32_1/drivers/media/video/zoran/zr36016.c.common.c"
3250int init_module(void) 
3251{ int tmp ;
3252
3253  {
3254  {
3255#line 519
3256  tmp = zr36016_init_module();
3257  }
3258#line 519
3259  return (tmp);
3260}
3261}
3262#line 520 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/14424/dscv_tempdir/dscv/ri/32_1/drivers/media/video/zoran/zr36016.c.common.c"
3263void cleanup_module(void) 
3264{ 
3265
3266  {
3267  {
3268#line 520
3269  zr36016_cleanup_module();
3270  }
3271#line 520
3272  return;
3273}
3274}
3275#line 522 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/14424/dscv_tempdir/dscv/ri/32_1/drivers/media/video/zoran/zr36016.c.common.c"
3276static char const   __mod_author522[43]  __attribute__((__used__, __unused__, __section__(".modinfo"),
3277__aligned__(1)))  = 
3278#line 522
3279  {      (char const   )'a',      (char const   )'u',      (char const   )'t',      (char const   )'h', 
3280        (char const   )'o',      (char const   )'r',      (char const   )'=',      (char const   )'W', 
3281        (char const   )'o',      (char const   )'l',      (char const   )'f',      (char const   )'g', 
3282        (char const   )'a',      (char const   )'n',      (char const   )'g',      (char const   )' ', 
3283        (char const   )'S',      (char const   )'c',      (char const   )'h',      (char const   )'e', 
3284        (char const   )'r',      (char const   )'r',      (char const   )' ',      (char const   )'<', 
3285        (char const   )'s',      (char const   )'c',      (char const   )'h',      (char const   )'e', 
3286        (char const   )'r',      (char const   )'r',      (char const   )'@',      (char const   )'n', 
3287        (char const   )'e',      (char const   )'t',      (char const   )'4',      (char const   )'y', 
3288        (char const   )'o',      (char const   )'u',      (char const   )'.',      (char const   )'a', 
3289        (char const   )'t',      (char const   )'>',      (char const   )'\000'};
3290#line 523 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/14424/dscv_tempdir/dscv/ri/32_1/drivers/media/video/zoran/zr36016.c.common.c"
3291static char const   __mod_description524[59]  __attribute__((__used__, __unused__,
3292__section__(".modinfo"), __aligned__(1)))  = 
3293#line 523
3294  {      (char const   )'d',      (char const   )'e',      (char const   )'s',      (char const   )'c', 
3295        (char const   )'r',      (char const   )'i',      (char const   )'p',      (char const   )'t', 
3296        (char const   )'i',      (char const   )'o',      (char const   )'n',      (char const   )'=', 
3297        (char const   )'D',      (char const   )'r',      (char const   )'i',      (char const   )'v', 
3298        (char const   )'e',      (char const   )'r',      (char const   )' ',      (char const   )'m', 
3299        (char const   )'o',      (char const   )'d',      (char const   )'u',      (char const   )'l', 
3300        (char const   )'e',      (char const   )' ',      (char const   )'f',      (char const   )'o', 
3301        (char const   )'r',      (char const   )' ',      (char const   )'Z',      (char const   )'R', 
3302        (char const   )'3',      (char const   )'6',      (char const   )'0',      (char const   )'1', 
3303        (char const   )'6',      (char const   )' ',      (char const   )'v',      (char const   )'i', 
3304        (char const   )'d',      (char const   )'e',      (char const   )'o',      (char const   )' ', 
3305        (char const   )'f',      (char const   )'r',      (char const   )'o',      (char const   )'n', 
3306        (char const   )'t',      (char const   )'e',      (char const   )'n',      (char const   )'d', 
3307        (char const   )'s',      (char const   )' ',      (char const   )'v',      (char const   )'0', 
3308        (char const   )'.',      (char const   )'7',      (char const   )'\000'};
3309#line 525 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/14424/dscv_tempdir/dscv/ri/32_1/drivers/media/video/zoran/zr36016.c.common.c"
3310static char const   __mod_license525[12]  __attribute__((__used__, __unused__, __section__(".modinfo"),
3311__aligned__(1)))  = 
3312#line 525
3313  {      (char const   )'l',      (char const   )'i',      (char const   )'c',      (char const   )'e', 
3314        (char const   )'n',      (char const   )'s',      (char const   )'e',      (char const   )'=', 
3315        (char const   )'G',      (char const   )'P',      (char const   )'L',      (char const   )'\000'};
3316#line 543
3317void ldv_check_final_state(void) ;
3318#line 549
3319extern void ldv_initialize(void) ;
3320#line 552
3321extern int __VERIFIER_nondet_int(void) ;
3322#line 555 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/14424/dscv_tempdir/dscv/ri/32_1/drivers/media/video/zoran/zr36016.c.common.c"
3323int LDV_IN_INTERRUPT  ;
3324#line 558 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/14424/dscv_tempdir/dscv/ri/32_1/drivers/media/video/zoran/zr36016.c.common.c"
3325void main(void) 
3326{ struct videocodec *var_group1 ;
3327  int var_zr36016_set_mode_8_p1 ;
3328  struct tvnorm *var_group2 ;
3329  struct vfe_settings *var_zr36016_set_video_9_p2 ;
3330  struct vfe_polarity *var_zr36016_set_video_9_p3 ;
3331  int var_zr36016_control_10_p1 ;
3332  int var_zr36016_control_10_p2 ;
3333  void *var_zr36016_control_10_p3 ;
3334  int tmp ;
3335  int tmp___0 ;
3336  int tmp___1 ;
3337
3338  {
3339  {
3340#line 648
3341  LDV_IN_INTERRUPT = 1;
3342#line 657
3343  ldv_initialize();
3344#line 673
3345  tmp = zr36016_init_module();
3346  }
3347#line 673
3348  if (tmp) {
3349#line 674
3350    goto ldv_final;
3351  } else {
3352
3353  }
3354  {
3355#line 678
3356  while (1) {
3357    while_continue: /* CIL Label */ ;
3358    {
3359#line 678
3360    tmp___1 = __VERIFIER_nondet_int();
3361    }
3362#line 678
3363    if (tmp___1) {
3364
3365    } else {
3366#line 678
3367      goto while_break;
3368    }
3369    {
3370#line 681
3371    tmp___0 = __VERIFIER_nondet_int();
3372    }
3373#line 683
3374    if (tmp___0 == 0) {
3375#line 683
3376      goto case_0;
3377    } else
3378#line 709
3379    if (tmp___0 == 1) {
3380#line 709
3381      goto case_1;
3382    } else
3383#line 735
3384    if (tmp___0 == 2) {
3385#line 735
3386      goto case_2;
3387    } else
3388#line 761
3389    if (tmp___0 == 3) {
3390#line 761
3391      goto case_3;
3392    } else
3393#line 787
3394    if (tmp___0 == 4) {
3395#line 787
3396      goto case_4;
3397    } else {
3398      {
3399#line 813
3400      goto switch_default;
3401#line 681
3402      if (0) {
3403        case_0: /* CIL Label */ 
3404        {
3405#line 701
3406        zr36016_setup(var_group1);
3407        }
3408#line 708
3409        goto switch_break;
3410        case_1: /* CIL Label */ 
3411        {
3412#line 727
3413        zr36016_unset(var_group1);
3414        }
3415#line 734
3416        goto switch_break;
3417        case_2: /* CIL Label */ 
3418        {
3419#line 753
3420        zr36016_set_mode(var_group1, var_zr36016_set_mode_8_p1);
3421        }
3422#line 760
3423        goto switch_break;
3424        case_3: /* CIL Label */ 
3425        {
3426#line 779
3427        zr36016_set_video(var_group1, var_group2, var_zr36016_set_video_9_p2, var_zr36016_set_video_9_p3);
3428        }
3429#line 786
3430        goto switch_break;
3431        case_4: /* CIL Label */ 
3432        {
3433#line 805
3434        zr36016_control(var_group1, var_zr36016_control_10_p1, var_zr36016_control_10_p2,
3435                        var_zr36016_control_10_p3);
3436        }
3437#line 812
3438        goto switch_break;
3439        switch_default: /* CIL Label */ 
3440#line 813
3441        goto switch_break;
3442      } else {
3443        switch_break: /* CIL Label */ ;
3444      }
3445      }
3446    }
3447  }
3448  while_break: /* CIL Label */ ;
3449  }
3450  {
3451#line 835
3452  zr36016_cleanup_module();
3453  }
3454  ldv_final: 
3455  {
3456#line 838
3457  ldv_check_final_state();
3458  }
3459#line 841
3460  return;
3461}
3462}
3463#line 5 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/14424/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/engine-blast-assert.h"
3464void ldv_blast_assert(void) 
3465{ 
3466
3467  {
3468  ERROR: 
3469#line 6
3470  goto ERROR;
3471}
3472}
3473#line 6 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/14424/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/engine-blast.h"
3474extern int __VERIFIER_nondet_int(void) ;
3475#line 19 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/14424/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
3476int ldv_mutex  =    1;
3477#line 22 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/14424/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
3478int __attribute__((__warn_unused_result__))  mutex_lock_interruptible(struct mutex *lock ) 
3479{ int nondetermined ;
3480
3481  {
3482#line 29
3483  if (ldv_mutex == 1) {
3484
3485  } else {
3486    {
3487#line 29
3488    ldv_blast_assert();
3489    }
3490  }
3491  {
3492#line 32
3493  nondetermined = __VERIFIER_nondet_int();
3494  }
3495#line 35
3496  if (nondetermined) {
3497#line 38
3498    ldv_mutex = 2;
3499#line 40
3500    return (0);
3501  } else {
3502#line 45
3503    return (-4);
3504  }
3505}
3506}
3507#line 50 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/14424/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
3508int __attribute__((__warn_unused_result__))  mutex_lock_killable(struct mutex *lock ) 
3509{ int nondetermined ;
3510
3511  {
3512#line 57
3513  if (ldv_mutex == 1) {
3514
3515  } else {
3516    {
3517#line 57
3518    ldv_blast_assert();
3519    }
3520  }
3521  {
3522#line 60
3523  nondetermined = __VERIFIER_nondet_int();
3524  }
3525#line 63
3526  if (nondetermined) {
3527#line 66
3528    ldv_mutex = 2;
3529#line 68
3530    return (0);
3531  } else {
3532#line 73
3533    return (-4);
3534  }
3535}
3536}
3537#line 78 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/14424/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
3538int atomic_dec_and_mutex_lock(atomic_t *cnt , struct mutex *lock ) 
3539{ int atomic_value_after_dec ;
3540
3541  {
3542#line 83
3543  if (ldv_mutex == 1) {
3544
3545  } else {
3546    {
3547#line 83
3548    ldv_blast_assert();
3549    }
3550  }
3551  {
3552#line 86
3553  atomic_value_after_dec = __VERIFIER_nondet_int();
3554  }
3555#line 89
3556  if (atomic_value_after_dec == 0) {
3557#line 92
3558    ldv_mutex = 2;
3559#line 94
3560    return (1);
3561  } else {
3562
3563  }
3564#line 98
3565  return (0);
3566}
3567}
3568#line 103 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/14424/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
3569void mutex_lock(struct mutex *lock ) 
3570{ 
3571
3572  {
3573#line 108
3574  if (ldv_mutex == 1) {
3575
3576  } else {
3577    {
3578#line 108
3579    ldv_blast_assert();
3580    }
3581  }
3582#line 110
3583  ldv_mutex = 2;
3584#line 111
3585  return;
3586}
3587}
3588#line 114 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/14424/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
3589int mutex_trylock(struct mutex *lock ) 
3590{ int nondetermined ;
3591
3592  {
3593#line 121
3594  if (ldv_mutex == 1) {
3595
3596  } else {
3597    {
3598#line 121
3599    ldv_blast_assert();
3600    }
3601  }
3602  {
3603#line 124
3604  nondetermined = __VERIFIER_nondet_int();
3605  }
3606#line 127
3607  if (nondetermined) {
3608#line 130
3609    ldv_mutex = 2;
3610#line 132
3611    return (1);
3612  } else {
3613#line 137
3614    return (0);
3615  }
3616}
3617}
3618#line 142 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/14424/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
3619void mutex_unlock(struct mutex *lock ) 
3620{ 
3621
3622  {
3623#line 147
3624  if (ldv_mutex == 2) {
3625
3626  } else {
3627    {
3628#line 147
3629    ldv_blast_assert();
3630    }
3631  }
3632#line 149
3633  ldv_mutex = 1;
3634#line 150
3635  return;
3636}
3637}
3638#line 153 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/14424/dscv_tempdir/dscv/ri/32_1/kernel-rules/files/model0032.c"
3639void ldv_check_final_state(void) 
3640{ 
3641
3642  {
3643#line 156
3644  if (ldv_mutex == 1) {
3645
3646  } else {
3647    {
3648#line 156
3649    ldv_blast_assert();
3650    }
3651  }
3652#line 157
3653  return;
3654}
3655}
3656#line 850 "/home/zakharov/launch/work/current--X--drivers/--X--defaultlinux-3.4--X--32_1--X--cpachecker/linux-3.4/csd_deg_dscv/14424/dscv_tempdir/dscv/ri/32_1/drivers/media/video/zoran/zr36016.c.common.c"
3657long s__builtin_expect(long val , long res ) 
3658{ 
3659
3660  {
3661#line 851
3662  return (val);
3663}
3664}