Showing error 190

User: Jiri Slaby
Error type: Reachable Error Location
Error type description: A specified error location is reachable in some program path
File location: ldv-drivers/module_get_put-drivers-tty-synclink_gt.ko-unsafe.cil.out.i.pp.cil.c
Line in file: 31450
Project: SV-COMP 2012
Tools: Manual Work
Entered: 2012-11-19 13:47:39 UTC


Source:

    1/* Generated by CIL v. 1.3.7 */
    2/* print_CIL_Input is true */
    3
    4#line 19 "include/asm-generic/int-ll64.h"
    5typedef signed char __s8;
    6#line 20 "include/asm-generic/int-ll64.h"
    7typedef unsigned char __u8;
    8#line 22 "include/asm-generic/int-ll64.h"
    9typedef short __s16;
   10#line 23 "include/asm-generic/int-ll64.h"
   11typedef unsigned short __u16;
   12#line 25 "include/asm-generic/int-ll64.h"
   13typedef int __s32;
   14#line 26 "include/asm-generic/int-ll64.h"
   15typedef unsigned int __u32;
   16#line 29 "include/asm-generic/int-ll64.h"
   17typedef long long __s64;
   18#line 30 "include/asm-generic/int-ll64.h"
   19typedef unsigned long long __u64;
   20#line 43 "include/asm-generic/int-ll64.h"
   21typedef unsigned char u8;
   22#line 46 "include/asm-generic/int-ll64.h"
   23typedef unsigned short u16;
   24#line 48 "include/asm-generic/int-ll64.h"
   25typedef int s32;
   26#line 49 "include/asm-generic/int-ll64.h"
   27typedef unsigned int u32;
   28#line 51 "include/asm-generic/int-ll64.h"
   29typedef long long s64;
   30#line 52 "include/asm-generic/int-ll64.h"
   31typedef unsigned long long u64;
   32#line 11 "include/asm-generic/types.h"
   33typedef unsigned short umode_t;
   34#line 11 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/posix_types_64.h"
   35typedef unsigned int __kernel_mode_t;
   36#line 12 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/posix_types_64.h"
   37typedef unsigned long __kernel_nlink_t;
   38#line 13 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/posix_types_64.h"
   39typedef long __kernel_off_t;
   40#line 14 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/posix_types_64.h"
   41typedef int __kernel_pid_t;
   42#line 16 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/posix_types_64.h"
   43typedef unsigned int __kernel_uid_t;
   44#line 17 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/posix_types_64.h"
   45typedef unsigned int __kernel_gid_t;
   46#line 18 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/posix_types_64.h"
   47typedef unsigned long __kernel_size_t;
   48#line 19 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/posix_types_64.h"
   49typedef long __kernel_ssize_t;
   50#line 21 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/posix_types_64.h"
   51typedef long __kernel_time_t;
   52#line 23 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/posix_types_64.h"
   53typedef long __kernel_clock_t;
   54#line 24 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/posix_types_64.h"
   55typedef int __kernel_timer_t;
   56#line 25 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/posix_types_64.h"
   57typedef int __kernel_clockid_t;
   58#line 32 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/posix_types_64.h"
   59typedef long long __kernel_loff_t;
   60#line 41 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/posix_types_64.h"
   61typedef __kernel_uid_t __kernel_uid32_t;
   62#line 42 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/posix_types_64.h"
   63typedef __kernel_gid_t __kernel_gid32_t;
   64#line 21 "include/linux/types.h"
   65typedef __u32 __kernel_dev_t;
   66#line 24 "include/linux/types.h"
   67typedef __kernel_dev_t dev_t;
   68#line 26 "include/linux/types.h"
   69typedef __kernel_mode_t mode_t;
   70#line 27 "include/linux/types.h"
   71typedef __kernel_nlink_t nlink_t;
   72#line 28 "include/linux/types.h"
   73typedef __kernel_off_t off_t;
   74#line 29 "include/linux/types.h"
   75typedef __kernel_pid_t pid_t;
   76#line 34 "include/linux/types.h"
   77typedef __kernel_clockid_t clockid_t;
   78#line 37 "include/linux/types.h"
   79typedef _Bool bool;
   80#line 39 "include/linux/types.h"
   81typedef __kernel_uid32_t uid_t;
   82#line 40 "include/linux/types.h"
   83typedef __kernel_gid32_t gid_t;
   84#line 53 "include/linux/types.h"
   85typedef __kernel_loff_t loff_t;
   86#line 62 "include/linux/types.h"
   87typedef __kernel_size_t size_t;
   88#line 67 "include/linux/types.h"
   89typedef __kernel_ssize_t ssize_t;
   90#line 77 "include/linux/types.h"
   91typedef __kernel_time_t time_t;
   92#line 110 "include/linux/types.h"
   93typedef __s32 int32_t;
   94#line 116 "include/linux/types.h"
   95typedef __u32 uint32_t;
   96#line 141 "include/linux/types.h"
   97typedef unsigned long sector_t;
   98#line 142 "include/linux/types.h"
   99typedef unsigned long blkcnt_t;
  100#line 154 "include/linux/types.h"
  101typedef u64 dma_addr_t;
  102#line 177 "include/linux/types.h"
  103typedef __u16 __le16;
  104#line 178 "include/linux/types.h"
  105typedef __u16 __be16;
  106#line 179 "include/linux/types.h"
  107typedef __u32 __le32;
  108#line 180 "include/linux/types.h"
  109typedef __u32 __be32;
  110#line 185 "include/linux/types.h"
  111typedef __u32 __wsum;
  112#line 201 "include/linux/types.h"
  113typedef unsigned int gfp_t;
  114#line 202 "include/linux/types.h"
  115typedef unsigned int fmode_t;
  116#line 205 "include/linux/types.h"
  117typedef u64 phys_addr_t;
  118#line 210 "include/linux/types.h"
  119typedef phys_addr_t resource_size_t;
  120#line 214 "include/linux/types.h"
  121struct __anonstruct_atomic_t_6 {
  122   int counter ;
  123};
  124#line 214 "include/linux/types.h"
  125typedef struct __anonstruct_atomic_t_6 atomic_t;
  126#line 219 "include/linux/types.h"
  127struct __anonstruct_atomic64_t_7 {
  128   long counter ;
  129};
  130#line 219 "include/linux/types.h"
  131typedef struct __anonstruct_atomic64_t_7 atomic64_t;
  132#line 220 "include/linux/types.h"
  133struct list_head {
  134   struct list_head *next ;
  135   struct list_head *prev ;
  136};
  137#line 225
  138struct hlist_node;
  139#line 225
  140struct hlist_node;
  141#line 225
  142struct hlist_node;
  143#line 225 "include/linux/types.h"
  144struct hlist_head {
  145   struct hlist_node *first ;
  146};
  147#line 229 "include/linux/types.h"
  148struct hlist_node {
  149   struct hlist_node *next ;
  150   struct hlist_node **pprev ;
  151};
  152#line 58 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/alternative.h"
  153struct module;
  154#line 58
  155struct module;
  156#line 58
  157struct module;
  158#line 58
  159struct module;
  160#line 145 "include/linux/init.h"
  161typedef void (*ctor_fn_t)(void);
  162#line 48 "include/linux/dynamic_debug.h"
  163struct bug_entry {
  164   int bug_addr_disp ;
  165   int file_disp ;
  166   unsigned short line ;
  167   unsigned short flags ;
  168};
  169#line 70 "include/asm-generic/bug.h"
  170struct completion;
  171#line 70
  172struct completion;
  173#line 70
  174struct completion;
  175#line 70
  176struct completion;
  177#line 71
  178struct pt_regs;
  179#line 71
  180struct pt_regs;
  181#line 71
  182struct pt_regs;
  183#line 71
  184struct pt_regs;
  185#line 321 "include/linux/kernel.h"
  186struct pid;
  187#line 321
  188struct pid;
  189#line 321
  190struct pid;
  191#line 321
  192struct pid;
  193#line 671
  194struct timespec;
  195#line 671
  196struct timespec;
  197#line 671
  198struct timespec;
  199#line 671
  200struct timespec;
  201#line 672
  202struct compat_timespec;
  203#line 672
  204struct compat_timespec;
  205#line 672
  206struct compat_timespec;
  207#line 672
  208struct compat_timespec;
  209#line 673 "include/linux/kernel.h"
  210struct __anonstruct_futex_9 {
  211   u32 *uaddr ;
  212   u32 val ;
  213   u32 flags ;
  214   u32 bitset ;
  215   u64 time ;
  216   u32 *uaddr2 ;
  217};
  218#line 673 "include/linux/kernel.h"
  219struct __anonstruct_nanosleep_10 {
  220   clockid_t clockid ;
  221   struct timespec *rmtp ;
  222   struct compat_timespec *compat_rmtp ;
  223   u64 expires ;
  224};
  225#line 673
  226struct pollfd;
  227#line 673
  228struct pollfd;
  229#line 673
  230struct pollfd;
  231#line 673 "include/linux/kernel.h"
  232struct __anonstruct_poll_11 {
  233   struct pollfd *ufds ;
  234   int nfds ;
  235   int has_timeout ;
  236   unsigned long tv_sec ;
  237   unsigned long tv_nsec ;
  238};
  239#line 673 "include/linux/kernel.h"
  240union __anonunion_ldv_2052_8 {
  241   struct __anonstruct_futex_9 futex ;
  242   struct __anonstruct_nanosleep_10 nanosleep ;
  243   struct __anonstruct_poll_11 poll ;
  244};
  245#line 673 "include/linux/kernel.h"
  246struct restart_block {
  247   long (*fn)(struct restart_block * ) ;
  248   union __anonunion_ldv_2052_8 ldv_2052 ;
  249};
  250#line 59 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/page_types.h"
  251struct page;
  252#line 59
  253struct page;
  254#line 59
  255struct page;
  256#line 59
  257struct page;
  258#line 21 "include/asm-generic/getorder.h"
  259struct task_struct;
  260#line 21
  261struct task_struct;
  262#line 21
  263struct task_struct;
  264#line 21
  265struct task_struct;
  266#line 22
  267struct exec_domain;
  268#line 22
  269struct exec_domain;
  270#line 22
  271struct exec_domain;
  272#line 22
  273struct exec_domain;
  274#line 23
  275struct mm_struct;
  276#line 23
  277struct mm_struct;
  278#line 23
  279struct mm_struct;
  280#line 23
  281struct mm_struct;
  282#line 215 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/segment.h"
  283struct pt_regs {
  284   unsigned long r15 ;
  285   unsigned long r14 ;
  286   unsigned long r13 ;
  287   unsigned long r12 ;
  288   unsigned long bp ;
  289   unsigned long bx ;
  290   unsigned long r11 ;
  291   unsigned long r10 ;
  292   unsigned long r9 ;
  293   unsigned long r8 ;
  294   unsigned long ax ;
  295   unsigned long cx ;
  296   unsigned long dx ;
  297   unsigned long si ;
  298   unsigned long di ;
  299   unsigned long orig_ax ;
  300   unsigned long ip ;
  301   unsigned long cs ;
  302   unsigned long flags ;
  303   unsigned long sp ;
  304   unsigned long ss ;
  305};
  306#line 282 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/ptrace.h"
  307struct kernel_vm86_regs {
  308   struct pt_regs pt ;
  309   unsigned short es ;
  310   unsigned short __esh ;
  311   unsigned short ds ;
  312   unsigned short __dsh ;
  313   unsigned short fs ;
  314   unsigned short __fsh ;
  315   unsigned short gs ;
  316   unsigned short __gsh ;
  317};
  318#line 203 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/vm86.h"
  319union __anonunion_ldv_2292_12 {
  320   struct pt_regs *regs ;
  321   struct kernel_vm86_regs *vm86 ;
  322};
  323#line 203 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/vm86.h"
  324struct math_emu_info {
  325   long ___orig_eip ;
  326   union __anonunion_ldv_2292_12 ldv_2292 ;
  327};
  328#line 13 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/pgtable_64_types.h"
  329typedef unsigned long pgdval_t;
  330#line 14 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/pgtable_64_types.h"
  331typedef unsigned long pgprotval_t;
  332#line 18 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/pgtable_64_types.h"
  333struct pgprot {
  334   pgprotval_t pgprot ;
  335};
  336#line 190 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/pgtable_types.h"
  337typedef struct pgprot pgprot_t;
  338#line 192 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/pgtable_types.h"
  339struct __anonstruct_pgd_t_15 {
  340   pgdval_t pgd ;
  341};
  342#line 192 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/pgtable_types.h"
  343typedef struct __anonstruct_pgd_t_15 pgd_t;
  344#line 280 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/pgtable_types.h"
  345typedef struct page *pgtable_t;
  346#line 288
  347struct file;
  348#line 288
  349struct file;
  350#line 288
  351struct file;
  352#line 288
  353struct file;
  354#line 303
  355struct seq_file;
  356#line 303
  357struct seq_file;
  358#line 303
  359struct seq_file;
  360#line 303
  361struct seq_file;
  362#line 335 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/pgtable_types.h"
  363struct __anonstruct_ldv_2526_19 {
  364   unsigned int a ;
  365   unsigned int b ;
  366};
  367#line 335 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/pgtable_types.h"
  368struct __anonstruct_ldv_2541_20 {
  369   u16 limit0 ;
  370   u16 base0 ;
  371   unsigned char base1 ;
  372   unsigned char type : 4 ;
  373   unsigned char s : 1 ;
  374   unsigned char dpl : 2 ;
  375   unsigned char p : 1 ;
  376   unsigned char limit : 4 ;
  377   unsigned char avl : 1 ;
  378   unsigned char l : 1 ;
  379   unsigned char d : 1 ;
  380   unsigned char g : 1 ;
  381   unsigned char base2 ;
  382};
  383#line 335 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/pgtable_types.h"
  384union __anonunion_ldv_2542_18 {
  385   struct __anonstruct_ldv_2526_19 ldv_2526 ;
  386   struct __anonstruct_ldv_2541_20 ldv_2541 ;
  387};
  388#line 335 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/pgtable_types.h"
  389struct desc_struct {
  390   union __anonunion_ldv_2542_18 ldv_2542 ;
  391};
  392#line 122 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/desc_defs.h"
  393struct thread_struct;
  394#line 122
  395struct thread_struct;
  396#line 122
  397struct thread_struct;
  398#line 122
  399struct thread_struct;
  400#line 124
  401struct cpumask;
  402#line 124
  403struct cpumask;
  404#line 124
  405struct cpumask;
  406#line 124
  407struct cpumask;
  408#line 125 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/desc_defs.h"
  409struct paravirt_callee_save {
  410   void *func ;
  411};
  412#line 190 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/paravirt_types.h"
  413struct pv_irq_ops {
  414   struct paravirt_callee_save save_fl ;
  415   struct paravirt_callee_save restore_fl ;
  416   struct paravirt_callee_save irq_disable ;
  417   struct paravirt_callee_save irq_enable ;
  418   void (*safe_halt)(void) ;
  419   void (*halt)(void) ;
  420   void (*adjust_exception_frame)(void) ;
  421};
  422#line 320
  423struct arch_spinlock;
  424#line 320
  425struct arch_spinlock;
  426#line 320
  427struct arch_spinlock;
  428#line 320
  429struct arch_spinlock;
  430#line 304 "include/linux/bitmap.h"
  431struct cpumask {
  432   unsigned long bits[64U] ;
  433};
  434#line 13 "include/linux/cpumask.h"
  435typedef struct cpumask cpumask_t;
  436#line 622 "include/linux/cpumask.h"
  437typedef struct cpumask *cpumask_var_t;
  438#line 90 "include/linux/personality.h"
  439struct map_segment;
  440#line 90
  441struct map_segment;
  442#line 90
  443struct map_segment;
  444#line 90 "include/linux/personality.h"
  445struct exec_domain {
  446   char const   *name ;
  447   void (*handler)(int  , struct pt_regs * ) ;
  448   unsigned char pers_low ;
  449   unsigned char pers_high ;
  450   unsigned long *signal_map ;
  451   unsigned long *signal_invmap ;
  452   struct map_segment *err_map ;
  453   struct map_segment *socktype_map ;
  454   struct map_segment *sockopt_map ;
  455   struct map_segment *af_map ;
  456   struct module *module ;
  457   struct exec_domain *next ;
  458};
  459#line 145 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
  460struct seq_operations;
  461#line 145
  462struct seq_operations;
  463#line 145
  464struct seq_operations;
  465#line 277 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
  466struct i387_fsave_struct {
  467   u32 cwd ;
  468   u32 swd ;
  469   u32 twd ;
  470   u32 fip ;
  471   u32 fcs ;
  472   u32 foo ;
  473   u32 fos ;
  474   u32 st_space[20U] ;
  475   u32 status ;
  476};
  477#line 295 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
  478struct __anonstruct_ldv_5171_24 {
  479   u64 rip ;
  480   u64 rdp ;
  481};
  482#line 295 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
  483struct __anonstruct_ldv_5177_25 {
  484   u32 fip ;
  485   u32 fcs ;
  486   u32 foo ;
  487   u32 fos ;
  488};
  489#line 295 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
  490union __anonunion_ldv_5178_23 {
  491   struct __anonstruct_ldv_5171_24 ldv_5171 ;
  492   struct __anonstruct_ldv_5177_25 ldv_5177 ;
  493};
  494#line 295 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
  495union __anonunion_ldv_5187_26 {
  496   u32 padding1[12U] ;
  497   u32 sw_reserved[12U] ;
  498};
  499#line 295 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
  500struct i387_fxsave_struct {
  501   u16 cwd ;
  502   u16 swd ;
  503   u16 twd ;
  504   u16 fop ;
  505   union __anonunion_ldv_5178_23 ldv_5178 ;
  506   u32 mxcsr ;
  507   u32 mxcsr_mask ;
  508   u32 st_space[32U] ;
  509   u32 xmm_space[64U] ;
  510   u32 padding[12U] ;
  511   union __anonunion_ldv_5187_26 ldv_5187 ;
  512};
  513#line 329 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
  514struct i387_soft_struct {
  515   u32 cwd ;
  516   u32 swd ;
  517   u32 twd ;
  518   u32 fip ;
  519   u32 fcs ;
  520   u32 foo ;
  521   u32 fos ;
  522   u32 st_space[20U] ;
  523   u8 ftop ;
  524   u8 changed ;
  525   u8 lookahead ;
  526   u8 no_update ;
  527   u8 rm ;
  528   u8 alimit ;
  529   struct math_emu_info *info ;
  530   u32 entry_eip ;
  531};
  532#line 350 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
  533struct ymmh_struct {
  534   u32 ymmh_space[64U] ;
  535};
  536#line 355 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
  537struct xsave_hdr_struct {
  538   u64 xstate_bv ;
  539   u64 reserved1[2U] ;
  540   u64 reserved2[5U] ;
  541};
  542#line 361 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
  543struct xsave_struct {
  544   struct i387_fxsave_struct i387 ;
  545   struct xsave_hdr_struct xsave_hdr ;
  546   struct ymmh_struct ymmh ;
  547};
  548#line 367 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
  549union thread_xstate {
  550   struct i387_fsave_struct fsave ;
  551   struct i387_fxsave_struct fxsave ;
  552   struct i387_soft_struct soft ;
  553   struct xsave_struct xsave ;
  554};
  555#line 375 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
  556struct fpu {
  557   union thread_xstate *state ;
  558};
  559#line 421
  560struct kmem_cache;
  561#line 421
  562struct kmem_cache;
  563#line 421
  564struct kmem_cache;
  565#line 422
  566struct perf_event;
  567#line 422
  568struct perf_event;
  569#line 422
  570struct perf_event;
  571#line 422
  572struct perf_event;
  573#line 423 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
  574struct thread_struct {
  575   struct desc_struct tls_array[3U] ;
  576   unsigned long sp0 ;
  577   unsigned long sp ;
  578   unsigned long usersp ;
  579   unsigned short es ;
  580   unsigned short ds ;
  581   unsigned short fsindex ;
  582   unsigned short gsindex ;
  583   unsigned long fs ;
  584   unsigned long gs ;
  585   struct perf_event *ptrace_bps[4U] ;
  586   unsigned long debugreg6 ;
  587   unsigned long ptrace_dr7 ;
  588   unsigned long cr2 ;
  589   unsigned long trap_no ;
  590   unsigned long error_code ;
  591   struct fpu fpu ;
  592   unsigned long *io_bitmap_ptr ;
  593   unsigned long iopl ;
  594   unsigned int io_bitmap_max ;
  595};
  596#line 622 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
  597struct __anonstruct_mm_segment_t_28 {
  598   unsigned long seg ;
  599};
  600#line 622 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
  601typedef struct __anonstruct_mm_segment_t_28 mm_segment_t;
  602#line 23 "include/asm-generic/atomic-long.h"
  603typedef atomic64_t atomic_long_t;
  604#line 131 "include/asm-generic/atomic-long.h"
  605struct thread_info {
  606   struct task_struct *task ;
  607   struct exec_domain *exec_domain ;
  608   __u32 flags ;
  609   __u32 status ;
  610   __u32 cpu ;
  611   int preempt_count ;
  612   mm_segment_t addr_limit ;
  613   struct restart_block restart_block ;
  614   void *sysenter_return ;
  615   int uaccess_err ;
  616};
  617#line 8 "include/linux/bottom_half.h"
  618struct arch_spinlock {
  619   unsigned int slock ;
  620};
  621#line 10 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/spinlock_types.h"
  622typedef struct arch_spinlock arch_spinlock_t;
  623#line 16 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/spinlock_types.h"
  624struct __anonstruct_arch_rwlock_t_29 {
  625   unsigned int lock ;
  626};
  627#line 16 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/spinlock_types.h"
  628typedef struct __anonstruct_arch_rwlock_t_29 arch_rwlock_t;
  629#line 17
  630struct lockdep_map;
  631#line 17
  632struct lockdep_map;
  633#line 17
  634struct lockdep_map;
  635#line 17
  636struct lockdep_map;
  637#line 55 "include/linux/debug_locks.h"
  638struct stack_trace {
  639   unsigned int nr_entries ;
  640   unsigned int max_entries ;
  641   unsigned long *entries ;
  642   int skip ;
  643};
  644#line 26 "include/linux/stacktrace.h"
  645struct lockdep_subclass_key {
  646   char __one_byte ;
  647};
  648#line 53 "include/linux/lockdep.h"
  649struct lock_class_key {
  650   struct lockdep_subclass_key subkeys[8U] ;
  651};
  652#line 59 "include/linux/lockdep.h"
  653struct lock_class {
  654   struct list_head hash_entry ;
  655   struct list_head lock_entry ;
  656   struct lockdep_subclass_key *key ;
  657   unsigned int subclass ;
  658   unsigned int dep_gen_id ;
  659   unsigned long usage_mask ;
  660   struct stack_trace usage_traces[13U] ;
  661   struct list_head locks_after ;
  662   struct list_head locks_before ;
  663   unsigned int version ;
  664   unsigned long ops ;
  665   char const   *name ;
  666   int name_version ;
  667   unsigned long contention_point[4U] ;
  668   unsigned long contending_point[4U] ;
  669};
  670#line 144 "include/linux/lockdep.h"
  671struct lockdep_map {
  672   struct lock_class_key *key ;
  673   struct lock_class *class_cache[2U] ;
  674   char const   *name ;
  675   int cpu ;
  676   unsigned long ip ;
  677};
  678#line 187 "include/linux/lockdep.h"
  679struct held_lock {
  680   u64 prev_chain_key ;
  681   unsigned long acquire_ip ;
  682   struct lockdep_map *instance ;
  683   struct lockdep_map *nest_lock ;
  684   u64 waittime_stamp ;
  685   u64 holdtime_stamp ;
  686   unsigned short class_idx : 13 ;
  687   unsigned char irq_context : 2 ;
  688   unsigned char trylock : 1 ;
  689   unsigned char read : 2 ;
  690   unsigned char check : 2 ;
  691   unsigned char hardirqs_off : 1 ;
  692   unsigned short references : 11 ;
  693};
  694#line 552 "include/linux/lockdep.h"
  695struct raw_spinlock {
  696   arch_spinlock_t raw_lock ;
  697   unsigned int magic ;
  698   unsigned int owner_cpu ;
  699   void *owner ;
  700   struct lockdep_map dep_map ;
  701};
  702#line 32 "include/linux/spinlock_types.h"
  703typedef struct raw_spinlock raw_spinlock_t;
  704#line 33 "include/linux/spinlock_types.h"
  705struct __anonstruct_ldv_6059_31 {
  706   u8 __padding[24U] ;
  707   struct lockdep_map dep_map ;
  708};
  709#line 33 "include/linux/spinlock_types.h"
  710union __anonunion_ldv_6060_30 {
  711   struct raw_spinlock rlock ;
  712   struct __anonstruct_ldv_6059_31 ldv_6059 ;
  713};
  714#line 33 "include/linux/spinlock_types.h"
  715struct spinlock {
  716   union __anonunion_ldv_6060_30 ldv_6060 ;
  717};
  718#line 76 "include/linux/spinlock_types.h"
  719typedef struct spinlock spinlock_t;
  720#line 23 "include/linux/rwlock_types.h"
  721struct __anonstruct_rwlock_t_32 {
  722   arch_rwlock_t raw_lock ;
  723   unsigned int magic ;
  724   unsigned int owner_cpu ;
  725   void *owner ;
  726   struct lockdep_map dep_map ;
  727};
  728#line 23 "include/linux/rwlock_types.h"
  729typedef struct __anonstruct_rwlock_t_32 rwlock_t;
  730#line 36 "include/linux/seqlock.h"
  731struct __anonstruct_seqlock_t_33 {
  732   unsigned int sequence ;
  733   spinlock_t lock ;
  734};
  735#line 36 "include/linux/seqlock.h"
  736typedef struct __anonstruct_seqlock_t_33 seqlock_t;
  737#line 110 "include/linux/seqlock.h"
  738struct seqcount {
  739   unsigned int sequence ;
  740};
  741#line 121 "include/linux/seqlock.h"
  742typedef struct seqcount seqcount_t;
  743#line 233 "include/linux/seqlock.h"
  744struct timespec {
  745   __kernel_time_t tv_sec ;
  746   long tv_nsec ;
  747};
  748#line 286 "include/linux/time.h"
  749struct kstat {
  750   u64 ino ;
  751   dev_t dev ;
  752   umode_t mode ;
  753   unsigned int nlink ;
  754   uid_t uid ;
  755   gid_t gid ;
  756   dev_t rdev ;
  757   loff_t size ;
  758   struct timespec atime ;
  759   struct timespec mtime ;
  760   struct timespec ctime ;
  761   unsigned long blksize ;
  762   unsigned long long blocks ;
  763};
  764#line 28 "include/linux/wait.h"
  765struct __wait_queue;
  766#line 28
  767struct __wait_queue;
  768#line 28
  769struct __wait_queue;
  770#line 28 "include/linux/wait.h"
  771typedef struct __wait_queue wait_queue_t;
  772#line 31 "include/linux/wait.h"
  773struct __wait_queue {
  774   unsigned int flags ;
  775   void *private ;
  776   int (*func)(wait_queue_t * , unsigned int  , int  , void * ) ;
  777   struct list_head task_list ;
  778};
  779#line 49 "include/linux/wait.h"
  780struct __wait_queue_head {
  781   spinlock_t lock ;
  782   struct list_head task_list ;
  783};
  784#line 54 "include/linux/wait.h"
  785typedef struct __wait_queue_head wait_queue_head_t;
  786#line 96 "include/linux/nodemask.h"
  787struct __anonstruct_nodemask_t_34 {
  788   unsigned long bits[16U] ;
  789};
  790#line 96 "include/linux/nodemask.h"
  791typedef struct __anonstruct_nodemask_t_34 nodemask_t;
  792#line 640 "include/linux/mmzone.h"
  793struct mutex {
  794   atomic_t count ;
  795   spinlock_t wait_lock ;
  796   struct list_head wait_list ;
  797   struct task_struct *owner ;
  798   char const   *name ;
  799   void *magic ;
  800   struct lockdep_map dep_map ;
  801};
  802#line 63 "include/linux/mutex.h"
  803struct mutex_waiter {
  804   struct list_head list ;
  805   struct task_struct *task ;
  806   void *magic ;
  807};
  808#line 171
  809struct rw_semaphore;
  810#line 171
  811struct rw_semaphore;
  812#line 171
  813struct rw_semaphore;
  814#line 171
  815struct rw_semaphore;
  816#line 172 "include/linux/mutex.h"
  817struct rw_semaphore {
  818   long count ;
  819   spinlock_t wait_lock ;
  820   struct list_head wait_list ;
  821   struct lockdep_map dep_map ;
  822};
  823#line 763 "include/linux/mmzone.h"
  824struct ctl_table;
  825#line 763
  826struct ctl_table;
  827#line 763
  828struct ctl_table;
  829#line 763
  830struct ctl_table;
  831#line 139 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/e820.h"
  832struct resource {
  833   resource_size_t start ;
  834   resource_size_t end ;
  835   char const   *name ;
  836   unsigned long flags ;
  837   struct resource *parent ;
  838   struct resource *sibling ;
  839   struct resource *child ;
  840};
  841#line 25 "include/linux/ioport.h"
  842struct pci_dev;
  843#line 25
  844struct pci_dev;
  845#line 25
  846struct pci_dev;
  847#line 175
  848struct device;
  849#line 175
  850struct device;
  851#line 175
  852struct device;
  853#line 175
  854struct device;
  855#line 312 "include/linux/jiffies.h"
  856union ktime {
  857   s64 tv64 ;
  858};
  859#line 59 "include/linux/ktime.h"
  860typedef union ktime ktime_t;
  861#line 99 "include/linux/debugobjects.h"
  862struct tvec_base;
  863#line 99
  864struct tvec_base;
  865#line 99
  866struct tvec_base;
  867#line 99
  868struct tvec_base;
  869#line 100 "include/linux/debugobjects.h"
  870struct timer_list {
  871   struct list_head entry ;
  872   unsigned long expires ;
  873   struct tvec_base *base ;
  874   void (*function)(unsigned long  ) ;
  875   unsigned long data ;
  876   int slack ;
  877   int start_pid ;
  878   void *start_site ;
  879   char start_comm[16U] ;
  880   struct lockdep_map lockdep_map ;
  881};
  882#line 289 "include/linux/timer.h"
  883struct hrtimer;
  884#line 289
  885struct hrtimer;
  886#line 289
  887struct hrtimer;
  888#line 289
  889struct hrtimer;
  890#line 290
  891enum hrtimer_restart;
  892#line 290
  893enum hrtimer_restart;
  894#line 290
  895enum hrtimer_restart;
  896#line 302
  897struct work_struct;
  898#line 302
  899struct work_struct;
  900#line 302
  901struct work_struct;
  902#line 302
  903struct work_struct;
  904#line 45 "include/linux/workqueue.h"
  905struct work_struct {
  906   atomic_long_t data ;
  907   struct list_head entry ;
  908   void (*func)(struct work_struct * ) ;
  909   struct lockdep_map lockdep_map ;
  910};
  911#line 86 "include/linux/workqueue.h"
  912struct delayed_work {
  913   struct work_struct work ;
  914   struct timer_list timer ;
  915};
  916#line 443 "include/linux/workqueue.h"
  917struct completion {
  918   unsigned int done ;
  919   wait_queue_head_t wait ;
  920};
  921#line 46 "include/linux/pm.h"
  922struct pm_message {
  923   int event ;
  924};
  925#line 52 "include/linux/pm.h"
  926typedef struct pm_message pm_message_t;
  927#line 53 "include/linux/pm.h"
  928struct dev_pm_ops {
  929   int (*prepare)(struct device * ) ;
  930   void (*complete)(struct device * ) ;
  931   int (*suspend)(struct device * ) ;
  932   int (*resume)(struct device * ) ;
  933   int (*freeze)(struct device * ) ;
  934   int (*thaw)(struct device * ) ;
  935   int (*poweroff)(struct device * ) ;
  936   int (*restore)(struct device * ) ;
  937   int (*suspend_noirq)(struct device * ) ;
  938   int (*resume_noirq)(struct device * ) ;
  939   int (*freeze_noirq)(struct device * ) ;
  940   int (*thaw_noirq)(struct device * ) ;
  941   int (*poweroff_noirq)(struct device * ) ;
  942   int (*restore_noirq)(struct device * ) ;
  943   int (*runtime_suspend)(struct device * ) ;
  944   int (*runtime_resume)(struct device * ) ;
  945   int (*runtime_idle)(struct device * ) ;
  946};
  947#line 272
  948enum rpm_status {
  949    RPM_ACTIVE = 0,
  950    RPM_RESUMING = 1,
  951    RPM_SUSPENDED = 2,
  952    RPM_SUSPENDING = 3
  953} ;
  954#line 279
  955enum rpm_request {
  956    RPM_REQ_NONE = 0,
  957    RPM_REQ_IDLE = 1,
  958    RPM_REQ_SUSPEND = 2,
  959    RPM_REQ_AUTOSUSPEND = 3,
  960    RPM_REQ_RESUME = 4
  961} ;
  962#line 287
  963struct wakeup_source;
  964#line 287
  965struct wakeup_source;
  966#line 287
  967struct wakeup_source;
  968#line 287
  969struct wakeup_source;
  970#line 288 "include/linux/pm.h"
  971struct dev_pm_info {
  972   pm_message_t power_state ;
  973   unsigned char can_wakeup : 1 ;
  974   unsigned char async_suspend : 1 ;
  975   bool is_prepared ;
  976   bool is_suspended ;
  977   spinlock_t lock ;
  978   struct list_head entry ;
  979   struct completion completion ;
  980   struct wakeup_source *wakeup ;
  981   struct timer_list suspend_timer ;
  982   unsigned long timer_expires ;
  983   struct work_struct work ;
  984   wait_queue_head_t wait_queue ;
  985   atomic_t usage_count ;
  986   atomic_t child_count ;
  987   unsigned char disable_depth : 3 ;
  988   unsigned char ignore_children : 1 ;
  989   unsigned char idle_notification : 1 ;
  990   unsigned char request_pending : 1 ;
  991   unsigned char deferred_resume : 1 ;
  992   unsigned char run_wake : 1 ;
  993   unsigned char runtime_auto : 1 ;
  994   unsigned char no_callbacks : 1 ;
  995   unsigned char irq_safe : 1 ;
  996   unsigned char use_autosuspend : 1 ;
  997   unsigned char timer_autosuspends : 1 ;
  998   enum rpm_request request ;
  999   enum rpm_status runtime_status ;
 1000   int runtime_error ;
 1001   int autosuspend_delay ;
 1002   unsigned long last_busy ;
 1003   unsigned long active_jiffies ;
 1004   unsigned long suspended_jiffies ;
 1005   unsigned long accounting_timestamp ;
 1006   void *subsys_data ;
 1007};
 1008#line 469 "include/linux/pm.h"
 1009struct dev_power_domain {
 1010   struct dev_pm_ops ops ;
 1011};
 1012#line 175 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/topology.h"
 1013struct pci_bus;
 1014#line 175
 1015struct pci_bus;
 1016#line 175
 1017struct pci_bus;
 1018#line 175
 1019struct pci_bus;
 1020#line 22 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/mmu.h"
 1021struct __anonstruct_mm_context_t_99 {
 1022   void *ldt ;
 1023   int size ;
 1024   unsigned short ia32_compat ;
 1025   struct mutex lock ;
 1026   void *vdso ;
 1027};
 1028#line 22 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/mmu.h"
 1029typedef struct __anonstruct_mm_context_t_99 mm_context_t;
 1030#line 71 "include/asm-generic/iomap.h"
 1031struct vm_area_struct;
 1032#line 71
 1033struct vm_area_struct;
 1034#line 71
 1035struct vm_area_struct;
 1036#line 71
 1037struct vm_area_struct;
 1038#line 53 "include/linux/rcupdate.h"
 1039struct rcu_head {
 1040   struct rcu_head *next ;
 1041   void (*func)(struct rcu_head * ) ;
 1042};
 1043#line 841
 1044struct nsproxy;
 1045#line 841
 1046struct nsproxy;
 1047#line 841
 1048struct nsproxy;
 1049#line 841
 1050struct nsproxy;
 1051#line 842
 1052struct ctl_table_root;
 1053#line 842
 1054struct ctl_table_root;
 1055#line 842
 1056struct ctl_table_root;
 1057#line 842
 1058struct ctl_table_root;
 1059#line 843 "include/linux/rcupdate.h"
 1060struct ctl_table_set {
 1061   struct list_head list ;
 1062   struct ctl_table_set *parent ;
 1063   int (*is_seen)(struct ctl_table_set * ) ;
 1064};
 1065#line 947 "include/linux/sysctl.h"
 1066struct ctl_table_header;
 1067#line 947
 1068struct ctl_table_header;
 1069#line 947
 1070struct ctl_table_header;
 1071#line 947
 1072struct ctl_table_header;
 1073#line 965 "include/linux/sysctl.h"
 1074typedef int proc_handler(struct ctl_table * , int  , void * , size_t * , loff_t * );
 1075#line 985 "include/linux/sysctl.h"
 1076struct ctl_table {
 1077   char const   *procname ;
 1078   void *data ;
 1079   int maxlen ;
 1080   mode_t mode ;
 1081   struct ctl_table *child ;
 1082   struct ctl_table *parent ;
 1083   proc_handler *proc_handler ;
 1084   void *extra1 ;
 1085   void *extra2 ;
 1086};
 1087#line 1027 "include/linux/sysctl.h"
 1088struct ctl_table_root {
 1089   struct list_head root_list ;
 1090   struct ctl_table_set default_set ;
 1091   struct ctl_table_set *(*lookup)(struct ctl_table_root * , struct nsproxy * ) ;
 1092   int (*permissions)(struct ctl_table_root * , struct nsproxy * , struct ctl_table * ) ;
 1093};
 1094#line 1035 "include/linux/sysctl.h"
 1095struct __anonstruct_ldv_12193_124 {
 1096   struct ctl_table *ctl_table ;
 1097   struct list_head ctl_entry ;
 1098   int used ;
 1099   int count ;
 1100};
 1101#line 1035 "include/linux/sysctl.h"
 1102union __anonunion_ldv_12195_123 {
 1103   struct __anonstruct_ldv_12193_124 ldv_12193 ;
 1104   struct rcu_head rcu ;
 1105};
 1106#line 1035 "include/linux/sysctl.h"
 1107struct ctl_table_header {
 1108   union __anonunion_ldv_12195_123 ldv_12195 ;
 1109   struct completion *unregistering ;
 1110   struct ctl_table *ctl_table_arg ;
 1111   struct ctl_table_root *root ;
 1112   struct ctl_table_set *set ;
 1113   struct ctl_table *attached_by ;
 1114   struct ctl_table *attached_to ;
 1115   struct ctl_table_header *parent ;
 1116};
 1117#line 36 "include/linux/kmod.h"
 1118struct cred;
 1119#line 36
 1120struct cred;
 1121#line 36
 1122struct cred;
 1123#line 36
 1124struct cred;
 1125#line 27 "include/linux/elf.h"
 1126typedef __u64 Elf64_Addr;
 1127#line 28 "include/linux/elf.h"
 1128typedef __u16 Elf64_Half;
 1129#line 32 "include/linux/elf.h"
 1130typedef __u32 Elf64_Word;
 1131#line 33 "include/linux/elf.h"
 1132typedef __u64 Elf64_Xword;
 1133#line 202 "include/linux/elf.h"
 1134struct elf64_sym {
 1135   Elf64_Word st_name ;
 1136   unsigned char st_info ;
 1137   unsigned char st_other ;
 1138   Elf64_Half st_shndx ;
 1139   Elf64_Addr st_value ;
 1140   Elf64_Xword st_size ;
 1141};
 1142#line 210 "include/linux/elf.h"
 1143typedef struct elf64_sym Elf64_Sym;
 1144#line 444
 1145struct sock;
 1146#line 444
 1147struct sock;
 1148#line 444
 1149struct sock;
 1150#line 444
 1151struct sock;
 1152#line 445
 1153struct kobject;
 1154#line 445
 1155struct kobject;
 1156#line 445
 1157struct kobject;
 1158#line 445
 1159struct kobject;
 1160#line 446
 1161enum kobj_ns_type {
 1162    KOBJ_NS_TYPE_NONE = 0,
 1163    KOBJ_NS_TYPE_NET = 1,
 1164    KOBJ_NS_TYPES = 2
 1165} ;
 1166#line 452 "include/linux/elf.h"
 1167struct kobj_ns_type_operations {
 1168   enum kobj_ns_type type ;
 1169   void *(*grab_current_ns)(void) ;
 1170   void const   *(*netlink_ns)(struct sock * ) ;
 1171   void const   *(*initial_ns)(void) ;
 1172   void (*drop_ns)(void * ) ;
 1173};
 1174#line 57 "include/linux/kobject_ns.h"
 1175struct attribute {
 1176   char const   *name ;
 1177   mode_t mode ;
 1178   struct lock_class_key *key ;
 1179   struct lock_class_key skey ;
 1180};
 1181#line 33 "include/linux/sysfs.h"
 1182struct attribute_group {
 1183   char const   *name ;
 1184   mode_t (*is_visible)(struct kobject * , struct attribute * , int  ) ;
 1185   struct attribute **attrs ;
 1186};
 1187#line 62 "include/linux/sysfs.h"
 1188struct bin_attribute {
 1189   struct attribute attr ;
 1190   size_t size ;
 1191   void *private ;
 1192   ssize_t (*read)(struct file * , struct kobject * , struct bin_attribute * , char * ,
 1193                   loff_t  , size_t  ) ;
 1194   ssize_t (*write)(struct file * , struct kobject * , struct bin_attribute * , char * ,
 1195                    loff_t  , size_t  ) ;
 1196   int (*mmap)(struct file * , struct kobject * , struct bin_attribute * , struct vm_area_struct * ) ;
 1197};
 1198#line 98 "include/linux/sysfs.h"
 1199struct sysfs_ops {
 1200   ssize_t (*show)(struct kobject * , struct attribute * , char * ) ;
 1201   ssize_t (*store)(struct kobject * , struct attribute * , char const   * , size_t  ) ;
 1202};
 1203#line 116
 1204struct sysfs_dirent;
 1205#line 116
 1206struct sysfs_dirent;
 1207#line 116
 1208struct sysfs_dirent;
 1209#line 116
 1210struct sysfs_dirent;
 1211#line 181 "include/linux/sysfs.h"
 1212struct kref {
 1213   atomic_t refcount ;
 1214};
 1215#line 49 "include/linux/kobject.h"
 1216struct kset;
 1217#line 49
 1218struct kset;
 1219#line 49
 1220struct kset;
 1221#line 49
 1222struct kobj_type;
 1223#line 49
 1224struct kobj_type;
 1225#line 49
 1226struct kobj_type;
 1227#line 49 "include/linux/kobject.h"
 1228struct kobject {
 1229   char const   *name ;
 1230   struct list_head entry ;
 1231   struct kobject *parent ;
 1232   struct kset *kset ;
 1233   struct kobj_type *ktype ;
 1234   struct sysfs_dirent *sd ;
 1235   struct kref kref ;
 1236   unsigned char state_initialized : 1 ;
 1237   unsigned char state_in_sysfs : 1 ;
 1238   unsigned char state_add_uevent_sent : 1 ;
 1239   unsigned char state_remove_uevent_sent : 1 ;
 1240   unsigned char uevent_suppress : 1 ;
 1241};
 1242#line 109 "include/linux/kobject.h"
 1243struct kobj_type {
 1244   void (*release)(struct kobject * ) ;
 1245   struct sysfs_ops  const  *sysfs_ops ;
 1246   struct attribute **default_attrs ;
 1247   struct kobj_ns_type_operations  const  *(*child_ns_type)(struct kobject * ) ;
 1248   void const   *(*namespace)(struct kobject * ) ;
 1249};
 1250#line 117 "include/linux/kobject.h"
 1251struct kobj_uevent_env {
 1252   char *envp[32U] ;
 1253   int envp_idx ;
 1254   char buf[2048U] ;
 1255   int buflen ;
 1256};
 1257#line 124 "include/linux/kobject.h"
 1258struct kset_uevent_ops {
 1259   int (* const  filter)(struct kset * , struct kobject * ) ;
 1260   char const   *(* const  name)(struct kset * , struct kobject * ) ;
 1261   int (* const  uevent)(struct kset * , struct kobject * , struct kobj_uevent_env * ) ;
 1262};
 1263#line 141 "include/linux/kobject.h"
 1264struct kset {
 1265   struct list_head list ;
 1266   spinlock_t list_lock ;
 1267   struct kobject kobj ;
 1268   struct kset_uevent_ops  const  *uevent_ops ;
 1269};
 1270#line 219
 1271struct kernel_param;
 1272#line 219
 1273struct kernel_param;
 1274#line 219
 1275struct kernel_param;
 1276#line 219
 1277struct kernel_param;
 1278#line 220 "include/linux/kobject.h"
 1279struct kernel_param_ops {
 1280   int (*set)(char const   * , struct kernel_param  const  * ) ;
 1281   int (*get)(char * , struct kernel_param  const  * ) ;
 1282   void (*free)(void * ) ;
 1283};
 1284#line 44 "include/linux/moduleparam.h"
 1285struct kparam_string;
 1286#line 44
 1287struct kparam_string;
 1288#line 44
 1289struct kparam_string;
 1290#line 44
 1291struct kparam_array;
 1292#line 44
 1293struct kparam_array;
 1294#line 44
 1295struct kparam_array;
 1296#line 44 "include/linux/moduleparam.h"
 1297union __anonunion_ldv_12924_129 {
 1298   void *arg ;
 1299   struct kparam_string  const  *str ;
 1300   struct kparam_array  const  *arr ;
 1301};
 1302#line 44 "include/linux/moduleparam.h"
 1303struct kernel_param {
 1304   char const   *name ;
 1305   struct kernel_param_ops  const  *ops ;
 1306   u16 perm ;
 1307   u16 flags ;
 1308   union __anonunion_ldv_12924_129 ldv_12924 ;
 1309};
 1310#line 59 "include/linux/moduleparam.h"
 1311struct kparam_string {
 1312   unsigned int maxlen ;
 1313   char *string ;
 1314};
 1315#line 65 "include/linux/moduleparam.h"
 1316struct kparam_array {
 1317   unsigned int max ;
 1318   unsigned int elemsize ;
 1319   unsigned int *num ;
 1320   struct kernel_param_ops  const  *ops ;
 1321   void *elem ;
 1322};
 1323#line 404 "include/linux/moduleparam.h"
 1324struct jump_label_key {
 1325   atomic_t enabled ;
 1326};
 1327#line 99 "include/linux/jump_label.h"
 1328struct tracepoint;
 1329#line 99
 1330struct tracepoint;
 1331#line 99
 1332struct tracepoint;
 1333#line 99
 1334struct tracepoint;
 1335#line 100 "include/linux/jump_label.h"
 1336struct tracepoint_func {
 1337   void *func ;
 1338   void *data ;
 1339};
 1340#line 29 "include/linux/tracepoint.h"
 1341struct tracepoint {
 1342   char const   *name ;
 1343   struct jump_label_key key ;
 1344   void (*regfunc)(void) ;
 1345   void (*unregfunc)(void) ;
 1346   struct tracepoint_func *funcs ;
 1347};
 1348#line 84 "include/linux/tracepoint.h"
 1349struct mod_arch_specific {
 1350
 1351};
 1352#line 127 "include/trace/events/module.h"
 1353struct kernel_symbol {
 1354   unsigned long value ;
 1355   char const   *name ;
 1356};
 1357#line 48 "include/linux/module.h"
 1358struct module_attribute {
 1359   struct attribute attr ;
 1360   ssize_t (*show)(struct module_attribute * , struct module * , char * ) ;
 1361   ssize_t (*store)(struct module_attribute * , struct module * , char const   * ,
 1362                    size_t  ) ;
 1363   void (*setup)(struct module * , char const   * ) ;
 1364   int (*test)(struct module * ) ;
 1365   void (*free)(struct module * ) ;
 1366};
 1367#line 68
 1368struct module_param_attrs;
 1369#line 68
 1370struct module_param_attrs;
 1371#line 68
 1372struct module_param_attrs;
 1373#line 68 "include/linux/module.h"
 1374struct module_kobject {
 1375   struct kobject kobj ;
 1376   struct module *mod ;
 1377   struct kobject *drivers_dir ;
 1378   struct module_param_attrs *mp ;
 1379};
 1380#line 81
 1381struct exception_table_entry;
 1382#line 81
 1383struct exception_table_entry;
 1384#line 81
 1385struct exception_table_entry;
 1386#line 81
 1387struct exception_table_entry;
 1388#line 218
 1389enum module_state {
 1390    MODULE_STATE_LIVE = 0,
 1391    MODULE_STATE_COMING = 1,
 1392    MODULE_STATE_GOING = 2
 1393} ;
 1394#line 224 "include/linux/module.h"
 1395struct module_ref {
 1396   unsigned int incs ;
 1397   unsigned int decs ;
 1398};
 1399#line 418
 1400struct module_sect_attrs;
 1401#line 418
 1402struct module_sect_attrs;
 1403#line 418
 1404struct module_sect_attrs;
 1405#line 418
 1406struct module_notes_attrs;
 1407#line 418
 1408struct module_notes_attrs;
 1409#line 418
 1410struct module_notes_attrs;
 1411#line 418
 1412struct ftrace_event_call;
 1413#line 418
 1414struct ftrace_event_call;
 1415#line 418
 1416struct ftrace_event_call;
 1417#line 418 "include/linux/module.h"
 1418struct module {
 1419   enum module_state state ;
 1420   struct list_head list ;
 1421   char name[56U] ;
 1422   struct module_kobject mkobj ;
 1423   struct module_attribute *modinfo_attrs ;
 1424   char const   *version ;
 1425   char const   *srcversion ;
 1426   struct kobject *holders_dir ;
 1427   struct kernel_symbol  const  *syms ;
 1428   unsigned long const   *crcs ;
 1429   unsigned int num_syms ;
 1430   struct kernel_param *kp ;
 1431   unsigned int num_kp ;
 1432   unsigned int num_gpl_syms ;
 1433   struct kernel_symbol  const  *gpl_syms ;
 1434   unsigned long const   *gpl_crcs ;
 1435   struct kernel_symbol  const  *unused_syms ;
 1436   unsigned long const   *unused_crcs ;
 1437   unsigned int num_unused_syms ;
 1438   unsigned int num_unused_gpl_syms ;
 1439   struct kernel_symbol  const  *unused_gpl_syms ;
 1440   unsigned long const   *unused_gpl_crcs ;
 1441   struct kernel_symbol  const  *gpl_future_syms ;
 1442   unsigned long const   *gpl_future_crcs ;
 1443   unsigned int num_gpl_future_syms ;
 1444   unsigned int num_exentries ;
 1445   struct exception_table_entry *extable ;
 1446   int (*init)(void) ;
 1447   void *module_init ;
 1448   void *module_core ;
 1449   unsigned int init_size ;
 1450   unsigned int core_size ;
 1451   unsigned int init_text_size ;
 1452   unsigned int core_text_size ;
 1453   unsigned int init_ro_size ;
 1454   unsigned int core_ro_size ;
 1455   struct mod_arch_specific arch ;
 1456   unsigned int taints ;
 1457   unsigned int num_bugs ;
 1458   struct list_head bug_list ;
 1459   struct bug_entry *bug_table ;
 1460   Elf64_Sym *symtab ;
 1461   Elf64_Sym *core_symtab ;
 1462   unsigned int num_symtab ;
 1463   unsigned int core_num_syms ;
 1464   char *strtab ;
 1465   char *core_strtab ;
 1466   struct module_sect_attrs *sect_attrs ;
 1467   struct module_notes_attrs *notes_attrs ;
 1468   char *args ;
 1469   void *percpu ;
 1470   unsigned int percpu_size ;
 1471   unsigned int num_tracepoints ;
 1472   struct tracepoint * const  *tracepoints_ptrs ;
 1473   unsigned int num_trace_bprintk_fmt ;
 1474   char const   **trace_bprintk_fmt_start ;
 1475   struct ftrace_event_call **trace_events ;
 1476   unsigned int num_trace_events ;
 1477   unsigned int num_ftrace_callsites ;
 1478   unsigned long *ftrace_callsites ;
 1479   struct list_head source_list ;
 1480   struct list_head target_list ;
 1481   struct task_struct *waiter ;
 1482   void (*exit)(void) ;
 1483   struct module_ref *refptr ;
 1484   ctor_fn_t (**ctors)(void) ;
 1485   unsigned int num_ctors ;
 1486};
 1487#line 8 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
 1488struct siginfo;
 1489#line 8
 1490struct siginfo;
 1491#line 8
 1492struct siginfo;
 1493#line 8
 1494struct siginfo;
 1495#line 32 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/signal.h"
 1496struct __anonstruct_sigset_t_130 {
 1497   unsigned long sig[1U] ;
 1498};
 1499#line 32 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/signal.h"
 1500typedef struct __anonstruct_sigset_t_130 sigset_t;
 1501#line 17 "include/asm-generic/signal-defs.h"
 1502typedef void __signalfn_t(int  );
 1503#line 18 "include/asm-generic/signal-defs.h"
 1504typedef __signalfn_t *__sighandler_t;
 1505#line 20 "include/asm-generic/signal-defs.h"
 1506typedef void __restorefn_t(void);
 1507#line 21 "include/asm-generic/signal-defs.h"
 1508typedef __restorefn_t *__sigrestore_t;
 1509#line 126 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/signal.h"
 1510struct sigaction {
 1511   __sighandler_t sa_handler ;
 1512   unsigned long sa_flags ;
 1513   __sigrestore_t sa_restorer ;
 1514   sigset_t sa_mask ;
 1515};
 1516#line 173 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/signal.h"
 1517struct k_sigaction {
 1518   struct sigaction sa ;
 1519};
 1520#line 185 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/signal.h"
 1521union sigval {
 1522   int sival_int ;
 1523   void *sival_ptr ;
 1524};
 1525#line 10 "include/asm-generic/siginfo.h"
 1526typedef union sigval sigval_t;
 1527#line 11 "include/asm-generic/siginfo.h"
 1528struct __anonstruct__kill_132 {
 1529   __kernel_pid_t _pid ;
 1530   __kernel_uid32_t _uid ;
 1531};
 1532#line 11 "include/asm-generic/siginfo.h"
 1533struct __anonstruct__timer_133 {
 1534   __kernel_timer_t _tid ;
 1535   int _overrun ;
 1536   char _pad[0U] ;
 1537   sigval_t _sigval ;
 1538   int _sys_private ;
 1539};
 1540#line 11 "include/asm-generic/siginfo.h"
 1541struct __anonstruct__rt_134 {
 1542   __kernel_pid_t _pid ;
 1543   __kernel_uid32_t _uid ;
 1544   sigval_t _sigval ;
 1545};
 1546#line 11 "include/asm-generic/siginfo.h"
 1547struct __anonstruct__sigchld_135 {
 1548   __kernel_pid_t _pid ;
 1549   __kernel_uid32_t _uid ;
 1550   int _status ;
 1551   __kernel_clock_t _utime ;
 1552   __kernel_clock_t _stime ;
 1553};
 1554#line 11 "include/asm-generic/siginfo.h"
 1555struct __anonstruct__sigfault_136 {
 1556   void *_addr ;
 1557   short _addr_lsb ;
 1558};
 1559#line 11 "include/asm-generic/siginfo.h"
 1560struct __anonstruct__sigpoll_137 {
 1561   long _band ;
 1562   int _fd ;
 1563};
 1564#line 11 "include/asm-generic/siginfo.h"
 1565union __anonunion__sifields_131 {
 1566   int _pad[28U] ;
 1567   struct __anonstruct__kill_132 _kill ;
 1568   struct __anonstruct__timer_133 _timer ;
 1569   struct __anonstruct__rt_134 _rt ;
 1570   struct __anonstruct__sigchld_135 _sigchld ;
 1571   struct __anonstruct__sigfault_136 _sigfault ;
 1572   struct __anonstruct__sigpoll_137 _sigpoll ;
 1573};
 1574#line 11 "include/asm-generic/siginfo.h"
 1575struct siginfo {
 1576   int si_signo ;
 1577   int si_errno ;
 1578   int si_code ;
 1579   union __anonunion__sifields_131 _sifields ;
 1580};
 1581#line 94 "include/asm-generic/siginfo.h"
 1582typedef struct siginfo siginfo_t;
 1583#line 14 "include/linux/signal.h"
 1584struct user_struct;
 1585#line 14
 1586struct user_struct;
 1587#line 14
 1588struct user_struct;
 1589#line 24 "include/linux/signal.h"
 1590struct sigpending {
 1591   struct list_head list ;
 1592   sigset_t signal ;
 1593};
 1594#line 93 "include/linux/capability.h"
 1595struct kernel_cap_struct {
 1596   __u32 cap[2U] ;
 1597};
 1598#line 96 "include/linux/capability.h"
 1599typedef struct kernel_cap_struct kernel_cap_t;
 1600#line 104
 1601struct dentry;
 1602#line 104
 1603struct dentry;
 1604#line 104
 1605struct dentry;
 1606#line 104
 1607struct dentry;
 1608#line 105
 1609struct user_namespace;
 1610#line 105
 1611struct user_namespace;
 1612#line 105
 1613struct user_namespace;
 1614#line 105
 1615struct user_namespace;
 1616#line 553 "include/linux/capability.h"
 1617struct rb_node {
 1618   unsigned long rb_parent_color ;
 1619   struct rb_node *rb_right ;
 1620   struct rb_node *rb_left ;
 1621};
 1622#line 108 "include/linux/rbtree.h"
 1623struct rb_root {
 1624   struct rb_node *rb_node ;
 1625};
 1626#line 176
 1627struct prio_tree_node;
 1628#line 176
 1629struct prio_tree_node;
 1630#line 176
 1631struct prio_tree_node;
 1632#line 176 "include/linux/rbtree.h"
 1633struct raw_prio_tree_node {
 1634   struct prio_tree_node *left ;
 1635   struct prio_tree_node *right ;
 1636   struct prio_tree_node *parent ;
 1637};
 1638#line 19 "include/linux/prio_tree.h"
 1639struct prio_tree_node {
 1640   struct prio_tree_node *left ;
 1641   struct prio_tree_node *right ;
 1642   struct prio_tree_node *parent ;
 1643   unsigned long start ;
 1644   unsigned long last ;
 1645};
 1646#line 27 "include/linux/prio_tree.h"
 1647struct prio_tree_root {
 1648   struct prio_tree_node *prio_tree_node ;
 1649   unsigned short index_bits ;
 1650   unsigned short raw ;
 1651};
 1652#line 115
 1653struct address_space;
 1654#line 115
 1655struct address_space;
 1656#line 115
 1657struct address_space;
 1658#line 115
 1659struct address_space;
 1660#line 116 "include/linux/prio_tree.h"
 1661struct __anonstruct_ldv_14221_142 {
 1662   u16 inuse ;
 1663   u16 objects ;
 1664};
 1665#line 116 "include/linux/prio_tree.h"
 1666union __anonunion_ldv_14222_141 {
 1667   atomic_t _mapcount ;
 1668   struct __anonstruct_ldv_14221_142 ldv_14221 ;
 1669};
 1670#line 116 "include/linux/prio_tree.h"
 1671struct __anonstruct_ldv_14227_144 {
 1672   unsigned long private ;
 1673   struct address_space *mapping ;
 1674};
 1675#line 116 "include/linux/prio_tree.h"
 1676union __anonunion_ldv_14230_143 {
 1677   struct __anonstruct_ldv_14227_144 ldv_14227 ;
 1678   struct kmem_cache *slab ;
 1679   struct page *first_page ;
 1680};
 1681#line 116 "include/linux/prio_tree.h"
 1682union __anonunion_ldv_14234_145 {
 1683   unsigned long index ;
 1684   void *freelist ;
 1685};
 1686#line 116 "include/linux/prio_tree.h"
 1687struct page {
 1688   unsigned long flags ;
 1689   atomic_t _count ;
 1690   union __anonunion_ldv_14222_141 ldv_14222 ;
 1691   union __anonunion_ldv_14230_143 ldv_14230 ;
 1692   union __anonunion_ldv_14234_145 ldv_14234 ;
 1693   struct list_head lru ;
 1694};
 1695#line 124 "include/linux/mm_types.h"
 1696struct __anonstruct_vm_set_147 {
 1697   struct list_head list ;
 1698   void *parent ;
 1699   struct vm_area_struct *head ;
 1700};
 1701#line 124 "include/linux/mm_types.h"
 1702union __anonunion_shared_146 {
 1703   struct __anonstruct_vm_set_147 vm_set ;
 1704   struct raw_prio_tree_node prio_tree_node ;
 1705};
 1706#line 124
 1707struct anon_vma;
 1708#line 124
 1709struct anon_vma;
 1710#line 124
 1711struct anon_vma;
 1712#line 124
 1713struct vm_operations_struct;
 1714#line 124
 1715struct vm_operations_struct;
 1716#line 124
 1717struct vm_operations_struct;
 1718#line 124
 1719struct mempolicy;
 1720#line 124
 1721struct mempolicy;
 1722#line 124
 1723struct mempolicy;
 1724#line 124 "include/linux/mm_types.h"
 1725struct vm_area_struct {
 1726   struct mm_struct *vm_mm ;
 1727   unsigned long vm_start ;
 1728   unsigned long vm_end ;
 1729   struct vm_area_struct *vm_next ;
 1730   struct vm_area_struct *vm_prev ;
 1731   pgprot_t vm_page_prot ;
 1732   unsigned long vm_flags ;
 1733   struct rb_node vm_rb ;
 1734   union __anonunion_shared_146 shared ;
 1735   struct list_head anon_vma_chain ;
 1736   struct anon_vma *anon_vma ;
 1737   struct vm_operations_struct  const  *vm_ops ;
 1738   unsigned long vm_pgoff ;
 1739   struct file *vm_file ;
 1740   void *vm_private_data ;
 1741   struct mempolicy *vm_policy ;
 1742};
 1743#line 187 "include/linux/mm_types.h"
 1744struct core_thread {
 1745   struct task_struct *task ;
 1746   struct core_thread *next ;
 1747};
 1748#line 193 "include/linux/mm_types.h"
 1749struct core_state {
 1750   atomic_t nr_threads ;
 1751   struct core_thread dumper ;
 1752   struct completion startup ;
 1753};
 1754#line 206 "include/linux/mm_types.h"
 1755struct mm_rss_stat {
 1756   atomic_long_t count[3U] ;
 1757};
 1758#line 219
 1759struct linux_binfmt;
 1760#line 219
 1761struct linux_binfmt;
 1762#line 219
 1763struct linux_binfmt;
 1764#line 219
 1765struct mmu_notifier_mm;
 1766#line 219
 1767struct mmu_notifier_mm;
 1768#line 219
 1769struct mmu_notifier_mm;
 1770#line 219 "include/linux/mm_types.h"
 1771struct mm_struct {
 1772   struct vm_area_struct *mmap ;
 1773   struct rb_root mm_rb ;
 1774   struct vm_area_struct *mmap_cache ;
 1775   unsigned long (*get_unmapped_area)(struct file * , unsigned long  , unsigned long  ,
 1776                                      unsigned long  , unsigned long  ) ;
 1777   void (*unmap_area)(struct mm_struct * , unsigned long  ) ;
 1778   unsigned long mmap_base ;
 1779   unsigned long task_size ;
 1780   unsigned long cached_hole_size ;
 1781   unsigned long free_area_cache ;
 1782   pgd_t *pgd ;
 1783   atomic_t mm_users ;
 1784   atomic_t mm_count ;
 1785   int map_count ;
 1786   spinlock_t page_table_lock ;
 1787   struct rw_semaphore mmap_sem ;
 1788   struct list_head mmlist ;
 1789   unsigned long hiwater_rss ;
 1790   unsigned long hiwater_vm ;
 1791   unsigned long total_vm ;
 1792   unsigned long locked_vm ;
 1793   unsigned long shared_vm ;
 1794   unsigned long exec_vm ;
 1795   unsigned long stack_vm ;
 1796   unsigned long reserved_vm ;
 1797   unsigned long def_flags ;
 1798   unsigned long nr_ptes ;
 1799   unsigned long start_code ;
 1800   unsigned long end_code ;
 1801   unsigned long start_data ;
 1802   unsigned long end_data ;
 1803   unsigned long start_brk ;
 1804   unsigned long brk ;
 1805   unsigned long start_stack ;
 1806   unsigned long arg_start ;
 1807   unsigned long arg_end ;
 1808   unsigned long env_start ;
 1809   unsigned long env_end ;
 1810   unsigned long saved_auxv[44U] ;
 1811   struct mm_rss_stat rss_stat ;
 1812   struct linux_binfmt *binfmt ;
 1813   cpumask_var_t cpu_vm_mask_var ;
 1814   mm_context_t context ;
 1815   unsigned int faultstamp ;
 1816   unsigned int token_priority ;
 1817   unsigned int last_interval ;
 1818   atomic_t oom_disable_count ;
 1819   unsigned long flags ;
 1820   struct core_state *core_state ;
 1821   spinlock_t ioctx_lock ;
 1822   struct hlist_head ioctx_list ;
 1823   struct task_struct *owner ;
 1824   struct file *exe_file ;
 1825   unsigned long num_exe_file_vmas ;
 1826   struct mmu_notifier_mm *mmu_notifier_mm ;
 1827   pgtable_t pmd_huge_pte ;
 1828   struct cpumask cpumask_allocation ;
 1829};
 1830#line 7 "include/asm-generic/cputime.h"
 1831typedef unsigned long cputime_t;
 1832#line 118 "include/linux/sem.h"
 1833struct sem_undo_list;
 1834#line 118
 1835struct sem_undo_list;
 1836#line 118
 1837struct sem_undo_list;
 1838#line 131 "include/linux/sem.h"
 1839struct sem_undo_list {
 1840   atomic_t refcnt ;
 1841   spinlock_t lock ;
 1842   struct list_head list_proc ;
 1843};
 1844#line 140 "include/linux/sem.h"
 1845struct sysv_sem {
 1846   struct sem_undo_list *undo_list ;
 1847};
 1848#line 149
 1849enum pid_type {
 1850    PIDTYPE_PID = 0,
 1851    PIDTYPE_PGID = 1,
 1852    PIDTYPE_SID = 2,
 1853    PIDTYPE_MAX = 3
 1854} ;
 1855#line 156
 1856struct pid_namespace;
 1857#line 156
 1858struct pid_namespace;
 1859#line 156
 1860struct pid_namespace;
 1861#line 156 "include/linux/sem.h"
 1862struct upid {
 1863   int nr ;
 1864   struct pid_namespace *ns ;
 1865   struct hlist_node pid_chain ;
 1866};
 1867#line 56 "include/linux/pid.h"
 1868struct pid {
 1869   atomic_t count ;
 1870   unsigned int level ;
 1871   struct hlist_head tasks[3U] ;
 1872   struct rcu_head rcu ;
 1873   struct upid numbers[1U] ;
 1874};
 1875#line 68 "include/linux/pid.h"
 1876struct pid_link {
 1877   struct hlist_node node ;
 1878   struct pid *pid ;
 1879};
 1880#line 175 "include/linux/pid.h"
 1881struct percpu_counter {
 1882   spinlock_t lock ;
 1883   s64 count ;
 1884   struct list_head list ;
 1885   s32 *counters ;
 1886};
 1887#line 90 "include/linux/proportions.h"
 1888struct prop_local_single {
 1889   unsigned long events ;
 1890   unsigned long period ;
 1891   int shift ;
 1892   spinlock_t lock ;
 1893};
 1894#line 10 "include/linux/seccomp.h"
 1895struct __anonstruct_seccomp_t_148 {
 1896   int mode ;
 1897};
 1898#line 10 "include/linux/seccomp.h"
 1899typedef struct __anonstruct_seccomp_t_148 seccomp_t;
 1900#line 427 "include/linux/rculist.h"
 1901struct plist_head {
 1902   struct list_head node_list ;
 1903   raw_spinlock_t *rawlock ;
 1904   spinlock_t *spinlock ;
 1905};
 1906#line 88 "include/linux/plist.h"
 1907struct plist_node {
 1908   int prio ;
 1909   struct list_head prio_list ;
 1910   struct list_head node_list ;
 1911};
 1912#line 38 "include/linux/rtmutex.h"
 1913struct rt_mutex_waiter;
 1914#line 38
 1915struct rt_mutex_waiter;
 1916#line 38
 1917struct rt_mutex_waiter;
 1918#line 38
 1919struct rt_mutex_waiter;
 1920#line 41 "include/linux/resource.h"
 1921struct rlimit {
 1922   unsigned long rlim_cur ;
 1923   unsigned long rlim_max ;
 1924};
 1925#line 85 "include/linux/resource.h"
 1926struct timerqueue_node {
 1927   struct rb_node node ;
 1928   ktime_t expires ;
 1929};
 1930#line 12 "include/linux/timerqueue.h"
 1931struct timerqueue_head {
 1932   struct rb_root head ;
 1933   struct timerqueue_node *next ;
 1934};
 1935#line 50
 1936struct hrtimer_clock_base;
 1937#line 50
 1938struct hrtimer_clock_base;
 1939#line 50
 1940struct hrtimer_clock_base;
 1941#line 50
 1942struct hrtimer_clock_base;
 1943#line 51
 1944struct hrtimer_cpu_base;
 1945#line 51
 1946struct hrtimer_cpu_base;
 1947#line 51
 1948struct hrtimer_cpu_base;
 1949#line 51
 1950struct hrtimer_cpu_base;
 1951#line 60
 1952enum hrtimer_restart {
 1953    HRTIMER_NORESTART = 0,
 1954    HRTIMER_RESTART = 1
 1955} ;
 1956#line 65 "include/linux/timerqueue.h"
 1957struct hrtimer {
 1958   struct timerqueue_node node ;
 1959   ktime_t _softexpires ;
 1960   enum hrtimer_restart (*function)(struct hrtimer * ) ;
 1961   struct hrtimer_clock_base *base ;
 1962   unsigned long state ;
 1963   int start_pid ;
 1964   void *start_site ;
 1965   char start_comm[16U] ;
 1966};
 1967#line 132 "include/linux/hrtimer.h"
 1968struct hrtimer_clock_base {
 1969   struct hrtimer_cpu_base *cpu_base ;
 1970   int index ;
 1971   clockid_t clockid ;
 1972   struct timerqueue_head active ;
 1973   ktime_t resolution ;
 1974   ktime_t (*get_time)(void) ;
 1975   ktime_t softirq_time ;
 1976   ktime_t offset ;
 1977};
 1978#line 162 "include/linux/hrtimer.h"
 1979struct hrtimer_cpu_base {
 1980   raw_spinlock_t lock ;
 1981   unsigned long active_bases ;
 1982   ktime_t expires_next ;
 1983   int hres_active ;
 1984   int hang_detected ;
 1985   unsigned long nr_events ;
 1986   unsigned long nr_retries ;
 1987   unsigned long nr_hangs ;
 1988   ktime_t max_hang_time ;
 1989   struct hrtimer_clock_base clock_base[3U] ;
 1990};
 1991#line 452 "include/linux/hrtimer.h"
 1992struct task_io_accounting {
 1993   u64 rchar ;
 1994   u64 wchar ;
 1995   u64 syscr ;
 1996   u64 syscw ;
 1997   u64 read_bytes ;
 1998   u64 write_bytes ;
 1999   u64 cancelled_write_bytes ;
 2000};
 2001#line 45 "include/linux/task_io_accounting.h"
 2002struct latency_record {
 2003   unsigned long backtrace[12U] ;
 2004   unsigned int count ;
 2005   unsigned long time ;
 2006   unsigned long max ;
 2007};
 2008#line 29 "include/linux/key.h"
 2009typedef int32_t key_serial_t;
 2010#line 32 "include/linux/key.h"
 2011typedef uint32_t key_perm_t;
 2012#line 33
 2013struct key;
 2014#line 33
 2015struct key;
 2016#line 33
 2017struct key;
 2018#line 33
 2019struct key;
 2020#line 34
 2021struct signal_struct;
 2022#line 34
 2023struct signal_struct;
 2024#line 34
 2025struct signal_struct;
 2026#line 34
 2027struct signal_struct;
 2028#line 35
 2029struct key_type;
 2030#line 35
 2031struct key_type;
 2032#line 35
 2033struct key_type;
 2034#line 35
 2035struct key_type;
 2036#line 37
 2037struct keyring_list;
 2038#line 37
 2039struct keyring_list;
 2040#line 37
 2041struct keyring_list;
 2042#line 37
 2043struct keyring_list;
 2044#line 115
 2045struct key_user;
 2046#line 115
 2047struct key_user;
 2048#line 115
 2049struct key_user;
 2050#line 115 "include/linux/key.h"
 2051union __anonunion_ldv_15180_149 {
 2052   time_t expiry ;
 2053   time_t revoked_at ;
 2054};
 2055#line 115 "include/linux/key.h"
 2056union __anonunion_type_data_150 {
 2057   struct list_head link ;
 2058   unsigned long x[2U] ;
 2059   void *p[2U] ;
 2060   int reject_error ;
 2061};
 2062#line 115 "include/linux/key.h"
 2063union __anonunion_payload_151 {
 2064   unsigned long value ;
 2065   void *rcudata ;
 2066   void *data ;
 2067   struct keyring_list *subscriptions ;
 2068};
 2069#line 115 "include/linux/key.h"
 2070struct key {
 2071   atomic_t usage ;
 2072   key_serial_t serial ;
 2073   struct rb_node serial_node ;
 2074   struct key_type *type ;
 2075   struct rw_semaphore sem ;
 2076   struct key_user *user ;
 2077   void *security ;
 2078   union __anonunion_ldv_15180_149 ldv_15180 ;
 2079   uid_t uid ;
 2080   gid_t gid ;
 2081   key_perm_t perm ;
 2082   unsigned short quotalen ;
 2083   unsigned short datalen ;
 2084   unsigned long flags ;
 2085   char *description ;
 2086   union __anonunion_type_data_150 type_data ;
 2087   union __anonunion_payload_151 payload ;
 2088};
 2089#line 310
 2090struct audit_context;
 2091#line 310
 2092struct audit_context;
 2093#line 310
 2094struct audit_context;
 2095#line 310
 2096struct audit_context;
 2097#line 27 "include/linux/selinux.h"
 2098struct inode;
 2099#line 27
 2100struct inode;
 2101#line 27
 2102struct inode;
 2103#line 27
 2104struct inode;
 2105#line 28 "include/linux/selinux.h"
 2106struct group_info {
 2107   atomic_t usage ;
 2108   int ngroups ;
 2109   int nblocks ;
 2110   gid_t small_block[32U] ;
 2111   gid_t *blocks[0U] ;
 2112};
 2113#line 77 "include/linux/cred.h"
 2114struct thread_group_cred {
 2115   atomic_t usage ;
 2116   pid_t tgid ;
 2117   spinlock_t lock ;
 2118   struct key *session_keyring ;
 2119   struct key *process_keyring ;
 2120   struct rcu_head rcu ;
 2121};
 2122#line 91 "include/linux/cred.h"
 2123struct cred {
 2124   atomic_t usage ;
 2125   atomic_t subscribers ;
 2126   void *put_addr ;
 2127   unsigned int magic ;
 2128   uid_t uid ;
 2129   gid_t gid ;
 2130   uid_t suid ;
 2131   gid_t sgid ;
 2132   uid_t euid ;
 2133   gid_t egid ;
 2134   uid_t fsuid ;
 2135   gid_t fsgid ;
 2136   unsigned int securebits ;
 2137   kernel_cap_t cap_inheritable ;
 2138   kernel_cap_t cap_permitted ;
 2139   kernel_cap_t cap_effective ;
 2140   kernel_cap_t cap_bset ;
 2141   unsigned char jit_keyring ;
 2142   struct key *thread_keyring ;
 2143   struct key *request_key_auth ;
 2144   struct thread_group_cred *tgcred ;
 2145   void *security ;
 2146   struct user_struct *user ;
 2147   struct user_namespace *user_ns ;
 2148   struct group_info *group_info ;
 2149   struct rcu_head rcu ;
 2150};
 2151#line 264
 2152struct futex_pi_state;
 2153#line 264
 2154struct futex_pi_state;
 2155#line 264
 2156struct futex_pi_state;
 2157#line 264
 2158struct futex_pi_state;
 2159#line 265
 2160struct robust_list_head;
 2161#line 265
 2162struct robust_list_head;
 2163#line 265
 2164struct robust_list_head;
 2165#line 265
 2166struct robust_list_head;
 2167#line 266
 2168struct bio_list;
 2169#line 266
 2170struct bio_list;
 2171#line 266
 2172struct bio_list;
 2173#line 266
 2174struct bio_list;
 2175#line 267
 2176struct fs_struct;
 2177#line 267
 2178struct fs_struct;
 2179#line 267
 2180struct fs_struct;
 2181#line 267
 2182struct fs_struct;
 2183#line 268
 2184struct perf_event_context;
 2185#line 268
 2186struct perf_event_context;
 2187#line 268
 2188struct perf_event_context;
 2189#line 268
 2190struct perf_event_context;
 2191#line 269
 2192struct blk_plug;
 2193#line 269
 2194struct blk_plug;
 2195#line 269
 2196struct blk_plug;
 2197#line 269
 2198struct blk_plug;
 2199#line 149 "include/linux/sched.h"
 2200struct cfs_rq;
 2201#line 149
 2202struct cfs_rq;
 2203#line 149
 2204struct cfs_rq;
 2205#line 149
 2206struct cfs_rq;
 2207#line 44 "include/linux/aio_abi.h"
 2208struct io_event {
 2209   __u64 data ;
 2210   __u64 obj ;
 2211   __s64 res ;
 2212   __s64 res2 ;
 2213};
 2214#line 106 "include/linux/aio_abi.h"
 2215struct iovec {
 2216   void *iov_base ;
 2217   __kernel_size_t iov_len ;
 2218};
 2219#line 54 "include/linux/uio.h"
 2220struct kioctx;
 2221#line 54
 2222struct kioctx;
 2223#line 54
 2224struct kioctx;
 2225#line 54
 2226struct kioctx;
 2227#line 55 "include/linux/uio.h"
 2228union __anonunion_ki_obj_152 {
 2229   void *user ;
 2230   struct task_struct *tsk ;
 2231};
 2232#line 55
 2233struct eventfd_ctx;
 2234#line 55
 2235struct eventfd_ctx;
 2236#line 55
 2237struct eventfd_ctx;
 2238#line 55 "include/linux/uio.h"
 2239struct kiocb {
 2240   struct list_head ki_run_list ;
 2241   unsigned long ki_flags ;
 2242   int ki_users ;
 2243   unsigned int ki_key ;
 2244   struct file *ki_filp ;
 2245   struct kioctx *ki_ctx ;
 2246   int (*ki_cancel)(struct kiocb * , struct io_event * ) ;
 2247   ssize_t (*ki_retry)(struct kiocb * ) ;
 2248   void (*ki_dtor)(struct kiocb * ) ;
 2249   union __anonunion_ki_obj_152 ki_obj ;
 2250   __u64 ki_user_data ;
 2251   loff_t ki_pos ;
 2252   void *private ;
 2253   unsigned short ki_opcode ;
 2254   size_t ki_nbytes ;
 2255   char *ki_buf ;
 2256   size_t ki_left ;
 2257   struct iovec ki_inline_vec ;
 2258   struct iovec *ki_iovec ;
 2259   unsigned long ki_nr_segs ;
 2260   unsigned long ki_cur_seg ;
 2261   struct list_head ki_list ;
 2262   struct eventfd_ctx *ki_eventfd ;
 2263};
 2264#line 161 "include/linux/aio.h"
 2265struct aio_ring_info {
 2266   unsigned long mmap_base ;
 2267   unsigned long mmap_size ;
 2268   struct page **ring_pages ;
 2269   spinlock_t ring_lock ;
 2270   long nr_pages ;
 2271   unsigned int nr ;
 2272   unsigned int tail ;
 2273   struct page *internal_pages[8U] ;
 2274};
 2275#line 177 "include/linux/aio.h"
 2276struct kioctx {
 2277   atomic_t users ;
 2278   int dead ;
 2279   struct mm_struct *mm ;
 2280   unsigned long user_id ;
 2281   struct hlist_node list ;
 2282   wait_queue_head_t wait ;
 2283   spinlock_t ctx_lock ;
 2284   int reqs_active ;
 2285   struct list_head active_reqs ;
 2286   struct list_head run_list ;
 2287   unsigned int max_reqs ;
 2288   struct aio_ring_info ring_info ;
 2289   struct delayed_work wq ;
 2290   struct rcu_head rcu_head ;
 2291};
 2292#line 404 "include/linux/sched.h"
 2293struct sighand_struct {
 2294   atomic_t count ;
 2295   struct k_sigaction action[64U] ;
 2296   spinlock_t siglock ;
 2297   wait_queue_head_t signalfd_wqh ;
 2298};
 2299#line 447 "include/linux/sched.h"
 2300struct pacct_struct {
 2301   int ac_flag ;
 2302   long ac_exitcode ;
 2303   unsigned long ac_mem ;
 2304   cputime_t ac_utime ;
 2305   cputime_t ac_stime ;
 2306   unsigned long ac_minflt ;
 2307   unsigned long ac_majflt ;
 2308};
 2309#line 455 "include/linux/sched.h"
 2310struct cpu_itimer {
 2311   cputime_t expires ;
 2312   cputime_t incr ;
 2313   u32 error ;
 2314   u32 incr_error ;
 2315};
 2316#line 462 "include/linux/sched.h"
 2317struct task_cputime {
 2318   cputime_t utime ;
 2319   cputime_t stime ;
 2320   unsigned long long sum_exec_runtime ;
 2321};
 2322#line 479 "include/linux/sched.h"
 2323struct thread_group_cputimer {
 2324   struct task_cputime cputime ;
 2325   int running ;
 2326   spinlock_t lock ;
 2327};
 2328#line 515
 2329struct autogroup;
 2330#line 515
 2331struct autogroup;
 2332#line 515
 2333struct autogroup;
 2334#line 515
 2335struct autogroup;
 2336#line 516
 2337struct tty_struct;
 2338#line 516
 2339struct tty_struct;
 2340#line 516
 2341struct tty_struct;
 2342#line 516
 2343struct taskstats;
 2344#line 516
 2345struct taskstats;
 2346#line 516
 2347struct taskstats;
 2348#line 516
 2349struct tty_audit_buf;
 2350#line 516
 2351struct tty_audit_buf;
 2352#line 516
 2353struct tty_audit_buf;
 2354#line 516 "include/linux/sched.h"
 2355struct signal_struct {
 2356   atomic_t sigcnt ;
 2357   atomic_t live ;
 2358   int nr_threads ;
 2359   wait_queue_head_t wait_chldexit ;
 2360   struct task_struct *curr_target ;
 2361   struct sigpending shared_pending ;
 2362   int group_exit_code ;
 2363   int notify_count ;
 2364   struct task_struct *group_exit_task ;
 2365   int group_stop_count ;
 2366   unsigned int flags ;
 2367   struct list_head posix_timers ;
 2368   struct hrtimer real_timer ;
 2369   struct pid *leader_pid ;
 2370   ktime_t it_real_incr ;
 2371   struct cpu_itimer it[2U] ;
 2372   struct thread_group_cputimer cputimer ;
 2373   struct task_cputime cputime_expires ;
 2374   struct list_head cpu_timers[3U] ;
 2375   struct pid *tty_old_pgrp ;
 2376   int leader ;
 2377   struct tty_struct *tty ;
 2378   struct autogroup *autogroup ;
 2379   cputime_t utime ;
 2380   cputime_t stime ;
 2381   cputime_t cutime ;
 2382   cputime_t cstime ;
 2383   cputime_t gtime ;
 2384   cputime_t cgtime ;
 2385   cputime_t prev_utime ;
 2386   cputime_t prev_stime ;
 2387   unsigned long nvcsw ;
 2388   unsigned long nivcsw ;
 2389   unsigned long cnvcsw ;
 2390   unsigned long cnivcsw ;
 2391   unsigned long min_flt ;
 2392   unsigned long maj_flt ;
 2393   unsigned long cmin_flt ;
 2394   unsigned long cmaj_flt ;
 2395   unsigned long inblock ;
 2396   unsigned long oublock ;
 2397   unsigned long cinblock ;
 2398   unsigned long coublock ;
 2399   unsigned long maxrss ;
 2400   unsigned long cmaxrss ;
 2401   struct task_io_accounting ioac ;
 2402   unsigned long long sum_sched_runtime ;
 2403   struct rlimit rlim[16U] ;
 2404   struct pacct_struct pacct ;
 2405   struct taskstats *stats ;
 2406   unsigned int audit_tty ;
 2407   struct tty_audit_buf *tty_audit_buf ;
 2408   struct rw_semaphore threadgroup_fork_lock ;
 2409   int oom_adj ;
 2410   int oom_score_adj ;
 2411   int oom_score_adj_min ;
 2412   struct mutex cred_guard_mutex ;
 2413};
 2414#line 683 "include/linux/sched.h"
 2415struct user_struct {
 2416   atomic_t __count ;
 2417   atomic_t processes ;
 2418   atomic_t files ;
 2419   atomic_t sigpending ;
 2420   atomic_t inotify_watches ;
 2421   atomic_t inotify_devs ;
 2422   atomic_t fanotify_listeners ;
 2423   atomic_long_t epoll_watches ;
 2424   unsigned long mq_bytes ;
 2425   unsigned long locked_shm ;
 2426   struct key *uid_keyring ;
 2427   struct key *session_keyring ;
 2428   struct hlist_node uidhash_node ;
 2429   uid_t uid ;
 2430   struct user_namespace *user_ns ;
 2431   atomic_long_t locked_vm ;
 2432};
 2433#line 728
 2434struct backing_dev_info;
 2435#line 728
 2436struct backing_dev_info;
 2437#line 728
 2438struct backing_dev_info;
 2439#line 728
 2440struct backing_dev_info;
 2441#line 729
 2442struct reclaim_state;
 2443#line 729
 2444struct reclaim_state;
 2445#line 729
 2446struct reclaim_state;
 2447#line 729
 2448struct reclaim_state;
 2449#line 730 "include/linux/sched.h"
 2450struct sched_info {
 2451   unsigned long pcount ;
 2452   unsigned long long run_delay ;
 2453   unsigned long long last_arrival ;
 2454   unsigned long long last_queued ;
 2455};
 2456#line 744 "include/linux/sched.h"
 2457struct task_delay_info {
 2458   spinlock_t lock ;
 2459   unsigned int flags ;
 2460   struct timespec blkio_start ;
 2461   struct timespec blkio_end ;
 2462   u64 blkio_delay ;
 2463   u64 swapin_delay ;
 2464   u32 blkio_count ;
 2465   u32 swapin_count ;
 2466   struct timespec freepages_start ;
 2467   struct timespec freepages_end ;
 2468   u64 freepages_delay ;
 2469   u32 freepages_count ;
 2470};
 2471#line 1037
 2472struct io_context;
 2473#line 1037
 2474struct io_context;
 2475#line 1037
 2476struct io_context;
 2477#line 1037
 2478struct io_context;
 2479#line 1059
 2480struct pipe_inode_info;
 2481#line 1059
 2482struct pipe_inode_info;
 2483#line 1059
 2484struct pipe_inode_info;
 2485#line 1059
 2486struct pipe_inode_info;
 2487#line 1061
 2488struct rq;
 2489#line 1061
 2490struct rq;
 2491#line 1061
 2492struct rq;
 2493#line 1061
 2494struct rq;
 2495#line 1062 "include/linux/sched.h"
 2496struct sched_class {
 2497   struct sched_class  const  *next ;
 2498   void (*enqueue_task)(struct rq * , struct task_struct * , int  ) ;
 2499   void (*dequeue_task)(struct rq * , struct task_struct * , int  ) ;
 2500   void (*yield_task)(struct rq * ) ;
 2501   bool (*yield_to_task)(struct rq * , struct task_struct * , bool  ) ;
 2502   void (*check_preempt_curr)(struct rq * , struct task_struct * , int  ) ;
 2503   struct task_struct *(*pick_next_task)(struct rq * ) ;
 2504   void (*put_prev_task)(struct rq * , struct task_struct * ) ;
 2505   int (*select_task_rq)(struct task_struct * , int  , int  ) ;
 2506   void (*pre_schedule)(struct rq * , struct task_struct * ) ;
 2507   void (*post_schedule)(struct rq * ) ;
 2508   void (*task_waking)(struct task_struct * ) ;
 2509   void (*task_woken)(struct rq * , struct task_struct * ) ;
 2510   void (*set_cpus_allowed)(struct task_struct * , struct cpumask  const  * ) ;
 2511   void (*rq_online)(struct rq * ) ;
 2512   void (*rq_offline)(struct rq * ) ;
 2513   void (*set_curr_task)(struct rq * ) ;
 2514   void (*task_tick)(struct rq * , struct task_struct * , int  ) ;
 2515   void (*task_fork)(struct task_struct * ) ;
 2516   void (*switched_from)(struct rq * , struct task_struct * ) ;
 2517   void (*switched_to)(struct rq * , struct task_struct * ) ;
 2518   void (*prio_changed)(struct rq * , struct task_struct * , int  ) ;
 2519   unsigned int (*get_rr_interval)(struct rq * , struct task_struct * ) ;
 2520   void (*task_move_group)(struct task_struct * , int  ) ;
 2521};
 2522#line 1127 "include/linux/sched.h"
 2523struct load_weight {
 2524   unsigned long weight ;
 2525   unsigned long inv_weight ;
 2526};
 2527#line 1132 "include/linux/sched.h"
 2528struct sched_statistics {
 2529   u64 wait_start ;
 2530   u64 wait_max ;
 2531   u64 wait_count ;
 2532   u64 wait_sum ;
 2533   u64 iowait_count ;
 2534   u64 iowait_sum ;
 2535   u64 sleep_start ;
 2536   u64 sleep_max ;
 2537   s64 sum_sleep_runtime ;
 2538   u64 block_start ;
 2539   u64 block_max ;
 2540   u64 exec_max ;
 2541   u64 slice_max ;
 2542   u64 nr_migrations_cold ;
 2543   u64 nr_failed_migrations_affine ;
 2544   u64 nr_failed_migrations_running ;
 2545   u64 nr_failed_migrations_hot ;
 2546   u64 nr_forced_migrations ;
 2547   u64 nr_wakeups ;
 2548   u64 nr_wakeups_sync ;
 2549   u64 nr_wakeups_migrate ;
 2550   u64 nr_wakeups_local ;
 2551   u64 nr_wakeups_remote ;
 2552   u64 nr_wakeups_affine ;
 2553   u64 nr_wakeups_affine_attempts ;
 2554   u64 nr_wakeups_passive ;
 2555   u64 nr_wakeups_idle ;
 2556};
 2557#line 1167 "include/linux/sched.h"
 2558struct sched_entity {
 2559   struct load_weight load ;
 2560   struct rb_node run_node ;
 2561   struct list_head group_node ;
 2562   unsigned int on_rq ;
 2563   u64 exec_start ;
 2564   u64 sum_exec_runtime ;
 2565   u64 vruntime ;
 2566   u64 prev_sum_exec_runtime ;
 2567   u64 nr_migrations ;
 2568   struct sched_statistics statistics ;
 2569   struct sched_entity *parent ;
 2570   struct cfs_rq *cfs_rq ;
 2571   struct cfs_rq *my_q ;
 2572};
 2573#line 1193
 2574struct rt_rq;
 2575#line 1193
 2576struct rt_rq;
 2577#line 1193
 2578struct rt_rq;
 2579#line 1193 "include/linux/sched.h"
 2580struct sched_rt_entity {
 2581   struct list_head run_list ;
 2582   unsigned long timeout ;
 2583   unsigned int time_slice ;
 2584   int nr_cpus_allowed ;
 2585   struct sched_rt_entity *back ;
 2586   struct sched_rt_entity *parent ;
 2587   struct rt_rq *rt_rq ;
 2588   struct rt_rq *my_q ;
 2589};
 2590#line 1217
 2591struct mem_cgroup;
 2592#line 1217
 2593struct mem_cgroup;
 2594#line 1217
 2595struct mem_cgroup;
 2596#line 1217 "include/linux/sched.h"
 2597struct memcg_batch_info {
 2598   int do_batch ;
 2599   struct mem_cgroup *memcg ;
 2600   unsigned long nr_pages ;
 2601   unsigned long memsw_nr_pages ;
 2602};
 2603#line 1569
 2604struct files_struct;
 2605#line 1569
 2606struct files_struct;
 2607#line 1569
 2608struct files_struct;
 2609#line 1569
 2610struct irqaction;
 2611#line 1569
 2612struct irqaction;
 2613#line 1569
 2614struct irqaction;
 2615#line 1569
 2616struct css_set;
 2617#line 1569
 2618struct css_set;
 2619#line 1569
 2620struct css_set;
 2621#line 1569
 2622struct compat_robust_list_head;
 2623#line 1569
 2624struct compat_robust_list_head;
 2625#line 1569
 2626struct compat_robust_list_head;
 2627#line 1569
 2628struct ftrace_ret_stack;
 2629#line 1569
 2630struct ftrace_ret_stack;
 2631#line 1569
 2632struct ftrace_ret_stack;
 2633#line 1569 "include/linux/sched.h"
 2634struct task_struct {
 2635   long volatile   state ;
 2636   void *stack ;
 2637   atomic_t usage ;
 2638   unsigned int flags ;
 2639   unsigned int ptrace ;
 2640   struct task_struct *wake_entry ;
 2641   int on_cpu ;
 2642   int on_rq ;
 2643   int prio ;
 2644   int static_prio ;
 2645   int normal_prio ;
 2646   unsigned int rt_priority ;
 2647   struct sched_class  const  *sched_class ;
 2648   struct sched_entity se ;
 2649   struct sched_rt_entity rt ;
 2650   struct hlist_head preempt_notifiers ;
 2651   unsigned char fpu_counter ;
 2652   unsigned int btrace_seq ;
 2653   unsigned int policy ;
 2654   cpumask_t cpus_allowed ;
 2655   struct sched_info sched_info ;
 2656   struct list_head tasks ;
 2657   struct plist_node pushable_tasks ;
 2658   struct mm_struct *mm ;
 2659   struct mm_struct *active_mm ;
 2660   unsigned char brk_randomized : 1 ;
 2661   int exit_state ;
 2662   int exit_code ;
 2663   int exit_signal ;
 2664   int pdeath_signal ;
 2665   unsigned int group_stop ;
 2666   unsigned int personality ;
 2667   unsigned char did_exec : 1 ;
 2668   unsigned char in_execve : 1 ;
 2669   unsigned char in_iowait : 1 ;
 2670   unsigned char sched_reset_on_fork : 1 ;
 2671   unsigned char sched_contributes_to_load : 1 ;
 2672   pid_t pid ;
 2673   pid_t tgid ;
 2674   unsigned long stack_canary ;
 2675   struct task_struct *real_parent ;
 2676   struct task_struct *parent ;
 2677   struct list_head children ;
 2678   struct list_head sibling ;
 2679   struct task_struct *group_leader ;
 2680   struct list_head ptraced ;
 2681   struct list_head ptrace_entry ;
 2682   struct pid_link pids[3U] ;
 2683   struct list_head thread_group ;
 2684   struct completion *vfork_done ;
 2685   int *set_child_tid ;
 2686   int *clear_child_tid ;
 2687   cputime_t utime ;
 2688   cputime_t stime ;
 2689   cputime_t utimescaled ;
 2690   cputime_t stimescaled ;
 2691   cputime_t gtime ;
 2692   cputime_t prev_utime ;
 2693   cputime_t prev_stime ;
 2694   unsigned long nvcsw ;
 2695   unsigned long nivcsw ;
 2696   struct timespec start_time ;
 2697   struct timespec real_start_time ;
 2698   unsigned long min_flt ;
 2699   unsigned long maj_flt ;
 2700   struct task_cputime cputime_expires ;
 2701   struct list_head cpu_timers[3U] ;
 2702   struct cred  const  *real_cred ;
 2703   struct cred  const  *cred ;
 2704   struct cred *replacement_session_keyring ;
 2705   char comm[16U] ;
 2706   int link_count ;
 2707   int total_link_count ;
 2708   struct sysv_sem sysvsem ;
 2709   unsigned long last_switch_count ;
 2710   struct thread_struct thread ;
 2711   struct fs_struct *fs ;
 2712   struct files_struct *files ;
 2713   struct nsproxy *nsproxy ;
 2714   struct signal_struct *signal ;
 2715   struct sighand_struct *sighand ;
 2716   sigset_t blocked ;
 2717   sigset_t real_blocked ;
 2718   sigset_t saved_sigmask ;
 2719   struct sigpending pending ;
 2720   unsigned long sas_ss_sp ;
 2721   size_t sas_ss_size ;
 2722   int (*notifier)(void * ) ;
 2723   void *notifier_data ;
 2724   sigset_t *notifier_mask ;
 2725   struct audit_context *audit_context ;
 2726   uid_t loginuid ;
 2727   unsigned int sessionid ;
 2728   seccomp_t seccomp ;
 2729   u32 parent_exec_id ;
 2730   u32 self_exec_id ;
 2731   spinlock_t alloc_lock ;
 2732   struct irqaction *irqaction ;
 2733   raw_spinlock_t pi_lock ;
 2734   struct plist_head pi_waiters ;
 2735   struct rt_mutex_waiter *pi_blocked_on ;
 2736   struct mutex_waiter *blocked_on ;
 2737   unsigned int irq_events ;
 2738   unsigned long hardirq_enable_ip ;
 2739   unsigned long hardirq_disable_ip ;
 2740   unsigned int hardirq_enable_event ;
 2741   unsigned int hardirq_disable_event ;
 2742   int hardirqs_enabled ;
 2743   int hardirq_context ;
 2744   unsigned long softirq_disable_ip ;
 2745   unsigned long softirq_enable_ip ;
 2746   unsigned int softirq_disable_event ;
 2747   unsigned int softirq_enable_event ;
 2748   int softirqs_enabled ;
 2749   int softirq_context ;
 2750   u64 curr_chain_key ;
 2751   int lockdep_depth ;
 2752   unsigned int lockdep_recursion ;
 2753   struct held_lock held_locks[48U] ;
 2754   gfp_t lockdep_reclaim_gfp ;
 2755   void *journal_info ;
 2756   struct bio_list *bio_list ;
 2757   struct blk_plug *plug ;
 2758   struct reclaim_state *reclaim_state ;
 2759   struct backing_dev_info *backing_dev_info ;
 2760   struct io_context *io_context ;
 2761   unsigned long ptrace_message ;
 2762   siginfo_t *last_siginfo ;
 2763   struct task_io_accounting ioac ;
 2764   u64 acct_rss_mem1 ;
 2765   u64 acct_vm_mem1 ;
 2766   cputime_t acct_timexpd ;
 2767   nodemask_t mems_allowed ;
 2768   int mems_allowed_change_disable ;
 2769   int cpuset_mem_spread_rotor ;
 2770   int cpuset_slab_spread_rotor ;
 2771   struct css_set *cgroups ;
 2772   struct list_head cg_list ;
 2773   struct robust_list_head *robust_list ;
 2774   struct compat_robust_list_head *compat_robust_list ;
 2775   struct list_head pi_state_list ;
 2776   struct futex_pi_state *pi_state_cache ;
 2777   struct perf_event_context *perf_event_ctxp[2U] ;
 2778   struct mutex perf_event_mutex ;
 2779   struct list_head perf_event_list ;
 2780   struct mempolicy *mempolicy ;
 2781   short il_next ;
 2782   short pref_node_fork ;
 2783   atomic_t fs_excl ;
 2784   struct rcu_head rcu ;
 2785   struct pipe_inode_info *splice_pipe ;
 2786   struct task_delay_info *delays ;
 2787   int make_it_fail ;
 2788   struct prop_local_single dirties ;
 2789   int latency_record_count ;
 2790   struct latency_record latency_record[32U] ;
 2791   unsigned long timer_slack_ns ;
 2792   unsigned long default_timer_slack_ns ;
 2793   struct list_head *scm_work_list ;
 2794   int curr_ret_stack ;
 2795   struct ftrace_ret_stack *ret_stack ;
 2796   unsigned long long ftrace_timestamp ;
 2797   atomic_t trace_overrun ;
 2798   atomic_t tracing_graph_pause ;
 2799   unsigned long trace ;
 2800   unsigned long trace_recursion ;
 2801   struct memcg_batch_info memcg_batch ;
 2802   atomic_t ptrace_bp_refcnt ;
 2803};
 2804#line 2698
 2805enum irqreturn {
 2806    IRQ_NONE = 0,
 2807    IRQ_HANDLED = 1,
 2808    IRQ_WAKE_THREAD = 2
 2809} ;
 2810#line 16 "include/linux/irqreturn.h"
 2811typedef enum irqreturn irqreturn_t;
 2812#line 331 "include/linux/irq.h"
 2813struct proc_dir_entry;
 2814#line 331
 2815struct proc_dir_entry;
 2816#line 331
 2817struct proc_dir_entry;
 2818#line 331
 2819struct proc_dir_entry;
 2820#line 41 "include/asm-generic/sections.h"
 2821struct exception_table_entry {
 2822   unsigned long insn ;
 2823   unsigned long fixup ;
 2824};
 2825#line 91 "include/linux/interrupt.h"
 2826struct irqaction {
 2827   irqreturn_t (*handler)(int  , void * ) ;
 2828   unsigned long flags ;
 2829   void *dev_id ;
 2830   struct irqaction *next ;
 2831   int irq ;
 2832   irqreturn_t (*thread_fn)(int  , void * ) ;
 2833   struct task_struct *thread ;
 2834   unsigned long thread_flags ;
 2835   unsigned long thread_mask ;
 2836   char const   *name ;
 2837   struct proc_dir_entry *dir ;
 2838};
 2839#line 12 "include/linux/mod_devicetable.h"
 2840typedef unsigned long kernel_ulong_t;
 2841#line 13 "include/linux/mod_devicetable.h"
 2842struct pci_device_id {
 2843   __u32 vendor ;
 2844   __u32 device ;
 2845   __u32 subvendor ;
 2846   __u32 subdevice ;
 2847   __u32 class ;
 2848   __u32 class_mask ;
 2849   kernel_ulong_t driver_data ;
 2850};
 2851#line 215 "include/linux/mod_devicetable.h"
 2852struct of_device_id {
 2853   char name[32U] ;
 2854   char type[32U] ;
 2855   char compatible[128U] ;
 2856   void *data ;
 2857};
 2858#line 535
 2859struct klist_node;
 2860#line 535
 2861struct klist_node;
 2862#line 535
 2863struct klist_node;
 2864#line 535
 2865struct klist_node;
 2866#line 37 "include/linux/klist.h"
 2867struct klist_node {
 2868   void *n_klist ;
 2869   struct list_head n_node ;
 2870   struct kref n_ref ;
 2871};
 2872#line 67
 2873struct dma_map_ops;
 2874#line 67
 2875struct dma_map_ops;
 2876#line 67
 2877struct dma_map_ops;
 2878#line 67 "include/linux/klist.h"
 2879struct dev_archdata {
 2880   void *acpi_handle ;
 2881   struct dma_map_ops *dma_ops ;
 2882   void *iommu ;
 2883};
 2884#line 17 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/device.h"
 2885struct device_private;
 2886#line 17
 2887struct device_private;
 2888#line 17
 2889struct device_private;
 2890#line 17
 2891struct device_private;
 2892#line 18
 2893struct device_driver;
 2894#line 18
 2895struct device_driver;
 2896#line 18
 2897struct device_driver;
 2898#line 18
 2899struct device_driver;
 2900#line 19
 2901struct driver_private;
 2902#line 19
 2903struct driver_private;
 2904#line 19
 2905struct driver_private;
 2906#line 19
 2907struct driver_private;
 2908#line 20
 2909struct class;
 2910#line 20
 2911struct class;
 2912#line 20
 2913struct class;
 2914#line 20
 2915struct class;
 2916#line 21
 2917struct subsys_private;
 2918#line 21
 2919struct subsys_private;
 2920#line 21
 2921struct subsys_private;
 2922#line 21
 2923struct subsys_private;
 2924#line 22
 2925struct bus_type;
 2926#line 22
 2927struct bus_type;
 2928#line 22
 2929struct bus_type;
 2930#line 22
 2931struct bus_type;
 2932#line 23
 2933struct device_node;
 2934#line 23
 2935struct device_node;
 2936#line 23
 2937struct device_node;
 2938#line 23
 2939struct device_node;
 2940#line 24 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/device.h"
 2941struct bus_attribute {
 2942   struct attribute attr ;
 2943   ssize_t (*show)(struct bus_type * , char * ) ;
 2944   ssize_t (*store)(struct bus_type * , char const   * , size_t  ) ;
 2945};
 2946#line 49 "include/linux/device.h"
 2947struct device_attribute;
 2948#line 49
 2949struct device_attribute;
 2950#line 49
 2951struct device_attribute;
 2952#line 49
 2953struct driver_attribute;
 2954#line 49
 2955struct driver_attribute;
 2956#line 49
 2957struct driver_attribute;
 2958#line 49 "include/linux/device.h"
 2959struct bus_type {
 2960   char const   *name ;
 2961   struct bus_attribute *bus_attrs ;
 2962   struct device_attribute *dev_attrs ;
 2963   struct driver_attribute *drv_attrs ;
 2964   int (*match)(struct device * , struct device_driver * ) ;
 2965   int (*uevent)(struct device * , struct kobj_uevent_env * ) ;
 2966   int (*probe)(struct device * ) ;
 2967   int (*remove)(struct device * ) ;
 2968   void (*shutdown)(struct device * ) ;
 2969   int (*suspend)(struct device * , pm_message_t  ) ;
 2970   int (*resume)(struct device * ) ;
 2971   struct dev_pm_ops  const  *pm ;
 2972   struct subsys_private *p ;
 2973};
 2974#line 153 "include/linux/device.h"
 2975struct device_driver {
 2976   char const   *name ;
 2977   struct bus_type *bus ;
 2978   struct module *owner ;
 2979   char const   *mod_name ;
 2980   bool suppress_bind_attrs ;
 2981   struct of_device_id  const  *of_match_table ;
 2982   int (*probe)(struct device * ) ;
 2983   int (*remove)(struct device * ) ;
 2984   void (*shutdown)(struct device * ) ;
 2985   int (*suspend)(struct device * , pm_message_t  ) ;
 2986   int (*resume)(struct device * ) ;
 2987   struct attribute_group  const  **groups ;
 2988   struct dev_pm_ops  const  *pm ;
 2989   struct driver_private *p ;
 2990};
 2991#line 218 "include/linux/device.h"
 2992struct driver_attribute {
 2993   struct attribute attr ;
 2994   ssize_t (*show)(struct device_driver * , char * ) ;
 2995   ssize_t (*store)(struct device_driver * , char const   * , size_t  ) ;
 2996};
 2997#line 248
 2998struct class_attribute;
 2999#line 248
 3000struct class_attribute;
 3001#line 248
 3002struct class_attribute;
 3003#line 248 "include/linux/device.h"
 3004struct class {
 3005   char const   *name ;
 3006   struct module *owner ;
 3007   struct class_attribute *class_attrs ;
 3008   struct device_attribute *dev_attrs ;
 3009   struct bin_attribute *dev_bin_attrs ;
 3010   struct kobject *dev_kobj ;
 3011   int (*dev_uevent)(struct device * , struct kobj_uevent_env * ) ;
 3012   char *(*devnode)(struct device * , mode_t * ) ;
 3013   void (*class_release)(struct class * ) ;
 3014   void (*dev_release)(struct device * ) ;
 3015   int (*suspend)(struct device * , pm_message_t  ) ;
 3016   int (*resume)(struct device * ) ;
 3017   struct kobj_ns_type_operations  const  *ns_type ;
 3018   void const   *(*namespace)(struct device * ) ;
 3019   struct dev_pm_ops  const  *pm ;
 3020   struct subsys_private *p ;
 3021};
 3022#line 305
 3023struct device_type;
 3024#line 305
 3025struct device_type;
 3026#line 305
 3027struct device_type;
 3028#line 344 "include/linux/device.h"
 3029struct class_attribute {
 3030   struct attribute attr ;
 3031   ssize_t (*show)(struct class * , struct class_attribute * , char * ) ;
 3032   ssize_t (*store)(struct class * , struct class_attribute * , char const   * , size_t  ) ;
 3033};
 3034#line 395 "include/linux/device.h"
 3035struct device_type {
 3036   char const   *name ;
 3037   struct attribute_group  const  **groups ;
 3038   int (*uevent)(struct device * , struct kobj_uevent_env * ) ;
 3039   char *(*devnode)(struct device * , mode_t * ) ;
 3040   void (*release)(struct device * ) ;
 3041   struct dev_pm_ops  const  *pm ;
 3042};
 3043#line 422 "include/linux/device.h"
 3044struct device_attribute {
 3045   struct attribute attr ;
 3046   ssize_t (*show)(struct device * , struct device_attribute * , char * ) ;
 3047   ssize_t (*store)(struct device * , struct device_attribute * , char const   * ,
 3048                    size_t  ) ;
 3049};
 3050#line 483 "include/linux/device.h"
 3051struct device_dma_parameters {
 3052   unsigned int max_segment_size ;
 3053   unsigned long segment_boundary_mask ;
 3054};
 3055#line 492
 3056struct dma_coherent_mem;
 3057#line 492
 3058struct dma_coherent_mem;
 3059#line 492
 3060struct dma_coherent_mem;
 3061#line 492 "include/linux/device.h"
 3062struct device {
 3063   struct device *parent ;
 3064   struct device_private *p ;
 3065   struct kobject kobj ;
 3066   char const   *init_name ;
 3067   struct device_type  const  *type ;
 3068   struct mutex mutex ;
 3069   struct bus_type *bus ;
 3070   struct device_driver *driver ;
 3071   void *platform_data ;
 3072   struct dev_pm_info power ;
 3073   struct dev_power_domain *pwr_domain ;
 3074   int numa_node ;
 3075   u64 *dma_mask ;
 3076   u64 coherent_dma_mask ;
 3077   struct device_dma_parameters *dma_parms ;
 3078   struct list_head dma_pools ;
 3079   struct dma_coherent_mem *dma_mem ;
 3080   struct dev_archdata archdata ;
 3081   struct device_node *of_node ;
 3082   dev_t devt ;
 3083   spinlock_t devres_lock ;
 3084   struct list_head devres_head ;
 3085   struct klist_node knode_class ;
 3086   struct class *class ;
 3087   struct attribute_group  const  **groups ;
 3088   void (*release)(struct device * ) ;
 3089};
 3090#line 604 "include/linux/device.h"
 3091struct wakeup_source {
 3092   char *name ;
 3093   struct list_head entry ;
 3094   spinlock_t lock ;
 3095   struct timer_list timer ;
 3096   unsigned long timer_expires ;
 3097   ktime_t total_time ;
 3098   ktime_t max_time ;
 3099   ktime_t last_time ;
 3100   unsigned long event_count ;
 3101   unsigned long active_count ;
 3102   unsigned long relax_count ;
 3103   unsigned long hit_count ;
 3104   unsigned char active : 1 ;
 3105};
 3106#line 69 "include/linux/io.h"
 3107struct hotplug_slot;
 3108#line 69
 3109struct hotplug_slot;
 3110#line 69
 3111struct hotplug_slot;
 3112#line 69 "include/linux/io.h"
 3113struct pci_slot {
 3114   struct pci_bus *bus ;
 3115   struct list_head list ;
 3116   struct hotplug_slot *hotplug ;
 3117   unsigned char number ;
 3118   struct kobject kobj ;
 3119};
 3120#line 117 "include/linux/pci.h"
 3121typedef int pci_power_t;
 3122#line 143 "include/linux/pci.h"
 3123typedef unsigned int pci_channel_state_t;
 3124#line 144
 3125enum pci_channel_state {
 3126    pci_channel_io_normal = 1,
 3127    pci_channel_io_frozen = 2,
 3128    pci_channel_io_perm_failure = 3
 3129} ;
 3130#line 169 "include/linux/pci.h"
 3131typedef unsigned short pci_dev_flags_t;
 3132#line 184 "include/linux/pci.h"
 3133typedef unsigned short pci_bus_flags_t;
 3134#line 227
 3135struct pcie_link_state;
 3136#line 227
 3137struct pcie_link_state;
 3138#line 227
 3139struct pcie_link_state;
 3140#line 227
 3141struct pcie_link_state;
 3142#line 228
 3143struct pci_vpd;
 3144#line 228
 3145struct pci_vpd;
 3146#line 228
 3147struct pci_vpd;
 3148#line 228
 3149struct pci_vpd;
 3150#line 229
 3151struct pci_sriov;
 3152#line 229
 3153struct pci_sriov;
 3154#line 229
 3155struct pci_sriov;
 3156#line 229
 3157struct pci_sriov;
 3158#line 230
 3159struct pci_ats;
 3160#line 230
 3161struct pci_ats;
 3162#line 230
 3163struct pci_ats;
 3164#line 230
 3165struct pci_ats;
 3166#line 231
 3167struct pci_driver;
 3168#line 231
 3169struct pci_driver;
 3170#line 231
 3171struct pci_driver;
 3172#line 231 "include/linux/pci.h"
 3173union __anonunion_ldv_19516_156 {
 3174   struct pci_sriov *sriov ;
 3175   struct pci_dev *physfn ;
 3176};
 3177#line 231 "include/linux/pci.h"
 3178struct pci_dev {
 3179   struct list_head bus_list ;
 3180   struct pci_bus *bus ;
 3181   struct pci_bus *subordinate ;
 3182   void *sysdata ;
 3183   struct proc_dir_entry *procent ;
 3184   struct pci_slot *slot ;
 3185   unsigned int devfn ;
 3186   unsigned short vendor ;
 3187   unsigned short device ;
 3188   unsigned short subsystem_vendor ;
 3189   unsigned short subsystem_device ;
 3190   unsigned int class ;
 3191   u8 revision ;
 3192   u8 hdr_type ;
 3193   u8 pcie_cap ;
 3194   u8 pcie_type ;
 3195   u8 rom_base_reg ;
 3196   u8 pin ;
 3197   struct pci_driver *driver ;
 3198   u64 dma_mask ;
 3199   struct device_dma_parameters dma_parms ;
 3200   pci_power_t current_state ;
 3201   int pm_cap ;
 3202   unsigned char pme_support : 5 ;
 3203   unsigned char pme_interrupt : 1 ;
 3204   unsigned char d1_support : 1 ;
 3205   unsigned char d2_support : 1 ;
 3206   unsigned char no_d1d2 : 1 ;
 3207   unsigned char mmio_always_on : 1 ;
 3208   unsigned char wakeup_prepared : 1 ;
 3209   unsigned int d3_delay ;
 3210   struct pcie_link_state *link_state ;
 3211   pci_channel_state_t error_state ;
 3212   struct device dev ;
 3213   int cfg_size ;
 3214   unsigned int irq ;
 3215   struct resource resource[18U] ;
 3216   resource_size_t fw_addr[18U] ;
 3217   unsigned char transparent : 1 ;
 3218   unsigned char multifunction : 1 ;
 3219   unsigned char is_added : 1 ;
 3220   unsigned char is_busmaster : 1 ;
 3221   unsigned char no_msi : 1 ;
 3222   unsigned char block_ucfg_access : 1 ;
 3223   unsigned char broken_parity_status : 1 ;
 3224   unsigned char irq_reroute_variant : 2 ;
 3225   unsigned char msi_enabled : 1 ;
 3226   unsigned char msix_enabled : 1 ;
 3227   unsigned char ari_enabled : 1 ;
 3228   unsigned char is_managed : 1 ;
 3229   unsigned char is_pcie : 1 ;
 3230   unsigned char needs_freset : 1 ;
 3231   unsigned char state_saved : 1 ;
 3232   unsigned char is_physfn : 1 ;
 3233   unsigned char is_virtfn : 1 ;
 3234   unsigned char reset_fn : 1 ;
 3235   unsigned char is_hotplug_bridge : 1 ;
 3236   unsigned char __aer_firmware_first_valid : 1 ;
 3237   unsigned char __aer_firmware_first : 1 ;
 3238   pci_dev_flags_t dev_flags ;
 3239   atomic_t enable_cnt ;
 3240   u32 saved_config_space[16U] ;
 3241   struct hlist_head saved_cap_space ;
 3242   struct bin_attribute *rom_attr ;
 3243   int rom_attr_enabled ;
 3244   struct bin_attribute *res_attr[18U] ;
 3245   struct bin_attribute *res_attr_wc[18U] ;
 3246   struct list_head msi_list ;
 3247   struct pci_vpd *vpd ;
 3248   union __anonunion_ldv_19516_156 ldv_19516 ;
 3249   struct pci_ats *ats ;
 3250};
 3251#line 406
 3252struct pci_ops;
 3253#line 406
 3254struct pci_ops;
 3255#line 406
 3256struct pci_ops;
 3257#line 406 "include/linux/pci.h"
 3258struct pci_bus {
 3259   struct list_head node ;
 3260   struct pci_bus *parent ;
 3261   struct list_head children ;
 3262   struct list_head devices ;
 3263   struct pci_dev *self ;
 3264   struct list_head slots ;
 3265   struct resource *resource[4U] ;
 3266   struct list_head resources ;
 3267   struct pci_ops *ops ;
 3268   void *sysdata ;
 3269   struct proc_dir_entry *procdir ;
 3270   unsigned char number ;
 3271   unsigned char primary ;
 3272   unsigned char secondary ;
 3273   unsigned char subordinate ;
 3274   unsigned char max_bus_speed ;
 3275   unsigned char cur_bus_speed ;
 3276   char name[48U] ;
 3277   unsigned short bridge_ctl ;
 3278   pci_bus_flags_t bus_flags ;
 3279   struct device *bridge ;
 3280   struct device dev ;
 3281   struct bin_attribute *legacy_io ;
 3282   struct bin_attribute *legacy_mem ;
 3283   unsigned char is_added : 1 ;
 3284};
 3285#line 458 "include/linux/pci.h"
 3286struct pci_ops {
 3287   int (*read)(struct pci_bus * , unsigned int  , int  , int  , u32 * ) ;
 3288   int (*write)(struct pci_bus * , unsigned int  , int  , int  , u32  ) ;
 3289};
 3290#line 493 "include/linux/pci.h"
 3291struct pci_dynids {
 3292   spinlock_t lock ;
 3293   struct list_head list ;
 3294};
 3295#line 506 "include/linux/pci.h"
 3296typedef unsigned int pci_ers_result_t;
 3297#line 515 "include/linux/pci.h"
 3298struct pci_error_handlers {
 3299   pci_ers_result_t (*error_detected)(struct pci_dev * , enum pci_channel_state  ) ;
 3300   pci_ers_result_t (*mmio_enabled)(struct pci_dev * ) ;
 3301   pci_ers_result_t (*link_reset)(struct pci_dev * ) ;
 3302   pci_ers_result_t (*slot_reset)(struct pci_dev * ) ;
 3303   void (*resume)(struct pci_dev * ) ;
 3304};
 3305#line 543 "include/linux/pci.h"
 3306struct pci_driver {
 3307   struct list_head node ;
 3308   char const   *name ;
 3309   struct pci_device_id  const  *id_table ;
 3310   int (*probe)(struct pci_dev * , struct pci_device_id  const  * ) ;
 3311   void (*remove)(struct pci_dev * ) ;
 3312   int (*suspend)(struct pci_dev * , pm_message_t  ) ;
 3313   int (*suspend_late)(struct pci_dev * , pm_message_t  ) ;
 3314   int (*resume_early)(struct pci_dev * ) ;
 3315   int (*resume)(struct pci_dev * ) ;
 3316   void (*shutdown)(struct pci_dev * ) ;
 3317   struct pci_error_handlers *err_handler ;
 3318   struct device_driver driver ;
 3319   struct pci_dynids dynids ;
 3320};
 3321#line 948 "include/linux/pci.h"
 3322struct scatterlist {
 3323   unsigned long sg_magic ;
 3324   unsigned long page_link ;
 3325   unsigned int offset ;
 3326   unsigned int length ;
 3327   dma_addr_t dma_address ;
 3328   unsigned int dma_length ;
 3329};
 3330#line 92 "include/linux/bit_spinlock.h"
 3331struct file_ra_state;
 3332#line 92
 3333struct file_ra_state;
 3334#line 92
 3335struct file_ra_state;
 3336#line 92
 3337struct file_ra_state;
 3338#line 93
 3339struct writeback_control;
 3340#line 93
 3341struct writeback_control;
 3342#line 93
 3343struct writeback_control;
 3344#line 93
 3345struct writeback_control;
 3346#line 175 "include/linux/mm.h"
 3347struct vm_fault {
 3348   unsigned int flags ;
 3349   unsigned long pgoff ;
 3350   void *virtual_address ;
 3351   struct page *page ;
 3352};
 3353#line 192 "include/linux/mm.h"
 3354struct vm_operations_struct {
 3355   void (*open)(struct vm_area_struct * ) ;
 3356   void (*close)(struct vm_area_struct * ) ;
 3357   int (*fault)(struct vm_area_struct * , struct vm_fault * ) ;
 3358   int (*page_mkwrite)(struct vm_area_struct * , struct vm_fault * ) ;
 3359   int (*access)(struct vm_area_struct * , unsigned long  , void * , int  , int  ) ;
 3360   int (*set_policy)(struct vm_area_struct * , struct mempolicy * ) ;
 3361   struct mempolicy *(*get_policy)(struct vm_area_struct * , unsigned long  ) ;
 3362   int (*migrate)(struct vm_area_struct * , nodemask_t const   * , nodemask_t const   * ,
 3363                  unsigned long  ) ;
 3364};
 3365#line 118 "include/linux/kmemleak.h"
 3366struct kmem_cache_cpu {
 3367   void **freelist ;
 3368   unsigned long tid ;
 3369   struct page *page ;
 3370   int node ;
 3371   unsigned int stat[19U] ;
 3372};
 3373#line 46 "include/linux/slub_def.h"
 3374struct kmem_cache_node {
 3375   spinlock_t list_lock ;
 3376   unsigned long nr_partial ;
 3377   struct list_head partial ;
 3378   atomic_long_t nr_slabs ;
 3379   atomic_long_t total_objects ;
 3380   struct list_head full ;
 3381};
 3382#line 57 "include/linux/slub_def.h"
 3383struct kmem_cache_order_objects {
 3384   unsigned long x ;
 3385};
 3386#line 67 "include/linux/slub_def.h"
 3387struct kmem_cache {
 3388   struct kmem_cache_cpu *cpu_slab ;
 3389   unsigned long flags ;
 3390   unsigned long min_partial ;
 3391   int size ;
 3392   int objsize ;
 3393   int offset ;
 3394   struct kmem_cache_order_objects oo ;
 3395   struct kmem_cache_order_objects max ;
 3396   struct kmem_cache_order_objects min ;
 3397   gfp_t allocflags ;
 3398   int refcount ;
 3399   void (*ctor)(void * ) ;
 3400   int inuse ;
 3401   int align ;
 3402   int reserved ;
 3403   char const   *name ;
 3404   struct list_head list ;
 3405   struct kobject kobj ;
 3406   int remote_node_defrag_ratio ;
 3407   struct kmem_cache_node *node[1024U] ;
 3408};
 3409#line 34 "include/linux/bug.h"
 3410struct dma_attrs {
 3411   unsigned long flags[1U] ;
 3412};
 3413#line 266 "include/linux/scatterlist.h"
 3414enum dma_data_direction {
 3415    DMA_BIDIRECTIONAL = 0,
 3416    DMA_TO_DEVICE = 1,
 3417    DMA_FROM_DEVICE = 2,
 3418    DMA_NONE = 3
 3419} ;
 3420#line 273 "include/linux/scatterlist.h"
 3421struct dma_map_ops {
 3422   void *(*alloc_coherent)(struct device * , size_t  , dma_addr_t * , gfp_t  ) ;
 3423   void (*free_coherent)(struct device * , size_t  , void * , dma_addr_t  ) ;
 3424   dma_addr_t (*map_page)(struct device * , struct page * , unsigned long  , size_t  ,
 3425                          enum dma_data_direction  , struct dma_attrs * ) ;
 3426   void (*unmap_page)(struct device * , dma_addr_t  , size_t  , enum dma_data_direction  ,
 3427                      struct dma_attrs * ) ;
 3428   int (*map_sg)(struct device * , struct scatterlist * , int  , enum dma_data_direction  ,
 3429                 struct dma_attrs * ) ;
 3430   void (*unmap_sg)(struct device * , struct scatterlist * , int  , enum dma_data_direction  ,
 3431                    struct dma_attrs * ) ;
 3432   void (*sync_single_for_cpu)(struct device * , dma_addr_t  , size_t  , enum dma_data_direction  ) ;
 3433   void (*sync_single_for_device)(struct device * , dma_addr_t  , size_t  , enum dma_data_direction  ) ;
 3434   void (*sync_sg_for_cpu)(struct device * , struct scatterlist * , int  , enum dma_data_direction  ) ;
 3435   void (*sync_sg_for_device)(struct device * , struct scatterlist * , int  , enum dma_data_direction  ) ;
 3436   int (*mapping_error)(struct device * , dma_addr_t  ) ;
 3437   int (*dma_supported)(struct device * , u64  ) ;
 3438   int (*set_dma_mask)(struct device * , u64  ) ;
 3439   int is_phys ;
 3440};
 3441#line 1593 "include/linux/pci.h"
 3442struct block_device;
 3443#line 1593
 3444struct block_device;
 3445#line 1593
 3446struct block_device;
 3447#line 1593
 3448struct block_device;
 3449#line 89 "include/linux/kdev_t.h"
 3450struct hlist_bl_node;
 3451#line 89
 3452struct hlist_bl_node;
 3453#line 89
 3454struct hlist_bl_node;
 3455#line 89 "include/linux/kdev_t.h"
 3456struct hlist_bl_head {
 3457   struct hlist_bl_node *first ;
 3458};
 3459#line 36 "include/linux/list_bl.h"
 3460struct hlist_bl_node {
 3461   struct hlist_bl_node *next ;
 3462   struct hlist_bl_node **pprev ;
 3463};
 3464#line 114 "include/linux/rculist_bl.h"
 3465struct nameidata;
 3466#line 114
 3467struct nameidata;
 3468#line 114
 3469struct nameidata;
 3470#line 114
 3471struct nameidata;
 3472#line 115
 3473struct path;
 3474#line 115
 3475struct path;
 3476#line 115
 3477struct path;
 3478#line 115
 3479struct path;
 3480#line 116
 3481struct vfsmount;
 3482#line 116
 3483struct vfsmount;
 3484#line 116
 3485struct vfsmount;
 3486#line 116
 3487struct vfsmount;
 3488#line 117 "include/linux/rculist_bl.h"
 3489struct qstr {
 3490   unsigned int hash ;
 3491   unsigned int len ;
 3492   unsigned char const   *name ;
 3493};
 3494#line 100 "include/linux/dcache.h"
 3495struct dentry_operations;
 3496#line 100
 3497struct dentry_operations;
 3498#line 100
 3499struct dentry_operations;
 3500#line 100
 3501struct super_block;
 3502#line 100
 3503struct super_block;
 3504#line 100
 3505struct super_block;
 3506#line 100 "include/linux/dcache.h"
 3507union __anonunion_d_u_157 {
 3508   struct list_head d_child ;
 3509   struct rcu_head d_rcu ;
 3510};
 3511#line 100 "include/linux/dcache.h"
 3512struct dentry {
 3513   unsigned int d_flags ;
 3514   seqcount_t d_seq ;
 3515   struct hlist_bl_node d_hash ;
 3516   struct dentry *d_parent ;
 3517   struct qstr d_name ;
 3518   struct inode *d_inode ;
 3519   unsigned char d_iname[32U] ;
 3520   unsigned int d_count ;
 3521   spinlock_t d_lock ;
 3522   struct dentry_operations  const  *d_op ;
 3523   struct super_block *d_sb ;
 3524   unsigned long d_time ;
 3525   void *d_fsdata ;
 3526   struct list_head d_lru ;
 3527   union __anonunion_d_u_157 d_u ;
 3528   struct list_head d_subdirs ;
 3529   struct list_head d_alias ;
 3530};
 3531#line 151 "include/linux/dcache.h"
 3532struct dentry_operations {
 3533   int (*d_revalidate)(struct dentry * , struct nameidata * ) ;
 3534   int (*d_hash)(struct dentry  const  * , struct inode  const  * , struct qstr * ) ;
 3535   int (*d_compare)(struct dentry  const  * , struct inode  const  * , struct dentry  const  * ,
 3536                    struct inode  const  * , unsigned int  , char const   * , struct qstr  const  * ) ;
 3537   int (*d_delete)(struct dentry  const  * ) ;
 3538   void (*d_release)(struct dentry * ) ;
 3539   void (*d_iput)(struct dentry * , struct inode * ) ;
 3540   char *(*d_dname)(struct dentry * , char * , int  ) ;
 3541   struct vfsmount *(*d_automount)(struct path * ) ;
 3542   int (*d_manage)(struct dentry * , bool  ) ;
 3543};
 3544#line 422 "include/linux/dcache.h"
 3545struct path {
 3546   struct vfsmount *mnt ;
 3547   struct dentry *dentry ;
 3548};
 3549#line 51 "include/linux/radix-tree.h"
 3550struct radix_tree_node;
 3551#line 51
 3552struct radix_tree_node;
 3553#line 51
 3554struct radix_tree_node;
 3555#line 51 "include/linux/radix-tree.h"
 3556struct radix_tree_root {
 3557   unsigned int height ;
 3558   gfp_t gfp_mask ;
 3559   struct radix_tree_node *rnode ;
 3560};
 3561#line 45 "include/linux/semaphore.h"
 3562struct fiemap_extent {
 3563   __u64 fe_logical ;
 3564   __u64 fe_physical ;
 3565   __u64 fe_length ;
 3566   __u64 fe_reserved64[2U] ;
 3567   __u32 fe_flags ;
 3568   __u32 fe_reserved[3U] ;
 3569};
 3570#line 38 "include/linux/fiemap.h"
 3571struct export_operations;
 3572#line 38
 3573struct export_operations;
 3574#line 38
 3575struct export_operations;
 3576#line 38
 3577struct export_operations;
 3578#line 40
 3579struct poll_table_struct;
 3580#line 40
 3581struct poll_table_struct;
 3582#line 40
 3583struct poll_table_struct;
 3584#line 40
 3585struct poll_table_struct;
 3586#line 41
 3587struct kstatfs;
 3588#line 41
 3589struct kstatfs;
 3590#line 41
 3591struct kstatfs;
 3592#line 41
 3593struct kstatfs;
 3594#line 426 "include/linux/fs.h"
 3595struct iattr {
 3596   unsigned int ia_valid ;
 3597   umode_t ia_mode ;
 3598   uid_t ia_uid ;
 3599   gid_t ia_gid ;
 3600   loff_t ia_size ;
 3601   struct timespec ia_atime ;
 3602   struct timespec ia_mtime ;
 3603   struct timespec ia_ctime ;
 3604   struct file *ia_file ;
 3605};
 3606#line 119 "include/linux/quota.h"
 3607struct if_dqinfo {
 3608   __u64 dqi_bgrace ;
 3609   __u64 dqi_igrace ;
 3610   __u32 dqi_flags ;
 3611   __u32 dqi_valid ;
 3612};
 3613#line 152 "include/linux/quota.h"
 3614struct fs_disk_quota {
 3615   __s8 d_version ;
 3616   __s8 d_flags ;
 3617   __u16 d_fieldmask ;
 3618   __u32 d_id ;
 3619   __u64 d_blk_hardlimit ;
 3620   __u64 d_blk_softlimit ;
 3621   __u64 d_ino_hardlimit ;
 3622   __u64 d_ino_softlimit ;
 3623   __u64 d_bcount ;
 3624   __u64 d_icount ;
 3625   __s32 d_itimer ;
 3626   __s32 d_btimer ;
 3627   __u16 d_iwarns ;
 3628   __u16 d_bwarns ;
 3629   __s32 d_padding2 ;
 3630   __u64 d_rtb_hardlimit ;
 3631   __u64 d_rtb_softlimit ;
 3632   __u64 d_rtbcount ;
 3633   __s32 d_rtbtimer ;
 3634   __u16 d_rtbwarns ;
 3635   __s16 d_padding3 ;
 3636   char d_padding4[8U] ;
 3637};
 3638#line 75 "include/linux/dqblk_xfs.h"
 3639struct fs_qfilestat {
 3640   __u64 qfs_ino ;
 3641   __u64 qfs_nblks ;
 3642   __u32 qfs_nextents ;
 3643};
 3644#line 150 "include/linux/dqblk_xfs.h"
 3645typedef struct fs_qfilestat fs_qfilestat_t;
 3646#line 151 "include/linux/dqblk_xfs.h"
 3647struct fs_quota_stat {
 3648   __s8 qs_version ;
 3649   __u16 qs_flags ;
 3650   __s8 qs_pad ;
 3651   fs_qfilestat_t qs_uquota ;
 3652   fs_qfilestat_t qs_gquota ;
 3653   __u32 qs_incoredqs ;
 3654   __s32 qs_btimelimit ;
 3655   __s32 qs_itimelimit ;
 3656   __s32 qs_rtbtimelimit ;
 3657   __u16 qs_bwarnlimit ;
 3658   __u16 qs_iwarnlimit ;
 3659};
 3660#line 165
 3661struct dquot;
 3662#line 165
 3663struct dquot;
 3664#line 165
 3665struct dquot;
 3666#line 165
 3667struct dquot;
 3668#line 185 "include/linux/quota.h"
 3669typedef __kernel_uid32_t qid_t;
 3670#line 186 "include/linux/quota.h"
 3671typedef long long qsize_t;
 3672#line 189 "include/linux/quota.h"
 3673struct mem_dqblk {
 3674   qsize_t dqb_bhardlimit ;
 3675   qsize_t dqb_bsoftlimit ;
 3676   qsize_t dqb_curspace ;
 3677   qsize_t dqb_rsvspace ;
 3678   qsize_t dqb_ihardlimit ;
 3679   qsize_t dqb_isoftlimit ;
 3680   qsize_t dqb_curinodes ;
 3681   time_t dqb_btime ;
 3682   time_t dqb_itime ;
 3683};
 3684#line 211
 3685struct quota_format_type;
 3686#line 211
 3687struct quota_format_type;
 3688#line 211
 3689struct quota_format_type;
 3690#line 211
 3691struct quota_format_type;
 3692#line 212 "include/linux/quota.h"
 3693struct mem_dqinfo {
 3694   struct quota_format_type *dqi_format ;
 3695   int dqi_fmt_id ;
 3696   struct list_head dqi_dirty_list ;
 3697   unsigned long dqi_flags ;
 3698   unsigned int dqi_bgrace ;
 3699   unsigned int dqi_igrace ;
 3700   qsize_t dqi_maxblimit ;
 3701   qsize_t dqi_maxilimit ;
 3702   void *dqi_priv ;
 3703};
 3704#line 271 "include/linux/quota.h"
 3705struct dquot {
 3706   struct hlist_node dq_hash ;
 3707   struct list_head dq_inuse ;
 3708   struct list_head dq_free ;
 3709   struct list_head dq_dirty ;
 3710   struct mutex dq_lock ;
 3711   atomic_t dq_count ;
 3712   wait_queue_head_t dq_wait_unused ;
 3713   struct super_block *dq_sb ;
 3714   unsigned int dq_id ;
 3715   loff_t dq_off ;
 3716   unsigned long dq_flags ;
 3717   short dq_type ;
 3718   struct mem_dqblk dq_dqb ;
 3719};
 3720#line 299 "include/linux/quota.h"
 3721struct quota_format_ops {
 3722   int (*check_quota_file)(struct super_block * , int  ) ;
 3723   int (*read_file_info)(struct super_block * , int  ) ;
 3724   int (*write_file_info)(struct super_block * , int  ) ;
 3725   int (*free_file_info)(struct super_block * , int  ) ;
 3726   int (*read_dqblk)(struct dquot * ) ;
 3727   int (*commit_dqblk)(struct dquot * ) ;
 3728   int (*release_dqblk)(struct dquot * ) ;
 3729};
 3730#line 310 "include/linux/quota.h"
 3731struct dquot_operations {
 3732   int (*write_dquot)(struct dquot * ) ;
 3733   struct dquot *(*alloc_dquot)(struct super_block * , int  ) ;
 3734   void (*destroy_dquot)(struct dquot * ) ;
 3735   int (*acquire_dquot)(struct dquot * ) ;
 3736   int (*release_dquot)(struct dquot * ) ;
 3737   int (*mark_dirty)(struct dquot * ) ;
 3738   int (*write_info)(struct super_block * , int  ) ;
 3739   qsize_t *(*get_reserved_space)(struct inode * ) ;
 3740};
 3741#line 324 "include/linux/quota.h"
 3742struct quotactl_ops {
 3743   int (*quota_on)(struct super_block * , int  , int  , struct path * ) ;
 3744   int (*quota_on_meta)(struct super_block * , int  , int  ) ;
 3745   int (*quota_off)(struct super_block * , int  ) ;
 3746   int (*quota_sync)(struct super_block * , int  , int  ) ;
 3747   int (*get_info)(struct super_block * , int  , struct if_dqinfo * ) ;
 3748   int (*set_info)(struct super_block * , int  , struct if_dqinfo * ) ;
 3749   int (*get_dqblk)(struct super_block * , int  , qid_t  , struct fs_disk_quota * ) ;
 3750   int (*set_dqblk)(struct super_block * , int  , qid_t  , struct fs_disk_quota * ) ;
 3751   int (*get_xstate)(struct super_block * , struct fs_quota_stat * ) ;
 3752   int (*set_xstate)(struct super_block * , unsigned int  , int  ) ;
 3753};
 3754#line 340 "include/linux/quota.h"
 3755struct quota_format_type {
 3756   int qf_fmt_id ;
 3757   struct quota_format_ops  const  *qf_ops ;
 3758   struct module *qf_owner ;
 3759   struct quota_format_type *qf_next ;
 3760};
 3761#line 386 "include/linux/quota.h"
 3762struct quota_info {
 3763   unsigned int flags ;
 3764   struct mutex dqio_mutex ;
 3765   struct mutex dqonoff_mutex ;
 3766   struct rw_semaphore dqptr_sem ;
 3767   struct inode *files[2U] ;
 3768   struct mem_dqinfo info[2U] ;
 3769   struct quota_format_ops  const  *ops[2U] ;
 3770};
 3771#line 576 "include/linux/fs.h"
 3772union __anonunion_arg_159 {
 3773   char *buf ;
 3774   void *data ;
 3775};
 3776#line 576 "include/linux/fs.h"
 3777struct __anonstruct_read_descriptor_t_158 {
 3778   size_t written ;
 3779   size_t count ;
 3780   union __anonunion_arg_159 arg ;
 3781   int error ;
 3782};
 3783#line 576 "include/linux/fs.h"
 3784typedef struct __anonstruct_read_descriptor_t_158 read_descriptor_t;
 3785#line 579 "include/linux/fs.h"
 3786struct address_space_operations {
 3787   int (*writepage)(struct page * , struct writeback_control * ) ;
 3788   int (*readpage)(struct file * , struct page * ) ;
 3789   int (*writepages)(struct address_space * , struct writeback_control * ) ;
 3790   int (*set_page_dirty)(struct page * ) ;
 3791   int (*readpages)(struct file * , struct address_space * , struct list_head * ,
 3792                    unsigned int  ) ;
 3793   int (*write_begin)(struct file * , struct address_space * , loff_t  , unsigned int  ,
 3794                      unsigned int  , struct page ** , void ** ) ;
 3795   int (*write_end)(struct file * , struct address_space * , loff_t  , unsigned int  ,
 3796                    unsigned int  , struct page * , void * ) ;
 3797   sector_t (*bmap)(struct address_space * , sector_t  ) ;
 3798   void (*invalidatepage)(struct page * , unsigned long  ) ;
 3799   int (*releasepage)(struct page * , gfp_t  ) ;
 3800   void (*freepage)(struct page * ) ;
 3801   ssize_t (*direct_IO)(int  , struct kiocb * , struct iovec  const  * , loff_t  ,
 3802                        unsigned long  ) ;
 3803   int (*get_xip_mem)(struct address_space * , unsigned long  , int  , void ** , unsigned long * ) ;
 3804   int (*migratepage)(struct address_space * , struct page * , struct page * ) ;
 3805   int (*launder_page)(struct page * ) ;
 3806   int (*is_partially_uptodate)(struct page * , read_descriptor_t * , unsigned long  ) ;
 3807   int (*error_remove_page)(struct address_space * , struct page * ) ;
 3808};
 3809#line 630 "include/linux/fs.h"
 3810struct address_space {
 3811   struct inode *host ;
 3812   struct radix_tree_root page_tree ;
 3813   spinlock_t tree_lock ;
 3814   unsigned int i_mmap_writable ;
 3815   struct prio_tree_root i_mmap ;
 3816   struct list_head i_mmap_nonlinear ;
 3817   struct mutex i_mmap_mutex ;
 3818   unsigned long nrpages ;
 3819   unsigned long writeback_index ;
 3820   struct address_space_operations  const  *a_ops ;
 3821   unsigned long flags ;
 3822   struct backing_dev_info *backing_dev_info ;
 3823   spinlock_t private_lock ;
 3824   struct list_head private_list ;
 3825   struct address_space *assoc_mapping ;
 3826};
 3827#line 652
 3828struct hd_struct;
 3829#line 652
 3830struct hd_struct;
 3831#line 652
 3832struct hd_struct;
 3833#line 652
 3834struct gendisk;
 3835#line 652
 3836struct gendisk;
 3837#line 652
 3838struct gendisk;
 3839#line 652 "include/linux/fs.h"
 3840struct block_device {
 3841   dev_t bd_dev ;
 3842   int bd_openers ;
 3843   struct inode *bd_inode ;
 3844   struct super_block *bd_super ;
 3845   struct mutex bd_mutex ;
 3846   struct list_head bd_inodes ;
 3847   void *bd_claiming ;
 3848   void *bd_holder ;
 3849   int bd_holders ;
 3850   bool bd_write_holder ;
 3851   struct list_head bd_holder_disks ;
 3852   struct block_device *bd_contains ;
 3853   unsigned int bd_block_size ;
 3854   struct hd_struct *bd_part ;
 3855   unsigned int bd_part_count ;
 3856   int bd_invalidated ;
 3857   struct gendisk *bd_disk ;
 3858   struct list_head bd_list ;
 3859   unsigned long bd_private ;
 3860   int bd_fsfreeze_count ;
 3861   struct mutex bd_fsfreeze_mutex ;
 3862};
 3863#line 723
 3864struct posix_acl;
 3865#line 723
 3866struct posix_acl;
 3867#line 723
 3868struct posix_acl;
 3869#line 723
 3870struct posix_acl;
 3871#line 724
 3872struct inode_operations;
 3873#line 724
 3874struct inode_operations;
 3875#line 724
 3876struct inode_operations;
 3877#line 724 "include/linux/fs.h"
 3878union __anonunion_ldv_25093_160 {
 3879   struct list_head i_dentry ;
 3880   struct rcu_head i_rcu ;
 3881};
 3882#line 724
 3883struct file_operations;
 3884#line 724
 3885struct file_operations;
 3886#line 724
 3887struct file_operations;
 3888#line 724
 3889struct file_lock;
 3890#line 724
 3891struct file_lock;
 3892#line 724
 3893struct file_lock;
 3894#line 724
 3895struct cdev;
 3896#line 724
 3897struct cdev;
 3898#line 724
 3899struct cdev;
 3900#line 724 "include/linux/fs.h"
 3901union __anonunion_ldv_25120_161 {
 3902   struct pipe_inode_info *i_pipe ;
 3903   struct block_device *i_bdev ;
 3904   struct cdev *i_cdev ;
 3905};
 3906#line 724 "include/linux/fs.h"
 3907struct inode {
 3908   umode_t i_mode ;
 3909   uid_t i_uid ;
 3910   gid_t i_gid ;
 3911   struct inode_operations  const  *i_op ;
 3912   struct super_block *i_sb ;
 3913   spinlock_t i_lock ;
 3914   unsigned int i_flags ;
 3915   unsigned long i_state ;
 3916   void *i_security ;
 3917   struct mutex i_mutex ;
 3918   unsigned long dirtied_when ;
 3919   struct hlist_node i_hash ;
 3920   struct list_head i_wb_list ;
 3921   struct list_head i_lru ;
 3922   struct list_head i_sb_list ;
 3923   union __anonunion_ldv_25093_160 ldv_25093 ;
 3924   unsigned long i_ino ;
 3925   atomic_t i_count ;
 3926   unsigned int i_nlink ;
 3927   dev_t i_rdev ;
 3928   unsigned int i_blkbits ;
 3929   u64 i_version ;
 3930   loff_t i_size ;
 3931   struct timespec i_atime ;
 3932   struct timespec i_mtime ;
 3933   struct timespec i_ctime ;
 3934   blkcnt_t i_blocks ;
 3935   unsigned short i_bytes ;
 3936   struct rw_semaphore i_alloc_sem ;
 3937   struct file_operations  const  *i_fop ;
 3938   struct file_lock *i_flock ;
 3939   struct address_space *i_mapping ;
 3940   struct address_space i_data ;
 3941   struct dquot *i_dquot[2U] ;
 3942   struct list_head i_devices ;
 3943   union __anonunion_ldv_25120_161 ldv_25120 ;
 3944   __u32 i_generation ;
 3945   __u32 i_fsnotify_mask ;
 3946   struct hlist_head i_fsnotify_marks ;
 3947   atomic_t i_readcount ;
 3948   atomic_t i_writecount ;
 3949   struct posix_acl *i_acl ;
 3950   struct posix_acl *i_default_acl ;
 3951   void *i_private ;
 3952};
 3953#line 902 "include/linux/fs.h"
 3954struct fown_struct {
 3955   rwlock_t lock ;
 3956   struct pid *pid ;
 3957   enum pid_type pid_type ;
 3958   uid_t uid ;
 3959   uid_t euid ;
 3960   int signum ;
 3961};
 3962#line 910 "include/linux/fs.h"
 3963struct file_ra_state {
 3964   unsigned long start ;
 3965   unsigned int size ;
 3966   unsigned int async_size ;
 3967   unsigned int ra_pages ;
 3968   unsigned int mmap_miss ;
 3969   loff_t prev_pos ;
 3970};
 3971#line 933 "include/linux/fs.h"
 3972union __anonunion_f_u_162 {
 3973   struct list_head fu_list ;
 3974   struct rcu_head fu_rcuhead ;
 3975};
 3976#line 933 "include/linux/fs.h"
 3977struct file {
 3978   union __anonunion_f_u_162 f_u ;
 3979   struct path f_path ;
 3980   struct file_operations  const  *f_op ;
 3981   spinlock_t f_lock ;
 3982   int f_sb_list_cpu ;
 3983   atomic_long_t f_count ;
 3984   unsigned int f_flags ;
 3985   fmode_t f_mode ;
 3986   loff_t f_pos ;
 3987   struct fown_struct f_owner ;
 3988   struct cred  const  *f_cred ;
 3989   struct file_ra_state f_ra ;
 3990   u64 f_version ;
 3991   void *f_security ;
 3992   void *private_data ;
 3993   struct list_head f_ep_links ;
 3994   struct address_space *f_mapping ;
 3995   unsigned long f_mnt_write_state ;
 3996};
 3997#line 1064 "include/linux/fs.h"
 3998typedef struct files_struct *fl_owner_t;
 3999#line 1065 "include/linux/fs.h"
 4000struct file_lock_operations {
 4001   void (*fl_copy_lock)(struct file_lock * , struct file_lock * ) ;
 4002   void (*fl_release_private)(struct file_lock * ) ;
 4003};
 4004#line 1070 "include/linux/fs.h"
 4005struct lock_manager_operations {
 4006   int (*fl_compare_owner)(struct file_lock * , struct file_lock * ) ;
 4007   void (*fl_notify)(struct file_lock * ) ;
 4008   int (*fl_grant)(struct file_lock * , struct file_lock * , int  ) ;
 4009   void (*fl_release_private)(struct file_lock * ) ;
 4010   void (*fl_break)(struct file_lock * ) ;
 4011   int (*fl_change)(struct file_lock ** , int  ) ;
 4012};
 4013#line 163 "include/linux/nfs.h"
 4014struct nlm_lockowner;
 4015#line 163
 4016struct nlm_lockowner;
 4017#line 163
 4018struct nlm_lockowner;
 4019#line 163
 4020struct nlm_lockowner;
 4021#line 164 "include/linux/nfs.h"
 4022struct nfs_lock_info {
 4023   u32 state ;
 4024   struct nlm_lockowner *owner ;
 4025   struct list_head list ;
 4026};
 4027#line 18 "include/linux/nfs_fs_i.h"
 4028struct nfs4_lock_state;
 4029#line 18
 4030struct nfs4_lock_state;
 4031#line 18
 4032struct nfs4_lock_state;
 4033#line 18
 4034struct nfs4_lock_state;
 4035#line 19 "include/linux/nfs_fs_i.h"
 4036struct nfs4_lock_info {
 4037   struct nfs4_lock_state *owner ;
 4038};
 4039#line 23
 4040struct fasync_struct;
 4041#line 23
 4042struct fasync_struct;
 4043#line 23
 4044struct fasync_struct;
 4045#line 23 "include/linux/nfs_fs_i.h"
 4046struct __anonstruct_afs_164 {
 4047   struct list_head link ;
 4048   int state ;
 4049};
 4050#line 23 "include/linux/nfs_fs_i.h"
 4051union __anonunion_fl_u_163 {
 4052   struct nfs_lock_info nfs_fl ;
 4053   struct nfs4_lock_info nfs4_fl ;
 4054   struct __anonstruct_afs_164 afs ;
 4055};
 4056#line 23 "include/linux/nfs_fs_i.h"
 4057struct file_lock {
 4058   struct file_lock *fl_next ;
 4059   struct list_head fl_link ;
 4060   struct list_head fl_block ;
 4061   fl_owner_t fl_owner ;
 4062   unsigned char fl_flags ;
 4063   unsigned char fl_type ;
 4064   unsigned int fl_pid ;
 4065   struct pid *fl_nspid ;
 4066   wait_queue_head_t fl_wait ;
 4067   struct file *fl_file ;
 4068   loff_t fl_start ;
 4069   loff_t fl_end ;
 4070   struct fasync_struct *fl_fasync ;
 4071   unsigned long fl_break_time ;
 4072   struct file_lock_operations  const  *fl_ops ;
 4073   struct lock_manager_operations  const  *fl_lmops ;
 4074   union __anonunion_fl_u_163 fl_u ;
 4075};
 4076#line 1171 "include/linux/fs.h"
 4077struct fasync_struct {
 4078   spinlock_t fa_lock ;
 4079   int magic ;
 4080   int fa_fd ;
 4081   struct fasync_struct *fa_next ;
 4082   struct file *fa_file ;
 4083   struct rcu_head fa_rcu ;
 4084};
 4085#line 1363
 4086struct file_system_type;
 4087#line 1363
 4088struct file_system_type;
 4089#line 1363
 4090struct file_system_type;
 4091#line 1363
 4092struct super_operations;
 4093#line 1363
 4094struct super_operations;
 4095#line 1363
 4096struct super_operations;
 4097#line 1363
 4098struct xattr_handler;
 4099#line 1363
 4100struct xattr_handler;
 4101#line 1363
 4102struct xattr_handler;
 4103#line 1363
 4104struct mtd_info;
 4105#line 1363
 4106struct mtd_info;
 4107#line 1363
 4108struct mtd_info;
 4109#line 1363 "include/linux/fs.h"
 4110struct super_block {
 4111   struct list_head s_list ;
 4112   dev_t s_dev ;
 4113   unsigned char s_dirt ;
 4114   unsigned char s_blocksize_bits ;
 4115   unsigned long s_blocksize ;
 4116   loff_t s_maxbytes ;
 4117   struct file_system_type *s_type ;
 4118   struct super_operations  const  *s_op ;
 4119   struct dquot_operations  const  *dq_op ;
 4120   struct quotactl_ops  const  *s_qcop ;
 4121   struct export_operations  const  *s_export_op ;
 4122   unsigned long s_flags ;
 4123   unsigned long s_magic ;
 4124   struct dentry *s_root ;
 4125   struct rw_semaphore s_umount ;
 4126   struct mutex s_lock ;
 4127   int s_count ;
 4128   atomic_t s_active ;
 4129   void *s_security ;
 4130   struct xattr_handler  const  **s_xattr ;
 4131   struct list_head s_inodes ;
 4132   struct hlist_bl_head s_anon ;
 4133   struct list_head *s_files ;
 4134   struct list_head s_dentry_lru ;
 4135   int s_nr_dentry_unused ;
 4136   struct block_device *s_bdev ;
 4137   struct backing_dev_info *s_bdi ;
 4138   struct mtd_info *s_mtd ;
 4139   struct list_head s_instances ;
 4140   struct quota_info s_dquot ;
 4141   int s_frozen ;
 4142   wait_queue_head_t s_wait_unfrozen ;
 4143   char s_id[32U] ;
 4144   u8 s_uuid[16U] ;
 4145   void *s_fs_info ;
 4146   fmode_t s_mode ;
 4147   u32 s_time_gran ;
 4148   struct mutex s_vfs_rename_mutex ;
 4149   char *s_subtype ;
 4150   char *s_options ;
 4151   struct dentry_operations  const  *s_d_op ;
 4152   int cleancache_poolid ;
 4153};
 4154#line 1495 "include/linux/fs.h"
 4155struct fiemap_extent_info {
 4156   unsigned int fi_flags ;
 4157   unsigned int fi_extents_mapped ;
 4158   unsigned int fi_extents_max ;
 4159   struct fiemap_extent *fi_extents_start ;
 4160};
 4161#line 1534 "include/linux/fs.h"
 4162struct file_operations {
 4163   struct module *owner ;
 4164   loff_t (*llseek)(struct file * , loff_t  , int  ) ;
 4165   ssize_t (*read)(struct file * , char * , size_t  , loff_t * ) ;
 4166   ssize_t (*write)(struct file * , char const   * , size_t  , loff_t * ) ;
 4167   ssize_t (*aio_read)(struct kiocb * , struct iovec  const  * , unsigned long  ,
 4168                       loff_t  ) ;
 4169   ssize_t (*aio_write)(struct kiocb * , struct iovec  const  * , unsigned long  ,
 4170                        loff_t  ) ;
 4171   int (*readdir)(struct file * , void * , int (*)(void * , char const   * , int  ,
 4172                                                   loff_t  , u64  , unsigned int  ) ) ;
 4173   unsigned int (*poll)(struct file * , struct poll_table_struct * ) ;
 4174   long (*unlocked_ioctl)(struct file * , unsigned int  , unsigned long  ) ;
 4175   long (*compat_ioctl)(struct file * , unsigned int  , unsigned long  ) ;
 4176   int (*mmap)(struct file * , struct vm_area_struct * ) ;
 4177   int (*open)(struct inode * , struct file * ) ;
 4178   int (*flush)(struct file * , fl_owner_t  ) ;
 4179   int (*release)(struct inode * , struct file * ) ;
 4180   int (*fsync)(struct file * , int  ) ;
 4181   int (*aio_fsync)(struct kiocb * , int  ) ;
 4182   int (*fasync)(int  , struct file * , int  ) ;
 4183   int (*lock)(struct file * , int  , struct file_lock * ) ;
 4184   ssize_t (*sendpage)(struct file * , struct page * , int  , size_t  , loff_t * ,
 4185                       int  ) ;
 4186   unsigned long (*get_unmapped_area)(struct file * , unsigned long  , unsigned long  ,
 4187                                      unsigned long  , unsigned long  ) ;
 4188   int (*check_flags)(int  ) ;
 4189   int (*flock)(struct file * , int  , struct file_lock * ) ;
 4190   ssize_t (*splice_write)(struct pipe_inode_info * , struct file * , loff_t * , size_t  ,
 4191                           unsigned int  ) ;
 4192   ssize_t (*splice_read)(struct file * , loff_t * , struct pipe_inode_info * , size_t  ,
 4193                          unsigned int  ) ;
 4194   int (*setlease)(struct file * , long  , struct file_lock ** ) ;
 4195   long (*fallocate)(struct file * , int  , loff_t  , loff_t  ) ;
 4196};
 4197#line 1574 "include/linux/fs.h"
 4198struct inode_operations {
 4199   struct dentry *(*lookup)(struct inode * , struct dentry * , struct nameidata * ) ;
 4200   void *(*follow_link)(struct dentry * , struct nameidata * ) ;
 4201   int (*permission)(struct inode * , int  , unsigned int  ) ;
 4202   int (*check_acl)(struct inode * , int  , unsigned int  ) ;
 4203   int (*readlink)(struct dentry * , char * , int  ) ;
 4204   void (*put_link)(struct dentry * , struct nameidata * , void * ) ;
 4205   int (*create)(struct inode * , struct dentry * , int  , struct nameidata * ) ;
 4206   int (*link)(struct dentry * , struct inode * , struct dentry * ) ;
 4207   int (*unlink)(struct inode * , struct dentry * ) ;
 4208   int (*symlink)(struct inode * , struct dentry * , char const   * ) ;
 4209   int (*mkdir)(struct inode * , struct dentry * , int  ) ;
 4210   int (*rmdir)(struct inode * , struct dentry * ) ;
 4211   int (*mknod)(struct inode * , struct dentry * , int  , dev_t  ) ;
 4212   int (*rename)(struct inode * , struct dentry * , struct inode * , struct dentry * ) ;
 4213   void (*truncate)(struct inode * ) ;
 4214   int (*setattr)(struct dentry * , struct iattr * ) ;
 4215   int (*getattr)(struct vfsmount * , struct dentry * , struct kstat * ) ;
 4216   int (*setxattr)(struct dentry * , char const   * , void const   * , size_t  , int  ) ;
 4217   ssize_t (*getxattr)(struct dentry * , char const   * , void * , size_t  ) ;
 4218   ssize_t (*listxattr)(struct dentry * , char * , size_t  ) ;
 4219   int (*removexattr)(struct dentry * , char const   * ) ;
 4220   void (*truncate_range)(struct inode * , loff_t  , loff_t  ) ;
 4221   int (*fiemap)(struct inode * , struct fiemap_extent_info * , u64  , u64  ) ;
 4222};
 4223#line 1620 "include/linux/fs.h"
 4224struct super_operations {
 4225   struct inode *(*alloc_inode)(struct super_block * ) ;
 4226   void (*destroy_inode)(struct inode * ) ;
 4227   void (*dirty_inode)(struct inode * , int  ) ;
 4228   int (*write_inode)(struct inode * , struct writeback_control * ) ;
 4229   int (*drop_inode)(struct inode * ) ;
 4230   void (*evict_inode)(struct inode * ) ;
 4231   void (*put_super)(struct super_block * ) ;
 4232   void (*write_super)(struct super_block * ) ;
 4233   int (*sync_fs)(struct super_block * , int  ) ;
 4234   int (*freeze_fs)(struct super_block * ) ;
 4235   int (*unfreeze_fs)(struct super_block * ) ;
 4236   int (*statfs)(struct dentry * , struct kstatfs * ) ;
 4237   int (*remount_fs)(struct super_block * , int * , char * ) ;
 4238   void (*umount_begin)(struct super_block * ) ;
 4239   int (*show_options)(struct seq_file * , struct vfsmount * ) ;
 4240   int (*show_devname)(struct seq_file * , struct vfsmount * ) ;
 4241   int (*show_path)(struct seq_file * , struct vfsmount * ) ;
 4242   int (*show_stats)(struct seq_file * , struct vfsmount * ) ;
 4243   ssize_t (*quota_read)(struct super_block * , int  , char * , size_t  , loff_t  ) ;
 4244   ssize_t (*quota_write)(struct super_block * , int  , char const   * , size_t  ,
 4245                          loff_t  ) ;
 4246   int (*bdev_try_to_free_page)(struct super_block * , struct page * , gfp_t  ) ;
 4247};
 4248#line 1801 "include/linux/fs.h"
 4249struct file_system_type {
 4250   char const   *name ;
 4251   int fs_flags ;
 4252   struct dentry *(*mount)(struct file_system_type * , int  , char const   * , void * ) ;
 4253   void (*kill_sb)(struct super_block * ) ;
 4254   struct module *owner ;
 4255   struct file_system_type *next ;
 4256   struct list_head fs_supers ;
 4257   struct lock_class_key s_lock_key ;
 4258   struct lock_class_key s_umount_key ;
 4259   struct lock_class_key s_vfs_rename_key ;
 4260   struct lock_class_key i_lock_key ;
 4261   struct lock_class_key i_mutex_key ;
 4262   struct lock_class_key i_mutex_dir_key ;
 4263   struct lock_class_key i_alloc_sem_key ;
 4264};
 4265#line 6 "include/asm-generic/termbits.h"
 4266typedef unsigned char cc_t;
 4267#line 7 "include/asm-generic/termbits.h"
 4268typedef unsigned int speed_t;
 4269#line 8 "include/asm-generic/termbits.h"
 4270typedef unsigned int tcflag_t;
 4271#line 30 "include/asm-generic/termbits.h"
 4272struct ktermios {
 4273   tcflag_t c_iflag ;
 4274   tcflag_t c_oflag ;
 4275   tcflag_t c_cflag ;
 4276   tcflag_t c_lflag ;
 4277   cc_t c_line ;
 4278   cc_t c_cc[19U] ;
 4279   speed_t c_ispeed ;
 4280   speed_t c_ospeed ;
 4281};
 4282#line 41 "include/asm-generic/termbits.h"
 4283struct winsize {
 4284   unsigned short ws_row ;
 4285   unsigned short ws_col ;
 4286   unsigned short ws_xpixel ;
 4287   unsigned short ws_ypixel ;
 4288};
 4289#line 138 "include/asm-generic/termios.h"
 4290struct termiox {
 4291   __u16 x_hflag ;
 4292   __u16 x_cflag ;
 4293   __u16 x_rflag[5U] ;
 4294   __u16 x_sflag ;
 4295};
 4296#line 16 "include/linux/termios.h"
 4297struct cdev {
 4298   struct kobject kobj ;
 4299   struct module *owner ;
 4300   struct file_operations  const  *ops ;
 4301   struct list_head list ;
 4302   dev_t dev ;
 4303   unsigned int count ;
 4304};
 4305#line 34 "include/linux/cdev.h"
 4306struct tty_driver;
 4307#line 34
 4308struct tty_driver;
 4309#line 34
 4310struct tty_driver;
 4311#line 34
 4312struct tty_driver;
 4313#line 35
 4314struct serial_icounter_struct;
 4315#line 35
 4316struct serial_icounter_struct;
 4317#line 35
 4318struct serial_icounter_struct;
 4319#line 35
 4320struct serial_icounter_struct;
 4321#line 36 "include/linux/cdev.h"
 4322struct tty_operations {
 4323   struct tty_struct *(*lookup)(struct tty_driver * , struct inode * , int  ) ;
 4324   int (*install)(struct tty_driver * , struct tty_struct * ) ;
 4325   void (*remove)(struct tty_driver * , struct tty_struct * ) ;
 4326   int (*open)(struct tty_struct * , struct file * ) ;
 4327   void (*close)(struct tty_struct * , struct file * ) ;
 4328   void (*shutdown)(struct tty_struct * ) ;
 4329   void (*cleanup)(struct tty_struct * ) ;
 4330   int (*write)(struct tty_struct * , unsigned char const   * , int  ) ;
 4331   int (*put_char)(struct tty_struct * , unsigned char  ) ;
 4332   void (*flush_chars)(struct tty_struct * ) ;
 4333   int (*write_room)(struct tty_struct * ) ;
 4334   int (*chars_in_buffer)(struct tty_struct * ) ;
 4335   int (*ioctl)(struct tty_struct * , unsigned int  , unsigned long  ) ;
 4336   long (*compat_ioctl)(struct tty_struct * , unsigned int  , unsigned long  ) ;
 4337   void (*set_termios)(struct tty_struct * , struct ktermios * ) ;
 4338   void (*throttle)(struct tty_struct * ) ;
 4339   void (*unthrottle)(struct tty_struct * ) ;
 4340   void (*stop)(struct tty_struct * ) ;
 4341   void (*start)(struct tty_struct * ) ;
 4342   void (*hangup)(struct tty_struct * ) ;
 4343   int (*break_ctl)(struct tty_struct * , int  ) ;
 4344   void (*flush_buffer)(struct tty_struct * ) ;
 4345   void (*set_ldisc)(struct tty_struct * ) ;
 4346   void (*wait_until_sent)(struct tty_struct * , int  ) ;
 4347   void (*send_xchar)(struct tty_struct * , char  ) ;
 4348   int (*tiocmget)(struct tty_struct * ) ;
 4349   int (*tiocmset)(struct tty_struct * , unsigned int  , unsigned int  ) ;
 4350   int (*resize)(struct tty_struct * , struct winsize * ) ;
 4351   int (*set_termiox)(struct tty_struct * , struct termiox * ) ;
 4352   int (*get_icount)(struct tty_struct * , struct serial_icounter_struct * ) ;
 4353   int (*poll_init)(struct tty_driver * , int  , char * ) ;
 4354   int (*poll_get_char)(struct tty_driver * , int  ) ;
 4355   void (*poll_put_char)(struct tty_driver * , int  , char  ) ;
 4356   struct file_operations  const  *proc_fops ;
 4357};
 4358#line 287 "include/linux/tty_driver.h"
 4359struct tty_driver {
 4360   int magic ;
 4361   struct kref kref ;
 4362   struct cdev cdev ;
 4363   struct module *owner ;
 4364   char const   *driver_name ;
 4365   char const   *name ;
 4366   int name_base ;
 4367   int major ;
 4368   int minor_start ;
 4369   int minor_num ;
 4370   int num ;
 4371   short type ;
 4372   short subtype ;
 4373   struct ktermios init_termios ;
 4374   int flags ;
 4375   struct proc_dir_entry *proc_entry ;
 4376   struct tty_driver *other ;
 4377   struct tty_struct **ttys ;
 4378   struct ktermios **termios ;
 4379   struct ktermios **termios_locked ;
 4380   void *driver_state ;
 4381   struct tty_operations  const  *ops ;
 4382   struct list_head tty_drivers ;
 4383};
 4384#line 48 "include/linux/pps_kernel.h"
 4385struct pps_event_time {
 4386   struct timespec ts_real ;
 4387};
 4388#line 116 "include/linux/pps_kernel.h"
 4389struct tty_ldisc_ops {
 4390   int magic ;
 4391   char *name ;
 4392   int num ;
 4393   int flags ;
 4394   int (*open)(struct tty_struct * ) ;
 4395   void (*close)(struct tty_struct * ) ;
 4396   void (*flush_buffer)(struct tty_struct * ) ;
 4397   ssize_t (*chars_in_buffer)(struct tty_struct * ) ;
 4398   ssize_t (*read)(struct tty_struct * , struct file * , unsigned char * , size_t  ) ;
 4399   ssize_t (*write)(struct tty_struct * , struct file * , unsigned char const   * ,
 4400                    size_t  ) ;
 4401   int (*ioctl)(struct tty_struct * , struct file * , unsigned int  , unsigned long  ) ;
 4402   long (*compat_ioctl)(struct tty_struct * , struct file * , unsigned int  , unsigned long  ) ;
 4403   void (*set_termios)(struct tty_struct * , struct ktermios * ) ;
 4404   unsigned int (*poll)(struct tty_struct * , struct file * , struct poll_table_struct * ) ;
 4405   int (*hangup)(struct tty_struct * ) ;
 4406   void (*receive_buf)(struct tty_struct * , unsigned char const   * , char * , int  ) ;
 4407   void (*write_wakeup)(struct tty_struct * ) ;
 4408   void (*dcd_change)(struct tty_struct * , unsigned int  , struct pps_event_time * ) ;
 4409   struct module *owner ;
 4410   int refcount ;
 4411};
 4412#line 153 "include/linux/tty_ldisc.h"
 4413struct tty_ldisc {
 4414   struct tty_ldisc_ops *ops ;
 4415   atomic_t users ;
 4416};
 4417#line 158 "include/linux/tty_ldisc.h"
 4418struct tty_buffer {
 4419   struct tty_buffer *next ;
 4420   char *char_buf_ptr ;
 4421   unsigned char *flag_buf_ptr ;
 4422   int used ;
 4423   int size ;
 4424   int commit ;
 4425   int read ;
 4426   unsigned long data[0U] ;
 4427};
 4428#line 74 "include/linux/tty.h"
 4429struct tty_bufhead {
 4430   struct work_struct work ;
 4431   spinlock_t lock ;
 4432   struct tty_buffer *head ;
 4433   struct tty_buffer *tail ;
 4434   struct tty_buffer *free ;
 4435   int memory_used ;
 4436};
 4437#line 94
 4438struct tty_port;
 4439#line 94
 4440struct tty_port;
 4441#line 94
 4442struct tty_port;
 4443#line 94
 4444struct tty_port;
 4445#line 95 "include/linux/tty.h"
 4446struct tty_port_operations {
 4447   int (*carrier_raised)(struct tty_port * ) ;
 4448   void (*dtr_rts)(struct tty_port * , int  ) ;
 4449   void (*shutdown)(struct tty_port * ) ;
 4450   void (*drop)(struct tty_port * ) ;
 4451   int (*activate)(struct tty_port * , struct tty_struct * ) ;
 4452   void (*destruct)(struct tty_port * ) ;
 4453};
 4454#line 221 "include/linux/tty.h"
 4455struct tty_port {
 4456   struct tty_struct *tty ;
 4457   struct tty_port_operations  const  *ops ;
 4458   spinlock_t lock ;
 4459   int blocked_open ;
 4460   int count ;
 4461   wait_queue_head_t open_wait ;
 4462   wait_queue_head_t close_wait ;
 4463   wait_queue_head_t delta_msr_wait ;
 4464   unsigned long flags ;
 4465   unsigned char console : 1 ;
 4466   struct mutex mutex ;
 4467   struct mutex buf_mutex ;
 4468   unsigned char *xmit_buf ;
 4469   unsigned int close_delay ;
 4470   unsigned int closing_wait ;
 4471   int drain_delay ;
 4472   struct kref kref ;
 4473};
 4474#line 243 "include/linux/tty.h"
 4475struct tty_struct {
 4476   int magic ;
 4477   struct kref kref ;
 4478   struct device *dev ;
 4479   struct tty_driver *driver ;
 4480   struct tty_operations  const  *ops ;
 4481   int index ;
 4482   struct mutex ldisc_mutex ;
 4483   struct tty_ldisc *ldisc ;
 4484   struct mutex termios_mutex ;
 4485   spinlock_t ctrl_lock ;
 4486   struct ktermios *termios ;
 4487   struct ktermios *termios_locked ;
 4488   struct termiox *termiox ;
 4489   char name[64U] ;
 4490   struct pid *pgrp ;
 4491   struct pid *session ;
 4492   unsigned long flags ;
 4493   int count ;
 4494   struct winsize winsize ;
 4495   unsigned char stopped : 1 ;
 4496   unsigned char hw_stopped : 1 ;
 4497   unsigned char flow_stopped : 1 ;
 4498   unsigned char packet : 1 ;
 4499   unsigned char low_latency : 1 ;
 4500   unsigned char warned : 1 ;
 4501   unsigned char ctrl_status ;
 4502   unsigned int receive_room ;
 4503   struct tty_struct *link ;
 4504   struct fasync_struct *fasync ;
 4505   struct tty_bufhead buf ;
 4506   int alt_speed ;
 4507   wait_queue_head_t write_wait ;
 4508   wait_queue_head_t read_wait ;
 4509   struct work_struct hangup_work ;
 4510   void *disc_data ;
 4511   void *driver_data ;
 4512   struct list_head tty_files ;
 4513   unsigned int column ;
 4514   unsigned char lnext : 1 ;
 4515   unsigned char erasing : 1 ;
 4516   unsigned char raw : 1 ;
 4517   unsigned char real_raw : 1 ;
 4518   unsigned char icanon : 1 ;
 4519   unsigned char closing : 1 ;
 4520   unsigned char echo_overrun : 1 ;
 4521   unsigned short minimum_to_wake ;
 4522   unsigned long overrun_time ;
 4523   int num_overrun ;
 4524   unsigned long process_char_map[4U] ;
 4525   char *read_buf ;
 4526   int read_head ;
 4527   int read_tail ;
 4528   int read_cnt ;
 4529   unsigned long read_flags[64U] ;
 4530   unsigned char *echo_buf ;
 4531   unsigned int echo_pos ;
 4532   unsigned int echo_cnt ;
 4533   int canon_data ;
 4534   unsigned long canon_head ;
 4535   unsigned int canon_column ;
 4536   struct mutex atomic_read_lock ;
 4537   struct mutex atomic_write_lock ;
 4538   struct mutex output_lock ;
 4539   struct mutex echo_lock ;
 4540   unsigned char *write_buf ;
 4541   int write_cnt ;
 4542   spinlock_t read_lock ;
 4543   struct work_struct SAK_work ;
 4544   struct tty_port *port ;
 4545};
 4546#line 188 "include/linux/serial.h"
 4547struct serial_icounter_struct {
 4548   int cts ;
 4549   int dsr ;
 4550   int rng ;
 4551   int dcd ;
 4552   int rx ;
 4553   int tx ;
 4554   int frame ;
 4555   int overrun ;
 4556   int parity ;
 4557   int brk ;
 4558   int buf_overrun ;
 4559   int reserved[9U] ;
 4560};
 4561#line 360 "include/linux/ptrace.h"
 4562struct seq_file {
 4563   char *buf ;
 4564   size_t size ;
 4565   size_t from ;
 4566   size_t count ;
 4567   loff_t index ;
 4568   loff_t read_pos ;
 4569   u64 version ;
 4570   struct mutex lock ;
 4571   struct seq_operations  const  *op ;
 4572   void *private ;
 4573};
 4574#line 28 "include/linux/seq_file.h"
 4575struct seq_operations {
 4576   void *(*start)(struct seq_file * , loff_t * ) ;
 4577   void (*stop)(struct seq_file * , void * ) ;
 4578   void *(*next)(struct seq_file * , void * , loff_t * ) ;
 4579   int (*show)(struct seq_file * , void * ) ;
 4580};
 4581#line 38 "include/linux/socket.h"
 4582typedef unsigned short sa_family_t;
 4583#line 39 "include/linux/socket.h"
 4584struct sockaddr {
 4585   sa_family_t sa_family ;
 4586   char sa_data[14U] ;
 4587};
 4588#line 41 "include/linux/hdlc/ioctl.h"
 4589struct __anonstruct_sync_serial_settings_165 {
 4590   unsigned int clock_rate ;
 4591   unsigned int clock_type ;
 4592   unsigned short loopback ;
 4593};
 4594#line 41 "include/linux/hdlc/ioctl.h"
 4595typedef struct __anonstruct_sync_serial_settings_165 sync_serial_settings;
 4596#line 48 "include/linux/hdlc/ioctl.h"
 4597struct __anonstruct_te1_settings_166 {
 4598   unsigned int clock_rate ;
 4599   unsigned int clock_type ;
 4600   unsigned short loopback ;
 4601   unsigned int slot_map ;
 4602};
 4603#line 48 "include/linux/hdlc/ioctl.h"
 4604typedef struct __anonstruct_te1_settings_166 te1_settings;
 4605#line 53 "include/linux/hdlc/ioctl.h"
 4606struct __anonstruct_raw_hdlc_proto_167 {
 4607   unsigned short encoding ;
 4608   unsigned short parity ;
 4609};
 4610#line 53 "include/linux/hdlc/ioctl.h"
 4611typedef struct __anonstruct_raw_hdlc_proto_167 raw_hdlc_proto;
 4612#line 63 "include/linux/hdlc/ioctl.h"
 4613struct __anonstruct_fr_proto_168 {
 4614   unsigned int t391 ;
 4615   unsigned int t392 ;
 4616   unsigned int n391 ;
 4617   unsigned int n392 ;
 4618   unsigned int n393 ;
 4619   unsigned short lmi ;
 4620   unsigned short dce ;
 4621};
 4622#line 63 "include/linux/hdlc/ioctl.h"
 4623typedef struct __anonstruct_fr_proto_168 fr_proto;
 4624#line 67 "include/linux/hdlc/ioctl.h"
 4625struct __anonstruct_fr_proto_pvc_169 {
 4626   unsigned int dlci ;
 4627};
 4628#line 67 "include/linux/hdlc/ioctl.h"
 4629typedef struct __anonstruct_fr_proto_pvc_169 fr_proto_pvc;
 4630#line 72 "include/linux/hdlc/ioctl.h"
 4631struct __anonstruct_fr_proto_pvc_info_170 {
 4632   unsigned int dlci ;
 4633   char master[16U] ;
 4634};
 4635#line 72 "include/linux/hdlc/ioctl.h"
 4636typedef struct __anonstruct_fr_proto_pvc_info_170 fr_proto_pvc_info;
 4637#line 77 "include/linux/hdlc/ioctl.h"
 4638struct __anonstruct_cisco_proto_171 {
 4639   unsigned int interval ;
 4640   unsigned int timeout ;
 4641};
 4642#line 77 "include/linux/hdlc/ioctl.h"
 4643typedef struct __anonstruct_cisco_proto_171 cisco_proto;
 4644#line 93 "include/linux/hdlc/ioctl.h"
 4645struct ifmap {
 4646   unsigned long mem_start ;
 4647   unsigned long mem_end ;
 4648   unsigned short base_addr ;
 4649   unsigned char irq ;
 4650   unsigned char dma ;
 4651   unsigned char port ;
 4652};
 4653#line 142 "include/linux/if.h"
 4654union __anonunion_ifs_ifsu_172 {
 4655   raw_hdlc_proto *raw_hdlc ;
 4656   cisco_proto *cisco ;
 4657   fr_proto *fr ;
 4658   fr_proto_pvc *fr_pvc ;
 4659   fr_proto_pvc_info *fr_pvc_info ;
 4660   sync_serial_settings *sync ;
 4661   te1_settings *te1 ;
 4662};
 4663#line 142 "include/linux/if.h"
 4664struct if_settings {
 4665   unsigned int type ;
 4666   unsigned int size ;
 4667   union __anonunion_ifs_ifsu_172 ifs_ifsu ;
 4668};
 4669#line 160 "include/linux/if.h"
 4670union __anonunion_ifr_ifrn_173 {
 4671   char ifrn_name[16U] ;
 4672};
 4673#line 160 "include/linux/if.h"
 4674union __anonunion_ifr_ifru_174 {
 4675   struct sockaddr ifru_addr ;
 4676   struct sockaddr ifru_dstaddr ;
 4677   struct sockaddr ifru_broadaddr ;
 4678   struct sockaddr ifru_netmask ;
 4679   struct sockaddr ifru_hwaddr ;
 4680   short ifru_flags ;
 4681   int ifru_ivalue ;
 4682   int ifru_mtu ;
 4683   struct ifmap ifru_map ;
 4684   char ifru_slave[16U] ;
 4685   char ifru_newname[16U] ;
 4686   void *ifru_data ;
 4687   struct if_settings ifru_settings ;
 4688};
 4689#line 160 "include/linux/if.h"
 4690struct ifreq {
 4691   union __anonunion_ifr_ifrn_173 ifr_ifrn ;
 4692   union __anonunion_ifr_ifru_174 ifr_ifru ;
 4693};
 4694#line 224 "include/linux/if.h"
 4695struct ethhdr {
 4696   unsigned char h_dest[6U] ;
 4697   unsigned char h_source[6U] ;
 4698   __be16 h_proto ;
 4699};
 4700#line 104 "include/linux/random.h"
 4701struct net;
 4702#line 104
 4703struct net;
 4704#line 104
 4705struct net;
 4706#line 104
 4707struct net;
 4708#line 108 "include/net/checksum.h"
 4709struct sk_buff;
 4710#line 108
 4711struct sk_buff;
 4712#line 108
 4713struct sk_buff;
 4714#line 108
 4715struct sk_buff;
 4716#line 33 "include/linux/dmaengine.h"
 4717typedef s32 dma_cookie_t;
 4718#line 874
 4719struct net_device;
 4720#line 874
 4721struct net_device;
 4722#line 874
 4723struct net_device;
 4724#line 874
 4725struct net_device;
 4726#line 875 "include/linux/dmaengine.h"
 4727struct nf_conntrack {
 4728   atomic_t use ;
 4729};
 4730#line 102 "include/linux/skbuff.h"
 4731struct nf_bridge_info {
 4732   atomic_t use ;
 4733   struct net_device *physindev ;
 4734   struct net_device *physoutdev ;
 4735   unsigned int mask ;
 4736   unsigned long data[4U] ;
 4737};
 4738#line 112 "include/linux/skbuff.h"
 4739struct sk_buff_head {
 4740   struct sk_buff *next ;
 4741   struct sk_buff *prev ;
 4742   __u32 qlen ;
 4743   spinlock_t lock ;
 4744};
 4745#line 259 "include/linux/skbuff.h"
 4746typedef unsigned int sk_buff_data_t;
 4747#line 260
 4748struct sec_path;
 4749#line 260
 4750struct sec_path;
 4751#line 260
 4752struct sec_path;
 4753#line 260 "include/linux/skbuff.h"
 4754struct __anonstruct_ldv_29530_178 {
 4755   __u16 csum_start ;
 4756   __u16 csum_offset ;
 4757};
 4758#line 260 "include/linux/skbuff.h"
 4759union __anonunion_ldv_29531_177 {
 4760   __wsum csum ;
 4761   struct __anonstruct_ldv_29530_178 ldv_29530 ;
 4762};
 4763#line 260 "include/linux/skbuff.h"
 4764union __anonunion_ldv_29561_179 {
 4765   __u32 mark ;
 4766   __u32 dropcount ;
 4767};
 4768#line 260 "include/linux/skbuff.h"
 4769struct sk_buff {
 4770   struct sk_buff *next ;
 4771   struct sk_buff *prev ;
 4772   ktime_t tstamp ;
 4773   struct sock *sk ;
 4774   struct net_device *dev ;
 4775   char cb[48U] ;
 4776   unsigned long _skb_refdst ;
 4777   struct sec_path *sp ;
 4778   unsigned int len ;
 4779   unsigned int data_len ;
 4780   __u16 mac_len ;
 4781   __u16 hdr_len ;
 4782   union __anonunion_ldv_29531_177 ldv_29531 ;
 4783   __u32 priority ;
 4784   unsigned char local_df : 1 ;
 4785   unsigned char cloned : 1 ;
 4786   unsigned char ip_summed : 2 ;
 4787   unsigned char nohdr : 1 ;
 4788   unsigned char nfctinfo : 3 ;
 4789   unsigned char pkt_type : 3 ;
 4790   unsigned char fclone : 2 ;
 4791   unsigned char ipvs_property : 1 ;
 4792   unsigned char peeked : 1 ;
 4793   unsigned char nf_trace : 1 ;
 4794   __be16 protocol ;
 4795   void (*destructor)(struct sk_buff * ) ;
 4796   struct nf_conntrack *nfct ;
 4797   struct sk_buff *nfct_reasm ;
 4798   struct nf_bridge_info *nf_bridge ;
 4799   int skb_iif ;
 4800   __u16 tc_index ;
 4801   __u16 tc_verd ;
 4802   __u32 rxhash ;
 4803   __u16 queue_mapping ;
 4804   unsigned char ndisc_nodetype : 2 ;
 4805   unsigned char ooo_okay : 1 ;
 4806   dma_cookie_t dma_cookie ;
 4807   __u32 secmark ;
 4808   union __anonunion_ldv_29561_179 ldv_29561 ;
 4809   __u16 vlan_tci ;
 4810   sk_buff_data_t transport_header ;
 4811   sk_buff_data_t network_header ;
 4812   sk_buff_data_t mac_header ;
 4813   sk_buff_data_t tail ;
 4814   sk_buff_data_t end ;
 4815   unsigned char *head ;
 4816   unsigned char *data ;
 4817   unsigned int truesize ;
 4818   atomic_t users ;
 4819};
 4820#line 450
 4821struct dst_entry;
 4822#line 450
 4823struct dst_entry;
 4824#line 450
 4825struct dst_entry;
 4826#line 113 "include/linux/netlink.h"
 4827struct nlattr {
 4828   __u16 nla_len ;
 4829   __u16 nla_type ;
 4830};
 4831#line 39 "include/linux/if_link.h"
 4832struct rtnl_link_stats64 {
 4833   __u64 rx_packets ;
 4834   __u64 tx_packets ;
 4835   __u64 rx_bytes ;
 4836   __u64 tx_bytes ;
 4837   __u64 rx_errors ;
 4838   __u64 tx_errors ;
 4839   __u64 rx_dropped ;
 4840   __u64 tx_dropped ;
 4841   __u64 multicast ;
 4842   __u64 collisions ;
 4843   __u64 rx_length_errors ;
 4844   __u64 rx_over_errors ;
 4845   __u64 rx_crc_errors ;
 4846   __u64 rx_frame_errors ;
 4847   __u64 rx_fifo_errors ;
 4848   __u64 rx_missed_errors ;
 4849   __u64 tx_aborted_errors ;
 4850   __u64 tx_carrier_errors ;
 4851   __u64 tx_fifo_errors ;
 4852   __u64 tx_heartbeat_errors ;
 4853   __u64 tx_window_errors ;
 4854   __u64 rx_compressed ;
 4855   __u64 tx_compressed ;
 4856};
 4857#line 302 "include/linux/if_link.h"
 4858struct ifla_vf_info {
 4859   __u32 vf ;
 4860   __u8 mac[32U] ;
 4861   __u32 vlan ;
 4862   __u32 qos ;
 4863   __u32 tx_rate ;
 4864};
 4865#line 60 "include/linux/miscdevice.h"
 4866struct pm_qos_request_list {
 4867   struct plist_node list ;
 4868   int pm_qos_class ;
 4869};
 4870#line 16 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/compat.h"
 4871typedef s32 compat_time_t;
 4872#line 37 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/compat.h"
 4873typedef s32 compat_long_t;
 4874#line 40 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/compat.h"
 4875typedef u32 compat_ulong_t;
 4876#line 42 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/compat.h"
 4877struct compat_timespec {
 4878   compat_time_t tv_sec ;
 4879   s32 tv_nsec ;
 4880};
 4881#line 196 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/compat.h"
 4882typedef u32 compat_uptr_t;
 4883#line 205 "include/linux/compat.h"
 4884struct compat_robust_list {
 4885   compat_uptr_t next ;
 4886};
 4887#line 209 "include/linux/compat.h"
 4888struct compat_robust_list_head {
 4889   struct compat_robust_list list ;
 4890   compat_long_t futex_offset ;
 4891   compat_uptr_t list_op_pending ;
 4892};
 4893#line 563 "include/linux/compat.h"
 4894struct ethtool_cmd {
 4895   __u32 cmd ;
 4896   __u32 supported ;
 4897   __u32 advertising ;
 4898   __u16 speed ;
 4899   __u8 duplex ;
 4900   __u8 port ;
 4901   __u8 phy_address ;
 4902   __u8 transceiver ;
 4903   __u8 autoneg ;
 4904   __u8 mdio_support ;
 4905   __u32 maxtxpkt ;
 4906   __u32 maxrxpkt ;
 4907   __u16 speed_hi ;
 4908   __u8 eth_tp_mdix ;
 4909   __u8 reserved2 ;
 4910   __u32 lp_advertising ;
 4911   __u32 reserved[2U] ;
 4912};
 4913#line 61 "include/linux/ethtool.h"
 4914struct ethtool_drvinfo {
 4915   __u32 cmd ;
 4916   char driver[32U] ;
 4917   char version[32U] ;
 4918   char fw_version[32U] ;
 4919   char bus_info[32U] ;
 4920   char reserved1[32U] ;
 4921   char reserved2[12U] ;
 4922   __u32 n_priv_flags ;
 4923   __u32 n_stats ;
 4924   __u32 testinfo_len ;
 4925   __u32 eedump_len ;
 4926   __u32 regdump_len ;
 4927};
 4928#line 87 "include/linux/ethtool.h"
 4929struct ethtool_wolinfo {
 4930   __u32 cmd ;
 4931   __u32 supported ;
 4932   __u32 wolopts ;
 4933   __u8 sopass[6U] ;
 4934};
 4935#line 102 "include/linux/ethtool.h"
 4936struct ethtool_regs {
 4937   __u32 cmd ;
 4938   __u32 version ;
 4939   __u32 len ;
 4940   __u8 data[0U] ;
 4941};
 4942#line 110 "include/linux/ethtool.h"
 4943struct ethtool_eeprom {
 4944   __u32 cmd ;
 4945   __u32 magic ;
 4946   __u32 offset ;
 4947   __u32 len ;
 4948   __u8 data[0U] ;
 4949};
 4950#line 119 "include/linux/ethtool.h"
 4951struct ethtool_coalesce {
 4952   __u32 cmd ;
 4953   __u32 rx_coalesce_usecs ;
 4954   __u32 rx_max_coalesced_frames ;
 4955   __u32 rx_coalesce_usecs_irq ;
 4956   __u32 rx_max_coalesced_frames_irq ;
 4957   __u32 tx_coalesce_usecs ;
 4958   __u32 tx_max_coalesced_frames ;
 4959   __u32 tx_coalesce_usecs_irq ;
 4960   __u32 tx_max_coalesced_frames_irq ;
 4961   __u32 stats_block_coalesce_usecs ;
 4962   __u32 use_adaptive_rx_coalesce ;
 4963   __u32 use_adaptive_tx_coalesce ;
 4964   __u32 pkt_rate_low ;
 4965   __u32 rx_coalesce_usecs_low ;
 4966   __u32 rx_max_coalesced_frames_low ;
 4967   __u32 tx_coalesce_usecs_low ;
 4968   __u32 tx_max_coalesced_frames_low ;
 4969   __u32 pkt_rate_high ;
 4970   __u32 rx_coalesce_usecs_high ;
 4971   __u32 rx_max_coalesced_frames_high ;
 4972   __u32 tx_coalesce_usecs_high ;
 4973   __u32 tx_max_coalesced_frames_high ;
 4974   __u32 rate_sample_interval ;
 4975};
 4976#line 215 "include/linux/ethtool.h"
 4977struct ethtool_ringparam {
 4978   __u32 cmd ;
 4979   __u32 rx_max_pending ;
 4980   __u32 rx_mini_max_pending ;
 4981   __u32 rx_jumbo_max_pending ;
 4982   __u32 tx_max_pending ;
 4983   __u32 rx_pending ;
 4984   __u32 rx_mini_pending ;
 4985   __u32 rx_jumbo_pending ;
 4986   __u32 tx_pending ;
 4987};
 4988#line 237 "include/linux/ethtool.h"
 4989struct ethtool_channels {
 4990   __u32 cmd ;
 4991   __u32 max_rx ;
 4992   __u32 max_tx ;
 4993   __u32 max_other ;
 4994   __u32 max_combined ;
 4995   __u32 rx_count ;
 4996   __u32 tx_count ;
 4997   __u32 other_count ;
 4998   __u32 combined_count ;
 4999};
 5000#line 265 "include/linux/ethtool.h"
 5001struct ethtool_pauseparam {
 5002   __u32 cmd ;
 5003   __u32 autoneg ;
 5004   __u32 rx_pause ;
 5005   __u32 tx_pause ;
 5006};
 5007#line 314 "include/linux/ethtool.h"
 5008struct ethtool_test {
 5009   __u32 cmd ;
 5010   __u32 flags ;
 5011   __u32 reserved ;
 5012   __u32 len ;
 5013   __u64 data[0U] ;
 5014};
 5015#line 326 "include/linux/ethtool.h"
 5016struct ethtool_stats {
 5017   __u32 cmd ;
 5018   __u32 n_stats ;
 5019   __u64 data[0U] ;
 5020};
 5021#line 347 "include/linux/ethtool.h"
 5022struct ethtool_tcpip4_spec {
 5023   __be32 ip4src ;
 5024   __be32 ip4dst ;
 5025   __be16 psrc ;
 5026   __be16 pdst ;
 5027   __u8 tos ;
 5028};
 5029#line 380 "include/linux/ethtool.h"
 5030struct ethtool_ah_espip4_spec {
 5031   __be32 ip4src ;
 5032   __be32 ip4dst ;
 5033   __be32 spi ;
 5034   __u8 tos ;
 5035};
 5036#line 396 "include/linux/ethtool.h"
 5037struct ethtool_usrip4_spec {
 5038   __be32 ip4src ;
 5039   __be32 ip4dst ;
 5040   __be32 l4_4_bytes ;
 5041   __u8 tos ;
 5042   __u8 ip_ver ;
 5043   __u8 proto ;
 5044};
 5045#line 416 "include/linux/ethtool.h"
 5046union ethtool_flow_union {
 5047   struct ethtool_tcpip4_spec tcp_ip4_spec ;
 5048   struct ethtool_tcpip4_spec udp_ip4_spec ;
 5049   struct ethtool_tcpip4_spec sctp_ip4_spec ;
 5050   struct ethtool_ah_espip4_spec ah_ip4_spec ;
 5051   struct ethtool_ah_espip4_spec esp_ip4_spec ;
 5052   struct ethtool_usrip4_spec usr_ip4_spec ;
 5053   struct ethhdr ether_spec ;
 5054   __u8 hdata[60U] ;
 5055};
 5056#line 427 "include/linux/ethtool.h"
 5057struct ethtool_flow_ext {
 5058   __be16 vlan_etype ;
 5059   __be16 vlan_tci ;
 5060   __be32 data[2U] ;
 5061};
 5062#line 433 "include/linux/ethtool.h"
 5063struct ethtool_rx_flow_spec {
 5064   __u32 flow_type ;
 5065   union ethtool_flow_union h_u ;
 5066   struct ethtool_flow_ext h_ext ;
 5067   union ethtool_flow_union m_u ;
 5068   struct ethtool_flow_ext m_ext ;
 5069   __u64 ring_cookie ;
 5070   __u32 location ;
 5071};
 5072#line 456 "include/linux/ethtool.h"
 5073struct ethtool_rxnfc {
 5074   __u32 cmd ;
 5075   __u32 flow_type ;
 5076   __u64 data ;
 5077   struct ethtool_rx_flow_spec fs ;
 5078   __u32 rule_cnt ;
 5079   __u32 rule_locs[0U] ;
 5080};
 5081#line 526 "include/linux/ethtool.h"
 5082struct ethtool_rxfh_indir {
 5083   __u32 cmd ;
 5084   __u32 size ;
 5085   __u32 ring_index[0U] ;
 5086};
 5087#line 542 "include/linux/ethtool.h"
 5088union __anonunion_h_u_185 {
 5089   struct ethtool_tcpip4_spec tcp_ip4_spec ;
 5090   struct ethtool_tcpip4_spec udp_ip4_spec ;
 5091   struct ethtool_tcpip4_spec sctp_ip4_spec ;
 5092   struct ethtool_ah_espip4_spec ah_ip4_spec ;
 5093   struct ethtool_ah_espip4_spec esp_ip4_spec ;
 5094   struct ethtool_usrip4_spec usr_ip4_spec ;
 5095   struct ethhdr ether_spec ;
 5096   __u8 hdata[72U] ;
 5097};
 5098#line 542 "include/linux/ethtool.h"
 5099union __anonunion_m_u_186 {
 5100   struct ethtool_tcpip4_spec tcp_ip4_spec ;
 5101   struct ethtool_tcpip4_spec udp_ip4_spec ;
 5102   struct ethtool_tcpip4_spec sctp_ip4_spec ;
 5103   struct ethtool_ah_espip4_spec ah_ip4_spec ;
 5104   struct ethtool_ah_espip4_spec esp_ip4_spec ;
 5105   struct ethtool_usrip4_spec usr_ip4_spec ;
 5106   struct ethhdr ether_spec ;
 5107   __u8 hdata[72U] ;
 5108};
 5109#line 542 "include/linux/ethtool.h"
 5110struct ethtool_rx_ntuple_flow_spec {
 5111   __u32 flow_type ;
 5112   union __anonunion_h_u_185 h_u ;
 5113   union __anonunion_m_u_186 m_u ;
 5114   __u16 vlan_tag ;
 5115   __u16 vlan_tag_mask ;
 5116   __u64 data ;
 5117   __u64 data_mask ;
 5118   __s32 action ;
 5119};
 5120#line 579 "include/linux/ethtool.h"
 5121struct ethtool_rx_ntuple {
 5122   __u32 cmd ;
 5123   struct ethtool_rx_ntuple_flow_spec fs ;
 5124};
 5125#line 595 "include/linux/ethtool.h"
 5126struct ethtool_flash {
 5127   __u32 cmd ;
 5128   __u32 region ;
 5129   char data[128U] ;
 5130};
 5131#line 603 "include/linux/ethtool.h"
 5132struct ethtool_dump {
 5133   __u32 cmd ;
 5134   __u32 version ;
 5135   __u32 flag ;
 5136   __u32 len ;
 5137   __u8 data[0U] ;
 5138};
 5139#line 721 "include/linux/ethtool.h"
 5140struct ethtool_rx_ntuple_list {
 5141   struct list_head list ;
 5142   unsigned int count ;
 5143};
 5144#line 728
 5145enum ethtool_phys_id_state {
 5146    ETHTOOL_ID_INACTIVE = 0,
 5147    ETHTOOL_ID_ACTIVE = 1,
 5148    ETHTOOL_ID_ON = 2,
 5149    ETHTOOL_ID_OFF = 3
 5150} ;
 5151#line 763 "include/linux/ethtool.h"
 5152struct ethtool_ops {
 5153   int (*get_settings)(struct net_device * , struct ethtool_cmd * ) ;
 5154   int (*set_settings)(struct net_device * , struct ethtool_cmd * ) ;
 5155   void (*get_drvinfo)(struct net_device * , struct ethtool_drvinfo * ) ;
 5156   int (*get_regs_len)(struct net_device * ) ;
 5157   void (*get_regs)(struct net_device * , struct ethtool_regs * , void * ) ;
 5158   void (*get_wol)(struct net_device * , struct ethtool_wolinfo * ) ;
 5159   int (*set_wol)(struct net_device * , struct ethtool_wolinfo * ) ;
 5160   u32 (*get_msglevel)(struct net_device * ) ;
 5161   void (*set_msglevel)(struct net_device * , u32  ) ;
 5162   int (*nway_reset)(struct net_device * ) ;
 5163   u32 (*get_link)(struct net_device * ) ;
 5164   int (*get_eeprom_len)(struct net_device * ) ;
 5165   int (*get_eeprom)(struct net_device * , struct ethtool_eeprom * , u8 * ) ;
 5166   int (*set_eeprom)(struct net_device * , struct ethtool_eeprom * , u8 * ) ;
 5167   int (*get_coalesce)(struct net_device * , struct ethtool_coalesce * ) ;
 5168   int (*set_coalesce)(struct net_device * , struct ethtool_coalesce * ) ;
 5169   void (*get_ringparam)(struct net_device * , struct ethtool_ringparam * ) ;
 5170   int (*set_ringparam)(struct net_device * , struct ethtool_ringparam * ) ;
 5171   void (*get_pauseparam)(struct net_device * , struct ethtool_pauseparam * ) ;
 5172   int (*set_pauseparam)(struct net_device * , struct ethtool_pauseparam * ) ;
 5173   u32 (*get_rx_csum)(struct net_device * ) ;
 5174   int (*set_rx_csum)(struct net_device * , u32  ) ;
 5175   u32 (*get_tx_csum)(struct net_device * ) ;
 5176   int (*set_tx_csum)(struct net_device * , u32  ) ;
 5177   u32 (*get_sg)(struct net_device * ) ;
 5178   int (*set_sg)(struct net_device * , u32  ) ;
 5179   u32 (*get_tso)(struct net_device * ) ;
 5180   int (*set_tso)(struct net_device * , u32  ) ;
 5181   void (*self_test)(struct net_device * , struct ethtool_test * , u64 * ) ;
 5182   void (*get_strings)(struct net_device * , u32  , u8 * ) ;
 5183   int (*set_phys_id)(struct net_device * , enum ethtool_phys_id_state  ) ;
 5184   void (*get_ethtool_stats)(struct net_device * , struct ethtool_stats * , u64 * ) ;
 5185   int (*begin)(struct net_device * ) ;
 5186   void (*complete)(struct net_device * ) ;
 5187   u32 (*get_ufo)(struct net_device * ) ;
 5188   int (*set_ufo)(struct net_device * , u32  ) ;
 5189   u32 (*get_flags)(struct net_device * ) ;
 5190   int (*set_flags)(struct net_device * , u32  ) ;
 5191   u32 (*get_priv_flags)(struct net_device * ) ;
 5192   int (*set_priv_flags)(struct net_device * , u32  ) ;
 5193   int (*get_sset_count)(struct net_device * , int  ) ;
 5194   int (*get_rxnfc)(struct net_device * , struct ethtool_rxnfc * , void * ) ;
 5195   int (*set_rxnfc)(struct net_device * , struct ethtool_rxnfc * ) ;
 5196   int (*flash_device)(struct net_device * , struct ethtool_flash * ) ;
 5197   int (*reset)(struct net_device * , u32 * ) ;
 5198   int (*set_rx_ntuple)(struct net_device * , struct ethtool_rx_ntuple * ) ;
 5199   int (*get_rx_ntuple)(struct net_device * , u32  , void * ) ;
 5200   int (*get_rxfh_indir)(struct net_device * , struct ethtool_rxfh_indir * ) ;
 5201   int (*set_rxfh_indir)(struct net_device * , struct ethtool_rxfh_indir  const  * ) ;
 5202   void (*get_channels)(struct net_device * , struct ethtool_channels * ) ;
 5203   int (*set_channels)(struct net_device * , struct ethtool_channels * ) ;
 5204   int (*get_dump_flag)(struct net_device * , struct ethtool_dump * ) ;
 5205   int (*get_dump_data)(struct net_device * , struct ethtool_dump * , void * ) ;
 5206   int (*set_dump)(struct net_device * , struct ethtool_dump * ) ;
 5207};
 5208#line 972
 5209struct prot_inuse;
 5210#line 972
 5211struct prot_inuse;
 5212#line 972
 5213struct prot_inuse;
 5214#line 972
 5215struct prot_inuse;
 5216#line 973 "include/linux/ethtool.h"
 5217struct netns_core {
 5218   struct ctl_table_header *sysctl_hdr ;
 5219   int sysctl_somaxconn ;
 5220   struct prot_inuse *inuse ;
 5221};
 5222#line 38 "include/net/snmp.h"
 5223struct u64_stats_sync {
 5224
 5225};
 5226#line 138 "include/linux/u64_stats_sync.h"
 5227struct ipstats_mib {
 5228   u64 mibs[31U] ;
 5229   struct u64_stats_sync syncp ;
 5230};
 5231#line 61 "include/net/snmp.h"
 5232struct icmp_mib {
 5233   unsigned long mibs[27U] ;
 5234};
 5235#line 67 "include/net/snmp.h"
 5236struct icmpmsg_mib {
 5237   unsigned long mibs[512U] ;
 5238};
 5239#line 72 "include/net/snmp.h"
 5240struct icmpv6_mib {
 5241   unsigned long mibs[5U] ;
 5242};
 5243#line 83 "include/net/snmp.h"
 5244struct icmpv6msg_mib {
 5245   unsigned long mibs[512U] ;
 5246};
 5247#line 93 "include/net/snmp.h"
 5248struct tcp_mib {
 5249   unsigned long mibs[15U] ;
 5250};
 5251#line 100 "include/net/snmp.h"
 5252struct udp_mib {
 5253   unsigned long mibs[7U] ;
 5254};
 5255#line 106 "include/net/snmp.h"
 5256struct linux_mib {
 5257   unsigned long mibs[80U] ;
 5258};
 5259#line 112 "include/net/snmp.h"
 5260struct linux_xfrm_mib {
 5261   unsigned long mibs[27U] ;
 5262};
 5263#line 118 "include/net/snmp.h"
 5264struct netns_mib {
 5265   struct tcp_mib *tcp_statistics[2U] ;
 5266   struct ipstats_mib *ip_statistics[2U] ;
 5267   struct linux_mib *net_statistics[2U] ;
 5268   struct udp_mib *udp_statistics[2U] ;
 5269   struct udp_mib *udplite_statistics[2U] ;
 5270   struct icmp_mib *icmp_statistics[2U] ;
 5271   struct icmpmsg_mib *icmpmsg_statistics[2U] ;
 5272   struct proc_dir_entry *proc_net_devsnmp6 ;
 5273   struct udp_mib *udp_stats_in6[2U] ;
 5274   struct udp_mib *udplite_stats_in6[2U] ;
 5275   struct ipstats_mib *ipv6_statistics[2U] ;
 5276   struct icmpv6_mib *icmpv6_statistics[2U] ;
 5277   struct icmpv6msg_mib *icmpv6msg_statistics[2U] ;
 5278   struct linux_xfrm_mib *xfrm_statistics[2U] ;
 5279};
 5280#line 26 "include/net/netns/mib.h"
 5281struct netns_unix {
 5282   int sysctl_max_dgram_qlen ;
 5283   struct ctl_table_header *ctl ;
 5284};
 5285#line 12 "include/net/netns/unix.h"
 5286struct netns_packet {
 5287   spinlock_t sklist_lock ;
 5288   struct hlist_head sklist ;
 5289};
 5290#line 14 "include/net/netns/packet.h"
 5291struct netns_frags {
 5292   int nqueues ;
 5293   atomic_t mem ;
 5294   struct list_head lru_list ;
 5295   int timeout ;
 5296   int high_thresh ;
 5297   int low_thresh ;
 5298};
 5299#line 73 "include/net/inet_frag.h"
 5300struct ipv4_devconf;
 5301#line 73
 5302struct ipv4_devconf;
 5303#line 73
 5304struct ipv4_devconf;
 5305#line 73
 5306struct ipv4_devconf;
 5307#line 74
 5308struct fib_rules_ops;
 5309#line 74
 5310struct fib_rules_ops;
 5311#line 74
 5312struct fib_rules_ops;
 5313#line 74
 5314struct fib_rules_ops;
 5315#line 75
 5316struct xt_table;
 5317#line 75
 5318struct xt_table;
 5319#line 75
 5320struct xt_table;
 5321#line 75 "include/net/inet_frag.h"
 5322struct netns_ipv4 {
 5323   struct ctl_table_header *forw_hdr ;
 5324   struct ctl_table_header *frags_hdr ;
 5325   struct ctl_table_header *ipv4_hdr ;
 5326   struct ctl_table_header *route_hdr ;
 5327   struct ipv4_devconf *devconf_all ;
 5328   struct ipv4_devconf *devconf_dflt ;
 5329   struct fib_rules_ops *rules_ops ;
 5330   struct hlist_head *fib_table_hash ;
 5331   struct sock *fibnl ;
 5332   struct sock **icmp_sk ;
 5333   struct sock *tcp_sock ;
 5334   struct netns_frags frags ;
 5335   struct xt_table *iptable_filter ;
 5336   struct xt_table *iptable_mangle ;
 5337   struct xt_table *iptable_raw ;
 5338   struct xt_table *arptable_filter ;
 5339   struct xt_table *iptable_security ;
 5340   struct xt_table *nat_table ;
 5341   struct hlist_head *nat_bysource ;
 5342   unsigned int nat_htable_size ;
 5343   int sysctl_icmp_echo_ignore_all ;
 5344   int sysctl_icmp_echo_ignore_broadcasts ;
 5345   int sysctl_icmp_ignore_bogus_error_responses ;
 5346   int sysctl_icmp_ratelimit ;
 5347   int sysctl_icmp_ratemask ;
 5348   int sysctl_icmp_errors_use_inbound_ifaddr ;
 5349   int sysctl_rt_cache_rebuild_count ;
 5350   int current_rt_cache_rebuild_count ;
 5351   unsigned int sysctl_ping_group_range[2U] ;
 5352   atomic_t rt_genid ;
 5353   atomic_t dev_addr_genid ;
 5354   struct list_head mr_tables ;
 5355   struct fib_rules_ops *mr_rules_ops ;
 5356};
 5357#line 70 "include/net/netns/ipv4.h"
 5358struct dst_ops {
 5359   unsigned short family ;
 5360   __be16 protocol ;
 5361   unsigned int gc_thresh ;
 5362   int (*gc)(struct dst_ops * ) ;
 5363   struct dst_entry *(*check)(struct dst_entry * , __u32  ) ;
 5364   unsigned int (*default_advmss)(struct dst_entry  const  * ) ;
 5365   unsigned int (*default_mtu)(struct dst_entry  const  * ) ;
 5366   u32 *(*cow_metrics)(struct dst_entry * , unsigned long  ) ;
 5367   void (*destroy)(struct dst_entry * ) ;
 5368   void (*ifdown)(struct dst_entry * , struct net_device * , int  ) ;
 5369   struct dst_entry *(*negative_advice)(struct dst_entry * ) ;
 5370   void (*link_failure)(struct sk_buff * ) ;
 5371   void (*update_pmtu)(struct dst_entry * , u32  ) ;
 5372   int (*local_out)(struct sk_buff * ) ;
 5373   struct kmem_cache *kmem_cachep ;
 5374   struct percpu_counter pcpuc_entries ;
 5375};
 5376#line 66 "include/net/dst_ops.h"
 5377struct netns_sysctl_ipv6 {
 5378   struct ctl_table_header *table ;
 5379   struct ctl_table_header *frags_hdr ;
 5380   int bindv6only ;
 5381   int flush_delay ;
 5382   int ip6_rt_max_size ;
 5383   int ip6_rt_gc_min_interval ;
 5384   int ip6_rt_gc_timeout ;
 5385   int ip6_rt_gc_interval ;
 5386   int ip6_rt_gc_elasticity ;
 5387   int ip6_rt_mtu_expires ;
 5388   int ip6_rt_min_advmss ;
 5389   int icmpv6_time ;
 5390};
 5391#line 29 "include/net/netns/ipv6.h"
 5392struct ipv6_devconf;
 5393#line 29
 5394struct ipv6_devconf;
 5395#line 29
 5396struct ipv6_devconf;
 5397#line 29
 5398struct rt6_info;
 5399#line 29
 5400struct rt6_info;
 5401#line 29
 5402struct rt6_info;
 5403#line 29
 5404struct rt6_statistics;
 5405#line 29
 5406struct rt6_statistics;
 5407#line 29
 5408struct rt6_statistics;
 5409#line 29
 5410struct fib6_table;
 5411#line 29
 5412struct fib6_table;
 5413#line 29
 5414struct fib6_table;
 5415#line 29 "include/net/netns/ipv6.h"
 5416struct netns_ipv6 {
 5417   struct netns_sysctl_ipv6 sysctl ;
 5418   struct ipv6_devconf *devconf_all ;
 5419   struct ipv6_devconf *devconf_dflt ;
 5420   struct netns_frags frags ;
 5421   struct xt_table *ip6table_filter ;
 5422   struct xt_table *ip6table_mangle ;
 5423   struct xt_table *ip6table_raw ;
 5424   struct xt_table *ip6table_security ;
 5425   struct rt6_info *ip6_null_entry ;
 5426   struct rt6_statistics *rt6_stats ;
 5427   struct timer_list ip6_fib_timer ;
 5428   struct hlist_head *fib_table_hash ;
 5429   struct fib6_table *fib6_main_tbl ;
 5430   struct dst_ops ip6_dst_ops ;
 5431   unsigned int ip6_rt_gc_expire ;
 5432   unsigned long ip6_rt_last_gc ;
 5433   struct rt6_info *ip6_prohibit_entry ;
 5434   struct rt6_info *ip6_blk_hole_entry ;
 5435   struct fib6_table *fib6_local_tbl ;
 5436   struct fib_rules_ops *fib6_rules_ops ;
 5437   struct sock **icmp_sk ;
 5438   struct sock *ndisc_sk ;
 5439   struct sock *tcp_sk ;
 5440   struct sock *igmp_sk ;
 5441   struct list_head mr6_tables ;
 5442   struct fib_rules_ops *mr6_rules_ops ;
 5443};
 5444#line 68 "include/net/netns/ipv6.h"
 5445struct netns_dccp {
 5446   struct sock *v4_ctl_sk ;
 5447   struct sock *v6_ctl_sk ;
 5448};
 5449#line 46 "include/linux/proc_fs.h"
 5450typedef int read_proc_t(char * , char ** , off_t  , int  , int * , void * );
 5451#line 48 "include/linux/proc_fs.h"
 5452typedef int write_proc_t(struct file * , char const   * , unsigned long  , void * );
 5453#line 49 "include/linux/proc_fs.h"
 5454struct proc_dir_entry {
 5455   unsigned int low_ino ;
 5456   unsigned int namelen ;
 5457   char const   *name ;
 5458   mode_t mode ;
 5459   nlink_t nlink ;
 5460   uid_t uid ;
 5461   gid_t gid ;
 5462   loff_t size ;
 5463   struct inode_operations  const  *proc_iops ;
 5464   struct file_operations  const  *proc_fops ;
 5465   struct proc_dir_entry *next ;
 5466   struct proc_dir_entry *parent ;
 5467   struct proc_dir_entry *subdir ;
 5468   void *data ;
 5469   read_proc_t *read_proc ;
 5470   write_proc_t *write_proc ;
 5471   atomic_t count ;
 5472   int pde_users ;
 5473   spinlock_t pde_unload_lock ;
 5474   struct completion *pde_unload_completion ;
 5475   struct list_head pde_openers ;
 5476};
 5477#line 376 "include/linux/netfilter.h"
 5478struct ebt_table;
 5479#line 376
 5480struct ebt_table;
 5481#line 376
 5482struct ebt_table;
 5483#line 376
 5484struct ebt_table;
 5485#line 377 "include/linux/netfilter.h"
 5486struct netns_xt {
 5487   struct list_head tables[13U] ;
 5488   struct ebt_table *broute_table ;
 5489   struct ebt_table *frame_filter ;
 5490   struct ebt_table *frame_nat ;
 5491};
 5492#line 17 "include/net/netns/x_tables.h"
 5493struct hlist_nulls_node;
 5494#line 17
 5495struct hlist_nulls_node;
 5496#line 17
 5497struct hlist_nulls_node;
 5498#line 17 "include/net/netns/x_tables.h"
 5499struct hlist_nulls_head {
 5500   struct hlist_nulls_node *first ;
 5501};
 5502#line 20 "include/linux/list_nulls.h"
 5503struct hlist_nulls_node {
 5504   struct hlist_nulls_node *next ;
 5505   struct hlist_nulls_node **pprev ;
 5506};
 5507#line 86
 5508struct ip_conntrack_stat;
 5509#line 86
 5510struct ip_conntrack_stat;
 5511#line 86
 5512struct ip_conntrack_stat;
 5513#line 86 "include/linux/list_nulls.h"
 5514struct netns_ct {
 5515   atomic_t count ;
 5516   unsigned int expect_count ;
 5517   unsigned int htable_size ;
 5518   struct kmem_cache *nf_conntrack_cachep ;
 5519   struct hlist_nulls_head *hash ;
 5520   struct hlist_head *expect_hash ;
 5521   struct hlist_nulls_head unconfirmed ;
 5522   struct hlist_nulls_head dying ;
 5523   struct ip_conntrack_stat *stat ;
 5524   int sysctl_events ;
 5525   unsigned int sysctl_events_retry_timeout ;
 5526   int sysctl_acct ;
 5527   int sysctl_tstamp ;
 5528   int sysctl_checksum ;
 5529   unsigned int sysctl_log_invalid ;
 5530   struct ctl_table_header *sysctl_header ;
 5531   struct ctl_table_header *acct_sysctl_header ;
 5532   struct ctl_table_header *tstamp_sysctl_header ;
 5533   struct ctl_table_header *event_sysctl_header ;
 5534   char *slabname ;
 5535};
 5536#line 484 "include/linux/xfrm.h"
 5537struct xfrm_policy_hash {
 5538   struct hlist_head *table ;
 5539   unsigned int hmask ;
 5540};
 5541#line 16 "include/net/netns/xfrm.h"
 5542struct netns_xfrm {
 5543   struct list_head state_all ;
 5544   struct hlist_head *state_bydst ;
 5545   struct hlist_head *state_bysrc ;
 5546   struct hlist_head *state_byspi ;
 5547   unsigned int state_hmask ;
 5548   unsigned int state_num ;
 5549   struct work_struct state_hash_work ;
 5550   struct hlist_head state_gc_list ;
 5551   struct work_struct state_gc_work ;
 5552   wait_queue_head_t km_waitq ;
 5553   struct list_head policy_all ;
 5554   struct hlist_head *policy_byidx ;
 5555   unsigned int policy_idx_hmask ;
 5556   struct hlist_head policy_inexact[6U] ;
 5557   struct xfrm_policy_hash policy_bydst[6U] ;
 5558   unsigned int policy_count[6U] ;
 5559   struct work_struct policy_hash_work ;
 5560   struct sock *nlsk ;
 5561   struct sock *nlsk_stash ;
 5562   u32 sysctl_aevent_etime ;
 5563   u32 sysctl_aevent_rseqth ;
 5564   int sysctl_larval_drop ;
 5565   u32 sysctl_acq_expires ;
 5566   struct ctl_table_header *sysctl_hdr ;
 5567   struct dst_ops xfrm4_dst_ops ;
 5568   struct dst_ops xfrm6_dst_ops ;
 5569};
 5570#line 62
 5571struct net_generic;
 5572#line 62
 5573struct net_generic;
 5574#line 62
 5575struct net_generic;
 5576#line 62
 5577struct net_generic;
 5578#line 63
 5579struct netns_ipvs;
 5580#line 63
 5581struct netns_ipvs;
 5582#line 63
 5583struct netns_ipvs;
 5584#line 63
 5585struct netns_ipvs;
 5586#line 64 "include/net/netns/xfrm.h"
 5587struct net {
 5588   atomic_t passive ;
 5589   atomic_t count ;
 5590   spinlock_t rules_mod_lock ;
 5591   struct list_head list ;
 5592   struct list_head cleanup_list ;
 5593   struct list_head exit_list ;
 5594   struct proc_dir_entry *proc_net ;
 5595   struct proc_dir_entry *proc_net_stat ;
 5596   struct ctl_table_set sysctls ;
 5597   struct sock *rtnl ;
 5598   struct sock *genl_sock ;
 5599   struct list_head dev_base_head ;
 5600   struct hlist_head *dev_name_head ;
 5601   struct hlist_head *dev_index_head ;
 5602   struct list_head rules_ops ;
 5603   struct net_device *loopback_dev ;
 5604   struct netns_core core ;
 5605   struct netns_mib mib ;
 5606   struct netns_packet packet ;
 5607   struct netns_unix unx ;
 5608   struct netns_ipv4 ipv4 ;
 5609   struct netns_ipv6 ipv6 ;
 5610   struct netns_dccp dccp ;
 5611   struct netns_xt xt ;
 5612   struct netns_ct ct ;
 5613   struct sock *nfnl ;
 5614   struct sock *nfnl_stash ;
 5615   struct sk_buff_head wext_nlevents ;
 5616   struct net_generic *gen ;
 5617   struct netns_xfrm xfrm ;
 5618   struct netns_ipvs *ipvs ;
 5619};
 5620#line 59 "include/net/dsa.h"
 5621struct ieee_ets {
 5622   __u8 willing ;
 5623   __u8 ets_cap ;
 5624   __u8 cbs ;
 5625   __u8 tc_tx_bw[8U] ;
 5626   __u8 tc_rx_bw[8U] ;
 5627   __u8 tc_tsa[8U] ;
 5628   __u8 prio_tc[8U] ;
 5629   __u8 tc_reco_bw[8U] ;
 5630   __u8 tc_reco_tsa[8U] ;
 5631   __u8 reco_prio_tc[8U] ;
 5632};
 5633#line 69 "include/linux/dcbnl.h"
 5634struct ieee_pfc {
 5635   __u8 pfc_cap ;
 5636   __u8 pfc_en ;
 5637   __u8 mbc ;
 5638   __u16 delay ;
 5639   __u64 requests[8U] ;
 5640   __u64 indications[8U] ;
 5641};
 5642#line 89 "include/linux/dcbnl.h"
 5643struct cee_pg {
 5644   __u8 willing ;
 5645   __u8 error ;
 5646   __u8 pg_en ;
 5647   __u8 tcs_supported ;
 5648   __u8 pg_bw[8U] ;
 5649   __u8 prio_pg[8U] ;
 5650};
 5651#line 112 "include/linux/dcbnl.h"
 5652struct cee_pfc {
 5653   __u8 willing ;
 5654   __u8 error ;
 5655   __u8 pfc_en ;
 5656   __u8 tcs_supported ;
 5657};
 5658#line 127 "include/linux/dcbnl.h"
 5659struct dcb_app {
 5660   __u8 selector ;
 5661   __u8 priority ;
 5662   __u16 protocol ;
 5663};
 5664#line 156 "include/linux/dcbnl.h"
 5665struct dcb_peer_app_info {
 5666   __u8 willing ;
 5667   __u8 error ;
 5668};
 5669#line 33 "include/net/dcbnl.h"
 5670struct dcbnl_rtnl_ops {
 5671   int (*ieee_getets)(struct net_device * , struct ieee_ets * ) ;
 5672   int (*ieee_setets)(struct net_device * , struct ieee_ets * ) ;
 5673   int (*ieee_getpfc)(struct net_device * , struct ieee_pfc * ) ;
 5674   int (*ieee_setpfc)(struct net_device * , struct ieee_pfc * ) ;
 5675   int (*ieee_getapp)(struct net_device * , struct dcb_app * ) ;
 5676   int (*ieee_setapp)(struct net_device * , struct dcb_app * ) ;
 5677   int (*ieee_peer_getets)(struct net_device * , struct ieee_ets * ) ;
 5678   int (*ieee_peer_getpfc)(struct net_device * , struct ieee_pfc * ) ;
 5679   u8 (*getstate)(struct net_device * ) ;
 5680   u8 (*setstate)(struct net_device * , u8  ) ;
 5681   void (*getpermhwaddr)(struct net_device * , u8 * ) ;
 5682   void (*setpgtccfgtx)(struct net_device * , int  , u8  , u8  , u8  , u8  ) ;
 5683   void (*setpgbwgcfgtx)(struct net_device * , int  , u8  ) ;
 5684   void (*setpgtccfgrx)(struct net_device * , int  , u8  , u8  , u8  , u8  ) ;
 5685   void (*setpgbwgcfgrx)(struct net_device * , int  , u8  ) ;
 5686   void (*getpgtccfgtx)(struct net_device * , int  , u8 * , u8 * , u8 * , u8 * ) ;
 5687   void (*getpgbwgcfgtx)(struct net_device * , int  , u8 * ) ;
 5688   void (*getpgtccfgrx)(struct net_device * , int  , u8 * , u8 * , u8 * , u8 * ) ;
 5689   void (*getpgbwgcfgrx)(struct net_device * , int  , u8 * ) ;
 5690   void (*setpfccfg)(struct net_device * , int  , u8  ) ;
 5691   void (*getpfccfg)(struct net_device * , int  , u8 * ) ;
 5692   u8 (*setall)(struct net_device * ) ;
 5693   u8 (*getcap)(struct net_device * , int  , u8 * ) ;
 5694   u8 (*getnumtcs)(struct net_device * , int  , u8 * ) ;
 5695   u8 (*setnumtcs)(struct net_device * , int  , u8  ) ;
 5696   u8 (*getpfcstate)(struct net_device * ) ;
 5697   void (*setpfcstate)(struct net_device * , u8  ) ;
 5698   void (*getbcncfg)(struct net_device * , int  , u32 * ) ;
 5699   void (*setbcncfg)(struct net_device * , int  , u32  ) ;
 5700   void (*getbcnrp)(struct net_device * , int  , u8 * ) ;
 5701   void (*setbcnrp)(struct net_device * , int  , u8  ) ;
 5702   u8 (*setapp)(struct net_device * , u8  , u16  , u8  ) ;
 5703   u8 (*getapp)(struct net_device * , u8  , u16  ) ;
 5704   u8 (*getfeatcfg)(struct net_device * , int  , u8 * ) ;
 5705   u8 (*setfeatcfg)(struct net_device * , int  , u8  ) ;
 5706   u8 (*getdcbx)(struct net_device * ) ;
 5707   u8 (*setdcbx)(struct net_device * , u8  ) ;
 5708   int (*peer_getappinfo)(struct net_device * , struct dcb_peer_app_info * , u16 * ) ;
 5709   int (*peer_getapptable)(struct net_device * , struct dcb_app * ) ;
 5710   int (*cee_peer_getpg)(struct net_device * , struct cee_pg * ) ;
 5711   int (*cee_peer_getpfc)(struct net_device * , struct cee_pfc * ) ;
 5712};
 5713#line 91
 5714struct vlan_group;
 5715#line 91
 5716struct vlan_group;
 5717#line 91
 5718struct vlan_group;
 5719#line 91
 5720struct vlan_group;
 5721#line 92
 5722struct netpoll_info;
 5723#line 92
 5724struct netpoll_info;
 5725#line 92
 5726struct netpoll_info;
 5727#line 92
 5728struct netpoll_info;
 5729#line 93
 5730struct phy_device;
 5731#line 93
 5732struct phy_device;
 5733#line 93
 5734struct phy_device;
 5735#line 93
 5736struct phy_device;
 5737#line 94
 5738struct wireless_dev;
 5739#line 94
 5740struct wireless_dev;
 5741#line 94
 5742struct wireless_dev;
 5743#line 94
 5744struct wireless_dev;
 5745#line 95
 5746enum netdev_tx {
 5747    __NETDEV_TX_MIN = (-0x7FFFFFFF-1),
 5748    NETDEV_TX_OK = 0,
 5749    NETDEV_TX_BUSY = 16,
 5750    NETDEV_TX_LOCKED = 32
 5751} ;
 5752#line 117 "include/linux/netdevice.h"
 5753typedef enum netdev_tx netdev_tx_t;
 5754#line 136 "include/linux/netdevice.h"
 5755struct net_device_stats {
 5756   unsigned long rx_packets ;
 5757   unsigned long tx_packets ;
 5758   unsigned long rx_bytes ;
 5759   unsigned long tx_bytes ;
 5760   unsigned long rx_errors ;
 5761   unsigned long tx_errors ;
 5762   unsigned long rx_dropped ;
 5763   unsigned long tx_dropped ;
 5764   unsigned long multicast ;
 5765   unsigned long collisions ;
 5766   unsigned long rx_length_errors ;
 5767   unsigned long rx_over_errors ;
 5768   unsigned long rx_crc_errors ;
 5769   unsigned long rx_frame_errors ;
 5770   unsigned long rx_fifo_errors ;
 5771   unsigned long rx_missed_errors ;
 5772   unsigned long tx_aborted_errors ;
 5773   unsigned long tx_carrier_errors ;
 5774   unsigned long tx_fifo_errors ;
 5775   unsigned long tx_heartbeat_errors ;
 5776   unsigned long tx_window_errors ;
 5777   unsigned long rx_compressed ;
 5778   unsigned long tx_compressed ;
 5779};
 5780#line 211
 5781struct neighbour;
 5782#line 211
 5783struct neighbour;
 5784#line 211
 5785struct neighbour;
 5786#line 211
 5787struct neighbour;
 5788#line 212
 5789struct neigh_parms;
 5790#line 212
 5791struct neigh_parms;
 5792#line 212
 5793struct neigh_parms;
 5794#line 212
 5795struct neigh_parms;
 5796#line 239 "include/linux/netdevice.h"
 5797struct netdev_hw_addr_list {
 5798   struct list_head list ;
 5799   int count ;
 5800};
 5801#line 244 "include/linux/netdevice.h"
 5802struct hh_cache {
 5803   struct hh_cache *hh_next ;
 5804   atomic_t hh_refcnt ;
 5805   __be16 hh_type ;
 5806   u16 hh_len ;
 5807   int (*hh_output)(struct sk_buff * ) ;
 5808   seqlock_t hh_lock ;
 5809   unsigned long hh_data[16U] ;
 5810};
 5811#line 292 "include/linux/netdevice.h"
 5812struct header_ops {
 5813   int (*create)(struct sk_buff * , struct net_device * , unsigned short  , void const   * ,
 5814                 void const   * , unsigned int  ) ;
 5815   int (*parse)(struct sk_buff  const  * , unsigned char * ) ;
 5816   int (*rebuild)(struct sk_buff * ) ;
 5817   int (*cache)(struct neighbour  const  * , struct hh_cache * ) ;
 5818   void (*cache_update)(struct hh_cache * , struct net_device  const  * , unsigned char const   * ) ;
 5819};
 5820#line 392
 5821enum rx_handler_result {
 5822    RX_HANDLER_CONSUMED = 0,
 5823    RX_HANDLER_ANOTHER = 1,
 5824    RX_HANDLER_EXACT = 2,
 5825    RX_HANDLER_PASS = 3
 5826} ;
 5827#line 440 "include/linux/netdevice.h"
 5828typedef enum rx_handler_result rx_handler_result_t;
 5829#line 441 "include/linux/netdevice.h"
 5830typedef rx_handler_result_t rx_handler_func_t(struct sk_buff ** );
 5831#line 548
 5832struct Qdisc;
 5833#line 548
 5834struct Qdisc;
 5835#line 548
 5836struct Qdisc;
 5837#line 548 "include/linux/netdevice.h"
 5838struct netdev_queue {
 5839   struct net_device *dev ;
 5840   struct Qdisc *qdisc ;
 5841   unsigned long state ;
 5842   struct Qdisc *qdisc_sleeping ;
 5843   struct kobject kobj ;
 5844   int numa_node ;
 5845   spinlock_t _xmit_lock ;
 5846   int xmit_lock_owner ;
 5847   unsigned long trans_start ;
 5848};
 5849#line 590 "include/linux/netdevice.h"
 5850struct rps_map {
 5851   unsigned int len ;
 5852   struct rcu_head rcu ;
 5853   u16 cpus[0U] ;
 5854};
 5855#line 602 "include/linux/netdevice.h"
 5856struct rps_dev_flow {
 5857   u16 cpu ;
 5858   u16 filter ;
 5859   unsigned int last_qtail ;
 5860};
 5861#line 614 "include/linux/netdevice.h"
 5862struct rps_dev_flow_table {
 5863   unsigned int mask ;
 5864   struct rcu_head rcu ;
 5865   struct work_struct free_work ;
 5866   struct rps_dev_flow flows[0U] ;
 5867};
 5868#line 666 "include/linux/netdevice.h"
 5869struct netdev_rx_queue {
 5870   struct rps_map *rps_map ;
 5871   struct rps_dev_flow_table *rps_flow_table ;
 5872   struct kobject kobj ;
 5873   struct net_device *dev ;
 5874};
 5875#line 676 "include/linux/netdevice.h"
 5876struct xps_map {
 5877   unsigned int len ;
 5878   unsigned int alloc_len ;
 5879   struct rcu_head rcu ;
 5880   u16 queues[0U] ;
 5881};
 5882#line 689 "include/linux/netdevice.h"
 5883struct xps_dev_maps {
 5884   struct rcu_head rcu ;
 5885   struct xps_map *cpu_map[0U] ;
 5886};
 5887#line 700 "include/linux/netdevice.h"
 5888struct netdev_tc_txq {
 5889   u16 count ;
 5890   u16 offset ;
 5891};
 5892#line 711 "include/linux/netdevice.h"
 5893struct net_device_ops {
 5894   int (*ndo_init)(struct net_device * ) ;
 5895   void (*ndo_uninit)(struct net_device * ) ;
 5896   int (*ndo_open)(struct net_device * ) ;
 5897   int (*ndo_stop)(struct net_device * ) ;
 5898   netdev_tx_t (*ndo_start_xmit)(struct sk_buff * , struct net_device * ) ;
 5899   u16 (*ndo_select_queue)(struct net_device * , struct sk_buff * ) ;
 5900   void (*ndo_change_rx_flags)(struct net_device * , int  ) ;
 5901   void (*ndo_set_rx_mode)(struct net_device * ) ;
 5902   void (*ndo_set_multicast_list)(struct net_device * ) ;
 5903   int (*ndo_set_mac_address)(struct net_device * , void * ) ;
 5904   int (*ndo_validate_addr)(struct net_device * ) ;
 5905   int (*ndo_do_ioctl)(struct net_device * , struct ifreq * , int  ) ;
 5906   int (*ndo_set_config)(struct net_device * , struct ifmap * ) ;
 5907   int (*ndo_change_mtu)(struct net_device * , int  ) ;
 5908   int (*ndo_neigh_setup)(struct net_device * , struct neigh_parms * ) ;
 5909   void (*ndo_tx_timeout)(struct net_device * ) ;
 5910   struct rtnl_link_stats64 *(*ndo_get_stats64)(struct net_device * , struct rtnl_link_stats64 * ) ;
 5911   struct net_device_stats *(*ndo_get_stats)(struct net_device * ) ;
 5912   void (*ndo_vlan_rx_register)(struct net_device * , struct vlan_group * ) ;
 5913   void (*ndo_vlan_rx_add_vid)(struct net_device * , unsigned short  ) ;
 5914   void (*ndo_vlan_rx_kill_vid)(struct net_device * , unsigned short  ) ;
 5915   void (*ndo_poll_controller)(struct net_device * ) ;
 5916   int (*ndo_netpoll_setup)(struct net_device * , struct netpoll_info * ) ;
 5917   void (*ndo_netpoll_cleanup)(struct net_device * ) ;
 5918   int (*ndo_set_vf_mac)(struct net_device * , int  , u8 * ) ;
 5919   int (*ndo_set_vf_vlan)(struct net_device * , int  , u16  , u8  ) ;
 5920   int (*ndo_set_vf_tx_rate)(struct net_device * , int  , int  ) ;
 5921   int (*ndo_get_vf_config)(struct net_device * , int  , struct ifla_vf_info * ) ;
 5922   int (*ndo_set_vf_port)(struct net_device * , int  , struct nlattr ** ) ;
 5923   int (*ndo_get_vf_port)(struct net_device * , int  , struct sk_buff * ) ;
 5924   int (*ndo_setup_tc)(struct net_device * , u8  ) ;
 5925   int (*ndo_fcoe_enable)(struct net_device * ) ;
 5926   int (*ndo_fcoe_disable)(struct net_device * ) ;
 5927   int (*ndo_fcoe_ddp_setup)(struct net_device * , u16  , struct scatterlist * , unsigned int  ) ;
 5928   int (*ndo_fcoe_ddp_done)(struct net_device * , u16  ) ;
 5929   int (*ndo_fcoe_ddp_target)(struct net_device * , u16  , struct scatterlist * ,
 5930                              unsigned int  ) ;
 5931   int (*ndo_fcoe_get_wwn)(struct net_device * , u64 * , int  ) ;
 5932   int (*ndo_rx_flow_steer)(struct net_device * , struct sk_buff  const  * , u16  ,
 5933                            u32  ) ;
 5934   int (*ndo_add_slave)(struct net_device * , struct net_device * ) ;
 5935   int (*ndo_del_slave)(struct net_device * , struct net_device * ) ;
 5936   u32 (*ndo_fix_features)(struct net_device * , u32  ) ;
 5937   int (*ndo_set_features)(struct net_device * , u32  ) ;
 5938};
 5939#line 995
 5940struct iw_handler_def;
 5941#line 995
 5942struct iw_handler_def;
 5943#line 995
 5944struct iw_handler_def;
 5945#line 995
 5946struct iw_public_data;
 5947#line 995
 5948struct iw_public_data;
 5949#line 995
 5950struct iw_public_data;
 5951#line 995
 5952struct in_device;
 5953#line 995
 5954struct in_device;
 5955#line 995
 5956struct in_device;
 5957#line 995
 5958struct dn_dev;
 5959#line 995
 5960struct dn_dev;
 5961#line 995
 5962struct dn_dev;
 5963#line 995
 5964struct inet6_dev;
 5965#line 995
 5966struct inet6_dev;
 5967#line 995
 5968struct inet6_dev;
 5969#line 995
 5970struct cpu_rmap;
 5971#line 995
 5972struct cpu_rmap;
 5973#line 995
 5974struct cpu_rmap;
 5975#line 995
 5976struct pcpu_lstats;
 5977#line 995
 5978struct pcpu_lstats;
 5979#line 995
 5980struct pcpu_lstats;
 5981#line 995
 5982struct pcpu_tstats;
 5983#line 995
 5984struct pcpu_tstats;
 5985#line 995
 5986struct pcpu_tstats;
 5987#line 995
 5988struct pcpu_dstats;
 5989#line 995
 5990struct pcpu_dstats;
 5991#line 995
 5992struct pcpu_dstats;
 5993#line 995 "include/linux/netdevice.h"
 5994union __anonunion_ldv_34794_194 {
 5995   void *ml_priv ;
 5996   struct pcpu_lstats *lstats ;
 5997   struct pcpu_tstats *tstats ;
 5998   struct pcpu_dstats *dstats ;
 5999};
 6000#line 995
 6001struct garp_port;
 6002#line 995
 6003struct garp_port;
 6004#line 995
 6005struct garp_port;
 6006#line 995
 6007struct rtnl_link_ops;
 6008#line 995
 6009struct rtnl_link_ops;
 6010#line 995
 6011struct rtnl_link_ops;
 6012#line 995 "include/linux/netdevice.h"
 6013struct net_device {
 6014   char name[16U] ;
 6015   struct pm_qos_request_list pm_qos_req ;
 6016   struct hlist_node name_hlist ;
 6017   char *ifalias ;
 6018   unsigned long mem_end ;
 6019   unsigned long mem_start ;
 6020   unsigned long base_addr ;
 6021   unsigned int irq ;
 6022   unsigned long state ;
 6023   struct list_head dev_list ;
 6024   struct list_head napi_list ;
 6025   struct list_head unreg_list ;
 6026   u32 features ;
 6027   u32 hw_features ;
 6028   u32 wanted_features ;
 6029   u32 vlan_features ;
 6030   int ifindex ;
 6031   int iflink ;
 6032   struct net_device_stats stats ;
 6033   atomic_long_t rx_dropped ;
 6034   struct iw_handler_def  const  *wireless_handlers ;
 6035   struct iw_public_data *wireless_data ;
 6036   struct net_device_ops  const  *netdev_ops ;
 6037   struct ethtool_ops  const  *ethtool_ops ;
 6038   struct header_ops  const  *header_ops ;
 6039   unsigned int flags ;
 6040   unsigned int priv_flags ;
 6041   unsigned short gflags ;
 6042   unsigned short padded ;
 6043   unsigned char operstate ;
 6044   unsigned char link_mode ;
 6045   unsigned char if_port ;
 6046   unsigned char dma ;
 6047   unsigned int mtu ;
 6048   unsigned short type ;
 6049   unsigned short hard_header_len ;
 6050   unsigned short needed_headroom ;
 6051   unsigned short needed_tailroom ;
 6052   unsigned char perm_addr[32U] ;
 6053   unsigned char addr_assign_type ;
 6054   unsigned char addr_len ;
 6055   unsigned short dev_id ;
 6056   spinlock_t addr_list_lock ;
 6057   struct netdev_hw_addr_list uc ;
 6058   struct netdev_hw_addr_list mc ;
 6059   int uc_promisc ;
 6060   unsigned int promiscuity ;
 6061   unsigned int allmulti ;
 6062   struct vlan_group *vlgrp ;
 6063   void *dsa_ptr ;
 6064   void *atalk_ptr ;
 6065   struct in_device *ip_ptr ;
 6066   struct dn_dev *dn_ptr ;
 6067   struct inet6_dev *ip6_ptr ;
 6068   void *ec_ptr ;
 6069   void *ax25_ptr ;
 6070   struct wireless_dev *ieee80211_ptr ;
 6071   unsigned long last_rx ;
 6072   struct net_device *master ;
 6073   unsigned char *dev_addr ;
 6074   struct netdev_hw_addr_list dev_addrs ;
 6075   unsigned char broadcast[32U] ;
 6076   struct kset *queues_kset ;
 6077   struct netdev_rx_queue *_rx ;
 6078   unsigned int num_rx_queues ;
 6079   unsigned int real_num_rx_queues ;
 6080   struct cpu_rmap *rx_cpu_rmap ;
 6081   rx_handler_func_t *rx_handler ;
 6082   void *rx_handler_data ;
 6083   struct netdev_queue *ingress_queue ;
 6084   struct netdev_queue *_tx ;
 6085   unsigned int num_tx_queues ;
 6086   unsigned int real_num_tx_queues ;
 6087   struct Qdisc *qdisc ;
 6088   unsigned long tx_queue_len ;
 6089   spinlock_t tx_global_lock ;
 6090   struct xps_dev_maps *xps_maps ;
 6091   unsigned long trans_start ;
 6092   int watchdog_timeo ;
 6093   struct timer_list watchdog_timer ;
 6094   int *pcpu_refcnt ;
 6095   struct list_head todo_list ;
 6096   struct hlist_node index_hlist ;
 6097   struct list_head link_watch_list ;
 6098   unsigned char reg_state ;
 6099   bool dismantle ;
 6100   unsigned short rtnl_link_state ;
 6101   void (*destructor)(struct net_device * ) ;
 6102   struct netpoll_info *npinfo ;
 6103   struct net *nd_net ;
 6104   union __anonunion_ldv_34794_194 ldv_34794 ;
 6105   struct garp_port *garp_port ;
 6106   struct device dev ;
 6107   struct attribute_group  const  *sysfs_groups[4U] ;
 6108   struct rtnl_link_ops  const  *rtnl_link_ops ;
 6109   unsigned int gso_max_size ;
 6110   struct dcbnl_rtnl_ops  const  *dcbnl_ops ;
 6111   u8 num_tc ;
 6112   struct netdev_tc_txq tc_to_txq[16U] ;
 6113   u8 prio_tc_map[16U] ;
 6114   unsigned int fcoe_ddp_xid ;
 6115   struct ethtool_rx_ntuple_list ethtool_ntuple_list ;
 6116   struct phy_device *phydev ;
 6117   int group ;
 6118};
 6119#line 2651 "include/linux/netdevice.h"
 6120struct hdlc_proto {
 6121   int (*open)(struct net_device * ) ;
 6122   void (*close)(struct net_device * ) ;
 6123   void (*start)(struct net_device * ) ;
 6124   void (*stop)(struct net_device * ) ;
 6125   void (*detach)(struct net_device * ) ;
 6126   int (*ioctl)(struct net_device * , struct ifreq * ) ;
 6127   __be16 (*type_trans)(struct sk_buff * , struct net_device * ) ;
 6128   int (*netif_rx)(struct sk_buff * ) ;
 6129   netdev_tx_t (*xmit)(struct sk_buff * , struct net_device * ) ;
 6130   struct module *module ;
 6131   struct hdlc_proto *next ;
 6132};
 6133#line 45 "include/linux/hdlc.h"
 6134struct hdlc_device {
 6135   int (*attach)(struct net_device * , unsigned short  , unsigned short  ) ;
 6136   netdev_tx_t (*xmit)(struct sk_buff * , struct net_device * ) ;
 6137   struct hdlc_proto  const  *proto ;
 6138   int carrier ;
 6139   int open ;
 6140   spinlock_t state_lock ;
 6141   void *state ;
 6142   void *priv ;
 6143};
 6144#line 63 "include/linux/hdlc.h"
 6145typedef struct hdlc_device hdlc_device;
 6146#line 129 "include/linux/hdlc.h"
 6147struct _MGSL_PARAMS {
 6148   unsigned long mode ;
 6149   unsigned char loopback ;
 6150   unsigned short flags ;
 6151   unsigned char encoding ;
 6152   unsigned long clock_speed ;
 6153   unsigned char addr_filter ;
 6154   unsigned short crc_type ;
 6155   unsigned char preamble_length ;
 6156   unsigned char preamble ;
 6157   unsigned long data_rate ;
 6158   unsigned char data_bits ;
 6159   unsigned char stop_bits ;
 6160   unsigned char parity ;
 6161};
 6162#line 169 "include/linux/synclink.h"
 6163typedef struct _MGSL_PARAMS MGSL_PARAMS;
 6164#line 170 "include/linux/synclink.h"
 6165struct mgsl_icount {
 6166   __u32 cts ;
 6167   __u32 dsr ;
 6168   __u32 rng ;
 6169   __u32 dcd ;
 6170   __u32 tx ;
 6171   __u32 rx ;
 6172   __u32 frame ;
 6173   __u32 parity ;
 6174   __u32 overrun ;
 6175   __u32 brk ;
 6176   __u32 buf_overrun ;
 6177   __u32 txok ;
 6178   __u32 txunder ;
 6179   __u32 txabort ;
 6180   __u32 txtimeout ;
 6181   __u32 rxshort ;
 6182   __u32 rxlong ;
 6183   __u32 rxabort ;
 6184   __u32 rxover ;
 6185   __u32 rxcrc ;
 6186   __u32 rxok ;
 6187   __u32 exithunt ;
 6188   __u32 rxidle ;
 6189};
 6190#line 229 "include/linux/synclink.h"
 6191struct gpio_desc {
 6192   __u32 state ;
 6193   __u32 smask ;
 6194   __u32 dir ;
 6195   __u32 dmask ;
 6196};
 6197#line 236 "include/linux/synclink.h"
 6198struct MGSL_PARAMS32 {
 6199   compat_ulong_t mode ;
 6200   unsigned char loopback ;
 6201   unsigned short flags ;
 6202   unsigned char encoding ;
 6203   compat_ulong_t clock_speed ;
 6204   unsigned char addr_filter ;
 6205   unsigned short crc_type ;
 6206   unsigned char preamble_length ;
 6207   unsigned char preamble ;
 6208   compat_ulong_t data_rate ;
 6209   unsigned char data_bits ;
 6210   unsigned char stop_bits ;
 6211   unsigned char parity ;
 6212};
 6213#line 130 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
 6214struct slgt_info;
 6215#line 130
 6216struct slgt_info;
 6217#line 130
 6218struct slgt_info;
 6219#line 180 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
 6220struct cond_wait {
 6221   struct cond_wait *next ;
 6222   wait_queue_head_t q ;
 6223   wait_queue_t wait ;
 6224   unsigned int data ;
 6225};
 6226#line 203 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
 6227struct slgt_desc {
 6228   __le16 count ;
 6229   __le16 status ;
 6230   __le32 pbuf ;
 6231   __le32 next ;
 6232   char *buf ;
 6233   unsigned int pdesc ;
 6234   dma_addr_t buf_dma_addr ;
 6235   unsigned short buf_count ;
 6236};
 6237#line 220 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
 6238struct _input_signal_events {
 6239   int ri_up ;
 6240   int ri_down ;
 6241   int dsr_up ;
 6242   int dsr_down ;
 6243   int dcd_up ;
 6244   int dcd_down ;
 6245   int cts_up ;
 6246   int cts_down ;
 6247};
 6248#line 244 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
 6249struct slgt_info {
 6250   void *if_ptr ;
 6251   struct tty_port port ;
 6252   struct slgt_info *next_device ;
 6253   int magic ;
 6254   char device_name[25U] ;
 6255   struct pci_dev *pdev ;
 6256   int port_count ;
 6257   int adapter_num ;
 6258   int port_num ;
 6259   struct slgt_info *port_array[4U] ;
 6260   int line ;
 6261   struct mgsl_icount icount ;
 6262   int timeout ;
 6263   int x_char ;
 6264   unsigned int read_status_mask ;
 6265   unsigned int ignore_status_mask ;
 6266   wait_queue_head_t status_event_wait_q ;
 6267   wait_queue_head_t event_wait_q ;
 6268   struct timer_list tx_timer ;
 6269   struct timer_list rx_timer ;
 6270   unsigned int gpio_present ;
 6271   struct cond_wait *gpio_wait_q ;
 6272   spinlock_t lock ;
 6273   struct work_struct task ;
 6274   u32 pending_bh ;
 6275   bool bh_requested ;
 6276   bool bh_running ;
 6277   int isr_overflow ;
 6278   bool irq_requested ;
 6279   bool irq_occurred ;
 6280   unsigned int bus_type ;
 6281   unsigned int irq_level ;
 6282   unsigned long irq_flags ;
 6283   unsigned char *reg_addr ;
 6284   u32 phys_reg_addr ;
 6285   bool reg_addr_requested ;
 6286   MGSL_PARAMS params ;
 6287   u32 idle_mode ;
 6288   u32 max_frame_size ;
 6289   unsigned int rbuf_fill_level ;
 6290   unsigned int rx_pio ;
 6291   unsigned int if_mode ;
 6292   unsigned int base_clock ;
 6293   unsigned int xsync ;
 6294   unsigned int xctrl ;
 6295   bool rx_enabled ;
 6296   bool rx_restart ;
 6297   bool tx_enabled ;
 6298   bool tx_active ;
 6299   unsigned char signals ;
 6300   int init_error ;
 6301   unsigned char *tx_buf ;
 6302   int tx_count ;
 6303   char flag_buf[4096U] ;
 6304   char char_buf[4096U] ;
 6305   bool drop_rts_on_tx_done ;
 6306   struct _input_signal_events input_signal_events ;
 6307   int dcd_chkcount ;
 6308   int cts_chkcount ;
 6309   int dsr_chkcount ;
 6310   int ri_chkcount ;
 6311   char *bufs ;
 6312   dma_addr_t bufs_dma_addr ;
 6313   unsigned int rbuf_count ;
 6314   struct slgt_desc *rbufs ;
 6315   unsigned int rbuf_current ;
 6316   unsigned int rbuf_index ;
 6317   unsigned int rbuf_fill_index ;
 6318   unsigned short rbuf_fill_count ;
 6319   unsigned int tbuf_count ;
 6320   struct slgt_desc *tbufs ;
 6321   unsigned int tbuf_current ;
 6322   unsigned int tbuf_start ;
 6323   unsigned char *tmp_rbuf ;
 6324   unsigned int tmp_rbuf_count ;
 6325   int netcount ;
 6326   spinlock_t netlock ;
 6327   struct net_device *netdev ;
 6328};
 6329#line 1 "<compiler builtins>"
 6330void *__builtin_memcpy(void * , void const   * , unsigned long  ) ;
 6331#line 1
 6332unsigned long __builtin_object_size(void * , int  ) ;
 6333#line 1
 6334long __builtin_expect(long  , long  ) ;
 6335#line 24 "include/linux/list.h"
 6336__inline static void INIT_LIST_HEAD(struct list_head *list ) 
 6337{ 
 6338
 6339  {
 6340#line 26
 6341  list->next = list;
 6342#line 27
 6343  list->prev = list;
 6344#line 28
 6345  return;
 6346}
 6347}
 6348#line 186 "include/linux/list.h"
 6349__inline static int list_empty(struct list_head  const  *head ) 
 6350{ unsigned long __cil_tmp2 ;
 6351  struct list_head *__cil_tmp3 ;
 6352  struct list_head  const  *__cil_tmp4 ;
 6353  unsigned long __cil_tmp5 ;
 6354
 6355  {
 6356  {
 6357#line 188
 6358  __cil_tmp2 = (unsigned long )head;
 6359#line 188
 6360  __cil_tmp3 = head->next;
 6361#line 188
 6362  __cil_tmp4 = (struct list_head  const  *)__cil_tmp3;
 6363#line 188
 6364  __cil_tmp5 = (unsigned long )__cil_tmp4;
 6365#line 188
 6366  return (__cil_tmp5 == __cil_tmp2);
 6367  }
 6368}
 6369}
 6370#line 60 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/bitops.h"
 6371__inline static void set_bit(unsigned int nr , unsigned long volatile   *addr ) 
 6372{ long volatile   *__cil_tmp3 ;
 6373
 6374  {
 6375#line 68
 6376  __cil_tmp3 = (long volatile   *)addr;
 6377#line 68
 6378  __asm__  volatile   (".section .smp_locks,\"a\"\n.balign 4\n.long 671f - .\n.previous\n671:\n\tlock; bts %1,%0": "+m" (*__cil_tmp3): "Ir" (nr): "memory");
 6379#line 70
 6380  return;
 6381}
 6382}
 6383#line 98 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/bitops.h"
 6384__inline static void clear_bit(int nr , unsigned long volatile   *addr ) 
 6385{ long volatile   *__cil_tmp3 ;
 6386
 6387  {
 6388#line 105
 6389  __cil_tmp3 = (long volatile   *)addr;
 6390#line 105
 6391  __asm__  volatile   (".section .smp_locks,\"a\"\n.balign 4\n.long 671f - .\n.previous\n671:\n\tlock; btr %1,%0": "+m" (*__cil_tmp3): "Ir" (nr));
 6392#line 107
 6393  return;
 6394}
 6395}
 6396#line 246 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/bitops.h"
 6397__inline static int test_and_clear_bit(int nr , unsigned long volatile   *addr ) 
 6398{ int oldbit ;
 6399  long volatile   *__cil_tmp4 ;
 6400
 6401  {
 6402#line 250
 6403  __cil_tmp4 = (long volatile   *)addr;
 6404#line 250
 6405  __asm__  volatile   (".section .smp_locks,\"a\"\n.balign 4\n.long 671f - .\n.previous\n671:\n\tlock; btr %2,%1\n\tsbb %0,%0": "=r" (oldbit),
 6406                       "+m" (*__cil_tmp4): "Ir" (nr): "memory");
 6407#line 254
 6408  return (oldbit);
 6409}
 6410}
 6411#line 309 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/bitops.h"
 6412__inline static int constant_test_bit(unsigned int nr , unsigned long const volatile   *addr ) 
 6413{ int __cil_tmp3 ;
 6414  int __cil_tmp4 ;
 6415  unsigned int __cil_tmp5 ;
 6416  unsigned long __cil_tmp6 ;
 6417  unsigned long const volatile   *__cil_tmp7 ;
 6418  unsigned long volatile   __cil_tmp8 ;
 6419  unsigned long __cil_tmp9 ;
 6420  unsigned long __cil_tmp10 ;
 6421  int __cil_tmp11 ;
 6422
 6423  {
 6424  {
 6425#line 311
 6426  __cil_tmp3 = (int )nr;
 6427#line 311
 6428  __cil_tmp4 = __cil_tmp3 & 63;
 6429#line 311
 6430  __cil_tmp5 = nr / 64U;
 6431#line 311
 6432  __cil_tmp6 = (unsigned long )__cil_tmp5;
 6433#line 311
 6434  __cil_tmp7 = addr + __cil_tmp6;
 6435#line 311
 6436  __cil_tmp8 = *__cil_tmp7;
 6437#line 311
 6438  __cil_tmp9 = (unsigned long )__cil_tmp8;
 6439#line 311
 6440  __cil_tmp10 = __cil_tmp9 >> __cil_tmp4;
 6441#line 311
 6442  __cil_tmp11 = (int )__cil_tmp10;
 6443#line 311
 6444  return (__cil_tmp11 & 1);
 6445  }
 6446}
 6447}
 6448#line 315 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/bitops.h"
 6449__inline static int variable_test_bit(int nr , unsigned long const volatile   *addr ) 
 6450{ int oldbit ;
 6451  unsigned long *__cil_tmp4 ;
 6452
 6453  {
 6454#line 319
 6455  __cil_tmp4 = (unsigned long *)addr;
 6456#line 319
 6457  __asm__  volatile   ("bt %2,%1\n\tsbb %0,%0": "=r" (oldbit): "m" (*__cil_tmp4),
 6458                       "Ir" (nr));
 6459#line 324
 6460  return (oldbit);
 6461}
 6462}
 6463#line 101 "include/linux/printk.h"
 6464extern int printk(char const   *  , ...) ;
 6465#line 64 "include/asm-generic/bug.h"
 6466extern void warn_slowpath_fmt(char const   * , int  , char const   *  , ...) ;
 6467#line 69
 6468extern void warn_slowpath_null(char const   * , int  ) ;
 6469#line 170 "include/linux/kernel.h"
 6470extern void might_fault(void) ;
 6471#line 291
 6472extern int sprintf(char * , char const   *  , ...) ;
 6473#line 88 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/percpu.h"
 6474extern void __bad_percpu_size(void) ;
 6475#line 10 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/current.h"
 6476extern struct task_struct *current_task ;
 6477#line 12 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/current.h"
 6478__inline static struct task_struct *get_current(void) 
 6479{ struct task_struct *pfo_ret__ ;
 6480
 6481  {
 6482#line 14
 6483  if (1) {
 6484#line 14
 6485    goto case_8;
 6486  } else {
 6487#line 14
 6488    goto switch_default;
 6489#line 14
 6490    if (0) {
 6491#line 14
 6492      __asm__  ("movb %%gs:%P1,%0": "=q" (pfo_ret__): "p" (& current_task));
 6493#line 14
 6494      goto ldv_2386;
 6495#line 14
 6496      __asm__  ("movw %%gs:%P1,%0": "=r" (pfo_ret__): "p" (& current_task));
 6497#line 14
 6498      goto ldv_2386;
 6499#line 14
 6500      __asm__  ("movl %%gs:%P1,%0": "=r" (pfo_ret__): "p" (& current_task));
 6501#line 14
 6502      goto ldv_2386;
 6503      case_8: 
 6504#line 14
 6505      __asm__  ("movq %%gs:%P1,%0": "=r" (pfo_ret__): "p" (& current_task));
 6506#line 14
 6507      goto ldv_2386;
 6508      switch_default: 
 6509      {
 6510#line 14
 6511      __bad_percpu_size();
 6512      }
 6513    } else {
 6514
 6515    }
 6516  }
 6517  ldv_2386: ;
 6518#line 14
 6519  return (pfo_ret__);
 6520}
 6521}
 6522#line 11 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/cmpxchg_64.h"
 6523extern void __xchg_wrong_size(void) ;
 6524#line 349 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/paravirt_types.h"
 6525extern struct pv_irq_ops pv_irq_ops ;
 6526#line 34 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/string_64.h"
 6527extern void *__memcpy(void * , void const   * , size_t  ) ;
 6528#line 55
 6529extern void *memset(void * , int  , size_t  ) ;
 6530#line 60
 6531extern int memcmp(void const   * , void const   * , size_t  ) ;
 6532#line 63
 6533extern char *strcat(char * , char const   * ) ;
 6534#line 851 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/paravirt.h"
 6535__inline static unsigned long arch_local_save_flags(void) 
 6536{ unsigned long __ret ;
 6537  unsigned long __edi ;
 6538  unsigned long __esi ;
 6539  unsigned long __edx ;
 6540  unsigned long __ecx ;
 6541  unsigned long __eax ;
 6542  long tmp ;
 6543  void *__cil_tmp8 ;
 6544  unsigned long __cil_tmp9 ;
 6545  unsigned long __cil_tmp10 ;
 6546  int __cil_tmp11 ;
 6547  long __cil_tmp12 ;
 6548
 6549  {
 6550  {
 6551#line 853
 6552  __edi = __edi;
 6553#line 853
 6554  __esi = __esi;
 6555#line 853
 6556  __edx = __edx;
 6557#line 853
 6558  __ecx = __ecx;
 6559#line 853
 6560  __eax = __eax;
 6561#line 853
 6562  __cil_tmp8 = (void *)0;
 6563#line 853
 6564  __cil_tmp9 = (unsigned long )__cil_tmp8;
 6565#line 853
 6566  __cil_tmp10 = (unsigned long )pv_irq_ops.save_fl.func;
 6567#line 853
 6568  __cil_tmp11 = __cil_tmp10 == __cil_tmp9;
 6569#line 853
 6570  __cil_tmp12 = (long )__cil_tmp11;
 6571#line 853
 6572  tmp = __builtin_expect(__cil_tmp12, 0L);
 6573  }
 6574#line 853
 6575  if (tmp != 0L) {
 6576#line 853
 6577    __asm__  volatile   ("1:\tud2\n.pushsection __bug_table,\"a\"\n2:\t.long 1b - 2b, %c0 - 2b\n\t.word %c1, 0\n\t.org 2b+%c2\n.popsection": : "i" ((char *)"/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/paravirt.h"),
 6578                         "i" (853), "i" (12UL));
 6579    ldv_4705: ;
 6580#line 853
 6581    goto ldv_4705;
 6582  } else {
 6583
 6584  }
 6585#line 853
 6586  __asm__  volatile   ("771:\n\tcall *%c2;\n772:\n.pushsection .parainstructions,\"a\"\n .balign 8 \n .quad  771b\n  .byte %c1\n  .byte 772b-771b\n  .short %c3\n.popsection\n": "=a" (__eax): [paravirt_typenum] "i" (46UL),
 6587                       [paravirt_opptr] "i" (& pv_irq_ops.save_fl.func), [paravirt_clobber] "i" (1): "memory",
 6588                       "cc");
 6589#line 853
 6590  __ret = __eax;
 6591#line 853
 6592  return (__ret);
 6593}
 6594}
 6595#line 154 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/irqflags.h"
 6596__inline static int arch_irqs_disabled_flags(unsigned long flags ) 
 6597{ unsigned long __cil_tmp2 ;
 6598
 6599  {
 6600  {
 6601#line 156
 6602  __cil_tmp2 = flags & 512UL;
 6603#line 156
 6604  return (__cil_tmp2 == 0UL);
 6605  }
 6606}
 6607}
 6608#line 82 "include/linux/thread_info.h"
 6609__inline static int test_ti_thread_flag(struct thread_info *ti , int flag ) 
 6610{ int tmp ;
 6611  __u32 *__cil_tmp4 ;
 6612  unsigned long const volatile   *__cil_tmp5 ;
 6613
 6614  {
 6615  {
 6616#line 84
 6617  __cil_tmp4 = & ti->flags;
 6618#line 84
 6619  __cil_tmp5 = (unsigned long const volatile   *)__cil_tmp4;
 6620#line 84
 6621  tmp = variable_test_bit(flag, __cil_tmp5);
 6622  }
 6623#line 84
 6624  return (tmp);
 6625}
 6626}
 6627#line 261 "include/linux/lockdep.h"
 6628extern void lockdep_init_map(struct lockdep_map * , char const   * , struct lock_class_key * ,
 6629                             int  ) ;
 6630#line 93 "include/linux/spinlock.h"
 6631extern void __raw_spin_lock_init(raw_spinlock_t * , char const   * , struct lock_class_key * ) ;
 6632#line 22 "include/linux/spinlock_api_smp.h"
 6633extern void _raw_spin_lock(raw_spinlock_t * ) ;
 6634#line 32
 6635extern unsigned long _raw_spin_lock_irqsave(raw_spinlock_t * ) ;
 6636#line 39
 6637extern void _raw_spin_unlock(raw_spinlock_t * ) ;
 6638#line 43
 6639extern void _raw_spin_unlock_irqrestore(raw_spinlock_t * , unsigned long  ) ;
 6640#line 272 "include/linux/spinlock.h"
 6641__inline static raw_spinlock_t *spinlock_check(spinlock_t *lock ) 
 6642{ 
 6643
 6644  {
 6645#line 274
 6646  return (& lock->ldv_6060.rlock);
 6647}
 6648}
 6649#line 283 "include/linux/spinlock.h"
 6650__inline static void spin_lock(spinlock_t *lock ) 
 6651{ struct raw_spinlock *__cil_tmp2 ;
 6652
 6653  {
 6654  {
 6655#line 285
 6656  __cil_tmp2 = & lock->ldv_6060.rlock;
 6657#line 285
 6658  _raw_spin_lock(__cil_tmp2);
 6659  }
 6660#line 286
 6661  return;
 6662}
 6663}
 6664#line 323 "include/linux/spinlock.h"
 6665__inline static void spin_unlock(spinlock_t *lock ) 
 6666{ struct raw_spinlock *__cil_tmp2 ;
 6667
 6668  {
 6669  {
 6670#line 325
 6671  __cil_tmp2 = & lock->ldv_6060.rlock;
 6672#line 325
 6673  _raw_spin_unlock(__cil_tmp2);
 6674  }
 6675#line 326
 6676  return;
 6677}
 6678}
 6679#line 338 "include/linux/spinlock.h"
 6680__inline static void spin_unlock_irqrestore(spinlock_t *lock , unsigned long flags ) 
 6681{ struct raw_spinlock *__cil_tmp3 ;
 6682
 6683  {
 6684  {
 6685#line 340
 6686  __cil_tmp3 = & lock->ldv_6060.rlock;
 6687#line 340
 6688  _raw_spin_unlock_irqrestore(__cil_tmp3, flags);
 6689  }
 6690#line 341
 6691  return;
 6692}
 6693}
 6694#line 30 "include/linux/wait.h"
 6695extern int default_wake_function(wait_queue_t * , unsigned int  , int  , void * ) ;
 6696#line 80
 6697extern void __init_waitqueue_head(wait_queue_head_t * , struct lock_class_key * ) ;
 6698#line 98 "include/linux/wait.h"
 6699__inline static void init_waitqueue_entry(wait_queue_t *q , struct task_struct *p ) 
 6700{ 
 6701
 6702  {
 6703#line 100
 6704  q->flags = 0U;
 6705#line 101
 6706  q->private = (void *)p;
 6707#line 102
 6708  q->func = & default_wake_function;
 6709#line 103
 6710  return;
 6711}
 6712}
 6713#line 113 "include/linux/wait.h"
 6714__inline static int waitqueue_active(wait_queue_head_t *q ) 
 6715{ int tmp ;
 6716  struct list_head *__cil_tmp3 ;
 6717  struct list_head  const  *__cil_tmp4 ;
 6718
 6719  {
 6720  {
 6721#line 115
 6722  __cil_tmp3 = & q->task_list;
 6723#line 115
 6724  __cil_tmp4 = (struct list_head  const  *)__cil_tmp3;
 6725#line 115
 6726  tmp = list_empty(__cil_tmp4);
 6727  }
 6728#line 115
 6729  return (tmp == 0);
 6730}
 6731}
 6732#line 118
 6733extern void add_wait_queue(wait_queue_head_t * , wait_queue_t * ) ;
 6734#line 120
 6735extern void remove_wait_queue(wait_queue_head_t * , wait_queue_t * ) ;
 6736#line 156
 6737extern void __wake_up(wait_queue_head_t * , unsigned int  , int  , void * ) ;
 6738#line 577
 6739extern void interruptible_sleep_on(wait_queue_head_t * ) ;
 6740#line 134 "include/linux/mutex.h"
 6741extern void mutex_lock_nested(struct mutex * , unsigned int  ) ;
 6742#line 169
 6743extern void mutex_unlock(struct mutex * ) ;
 6744#line 114 "include/linux/ioport.h"
 6745extern struct resource iomem_resource ;
 6746#line 156
 6747extern struct resource *__request_region(struct resource * , resource_size_t  , resource_size_t  ,
 6748                                         char const   * , int  ) ;
 6749#line 167
 6750extern void __release_region(struct resource * , resource_size_t  , resource_size_t  ) ;
 6751#line 82 "include/linux/jiffies.h"
 6752extern unsigned long volatile   jiffies ;
 6753#line 296
 6754extern unsigned int jiffies_to_msecs(unsigned long  ) ;
 6755#line 298
 6756extern unsigned long msecs_to_jiffies(unsigned int  ) ;
 6757#line 91 "include/linux/timer.h"
 6758extern void init_timer_key(struct timer_list * , char const   * , struct lock_class_key * ) ;
 6759#line 166 "include/linux/timer.h"
 6760__inline static void setup_timer_key(struct timer_list *timer , char const   *name ,
 6761                                     struct lock_class_key *key , void (*function)(unsigned long  ) ,
 6762                                     unsigned long data ) 
 6763{ 
 6764
 6765  {
 6766  {
 6767#line 172
 6768  timer->function = function;
 6769#line 173
 6770  timer->data = data;
 6771#line 174
 6772  init_timer_key(timer, name, key);
 6773  }
 6774#line 175
 6775  return;
 6776}
 6777}
 6778#line 210
 6779extern int del_timer(struct timer_list * ) ;
 6780#line 211
 6781extern int mod_timer(struct timer_list * , unsigned long  ) ;
 6782#line 280
 6783extern int del_timer_sync(struct timer_list * ) ;
 6784#line 156 "include/linux/workqueue.h"
 6785extern void __init_work(struct work_struct * , int  ) ;
 6786#line 360
 6787extern int schedule_work(struct work_struct * ) ;
 6788#line 55 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/io.h"
 6789__inline static unsigned char readb(void const volatile   *addr ) 
 6790{ unsigned char ret ;
 6791  unsigned char volatile   *__cil_tmp3 ;
 6792
 6793  {
 6794#line 55
 6795  __cil_tmp3 = (unsigned char volatile   *)addr;
 6796#line 55
 6797  __asm__  volatile   ("movb %1,%0": "=q" (ret): "m" (*__cil_tmp3): "memory");
 6798#line 55
 6799  return (ret);
 6800}
 6801}
 6802#line 56 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/io.h"
 6803__inline static unsigned short readw(void const volatile   *addr ) 
 6804{ unsigned short ret ;
 6805  unsigned short volatile   *__cil_tmp3 ;
 6806
 6807  {
 6808#line 56
 6809  __cil_tmp3 = (unsigned short volatile   *)addr;
 6810#line 56
 6811  __asm__  volatile   ("movw %1,%0": "=r" (ret): "m" (*__cil_tmp3): "memory");
 6812#line 56
 6813  return (ret);
 6814}
 6815}
 6816#line 57 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/io.h"
 6817__inline static unsigned int readl(void const volatile   *addr ) 
 6818{ unsigned int ret ;
 6819  unsigned int volatile   *__cil_tmp3 ;
 6820
 6821  {
 6822#line 57
 6823  __cil_tmp3 = (unsigned int volatile   *)addr;
 6824#line 57
 6825  __asm__  volatile   ("movl %1,%0": "=r" (ret): "m" (*__cil_tmp3): "memory");
 6826#line 57
 6827  return (ret);
 6828}
 6829}
 6830#line 63 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/io.h"
 6831__inline static void writeb(unsigned char val , void volatile   *addr ) 
 6832{ unsigned char volatile   *__cil_tmp3 ;
 6833
 6834  {
 6835#line 63
 6836  __cil_tmp3 = (unsigned char volatile   *)addr;
 6837#line 63
 6838  __asm__  volatile   ("movb %0,%1": : "q" (val), "m" (*__cil_tmp3): "memory");
 6839#line 64
 6840  return;
 6841}
 6842}
 6843#line 64 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/io.h"
 6844__inline static void writew(unsigned short val , void volatile   *addr ) 
 6845{ unsigned short volatile   *__cil_tmp3 ;
 6846
 6847  {
 6848#line 64
 6849  __cil_tmp3 = (unsigned short volatile   *)addr;
 6850#line 64
 6851  __asm__  volatile   ("movw %0,%1": : "r" (val), "m" (*__cil_tmp3): "memory");
 6852#line 65
 6853  return;
 6854}
 6855}
 6856#line 65 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/io.h"
 6857__inline static void writel(unsigned int val , void volatile   *addr ) 
 6858{ unsigned int volatile   *__cil_tmp3 ;
 6859
 6860  {
 6861#line 65
 6862  __cil_tmp3 = (unsigned int volatile   *)addr;
 6863#line 65
 6864  __asm__  volatile   ("movl %0,%1": : "r" (val), "m" (*__cil_tmp3): "memory");
 6865#line 66
 6866  return;
 6867}
 6868}
 6869#line 176
 6870extern void *ioremap_nocache(resource_size_t  , unsigned long  ) ;
 6871#line 189
 6872extern void iounmap(void volatile   * ) ;
 6873#line 830 "include/linux/rcupdate.h"
 6874extern void kfree(void const   * ) ;
 6875#line 99 "include/linux/module.h"
 6876extern struct module __this_module ;
 6877#line 537
 6878__inline static int ldv_try_module_get_1(struct module *module ) ;
 6879#line 543
 6880void ldv_module_put_2(struct module *ldv_func_arg1 ) ;
 6881#line 3 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
 6882int ldv_try_module_get(struct module *module ) ;
 6883#line 4
 6884void ldv_module_get(struct module *module ) ;
 6885#line 5
 6886void ldv_module_put(struct module *module ) ;
 6887#line 6
 6888unsigned int ldv_module_refcount(void) ;
 6889#line 7
 6890void ldv_module_put_and_exit(void) ;
 6891#line 546 "include/linux/capability.h"
 6892extern bool capable(int  ) ;
 6893#line 361 "include/linux/sched.h"
 6894extern void schedule(void) ;
 6895#line 2441 "include/linux/sched.h"
 6896__inline static int test_tsk_thread_flag(struct task_struct *tsk , int flag ) 
 6897{ int tmp ;
 6898  void *__cil_tmp4 ;
 6899  struct thread_info *__cil_tmp5 ;
 6900
 6901  {
 6902  {
 6903#line 2443
 6904  __cil_tmp4 = tsk->stack;
 6905#line 2443
 6906  __cil_tmp5 = (struct thread_info *)__cil_tmp4;
 6907#line 2443
 6908  tmp = test_ti_thread_flag(__cil_tmp5, flag);
 6909  }
 6910#line 2443
 6911  return (tmp);
 6912}
 6913}
 6914#line 2467 "include/linux/sched.h"
 6915__inline static int signal_pending(struct task_struct *p ) 
 6916{ int tmp ;
 6917  long tmp___0 ;
 6918  int __cil_tmp4 ;
 6919  long __cil_tmp5 ;
 6920
 6921  {
 6922  {
 6923#line 2469
 6924  tmp = test_tsk_thread_flag(p, 2);
 6925#line 2469
 6926  __cil_tmp4 = tmp != 0;
 6927#line 2469
 6928  __cil_tmp5 = (long )__cil_tmp4;
 6929#line 2469
 6930  tmp___0 = __builtin_expect(__cil_tmp5, 0L);
 6931  }
 6932#line 2469
 6933  return ((int )tmp___0);
 6934}
 6935}
 6936#line 40 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/uaccess_64.h"
 6937extern unsigned long _copy_to_user(void * , void const   * , unsigned int  ) ;
 6938#line 42
 6939extern unsigned long _copy_from_user(void * , void const   * , unsigned int  ) ;
 6940#line 46 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/uaccess_64.h"
 6941__inline static unsigned long copy_from_user(void *to , void const   *from , unsigned long n ) 
 6942{ int sz ;
 6943  unsigned long tmp ;
 6944  int __ret_warn_on ;
 6945  long tmp___0 ;
 6946  long tmp___1 ;
 6947  long tmp___2 ;
 6948  void const   *__cil_tmp10 ;
 6949  void *__cil_tmp11 ;
 6950  int __cil_tmp12 ;
 6951  long __cil_tmp13 ;
 6952  unsigned int __cil_tmp14 ;
 6953  unsigned long __cil_tmp15 ;
 6954  int __cil_tmp16 ;
 6955  long __cil_tmp17 ;
 6956  unsigned int __cil_tmp18 ;
 6957  int __cil_tmp19 ;
 6958  long __cil_tmp20 ;
 6959  int __cil_tmp21 ;
 6960  int __cil_tmp22 ;
 6961  int __cil_tmp23 ;
 6962  long __cil_tmp24 ;
 6963
 6964  {
 6965  {
 6966#line 50
 6967  __cil_tmp10 = (void const   *)to;
 6968#line 50
 6969  __cil_tmp11 = (void *)__cil_tmp10;
 6970#line 50
 6971  tmp = __builtin_object_size(__cil_tmp11, 0);
 6972#line 50
 6973  sz = (int )tmp;
 6974#line 52
 6975  might_fault();
 6976#line 53
 6977  __cil_tmp12 = sz == -1;
 6978#line 53
 6979  __cil_tmp13 = (long )__cil_tmp12;
 6980#line 53
 6981  tmp___1 = __builtin_expect(__cil_tmp13, 1L);
 6982  }
 6983#line 53
 6984  if (tmp___1 != 0L) {
 6985    {
 6986#line 54
 6987    __cil_tmp14 = (unsigned int )n;
 6988#line 54
 6989    n = _copy_from_user(to, from, __cil_tmp14);
 6990    }
 6991  } else {
 6992    {
 6993#line 53
 6994    __cil_tmp15 = (unsigned long )sz;
 6995#line 53
 6996    __cil_tmp16 = __cil_tmp15 >= n;
 6997#line 53
 6998    __cil_tmp17 = (long )__cil_tmp16;
 6999#line 53
 7000    tmp___2 = __builtin_expect(__cil_tmp17, 1L);
 7001    }
 7002#line 53
 7003    if (tmp___2 != 0L) {
 7004      {
 7005#line 54
 7006      __cil_tmp18 = (unsigned int )n;
 7007#line 54
 7008      n = _copy_from_user(to, from, __cil_tmp18);
 7009      }
 7010    } else {
 7011      {
 7012#line 57
 7013      __ret_warn_on = 1;
 7014#line 57
 7015      __cil_tmp19 = __ret_warn_on != 0;
 7016#line 57
 7017      __cil_tmp20 = (long )__cil_tmp19;
 7018#line 57
 7019      tmp___0 = __builtin_expect(__cil_tmp20, 0L);
 7020      }
 7021#line 57
 7022      if (tmp___0 != 0L) {
 7023        {
 7024#line 57
 7025        __cil_tmp21 = (int const   )57;
 7026#line 57
 7027        __cil_tmp22 = (int )__cil_tmp21;
 7028#line 57
 7029        warn_slowpath_fmt("/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/uaccess_64.h",
 7030                          __cil_tmp22, "Buffer overflow detected!\n");
 7031        }
 7032      } else {
 7033
 7034      }
 7035      {
 7036#line 57
 7037      __cil_tmp23 = __ret_warn_on != 0;
 7038#line 57
 7039      __cil_tmp24 = (long )__cil_tmp23;
 7040#line 57
 7041      __builtin_expect(__cil_tmp24, 0L);
 7042      }
 7043    }
 7044  }
 7045#line 59
 7046  return (n);
 7047}
 7048}
 7049#line 63 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/uaccess_64.h"
 7050__inline static int copy_to_user(void *dst , void const   *src , unsigned int size ) 
 7051{ unsigned long tmp ;
 7052
 7053  {
 7054  {
 7055#line 65
 7056  might_fault();
 7057#line 67
 7058  tmp = _copy_to_user(dst, src, size);
 7059  }
 7060#line 67
 7061  return ((int )tmp);
 7062}
 7063}
 7064#line 124 "include/linux/interrupt.h"
 7065extern int request_threaded_irq(unsigned int  , irqreturn_t (*)(int  , void * ) ,
 7066                                irqreturn_t (*)(int  , void * ) , unsigned long  ,
 7067                                char const   * , void * ) ;
 7068#line 129 "include/linux/interrupt.h"
 7069__inline static int request_irq(unsigned int irq , irqreturn_t (*handler)(int  , void * ) ,
 7070                                unsigned long flags , char const   *name , void *dev ) 
 7071{ int tmp ;
 7072  irqreturn_t (*__cil_tmp7)(int  , void * ) ;
 7073
 7074  {
 7075  {
 7076#line 132
 7077  __cil_tmp7 = (irqreturn_t (*)(int  , void * ))0;
 7078#line 132
 7079  tmp = request_threaded_irq(irq, handler, __cil_tmp7, flags, name, dev);
 7080  }
 7081#line 132
 7082  return (tmp);
 7083}
 7084}
 7085#line 170
 7086extern void free_irq(unsigned int  , void * ) ;
 7087#line 764 "include/linux/pci.h"
 7088extern int pci_enable_device(struct pci_dev * ) ;
 7089#line 782
 7090extern void pci_set_master(struct pci_dev * ) ;
 7091#line 916
 7092extern int __pci_register_driver(struct pci_driver * , struct module * , char const   * ) ;
 7093#line 925
 7094extern void pci_unregister_driver(struct pci_driver * ) ;
 7095#line 221 "include/linux/slub_def.h"
 7096extern void *__kmalloc(size_t  , gfp_t  ) ;
 7097#line 255 "include/linux/slub_def.h"
 7098__inline static void *kmalloc(size_t size , gfp_t flags ) 
 7099{ void *tmp___2 ;
 7100
 7101  {
 7102  {
 7103#line 270
 7104  tmp___2 = __kmalloc(size, flags);
 7105  }
 7106#line 270
 7107  return (tmp___2);
 7108}
 7109}
 7110#line 318 "include/linux/slab.h"
 7111__inline static void *kzalloc(size_t size , gfp_t flags ) 
 7112{ void *tmp ;
 7113  unsigned int __cil_tmp4 ;
 7114
 7115  {
 7116  {
 7117#line 320
 7118  __cil_tmp4 = flags | 32768U;
 7119#line 320
 7120  tmp = kmalloc(size, __cil_tmp4);
 7121  }
 7122#line 320
 7123  return (tmp);
 7124}
 7125}
 7126#line 87 "include/linux/dma-mapping.h"
 7127__inline static int is_device_dma_capable(struct device *dev ) 
 7128{ int tmp ;
 7129  u64 *__cil_tmp3 ;
 7130  unsigned long __cil_tmp4 ;
 7131  u64 *__cil_tmp5 ;
 7132  unsigned long __cil_tmp6 ;
 7133  u64 *__cil_tmp7 ;
 7134  u64 __cil_tmp8 ;
 7135
 7136  {
 7137  {
 7138#line 89
 7139  __cil_tmp3 = (u64 *)0;
 7140#line 89
 7141  __cil_tmp4 = (unsigned long )__cil_tmp3;
 7142#line 89
 7143  __cil_tmp5 = dev->dma_mask;
 7144#line 89
 7145  __cil_tmp6 = (unsigned long )__cil_tmp5;
 7146#line 89
 7147  if (__cil_tmp6 != __cil_tmp4) {
 7148    {
 7149#line 89
 7150    __cil_tmp7 = dev->dma_mask;
 7151#line 89
 7152    __cil_tmp8 = *__cil_tmp7;
 7153#line 89
 7154    if (__cil_tmp8 != 0ULL) {
 7155#line 89
 7156      tmp = 1;
 7157    } else {
 7158#line 89
 7159      tmp = 0;
 7160    }
 7161    }
 7162  } else {
 7163#line 89
 7164    tmp = 0;
 7165  }
 7166  }
 7167#line 89
 7168  return (tmp);
 7169}
 7170}
 7171#line 51 "include/linux/dma-debug.h"
 7172extern void debug_dma_alloc_coherent(struct device * , size_t  , dma_addr_t  , void * ) ;
 7173#line 54
 7174extern void debug_dma_free_coherent(struct device * , size_t  , void * , dma_addr_t  ) ;
 7175#line 26 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/dma-mapping.h"
 7176extern struct device x86_dma_fallback_dev ;
 7177#line 29
 7178extern struct dma_map_ops *dma_ops ;
 7179#line 31 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/dma-mapping.h"
 7180__inline static struct dma_map_ops *get_dma_ops(struct device *dev ) 
 7181{ long tmp ;
 7182  struct device *__cil_tmp3 ;
 7183  unsigned long __cil_tmp4 ;
 7184  unsigned long __cil_tmp5 ;
 7185  int __cil_tmp6 ;
 7186  long __cil_tmp7 ;
 7187  struct dma_map_ops *__cil_tmp8 ;
 7188  unsigned long __cil_tmp9 ;
 7189  struct dma_map_ops *__cil_tmp10 ;
 7190  unsigned long __cil_tmp11 ;
 7191
 7192  {
 7193  {
 7194#line 36
 7195  __cil_tmp3 = (struct device *)0;
 7196#line 36
 7197  __cil_tmp4 = (unsigned long )__cil_tmp3;
 7198#line 36
 7199  __cil_tmp5 = (unsigned long )dev;
 7200#line 36
 7201  __cil_tmp6 = __cil_tmp5 == __cil_tmp4;
 7202#line 36
 7203  __cil_tmp7 = (long )__cil_tmp6;
 7204#line 36
 7205  tmp = __builtin_expect(__cil_tmp7, 0L);
 7206  }
 7207#line 36
 7208  if (tmp != 0L) {
 7209#line 37
 7210    return (dma_ops);
 7211  } else {
 7212    {
 7213#line 36
 7214    __cil_tmp8 = (struct dma_map_ops *)0;
 7215#line 36
 7216    __cil_tmp9 = (unsigned long )__cil_tmp8;
 7217#line 36
 7218    __cil_tmp10 = dev->archdata.dma_ops;
 7219#line 36
 7220    __cil_tmp11 = (unsigned long )__cil_tmp10;
 7221#line 36
 7222    if (__cil_tmp11 == __cil_tmp9) {
 7223#line 37
 7224      return (dma_ops);
 7225    } else {
 7226#line 39
 7227      return (dev->archdata.dma_ops);
 7228    }
 7229    }
 7230  }
 7231}
 7232}
 7233#line 89 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/dma-mapping.h"
 7234__inline static unsigned long dma_alloc_coherent_mask(struct device *dev , gfp_t gfp ) 
 7235{ unsigned long dma_mask ;
 7236  u64 __cil_tmp4 ;
 7237  int __cil_tmp5 ;
 7238
 7239  {
 7240#line 92
 7241  dma_mask = 0UL;
 7242#line 94
 7243  __cil_tmp4 = dev->coherent_dma_mask;
 7244#line 94
 7245  dma_mask = (unsigned long )__cil_tmp4;
 7246#line 95
 7247  if (dma_mask == 0UL) {
 7248    {
 7249#line 96
 7250    __cil_tmp5 = (int )gfp;
 7251#line 96
 7252    if (__cil_tmp5 & 1) {
 7253#line 96
 7254      dma_mask = 16777215UL;
 7255    } else {
 7256#line 96
 7257      dma_mask = 4294967295UL;
 7258    }
 7259    }
 7260  } else {
 7261
 7262  }
 7263#line 98
 7264  return (dma_mask);
 7265}
 7266}
 7267#line 101 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/dma-mapping.h"
 7268__inline static gfp_t dma_alloc_coherent_gfp_flags(struct device *dev , gfp_t gfp ) 
 7269{ unsigned long dma_mask ;
 7270  unsigned long tmp ;
 7271  unsigned long long __cil_tmp5 ;
 7272  unsigned long long __cil_tmp6 ;
 7273  unsigned int __cil_tmp7 ;
 7274
 7275  {
 7276  {
 7277#line 103
 7278  tmp = dma_alloc_coherent_mask(dev, gfp);
 7279#line 103
 7280  dma_mask = tmp;
 7281  }
 7282  {
 7283#line 105
 7284  __cil_tmp5 = (unsigned long long )dma_mask;
 7285#line 105
 7286  if (__cil_tmp5 <= 16777215ULL) {
 7287#line 106
 7288    gfp = gfp | 1U;
 7289  } else {
 7290
 7291  }
 7292  }
 7293  {
 7294#line 108
 7295  __cil_tmp6 = (unsigned long long )dma_mask;
 7296#line 108
 7297  if (__cil_tmp6 <= 4294967295ULL) {
 7298    {
 7299#line 108
 7300    __cil_tmp7 = gfp & 1U;
 7301#line 108
 7302    if (__cil_tmp7 == 0U) {
 7303#line 109
 7304      gfp = gfp | 4U;
 7305    } else {
 7306
 7307    }
 7308    }
 7309  } else {
 7310
 7311  }
 7312  }
 7313#line 111
 7314  return (gfp);
 7315}
 7316}
 7317#line 115 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/dma-mapping.h"
 7318__inline static void *dma_alloc_coherent(struct device *dev , size_t size , dma_addr_t *dma_handle ,
 7319                                         gfp_t gfp ) 
 7320{ struct dma_map_ops *ops ;
 7321  struct dma_map_ops *tmp ;
 7322  void *memory ;
 7323  int tmp___0 ;
 7324  gfp_t tmp___1 ;
 7325  struct device *__cil_tmp10 ;
 7326  unsigned long __cil_tmp11 ;
 7327  unsigned long __cil_tmp12 ;
 7328  void *(*__cil_tmp13)(struct device * , size_t  , dma_addr_t * , gfp_t  ) ;
 7329  unsigned long __cil_tmp14 ;
 7330  void *(*__cil_tmp15)(struct device * , size_t  , dma_addr_t * , gfp_t  ) ;
 7331  unsigned long __cil_tmp16 ;
 7332  void *(*__cil_tmp17)(struct device * , size_t  , dma_addr_t * , gfp_t  ) ;
 7333  dma_addr_t __cil_tmp18 ;
 7334
 7335  {
 7336  {
 7337#line 118
 7338  tmp = get_dma_ops(dev);
 7339#line 118
 7340  ops = tmp;
 7341#line 121
 7342  gfp = gfp & 4294967288U;
 7343  }
 7344  {
 7345#line 126
 7346  __cil_tmp10 = (struct device *)0;
 7347#line 126
 7348  __cil_tmp11 = (unsigned long )__cil_tmp10;
 7349#line 126
 7350  __cil_tmp12 = (unsigned long )dev;
 7351#line 126
 7352  if (__cil_tmp12 == __cil_tmp11) {
 7353#line 127
 7354    dev = & x86_dma_fallback_dev;
 7355  } else {
 7356
 7357  }
 7358  }
 7359  {
 7360#line 129
 7361  tmp___0 = is_device_dma_capable(dev);
 7362  }
 7363#line 129
 7364  if (tmp___0 == 0) {
 7365#line 130
 7366    return ((void *)0);
 7367  } else {
 7368
 7369  }
 7370  {
 7371#line 132
 7372  __cil_tmp13 = (void *(*)(struct device * , size_t  , dma_addr_t * , gfp_t  ))0;
 7373#line 132
 7374  __cil_tmp14 = (unsigned long )__cil_tmp13;
 7375#line 132
 7376  __cil_tmp15 = ops->alloc_coherent;
 7377#line 132
 7378  __cil_tmp16 = (unsigned long )__cil_tmp15;
 7379#line 132
 7380  if (__cil_tmp16 == __cil_tmp14) {
 7381#line 133
 7382    return ((void *)0);
 7383  } else {
 7384
 7385  }
 7386  }
 7387  {
 7388#line 135
 7389  tmp___1 = dma_alloc_coherent_gfp_flags(dev, gfp);
 7390#line 135
 7391  __cil_tmp17 = ops->alloc_coherent;
 7392#line 135
 7393  memory = (*__cil_tmp17)(dev, size, dma_handle, tmp___1);
 7394#line 137
 7395  __cil_tmp18 = *dma_handle;
 7396#line 137
 7397  debug_dma_alloc_coherent(dev, size, __cil_tmp18, memory);
 7398  }
 7399#line 139
 7400  return (memory);
 7401}
 7402}
 7403#line 142 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/dma-mapping.h"
 7404__inline static void dma_free_coherent(struct device *dev , size_t size , void *vaddr ,
 7405                                       dma_addr_t bus ) 
 7406{ struct dma_map_ops *ops ;
 7407  struct dma_map_ops *tmp ;
 7408  int __ret_warn_on ;
 7409  unsigned long _flags ;
 7410  int tmp___0 ;
 7411  long tmp___1 ;
 7412  int __cil_tmp11 ;
 7413  long __cil_tmp12 ;
 7414  int __cil_tmp13 ;
 7415  int __cil_tmp14 ;
 7416  int __cil_tmp15 ;
 7417  long __cil_tmp16 ;
 7418  void (*__cil_tmp17)(struct device * , size_t  , void * , dma_addr_t  ) ;
 7419  unsigned long __cil_tmp18 ;
 7420  void (*__cil_tmp19)(struct device * , size_t  , void * , dma_addr_t  ) ;
 7421  unsigned long __cil_tmp20 ;
 7422  void (*__cil_tmp21)(struct device * , size_t  , void * , dma_addr_t  ) ;
 7423
 7424  {
 7425  {
 7426#line 145
 7427  tmp = get_dma_ops(dev);
 7428#line 145
 7429  ops = tmp;
 7430#line 147
 7431  _flags = arch_local_save_flags();
 7432#line 147
 7433  tmp___0 = arch_irqs_disabled_flags(_flags);
 7434#line 147
 7435  __ret_warn_on = tmp___0 != 0;
 7436#line 147
 7437  __cil_tmp11 = __ret_warn_on != 0;
 7438#line 147
 7439  __cil_tmp12 = (long )__cil_tmp11;
 7440#line 147
 7441  tmp___1 = __builtin_expect(__cil_tmp12, 0L);
 7442  }
 7443#line 147
 7444  if (tmp___1 != 0L) {
 7445    {
 7446#line 147
 7447    __cil_tmp13 = (int const   )147;
 7448#line 147
 7449    __cil_tmp14 = (int )__cil_tmp13;
 7450#line 147
 7451    warn_slowpath_null("/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/dma-mapping.h",
 7452                       __cil_tmp14);
 7453    }
 7454  } else {
 7455
 7456  }
 7457  {
 7458#line 147
 7459  __cil_tmp15 = __ret_warn_on != 0;
 7460#line 147
 7461  __cil_tmp16 = (long )__cil_tmp15;
 7462#line 147
 7463  __builtin_expect(__cil_tmp16, 0L);
 7464#line 152
 7465  debug_dma_free_coherent(dev, size, vaddr, bus);
 7466  }
 7467  {
 7468#line 153
 7469  __cil_tmp17 = (void (*)(struct device * , size_t  , void * , dma_addr_t  ))0;
 7470#line 153
 7471  __cil_tmp18 = (unsigned long )__cil_tmp17;
 7472#line 153
 7473  __cil_tmp19 = ops->free_coherent;
 7474#line 153
 7475  __cil_tmp20 = (unsigned long )__cil_tmp19;
 7476#line 153
 7477  if (__cil_tmp20 != __cil_tmp18) {
 7478    {
 7479#line 154
 7480    __cil_tmp21 = ops->free_coherent;
 7481#line 154
 7482    (*__cil_tmp21)(dev, size, vaddr, bus);
 7483    }
 7484  } else {
 7485
 7486  }
 7487  }
 7488#line 155
 7489  return;
 7490}
 7491}
 7492#line 16 "include/asm-generic/pci-dma-compat.h"
 7493__inline static void *pci_alloc_consistent(struct pci_dev *hwdev , size_t size , dma_addr_t *dma_handle ) 
 7494{ struct device *tmp ;
 7495  void *tmp___0 ;
 7496  struct pci_dev *__cil_tmp6 ;
 7497  unsigned long __cil_tmp7 ;
 7498  unsigned long __cil_tmp8 ;
 7499
 7500  {
 7501  {
 7502#line 19
 7503  __cil_tmp6 = (struct pci_dev *)0;
 7504#line 19
 7505  __cil_tmp7 = (unsigned long )__cil_tmp6;
 7506#line 19
 7507  __cil_tmp8 = (unsigned long )hwdev;
 7508#line 19
 7509  if (__cil_tmp8 != __cil_tmp7) {
 7510#line 19
 7511    tmp = & hwdev->dev;
 7512  } else {
 7513#line 19
 7514    tmp = (struct device *)0;
 7515  }
 7516  }
 7517  {
 7518#line 19
 7519  tmp___0 = dma_alloc_coherent(tmp, size, dma_handle, 32U);
 7520  }
 7521#line 19
 7522  return (tmp___0);
 7523}
 7524}
 7525#line 23 "include/asm-generic/pci-dma-compat.h"
 7526__inline static void pci_free_consistent(struct pci_dev *hwdev , size_t size , void *vaddr ,
 7527                                         dma_addr_t dma_handle ) 
 7528{ struct device *tmp ;
 7529  struct pci_dev *__cil_tmp6 ;
 7530  unsigned long __cil_tmp7 ;
 7531  unsigned long __cil_tmp8 ;
 7532
 7533  {
 7534  {
 7535#line 26
 7536  __cil_tmp6 = (struct pci_dev *)0;
 7537#line 26
 7538  __cil_tmp7 = (unsigned long )__cil_tmp6;
 7539#line 26
 7540  __cil_tmp8 = (unsigned long )hwdev;
 7541#line 26
 7542  if (__cil_tmp8 != __cil_tmp7) {
 7543#line 26
 7544    tmp = & hwdev->dev;
 7545  } else {
 7546#line 26
 7547    tmp = (struct device *)0;
 7548  }
 7549  }
 7550  {
 7551#line 26
 7552  dma_free_coherent(tmp, size, vaddr, dma_handle);
 7553  }
 7554#line 27
 7555  return;
 7556}
 7557}
 7558#line 325 "include/linux/tty_driver.h"
 7559extern struct tty_driver *alloc_tty_driver(int  ) ;
 7560#line 326
 7561extern void put_tty_driver(struct tty_driver * ) ;
 7562#line 327
 7563extern void tty_set_operations(struct tty_driver * , struct tty_operations  const  * ) ;
 7564#line 377 "include/linux/tty.h"
 7565extern struct ktermios tty_std_termios ;
 7566#line 408
 7567extern int tty_register_driver(struct tty_driver * ) ;
 7568#line 409
 7569extern int tty_unregister_driver(struct tty_driver * ) ;
 7570#line 410
 7571extern struct device *tty_register_device(struct tty_driver * , unsigned int  , struct device * ) ;
 7572#line 412
 7573extern void tty_unregister_device(struct tty_driver * , unsigned int  ) ;
 7574#line 429
 7575extern void tty_hangup(struct tty_struct * ) ;
 7576#line 434
 7577extern int tty_hung_up_p(struct file * ) ;
 7578#line 435
 7579extern void do_SAK(struct tty_struct * ) ;
 7580#line 439
 7581extern void tty_flip_buffer_push(struct tty_struct * ) ;
 7582#line 444
 7583extern speed_t tty_get_baud_rate(struct tty_struct * ) ;
 7584#line 455
 7585extern struct tty_ldisc *tty_ldisc_ref(struct tty_struct * ) ;
 7586#line 456
 7587extern void tty_ldisc_deref(struct tty_ldisc * ) ;
 7588#line 461
 7589extern void tty_wakeup(struct tty_struct * ) ;
 7590#line 462
 7591extern void tty_ldisc_flush(struct tty_struct * ) ;
 7592#line 493
 7593extern void tty_port_init(struct tty_port * ) ;
 7594#line 507
 7595extern int tty_port_carrier_raised(struct tty_port * ) ;
 7596#line 508
 7597extern void tty_port_raise_dtr_rts(struct tty_port * ) ;
 7598#line 513
 7599extern int tty_port_close_start(struct tty_port * , struct tty_struct * , struct file * ) ;
 7600#line 515
 7601extern void tty_port_close_end(struct tty_port * , struct tty_struct * ) ;
 7602#line 600
 7603extern void tty_lock(void) ;
 7604#line 601
 7605extern void tty_unlock(void) ;
 7606#line 5 "include/linux/tty_flip.h"
 7607extern int tty_insert_flip_string_flags(struct tty_struct * , unsigned char const   * ,
 7608                                        char const   * , size_t  ) ;
 7609#line 11 "include/linux/tty_flip.h"
 7610__inline static int tty_insert_flip_char(struct tty_struct *tty , unsigned char ch ,
 7611                                         char flag ) 
 7612{ struct tty_buffer *tb ;
 7613  int tmp ;
 7614  int tmp___0 ;
 7615  struct tty_buffer *__cil_tmp7 ;
 7616  unsigned long __cil_tmp8 ;
 7617  unsigned long __cil_tmp9 ;
 7618  int __cil_tmp10 ;
 7619  int __cil_tmp11 ;
 7620  int __cil_tmp12 ;
 7621  unsigned long __cil_tmp13 ;
 7622  unsigned char *__cil_tmp14 ;
 7623  unsigned char *__cil_tmp15 ;
 7624  int __cil_tmp16 ;
 7625  unsigned long __cil_tmp17 ;
 7626  char *__cil_tmp18 ;
 7627  char *__cil_tmp19 ;
 7628  unsigned char const   *__cil_tmp20 ;
 7629  char const   *__cil_tmp21 ;
 7630
 7631  {
 7632#line 14
 7633  tb = tty->buf.tail;
 7634  {
 7635#line 15
 7636  __cil_tmp7 = (struct tty_buffer *)0;
 7637#line 15
 7638  __cil_tmp8 = (unsigned long )__cil_tmp7;
 7639#line 15
 7640  __cil_tmp9 = (unsigned long )tb;
 7641#line 15
 7642  if (__cil_tmp9 != __cil_tmp8) {
 7643    {
 7644#line 15
 7645    __cil_tmp10 = tb->size;
 7646#line 15
 7647    __cil_tmp11 = tb->used;
 7648#line 15
 7649    if (__cil_tmp11 < __cil_tmp10) {
 7650#line 16
 7651      __cil_tmp12 = tb->used;
 7652#line 16
 7653      __cil_tmp13 = (unsigned long )__cil_tmp12;
 7654#line 16
 7655      __cil_tmp14 = tb->flag_buf_ptr;
 7656#line 16
 7657      __cil_tmp15 = __cil_tmp14 + __cil_tmp13;
 7658#line 16
 7659      *__cil_tmp15 = (unsigned char )flag;
 7660#line 17
 7661      tmp = tb->used;
 7662#line 17
 7663      __cil_tmp16 = tb->used;
 7664#line 17
 7665      tb->used = __cil_tmp16 + 1;
 7666#line 17
 7667      __cil_tmp17 = (unsigned long )tmp;
 7668#line 17
 7669      __cil_tmp18 = tb->char_buf_ptr;
 7670#line 17
 7671      __cil_tmp19 = __cil_tmp18 + __cil_tmp17;
 7672#line 17
 7673      *__cil_tmp19 = (char )ch;
 7674#line 18
 7675      return (1);
 7676    } else {
 7677
 7678    }
 7679    }
 7680  } else {
 7681
 7682  }
 7683  }
 7684  {
 7685#line 20
 7686  __cil_tmp20 = (unsigned char const   *)(& ch);
 7687#line 20
 7688  __cil_tmp21 = (char const   *)(& flag);
 7689#line 20
 7690  tmp___0 = tty_insert_flip_string_flags(tty, __cil_tmp20, __cil_tmp21, 1UL);
 7691  }
 7692#line 20
 7693  return (tmp___0);
 7694}
 7695}
 7696#line 78 "include/linux/seq_file.h"
 7697extern ssize_t seq_read(struct file * , char * , size_t  , loff_t * ) ;
 7698#line 79
 7699extern loff_t seq_lseek(struct file * , loff_t  , int  ) ;
 7700#line 83
 7701extern int seq_puts(struct seq_file * , char const   * ) ;
 7702#line 86
 7703extern int seq_printf(struct seq_file * , char const   *  , ...) ;
 7704#line 119
 7705extern int single_open(struct file * , int (*)(struct seq_file * , void * ) , void * ) ;
 7706#line 120
 7707extern int single_release(struct inode * , struct file * ) ;
 7708#line 491 "include/linux/skbuff.h"
 7709extern void consume_skb(struct sk_buff * ) ;
 7710#line 1167
 7711extern unsigned char *skb_put(struct sk_buff * , unsigned int  ) ;
 7712#line 1308 "include/linux/skbuff.h"
 7713__inline static void skb_reset_mac_header(struct sk_buff *skb ) 
 7714{ unsigned char *__cil_tmp2 ;
 7715  long __cil_tmp3 ;
 7716  sk_buff_data_t __cil_tmp4 ;
 7717  unsigned char *__cil_tmp5 ;
 7718  long __cil_tmp6 ;
 7719  sk_buff_data_t __cil_tmp7 ;
 7720
 7721  {
 7722#line 1310
 7723  __cil_tmp2 = skb->head;
 7724#line 1310
 7725  __cil_tmp3 = (long )__cil_tmp2;
 7726#line 1310
 7727  __cil_tmp4 = (sk_buff_data_t )__cil_tmp3;
 7728#line 1310
 7729  __cil_tmp5 = skb->data;
 7730#line 1310
 7731  __cil_tmp6 = (long )__cil_tmp5;
 7732#line 1310
 7733  __cil_tmp7 = (sk_buff_data_t )__cil_tmp6;
 7734#line 1310
 7735  skb->mac_header = __cil_tmp7 - __cil_tmp4;
 7736#line 1311
 7737  return;
 7738}
 7739}
 7740#line 1541
 7741extern struct sk_buff *dev_alloc_skb(unsigned int  ) ;
 7742#line 47 "include/linux/delay.h"
 7743extern unsigned long msleep_interruptible(unsigned int  ) ;
 7744#line 198 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/compat.h"
 7745__inline static void *compat_ptr(compat_uptr_t uptr ) 
 7746{ unsigned long __cil_tmp2 ;
 7747
 7748  {
 7749  {
 7750#line 200
 7751  __cil_tmp2 = (unsigned long )uptr;
 7752#line 200
 7753  return ((void *)__cil_tmp2);
 7754  }
 7755}
 7756}
 7757#line 1410 "include/linux/netdevice.h"
 7758__inline static struct netdev_queue *netdev_get_tx_queue(struct net_device  const  *dev ,
 7759                                                         unsigned int index ) 
 7760{ unsigned long __cil_tmp3 ;
 7761  struct netdev_queue *__cil_tmp4 ;
 7762  struct netdev_queue *__cil_tmp5 ;
 7763
 7764  {
 7765  {
 7766#line 1413
 7767  __cil_tmp3 = (unsigned long )index;
 7768#line 1413
 7769  __cil_tmp4 = dev->_tx;
 7770#line 1413
 7771  __cil_tmp5 = (struct netdev_queue *)__cil_tmp4;
 7772#line 1413
 7773  return (__cil_tmp5 + __cil_tmp3);
 7774  }
 7775}
 7776}
 7777#line 1481 "include/linux/netdevice.h"
 7778__inline static void *netdev_priv(struct net_device  const  *dev ) 
 7779{ void *__cil_tmp2 ;
 7780
 7781  {
 7782  {
 7783#line 1483
 7784  __cil_tmp2 = (void *)dev;
 7785#line 1483
 7786  return (__cil_tmp2 + 2560U);
 7787  }
 7788}
 7789}
 7790#line 1643
 7791extern void free_netdev(struct net_device * ) ;
 7792#line 1656
 7793extern int netpoll_trap(void) ;
 7794#line 1788
 7795extern void __netif_schedule(struct Qdisc * ) ;
 7796#line 1804 "include/linux/netdevice.h"
 7797__inline static void netif_tx_start_queue(struct netdev_queue *dev_queue ) 
 7798{ unsigned long *__cil_tmp2 ;
 7799  unsigned long volatile   *__cil_tmp3 ;
 7800
 7801  {
 7802  {
 7803#line 1806
 7804  __cil_tmp2 = & dev_queue->state;
 7805#line 1806
 7806  __cil_tmp3 = (unsigned long volatile   *)__cil_tmp2;
 7807#line 1806
 7808  clear_bit(0, __cil_tmp3);
 7809  }
 7810#line 1807
 7811  return;
 7812}
 7813}
 7814#line 1815 "include/linux/netdevice.h"
 7815__inline static void netif_start_queue(struct net_device *dev ) 
 7816{ struct netdev_queue *tmp ;
 7817  struct net_device  const  *__cil_tmp3 ;
 7818
 7819  {
 7820  {
 7821#line 1817
 7822  __cil_tmp3 = (struct net_device  const  *)dev;
 7823#line 1817
 7824  tmp = netdev_get_tx_queue(__cil_tmp3, 0U);
 7825#line 1817
 7826  netif_tx_start_queue(tmp);
 7827  }
 7828#line 1818
 7829  return;
 7830}
 7831}
 7832#line 1830 "include/linux/netdevice.h"
 7833__inline static void netif_tx_wake_queue(struct netdev_queue *dev_queue ) 
 7834{ int tmp ;
 7835  int tmp___0 ;
 7836  unsigned long *__cil_tmp4 ;
 7837  unsigned long volatile   *__cil_tmp5 ;
 7838  struct Qdisc *__cil_tmp6 ;
 7839
 7840  {
 7841  {
 7842#line 1833
 7843  tmp = netpoll_trap();
 7844  }
 7845#line 1833
 7846  if (tmp != 0) {
 7847    {
 7848#line 1834
 7849    netif_tx_start_queue(dev_queue);
 7850    }
 7851#line 1835
 7852    return;
 7853  } else {
 7854
 7855  }
 7856  {
 7857#line 1838
 7858  __cil_tmp4 = & dev_queue->state;
 7859#line 1838
 7860  __cil_tmp5 = (unsigned long volatile   *)__cil_tmp4;
 7861#line 1838
 7862  tmp___0 = test_and_clear_bit(0, __cil_tmp5);
 7863  }
 7864#line 1838
 7865  if (tmp___0 != 0) {
 7866    {
 7867#line 1839
 7868    __cil_tmp6 = dev_queue->qdisc;
 7869#line 1839
 7870    __netif_schedule(__cil_tmp6);
 7871    }
 7872  } else {
 7873
 7874  }
 7875#line 1840
 7876  return;
 7877}
 7878}
 7879#line 1849 "include/linux/netdevice.h"
 7880__inline static void netif_wake_queue(struct net_device *dev ) 
 7881{ struct netdev_queue *tmp ;
 7882  struct net_device  const  *__cil_tmp3 ;
 7883
 7884  {
 7885  {
 7886#line 1851
 7887  __cil_tmp3 = (struct net_device  const  *)dev;
 7888#line 1851
 7889  tmp = netdev_get_tx_queue(__cil_tmp3, 0U);
 7890#line 1851
 7891  netif_tx_wake_queue(tmp);
 7892  }
 7893#line 1852
 7894  return;
 7895}
 7896}
 7897#line 1864 "include/linux/netdevice.h"
 7898__inline static void netif_tx_stop_queue(struct netdev_queue *dev_queue ) 
 7899{ int __ret_warn_on ;
 7900  long tmp ;
 7901  long tmp___0 ;
 7902  struct netdev_queue *__cil_tmp5 ;
 7903  unsigned long __cil_tmp6 ;
 7904  unsigned long __cil_tmp7 ;
 7905  int __cil_tmp8 ;
 7906  long __cil_tmp9 ;
 7907  int __cil_tmp10 ;
 7908  int __cil_tmp11 ;
 7909  int __cil_tmp12 ;
 7910  long __cil_tmp13 ;
 7911  unsigned long *__cil_tmp14 ;
 7912  unsigned long volatile   *__cil_tmp15 ;
 7913
 7914  {
 7915  {
 7916#line 1866
 7917  __cil_tmp5 = (struct netdev_queue *)0;
 7918#line 1866
 7919  __cil_tmp6 = (unsigned long )__cil_tmp5;
 7920#line 1866
 7921  __cil_tmp7 = (unsigned long )dev_queue;
 7922#line 1866
 7923  __ret_warn_on = __cil_tmp7 == __cil_tmp6;
 7924#line 1866
 7925  __cil_tmp8 = __ret_warn_on != 0;
 7926#line 1866
 7927  __cil_tmp9 = (long )__cil_tmp8;
 7928#line 1866
 7929  tmp = __builtin_expect(__cil_tmp9, 0L);
 7930  }
 7931#line 1866
 7932  if (tmp != 0L) {
 7933    {
 7934#line 1866
 7935    __cil_tmp10 = (int const   )1866;
 7936#line 1866
 7937    __cil_tmp11 = (int )__cil_tmp10;
 7938#line 1866
 7939    warn_slowpath_null("include/linux/netdevice.h", __cil_tmp11);
 7940    }
 7941  } else {
 7942
 7943  }
 7944  {
 7945#line 1866
 7946  __cil_tmp12 = __ret_warn_on != 0;
 7947#line 1866
 7948  __cil_tmp13 = (long )__cil_tmp12;
 7949#line 1866
 7950  tmp___0 = __builtin_expect(__cil_tmp13, 0L);
 7951  }
 7952#line 1866
 7953  if (tmp___0 != 0L) {
 7954    {
 7955#line 1867
 7956    printk("<6>netif_stop_queue() cannot be called before register_netdev()\n");
 7957    }
 7958#line 1868
 7959    return;
 7960  } else {
 7961
 7962  }
 7963  {
 7964#line 1870
 7965  __cil_tmp14 = & dev_queue->state;
 7966#line 1870
 7967  __cil_tmp15 = (unsigned long volatile   *)__cil_tmp14;
 7968#line 1870
 7969  set_bit(0U, __cil_tmp15);
 7970  }
 7971#line 1871
 7972  return;
 7973}
 7974}
 7975#line 1880 "include/linux/netdevice.h"
 7976__inline static void netif_stop_queue(struct net_device *dev ) 
 7977{ struct netdev_queue *tmp ;
 7978  struct net_device  const  *__cil_tmp3 ;
 7979
 7980  {
 7981  {
 7982#line 1882
 7983  __cil_tmp3 = (struct net_device  const  *)dev;
 7984#line 1882
 7985  tmp = netdev_get_tx_queue(__cil_tmp3, 0U);
 7986#line 1882
 7987  netif_tx_stop_queue(tmp);
 7988  }
 7989#line 1883
 7990  return;
 7991}
 7992}
 7993#line 1895 "include/linux/netdevice.h"
 7994__inline static int netif_tx_queue_stopped(struct netdev_queue  const  *dev_queue ) 
 7995{ int tmp ;
 7996  unsigned long const   *__cil_tmp3 ;
 7997  unsigned long const volatile   *__cil_tmp4 ;
 7998
 7999  {
 8000  {
 8001#line 1897
 8002  __cil_tmp3 = & dev_queue->state;
 8003#line 1897
 8004  __cil_tmp4 = (unsigned long const volatile   *)__cil_tmp3;
 8005#line 1897
 8006  tmp = constant_test_bit(0U, __cil_tmp4);
 8007  }
 8008#line 1897
 8009  return (tmp);
 8010}
 8011}
 8012#line 1906 "include/linux/netdevice.h"
 8013__inline static int netif_queue_stopped(struct net_device  const  *dev ) 
 8014{ struct netdev_queue *tmp ;
 8015  int tmp___0 ;
 8016  struct netdev_queue  const  *__cil_tmp4 ;
 8017
 8018  {
 8019  {
 8020#line 1908
 8021  tmp = netdev_get_tx_queue(dev, 0U);
 8022#line 1908
 8023  __cil_tmp4 = (struct netdev_queue  const  *)tmp;
 8024#line 1908
 8025  tmp___0 = netif_tx_queue_stopped(__cil_tmp4);
 8026  }
 8027#line 1908
 8028  return (tmp___0);
 8029}
 8030}
 8031#line 2064
 8032extern int netif_rx(struct sk_buff * ) ;
 8033#line 2167
 8034extern void netif_carrier_on(struct net_device * ) ;
 8035#line 2169
 8036extern void netif_carrier_off(struct net_device * ) ;
 8037#line 2458
 8038extern int register_netdev(struct net_device * ) ;
 8039#line 70 "include/linux/hdlc.h"
 8040extern int hdlc_ioctl(struct net_device * , struct ifreq * , int  ) ;
 8041#line 74
 8042extern void unregister_hdlc_device(struct net_device * ) ;
 8043#line 80
 8044extern struct net_device *alloc_hdlcdev(void * ) ;
 8045#line 82 "include/linux/hdlc.h"
 8046__inline static struct hdlc_device *dev_to_hdlc(struct net_device *dev ) 
 8047{ void *tmp ;
 8048  struct net_device  const  *__cil_tmp3 ;
 8049
 8050  {
 8051  {
 8052#line 84
 8053  __cil_tmp3 = (struct net_device  const  *)dev;
 8054#line 84
 8055  tmp = netdev_priv(__cil_tmp3);
 8056  }
 8057#line 84
 8058  return ((struct hdlc_device *)tmp);
 8059}
 8060}
 8061#line 103
 8062extern int hdlc_open(struct net_device * ) ;
 8063#line 105
 8064extern void hdlc_close(struct net_device * ) ;
 8065#line 107
 8066extern int hdlc_change_mtu(struct net_device * , int  ) ;
 8067#line 109
 8068extern netdev_tx_t hdlc_start_xmit(struct sk_buff * , struct net_device * ) ;
 8069#line 116 "include/linux/hdlc.h"
 8070__inline static __be16 hdlc_type_trans(struct sk_buff *skb , struct net_device *dev ) 
 8071{ hdlc_device *hdlc ;
 8072  struct hdlc_device *tmp ;
 8073  __be16 tmp___0 ;
 8074  __be16 (*__cil_tmp6)(struct sk_buff * , struct net_device * ) ;
 8075  unsigned long __cil_tmp7 ;
 8076  struct hdlc_proto  const  *__cil_tmp8 ;
 8077  __be16 (*__cil_tmp9)(struct sk_buff * , struct net_device * ) ;
 8078  unsigned long __cil_tmp10 ;
 8079  struct hdlc_proto  const  *__cil_tmp11 ;
 8080  __be16 (*__cil_tmp12)(struct sk_buff * , struct net_device * ) ;
 8081
 8082  {
 8083  {
 8084#line 119
 8085  tmp = dev_to_hdlc(dev);
 8086#line 119
 8087  hdlc = tmp;
 8088#line 121
 8089  skb->dev = dev;
 8090#line 122
 8091  skb_reset_mac_header(skb);
 8092  }
 8093  {
 8094#line 124
 8095  __cil_tmp6 = (__be16 (* const  )(struct sk_buff * , struct net_device * ))0;
 8096#line 124
 8097  __cil_tmp7 = (unsigned long )__cil_tmp6;
 8098#line 124
 8099  __cil_tmp8 = hdlc->proto;
 8100#line 124
 8101  __cil_tmp9 = __cil_tmp8->type_trans;
 8102#line 124
 8103  __cil_tmp10 = (unsigned long )__cil_tmp9;
 8104#line 124
 8105  if (__cil_tmp10 != __cil_tmp7) {
 8106    {
 8107#line 125
 8108    __cil_tmp11 = hdlc->proto;
 8109#line 125
 8110    __cil_tmp12 = __cil_tmp11->type_trans;
 8111#line 125
 8112    tmp___0 = (*__cil_tmp12)(skb, dev);
 8113    }
 8114#line 125
 8115    return (tmp___0);
 8116  } else {
 8117#line 127
 8118    return ((__be16 )6400U);
 8119  }
 8120  }
 8121}
 8122}
 8123#line 100 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
 8124static char *driver_name  =    (char *)"SyncLink GT";
 8125#line 101 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
 8126static char *tty_driver_name  =    (char *)"synclink_gt";
 8127#line 102 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
 8128static char *tty_dev_prefix  =    (char *)"ttySLG";
 8129#line 107 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
 8130static struct pci_device_id pci_table[5U]  = {      {5056U, 112U, 4294967295U, 4294967295U, 0U, 0U, 0UL}, 
 8131        {5056U, 160U, 4294967295U, 4294967295U, 0U, 0U, 0UL}, 
 8132        {5056U, 128U, 4294967295U, 4294967295U, 0U, 0U, 0UL}, 
 8133        {5056U, 144U, 4294967295U, 4294967295U, 0U, 0U, 0UL}, 
 8134        {0U, 0U, 0U, 0U, 0U, 0U, 0UL}};
 8135#line 114 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
 8136struct pci_device_id  const  __mod_pci_device_table  ;
 8137#line 116
 8138static int init_one(struct pci_dev *dev , struct pci_device_id  const  *ent ) ;
 8139#line 117
 8140static void remove_one(struct pci_dev *dev ) ;
 8141#line 118 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
 8142static struct pci_driver pci_driver  = 
 8143#line 118
 8144     {{(struct list_head *)0, (struct list_head *)0}, "synclink_gt", (struct pci_device_id  const  *)(& pci_table),
 8145    & init_one, & remove_one, (int (*)(struct pci_dev * , pm_message_t  ))0, (int (*)(struct pci_dev * ,
 8146                                                                                      pm_message_t  ))0,
 8147    (int (*)(struct pci_dev * ))0, (int (*)(struct pci_dev * ))0, (void (*)(struct pci_dev * ))0,
 8148    (struct pci_error_handlers *)0, {(char const   *)0, (struct bus_type *)0, (struct module *)0,
 8149                                     (char const   *)0, (_Bool)0, (struct of_device_id  const  *)0,
 8150                                     (int (*)(struct device * ))0, (int (*)(struct device * ))0,
 8151                                     (void (*)(struct device * ))0, (int (*)(struct device * ,
 8152                                                                             pm_message_t  ))0,
 8153                                     (int (*)(struct device * ))0, (struct attribute_group  const  **)0,
 8154                                     (struct dev_pm_ops  const  *)0, (struct driver_private *)0},
 8155    {{{{{0U}, 0U, 0U, (void *)0, {(struct lock_class_key *)0, {(struct lock_class *)0,
 8156                                                               (struct lock_class *)0},
 8157                                  (char const   *)0, 0, 0UL}}}}, {(struct list_head *)0,
 8158                                                                  (struct list_head *)0}}};
 8159#line 125 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
 8160static bool pci_registered  ;
 8161#line 130 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
 8162static struct slgt_info *slgt_device_list  ;
 8163#line 131 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
 8164static int slgt_device_count  ;
 8165#line 133 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
 8166static int ttymajor  ;
 8167#line 134 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
 8168static int debug_level  ;
 8169#line 135 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
 8170static int maxframe[32U]  ;
 8171#line 148 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
 8172static struct tty_driver *serial_driver  ;
 8173#line 150
 8174static int open(struct tty_struct *tty , struct file *filp ) ;
 8175#line 151
 8176static void close(struct tty_struct *tty , struct file *filp ) ;
 8177#line 152
 8178static void hangup(struct tty_struct *tty ) ;
 8179#line 153
 8180static void set_termios(struct tty_struct *tty , struct ktermios *old_termios ) ;
 8181#line 155
 8182static int write(struct tty_struct *tty , unsigned char const   *buf , int count ) ;
 8183#line 156
 8184static int put_char(struct tty_struct *tty , unsigned char ch ) ;
 8185#line 157
 8186static void send_xchar(struct tty_struct *tty , char ch ) ;
 8187#line 158
 8188static void wait_until_sent(struct tty_struct *tty , int timeout ) ;
 8189#line 159
 8190static int write_room(struct tty_struct *tty ) ;
 8191#line 160
 8192static void flush_chars(struct tty_struct *tty ) ;
 8193#line 161
 8194static void flush_buffer(struct tty_struct *tty ) ;
 8195#line 162
 8196static void tx_hold(struct tty_struct *tty ) ;
 8197#line 163
 8198static void tx_release(struct tty_struct *tty ) ;
 8199#line 165
 8200static int ioctl(struct tty_struct *tty , unsigned int cmd , unsigned long arg ) ;
 8201#line 166
 8202static int chars_in_buffer(struct tty_struct *tty ) ;
 8203#line 167
 8204static void throttle(struct tty_struct *tty ) ;
 8205#line 168
 8206static void unthrottle(struct tty_struct *tty ) ;
 8207#line 169
 8208static int set_break(struct tty_struct *tty , int break_state ) ;
 8209#line 176
 8210static void hdlcdev_tx_done(struct slgt_info *info ) ;
 8211#line 177
 8212static void hdlcdev_rx(struct slgt_info *info , char *buf , int size ) ;
 8213#line 178
 8214static int hdlcdev_init(struct slgt_info *info ) ;
 8215#line 179
 8216static void hdlcdev_exit(struct slgt_info *info ) ;
 8217#line 199
 8218static void init_cond_wait(struct cond_wait *w , unsigned int data ) ;
 8219#line 200
 8220static void add_cond_wait(struct cond_wait **head , struct cond_wait *w ) ;
 8221#line 201
 8222static void remove_cond_wait(struct cond_wait **head , struct cond_wait *cw ) ;
 8223#line 202
 8224static void flush_cond_wait(struct cond_wait **head ) ;
 8225#line 367 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
 8226static MGSL_PARAMS default_params  = 
 8227#line 367
 8228     {2UL, (unsigned char)0, (unsigned short)1, (unsigned char)3, 0UL, (unsigned char)255,
 8229    (unsigned short)1, (unsigned char)0, (unsigned char)0, 9600UL, (unsigned char)8,
 8230    (unsigned char)1, (unsigned char)0};
 8231#line 442
 8232static __u8 rd_reg8(struct slgt_info *info , unsigned int addr ) ;
 8233#line 443
 8234static void wr_reg8(struct slgt_info *info , unsigned int addr , __u8 value ) ;
 8235#line 444
 8236static __u16 rd_reg16(struct slgt_info *info , unsigned int addr ) ;
 8237#line 445
 8238static void wr_reg16(struct slgt_info *info , unsigned int addr , __u16 value ) ;
 8239#line 446
 8240static __u32 rd_reg32(struct slgt_info *info , unsigned int addr ) ;
 8241#line 447
 8242static void wr_reg32(struct slgt_info *info , unsigned int addr , __u32 value ) ;
 8243#line 449
 8244static void msc_set_vcr(struct slgt_info *info ) ;
 8245#line 451
 8246static int startup(struct slgt_info *info ) ;
 8247#line 452
 8248static int block_til_ready(struct tty_struct *tty , struct file *filp , struct slgt_info *info ) ;
 8249#line 453
 8250static void shutdown(struct slgt_info *info ) ;
 8251#line 454
 8252static void program_hw(struct slgt_info *info ) ;
 8253#line 455
 8254static void change_params(struct slgt_info *info ) ;
 8255#line 457
 8256static int register_test(struct slgt_info *info ) ;
 8257#line 458
 8258static int irq_test(struct slgt_info *info ) ;
 8259#line 459
 8260static int loopback_test(struct slgt_info *info ) ;
 8261#line 460
 8262static int adapter_test(struct slgt_info *info ) ;
 8263#line 462
 8264static void reset_adapter(struct slgt_info *info ) ;
 8265#line 463
 8266static void reset_port(struct slgt_info *info ) ;
 8267#line 464
 8268static void async_mode(struct slgt_info *info ) ;
 8269#line 465
 8270static void sync_mode(struct slgt_info *info ) ;
 8271#line 467
 8272static void rx_stop(struct slgt_info *info ) ;
 8273#line 468
 8274static void rx_start(struct slgt_info *info ) ;
 8275#line 469
 8276static void reset_rbufs(struct slgt_info *info ) ;
 8277#line 470
 8278static void free_rbufs(struct slgt_info *info , unsigned int i , unsigned int last ) ;
 8279#line 471
 8280static void rdma_reset(struct slgt_info *info ) ;
 8281#line 472
 8282static bool rx_get_frame(struct slgt_info *info ) ;
 8283#line 473
 8284static bool rx_get_buf(struct slgt_info *info ) ;
 8285#line 475
 8286static void tx_start(struct slgt_info *info ) ;
 8287#line 476
 8288static void tx_stop(struct slgt_info *info ) ;
 8289#line 477
 8290static void tx_set_idle(struct slgt_info *info ) ;
 8291#line 478
 8292static unsigned int free_tbuf_count(struct slgt_info *info ) ;
 8293#line 479
 8294static unsigned int tbuf_bytes(struct slgt_info *info ) ;
 8295#line 480
 8296static void reset_tbufs(struct slgt_info *info ) ;
 8297#line 481
 8298static void tdma_reset(struct slgt_info *info ) ;
 8299#line 482
 8300static bool tx_load(struct slgt_info *info , char const   *buf , unsigned int size ) ;
 8301#line 484
 8302static void get_signals(struct slgt_info *info ) ;
 8303#line 485
 8304static void set_signals(struct slgt_info *info ) ;
 8305#line 486
 8306static void enable_loopback(struct slgt_info *info ) ;
 8307#line 487
 8308static void set_rate(struct slgt_info *info , u32 rate ) ;
 8309#line 489
 8310static int bh_action(struct slgt_info *info ) ;
 8311#line 490
 8312static void bh_handler(struct work_struct *work ) ;
 8313#line 491
 8314static void bh_transmit(struct slgt_info *info ) ;
 8315#line 492
 8316static void isr_serial(struct slgt_info *info ) ;
 8317#line 493
 8318static void isr_rdma(struct slgt_info *info ) ;
 8319#line 494
 8320static void isr_txeom(struct slgt_info *info , unsigned short status ) ;
 8321#line 495
 8322static void isr_tdma(struct slgt_info *info ) ;
 8323#line 497
 8324static int alloc_dma_bufs(struct slgt_info *info ) ;
 8325#line 498
 8326static void free_dma_bufs(struct slgt_info *info ) ;
 8327#line 499
 8328static int alloc_desc(struct slgt_info *info ) ;
 8329#line 500
 8330static void free_desc(struct slgt_info *info ) ;
 8331#line 501
 8332static int alloc_bufs(struct slgt_info *info , struct slgt_desc *bufs , int count ) ;
 8333#line 502
 8334static void free_bufs(struct slgt_info *info , struct slgt_desc *bufs , int count ) ;
 8335#line 504
 8336static int alloc_tmp_rbuf(struct slgt_info *info ) ;
 8337#line 505
 8338static void free_tmp_rbuf(struct slgt_info *info ) ;
 8339#line 507
 8340static void tx_timeout(unsigned long context ) ;
 8341#line 508
 8342static void rx_timeout(unsigned long context ) ;
 8343#line 513
 8344static int get_stats(struct slgt_info *info , struct mgsl_icount *user_icount ) ;
 8345#line 514
 8346static int get_params(struct slgt_info *info , MGSL_PARAMS *user_params ) ;
 8347#line 515
 8348static int set_params(struct slgt_info *info , MGSL_PARAMS *new_params ) ;
 8349#line 516
 8350static int get_txidle(struct slgt_info *info , int *idle_mode ) ;
 8351#line 517
 8352static int set_txidle(struct slgt_info *info , int idle_mode ) ;
 8353#line 518
 8354static int tx_enable(struct slgt_info *info , int enable ) ;
 8355#line 519
 8356static int tx_abort(struct slgt_info *info ) ;
 8357#line 520
 8358static int rx_enable(struct slgt_info *info , int enable ) ;
 8359#line 521
 8360static int modem_input_wait(struct slgt_info *info , int arg ) ;
 8361#line 522
 8362static int wait_mgsl_event(struct slgt_info *info , int *mask_ptr ) ;
 8363#line 523
 8364static int tiocmget(struct tty_struct *tty ) ;
 8365#line 524
 8366static int tiocmset(struct tty_struct *tty , unsigned int set , unsigned int clear ) ;
 8367#line 527
 8368static int get_interface(struct slgt_info *info , int *if_mode ) ;
 8369#line 528
 8370static int set_interface(struct slgt_info *info , int if_mode ) ;
 8371#line 529
 8372static int set_gpio(struct slgt_info *info , struct gpio_desc *user_gpio ) ;
 8373#line 530
 8374static int get_gpio(struct slgt_info *info , struct gpio_desc *user_gpio ) ;
 8375#line 531
 8376static int wait_gpio(struct slgt_info *info , struct gpio_desc *user_gpio ) ;
 8377#line 532
 8378static int get_xsync(struct slgt_info *info , int *xsync ) ;
 8379#line 533
 8380static int set_xsync(struct slgt_info *info , int xsync ) ;
 8381#line 534
 8382static int get_xctrl(struct slgt_info *info , int *xctrl ) ;
 8383#line 535
 8384static int set_xctrl(struct slgt_info *info , int xctrl ) ;
 8385#line 540
 8386static void add_device(struct slgt_info *info ) ;
 8387#line 541
 8388static void device_init(int adapter_num , struct pci_dev *pdev ) ;
 8389#line 542
 8390static int claim_resources(struct slgt_info *info ) ;
 8391#line 543
 8392static void release_resources(struct slgt_info *info ) ;
 8393#line 562 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
 8394static void trace_block(struct slgt_info *info , char const   *data , int count ,
 8395                        char const   *label ) 
 8396{ int i ;
 8397  int linecount ;
 8398  char (*__cil_tmp7)[25U] ;
 8399  char *__cil_tmp8 ;
 8400  unsigned long __cil_tmp9 ;
 8401  char const   *__cil_tmp10 ;
 8402  char __cil_tmp11 ;
 8403  unsigned char __cil_tmp12 ;
 8404  int __cil_tmp13 ;
 8405  unsigned long __cil_tmp14 ;
 8406  char const   *__cil_tmp15 ;
 8407  char __cil_tmp16 ;
 8408  signed char __cil_tmp17 ;
 8409  int __cil_tmp18 ;
 8410  unsigned long __cil_tmp19 ;
 8411  char const   *__cil_tmp20 ;
 8412  char __cil_tmp21 ;
 8413  signed char __cil_tmp22 ;
 8414  int __cil_tmp23 ;
 8415  unsigned long __cil_tmp24 ;
 8416  char const   *__cil_tmp25 ;
 8417  char __cil_tmp26 ;
 8418  int __cil_tmp27 ;
 8419  unsigned long __cil_tmp28 ;
 8420
 8421  {
 8422  {
 8423#line 566
 8424  __cil_tmp7 = & info->device_name;
 8425#line 566
 8426  __cil_tmp8 = (char *)__cil_tmp7;
 8427#line 566
 8428  printk("%s %s data:\n", __cil_tmp8, label);
 8429  }
 8430#line 567
 8431  goto ldv_36436;
 8432  ldv_36435: ;
 8433#line 568
 8434  if (16 < count) {
 8435#line 568
 8436    linecount = 16;
 8437  } else {
 8438#line 568
 8439    linecount = count;
 8440  }
 8441#line 569
 8442  i = 0;
 8443#line 569
 8444  goto ldv_36427;
 8445  ldv_36426: 
 8446  {
 8447#line 570
 8448  __cil_tmp9 = (unsigned long )i;
 8449#line 570
 8450  __cil_tmp10 = data + __cil_tmp9;
 8451#line 570
 8452  __cil_tmp11 = *__cil_tmp10;
 8453#line 570
 8454  __cil_tmp12 = (unsigned char )__cil_tmp11;
 8455#line 570
 8456  __cil_tmp13 = (int )__cil_tmp12;
 8457#line 570
 8458  printk("%02X ", __cil_tmp13);
 8459#line 569
 8460  i = i + 1;
 8461  }
 8462  ldv_36427: ;
 8463#line 569
 8464  if (i < linecount) {
 8465#line 570
 8466    goto ldv_36426;
 8467  } else {
 8468#line 572
 8469    goto ldv_36428;
 8470  }
 8471  ldv_36428: ;
 8472#line 571
 8473  goto ldv_36430;
 8474  ldv_36429: 
 8475  {
 8476#line 572
 8477  printk("   ");
 8478#line 571
 8479  i = i + 1;
 8480  }
 8481  ldv_36430: ;
 8482#line 571
 8483  if (i <= 16) {
 8484#line 572
 8485    goto ldv_36429;
 8486  } else {
 8487#line 574
 8488    goto ldv_36431;
 8489  }
 8490  ldv_36431: 
 8491#line 573
 8492  i = 0;
 8493#line 573
 8494  goto ldv_36433;
 8495  ldv_36432: ;
 8496  {
 8497#line 574
 8498  __cil_tmp14 = (unsigned long )i;
 8499#line 574
 8500  __cil_tmp15 = data + __cil_tmp14;
 8501#line 574
 8502  __cil_tmp16 = *__cil_tmp15;
 8503#line 574
 8504  __cil_tmp17 = (signed char )__cil_tmp16;
 8505#line 574
 8506  __cil_tmp18 = (int )__cil_tmp17;
 8507#line 574
 8508  if (__cil_tmp18 > 31) {
 8509    {
 8510#line 574
 8511    __cil_tmp19 = (unsigned long )i;
 8512#line 574
 8513    __cil_tmp20 = data + __cil_tmp19;
 8514#line 574
 8515    __cil_tmp21 = *__cil_tmp20;
 8516#line 574
 8517    __cil_tmp22 = (signed char )__cil_tmp21;
 8518#line 574
 8519    __cil_tmp23 = (int )__cil_tmp22;
 8520#line 574
 8521    if (__cil_tmp23 != 127) {
 8522      {
 8523#line 575
 8524      __cil_tmp24 = (unsigned long )i;
 8525#line 575
 8526      __cil_tmp25 = data + __cil_tmp24;
 8527#line 575
 8528      __cil_tmp26 = *__cil_tmp25;
 8529#line 575
 8530      __cil_tmp27 = (int )__cil_tmp26;
 8531#line 575
 8532      printk("%c", __cil_tmp27);
 8533      }
 8534    } else {
 8535      {
 8536#line 577
 8537      printk(".");
 8538      }
 8539    }
 8540    }
 8541  } else {
 8542    {
 8543#line 577
 8544    printk(".");
 8545    }
 8546  }
 8547  }
 8548#line 573
 8549  i = i + 1;
 8550  ldv_36433: ;
 8551#line 573
 8552  if (i < linecount) {
 8553#line 574
 8554    goto ldv_36432;
 8555  } else {
 8556#line 576
 8557    goto ldv_36434;
 8558  }
 8559  ldv_36434: 
 8560  {
 8561#line 579
 8562  printk("\n");
 8563#line 580
 8564  __cil_tmp28 = (unsigned long )linecount;
 8565#line 580
 8566  data = data + __cil_tmp28;
 8567#line 581
 8568  count = count - linecount;
 8569  }
 8570  ldv_36436: ;
 8571#line 567
 8572  if (count != 0) {
 8573#line 568
 8574    goto ldv_36435;
 8575  } else {
 8576#line 570
 8577    goto ldv_36437;
 8578  }
 8579  ldv_36437: ;
 8580#line 572
 8581  return;
 8582}
 8583}
 8584#line 616 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
 8585__inline static int sanity_check(struct slgt_info *info , char *devname , char const   *name ) 
 8586{ struct slgt_info *__cil_tmp4 ;
 8587  unsigned long __cil_tmp5 ;
 8588  unsigned long __cil_tmp6 ;
 8589
 8590  {
 8591  {
 8592#line 628
 8593  __cil_tmp4 = (struct slgt_info *)0;
 8594#line 628
 8595  __cil_tmp5 = (unsigned long )__cil_tmp4;
 8596#line 628
 8597  __cil_tmp6 = (unsigned long )info;
 8598#line 628
 8599  if (__cil_tmp6 == __cil_tmp5) {
 8600#line 629
 8601    return (1);
 8602  } else {
 8603
 8604  }
 8605  }
 8606#line 631
 8607  return (0);
 8608}
 8609}
 8610#line 642 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
 8611static void ldisc_receive_buf(struct tty_struct *tty , __u8 const   *data , char *flags ,
 8612                              int count ) 
 8613{ struct tty_ldisc *ld ;
 8614  struct tty_struct *__cil_tmp6 ;
 8615  unsigned long __cil_tmp7 ;
 8616  unsigned long __cil_tmp8 ;
 8617  struct tty_ldisc *__cil_tmp9 ;
 8618  unsigned long __cil_tmp10 ;
 8619  unsigned long __cil_tmp11 ;
 8620  void (*__cil_tmp12)(struct tty_struct * , unsigned char const   * , char * , int  ) ;
 8621  unsigned long __cil_tmp13 ;
 8622  struct tty_ldisc_ops *__cil_tmp14 ;
 8623  void (*__cil_tmp15)(struct tty_struct * , unsigned char const   * , char * , int  ) ;
 8624  unsigned long __cil_tmp16 ;
 8625  struct tty_ldisc_ops *__cil_tmp17 ;
 8626  void (*__cil_tmp18)(struct tty_struct * , unsigned char const   * , char * , int  ) ;
 8627
 8628  {
 8629  {
 8630#line 646
 8631  __cil_tmp6 = (struct tty_struct *)0;
 8632#line 646
 8633  __cil_tmp7 = (unsigned long )__cil_tmp6;
 8634#line 646
 8635  __cil_tmp8 = (unsigned long )tty;
 8636#line 646
 8637  if (__cil_tmp8 == __cil_tmp7) {
 8638#line 647
 8639    return;
 8640  } else {
 8641
 8642  }
 8643  }
 8644  {
 8645#line 648
 8646  ld = tty_ldisc_ref(tty);
 8647  }
 8648  {
 8649#line 649
 8650  __cil_tmp9 = (struct tty_ldisc *)0;
 8651#line 649
 8652  __cil_tmp10 = (unsigned long )__cil_tmp9;
 8653#line 649
 8654  __cil_tmp11 = (unsigned long )ld;
 8655#line 649
 8656  if (__cil_tmp11 != __cil_tmp10) {
 8657    {
 8658#line 650
 8659    __cil_tmp12 = (void (*)(struct tty_struct * , unsigned char const   * , char * ,
 8660                            int  ))0;
 8661#line 650
 8662    __cil_tmp13 = (unsigned long )__cil_tmp12;
 8663#line 650
 8664    __cil_tmp14 = ld->ops;
 8665#line 650
 8666    __cil_tmp15 = __cil_tmp14->receive_buf;
 8667#line 650
 8668    __cil_tmp16 = (unsigned long )__cil_tmp15;
 8669#line 650
 8670    if (__cil_tmp16 != __cil_tmp13) {
 8671      {
 8672#line 651
 8673      __cil_tmp17 = ld->ops;
 8674#line 651
 8675      __cil_tmp18 = __cil_tmp17->receive_buf;
 8676#line 651
 8677      (*__cil_tmp18)(tty, data, flags, count);
 8678      }
 8679    } else {
 8680
 8681    }
 8682    }
 8683    {
 8684#line 652
 8685    tty_ldisc_deref(ld);
 8686    }
 8687  } else {
 8688
 8689  }
 8690  }
 8691#line 654
 8692  return;
 8693}
 8694}
 8695#line 658 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
 8696static int open(struct tty_struct *tty , struct file *filp ) 
 8697{ struct slgt_info *info ;
 8698  int retval ;
 8699  int line ;
 8700  unsigned long flags ;
 8701  int tmp ;
 8702  int tmp___0 ;
 8703  raw_spinlock_t *tmp___1 ;
 8704  struct slgt_info *__cil_tmp10 ;
 8705  unsigned long __cil_tmp11 ;
 8706  unsigned long __cil_tmp12 ;
 8707  int __cil_tmp13 ;
 8708  char (*__cil_tmp14)[64U] ;
 8709  char *__cil_tmp15 ;
 8710  int __cil_tmp16 ;
 8711  char (*__cil_tmp17)[25U] ;
 8712  char *__cil_tmp18 ;
 8713  int __cil_tmp19 ;
 8714  char (*__cil_tmp20)[25U] ;
 8715  char *__cil_tmp21 ;
 8716  int __cil_tmp22 ;
 8717  unsigned long __cil_tmp23 ;
 8718  unsigned long __cil_tmp24 ;
 8719  unsigned long __cil_tmp25 ;
 8720  unsigned long __cil_tmp26 ;
 8721  wait_queue_head_t *__cil_tmp27 ;
 8722  unsigned long __cil_tmp28 ;
 8723  int __cil_tmp29 ;
 8724  struct mutex *__cil_tmp30 ;
 8725  struct tty_struct *__cil_tmp31 ;
 8726  unsigned long __cil_tmp32 ;
 8727  unsigned long __cil_tmp33 ;
 8728  int __cil_tmp34 ;
 8729  spinlock_t *__cil_tmp35 ;
 8730  int __cil_tmp36 ;
 8731  spinlock_t *__cil_tmp37 ;
 8732  struct mutex *__cil_tmp38 ;
 8733  int __cil_tmp39 ;
 8734  spinlock_t *__cil_tmp40 ;
 8735  int __cil_tmp41 ;
 8736  struct mutex *__cil_tmp42 ;
 8737  struct mutex *__cil_tmp43 ;
 8738  char (*__cil_tmp44)[25U] ;
 8739  char *__cil_tmp45 ;
 8740  int __cil_tmp46 ;
 8741  int __cil_tmp47 ;
 8742  int __cil_tmp48 ;
 8743  char (*__cil_tmp49)[25U] ;
 8744  char *__cil_tmp50 ;
 8745
 8746  {
 8747#line 664
 8748  line = tty->index;
 8749#line 665
 8750  if (line < 0) {
 8751#line 665
 8752    goto _L;
 8753  } else
 8754#line 665
 8755  if (line >= slgt_device_count) {
 8756    _L: 
 8757#line 666
 8758    if (debug_level > 1) {
 8759      {
 8760#line 666
 8761      printk("%s: open with invalid line #%d.\n", driver_name, line);
 8762      }
 8763    } else {
 8764
 8765    }
 8766#line 667
 8767    return (-19);
 8768  } else {
 8769
 8770  }
 8771#line 670
 8772  info = slgt_device_list;
 8773#line 671
 8774  goto ldv_36459;
 8775  ldv_36458: 
 8776#line 672
 8777  info = info->next_device;
 8778  ldv_36459: ;
 8779  {
 8780#line 671
 8781  __cil_tmp10 = (struct slgt_info *)0;
 8782#line 671
 8783  __cil_tmp11 = (unsigned long )__cil_tmp10;
 8784#line 671
 8785  __cil_tmp12 = (unsigned long )info;
 8786#line 671
 8787  if (__cil_tmp12 != __cil_tmp11) {
 8788    {
 8789#line 671
 8790    __cil_tmp13 = info->line;
 8791#line 671
 8792    if (__cil_tmp13 != line) {
 8793#line 672
 8794      goto ldv_36458;
 8795    } else {
 8796#line 674
 8797      goto ldv_36460;
 8798    }
 8799    }
 8800  } else {
 8801#line 674
 8802    goto ldv_36460;
 8803  }
 8804  }
 8805  ldv_36460: 
 8806  {
 8807#line 673
 8808  __cil_tmp14 = & tty->name;
 8809#line 673
 8810  __cil_tmp15 = (char *)__cil_tmp14;
 8811#line 673
 8812  tmp = sanity_check(info, __cil_tmp15, "open");
 8813  }
 8814#line 673
 8815  if (tmp != 0) {
 8816#line 674
 8817    return (-19);
 8818  } else {
 8819
 8820  }
 8821  {
 8822#line 675
 8823  __cil_tmp16 = info->init_error;
 8824#line 675
 8825  if (__cil_tmp16 != 0) {
 8826#line 676
 8827    if (debug_level > 1) {
 8828      {
 8829#line 676
 8830      __cil_tmp17 = & info->device_name;
 8831#line 676
 8832      __cil_tmp18 = (char *)__cil_tmp17;
 8833#line 676
 8834      __cil_tmp19 = info->init_error;
 8835#line 676
 8836      printk("%s init error=%d\n", __cil_tmp18, __cil_tmp19);
 8837      }
 8838    } else {
 8839
 8840    }
 8841#line 677
 8842    return (-19);
 8843  } else {
 8844
 8845  }
 8846  }
 8847#line 680
 8848  tty->driver_data = (void *)info;
 8849#line 681
 8850  info->port.tty = tty;
 8851#line 683
 8852  if (debug_level > 2) {
 8853    {
 8854#line 683
 8855    __cil_tmp20 = & info->device_name;
 8856#line 683
 8857    __cil_tmp21 = (char *)__cil_tmp20;
 8858#line 683
 8859    __cil_tmp22 = info->port.count;
 8860#line 683
 8861    printk("%s open, old ref count = %d\n", __cil_tmp21, __cil_tmp22);
 8862    }
 8863  } else {
 8864
 8865  }
 8866  {
 8867#line 686
 8868  tmp___0 = tty_hung_up_p(filp);
 8869  }
 8870#line 686
 8871  if (tmp___0 != 0) {
 8872#line 686
 8873    goto _L___0;
 8874  } else {
 8875    {
 8876#line 686
 8877    __cil_tmp23 = info->port.flags;
 8878#line 686
 8879    __cil_tmp24 = __cil_tmp23 & 134217728UL;
 8880#line 686
 8881    if (__cil_tmp24 != 0UL) {
 8882      _L___0: 
 8883      {
 8884#line 687
 8885      __cil_tmp25 = info->port.flags;
 8886#line 687
 8887      __cil_tmp26 = __cil_tmp25 & 134217728UL;
 8888#line 687
 8889      if (__cil_tmp26 != 0UL) {
 8890        {
 8891#line 688
 8892        __cil_tmp27 = & info->port.close_wait;
 8893#line 688
 8894        interruptible_sleep_on(__cil_tmp27);
 8895        }
 8896      } else {
 8897
 8898      }
 8899      }
 8900      {
 8901#line 689
 8902      __cil_tmp28 = info->port.flags;
 8903#line 689
 8904      __cil_tmp29 = (int )__cil_tmp28;
 8905#line 689
 8906      if (__cil_tmp29 & 1) {
 8907#line 689
 8908        retval = -11;
 8909      } else {
 8910#line 689
 8911        retval = -512;
 8912      }
 8913      }
 8914#line 691
 8915      goto cleanup;
 8916    } else {
 8917
 8918    }
 8919    }
 8920  }
 8921  {
 8922#line 694
 8923  __cil_tmp30 = & info->port.mutex;
 8924#line 694
 8925  mutex_lock_nested(__cil_tmp30, 0U);
 8926#line 695
 8927  __cil_tmp31 = info->port.tty;
 8928#line 695
 8929  __cil_tmp32 = info->port.flags;
 8930#line 695
 8931  __cil_tmp33 = __cil_tmp32 & 8192UL;
 8932#line 695
 8933  __cil_tmp34 = __cil_tmp33 != 0UL;
 8934#line 695
 8935  __cil_tmp31->low_latency = (unsigned char )__cil_tmp34;
 8936#line 697
 8937  __cil_tmp35 = & info->netlock;
 8938#line 697
 8939  tmp___1 = spinlock_check(__cil_tmp35);
 8940#line 697
 8941  flags = _raw_spin_lock_irqsave(tmp___1);
 8942  }
 8943  {
 8944#line 698
 8945  __cil_tmp36 = info->netcount;
 8946#line 698
 8947  if (__cil_tmp36 != 0) {
 8948    {
 8949#line 699
 8950    retval = -16;
 8951#line 700
 8952    __cil_tmp37 = & info->netlock;
 8953#line 700
 8954    spin_unlock_irqrestore(__cil_tmp37, flags);
 8955#line 701
 8956    __cil_tmp38 = & info->port.mutex;
 8957#line 701
 8958    mutex_unlock(__cil_tmp38);
 8959    }
 8960#line 702
 8961    goto cleanup;
 8962  } else {
 8963
 8964  }
 8965  }
 8966  {
 8967#line 704
 8968  __cil_tmp39 = info->port.count;
 8969#line 704
 8970  info->port.count = __cil_tmp39 + 1;
 8971#line 705
 8972  __cil_tmp40 = & info->netlock;
 8973#line 705
 8974  spin_unlock_irqrestore(__cil_tmp40, flags);
 8975  }
 8976  {
 8977#line 707
 8978  __cil_tmp41 = info->port.count;
 8979#line 707
 8980  if (__cil_tmp41 == 1) {
 8981    {
 8982#line 709
 8983    retval = startup(info);
 8984    }
 8985#line 710
 8986    if (retval < 0) {
 8987      {
 8988#line 711
 8989      __cil_tmp42 = & info->port.mutex;
 8990#line 711
 8991      mutex_unlock(__cil_tmp42);
 8992      }
 8993#line 712
 8994      goto cleanup;
 8995    } else {
 8996
 8997    }
 8998  } else {
 8999
 9000  }
 9001  }
 9002  {
 9003#line 715
 9004  __cil_tmp43 = & info->port.mutex;
 9005#line 715
 9006  mutex_unlock(__cil_tmp43);
 9007#line 716
 9008  retval = block_til_ready(tty, filp, info);
 9009  }
 9010#line 717
 9011  if (retval != 0) {
 9012#line 718
 9013    if (debug_level > 2) {
 9014      {
 9015#line 718
 9016      __cil_tmp44 = & info->device_name;
 9017#line 718
 9018      __cil_tmp45 = (char *)__cil_tmp44;
 9019#line 718
 9020      printk("%s block_til_ready rc=%d\n", __cil_tmp45, retval);
 9021      }
 9022    } else {
 9023
 9024    }
 9025#line 719
 9026    goto cleanup;
 9027  } else {
 9028
 9029  }
 9030#line 722
 9031  retval = 0;
 9032  cleanup: ;
 9033#line 725
 9034  if (retval != 0) {
 9035    {
 9036#line 726
 9037    __cil_tmp46 = tty->count;
 9038#line 726
 9039    if (__cil_tmp46 == 1) {
 9040#line 727
 9041      info->port.tty = (struct tty_struct *)0;
 9042    } else {
 9043
 9044    }
 9045    }
 9046    {
 9047#line 728
 9048    __cil_tmp47 = info->port.count;
 9049#line 728
 9050    if (__cil_tmp47 != 0) {
 9051#line 729
 9052      __cil_tmp48 = info->port.count;
 9053#line 729
 9054      info->port.count = __cil_tmp48 - 1;
 9055    } else {
 9056
 9057    }
 9058    }
 9059  } else {
 9060
 9061  }
 9062#line 732
 9063  if (debug_level > 2) {
 9064    {
 9065#line 732
 9066    __cil_tmp49 = & info->device_name;
 9067#line 732
 9068    __cil_tmp50 = (char *)__cil_tmp49;
 9069#line 732
 9070    printk("%s open rc=%d\n", __cil_tmp50, retval);
 9071    }
 9072  } else {
 9073
 9074  }
 9075#line 733
 9076  return (retval);
 9077}
 9078}
 9079#line 736 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
 9080static void close(struct tty_struct *tty , struct file *filp ) 
 9081{ struct slgt_info *info ;
 9082  int tmp ;
 9083  int tmp___0 ;
 9084  void *__cil_tmp6 ;
 9085  char (*__cil_tmp7)[64U] ;
 9086  char *__cil_tmp8 ;
 9087  char (*__cil_tmp9)[25U] ;
 9088  char *__cil_tmp10 ;
 9089  int __cil_tmp11 ;
 9090  struct tty_port *__cil_tmp12 ;
 9091  struct mutex *__cil_tmp13 ;
 9092  unsigned long __cil_tmp14 ;
 9093  unsigned long __cil_tmp15 ;
 9094  int __cil_tmp16 ;
 9095  struct mutex *__cil_tmp17 ;
 9096  struct tty_port *__cil_tmp18 ;
 9097  struct tty_driver *__cil_tmp19 ;
 9098  char const   *__cil_tmp20 ;
 9099  int __cil_tmp21 ;
 9100
 9101  {
 9102  {
 9103#line 738
 9104  __cil_tmp6 = tty->driver_data;
 9105#line 738
 9106  info = (struct slgt_info *)__cil_tmp6;
 9107#line 740
 9108  __cil_tmp7 = & tty->name;
 9109#line 740
 9110  __cil_tmp8 = (char *)__cil_tmp7;
 9111#line 740
 9112  tmp = sanity_check(info, __cil_tmp8, "close");
 9113  }
 9114#line 740
 9115  if (tmp != 0) {
 9116#line 741
 9117    return;
 9118  } else {
 9119
 9120  }
 9121#line 742
 9122  if (debug_level > 2) {
 9123    {
 9124#line 742
 9125    __cil_tmp9 = & info->device_name;
 9126#line 742
 9127    __cil_tmp10 = (char *)__cil_tmp9;
 9128#line 742
 9129    __cil_tmp11 = info->port.count;
 9130#line 742
 9131    printk("%s close entry, count=%d\n", __cil_tmp10, __cil_tmp11);
 9132    }
 9133  } else {
 9134
 9135  }
 9136  {
 9137#line 744
 9138  __cil_tmp12 = & info->port;
 9139#line 744
 9140  tmp___0 = tty_port_close_start(__cil_tmp12, tty, filp);
 9141  }
 9142#line 744
 9143  if (tmp___0 == 0) {
 9144#line 745
 9145    goto cleanup;
 9146  } else {
 9147
 9148  }
 9149  {
 9150#line 747
 9151  __cil_tmp13 = & info->port.mutex;
 9152#line 747
 9153  mutex_lock_nested(__cil_tmp13, 0U);
 9154  }
 9155  {
 9156#line 748
 9157  __cil_tmp14 = info->port.flags;
 9158#line 748
 9159  __cil_tmp15 = __cil_tmp14 & 2147483648UL;
 9160#line 748
 9161  if (__cil_tmp15 != 0UL) {
 9162    {
 9163#line 749
 9164    __cil_tmp16 = info->timeout;
 9165#line 749
 9166    wait_until_sent(tty, __cil_tmp16);
 9167    }
 9168  } else {
 9169
 9170  }
 9171  }
 9172  {
 9173#line 750
 9174  flush_buffer(tty);
 9175#line 751
 9176  tty_ldisc_flush(tty);
 9177#line 753
 9178  shutdown(info);
 9179#line 754
 9180  __cil_tmp17 = & info->port.mutex;
 9181#line 754
 9182  mutex_unlock(__cil_tmp17);
 9183#line 756
 9184  __cil_tmp18 = & info->port;
 9185#line 756
 9186  tty_port_close_end(__cil_tmp18, tty);
 9187#line 757
 9188  info->port.tty = (struct tty_struct *)0;
 9189  }
 9190  cleanup: ;
 9191#line 759
 9192  if (debug_level > 2) {
 9193    {
 9194#line 759
 9195    __cil_tmp19 = tty->driver;
 9196#line 759
 9197    __cil_tmp20 = __cil_tmp19->name;
 9198#line 759
 9199    __cil_tmp21 = info->port.count;
 9200#line 759
 9201    printk("%s close exit, count=%d\n", __cil_tmp20, __cil_tmp21);
 9202    }
 9203  } else {
 9204
 9205  }
 9206#line 760
 9207  return;
 9208}
 9209}
 9210#line 762 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
 9211static void hangup(struct tty_struct *tty ) 
 9212{ struct slgt_info *info ;
 9213  unsigned long flags ;
 9214  int tmp ;
 9215  raw_spinlock_t *tmp___0 ;
 9216  void *__cil_tmp6 ;
 9217  char (*__cil_tmp7)[64U] ;
 9218  char *__cil_tmp8 ;
 9219  char (*__cil_tmp9)[25U] ;
 9220  char *__cil_tmp10 ;
 9221  struct mutex *__cil_tmp11 ;
 9222  spinlock_t *__cil_tmp12 ;
 9223  unsigned long __cil_tmp13 ;
 9224  spinlock_t *__cil_tmp14 ;
 9225  struct mutex *__cil_tmp15 ;
 9226  wait_queue_head_t *__cil_tmp16 ;
 9227  void *__cil_tmp17 ;
 9228
 9229  {
 9230  {
 9231#line 764
 9232  __cil_tmp6 = tty->driver_data;
 9233#line 764
 9234  info = (struct slgt_info *)__cil_tmp6;
 9235#line 767
 9236  __cil_tmp7 = & tty->name;
 9237#line 767
 9238  __cil_tmp8 = (char *)__cil_tmp7;
 9239#line 767
 9240  tmp = sanity_check(info, __cil_tmp8, "hangup");
 9241  }
 9242#line 767
 9243  if (tmp != 0) {
 9244#line 768
 9245    return;
 9246  } else {
 9247
 9248  }
 9249#line 769
 9250  if (debug_level > 2) {
 9251    {
 9252#line 769
 9253    __cil_tmp9 = & info->device_name;
 9254#line 769
 9255    __cil_tmp10 = (char *)__cil_tmp9;
 9256#line 769
 9257    printk("%s hangup\n", __cil_tmp10);
 9258    }
 9259  } else {
 9260
 9261  }
 9262  {
 9263#line 771
 9264  flush_buffer(tty);
 9265#line 773
 9266  __cil_tmp11 = & info->port.mutex;
 9267#line 773
 9268  mutex_lock_nested(__cil_tmp11, 0U);
 9269#line 774
 9270  shutdown(info);
 9271#line 776
 9272  __cil_tmp12 = & info->port.lock;
 9273#line 776
 9274  tmp___0 = spinlock_check(__cil_tmp12);
 9275#line 776
 9276  flags = _raw_spin_lock_irqsave(tmp___0);
 9277#line 777
 9278  info->port.count = 0;
 9279#line 778
 9280  __cil_tmp13 = info->port.flags;
 9281#line 778
 9282  info->port.flags = __cil_tmp13 & 3758096383UL;
 9283#line 779
 9284  info->port.tty = (struct tty_struct *)0;
 9285#line 780
 9286  __cil_tmp14 = & info->port.lock;
 9287#line 780
 9288  spin_unlock_irqrestore(__cil_tmp14, flags);
 9289#line 781
 9290  __cil_tmp15 = & info->port.mutex;
 9291#line 781
 9292  mutex_unlock(__cil_tmp15);
 9293#line 783
 9294  __cil_tmp16 = & info->port.open_wait;
 9295#line 783
 9296  __cil_tmp17 = (void *)0;
 9297#line 783
 9298  __wake_up(__cil_tmp16, 1U, 1, __cil_tmp17);
 9299  }
 9300#line 784
 9301  return;
 9302}
 9303}
 9304#line 786 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
 9305static void set_termios(struct tty_struct *tty , struct ktermios *old_termios ) 
 9306{ struct slgt_info *info ;
 9307  unsigned long flags ;
 9308  raw_spinlock_t *tmp ;
 9309  int tmp___0 ;
 9310  raw_spinlock_t *tmp___1 ;
 9311  void *__cil_tmp8 ;
 9312  struct tty_driver *__cil_tmp9 ;
 9313  char const   *__cil_tmp10 ;
 9314  tcflag_t __cil_tmp11 ;
 9315  unsigned int __cil_tmp12 ;
 9316  struct ktermios *__cil_tmp13 ;
 9317  tcflag_t __cil_tmp14 ;
 9318  unsigned int __cil_tmp15 ;
 9319  unsigned char __cil_tmp16 ;
 9320  unsigned int __cil_tmp17 ;
 9321  unsigned int __cil_tmp18 ;
 9322  spinlock_t *__cil_tmp19 ;
 9323  spinlock_t *__cil_tmp20 ;
 9324  tcflag_t __cil_tmp21 ;
 9325  unsigned int __cil_tmp22 ;
 9326  struct ktermios *__cil_tmp23 ;
 9327  tcflag_t __cil_tmp24 ;
 9328  unsigned int __cil_tmp25 ;
 9329  unsigned char __cil_tmp26 ;
 9330  unsigned int __cil_tmp27 ;
 9331  unsigned int __cil_tmp28 ;
 9332  struct ktermios *__cil_tmp29 ;
 9333  tcflag_t __cil_tmp30 ;
 9334  int __cil_tmp31 ;
 9335  unsigned char __cil_tmp32 ;
 9336  unsigned int __cil_tmp33 ;
 9337  unsigned int __cil_tmp34 ;
 9338  unsigned long *__cil_tmp35 ;
 9339  unsigned long const volatile   *__cil_tmp36 ;
 9340  unsigned char __cil_tmp37 ;
 9341  unsigned int __cil_tmp38 ;
 9342  unsigned int __cil_tmp39 ;
 9343  spinlock_t *__cil_tmp40 ;
 9344  spinlock_t *__cil_tmp41 ;
 9345  tcflag_t __cil_tmp42 ;
 9346  int __cil_tmp43 ;
 9347  struct ktermios *__cil_tmp44 ;
 9348  tcflag_t __cil_tmp45 ;
 9349  int __cil_tmp46 ;
 9350
 9351  {
 9352#line 788
 9353  __cil_tmp8 = tty->driver_data;
 9354#line 788
 9355  info = (struct slgt_info *)__cil_tmp8;
 9356#line 791
 9357  if (debug_level > 2) {
 9358    {
 9359#line 791
 9360    __cil_tmp9 = tty->driver;
 9361#line 791
 9362    __cil_tmp10 = __cil_tmp9->name;
 9363#line 791
 9364    printk("%s set_termios\n", __cil_tmp10);
 9365    }
 9366  } else {
 9367
 9368  }
 9369  {
 9370#line 793
 9371  change_params(info);
 9372  }
 9373  {
 9374#line 796
 9375  __cil_tmp11 = old_termios->c_cflag;
 9376#line 796
 9377  __cil_tmp12 = __cil_tmp11 & 4111U;
 9378#line 796
 9379  if (__cil_tmp12 != 0U) {
 9380    {
 9381#line 796
 9382    __cil_tmp13 = tty->termios;
 9383#line 796
 9384    __cil_tmp14 = __cil_tmp13->c_cflag;
 9385#line 796
 9386    __cil_tmp15 = __cil_tmp14 & 4111U;
 9387#line 796
 9388    if (__cil_tmp15 == 0U) {
 9389      {
 9390#line 798
 9391      __cil_tmp16 = info->signals;
 9392#line 798
 9393      __cil_tmp17 = (unsigned int )__cil_tmp16;
 9394#line 798
 9395      __cil_tmp18 = __cil_tmp17 & 95U;
 9396#line 798
 9397      info->signals = (unsigned char )__cil_tmp18;
 9398#line 799
 9399      __cil_tmp19 = & info->lock;
 9400#line 799
 9401      tmp = spinlock_check(__cil_tmp19);
 9402#line 799
 9403      flags = _raw_spin_lock_irqsave(tmp);
 9404#line 800
 9405      set_signals(info);
 9406#line 801
 9407      __cil_tmp20 = & info->lock;
 9408#line 801
 9409      spin_unlock_irqrestore(__cil_tmp20, flags);
 9410      }
 9411    } else {
 9412
 9413    }
 9414    }
 9415  } else {
 9416
 9417  }
 9418  }
 9419  {
 9420#line 805
 9421  __cil_tmp21 = old_termios->c_cflag;
 9422#line 805
 9423  __cil_tmp22 = __cil_tmp21 & 4111U;
 9424#line 805
 9425  if (__cil_tmp22 == 0U) {
 9426    {
 9427#line 805
 9428    __cil_tmp23 = tty->termios;
 9429#line 805
 9430    __cil_tmp24 = __cil_tmp23->c_cflag;
 9431#line 805
 9432    __cil_tmp25 = __cil_tmp24 & 4111U;
 9433#line 805
 9434    if (__cil_tmp25 != 0U) {
 9435#line 807
 9436      __cil_tmp26 = info->signals;
 9437#line 807
 9438      __cil_tmp27 = (unsigned int )__cil_tmp26;
 9439#line 807
 9440      __cil_tmp28 = __cil_tmp27 | 128U;
 9441#line 807
 9442      info->signals = (unsigned char )__cil_tmp28;
 9443      {
 9444#line 808
 9445      __cil_tmp29 = tty->termios;
 9446#line 808
 9447      __cil_tmp30 = __cil_tmp29->c_cflag;
 9448#line 808
 9449      __cil_tmp31 = (int )__cil_tmp30;
 9450#line 808
 9451      if (__cil_tmp31 >= 0) {
 9452#line 810
 9453        __cil_tmp32 = info->signals;
 9454#line 810
 9455        __cil_tmp33 = (unsigned int )__cil_tmp32;
 9456#line 810
 9457        __cil_tmp34 = __cil_tmp33 | 32U;
 9458#line 810
 9459        info->signals = (unsigned char )__cil_tmp34;
 9460      } else {
 9461        {
 9462#line 808
 9463        __cil_tmp35 = & tty->flags;
 9464#line 808
 9465        __cil_tmp36 = (unsigned long const volatile   *)__cil_tmp35;
 9466#line 808
 9467        tmp___0 = constant_test_bit(0U, __cil_tmp36);
 9468        }
 9469#line 808
 9470        if (tmp___0 == 0) {
 9471#line 810
 9472          __cil_tmp37 = info->signals;
 9473#line 810
 9474          __cil_tmp38 = (unsigned int )__cil_tmp37;
 9475#line 810
 9476          __cil_tmp39 = __cil_tmp38 | 32U;
 9477#line 810
 9478          info->signals = (unsigned char )__cil_tmp39;
 9479        } else {
 9480
 9481        }
 9482      }
 9483      }
 9484      {
 9485#line 812
 9486      __cil_tmp40 = & info->lock;
 9487#line 812
 9488      tmp___1 = spinlock_check(__cil_tmp40);
 9489#line 812
 9490      flags = _raw_spin_lock_irqsave(tmp___1);
 9491#line 813
 9492      set_signals(info);
 9493#line 814
 9494      __cil_tmp41 = & info->lock;
 9495#line 814
 9496      spin_unlock_irqrestore(__cil_tmp41, flags);
 9497      }
 9498    } else {
 9499
 9500    }
 9501    }
 9502  } else {
 9503
 9504  }
 9505  }
 9506  {
 9507#line 818
 9508  __cil_tmp42 = old_termios->c_cflag;
 9509#line 818
 9510  __cil_tmp43 = (int )__cil_tmp42;
 9511#line 818
 9512  if (__cil_tmp43 < 0) {
 9513    {
 9514#line 818
 9515    __cil_tmp44 = tty->termios;
 9516#line 818
 9517    __cil_tmp45 = __cil_tmp44->c_cflag;
 9518#line 818
 9519    __cil_tmp46 = (int )__cil_tmp45;
 9520#line 818
 9521    if (__cil_tmp46 >= 0) {
 9522      {
 9523#line 820
 9524      tty->hw_stopped = (unsigned char)0;
 9525#line 821
 9526      tx_release(tty);
 9527      }
 9528    } else {
 9529
 9530    }
 9531    }
 9532  } else {
 9533
 9534  }
 9535  }
 9536#line 823
 9537  return;
 9538}
 9539}
 9540#line 825 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
 9541static void update_tx_timer(struct slgt_info *info ) 
 9542{ int timeout ;
 9543  unsigned int tmp ;
 9544  unsigned long tmp___0 ;
 9545  unsigned long __cil_tmp5 ;
 9546  unsigned int __cil_tmp6 ;
 9547  unsigned int __cil_tmp7 ;
 9548  unsigned int __cil_tmp8 ;
 9549  unsigned int __cil_tmp9 ;
 9550  struct timer_list *__cil_tmp10 ;
 9551  unsigned long __cil_tmp11 ;
 9552  unsigned long __cil_tmp12 ;
 9553
 9554  {
 9555  {
 9556#line 831
 9557  __cil_tmp5 = info->params.mode;
 9558#line 831
 9559  if (__cil_tmp5 == 2UL) {
 9560    {
 9561#line 832
 9562    tmp = tbuf_bytes(info);
 9563#line 832
 9564    __cil_tmp6 = tmp * 7U;
 9565#line 832
 9566    __cil_tmp7 = __cil_tmp6 + 1000U;
 9567#line 832
 9568    timeout = (int )__cil_tmp7;
 9569#line 833
 9570    __cil_tmp8 = (unsigned int const   )timeout;
 9571#line 833
 9572    __cil_tmp9 = (unsigned int )__cil_tmp8;
 9573#line 833
 9574    tmp___0 = msecs_to_jiffies(__cil_tmp9);
 9575#line 833
 9576    __cil_tmp10 = & info->tx_timer;
 9577#line 833
 9578    __cil_tmp11 = (unsigned long )jiffies;
 9579#line 833
 9580    __cil_tmp12 = tmp___0 + __cil_tmp11;
 9581#line 833
 9582    mod_timer(__cil_tmp10, __cil_tmp12);
 9583    }
 9584  } else {
 9585
 9586  }
 9587  }
 9588#line 835
 9589  return;
 9590}
 9591}
 9592#line 837 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
 9593static int write(struct tty_struct *tty , unsigned char const   *buf , int count ) 
 9594{ int ret ;
 9595  struct slgt_info *info ;
 9596  unsigned long flags ;
 9597  int tmp ;
 9598  raw_spinlock_t *tmp___0 ;
 9599  bool tmp___1 ;
 9600  int tmp___2 ;
 9601  bool tmp___3 ;
 9602  void *__cil_tmp12 ;
 9603  char (*__cil_tmp13)[64U] ;
 9604  char *__cil_tmp14 ;
 9605  char (*__cil_tmp15)[25U] ;
 9606  char *__cil_tmp16 ;
 9607  unsigned char *__cil_tmp17 ;
 9608  unsigned long __cil_tmp18 ;
 9609  unsigned char *__cil_tmp19 ;
 9610  unsigned long __cil_tmp20 ;
 9611  u32 __cil_tmp21 ;
 9612  u32 __cil_tmp22 ;
 9613  unsigned char *__cil_tmp23 ;
 9614  unsigned char *__cil_tmp24 ;
 9615  unsigned char __cil_tmp25 ;
 9616  unsigned int __cil_tmp26 ;
 9617  unsigned char *__cil_tmp27 ;
 9618  unsigned char *__cil_tmp28 ;
 9619  unsigned char __cil_tmp29 ;
 9620  unsigned int __cil_tmp30 ;
 9621  spinlock_t *__cil_tmp31 ;
 9622  int __cil_tmp32 ;
 9623  unsigned char *__cil_tmp33 ;
 9624  char const   *__cil_tmp34 ;
 9625  int __cil_tmp35 ;
 9626  unsigned int __cil_tmp36 ;
 9627  char const   *__cil_tmp37 ;
 9628  unsigned int __cil_tmp38 ;
 9629  spinlock_t *__cil_tmp39 ;
 9630  char (*__cil_tmp40)[25U] ;
 9631  char *__cil_tmp41 ;
 9632
 9633  {
 9634  {
 9635#line 840
 9636  ret = 0;
 9637#line 841
 9638  __cil_tmp12 = tty->driver_data;
 9639#line 841
 9640  info = (struct slgt_info *)__cil_tmp12;
 9641#line 844
 9642  __cil_tmp13 = & tty->name;
 9643#line 844
 9644  __cil_tmp14 = (char *)__cil_tmp13;
 9645#line 844
 9646  tmp = sanity_check(info, __cil_tmp14, "write");
 9647  }
 9648#line 844
 9649  if (tmp != 0) {
 9650#line 845
 9651    return (-5);
 9652  } else {
 9653
 9654  }
 9655#line 847
 9656  if (debug_level > 2) {
 9657    {
 9658#line 847
 9659    __cil_tmp15 = & info->device_name;
 9660#line 847
 9661    __cil_tmp16 = (char *)__cil_tmp15;
 9662#line 847
 9663    printk("%s write count=%d\n", __cil_tmp16, count);
 9664    }
 9665  } else {
 9666
 9667  }
 9668  {
 9669#line 849
 9670  __cil_tmp17 = (unsigned char *)0;
 9671#line 849
 9672  __cil_tmp18 = (unsigned long )__cil_tmp17;
 9673#line 849
 9674  __cil_tmp19 = info->tx_buf;
 9675#line 849
 9676  __cil_tmp20 = (unsigned long )__cil_tmp19;
 9677#line 849
 9678  if (__cil_tmp20 == __cil_tmp18) {
 9679#line 850
 9680    return (-5);
 9681  } else {
 9682    {
 9683#line 849
 9684    __cil_tmp21 = info->max_frame_size;
 9685#line 849
 9686    __cil_tmp22 = (u32 )count;
 9687#line 849
 9688    if (__cil_tmp22 > __cil_tmp21) {
 9689#line 850
 9690      return (-5);
 9691    } else {
 9692
 9693    }
 9694    }
 9695  }
 9696  }
 9697#line 852
 9698  if (count == 0) {
 9699#line 853
 9700    return (0);
 9701  } else {
 9702    {
 9703#line 852
 9704    __cil_tmp23 = (unsigned char *)tty;
 9705#line 852
 9706    __cil_tmp24 = __cil_tmp23 + 580UL;
 9707#line 852
 9708    __cil_tmp25 = *__cil_tmp24;
 9709#line 852
 9710    __cil_tmp26 = (unsigned int )__cil_tmp25;
 9711#line 852
 9712    if (__cil_tmp26 != 0U) {
 9713#line 853
 9714      return (0);
 9715    } else {
 9716      {
 9717#line 852
 9718      __cil_tmp27 = (unsigned char *)tty;
 9719#line 852
 9720      __cil_tmp28 = __cil_tmp27 + 580UL;
 9721#line 852
 9722      __cil_tmp29 = *__cil_tmp28;
 9723#line 852
 9724      __cil_tmp30 = (unsigned int )__cil_tmp29;
 9725#line 852
 9726      if (__cil_tmp30 != 0U) {
 9727#line 853
 9728        return (0);
 9729      } else {
 9730
 9731      }
 9732      }
 9733    }
 9734    }
 9735  }
 9736  {
 9737#line 855
 9738  __cil_tmp31 = & info->lock;
 9739#line 855
 9740  tmp___0 = spinlock_check(__cil_tmp31);
 9741#line 855
 9742  flags = _raw_spin_lock_irqsave(tmp___0);
 9743  }
 9744  {
 9745#line 857
 9746  __cil_tmp32 = info->tx_count;
 9747#line 857
 9748  if (__cil_tmp32 != 0) {
 9749    {
 9750#line 859
 9751    __cil_tmp33 = info->tx_buf;
 9752#line 859
 9753    __cil_tmp34 = (char const   *)__cil_tmp33;
 9754#line 859
 9755    __cil_tmp35 = info->tx_count;
 9756#line 859
 9757    __cil_tmp36 = (unsigned int )__cil_tmp35;
 9758#line 859
 9759    tmp___1 = tx_load(info, __cil_tmp34, __cil_tmp36);
 9760    }
 9761#line 859
 9762    if (tmp___1) {
 9763#line 859
 9764      tmp___2 = 0;
 9765    } else {
 9766#line 859
 9767      tmp___2 = 1;
 9768    }
 9769#line 859
 9770    if (tmp___2) {
 9771#line 860
 9772      goto cleanup;
 9773    } else {
 9774
 9775    }
 9776#line 861
 9777    info->tx_count = 0;
 9778  } else {
 9779
 9780  }
 9781  }
 9782  {
 9783#line 864
 9784  __cil_tmp37 = (char const   *)buf;
 9785#line 864
 9786  __cil_tmp38 = (unsigned int )count;
 9787#line 864
 9788  tmp___3 = tx_load(info, __cil_tmp37, __cil_tmp38);
 9789  }
 9790#line 864
 9791  if ((int )tmp___3) {
 9792#line 865
 9793    ret = count;
 9794  } else {
 9795
 9796  }
 9797  cleanup: 
 9798  {
 9799#line 868
 9800  __cil_tmp39 = & info->lock;
 9801#line 868
 9802  spin_unlock_irqrestore(__cil_tmp39, flags);
 9803  }
 9804#line 869
 9805  if (debug_level > 2) {
 9806    {
 9807#line 869
 9808    __cil_tmp40 = & info->device_name;
 9809#line 869
 9810    __cil_tmp41 = (char *)__cil_tmp40;
 9811#line 869
 9812    printk("%s write rc=%d\n", __cil_tmp41, ret);
 9813    }
 9814  } else {
 9815
 9816  }
 9817#line 870
 9818  return (ret);
 9819}
 9820}
 9821#line 873 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
 9822static int put_char(struct tty_struct *tty , unsigned char ch ) 
 9823{ struct slgt_info *info ;
 9824  unsigned long flags ;
 9825  int ret ;
 9826  int tmp ;
 9827  raw_spinlock_t *tmp___0 ;
 9828  int tmp___1 ;
 9829  void *__cil_tmp9 ;
 9830  char (*__cil_tmp10)[64U] ;
 9831  char *__cil_tmp11 ;
 9832  char (*__cil_tmp12)[25U] ;
 9833  char *__cil_tmp13 ;
 9834  int __cil_tmp14 ;
 9835  unsigned char *__cil_tmp15 ;
 9836  unsigned long __cil_tmp16 ;
 9837  unsigned char *__cil_tmp17 ;
 9838  unsigned long __cil_tmp18 ;
 9839  spinlock_t *__cil_tmp19 ;
 9840  u32 __cil_tmp20 ;
 9841  int __cil_tmp21 ;
 9842  u32 __cil_tmp22 ;
 9843  int __cil_tmp23 ;
 9844  unsigned long __cil_tmp24 ;
 9845  unsigned char *__cil_tmp25 ;
 9846  unsigned char *__cil_tmp26 ;
 9847  spinlock_t *__cil_tmp27 ;
 9848
 9849  {
 9850  {
 9851#line 875
 9852  __cil_tmp9 = tty->driver_data;
 9853#line 875
 9854  info = (struct slgt_info *)__cil_tmp9;
 9855#line 877
 9856  ret = 0;
 9857#line 879
 9858  __cil_tmp10 = & tty->name;
 9859#line 879
 9860  __cil_tmp11 = (char *)__cil_tmp10;
 9861#line 879
 9862  tmp = sanity_check(info, __cil_tmp11, "put_char");
 9863  }
 9864#line 879
 9865  if (tmp != 0) {
 9866#line 880
 9867    return (0);
 9868  } else {
 9869
 9870  }
 9871#line 881
 9872  if (debug_level > 2) {
 9873    {
 9874#line 881
 9875    __cil_tmp12 = & info->device_name;
 9876#line 881
 9877    __cil_tmp13 = (char *)__cil_tmp12;
 9878#line 881
 9879    __cil_tmp14 = (int )ch;
 9880#line 881
 9881    printk("%s put_char(%d)\n", __cil_tmp13, __cil_tmp14);
 9882    }
 9883  } else {
 9884
 9885  }
 9886  {
 9887#line 882
 9888  __cil_tmp15 = (unsigned char *)0;
 9889#line 882
 9890  __cil_tmp16 = (unsigned long )__cil_tmp15;
 9891#line 882
 9892  __cil_tmp17 = info->tx_buf;
 9893#line 882
 9894  __cil_tmp18 = (unsigned long )__cil_tmp17;
 9895#line 882
 9896  if (__cil_tmp18 == __cil_tmp16) {
 9897#line 883
 9898    return (0);
 9899  } else {
 9900
 9901  }
 9902  }
 9903  {
 9904#line 884
 9905  __cil_tmp19 = & info->lock;
 9906#line 884
 9907  tmp___0 = spinlock_check(__cil_tmp19);
 9908#line 884
 9909  flags = _raw_spin_lock_irqsave(tmp___0);
 9910  }
 9911  {
 9912#line 885
 9913  __cil_tmp20 = info->max_frame_size;
 9914#line 885
 9915  __cil_tmp21 = info->tx_count;
 9916#line 885
 9917  __cil_tmp22 = (u32 )__cil_tmp21;
 9918#line 885
 9919  if (__cil_tmp22 < __cil_tmp20) {
 9920#line 886
 9921    tmp___1 = info->tx_count;
 9922#line 886
 9923    __cil_tmp23 = info->tx_count;
 9924#line 886
 9925    info->tx_count = __cil_tmp23 + 1;
 9926#line 886
 9927    __cil_tmp24 = (unsigned long )tmp___1;
 9928#line 886
 9929    __cil_tmp25 = info->tx_buf;
 9930#line 886
 9931    __cil_tmp26 = __cil_tmp25 + __cil_tmp24;
 9932#line 886
 9933    *__cil_tmp26 = ch;
 9934#line 887
 9935    ret = 1;
 9936  } else {
 9937
 9938  }
 9939  }
 9940  {
 9941#line 889
 9942  __cil_tmp27 = & info->lock;
 9943#line 889
 9944  spin_unlock_irqrestore(__cil_tmp27, flags);
 9945  }
 9946#line 890
 9947  return (ret);
 9948}
 9949}
 9950#line 893 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
 9951static void send_xchar(struct tty_struct *tty , char ch ) 
 9952{ struct slgt_info *info ;
 9953  unsigned long flags ;
 9954  int tmp ;
 9955  raw_spinlock_t *tmp___0 ;
 9956  void *__cil_tmp7 ;
 9957  char (*__cil_tmp8)[64U] ;
 9958  char *__cil_tmp9 ;
 9959  char (*__cil_tmp10)[25U] ;
 9960  char *__cil_tmp11 ;
 9961  int __cil_tmp12 ;
 9962  signed char __cil_tmp13 ;
 9963  int __cil_tmp14 ;
 9964  spinlock_t *__cil_tmp15 ;
 9965  bool __cil_tmp16 ;
 9966  spinlock_t *__cil_tmp17 ;
 9967
 9968  {
 9969  {
 9970#line 895
 9971  __cil_tmp7 = tty->driver_data;
 9972#line 895
 9973  info = (struct slgt_info *)__cil_tmp7;
 9974#line 898
 9975  __cil_tmp8 = & tty->name;
 9976#line 898
 9977  __cil_tmp9 = (char *)__cil_tmp8;
 9978#line 898
 9979  tmp = sanity_check(info, __cil_tmp9, "send_xchar");
 9980  }
 9981#line 898
 9982  if (tmp != 0) {
 9983#line 899
 9984    return;
 9985  } else {
 9986
 9987  }
 9988#line 900
 9989  if (debug_level > 2) {
 9990    {
 9991#line 900
 9992    __cil_tmp10 = & info->device_name;
 9993#line 900
 9994    __cil_tmp11 = (char *)__cil_tmp10;
 9995#line 900
 9996    __cil_tmp12 = (int )ch;
 9997#line 900
 9998    printk("%s send_xchar(%d)\n", __cil_tmp11, __cil_tmp12);
 9999    }
10000  } else {
10001
10002  }
10003#line 901
10004  info->x_char = (int )ch;
10005  {
10006#line 902
10007  __cil_tmp13 = (signed char )ch;
10008#line 902
10009  __cil_tmp14 = (int )__cil_tmp13;
10010#line 902
10011  if (__cil_tmp14 != 0) {
10012    {
10013#line 903
10014    __cil_tmp15 = & info->lock;
10015#line 903
10016    tmp___0 = spinlock_check(__cil_tmp15);
10017#line 903
10018    flags = _raw_spin_lock_irqsave(tmp___0);
10019    }
10020    {
10021#line 904
10022    __cil_tmp16 = info->tx_enabled;
10023#line 904
10024    if (! __cil_tmp16) {
10025      {
10026#line 905
10027      tx_start(info);
10028      }
10029    } else {
10030
10031    }
10032    }
10033    {
10034#line 906
10035    __cil_tmp17 = & info->lock;
10036#line 906
10037    spin_unlock_irqrestore(__cil_tmp17, flags);
10038    }
10039  } else {
10040
10041  }
10042  }
10043#line 908
10044  return;
10045}
10046}
10047#line 910 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
10048static void wait_until_sent(struct tty_struct *tty , int timeout ) 
10049{ struct slgt_info *info ;
10050  unsigned long orig_jiffies ;
10051  unsigned long char_time ;
10052  int tmp ;
10053  unsigned long __min1 ;
10054  unsigned long __min2 ;
10055  unsigned long tmp___0 ;
10056  unsigned int tmp___1 ;
10057  struct task_struct *tmp___2 ;
10058  int tmp___3 ;
10059  void *__cil_tmp13 ;
10060  struct slgt_info *__cil_tmp14 ;
10061  unsigned long __cil_tmp15 ;
10062  unsigned long __cil_tmp16 ;
10063  char (*__cil_tmp17)[64U] ;
10064  char *__cil_tmp18 ;
10065  char (*__cil_tmp19)[25U] ;
10066  char *__cil_tmp20 ;
10067  unsigned long __cil_tmp21 ;
10068  unsigned long __cil_tmp22 ;
10069  unsigned long __cil_tmp23 ;
10070  int __cil_tmp24 ;
10071  int __cil_tmp25 ;
10072  unsigned long __cil_tmp26 ;
10073  unsigned long __cil_tmp27 ;
10074  long __cil_tmp28 ;
10075  unsigned long __cil_tmp29 ;
10076  unsigned long __cil_tmp30 ;
10077  long __cil_tmp31 ;
10078  long __cil_tmp32 ;
10079  bool __cil_tmp33 ;
10080  char (*__cil_tmp34)[25U] ;
10081  char *__cil_tmp35 ;
10082
10083  {
10084#line 912
10085  __cil_tmp13 = tty->driver_data;
10086#line 912
10087  info = (struct slgt_info *)__cil_tmp13;
10088  {
10089#line 915
10090  __cil_tmp14 = (struct slgt_info *)0;
10091#line 915
10092  __cil_tmp15 = (unsigned long )__cil_tmp14;
10093#line 915
10094  __cil_tmp16 = (unsigned long )info;
10095#line 915
10096  if (__cil_tmp16 == __cil_tmp15) {
10097#line 916
10098    return;
10099  } else {
10100
10101  }
10102  }
10103  {
10104#line 917
10105  __cil_tmp17 = & tty->name;
10106#line 917
10107  __cil_tmp18 = (char *)__cil_tmp17;
10108#line 917
10109  tmp = sanity_check(info, __cil_tmp18, "wait_until_sent");
10110  }
10111#line 917
10112  if (tmp != 0) {
10113#line 918
10114    return;
10115  } else {
10116
10117  }
10118#line 919
10119  if (debug_level > 2) {
10120    {
10121#line 919
10122    __cil_tmp19 = & info->device_name;
10123#line 919
10124    __cil_tmp20 = (char *)__cil_tmp19;
10125#line 919
10126    printk("%s wait_until_sent entry\n", __cil_tmp20);
10127    }
10128  } else {
10129
10130  }
10131  {
10132#line 920
10133  __cil_tmp21 = info->port.flags;
10134#line 920
10135  __cil_tmp22 = __cil_tmp21 & 2147483648UL;
10136#line 920
10137  if (__cil_tmp22 == 0UL) {
10138#line 921
10139    goto exit;
10140  } else {
10141
10142  }
10143  }
10144#line 923
10145  orig_jiffies = (unsigned long )jiffies;
10146  {
10147#line 931
10148  __cil_tmp23 = info->params.data_rate;
10149#line 931
10150  if (__cil_tmp23 != 0UL) {
10151#line 932
10152    __cil_tmp24 = info->timeout;
10153#line 932
10154    __cil_tmp25 = __cil_tmp24 / 160;
10155#line 932
10156    char_time = (unsigned long )__cil_tmp25;
10157#line 933
10158    if (char_time == 0UL) {
10159#line 934
10160      char_time = char_time + 1UL;
10161    } else {
10162
10163    }
10164  } else {
10165#line 936
10166    char_time = 1UL;
10167  }
10168  }
10169#line 938
10170  if (timeout != 0) {
10171#line 939
10172    __min1 = char_time;
10173#line 939
10174    __min2 = (unsigned long )timeout;
10175#line 939
10176    if (__min1 < __min2) {
10177#line 939
10178      tmp___0 = __min1;
10179    } else {
10180#line 939
10181      tmp___0 = __min2;
10182    }
10183#line 939
10184    char_time = tmp___0;
10185  } else {
10186
10187  }
10188#line 941
10189  goto ldv_36545;
10190  ldv_36544: 
10191  {
10192#line 942
10193  __cil_tmp26 = (unsigned long const   )char_time;
10194#line 942
10195  __cil_tmp27 = (unsigned long )__cil_tmp26;
10196#line 942
10197  tmp___1 = jiffies_to_msecs(__cil_tmp27);
10198#line 942
10199  msleep_interruptible(tmp___1);
10200#line 943
10201  tmp___2 = get_current();
10202#line 943
10203  tmp___3 = signal_pending(tmp___2);
10204  }
10205#line 943
10206  if (tmp___3 != 0) {
10207#line 944
10208    goto ldv_36537;
10209  } else {
10210
10211  }
10212#line 945
10213  if (timeout != 0) {
10214    {
10215#line 945
10216    __cil_tmp28 = (long )jiffies;
10217#line 945
10218    __cil_tmp29 = (unsigned long )timeout;
10219#line 945
10220    __cil_tmp30 = __cil_tmp29 + orig_jiffies;
10221#line 945
10222    __cil_tmp31 = (long )__cil_tmp30;
10223#line 945
10224    __cil_tmp32 = __cil_tmp31 - __cil_tmp28;
10225#line 945
10226    if (__cil_tmp32 < 0L) {
10227#line 946
10228      goto ldv_36537;
10229    } else {
10230
10231    }
10232    }
10233  } else {
10234
10235  }
10236  ldv_36545: ;
10237  {
10238#line 941
10239  __cil_tmp33 = info->tx_active;
10240#line 941
10241  if ((int )__cil_tmp33) {
10242#line 942
10243    goto ldv_36544;
10244  } else {
10245#line 944
10246    goto ldv_36537;
10247  }
10248  }
10249  ldv_36537: ;
10250  exit: ;
10251#line 949
10252  if (debug_level > 2) {
10253    {
10254#line 949
10255    __cil_tmp34 = & info->device_name;
10256#line 949
10257    __cil_tmp35 = (char *)__cil_tmp34;
10258#line 949
10259    printk("%s wait_until_sent exit\n", __cil_tmp35);
10260    }
10261  } else {
10262
10263  }
10264#line 950
10265  return;
10266}
10267}
10268#line 952 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
10269static int write_room(struct tty_struct *tty ) 
10270{ struct slgt_info *info ;
10271  int ret ;
10272  int tmp ;
10273  void *__cil_tmp5 ;
10274  char (*__cil_tmp6)[64U] ;
10275  char *__cil_tmp7 ;
10276  bool __cil_tmp8 ;
10277  char (*__cil_tmp9)[25U] ;
10278  char *__cil_tmp10 ;
10279
10280  {
10281  {
10282#line 954
10283  __cil_tmp5 = tty->driver_data;
10284#line 954
10285  info = (struct slgt_info *)__cil_tmp5;
10286#line 957
10287  __cil_tmp6 = & tty->name;
10288#line 957
10289  __cil_tmp7 = (char *)__cil_tmp6;
10290#line 957
10291  tmp = sanity_check(info, __cil_tmp7, "write_room");
10292  }
10293#line 957
10294  if (tmp != 0) {
10295#line 958
10296    return (0);
10297  } else {
10298
10299  }
10300  {
10301#line 959
10302  __cil_tmp8 = info->tx_active;
10303#line 959
10304  if ((int )__cil_tmp8) {
10305#line 959
10306    ret = 0;
10307  } else {
10308#line 959
10309    ret = 65535;
10310  }
10311  }
10312#line 960
10313  if (debug_level > 2) {
10314    {
10315#line 960
10316    __cil_tmp9 = & info->device_name;
10317#line 960
10318    __cil_tmp10 = (char *)__cil_tmp9;
10319#line 960
10320    printk("%s write_room=%d\n", __cil_tmp10, ret);
10321    }
10322  } else {
10323
10324  }
10325#line 961
10326  return (ret);
10327}
10328}
10329#line 964 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
10330static void flush_chars(struct tty_struct *tty ) 
10331{ struct slgt_info *info ;
10332  unsigned long flags ;
10333  int tmp ;
10334  raw_spinlock_t *tmp___0 ;
10335  bool tmp___1 ;
10336  void *__cil_tmp7 ;
10337  char (*__cil_tmp8)[64U] ;
10338  char *__cil_tmp9 ;
10339  char (*__cil_tmp10)[25U] ;
10340  char *__cil_tmp11 ;
10341  int __cil_tmp12 ;
10342  int __cil_tmp13 ;
10343  unsigned char *__cil_tmp14 ;
10344  unsigned char *__cil_tmp15 ;
10345  unsigned char __cil_tmp16 ;
10346  unsigned int __cil_tmp17 ;
10347  unsigned char *__cil_tmp18 ;
10348  unsigned char *__cil_tmp19 ;
10349  unsigned char __cil_tmp20 ;
10350  unsigned int __cil_tmp21 ;
10351  unsigned char *__cil_tmp22 ;
10352  unsigned long __cil_tmp23 ;
10353  unsigned char *__cil_tmp24 ;
10354  unsigned long __cil_tmp25 ;
10355  char (*__cil_tmp26)[25U] ;
10356  char *__cil_tmp27 ;
10357  spinlock_t *__cil_tmp28 ;
10358  int __cil_tmp29 ;
10359  unsigned char *__cil_tmp30 ;
10360  char const   *__cil_tmp31 ;
10361  int __cil_tmp32 ;
10362  unsigned int __cil_tmp33 ;
10363  spinlock_t *__cil_tmp34 ;
10364
10365  {
10366  {
10367#line 966
10368  __cil_tmp7 = tty->driver_data;
10369#line 966
10370  info = (struct slgt_info *)__cil_tmp7;
10371#line 969
10372  __cil_tmp8 = & tty->name;
10373#line 969
10374  __cil_tmp9 = (char *)__cil_tmp8;
10375#line 969
10376  tmp = sanity_check(info, __cil_tmp9, "flush_chars");
10377  }
10378#line 969
10379  if (tmp != 0) {
10380#line 970
10381    return;
10382  } else {
10383
10384  }
10385#line 971
10386  if (debug_level > 2) {
10387    {
10388#line 971
10389    __cil_tmp10 = & info->device_name;
10390#line 971
10391    __cil_tmp11 = (char *)__cil_tmp10;
10392#line 971
10393    __cil_tmp12 = info->tx_count;
10394#line 971
10395    printk("%s flush_chars entry tx_count=%d\n", __cil_tmp11, __cil_tmp12);
10396    }
10397  } else {
10398
10399  }
10400  {
10401#line 973
10402  __cil_tmp13 = info->tx_count;
10403#line 973
10404  if (__cil_tmp13 <= 0) {
10405#line 975
10406    return;
10407  } else {
10408    {
10409#line 973
10410    __cil_tmp14 = (unsigned char *)tty;
10411#line 973
10412    __cil_tmp15 = __cil_tmp14 + 580UL;
10413#line 973
10414    __cil_tmp16 = *__cil_tmp15;
10415#line 973
10416    __cil_tmp17 = (unsigned int )__cil_tmp16;
10417#line 973
10418    if (__cil_tmp17 != 0U) {
10419#line 975
10420      return;
10421    } else {
10422      {
10423#line 973
10424      __cil_tmp18 = (unsigned char *)tty;
10425#line 973
10426      __cil_tmp19 = __cil_tmp18 + 580UL;
10427#line 973
10428      __cil_tmp20 = *__cil_tmp19;
10429#line 973
10430      __cil_tmp21 = (unsigned int )__cil_tmp20;
10431#line 973
10432      if (__cil_tmp21 != 0U) {
10433#line 975
10434        return;
10435      } else {
10436        {
10437#line 973
10438        __cil_tmp22 = (unsigned char *)0;
10439#line 973
10440        __cil_tmp23 = (unsigned long )__cil_tmp22;
10441#line 973
10442        __cil_tmp24 = info->tx_buf;
10443#line 973
10444        __cil_tmp25 = (unsigned long )__cil_tmp24;
10445#line 973
10446        if (__cil_tmp25 == __cil_tmp23) {
10447#line 975
10448          return;
10449        } else {
10450
10451        }
10452        }
10453      }
10454      }
10455    }
10456    }
10457  }
10458  }
10459#line 977
10460  if (debug_level > 2) {
10461    {
10462#line 977
10463    __cil_tmp26 = & info->device_name;
10464#line 977
10465    __cil_tmp27 = (char *)__cil_tmp26;
10466#line 977
10467    printk("%s flush_chars start transmit\n", __cil_tmp27);
10468    }
10469  } else {
10470
10471  }
10472  {
10473#line 979
10474  __cil_tmp28 = & info->lock;
10475#line 979
10476  tmp___0 = spinlock_check(__cil_tmp28);
10477#line 979
10478  flags = _raw_spin_lock_irqsave(tmp___0);
10479  }
10480  {
10481#line 980
10482  __cil_tmp29 = info->tx_count;
10483#line 980
10484  if (__cil_tmp29 != 0) {
10485    {
10486#line 980
10487    __cil_tmp30 = info->tx_buf;
10488#line 980
10489    __cil_tmp31 = (char const   *)__cil_tmp30;
10490#line 980
10491    __cil_tmp32 = info->tx_count;
10492#line 980
10493    __cil_tmp33 = (unsigned int )__cil_tmp32;
10494#line 980
10495    tmp___1 = tx_load(info, __cil_tmp31, __cil_tmp33);
10496    }
10497#line 980
10498    if ((int )tmp___1) {
10499#line 981
10500      info->tx_count = 0;
10501    } else {
10502
10503    }
10504  } else {
10505
10506  }
10507  }
10508  {
10509#line 982
10510  __cil_tmp34 = & info->lock;
10511#line 982
10512  spin_unlock_irqrestore(__cil_tmp34, flags);
10513  }
10514#line 983
10515  return;
10516}
10517}
10518#line 985 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
10519static void flush_buffer(struct tty_struct *tty ) 
10520{ struct slgt_info *info ;
10521  unsigned long flags ;
10522  int tmp ;
10523  raw_spinlock_t *tmp___0 ;
10524  void *__cil_tmp6 ;
10525  char (*__cil_tmp7)[64U] ;
10526  char *__cil_tmp8 ;
10527  char (*__cil_tmp9)[25U] ;
10528  char *__cil_tmp10 ;
10529  spinlock_t *__cil_tmp11 ;
10530  spinlock_t *__cil_tmp12 ;
10531
10532  {
10533  {
10534#line 987
10535  __cil_tmp6 = tty->driver_data;
10536#line 987
10537  info = (struct slgt_info *)__cil_tmp6;
10538#line 990
10539  __cil_tmp7 = & tty->name;
10540#line 990
10541  __cil_tmp8 = (char *)__cil_tmp7;
10542#line 990
10543  tmp = sanity_check(info, __cil_tmp8, "flush_buffer");
10544  }
10545#line 990
10546  if (tmp != 0) {
10547#line 991
10548    return;
10549  } else {
10550
10551  }
10552#line 992
10553  if (debug_level > 2) {
10554    {
10555#line 992
10556    __cil_tmp9 = & info->device_name;
10557#line 992
10558    __cil_tmp10 = (char *)__cil_tmp9;
10559#line 992
10560    printk("%s flush_buffer\n", __cil_tmp10);
10561    }
10562  } else {
10563
10564  }
10565  {
10566#line 994
10567  __cil_tmp11 = & info->lock;
10568#line 994
10569  tmp___0 = spinlock_check(__cil_tmp11);
10570#line 994
10571  flags = _raw_spin_lock_irqsave(tmp___0);
10572#line 995
10573  info->tx_count = 0;
10574#line 996
10575  __cil_tmp12 = & info->lock;
10576#line 996
10577  spin_unlock_irqrestore(__cil_tmp12, flags);
10578#line 998
10579  tty_wakeup(tty);
10580  }
10581#line 999
10582  return;
10583}
10584}
10585#line 1004 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
10586static void tx_hold(struct tty_struct *tty ) 
10587{ struct slgt_info *info ;
10588  unsigned long flags ;
10589  int tmp ;
10590  raw_spinlock_t *tmp___0 ;
10591  void *__cil_tmp6 ;
10592  char (*__cil_tmp7)[64U] ;
10593  char *__cil_tmp8 ;
10594  char (*__cil_tmp9)[25U] ;
10595  char *__cil_tmp10 ;
10596  spinlock_t *__cil_tmp11 ;
10597  bool __cil_tmp12 ;
10598  unsigned long __cil_tmp13 ;
10599  spinlock_t *__cil_tmp14 ;
10600
10601  {
10602  {
10603#line 1006
10604  __cil_tmp6 = tty->driver_data;
10605#line 1006
10606  info = (struct slgt_info *)__cil_tmp6;
10607#line 1009
10608  __cil_tmp7 = & tty->name;
10609#line 1009
10610  __cil_tmp8 = (char *)__cil_tmp7;
10611#line 1009
10612  tmp = sanity_check(info, __cil_tmp8, "tx_hold");
10613  }
10614#line 1009
10615  if (tmp != 0) {
10616#line 1010
10617    return;
10618  } else {
10619
10620  }
10621#line 1011
10622  if (debug_level > 2) {
10623    {
10624#line 1011
10625    __cil_tmp9 = & info->device_name;
10626#line 1011
10627    __cil_tmp10 = (char *)__cil_tmp9;
10628#line 1011
10629    printk("%s tx_hold\n", __cil_tmp10);
10630    }
10631  } else {
10632
10633  }
10634  {
10635#line 1012
10636  __cil_tmp11 = & info->lock;
10637#line 1012
10638  tmp___0 = spinlock_check(__cil_tmp11);
10639#line 1012
10640  flags = _raw_spin_lock_irqsave(tmp___0);
10641  }
10642  {
10643#line 1013
10644  __cil_tmp12 = info->tx_enabled;
10645#line 1013
10646  if ((int )__cil_tmp12) {
10647    {
10648#line 1013
10649    __cil_tmp13 = info->params.mode;
10650#line 1013
10651    if (__cil_tmp13 == 1UL) {
10652      {
10653#line 1014
10654      tx_stop(info);
10655      }
10656    } else {
10657
10658    }
10659    }
10660  } else {
10661
10662  }
10663  }
10664  {
10665#line 1015
10666  __cil_tmp14 = & info->lock;
10667#line 1015
10668  spin_unlock_irqrestore(__cil_tmp14, flags);
10669  }
10670#line 1016
10671  return;
10672}
10673}
10674#line 1021 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
10675static void tx_release(struct tty_struct *tty ) 
10676{ struct slgt_info *info ;
10677  unsigned long flags ;
10678  int tmp ;
10679  raw_spinlock_t *tmp___0 ;
10680  bool tmp___1 ;
10681  void *__cil_tmp7 ;
10682  char (*__cil_tmp8)[64U] ;
10683  char *__cil_tmp9 ;
10684  char (*__cil_tmp10)[25U] ;
10685  char *__cil_tmp11 ;
10686  spinlock_t *__cil_tmp12 ;
10687  int __cil_tmp13 ;
10688  unsigned char *__cil_tmp14 ;
10689  char const   *__cil_tmp15 ;
10690  int __cil_tmp16 ;
10691  unsigned int __cil_tmp17 ;
10692  spinlock_t *__cil_tmp18 ;
10693
10694  {
10695  {
10696#line 1023
10697  __cil_tmp7 = tty->driver_data;
10698#line 1023
10699  info = (struct slgt_info *)__cil_tmp7;
10700#line 1026
10701  __cil_tmp8 = & tty->name;
10702#line 1026
10703  __cil_tmp9 = (char *)__cil_tmp8;
10704#line 1026
10705  tmp = sanity_check(info, __cil_tmp9, "tx_release");
10706  }
10707#line 1026
10708  if (tmp != 0) {
10709#line 1027
10710    return;
10711  } else {
10712
10713  }
10714#line 1028
10715  if (debug_level > 2) {
10716    {
10717#line 1028
10718    __cil_tmp10 = & info->device_name;
10719#line 1028
10720    __cil_tmp11 = (char *)__cil_tmp10;
10721#line 1028
10722    printk("%s tx_release\n", __cil_tmp11);
10723    }
10724  } else {
10725
10726  }
10727  {
10728#line 1029
10729  __cil_tmp12 = & info->lock;
10730#line 1029
10731  tmp___0 = spinlock_check(__cil_tmp12);
10732#line 1029
10733  flags = _raw_spin_lock_irqsave(tmp___0);
10734  }
10735  {
10736#line 1030
10737  __cil_tmp13 = info->tx_count;
10738#line 1030
10739  if (__cil_tmp13 != 0) {
10740    {
10741#line 1030
10742    __cil_tmp14 = info->tx_buf;
10743#line 1030
10744    __cil_tmp15 = (char const   *)__cil_tmp14;
10745#line 1030
10746    __cil_tmp16 = info->tx_count;
10747#line 1030
10748    __cil_tmp17 = (unsigned int )__cil_tmp16;
10749#line 1030
10750    tmp___1 = tx_load(info, __cil_tmp15, __cil_tmp17);
10751    }
10752#line 1030
10753    if ((int )tmp___1) {
10754#line 1031
10755      info->tx_count = 0;
10756    } else {
10757
10758    }
10759  } else {
10760
10761  }
10762  }
10763  {
10764#line 1032
10765  __cil_tmp18 = & info->lock;
10766#line 1032
10767  spin_unlock_irqrestore(__cil_tmp18, flags);
10768  }
10769#line 1033
10770  return;
10771}
10772}
10773#line 1046 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
10774static int ioctl(struct tty_struct *tty , unsigned int cmd , unsigned long arg ) 
10775{ struct slgt_info *info ;
10776  void *argp ;
10777  int ret ;
10778  int tmp ;
10779  int tmp___0 ;
10780  int tmp___1 ;
10781  int tmp___2 ;
10782  int tmp___3 ;
10783  int tmp___4 ;
10784  int tmp___5 ;
10785  int tmp___6 ;
10786  int tmp___7 ;
10787  int tmp___8 ;
10788  void *__cil_tmp17 ;
10789  char (*__cil_tmp18)[64U] ;
10790  char *__cil_tmp19 ;
10791  char (*__cil_tmp20)[25U] ;
10792  char *__cil_tmp21 ;
10793  unsigned long __cil_tmp22 ;
10794  unsigned long __cil_tmp23 ;
10795  int __cil_tmp24 ;
10796  int __cil_tmp25 ;
10797  int __cil_tmp26 ;
10798  int __cil_tmp27 ;
10799  int __cil_tmp28 ;
10800  int __cil_tmp29 ;
10801  int __cil_tmp30 ;
10802  int __cil_tmp31 ;
10803  int __cil_tmp32 ;
10804  int *__cil_tmp33 ;
10805  int __cil_tmp34 ;
10806  struct gpio_desc *__cil_tmp35 ;
10807  struct gpio_desc *__cil_tmp36 ;
10808  struct gpio_desc *__cil_tmp37 ;
10809  int *__cil_tmp38 ;
10810  int __cil_tmp39 ;
10811  int *__cil_tmp40 ;
10812  int __cil_tmp41 ;
10813  struct mutex *__cil_tmp42 ;
10814  int __cil_tmp43 ;
10815  int __cil_tmp44 ;
10816  int __cil_tmp45 ;
10817  int __cil_tmp46 ;
10818  int __cil_tmp47 ;
10819  int __cil_tmp48 ;
10820  int __cil_tmp49 ;
10821  int __cil_tmp50 ;
10822  int __cil_tmp51 ;
10823  int __cil_tmp52 ;
10824  MGSL_PARAMS *__cil_tmp53 ;
10825  MGSL_PARAMS *__cil_tmp54 ;
10826  int *__cil_tmp55 ;
10827  int __cil_tmp56 ;
10828  int __cil_tmp57 ;
10829  int __cil_tmp58 ;
10830  struct mgsl_icount *__cil_tmp59 ;
10831  int *__cil_tmp60 ;
10832  int __cil_tmp61 ;
10833  struct mutex *__cil_tmp62 ;
10834
10835  {
10836  {
10837#line 1049
10838  __cil_tmp17 = tty->driver_data;
10839#line 1049
10840  info = (struct slgt_info *)__cil_tmp17;
10841#line 1050
10842  argp = (void *)arg;
10843#line 1053
10844  __cil_tmp18 = & tty->name;
10845#line 1053
10846  __cil_tmp19 = (char *)__cil_tmp18;
10847#line 1053
10848  tmp = sanity_check(info, __cil_tmp19, "ioctl");
10849  }
10850#line 1053
10851  if (tmp != 0) {
10852#line 1054
10853    return (-19);
10854  } else {
10855
10856  }
10857#line 1055
10858  if (debug_level > 2) {
10859    {
10860#line 1055
10861    __cil_tmp20 = & info->device_name;
10862#line 1055
10863    __cil_tmp21 = (char *)__cil_tmp20;
10864#line 1055
10865    printk("%s ioctl() cmd=%08X\n", __cil_tmp21, cmd);
10866    }
10867  } else {
10868
10869  }
10870#line 1057
10871  if (cmd != 21534U) {
10872#line 1057
10873    if (cmd != 21535U) {
10874#line 1057
10875      if (cmd != 21596U) {
10876        {
10877#line 1059
10878        __cil_tmp22 = tty->flags;
10879#line 1059
10880        __cil_tmp23 = __cil_tmp22 & 2UL;
10881#line 1059
10882        if (__cil_tmp23 != 0UL) {
10883#line 1060
10884          return (-5);
10885        } else {
10886
10887        }
10888        }
10889      } else {
10890
10891      }
10892    } else {
10893
10894    }
10895  } else {
10896
10897  }
10898  {
10899#line 1064
10900  __cil_tmp24 = (int )cmd;
10901#line 1064
10902  if (__cil_tmp24 == -1073451768) {
10903#line 1064
10904    goto case_neg_1073451768;
10905  } else {
10906    {
10907#line 1066
10908    __cil_tmp25 = (int )cmd;
10909#line 1066
10910    if (__cil_tmp25 == 21596) {
10911#line 1066
10912      goto case_21596;
10913    } else {
10914      {
10915#line 1068
10916      __cil_tmp26 = (int )cmd;
10917#line 1068
10918      if (__cil_tmp26 == 1074818320) {
10919#line 1068
10920        goto case_1074818320;
10921      } else {
10922        {
10923#line 1070
10924        __cil_tmp27 = (int )cmd;
10925#line 1070
10926        if (__cil_tmp27 == -2146407151) {
10927#line 1070
10928          goto case_neg_2146407151;
10929        } else {
10930          {
10931#line 1072
10932          __cil_tmp28 = (int )cmd;
10933#line 1072
10934          if (__cil_tmp28 == -1072665326) {
10935#line 1072
10936            goto case_neg_1072665326;
10937          } else {
10938            {
10939#line 1074
10940            __cil_tmp29 = (int )cmd;
10941#line 1074
10942            if (__cil_tmp29 == 27924) {
10943#line 1074
10944              goto case_27924;
10945            } else {
10946              {
10947#line 1076
10948              __cil_tmp30 = (int )cmd;
10949#line 1076
10950              if (__cil_tmp30 == 27923) {
10951#line 1076
10952                goto case_27923;
10953              } else {
10954                {
10955#line 1078
10956                __cil_tmp31 = (int )cmd;
10957#line 1078
10958                if (__cil_tmp31 == 27926) {
10959#line 1078
10960                  goto case_27926;
10961                } else {
10962                  {
10963#line 1080
10964                  __cil_tmp32 = (int )cmd;
10965#line 1080
10966                  if (__cil_tmp32 == 27925) {
10967#line 1080
10968                    goto case_27925;
10969                  } else
10970#line 1063
10971                  if (0) {
10972                    case_neg_1073451768: 
10973                    {
10974#line 1065
10975                    __cil_tmp33 = (int *)argp;
10976#line 1065
10977                    tmp___0 = wait_mgsl_event(info, __cil_tmp33);
10978                    }
10979#line 1065
10980                    return (tmp___0);
10981                    case_21596: 
10982                    {
10983#line 1067
10984                    __cil_tmp34 = (int )arg;
10985#line 1067
10986                    tmp___1 = modem_input_wait(info, __cil_tmp34);
10987                    }
10988#line 1067
10989                    return (tmp___1);
10990                    case_1074818320: 
10991                    {
10992#line 1069
10993                    __cil_tmp35 = (struct gpio_desc *)argp;
10994#line 1069
10995                    tmp___2 = set_gpio(info, __cil_tmp35);
10996                    }
10997#line 1069
10998                    return (tmp___2);
10999                    case_neg_2146407151: 
11000                    {
11001#line 1071
11002                    __cil_tmp36 = (struct gpio_desc *)argp;
11003#line 1071
11004                    tmp___3 = get_gpio(info, __cil_tmp36);
11005                    }
11006#line 1071
11007                    return (tmp___3);
11008                    case_neg_1072665326: 
11009                    {
11010#line 1073
11011                    __cil_tmp37 = (struct gpio_desc *)argp;
11012#line 1073
11013                    tmp___4 = wait_gpio(info, __cil_tmp37);
11014                    }
11015#line 1073
11016                    return (tmp___4);
11017                    case_27924: 
11018                    {
11019#line 1075
11020                    __cil_tmp38 = (int *)argp;
11021#line 1075
11022                    tmp___5 = get_xsync(info, __cil_tmp38);
11023                    }
11024#line 1075
11025                    return (tmp___5);
11026                    case_27923: 
11027                    {
11028#line 1077
11029                    __cil_tmp39 = (int )arg;
11030#line 1077
11031                    tmp___6 = set_xsync(info, __cil_tmp39);
11032                    }
11033#line 1077
11034                    return (tmp___6);
11035                    case_27926: 
11036                    {
11037#line 1079
11038                    __cil_tmp40 = (int *)argp;
11039#line 1079
11040                    tmp___7 = get_xctrl(info, __cil_tmp40);
11041                    }
11042#line 1079
11043                    return (tmp___7);
11044                    case_27925: 
11045                    {
11046#line 1081
11047                    __cil_tmp41 = (int )arg;
11048#line 1081
11049                    tmp___8 = set_xctrl(info, __cil_tmp41);
11050                    }
11051#line 1081
11052                    return (tmp___8);
11053                  } else {
11054
11055                  }
11056                  }
11057                }
11058                }
11059              }
11060              }
11061            }
11062            }
11063          }
11064          }
11065        }
11066        }
11067      }
11068      }
11069    }
11070    }
11071  }
11072  }
11073  {
11074#line 1083
11075  __cil_tmp42 = & info->port.mutex;
11076#line 1083
11077  mutex_lock_nested(__cil_tmp42, 0U);
11078  }
11079  {
11080#line 1085
11081  __cil_tmp43 = (int )cmd;
11082#line 1085
11083  if (__cil_tmp43 == -2144310015) {
11084#line 1085
11085    goto case_neg_2144310015;
11086  } else {
11087    {
11088#line 1088
11089    __cil_tmp44 = (int )cmd;
11090#line 1088
11091    if (__cil_tmp44 == 1076915456) {
11092#line 1088
11093      goto case_1076915456;
11094    } else {
11095      {
11096#line 1091
11097      __cil_tmp45 = (int )cmd;
11098#line 1091
11099      if (__cil_tmp45 == 27907) {
11100#line 1091
11101        goto case_27907;
11102      } else {
11103        {
11104#line 1094
11105        __cil_tmp46 = (int )cmd;
11106#line 1094
11107        if (__cil_tmp46 == 27906) {
11108#line 1094
11109          goto case_27906;
11110        } else {
11111          {
11112#line 1097
11113          __cil_tmp47 = (int )cmd;
11114#line 1097
11115          if (__cil_tmp47 == 27908) {
11116#line 1097
11117            goto case_27908;
11118          } else {
11119            {
11120#line 1100
11121            __cil_tmp48 = (int )cmd;
11122#line 1100
11123            if (__cil_tmp48 == 27909) {
11124#line 1100
11125              goto case_27909;
11126            } else {
11127              {
11128#line 1103
11129              __cil_tmp49 = (int )cmd;
11130#line 1103
11131              if (__cil_tmp49 == 27910) {
11132#line 1103
11133                goto case_27910;
11134              } else {
11135                {
11136#line 1106
11137                __cil_tmp50 = (int )cmd;
11138#line 1106
11139                if (__cil_tmp50 == 27911) {
11140#line 1106
11141                  goto case_27911;
11142                } else {
11143                  {
11144#line 1109
11145                  __cil_tmp51 = (int )cmd;
11146#line 1109
11147                  if (__cil_tmp51 == 27915) {
11148#line 1109
11149                    goto case_27915;
11150                  } else {
11151                    {
11152#line 1112
11153                    __cil_tmp52 = (int )cmd;
11154#line 1112
11155                    if (__cil_tmp52 == 27914) {
11156#line 1112
11157                      goto case_27914;
11158                    } else {
11159#line 1115
11160                      goto switch_default;
11161#line 1084
11162                      if (0) {
11163                        case_neg_2144310015: 
11164                        {
11165#line 1086
11166                        __cil_tmp53 = (MGSL_PARAMS *)argp;
11167#line 1086
11168                        ret = get_params(info, __cil_tmp53);
11169                        }
11170#line 1087
11171                        goto ldv_36601;
11172                        case_1076915456: 
11173                        {
11174#line 1089
11175                        __cil_tmp54 = (MGSL_PARAMS *)argp;
11176#line 1089
11177                        ret = set_params(info, __cil_tmp54);
11178                        }
11179#line 1090
11180                        goto ldv_36601;
11181                        case_27907: 
11182                        {
11183#line 1092
11184                        __cil_tmp55 = (int *)argp;
11185#line 1092
11186                        ret = get_txidle(info, __cil_tmp55);
11187                        }
11188#line 1093
11189                        goto ldv_36601;
11190                        case_27906: 
11191                        {
11192#line 1095
11193                        __cil_tmp56 = (int )arg;
11194#line 1095
11195                        ret = set_txidle(info, __cil_tmp56);
11196                        }
11197#line 1096
11198                        goto ldv_36601;
11199                        case_27908: 
11200                        {
11201#line 1098
11202                        __cil_tmp57 = (int )arg;
11203#line 1098
11204                        ret = tx_enable(info, __cil_tmp57);
11205                        }
11206#line 1099
11207                        goto ldv_36601;
11208                        case_27909: 
11209                        {
11210#line 1101
11211                        __cil_tmp58 = (int )arg;
11212#line 1101
11213                        ret = rx_enable(info, __cil_tmp58);
11214                        }
11215#line 1102
11216                        goto ldv_36601;
11217                        case_27910: 
11218                        {
11219#line 1104
11220                        ret = tx_abort(info);
11221                        }
11222#line 1105
11223                        goto ldv_36601;
11224                        case_27911: 
11225                        {
11226#line 1107
11227                        __cil_tmp59 = (struct mgsl_icount *)argp;
11228#line 1107
11229                        ret = get_stats(info, __cil_tmp59);
11230                        }
11231#line 1108
11232                        goto ldv_36601;
11233                        case_27915: 
11234                        {
11235#line 1110
11236                        __cil_tmp60 = (int *)argp;
11237#line 1110
11238                        ret = get_interface(info, __cil_tmp60);
11239                        }
11240#line 1111
11241                        goto ldv_36601;
11242                        case_27914: 
11243                        {
11244#line 1113
11245                        __cil_tmp61 = (int )arg;
11246#line 1113
11247                        ret = set_interface(info, __cil_tmp61);
11248                        }
11249#line 1114
11250                        goto ldv_36601;
11251                        switch_default: 
11252#line 1116
11253                        ret = -515;
11254                      } else {
11255
11256                      }
11257                    }
11258                    }
11259                  }
11260                  }
11261                }
11262                }
11263              }
11264              }
11265            }
11266            }
11267          }
11268          }
11269        }
11270        }
11271      }
11272      }
11273    }
11274    }
11275  }
11276  }
11277  ldv_36601: 
11278  {
11279#line 1118
11280  __cil_tmp62 = & info->port.mutex;
11281#line 1118
11282  mutex_unlock(__cil_tmp62);
11283  }
11284#line 1119
11285  return (ret);
11286}
11287}
11288#line 1122 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
11289static int get_icount(struct tty_struct *tty , struct serial_icounter_struct *icount ) 
11290{ struct slgt_info *info ;
11291  struct mgsl_icount cnow ;
11292  unsigned long flags ;
11293  raw_spinlock_t *tmp ;
11294  void *__cil_tmp7 ;
11295  spinlock_t *__cil_tmp8 ;
11296  spinlock_t *__cil_tmp9 ;
11297
11298  {
11299  {
11300#line 1126
11301  __cil_tmp7 = tty->driver_data;
11302#line 1126
11303  info = (struct slgt_info *)__cil_tmp7;
11304#line 1130
11305  __cil_tmp8 = & info->lock;
11306#line 1130
11307  tmp = spinlock_check(__cil_tmp8);
11308#line 1130
11309  flags = _raw_spin_lock_irqsave(tmp);
11310#line 1131
11311  cnow = info->icount;
11312#line 1132
11313  __cil_tmp9 = & info->lock;
11314#line 1132
11315  spin_unlock_irqrestore(__cil_tmp9, flags);
11316#line 1134
11317  icount->cts = (int )cnow.cts;
11318#line 1135
11319  icount->dsr = (int )cnow.dsr;
11320#line 1136
11321  icount->rng = (int )cnow.rng;
11322#line 1137
11323  icount->dcd = (int )cnow.dcd;
11324#line 1138
11325  icount->rx = (int )cnow.rx;
11326#line 1139
11327  icount->tx = (int )cnow.tx;
11328#line 1140
11329  icount->frame = (int )cnow.frame;
11330#line 1141
11331  icount->overrun = (int )cnow.overrun;
11332#line 1142
11333  icount->parity = (int )cnow.parity;
11334#line 1143
11335  icount->brk = (int )cnow.brk;
11336#line 1144
11337  icount->buf_overrun = (int )cnow.buf_overrun;
11338  }
11339#line 1146
11340  return (0);
11341}
11342}
11343#line 1153 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
11344static long get_params32(struct slgt_info *info , struct MGSL_PARAMS32 *user_params ) 
11345{ struct MGSL_PARAMS32 tmp_params ;
11346  int tmp ;
11347  char (*__cil_tmp5)[25U] ;
11348  char *__cil_tmp6 ;
11349  void *__cil_tmp7 ;
11350  unsigned long __cil_tmp8 ;
11351  unsigned long __cil_tmp9 ;
11352  unsigned long __cil_tmp10 ;
11353  void *__cil_tmp11 ;
11354  void const   *__cil_tmp12 ;
11355
11356  {
11357#line 1157
11358  if (debug_level > 2) {
11359    {
11360#line 1157
11361    __cil_tmp5 = & info->device_name;
11362#line 1157
11363    __cil_tmp6 = (char *)__cil_tmp5;
11364#line 1157
11365    printk("%s get_params32\n", __cil_tmp6);
11366    }
11367  } else {
11368
11369  }
11370  {
11371#line 1158
11372  __cil_tmp7 = (void *)(& tmp_params);
11373#line 1158
11374  memset(__cil_tmp7, 0, 32UL);
11375#line 1159
11376  __cil_tmp8 = info->params.mode;
11377#line 1159
11378  tmp_params.mode = (unsigned int )__cil_tmp8;
11379#line 1160
11380  tmp_params.loopback = info->params.loopback;
11381#line 1161
11382  tmp_params.flags = info->params.flags;
11383#line 1162
11384  tmp_params.encoding = info->params.encoding;
11385#line 1163
11386  __cil_tmp9 = info->params.clock_speed;
11387#line 1163
11388  tmp_params.clock_speed = (unsigned int )__cil_tmp9;
11389#line 1164
11390  tmp_params.addr_filter = info->params.addr_filter;
11391#line 1165
11392  tmp_params.crc_type = info->params.crc_type;
11393#line 1166
11394  tmp_params.preamble_length = info->params.preamble_length;
11395#line 1167
11396  tmp_params.preamble = info->params.preamble;
11397#line 1168
11398  __cil_tmp10 = info->params.data_rate;
11399#line 1168
11400  tmp_params.data_rate = (unsigned int )__cil_tmp10;
11401#line 1169
11402  tmp_params.data_bits = info->params.data_bits;
11403#line 1170
11404  tmp_params.stop_bits = info->params.stop_bits;
11405#line 1171
11406  tmp_params.parity = info->params.parity;
11407#line 1172
11408  __cil_tmp11 = (void *)user_params;
11409#line 1172
11410  __cil_tmp12 = (void const   *)(& tmp_params);
11411#line 1172
11412  tmp = copy_to_user(__cil_tmp11, __cil_tmp12, 32U);
11413  }
11414#line 1172
11415  if (tmp != 0) {
11416#line 1173
11417    return (-14L);
11418  } else {
11419
11420  }
11421#line 1174
11422  return (0L);
11423}
11424}
11425#line 1177 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
11426static long set_params32(struct slgt_info *info , struct MGSL_PARAMS32 *new_params ) 
11427{ struct MGSL_PARAMS32 tmp_params ;
11428  unsigned long tmp ;
11429  char (*__cil_tmp5)[25U] ;
11430  char *__cil_tmp6 ;
11431  void *__cil_tmp7 ;
11432  void const   *__cil_tmp8 ;
11433  spinlock_t *__cil_tmp9 ;
11434  spinlock_t *__cil_tmp10 ;
11435
11436  {
11437#line 1181
11438  if (debug_level > 2) {
11439    {
11440#line 1181
11441    __cil_tmp5 = & info->device_name;
11442#line 1181
11443    __cil_tmp6 = (char *)__cil_tmp5;
11444#line 1181
11445    printk("%s set_params32\n", __cil_tmp6);
11446    }
11447  } else {
11448
11449  }
11450  {
11451#line 1182
11452  __cil_tmp7 = (void *)(& tmp_params);
11453#line 1182
11454  __cil_tmp8 = (void const   *)new_params;
11455#line 1182
11456  tmp = copy_from_user(__cil_tmp7, __cil_tmp8, 32UL);
11457  }
11458#line 1182
11459  if (tmp != 0UL) {
11460#line 1183
11461    return (-14L);
11462  } else {
11463
11464  }
11465  {
11466#line 1185
11467  __cil_tmp9 = & info->lock;
11468#line 1185
11469  spin_lock(__cil_tmp9);
11470  }
11471#line 1186
11472  if (tmp_params.mode == 7U) {
11473#line 1187
11474    info->base_clock = tmp_params.clock_speed;
11475  } else {
11476#line 1189
11477    info->params.mode = (unsigned long )tmp_params.mode;
11478#line 1190
11479    info->params.loopback = tmp_params.loopback;
11480#line 1191
11481    info->params.flags = tmp_params.flags;
11482#line 1192
11483    info->params.encoding = tmp_params.encoding;
11484#line 1193
11485    info->params.clock_speed = (unsigned long )tmp_params.clock_speed;
11486#line 1194
11487    info->params.addr_filter = tmp_params.addr_filter;
11488#line 1195
11489    info->params.crc_type = tmp_params.crc_type;
11490#line 1196
11491    info->params.preamble_length = tmp_params.preamble_length;
11492#line 1197
11493    info->params.preamble = tmp_params.preamble;
11494#line 1198
11495    info->params.data_rate = (unsigned long )tmp_params.data_rate;
11496#line 1199
11497    info->params.data_bits = tmp_params.data_bits;
11498#line 1200
11499    info->params.stop_bits = tmp_params.stop_bits;
11500#line 1201
11501    info->params.parity = tmp_params.parity;
11502  }
11503  {
11504#line 1203
11505  __cil_tmp10 = & info->lock;
11506#line 1203
11507  spin_unlock(__cil_tmp10);
11508#line 1205
11509  program_hw(info);
11510  }
11511#line 1207
11512  return (0L);
11513}
11514}
11515#line 1210 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
11516static long slgt_compat_ioctl(struct tty_struct *tty , unsigned int cmd , unsigned long arg ) 
11517{ struct slgt_info *info ;
11518  int rc ;
11519  int tmp ;
11520  void *tmp___0 ;
11521  long tmp___1 ;
11522  void *tmp___2 ;
11523  long tmp___3 ;
11524  void *__cil_tmp11 ;
11525  char (*__cil_tmp12)[64U] ;
11526  char *__cil_tmp13 ;
11527  char (*__cil_tmp14)[25U] ;
11528  char *__cil_tmp15 ;
11529  int __cil_tmp16 ;
11530  int __cil_tmp17 ;
11531  int __cil_tmp18 ;
11532  int __cil_tmp19 ;
11533  int __cil_tmp20 ;
11534  int __cil_tmp21 ;
11535  int __cil_tmp22 ;
11536  int __cil_tmp23 ;
11537  int __cil_tmp24 ;
11538  int __cil_tmp25 ;
11539  int __cil_tmp26 ;
11540  int __cil_tmp27 ;
11541  int __cil_tmp28 ;
11542  int __cil_tmp29 ;
11543  int __cil_tmp30 ;
11544  int __cil_tmp31 ;
11545  int __cil_tmp32 ;
11546  int __cil_tmp33 ;
11547  int __cil_tmp34 ;
11548  int __cil_tmp35 ;
11549  int __cil_tmp36 ;
11550  compat_uptr_t __cil_tmp37 ;
11551  struct MGSL_PARAMS32 *__cil_tmp38 ;
11552  compat_uptr_t __cil_tmp39 ;
11553  struct MGSL_PARAMS32 *__cil_tmp40 ;
11554  char (*__cil_tmp41)[25U] ;
11555  char *__cil_tmp42 ;
11556
11557  {
11558  {
11559#line 1213
11560  __cil_tmp11 = tty->driver_data;
11561#line 1213
11562  info = (struct slgt_info *)__cil_tmp11;
11563#line 1214
11564  rc = -515;
11565#line 1216
11566  __cil_tmp12 = & tty->name;
11567#line 1216
11568  __cil_tmp13 = (char *)__cil_tmp12;
11569#line 1216
11570  tmp = sanity_check(info, __cil_tmp13, "compat_ioctl");
11571  }
11572#line 1216
11573  if (tmp != 0) {
11574#line 1217
11575    return (-19L);
11576  } else {
11577
11578  }
11579#line 1218
11580  if (debug_level > 2) {
11581    {
11582#line 1218
11583    __cil_tmp14 = & info->device_name;
11584#line 1218
11585    __cil_tmp15 = (char *)__cil_tmp14;
11586#line 1218
11587    printk("%s compat_ioctl() cmd=%08X\n", __cil_tmp15, cmd);
11588    }
11589  } else {
11590
11591  }
11592  {
11593#line 1222
11594  __cil_tmp16 = (int )cmd;
11595#line 1222
11596  if (__cil_tmp16 == 1075866880) {
11597#line 1222
11598    goto case_1075866880;
11599  } else {
11600    {
11601#line 1226
11602    __cil_tmp17 = (int )cmd;
11603#line 1226
11604    if (__cil_tmp17 == -2145358591) {
11605#line 1226
11606      goto case_neg_2145358591;
11607    } else {
11608      {
11609#line 1230
11610      __cil_tmp18 = (int )cmd;
11611#line 1230
11612      if (__cil_tmp18 == -2144310015) {
11613#line 1230
11614        goto case_neg_2144310015;
11615      } else {
11616        {
11617#line 1231
11618        __cil_tmp19 = (int )cmd;
11619#line 1231
11620        if (__cil_tmp19 == 1076915456) {
11621#line 1231
11622          goto case_1076915456;
11623        } else {
11624          {
11625#line 1232
11626          __cil_tmp20 = (int )cmd;
11627#line 1232
11628          if (__cil_tmp20 == 27907) {
11629#line 1232
11630            goto case_27907;
11631          } else {
11632            {
11633#line 1233
11634            __cil_tmp21 = (int )cmd;
11635#line 1233
11636            if (__cil_tmp21 == 27911) {
11637#line 1233
11638              goto case_27911;
11639            } else {
11640              {
11641#line 1234
11642              __cil_tmp22 = (int )cmd;
11643#line 1234
11644              if (__cil_tmp22 == -1073451768) {
11645#line 1234
11646                goto case_neg_1073451768;
11647              } else {
11648                {
11649#line 1235
11650                __cil_tmp23 = (int )cmd;
11651#line 1235
11652                if (__cil_tmp23 == 27915) {
11653#line 1235
11654                  goto case_27915;
11655                } else {
11656                  {
11657#line 1236
11658                  __cil_tmp24 = (int )cmd;
11659#line 1236
11660                  if (__cil_tmp24 == 1074818320) {
11661#line 1236
11662                    goto case_1074818320;
11663                  } else {
11664                    {
11665#line 1237
11666                    __cil_tmp25 = (int )cmd;
11667#line 1237
11668                    if (__cil_tmp25 == -2146407151) {
11669#line 1237
11670                      goto case_neg_2146407151;
11671                    } else {
11672                      {
11673#line 1238
11674                      __cil_tmp26 = (int )cmd;
11675#line 1238
11676                      if (__cil_tmp26 == -1072665326) {
11677#line 1238
11678                        goto case_neg_1072665326;
11679                      } else {
11680                        {
11681#line 1239
11682                        __cil_tmp27 = (int )cmd;
11683#line 1239
11684                        if (__cil_tmp27 == 27924) {
11685#line 1239
11686                          goto case_27924;
11687                        } else {
11688                          {
11689#line 1240
11690                          __cil_tmp28 = (int )cmd;
11691#line 1240
11692                          if (__cil_tmp28 == 27926) {
11693#line 1240
11694                            goto case_27926;
11695                          } else {
11696                            {
11697#line 1241
11698                            __cil_tmp29 = (int )cmd;
11699#line 1241
11700                            if (__cil_tmp29 == 27906) {
11701#line 1241
11702                              goto case_27906;
11703                            } else {
11704                              {
11705#line 1242
11706                              __cil_tmp30 = (int )cmd;
11707#line 1242
11708                              if (__cil_tmp30 == 27908) {
11709#line 1242
11710                                goto case_27908;
11711                              } else {
11712                                {
11713#line 1243
11714                                __cil_tmp31 = (int )cmd;
11715#line 1243
11716                                if (__cil_tmp31 == 27909) {
11717#line 1243
11718                                  goto case_27909;
11719                                } else {
11720                                  {
11721#line 1244
11722                                  __cil_tmp32 = (int )cmd;
11723#line 1244
11724                                  if (__cil_tmp32 == 27910) {
11725#line 1244
11726                                    goto case_27910;
11727                                  } else {
11728                                    {
11729#line 1245
11730                                    __cil_tmp33 = (int )cmd;
11731#line 1245
11732                                    if (__cil_tmp33 == 21596) {
11733#line 1245
11734                                      goto case_21596;
11735                                    } else {
11736                                      {
11737#line 1246
11738                                      __cil_tmp34 = (int )cmd;
11739#line 1246
11740                                      if (__cil_tmp34 == 27914) {
11741#line 1246
11742                                        goto case_27914;
11743                                      } else {
11744                                        {
11745#line 1247
11746                                        __cil_tmp35 = (int )cmd;
11747#line 1247
11748                                        if (__cil_tmp35 == 27923) {
11749#line 1247
11750                                          goto case_27923;
11751                                        } else {
11752                                          {
11753#line 1248
11754                                          __cil_tmp36 = (int )cmd;
11755#line 1248
11756                                          if (__cil_tmp36 == 27925) {
11757#line 1248
11758                                            goto case_27925;
11759                                          } else
11760#line 1220
11761                                          if (0) {
11762                                            case_1075866880: 
11763                                            {
11764#line 1223
11765                                            __cil_tmp37 = (compat_uptr_t )arg;
11766#line 1223
11767                                            tmp___0 = compat_ptr(__cil_tmp37);
11768#line 1223
11769                                            __cil_tmp38 = (struct MGSL_PARAMS32 *)tmp___0;
11770#line 1223
11771                                            tmp___1 = set_params32(info, __cil_tmp38);
11772#line 1223
11773                                            rc = (int )tmp___1;
11774                                            }
11775#line 1224
11776                                            goto ldv_36640;
11777                                            case_neg_2145358591: 
11778                                            {
11779#line 1227
11780                                            __cil_tmp39 = (compat_uptr_t )arg;
11781#line 1227
11782                                            tmp___2 = compat_ptr(__cil_tmp39);
11783#line 1227
11784                                            __cil_tmp40 = (struct MGSL_PARAMS32 *)tmp___2;
11785#line 1227
11786                                            tmp___3 = get_params32(info, __cil_tmp40);
11787#line 1227
11788                                            rc = (int )tmp___3;
11789                                            }
11790#line 1228
11791                                            goto ldv_36640;
11792                                            case_neg_2144310015: ;
11793                                            case_1076915456: ;
11794                                            case_27907: ;
11795                                            case_27911: ;
11796                                            case_neg_1073451768: ;
11797                                            case_27915: ;
11798                                            case_1074818320: ;
11799                                            case_neg_2146407151: ;
11800                                            case_neg_1072665326: ;
11801                                            case_27924: ;
11802                                            case_27926: ;
11803                                            case_27906: ;
11804                                            case_27908: ;
11805                                            case_27909: ;
11806                                            case_27910: ;
11807                                            case_21596: ;
11808                                            case_27914: ;
11809                                            case_27923: ;
11810                                            case_27925: 
11811                                            {
11812#line 1249
11813                                            rc = ioctl(tty, cmd, arg);
11814                                            }
11815#line 1250
11816                                            goto ldv_36640;
11817                                          } else {
11818
11819                                          }
11820                                          }
11821                                        }
11822                                        }
11823                                      }
11824                                      }
11825                                    }
11826                                    }
11827                                  }
11828                                  }
11829                                }
11830                                }
11831                              }
11832                              }
11833                            }
11834                            }
11835                          }
11836                          }
11837                        }
11838                        }
11839                      }
11840                      }
11841                    }
11842                    }
11843                  }
11844                  }
11845                }
11846                }
11847              }
11848              }
11849            }
11850            }
11851          }
11852          }
11853        }
11854        }
11855      }
11856      }
11857    }
11858    }
11859  }
11860  }
11861  ldv_36640: ;
11862#line 1253
11863  if (debug_level > 2) {
11864    {
11865#line 1253
11866    __cil_tmp41 = & info->device_name;
11867#line 1253
11868    __cil_tmp42 = (char *)__cil_tmp41;
11869#line 1253
11870    printk("%s compat_ioctl() cmd=%08X rc=%d\n", __cil_tmp42, cmd, rc);
11871    }
11872  } else {
11873
11874  }
11875#line 1254
11876  return ((long )rc);
11877}
11878}
11879#line 1263 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
11880__inline static void line_info(struct seq_file *m , struct slgt_info *info ) 
11881{ char stat_buf[30U] ;
11882  unsigned long flags ;
11883  raw_spinlock_t *tmp ;
11884  char (*__cil_tmp6)[25U] ;
11885  char *__cil_tmp7 ;
11886  u32 __cil_tmp8 ;
11887  unsigned int __cil_tmp9 ;
11888  u32 __cil_tmp10 ;
11889  spinlock_t *__cil_tmp11 ;
11890  spinlock_t *__cil_tmp12 ;
11891  unsigned char __cil_tmp13 ;
11892  int __cil_tmp14 ;
11893  int __cil_tmp15 ;
11894  char *__cil_tmp16 ;
11895  unsigned char __cil_tmp17 ;
11896  int __cil_tmp18 ;
11897  int __cil_tmp19 ;
11898  char *__cil_tmp20 ;
11899  unsigned char __cil_tmp21 ;
11900  signed char __cil_tmp22 ;
11901  int __cil_tmp23 ;
11902  char *__cil_tmp24 ;
11903  unsigned char __cil_tmp25 ;
11904  int __cil_tmp26 ;
11905  int __cil_tmp27 ;
11906  char *__cil_tmp28 ;
11907  unsigned char __cil_tmp29 ;
11908  int __cil_tmp30 ;
11909  char *__cil_tmp31 ;
11910  unsigned char __cil_tmp32 ;
11911  int __cil_tmp33 ;
11912  int __cil_tmp34 ;
11913  char *__cil_tmp35 ;
11914  unsigned long __cil_tmp36 ;
11915  __u32 __cil_tmp37 ;
11916  __u32 __cil_tmp38 ;
11917  __u32 __cil_tmp39 ;
11918  __u32 __cil_tmp40 ;
11919  __u32 __cil_tmp41 ;
11920  __u32 __cil_tmp42 ;
11921  __u32 __cil_tmp43 ;
11922  __u32 __cil_tmp44 ;
11923  __u32 __cil_tmp45 ;
11924  __u32 __cil_tmp46 ;
11925  __u32 __cil_tmp47 ;
11926  __u32 __cil_tmp48 ;
11927  __u32 __cil_tmp49 ;
11928  __u32 __cil_tmp50 ;
11929  __u32 __cil_tmp51 ;
11930  __u32 __cil_tmp52 ;
11931  __u32 __cil_tmp53 ;
11932  __u32 __cil_tmp54 ;
11933  __u32 __cil_tmp55 ;
11934  __u32 __cil_tmp56 ;
11935  __u32 __cil_tmp57 ;
11936  __u32 __cil_tmp58 ;
11937  __u32 __cil_tmp59 ;
11938  __u32 __cil_tmp60 ;
11939  char *__cil_tmp61 ;
11940  char *__cil_tmp62 ;
11941  bool __cil_tmp63 ;
11942  int __cil_tmp64 ;
11943  bool __cil_tmp65 ;
11944  int __cil_tmp66 ;
11945  bool __cil_tmp67 ;
11946  int __cil_tmp68 ;
11947  u32 __cil_tmp69 ;
11948
11949  {
11950  {
11951#line 1268
11952  __cil_tmp6 = & info->device_name;
11953#line 1268
11954  __cil_tmp7 = (char *)__cil_tmp6;
11955#line 1268
11956  __cil_tmp8 = info->phys_reg_addr;
11957#line 1268
11958  __cil_tmp9 = info->irq_level;
11959#line 1268
11960  __cil_tmp10 = info->max_frame_size;
11961#line 1268
11962  seq_printf(m, "%s: IO=%08X IRQ=%d MaxFrameSize=%u\n", __cil_tmp7, __cil_tmp8, __cil_tmp9,
11963             __cil_tmp10);
11964#line 1273
11965  __cil_tmp11 = & info->lock;
11966#line 1273
11967  tmp = spinlock_check(__cil_tmp11);
11968#line 1273
11969  flags = _raw_spin_lock_irqsave(tmp);
11970#line 1274
11971  get_signals(info);
11972#line 1275
11973  __cil_tmp12 = & info->lock;
11974#line 1275
11975  spin_unlock_irqrestore(__cil_tmp12, flags);
11976#line 1277
11977  stat_buf[0] = (char)0;
11978#line 1278
11979  stat_buf[1] = (char)0;
11980  }
11981  {
11982#line 1279
11983  __cil_tmp13 = info->signals;
11984#line 1279
11985  __cil_tmp14 = (int )__cil_tmp13;
11986#line 1279
11987  __cil_tmp15 = __cil_tmp14 & 32;
11988#line 1279
11989  if (__cil_tmp15 != 0) {
11990    {
11991#line 1280
11992    __cil_tmp16 = (char *)(& stat_buf);
11993#line 1280
11994    strcat(__cil_tmp16, "|RTS");
11995    }
11996  } else {
11997
11998  }
11999  }
12000  {
12001#line 1281
12002  __cil_tmp17 = info->signals;
12003#line 1281
12004  __cil_tmp18 = (int )__cil_tmp17;
12005#line 1281
12006  __cil_tmp19 = __cil_tmp18 & 16;
12007#line 1281
12008  if (__cil_tmp19 != 0) {
12009    {
12010#line 1282
12011    __cil_tmp20 = (char *)(& stat_buf);
12012#line 1282
12013    strcat(__cil_tmp20, "|CTS");
12014    }
12015  } else {
12016
12017  }
12018  }
12019  {
12020#line 1283
12021  __cil_tmp21 = info->signals;
12022#line 1283
12023  __cil_tmp22 = (signed char )__cil_tmp21;
12024#line 1283
12025  __cil_tmp23 = (int )__cil_tmp22;
12026#line 1283
12027  if (__cil_tmp23 < 0) {
12028    {
12029#line 1284
12030    __cil_tmp24 = (char *)(& stat_buf);
12031#line 1284
12032    strcat(__cil_tmp24, "|DTR");
12033    }
12034  } else {
12035
12036  }
12037  }
12038  {
12039#line 1285
12040  __cil_tmp25 = info->signals;
12041#line 1285
12042  __cil_tmp26 = (int )__cil_tmp25;
12043#line 1285
12044  __cil_tmp27 = __cil_tmp26 & 64;
12045#line 1285
12046  if (__cil_tmp27 != 0) {
12047    {
12048#line 1286
12049    __cil_tmp28 = (char *)(& stat_buf);
12050#line 1286
12051    strcat(__cil_tmp28, "|DSR");
12052    }
12053  } else {
12054
12055  }
12056  }
12057  {
12058#line 1287
12059  __cil_tmp29 = info->signals;
12060#line 1287
12061  __cil_tmp30 = (int )__cil_tmp29;
12062#line 1287
12063  if (__cil_tmp30 & 1) {
12064    {
12065#line 1288
12066    __cil_tmp31 = (char *)(& stat_buf);
12067#line 1288
12068    strcat(__cil_tmp31, "|CD");
12069    }
12070  } else {
12071
12072  }
12073  }
12074  {
12075#line 1289
12076  __cil_tmp32 = info->signals;
12077#line 1289
12078  __cil_tmp33 = (int )__cil_tmp32;
12079#line 1289
12080  __cil_tmp34 = __cil_tmp33 & 4;
12081#line 1289
12082  if (__cil_tmp34 != 0) {
12083    {
12084#line 1290
12085    __cil_tmp35 = (char *)(& stat_buf);
12086#line 1290
12087    strcat(__cil_tmp35, "|RI");
12088    }
12089  } else {
12090
12091  }
12092  }
12093  {
12094#line 1292
12095  __cil_tmp36 = info->params.mode;
12096#line 1292
12097  if (__cil_tmp36 != 1UL) {
12098    {
12099#line 1293
12100    __cil_tmp37 = info->icount.txok;
12101#line 1293
12102    __cil_tmp38 = info->icount.rxok;
12103#line 1293
12104    seq_printf(m, "\tHDLC txok:%d rxok:%d", __cil_tmp37, __cil_tmp38);
12105    }
12106    {
12107#line 1295
12108    __cil_tmp39 = info->icount.txunder;
12109#line 1295
12110    if (__cil_tmp39 != 0U) {
12111      {
12112#line 1296
12113      __cil_tmp40 = info->icount.txunder;
12114#line 1296
12115      seq_printf(m, " txunder:%d", __cil_tmp40);
12116      }
12117    } else {
12118
12119    }
12120    }
12121    {
12122#line 1297
12123    __cil_tmp41 = info->icount.txabort;
12124#line 1297
12125    if (__cil_tmp41 != 0U) {
12126      {
12127#line 1298
12128      __cil_tmp42 = info->icount.txabort;
12129#line 1298
12130      seq_printf(m, " txabort:%d", __cil_tmp42);
12131      }
12132    } else {
12133
12134    }
12135    }
12136    {
12137#line 1299
12138    __cil_tmp43 = info->icount.rxshort;
12139#line 1299
12140    if (__cil_tmp43 != 0U) {
12141      {
12142#line 1300
12143      __cil_tmp44 = info->icount.rxshort;
12144#line 1300
12145      seq_printf(m, " rxshort:%d", __cil_tmp44);
12146      }
12147    } else {
12148
12149    }
12150    }
12151    {
12152#line 1301
12153    __cil_tmp45 = info->icount.rxlong;
12154#line 1301
12155    if (__cil_tmp45 != 0U) {
12156      {
12157#line 1302
12158      __cil_tmp46 = info->icount.rxlong;
12159#line 1302
12160      seq_printf(m, " rxlong:%d", __cil_tmp46);
12161      }
12162    } else {
12163
12164    }
12165    }
12166    {
12167#line 1303
12168    __cil_tmp47 = info->icount.rxover;
12169#line 1303
12170    if (__cil_tmp47 != 0U) {
12171      {
12172#line 1304
12173      __cil_tmp48 = info->icount.rxover;
12174#line 1304
12175      seq_printf(m, " rxover:%d", __cil_tmp48);
12176      }
12177    } else {
12178
12179    }
12180    }
12181    {
12182#line 1305
12183    __cil_tmp49 = info->icount.rxcrc;
12184#line 1305
12185    if (__cil_tmp49 != 0U) {
12186      {
12187#line 1306
12188      __cil_tmp50 = info->icount.rxcrc;
12189#line 1306
12190      seq_printf(m, " rxcrc:%d", __cil_tmp50);
12191      }
12192    } else {
12193
12194    }
12195    }
12196  } else {
12197    {
12198#line 1308
12199    __cil_tmp51 = info->icount.tx;
12200#line 1308
12201    __cil_tmp52 = info->icount.rx;
12202#line 1308
12203    seq_printf(m, "\tASYNC tx:%d rx:%d", __cil_tmp51, __cil_tmp52);
12204    }
12205    {
12206#line 1310
12207    __cil_tmp53 = info->icount.frame;
12208#line 1310
12209    if (__cil_tmp53 != 0U) {
12210      {
12211#line 1311
12212      __cil_tmp54 = info->icount.frame;
12213#line 1311
12214      seq_printf(m, " fe:%d", __cil_tmp54);
12215      }
12216    } else {
12217
12218    }
12219    }
12220    {
12221#line 1312
12222    __cil_tmp55 = info->icount.parity;
12223#line 1312
12224    if (__cil_tmp55 != 0U) {
12225      {
12226#line 1313
12227      __cil_tmp56 = info->icount.parity;
12228#line 1313
12229      seq_printf(m, " pe:%d", __cil_tmp56);
12230      }
12231    } else {
12232
12233    }
12234    }
12235    {
12236#line 1314
12237    __cil_tmp57 = info->icount.brk;
12238#line 1314
12239    if (__cil_tmp57 != 0U) {
12240      {
12241#line 1315
12242      __cil_tmp58 = info->icount.brk;
12243#line 1315
12244      seq_printf(m, " brk:%d", __cil_tmp58);
12245      }
12246    } else {
12247
12248    }
12249    }
12250    {
12251#line 1316
12252    __cil_tmp59 = info->icount.overrun;
12253#line 1316
12254    if (__cil_tmp59 != 0U) {
12255      {
12256#line 1317
12257      __cil_tmp60 = info->icount.overrun;
12258#line 1317
12259      seq_printf(m, " oe:%d", __cil_tmp60);
12260      }
12261    } else {
12262
12263    }
12264    }
12265  }
12266  }
12267  {
12268#line 1321
12269  __cil_tmp61 = (char *)(& stat_buf);
12270#line 1321
12271  __cil_tmp62 = __cil_tmp61 + 1UL;
12272#line 1321
12273  seq_printf(m, " %s\n", __cil_tmp62);
12274#line 1323
12275  __cil_tmp63 = info->tx_active;
12276#line 1323
12277  __cil_tmp64 = (int )__cil_tmp63;
12278#line 1323
12279  __cil_tmp65 = info->bh_requested;
12280#line 1323
12281  __cil_tmp66 = (int )__cil_tmp65;
12282#line 1323
12283  __cil_tmp67 = info->bh_running;
12284#line 1323
12285  __cil_tmp68 = (int )__cil_tmp67;
12286#line 1323
12287  __cil_tmp69 = info->pending_bh;
12288#line 1323
12289  seq_printf(m, "\ttxactive=%d bh_req=%d bh_run=%d pending_bh=%x\n", __cil_tmp64,
12290             __cil_tmp66, __cil_tmp68, __cil_tmp69);
12291  }
12292#line 1326
12293  return;
12294}
12295}
12296#line 1330 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
12297static int synclink_gt_proc_show(struct seq_file *m , void *v ) 
12298{ struct slgt_info *info ;
12299  struct slgt_info *__cil_tmp4 ;
12300  unsigned long __cil_tmp5 ;
12301  unsigned long __cil_tmp6 ;
12302
12303  {
12304  {
12305#line 1334
12306  seq_puts(m, "synclink_gt driver\n");
12307#line 1336
12308  info = slgt_device_list;
12309  }
12310#line 1337
12311  goto ldv_36676;
12312  ldv_36675: 
12313  {
12314#line 1338
12315  line_info(m, info);
12316#line 1339
12317  info = info->next_device;
12318  }
12319  ldv_36676: ;
12320  {
12321#line 1337
12322  __cil_tmp4 = (struct slgt_info *)0;
12323#line 1337
12324  __cil_tmp5 = (unsigned long )__cil_tmp4;
12325#line 1337
12326  __cil_tmp6 = (unsigned long )info;
12327#line 1337
12328  if (__cil_tmp6 != __cil_tmp5) {
12329#line 1338
12330    goto ldv_36675;
12331  } else {
12332#line 1340
12333    goto ldv_36677;
12334  }
12335  }
12336  ldv_36677: ;
12337#line 1341
12338  return (0);
12339}
12340}
12341#line 1344 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
12342static int synclink_gt_proc_open(struct inode *inode , struct file *file ) 
12343{ int tmp ;
12344  void *__cil_tmp4 ;
12345
12346  {
12347  {
12348#line 1346
12349  __cil_tmp4 = (void *)0;
12350#line 1346
12351  tmp = single_open(file, & synclink_gt_proc_show, __cil_tmp4);
12352  }
12353#line 1346
12354  return (tmp);
12355}
12356}
12357#line 1349 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
12358static struct file_operations  const  synclink_gt_proc_fops  = 
12359#line 1349
12360     {& __this_module, & seq_lseek, & seq_read, (ssize_t (*)(struct file * , char const   * ,
12361                                                           size_t  , loff_t * ))0,
12362    (ssize_t (*)(struct kiocb * , struct iovec  const  * , unsigned long  , loff_t  ))0,
12363    (ssize_t (*)(struct kiocb * , struct iovec  const  * , unsigned long  , loff_t  ))0,
12364    (int (*)(struct file * , void * , int (*)(void * , char const   * , int  , loff_t  ,
12365                                              u64  , unsigned int  ) ))0, (unsigned int (*)(struct file * ,
12366                                                                                            struct poll_table_struct * ))0,
12367    (long (*)(struct file * , unsigned int  , unsigned long  ))0, (long (*)(struct file * ,
12368                                                                            unsigned int  ,
12369                                                                            unsigned long  ))0,
12370    (int (*)(struct file * , struct vm_area_struct * ))0, & synclink_gt_proc_open,
12371    (int (*)(struct file * , fl_owner_t  ))0, & single_release, (int (*)(struct file * ,
12372                                                                         int  ))0,
12373    (int (*)(struct kiocb * , int  ))0, (int (*)(int  , struct file * , int  ))0,
12374    (int (*)(struct file * , int  , struct file_lock * ))0, (ssize_t (*)(struct file * ,
12375                                                                         struct page * ,
12376                                                                         int  , size_t  ,
12377                                                                         loff_t * ,
12378                                                                         int  ))0,
12379    (unsigned long (*)(struct file * , unsigned long  , unsigned long  , unsigned long  ,
12380                       unsigned long  ))0, (int (*)(int  ))0, (int (*)(struct file * ,
12381                                                                       int  , struct file_lock * ))0,
12382    (ssize_t (*)(struct pipe_inode_info * , struct file * , loff_t * , size_t  , unsigned int  ))0,
12383    (ssize_t (*)(struct file * , loff_t * , struct pipe_inode_info * , size_t  , unsigned int  ))0,
12384    (int (*)(struct file * , long  , struct file_lock ** ))0, (long (*)(struct file * ,
12385                                                                        int  , loff_t  ,
12386                                                                        loff_t  ))0};
12387#line 1360 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
12388static int chars_in_buffer(struct tty_struct *tty ) 
12389{ struct slgt_info *info ;
12390  int count ;
12391  int tmp ;
12392  unsigned int tmp___0 ;
12393  void *__cil_tmp6 ;
12394  char (*__cil_tmp7)[64U] ;
12395  char *__cil_tmp8 ;
12396  char (*__cil_tmp9)[25U] ;
12397  char *__cil_tmp10 ;
12398
12399  {
12400  {
12401#line 1362
12402  __cil_tmp6 = tty->driver_data;
12403#line 1362
12404  info = (struct slgt_info *)__cil_tmp6;
12405#line 1364
12406  __cil_tmp7 = & tty->name;
12407#line 1364
12408  __cil_tmp8 = (char *)__cil_tmp7;
12409#line 1364
12410  tmp = sanity_check(info, __cil_tmp8, "chars_in_buffer");
12411  }
12412#line 1364
12413  if (tmp != 0) {
12414#line 1365
12415    return (0);
12416  } else {
12417
12418  }
12419  {
12420#line 1366
12421  tmp___0 = tbuf_bytes(info);
12422#line 1366
12423  count = (int )tmp___0;
12424  }
12425#line 1367
12426  if (debug_level > 2) {
12427    {
12428#line 1367
12429    __cil_tmp9 = & info->device_name;
12430#line 1367
12431    __cil_tmp10 = (char *)__cil_tmp9;
12432#line 1367
12433    printk("%s chars_in_buffer()=%d\n", __cil_tmp10, count);
12434    }
12435  } else {
12436
12437  }
12438#line 1368
12439  return (count);
12440}
12441}
12442#line 1374 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
12443static void throttle(struct tty_struct *tty ) 
12444{ struct slgt_info *info ;
12445  unsigned long flags ;
12446  int tmp ;
12447  raw_spinlock_t *tmp___0 ;
12448  void *__cil_tmp6 ;
12449  char (*__cil_tmp7)[64U] ;
12450  char *__cil_tmp8 ;
12451  char (*__cil_tmp9)[25U] ;
12452  char *__cil_tmp10 ;
12453  struct ktermios *__cil_tmp11 ;
12454  tcflag_t __cil_tmp12 ;
12455  unsigned int __cil_tmp13 ;
12456  struct ktermios *__cil_tmp14 ;
12457  cc_t __cil_tmp15 ;
12458  char __cil_tmp16 ;
12459  int __cil_tmp17 ;
12460  char __cil_tmp18 ;
12461  struct ktermios *__cil_tmp19 ;
12462  tcflag_t __cil_tmp20 ;
12463  int __cil_tmp21 ;
12464  spinlock_t *__cil_tmp22 ;
12465  unsigned char __cil_tmp23 ;
12466  unsigned int __cil_tmp24 ;
12467  unsigned int __cil_tmp25 ;
12468  spinlock_t *__cil_tmp26 ;
12469
12470  {
12471  {
12472#line 1376
12473  __cil_tmp6 = tty->driver_data;
12474#line 1376
12475  info = (struct slgt_info *)__cil_tmp6;
12476#line 1379
12477  __cil_tmp7 = & tty->name;
12478#line 1379
12479  __cil_tmp8 = (char *)__cil_tmp7;
12480#line 1379
12481  tmp = sanity_check(info, __cil_tmp8, "throttle");
12482  }
12483#line 1379
12484  if (tmp != 0) {
12485#line 1380
12486    return;
12487  } else {
12488
12489  }
12490#line 1381
12491  if (debug_level > 2) {
12492    {
12493#line 1381
12494    __cil_tmp9 = & info->device_name;
12495#line 1381
12496    __cil_tmp10 = (char *)__cil_tmp9;
12497#line 1381
12498    printk("%s throttle\n", __cil_tmp10);
12499    }
12500  } else {
12501
12502  }
12503  {
12504#line 1382
12505  __cil_tmp11 = tty->termios;
12506#line 1382
12507  __cil_tmp12 = __cil_tmp11->c_iflag;
12508#line 1382
12509  __cil_tmp13 = __cil_tmp12 & 4096U;
12510#line 1382
12511  if (__cil_tmp13 != 0U) {
12512    {
12513#line 1383
12514    __cil_tmp14 = tty->termios;
12515#line 1383
12516    __cil_tmp15 = __cil_tmp14->c_cc[9];
12517#line 1383
12518    __cil_tmp16 = (char )__cil_tmp15;
12519#line 1383
12520    __cil_tmp17 = (int )__cil_tmp16;
12521#line 1383
12522    __cil_tmp18 = (char )__cil_tmp17;
12523#line 1383
12524    send_xchar(tty, __cil_tmp18);
12525    }
12526  } else {
12527
12528  }
12529  }
12530  {
12531#line 1384
12532  __cil_tmp19 = tty->termios;
12533#line 1384
12534  __cil_tmp20 = __cil_tmp19->c_cflag;
12535#line 1384
12536  __cil_tmp21 = (int )__cil_tmp20;
12537#line 1384
12538  if (__cil_tmp21 < 0) {
12539    {
12540#line 1385
12541    __cil_tmp22 = & info->lock;
12542#line 1385
12543    tmp___0 = spinlock_check(__cil_tmp22);
12544#line 1385
12545    flags = _raw_spin_lock_irqsave(tmp___0);
12546#line 1386
12547    __cil_tmp23 = info->signals;
12548#line 1386
12549    __cil_tmp24 = (unsigned int )__cil_tmp23;
12550#line 1386
12551    __cil_tmp25 = __cil_tmp24 & 223U;
12552#line 1386
12553    info->signals = (unsigned char )__cil_tmp25;
12554#line 1387
12555    set_signals(info);
12556#line 1388
12557    __cil_tmp26 = & info->lock;
12558#line 1388
12559    spin_unlock_irqrestore(__cil_tmp26, flags);
12560    }
12561  } else {
12562
12563  }
12564  }
12565#line 1390
12566  return;
12567}
12568}
12569#line 1395 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
12570static void unthrottle(struct tty_struct *tty ) 
12571{ struct slgt_info *info ;
12572  unsigned long flags ;
12573  int tmp ;
12574  raw_spinlock_t *tmp___0 ;
12575  void *__cil_tmp6 ;
12576  char (*__cil_tmp7)[64U] ;
12577  char *__cil_tmp8 ;
12578  char (*__cil_tmp9)[25U] ;
12579  char *__cil_tmp10 ;
12580  struct ktermios *__cil_tmp11 ;
12581  tcflag_t __cil_tmp12 ;
12582  unsigned int __cil_tmp13 ;
12583  int __cil_tmp14 ;
12584  struct ktermios *__cil_tmp15 ;
12585  cc_t __cil_tmp16 ;
12586  char __cil_tmp17 ;
12587  int __cil_tmp18 ;
12588  char __cil_tmp19 ;
12589  struct ktermios *__cil_tmp20 ;
12590  tcflag_t __cil_tmp21 ;
12591  int __cil_tmp22 ;
12592  spinlock_t *__cil_tmp23 ;
12593  unsigned char __cil_tmp24 ;
12594  unsigned int __cil_tmp25 ;
12595  unsigned int __cil_tmp26 ;
12596  spinlock_t *__cil_tmp27 ;
12597
12598  {
12599  {
12600#line 1397
12601  __cil_tmp6 = tty->driver_data;
12602#line 1397
12603  info = (struct slgt_info *)__cil_tmp6;
12604#line 1400
12605  __cil_tmp7 = & tty->name;
12606#line 1400
12607  __cil_tmp8 = (char *)__cil_tmp7;
12608#line 1400
12609  tmp = sanity_check(info, __cil_tmp8, "unthrottle");
12610  }
12611#line 1400
12612  if (tmp != 0) {
12613#line 1401
12614    return;
12615  } else {
12616
12617  }
12618#line 1402
12619  if (debug_level > 2) {
12620    {
12621#line 1402
12622    __cil_tmp9 = & info->device_name;
12623#line 1402
12624    __cil_tmp10 = (char *)__cil_tmp9;
12625#line 1402
12626    printk("%s unthrottle\n", __cil_tmp10);
12627    }
12628  } else {
12629
12630  }
12631  {
12632#line 1403
12633  __cil_tmp11 = tty->termios;
12634#line 1403
12635  __cil_tmp12 = __cil_tmp11->c_iflag;
12636#line 1403
12637  __cil_tmp13 = __cil_tmp12 & 4096U;
12638#line 1403
12639  if (__cil_tmp13 != 0U) {
12640    {
12641#line 1404
12642    __cil_tmp14 = info->x_char;
12643#line 1404
12644    if (__cil_tmp14 != 0) {
12645#line 1405
12646      info->x_char = 0;
12647    } else {
12648      {
12649#line 1407
12650      __cil_tmp15 = tty->termios;
12651#line 1407
12652      __cil_tmp16 = __cil_tmp15->c_cc[8];
12653#line 1407
12654      __cil_tmp17 = (char )__cil_tmp16;
12655#line 1407
12656      __cil_tmp18 = (int )__cil_tmp17;
12657#line 1407
12658      __cil_tmp19 = (char )__cil_tmp18;
12659#line 1407
12660      send_xchar(tty, __cil_tmp19);
12661      }
12662    }
12663    }
12664  } else {
12665
12666  }
12667  }
12668  {
12669#line 1409
12670  __cil_tmp20 = tty->termios;
12671#line 1409
12672  __cil_tmp21 = __cil_tmp20->c_cflag;
12673#line 1409
12674  __cil_tmp22 = (int )__cil_tmp21;
12675#line 1409
12676  if (__cil_tmp22 < 0) {
12677    {
12678#line 1410
12679    __cil_tmp23 = & info->lock;
12680#line 1410
12681    tmp___0 = spinlock_check(__cil_tmp23);
12682#line 1410
12683    flags = _raw_spin_lock_irqsave(tmp___0);
12684#line 1411
12685    __cil_tmp24 = info->signals;
12686#line 1411
12687    __cil_tmp25 = (unsigned int )__cil_tmp24;
12688#line 1411
12689    __cil_tmp26 = __cil_tmp25 | 32U;
12690#line 1411
12691    info->signals = (unsigned char )__cil_tmp26;
12692#line 1412
12693    set_signals(info);
12694#line 1413
12695    __cil_tmp27 = & info->lock;
12696#line 1413
12697    spin_unlock_irqrestore(__cil_tmp27, flags);
12698    }
12699  } else {
12700
12701  }
12702  }
12703#line 1415
12704  return;
12705}
12706}
12707#line 1421 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
12708static int set_break(struct tty_struct *tty , int break_state ) 
12709{ struct slgt_info *info ;
12710  unsigned short value ;
12711  unsigned long flags ;
12712  int tmp ;
12713  raw_spinlock_t *tmp___0 ;
12714  void *__cil_tmp8 ;
12715  char (*__cil_tmp9)[64U] ;
12716  char *__cil_tmp10 ;
12717  char (*__cil_tmp11)[25U] ;
12718  char *__cil_tmp12 ;
12719  spinlock_t *__cil_tmp13 ;
12720  unsigned int __cil_tmp14 ;
12721  unsigned int __cil_tmp15 ;
12722  unsigned int __cil_tmp16 ;
12723  unsigned int __cil_tmp17 ;
12724  int __cil_tmp18 ;
12725  __u16 __cil_tmp19 ;
12726  spinlock_t *__cil_tmp20 ;
12727
12728  {
12729  {
12730#line 1423
12731  __cil_tmp8 = tty->driver_data;
12732#line 1423
12733  info = (struct slgt_info *)__cil_tmp8;
12734#line 1427
12735  __cil_tmp9 = & tty->name;
12736#line 1427
12737  __cil_tmp10 = (char *)__cil_tmp9;
12738#line 1427
12739  tmp = sanity_check(info, __cil_tmp10, "set_break");
12740  }
12741#line 1427
12742  if (tmp != 0) {
12743#line 1428
12744    return (-22);
12745  } else {
12746
12747  }
12748#line 1429
12749  if (debug_level > 2) {
12750    {
12751#line 1429
12752    __cil_tmp11 = & info->device_name;
12753#line 1429
12754    __cil_tmp12 = (char *)__cil_tmp11;
12755#line 1429
12756    printk("%s set_break(%d)\n", __cil_tmp12, break_state);
12757    }
12758  } else {
12759
12760  }
12761  {
12762#line 1431
12763  __cil_tmp13 = & info->lock;
12764#line 1431
12765  tmp___0 = spinlock_check(__cil_tmp13);
12766#line 1431
12767  flags = _raw_spin_lock_irqsave(tmp___0);
12768#line 1432
12769  value = rd_reg16(info, 130U);
12770  }
12771#line 1433
12772  if (break_state == -1) {
12773#line 1434
12774    __cil_tmp14 = (unsigned int )value;
12775#line 1434
12776    __cil_tmp15 = __cil_tmp14 | 64U;
12777#line 1434
12778    value = (unsigned short )__cil_tmp15;
12779  } else {
12780#line 1436
12781    __cil_tmp16 = (unsigned int )value;
12782#line 1436
12783    __cil_tmp17 = __cil_tmp16 & 65471U;
12784#line 1436
12785    value = (unsigned short )__cil_tmp17;
12786  }
12787  {
12788#line 1437
12789  __cil_tmp18 = (int )value;
12790#line 1437
12791  __cil_tmp19 = (__u16 )__cil_tmp18;
12792#line 1437
12793  wr_reg16(info, 130U, __cil_tmp19);
12794#line 1438
12795  __cil_tmp20 = & info->lock;
12796#line 1438
12797  spin_unlock_irqrestore(__cil_tmp20, flags);
12798  }
12799#line 1439
12800  return (0);
12801}
12802}
12803#line 1454 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
12804static int hdlcdev_attach(struct net_device *dev , unsigned short encoding , unsigned short parity ) 
12805{ struct slgt_info *info ;
12806  struct hdlc_device *tmp ;
12807  unsigned char new_encoding ;
12808  unsigned short new_crctype ;
12809  void *__cil_tmp8 ;
12810  int __cil_tmp9 ;
12811  char (*__cil_tmp10)[25U] ;
12812  char *__cil_tmp11 ;
12813  int __cil_tmp12 ;
12814  int __cil_tmp13 ;
12815  int __cil_tmp14 ;
12816  int __cil_tmp15 ;
12817  int __cil_tmp16 ;
12818  int __cil_tmp17 ;
12819  int __cil_tmp18 ;
12820  int __cil_tmp19 ;
12821  int __cil_tmp20 ;
12822
12823  {
12824  {
12825#line 1457
12826  tmp = dev_to_hdlc(dev);
12827#line 1457
12828  __cil_tmp8 = tmp->priv;
12829#line 1457
12830  info = (struct slgt_info *)__cil_tmp8;
12831  }
12832  {
12833#line 1462
12834  __cil_tmp9 = info->port.count;
12835#line 1462
12836  if (__cil_tmp9 != 0) {
12837#line 1463
12838    return (-16);
12839  } else {
12840
12841  }
12842  }
12843#line 1465
12844  if (debug_level > 2) {
12845    {
12846#line 1465
12847    __cil_tmp10 = & info->device_name;
12848#line 1465
12849    __cil_tmp11 = (char *)__cil_tmp10;
12850#line 1465
12851    printk("%s hdlcdev_attach\n", __cil_tmp11);
12852    }
12853  } else {
12854
12855  }
12856  {
12857#line 1469
12858  __cil_tmp12 = (int )encoding;
12859#line 1469
12860  if (__cil_tmp12 == 1) {
12861#line 1469
12862    goto case_1;
12863  } else {
12864    {
12865#line 1470
12866    __cil_tmp13 = (int )encoding;
12867#line 1470
12868    if (__cil_tmp13 == 2) {
12869#line 1470
12870      goto case_2;
12871    } else {
12872      {
12873#line 1471
12874      __cil_tmp14 = (int )encoding;
12875#line 1471
12876      if (__cil_tmp14 == 3) {
12877#line 1471
12878        goto case_3;
12879      } else {
12880        {
12881#line 1472
12882        __cil_tmp15 = (int )encoding;
12883#line 1472
12884        if (__cil_tmp15 == 4) {
12885#line 1472
12886          goto case_4;
12887        } else {
12888          {
12889#line 1473
12890          __cil_tmp16 = (int )encoding;
12891#line 1473
12892          if (__cil_tmp16 == 5) {
12893#line 1473
12894            goto case_5;
12895          } else {
12896#line 1474
12897            goto switch_default;
12898#line 1467
12899            if (0) {
12900              case_1: 
12901#line 1469
12902              new_encoding = (unsigned char)0;
12903#line 1469
12904              goto ldv_36723;
12905              case_2: 
12906#line 1470
12907              new_encoding = (unsigned char)3;
12908#line 1470
12909              goto ldv_36723;
12910              case_3: 
12911#line 1471
12912              new_encoding = (unsigned char)4;
12913#line 1471
12914              goto ldv_36723;
12915              case_4: 
12916#line 1472
12917              new_encoding = (unsigned char)5;
12918#line 1472
12919              goto ldv_36723;
12920              case_5: 
12921#line 1473
12922              new_encoding = (unsigned char)6;
12923#line 1473
12924              goto ldv_36723;
12925              switch_default: ;
12926#line 1474
12927              return (-22);
12928            } else {
12929
12930            }
12931          }
12932          }
12933        }
12934        }
12935      }
12936      }
12937    }
12938    }
12939  }
12940  }
12941  ldv_36723: ;
12942  {
12943#line 1479
12944  __cil_tmp17 = (int )parity;
12945#line 1479
12946  if (__cil_tmp17 == 1) {
12947#line 1479
12948    goto case_1___0;
12949  } else {
12950    {
12951#line 1480
12952    __cil_tmp18 = (int )parity;
12953#line 1480
12954    if (__cil_tmp18 == 5) {
12955#line 1480
12956      goto case_5___0;
12957    } else {
12958      {
12959#line 1481
12960      __cil_tmp19 = (int )parity;
12961#line 1481
12962      if (__cil_tmp19 == 7) {
12963#line 1481
12964        goto case_7;
12965      } else {
12966#line 1482
12967        goto switch_default___0;
12968#line 1477
12969        if (0) {
12970          case_1___0: 
12971#line 1479
12972          new_crctype = (unsigned short)0;
12973#line 1479
12974          goto ldv_36730;
12975          case_5___0: 
12976#line 1480
12977          new_crctype = (unsigned short)1;
12978#line 1480
12979          goto ldv_36730;
12980          case_7: 
12981#line 1481
12982          new_crctype = (unsigned short)2;
12983#line 1481
12984          goto ldv_36730;
12985          switch_default___0: ;
12986#line 1482
12987          return (-22);
12988        } else {
12989
12990        }
12991      }
12992      }
12993    }
12994    }
12995  }
12996  }
12997  ldv_36730: 
12998#line 1485
12999  info->params.encoding = new_encoding;
13000#line 1486
13001  info->params.crc_type = new_crctype;
13002  {
13003#line 1489
13004  __cil_tmp20 = info->netcount;
13005#line 1489
13006  if (__cil_tmp20 != 0) {
13007    {
13008#line 1490
13009    program_hw(info);
13010    }
13011  } else {
13012
13013  }
13014  }
13015#line 1492
13016  return (0);
13017}
13018}
13019#line 1501 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
13020static netdev_tx_t hdlcdev_xmit(struct sk_buff *skb , struct net_device *dev ) 
13021{ struct slgt_info *info ;
13022  struct hdlc_device *tmp ;
13023  unsigned long flags ;
13024  raw_spinlock_t *tmp___0 ;
13025  void *__cil_tmp7 ;
13026  char (*__cil_tmp8)[16U] ;
13027  char *__cil_tmp9 ;
13028  unsigned int __cil_tmp10 ;
13029  unsigned long __cil_tmp11 ;
13030  unsigned int __cil_tmp12 ;
13031  unsigned long __cil_tmp13 ;
13032  unsigned long __cil_tmp14 ;
13033  spinlock_t *__cil_tmp15 ;
13034  unsigned char *__cil_tmp16 ;
13035  char const   *__cil_tmp17 ;
13036  unsigned int __cil_tmp18 ;
13037  spinlock_t *__cil_tmp19 ;
13038
13039  {
13040  {
13041#line 1504
13042  tmp = dev_to_hdlc(dev);
13043#line 1504
13044  __cil_tmp7 = tmp->priv;
13045#line 1504
13046  info = (struct slgt_info *)__cil_tmp7;
13047  }
13048#line 1507
13049  if (debug_level > 2) {
13050    {
13051#line 1507
13052    __cil_tmp8 = & dev->name;
13053#line 1507
13054    __cil_tmp9 = (char *)__cil_tmp8;
13055#line 1507
13056    printk("%s hdlc_xmit\n", __cil_tmp9);
13057    }
13058  } else {
13059
13060  }
13061  {
13062#line 1509
13063  __cil_tmp10 = skb->len;
13064#line 1509
13065  if (__cil_tmp10 == 0U) {
13066#line 1510
13067    return ((netdev_tx_t )0);
13068  } else {
13069
13070  }
13071  }
13072  {
13073#line 1513
13074  netif_stop_queue(dev);
13075#line 1516
13076  __cil_tmp11 = dev->stats.tx_packets;
13077#line 1516
13078  dev->stats.tx_packets = __cil_tmp11 + 1UL;
13079#line 1517
13080  __cil_tmp12 = skb->len;
13081#line 1517
13082  __cil_tmp13 = (unsigned long )__cil_tmp12;
13083#line 1517
13084  __cil_tmp14 = dev->stats.tx_bytes;
13085#line 1517
13086  dev->stats.tx_bytes = __cil_tmp14 + __cil_tmp13;
13087#line 1520
13088  dev->trans_start = (unsigned long )jiffies;
13089#line 1522
13090  __cil_tmp15 = & info->lock;
13091#line 1522
13092  tmp___0 = spinlock_check(__cil_tmp15);
13093#line 1522
13094  flags = _raw_spin_lock_irqsave(tmp___0);
13095#line 1523
13096  __cil_tmp16 = skb->data;
13097#line 1523
13098  __cil_tmp17 = (char const   *)__cil_tmp16;
13099#line 1523
13100  __cil_tmp18 = skb->len;
13101#line 1523
13102  tx_load(info, __cil_tmp17, __cil_tmp18);
13103#line 1524
13104  __cil_tmp19 = & info->lock;
13105#line 1524
13106  spin_unlock_irqrestore(__cil_tmp19, flags);
13107#line 1527
13108  consume_skb(skb);
13109  }
13110#line 1529
13111  return ((netdev_tx_t )0);
13112}
13113}
13114#line 1540 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
13115static int hdlcdev_open(struct net_device *dev ) 
13116{ struct slgt_info *info ;
13117  struct hdlc_device *tmp ;
13118  int rc ;
13119  unsigned long flags ;
13120  int tmp___0 ;
13121  raw_spinlock_t *tmp___1 ;
13122  raw_spinlock_t *tmp___2 ;
13123  raw_spinlock_t *tmp___3 ;
13124  void *__cil_tmp10 ;
13125  char (*__cil_tmp11)[16U] ;
13126  char *__cil_tmp12 ;
13127  spinlock_t *__cil_tmp13 ;
13128  int __cil_tmp14 ;
13129  int __cil_tmp15 ;
13130  char (*__cil_tmp16)[16U] ;
13131  char *__cil_tmp17 ;
13132  spinlock_t *__cil_tmp18 ;
13133  spinlock_t *__cil_tmp19 ;
13134  spinlock_t *__cil_tmp20 ;
13135  spinlock_t *__cil_tmp21 ;
13136  unsigned char __cil_tmp22 ;
13137  unsigned int __cil_tmp23 ;
13138  unsigned int __cil_tmp24 ;
13139  spinlock_t *__cil_tmp25 ;
13140  spinlock_t *__cil_tmp26 ;
13141  unsigned char __cil_tmp27 ;
13142  int __cil_tmp28 ;
13143
13144  {
13145  {
13146#line 1542
13147  tmp = dev_to_hdlc(dev);
13148#line 1542
13149  __cil_tmp10 = tmp->priv;
13150#line 1542
13151  info = (struct slgt_info *)__cil_tmp10;
13152#line 1546
13153  tmp___0 = ldv_try_module_get_1(& __this_module);
13154  }
13155#line 1546
13156  if (tmp___0 == 0) {
13157#line 1547
13158    return (-16);
13159  } else {
13160
13161  }
13162#line 1549
13163  if (debug_level > 2) {
13164    {
13165#line 1549
13166    __cil_tmp11 = & dev->name;
13167#line 1549
13168    __cil_tmp12 = (char *)__cil_tmp11;
13169#line 1549
13170    printk("%s hdlcdev_open\n", __cil_tmp12);
13171    }
13172  } else {
13173
13174  }
13175  {
13176#line 1552
13177  rc = hdlc_open(dev);
13178  }
13179#line 1552
13180  if (rc != 0) {
13181#line 1553
13182    return (rc);
13183  } else {
13184
13185  }
13186  {
13187#line 1556
13188  __cil_tmp13 = & info->netlock;
13189#line 1556
13190  tmp___1 = spinlock_check(__cil_tmp13);
13191#line 1556
13192  flags = _raw_spin_lock_irqsave(tmp___1);
13193  }
13194  {
13195#line 1557
13196  __cil_tmp14 = info->port.count;
13197#line 1557
13198  if (__cil_tmp14 != 0) {
13199#line 1557
13200    goto _L;
13201  } else {
13202    {
13203#line 1557
13204    __cil_tmp15 = info->netcount;
13205#line 1557
13206    if (__cil_tmp15 != 0) {
13207      _L: 
13208#line 1558
13209      if (debug_level > 2) {
13210        {
13211#line 1558
13212        __cil_tmp16 = & dev->name;
13213#line 1558
13214        __cil_tmp17 = (char *)__cil_tmp16;
13215#line 1558
13216        printk("%s hdlc_open busy\n", __cil_tmp17);
13217        }
13218      } else {
13219
13220      }
13221      {
13222#line 1559
13223      __cil_tmp18 = & info->netlock;
13224#line 1559
13225      spin_unlock_irqrestore(__cil_tmp18, flags);
13226      }
13227#line 1560
13228      return (-16);
13229    } else {
13230
13231    }
13232    }
13233  }
13234  }
13235  {
13236#line 1562
13237  info->netcount = 1;
13238#line 1563
13239  __cil_tmp19 = & info->netlock;
13240#line 1563
13241  spin_unlock_irqrestore(__cil_tmp19, flags);
13242#line 1566
13243  rc = startup(info);
13244  }
13245#line 1566
13246  if (rc != 0) {
13247    {
13248#line 1567
13249    __cil_tmp20 = & info->netlock;
13250#line 1567
13251    tmp___2 = spinlock_check(__cil_tmp20);
13252#line 1567
13253    flags = _raw_spin_lock_irqsave(tmp___2);
13254#line 1568
13255    info->netcount = 0;
13256#line 1569
13257    __cil_tmp21 = & info->netlock;
13258#line 1569
13259    spin_unlock_irqrestore(__cil_tmp21, flags);
13260    }
13261#line 1570
13262    return (rc);
13263  } else {
13264
13265  }
13266  {
13267#line 1574
13268  __cil_tmp22 = info->signals;
13269#line 1574
13270  __cil_tmp23 = (unsigned int )__cil_tmp22;
13271#line 1574
13272  __cil_tmp24 = __cil_tmp23 | 160U;
13273#line 1574
13274  info->signals = (unsigned char )__cil_tmp24;
13275#line 1575
13276  program_hw(info);
13277#line 1578
13278  dev->trans_start = (unsigned long )jiffies;
13279#line 1579
13280  netif_start_queue(dev);
13281#line 1582
13282  __cil_tmp25 = & info->lock;
13283#line 1582
13284  tmp___3 = spinlock_check(__cil_tmp25);
13285#line 1582
13286  flags = _raw_spin_lock_irqsave(tmp___3);
13287#line 1583
13288  get_signals(info);
13289#line 1584
13290  __cil_tmp26 = & info->lock;
13291#line 1584
13292  spin_unlock_irqrestore(__cil_tmp26, flags);
13293  }
13294  {
13295#line 1585
13296  __cil_tmp27 = info->signals;
13297#line 1585
13298  __cil_tmp28 = (int )__cil_tmp27;
13299#line 1585
13300  if (__cil_tmp28 & 1) {
13301    {
13302#line 1586
13303    netif_carrier_on(dev);
13304    }
13305  } else {
13306    {
13307#line 1588
13308    netif_carrier_off(dev);
13309    }
13310  }
13311  }
13312#line 1589
13313  return (0);
13314}
13315}
13316#line 1600 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
13317static int hdlcdev_close(struct net_device *dev ) 
13318{ struct slgt_info *info ;
13319  struct hdlc_device *tmp ;
13320  unsigned long flags ;
13321  raw_spinlock_t *tmp___0 ;
13322  void *__cil_tmp6 ;
13323  char (*__cil_tmp7)[16U] ;
13324  char *__cil_tmp8 ;
13325  spinlock_t *__cil_tmp9 ;
13326  spinlock_t *__cil_tmp10 ;
13327
13328  {
13329  {
13330#line 1602
13331  tmp = dev_to_hdlc(dev);
13332#line 1602
13333  __cil_tmp6 = tmp->priv;
13334#line 1602
13335  info = (struct slgt_info *)__cil_tmp6;
13336  }
13337#line 1605
13338  if (debug_level > 2) {
13339    {
13340#line 1605
13341    __cil_tmp7 = & dev->name;
13342#line 1605
13343    __cil_tmp8 = (char *)__cil_tmp7;
13344#line 1605
13345    printk("%s hdlcdev_close\n", __cil_tmp8);
13346    }
13347  } else {
13348
13349  }
13350  {
13351#line 1607
13352  netif_stop_queue(dev);
13353#line 1610
13354  shutdown(info);
13355#line 1612
13356  hdlc_close(dev);
13357#line 1614
13358  __cil_tmp9 = & info->netlock;
13359#line 1614
13360  tmp___0 = spinlock_check(__cil_tmp9);
13361#line 1614
13362  flags = _raw_spin_lock_irqsave(tmp___0);
13363#line 1615
13364  info->netcount = 0;
13365#line 1616
13366  __cil_tmp10 = & info->netlock;
13367#line 1616
13368  spin_unlock_irqrestore(__cil_tmp10, flags);
13369#line 1618
13370  ldv_module_put_2(& __this_module);
13371  }
13372#line 1619
13373  return (0);
13374}
13375}
13376#line 1631 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
13377static int hdlcdev_ioctl(struct net_device *dev , struct ifreq *ifr , int cmd ) 
13378{ size_t size ;
13379  sync_serial_settings new_line ;
13380  sync_serial_settings *line ;
13381  struct slgt_info *info ;
13382  struct hdlc_device *tmp ;
13383  unsigned int flags ;
13384  int tmp___0 ;
13385  int tmp___1 ;
13386  bool tmp___2 ;
13387  int tmp___3 ;
13388  unsigned long tmp___4 ;
13389  int tmp___5 ;
13390  void *__cil_tmp16 ;
13391  char (*__cil_tmp17)[16U] ;
13392  char *__cil_tmp18 ;
13393  int __cil_tmp19 ;
13394  void *__cil_tmp20 ;
13395  unsigned int __cil_tmp21 ;
13396  int __cil_tmp22 ;
13397  unsigned int __cil_tmp23 ;
13398  int __cil_tmp24 ;
13399  unsigned int __cil_tmp25 ;
13400  unsigned long __cil_tmp26 ;
13401  unsigned short __cil_tmp27 ;
13402  unsigned int __cil_tmp28 ;
13403  int __cil_tmp29 ;
13404  int __cil_tmp30 ;
13405  int __cil_tmp31 ;
13406  int __cil_tmp32 ;
13407  unsigned long __cil_tmp33 ;
13408  unsigned char __cil_tmp34 ;
13409  unsigned int __cil_tmp35 ;
13410  int __cil_tmp36 ;
13411  void *__cil_tmp37 ;
13412  void const   *__cil_tmp38 ;
13413  unsigned int __cil_tmp39 ;
13414  void *__cil_tmp40 ;
13415  void const   *__cil_tmp41 ;
13416  int __cil_tmp42 ;
13417  int __cil_tmp43 ;
13418  int __cil_tmp44 ;
13419  int __cil_tmp45 ;
13420  int __cil_tmp46 ;
13421  unsigned short __cil_tmp47 ;
13422  unsigned int __cil_tmp48 ;
13423  unsigned int __cil_tmp49 ;
13424  unsigned int __cil_tmp50 ;
13425  unsigned short __cil_tmp51 ;
13426  unsigned int __cil_tmp52 ;
13427  unsigned int __cil_tmp53 ;
13428  unsigned short __cil_tmp54 ;
13429  int __cil_tmp55 ;
13430  unsigned short __cil_tmp56 ;
13431  int __cil_tmp57 ;
13432  int __cil_tmp58 ;
13433  unsigned int __cil_tmp59 ;
13434  int __cil_tmp60 ;
13435
13436  {
13437  {
13438#line 1633
13439  size = 12UL;
13440#line 1635
13441  line = ifr->ifr_ifru.ifru_settings.ifs_ifsu.sync;
13442#line 1636
13443  tmp = dev_to_hdlc(dev);
13444#line 1636
13445  __cil_tmp16 = tmp->priv;
13446#line 1636
13447  info = (struct slgt_info *)__cil_tmp16;
13448  }
13449#line 1639
13450  if (debug_level > 2) {
13451    {
13452#line 1639
13453    __cil_tmp17 = & dev->name;
13454#line 1639
13455    __cil_tmp18 = (char *)__cil_tmp17;
13456#line 1639
13457    printk("%s hdlcdev_ioctl\n", __cil_tmp18);
13458    }
13459  } else {
13460
13461  }
13462  {
13463#line 1642
13464  __cil_tmp19 = info->port.count;
13465#line 1642
13466  if (__cil_tmp19 != 0) {
13467#line 1643
13468    return (-16);
13469  } else {
13470
13471  }
13472  }
13473#line 1645
13474  if (cmd != 35146) {
13475    {
13476#line 1646
13477    tmp___0 = hdlc_ioctl(dev, ifr, cmd);
13478    }
13479#line 1646
13480    return (tmp___0);
13481  } else {
13482
13483  }
13484  {
13485#line 1648
13486  __cil_tmp20 = (void *)(& new_line);
13487#line 1648
13488  memset(__cil_tmp20, 0, 12UL);
13489  }
13490  {
13491#line 1651
13492  __cil_tmp21 = ifr->ifr_ifru.ifru_settings.type;
13493#line 1651
13494  __cil_tmp22 = (int )__cil_tmp21;
13495#line 1651
13496  if (__cil_tmp22 == 1) {
13497#line 1651
13498    goto case_1;
13499  } else {
13500    {
13501#line 1679
13502    __cil_tmp23 = ifr->ifr_ifru.ifru_settings.type;
13503#line 1679
13504    __cil_tmp24 = (int )__cil_tmp23;
13505#line 1679
13506    if (__cil_tmp24 == 4101) {
13507#line 1679
13508      goto case_4101;
13509    } else {
13510#line 1721
13511      goto switch_default___1;
13512#line 1650
13513      if (0) {
13514        case_1: 
13515#line 1653
13516        ifr->ifr_ifru.ifru_settings.type = 4101U;
13517        {
13518#line 1654
13519        __cil_tmp25 = ifr->ifr_ifru.ifru_settings.size;
13520#line 1654
13521        __cil_tmp26 = (unsigned long )__cil_tmp25;
13522#line 1654
13523        if (__cil_tmp26 < size) {
13524#line 1655
13525          ifr->ifr_ifru.ifru_settings.size = (unsigned int )size;
13526#line 1656
13527          return (-105);
13528        } else {
13529
13530        }
13531        }
13532#line 1659
13533        __cil_tmp27 = info->params.flags;
13534#line 1659
13535        __cil_tmp28 = (unsigned int )__cil_tmp27;
13536#line 1659
13537        flags = __cil_tmp28 & 36616U;
13538        {
13539#line 1665
13540        __cil_tmp29 = (int )flags;
13541#line 1665
13542        if (__cil_tmp29 == 0) {
13543#line 1665
13544          goto case_0;
13545        } else {
13546          {
13547#line 1666
13548          __cil_tmp30 = (int )flags;
13549#line 1666
13550          if (__cil_tmp30 == 2560) {
13551#line 1666
13552            goto case_2560;
13553          } else {
13554            {
13555#line 1667
13556            __cil_tmp31 = (int )flags;
13557#line 1667
13558            if (__cil_tmp31 == 2048) {
13559#line 1667
13560              goto case_2048;
13561            } else {
13562              {
13563#line 1668
13564              __cil_tmp32 = (int )flags;
13565#line 1668
13566              if (__cil_tmp32 == 8) {
13567#line 1668
13568                goto case_8;
13569              } else {
13570#line 1669
13571                goto switch_default;
13572#line 1664
13573                if (0) {
13574                  case_0: 
13575#line 1665
13576                  new_line.clock_type = 1U;
13577#line 1665
13578                  goto ldv_36778;
13579                  case_2560: 
13580#line 1666
13581                  new_line.clock_type = 2U;
13582#line 1666
13583                  goto ldv_36778;
13584                  case_2048: 
13585#line 1667
13586                  new_line.clock_type = 3U;
13587#line 1667
13588                  goto ldv_36778;
13589                  case_8: 
13590#line 1668
13591                  new_line.clock_type = 4U;
13592#line 1668
13593                  goto ldv_36778;
13594                  switch_default: 
13595#line 1669
13596                  new_line.clock_type = 0U;
13597                } else {
13598
13599                }
13600              }
13601              }
13602            }
13603            }
13604          }
13605          }
13606        }
13607        }
13608        ldv_36778: 
13609        {
13610#line 1672
13611        __cil_tmp33 = info->params.clock_speed;
13612#line 1672
13613        new_line.clock_rate = (unsigned int )__cil_tmp33;
13614#line 1673
13615        __cil_tmp34 = info->params.loopback;
13616#line 1673
13617        __cil_tmp35 = (unsigned int )__cil_tmp34;
13618#line 1673
13619        __cil_tmp36 = __cil_tmp35 != 0U;
13620#line 1673
13621        new_line.loopback = (unsigned short )__cil_tmp36;
13622#line 1675
13623        __cil_tmp37 = (void *)line;
13624#line 1675
13625        __cil_tmp38 = (void const   *)(& new_line);
13626#line 1675
13627        __cil_tmp39 = (unsigned int )size;
13628#line 1675
13629        tmp___1 = copy_to_user(__cil_tmp37, __cil_tmp38, __cil_tmp39);
13630        }
13631#line 1675
13632        if (tmp___1 != 0) {
13633#line 1676
13634          return (-14);
13635        } else {
13636
13637        }
13638#line 1677
13639        return (0);
13640        case_4101: 
13641        {
13642#line 1681
13643        tmp___2 = capable(12);
13644        }
13645#line 1681
13646        if (tmp___2) {
13647#line 1681
13648          tmp___3 = 0;
13649        } else {
13650#line 1681
13651          tmp___3 = 1;
13652        }
13653#line 1681
13654        if (tmp___3) {
13655#line 1682
13656          return (-1);
13657        } else {
13658
13659        }
13660        {
13661#line 1683
13662        __cil_tmp40 = (void *)(& new_line);
13663#line 1683
13664        __cil_tmp41 = (void const   *)line;
13665#line 1683
13666        tmp___4 = copy_from_user(__cil_tmp40, __cil_tmp41, size);
13667        }
13668#line 1683
13669        if (tmp___4 != 0UL) {
13670#line 1684
13671          return (-14);
13672        } else {
13673
13674        }
13675        {
13676#line 1688
13677        __cil_tmp42 = (int )new_line.clock_type;
13678#line 1688
13679        if (__cil_tmp42 == 1) {
13680#line 1688
13681          goto case_1___0;
13682        } else {
13683          {
13684#line 1689
13685          __cil_tmp43 = (int )new_line.clock_type;
13686#line 1689
13687          if (__cil_tmp43 == 4) {
13688#line 1689
13689            goto case_4;
13690          } else {
13691            {
13692#line 1690
13693            __cil_tmp44 = (int )new_line.clock_type;
13694#line 1690
13695            if (__cil_tmp44 == 2) {
13696#line 1690
13697              goto case_2;
13698            } else {
13699              {
13700#line 1691
13701              __cil_tmp45 = (int )new_line.clock_type;
13702#line 1691
13703              if (__cil_tmp45 == 3) {
13704#line 1691
13705                goto case_3;
13706              } else {
13707                {
13708#line 1692
13709                __cil_tmp46 = (int )new_line.clock_type;
13710#line 1692
13711                if (__cil_tmp46 == 0) {
13712#line 1692
13713                  goto case_0___0;
13714                } else {
13715#line 1697
13716                  goto switch_default___0;
13717#line 1686
13718                  if (0) {
13719                    case_1___0: 
13720#line 1688
13721                    flags = 0U;
13722#line 1688
13723                    goto ldv_36785;
13724                    case_4: 
13725#line 1689
13726                    flags = 8U;
13727#line 1689
13728                    goto ldv_36785;
13729                    case_2: 
13730#line 1690
13731                    flags = 2560U;
13732#line 1690
13733                    goto ldv_36785;
13734                    case_3: 
13735#line 1691
13736                    flags = 2048U;
13737#line 1691
13738                    goto ldv_36785;
13739                    case_0___0: 
13740#line 1692
13741                    __cil_tmp47 = info->params.flags;
13742#line 1692
13743                    __cil_tmp48 = (unsigned int )__cil_tmp47;
13744#line 1692
13745                    flags = __cil_tmp48 & 36616U;
13746#line 1696
13747                    goto ldv_36785;
13748                    switch_default___0: ;
13749#line 1697
13750                    return (-22);
13751                  } else {
13752
13753                  }
13754                }
13755                }
13756              }
13757              }
13758            }
13759            }
13760          }
13761          }
13762        }
13763        }
13764        ldv_36785: ;
13765        {
13766#line 1700
13767        __cil_tmp49 = (unsigned int )new_line.loopback;
13768#line 1700
13769        if (__cil_tmp49 != 0U) {
13770          {
13771#line 1700
13772          __cil_tmp50 = (unsigned int )new_line.loopback;
13773#line 1700
13774          if (__cil_tmp50 != 1U) {
13775#line 1701
13776            return (-22);
13777          } else {
13778
13779          }
13780          }
13781        } else {
13782
13783        }
13784        }
13785#line 1703
13786        __cil_tmp51 = info->params.flags;
13787#line 1703
13788        __cil_tmp52 = (unsigned int )__cil_tmp51;
13789#line 1703
13790        __cil_tmp53 = __cil_tmp52 & 28919U;
13791#line 1703
13792        info->params.flags = (unsigned short )__cil_tmp53;
13793#line 1707
13794        __cil_tmp54 = (unsigned short )flags;
13795#line 1707
13796        __cil_tmp55 = (int )__cil_tmp54;
13797#line 1707
13798        __cil_tmp56 = info->params.flags;
13799#line 1707
13800        __cil_tmp57 = (int )__cil_tmp56;
13801#line 1707
13802        __cil_tmp58 = __cil_tmp57 | __cil_tmp55;
13803#line 1707
13804        info->params.flags = (unsigned short )__cil_tmp58;
13805#line 1709
13806        info->params.loopback = (unsigned char )new_line.loopback;
13807        {
13808#line 1711
13809        __cil_tmp59 = flags & 2560U;
13810#line 1711
13811        if (__cil_tmp59 != 0U) {
13812#line 1712
13813          info->params.clock_speed = (unsigned long )new_line.clock_rate;
13814        } else {
13815#line 1714
13816          info->params.clock_speed = 0UL;
13817        }
13818        }
13819        {
13820#line 1717
13821        __cil_tmp60 = info->netcount;
13822#line 1717
13823        if (__cil_tmp60 != 0) {
13824          {
13825#line 1718
13826          program_hw(info);
13827          }
13828        } else {
13829
13830        }
13831        }
13832#line 1719
13833        return (0);
13834        switch_default___1: 
13835        {
13836#line 1722
13837        tmp___5 = hdlc_ioctl(dev, ifr, cmd);
13838        }
13839#line 1722
13840        return (tmp___5);
13841      } else {
13842
13843      }
13844    }
13845    }
13846  }
13847  }
13848}
13849}
13850#line 1731 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
13851static void hdlcdev_tx_timeout(struct net_device *dev ) 
13852{ struct slgt_info *info ;
13853  struct hdlc_device *tmp ;
13854  unsigned long flags ;
13855  raw_spinlock_t *tmp___0 ;
13856  void *__cil_tmp6 ;
13857  char (*__cil_tmp7)[16U] ;
13858  char *__cil_tmp8 ;
13859  unsigned long __cil_tmp9 ;
13860  unsigned long __cil_tmp10 ;
13861  spinlock_t *__cil_tmp11 ;
13862  spinlock_t *__cil_tmp12 ;
13863
13864  {
13865  {
13866#line 1733
13867  tmp = dev_to_hdlc(dev);
13868#line 1733
13869  __cil_tmp6 = tmp->priv;
13870#line 1733
13871  info = (struct slgt_info *)__cil_tmp6;
13872  }
13873#line 1736
13874  if (debug_level > 2) {
13875    {
13876#line 1736
13877    __cil_tmp7 = & dev->name;
13878#line 1736
13879    __cil_tmp8 = (char *)__cil_tmp7;
13880#line 1736
13881    printk("%s hdlcdev_tx_timeout\n", __cil_tmp8);
13882    }
13883  } else {
13884
13885  }
13886  {
13887#line 1738
13888  __cil_tmp9 = dev->stats.tx_errors;
13889#line 1738
13890  dev->stats.tx_errors = __cil_tmp9 + 1UL;
13891#line 1739
13892  __cil_tmp10 = dev->stats.tx_aborted_errors;
13893#line 1739
13894  dev->stats.tx_aborted_errors = __cil_tmp10 + 1UL;
13895#line 1741
13896  __cil_tmp11 = & info->lock;
13897#line 1741
13898  tmp___0 = spinlock_check(__cil_tmp11);
13899#line 1741
13900  flags = _raw_spin_lock_irqsave(tmp___0);
13901#line 1742
13902  tx_stop(info);
13903#line 1743
13904  __cil_tmp12 = & info->lock;
13905#line 1743
13906  spin_unlock_irqrestore(__cil_tmp12, flags);
13907#line 1745
13908  netif_wake_queue(dev);
13909  }
13910#line 1746
13911  return;
13912}
13913}
13914#line 1754 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
13915static void hdlcdev_tx_done(struct slgt_info *info ) 
13916{ int tmp ;
13917  struct net_device *__cil_tmp3 ;
13918  struct net_device  const  *__cil_tmp4 ;
13919  struct net_device *__cil_tmp5 ;
13920
13921  {
13922  {
13923#line 1756
13924  __cil_tmp3 = info->netdev;
13925#line 1756
13926  __cil_tmp4 = (struct net_device  const  *)__cil_tmp3;
13927#line 1756
13928  tmp = netif_queue_stopped(__cil_tmp4);
13929  }
13930#line 1756
13931  if (tmp != 0) {
13932    {
13933#line 1757
13934    __cil_tmp5 = info->netdev;
13935#line 1757
13936    netif_wake_queue(__cil_tmp5);
13937    }
13938  } else {
13939
13940  }
13941#line 1758
13942  return;
13943}
13944}
13945#line 1768 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
13946static void hdlcdev_rx(struct slgt_info *info , char *buf , int size ) 
13947{ struct sk_buff *skb ;
13948  struct sk_buff *tmp ;
13949  struct net_device *dev ;
13950  size_t __len ;
13951  void *__ret ;
13952  unsigned char *tmp___1 ;
13953  unsigned int __cil_tmp10 ;
13954  char (*__cil_tmp11)[16U] ;
13955  char *__cil_tmp12 ;
13956  struct sk_buff *__cil_tmp13 ;
13957  unsigned long __cil_tmp14 ;
13958  unsigned long __cil_tmp15 ;
13959  char (*__cil_tmp16)[16U] ;
13960  char *__cil_tmp17 ;
13961  unsigned long __cil_tmp18 ;
13962  unsigned int __cil_tmp19 ;
13963  void *__cil_tmp20 ;
13964  void const   *__cil_tmp21 ;
13965  unsigned long __cil_tmp22 ;
13966  unsigned long __cil_tmp23 ;
13967  unsigned long __cil_tmp24 ;
13968
13969  {
13970  {
13971#line 1770
13972  __cil_tmp10 = (unsigned int )size;
13973#line 1770
13974  tmp = dev_alloc_skb(__cil_tmp10);
13975#line 1770
13976  skb = tmp;
13977#line 1771
13978  dev = info->netdev;
13979  }
13980#line 1773
13981  if (debug_level > 2) {
13982    {
13983#line 1773
13984    __cil_tmp11 = & dev->name;
13985#line 1773
13986    __cil_tmp12 = (char *)__cil_tmp11;
13987#line 1773
13988    printk("%s hdlcdev_rx\n", __cil_tmp12);
13989    }
13990  } else {
13991
13992  }
13993  {
13994#line 1775
13995  __cil_tmp13 = (struct sk_buff *)0;
13996#line 1775
13997  __cil_tmp14 = (unsigned long )__cil_tmp13;
13998#line 1775
13999  __cil_tmp15 = (unsigned long )skb;
14000#line 1775
14001  if (__cil_tmp15 == __cil_tmp14) {
14002#line 1776
14003    if (debug_level > 1) {
14004      {
14005#line 1776
14006      __cil_tmp16 = & dev->name;
14007#line 1776
14008      __cil_tmp17 = (char *)__cil_tmp16;
14009#line 1776
14010      printk("%s: can\'t alloc skb, drop packet\n", __cil_tmp17);
14011      }
14012    } else {
14013
14014    }
14015#line 1777
14016    __cil_tmp18 = dev->stats.rx_dropped;
14017#line 1777
14018    dev->stats.rx_dropped = __cil_tmp18 + 1UL;
14019#line 1778
14020    return;
14021  } else {
14022
14023  }
14024  }
14025  {
14026#line 1781
14027  __len = (size_t )size;
14028#line 1781
14029  __cil_tmp19 = (unsigned int )size;
14030#line 1781
14031  tmp___1 = skb_put(skb, __cil_tmp19);
14032#line 1781
14033  __cil_tmp20 = (void *)tmp___1;
14034#line 1781
14035  __cil_tmp21 = (void const   *)buf;
14036#line 1781
14037  __ret = __builtin_memcpy(__cil_tmp20, __cil_tmp21, __len);
14038#line 1783
14039  skb->protocol = hdlc_type_trans(skb, dev);
14040#line 1785
14041  __cil_tmp22 = dev->stats.rx_packets;
14042#line 1785
14043  dev->stats.rx_packets = __cil_tmp22 + 1UL;
14044#line 1786
14045  __cil_tmp23 = (unsigned long )size;
14046#line 1786
14047  __cil_tmp24 = dev->stats.rx_bytes;
14048#line 1786
14049  dev->stats.rx_bytes = __cil_tmp24 + __cil_tmp23;
14050#line 1788
14051  netif_rx(skb);
14052  }
14053#line 1789
14054  return;
14055}
14056}
14057#line 1791 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
14058static struct net_device_ops  const  hdlcdev_ops  = 
14059#line 1791
14060     {(int (*)(struct net_device * ))0, (void (*)(struct net_device * ))0, & hdlcdev_open,
14061    & hdlcdev_close, & hdlc_start_xmit, (u16 (*)(struct net_device * , struct sk_buff * ))0,
14062    (void (*)(struct net_device * , int  ))0, (void (*)(struct net_device * ))0, (void (*)(struct net_device * ))0,
14063    (int (*)(struct net_device * , void * ))0, (int (*)(struct net_device * ))0, & hdlcdev_ioctl,
14064    (int (*)(struct net_device * , struct ifmap * ))0, & hdlc_change_mtu, (int (*)(struct net_device * ,
14065                                                                                   struct neigh_parms * ))0,
14066    & hdlcdev_tx_timeout, (struct rtnl_link_stats64 *(*)(struct net_device * , struct rtnl_link_stats64 * ))0,
14067    (struct net_device_stats *(*)(struct net_device * ))0, (void (*)(struct net_device * ,
14068                                                                     struct vlan_group * ))0,
14069    (void (*)(struct net_device * , unsigned short  ))0, (void (*)(struct net_device * ,
14070                                                                   unsigned short  ))0,
14071    (void (*)(struct net_device * ))0, (int (*)(struct net_device * , struct netpoll_info * ))0,
14072    (void (*)(struct net_device * ))0, (int (*)(struct net_device * , int  , u8 * ))0,
14073    (int (*)(struct net_device * , int  , u16  , u8  ))0, (int (*)(struct net_device * ,
14074                                                                   int  , int  ))0,
14075    (int (*)(struct net_device * , int  , struct ifla_vf_info * ))0, (int (*)(struct net_device * ,
14076                                                                              int  ,
14077                                                                              struct nlattr ** ))0,
14078    (int (*)(struct net_device * , int  , struct sk_buff * ))0, (int (*)(struct net_device * ,
14079                                                                         u8  ))0,
14080    (int (*)(struct net_device * ))0, (int (*)(struct net_device * ))0, (int (*)(struct net_device * ,
14081                                                                                 u16  ,
14082                                                                                 struct scatterlist * ,
14083                                                                                 unsigned int  ))0,
14084    (int (*)(struct net_device * , u16  ))0, (int (*)(struct net_device * , u16  ,
14085                                                      struct scatterlist * , unsigned int  ))0,
14086    (int (*)(struct net_device * , u64 * , int  ))0, (int (*)(struct net_device * ,
14087                                                              struct sk_buff  const  * ,
14088                                                              u16  , u32  ))0, (int (*)(struct net_device * ,
14089                                                                                        struct net_device * ))0,
14090    (int (*)(struct net_device * , struct net_device * ))0, (u32 (*)(struct net_device * ,
14091                                                                     u32  ))0, (int (*)(struct net_device * ,
14092                                                                                        u32  ))0};
14093#line 1808 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
14094static int hdlcdev_init(struct slgt_info *info ) 
14095{ int rc ;
14096  struct net_device *dev ;
14097  hdlc_device *hdlc ;
14098  struct hdlc_device *tmp ;
14099  void *__cil_tmp6 ;
14100  struct net_device *__cil_tmp7 ;
14101  unsigned long __cil_tmp8 ;
14102  unsigned long __cil_tmp9 ;
14103  char (*__cil_tmp10)[25U] ;
14104  char *__cil_tmp11 ;
14105  u32 __cil_tmp12 ;
14106  u32 __cil_tmp13 ;
14107  u32 __cil_tmp14 ;
14108  char *__cil_tmp15 ;
14109
14110  {
14111  {
14112#line 1816
14113  __cil_tmp6 = (void *)info;
14114#line 1816
14115  dev = alloc_hdlcdev(__cil_tmp6);
14116  }
14117  {
14118#line 1816
14119  __cil_tmp7 = (struct net_device *)0;
14120#line 1816
14121  __cil_tmp8 = (unsigned long )__cil_tmp7;
14122#line 1816
14123  __cil_tmp9 = (unsigned long )dev;
14124#line 1816
14125  if (__cil_tmp9 == __cil_tmp8) {
14126    {
14127#line 1817
14128    __cil_tmp10 = & info->device_name;
14129#line 1817
14130    __cil_tmp11 = (char *)__cil_tmp10;
14131#line 1817
14132    printk("<3>%s hdlc device alloc failure\n", __cil_tmp11);
14133    }
14134#line 1818
14135    return (-12);
14136  } else {
14137
14138  }
14139  }
14140  {
14141#line 1822
14142  __cil_tmp12 = info->phys_reg_addr;
14143#line 1822
14144  dev->mem_start = (unsigned long )__cil_tmp12;
14145#line 1823
14146  __cil_tmp13 = info->phys_reg_addr;
14147#line 1823
14148  __cil_tmp14 = __cil_tmp13 + 255U;
14149#line 1823
14150  dev->mem_end = (unsigned long )__cil_tmp14;
14151#line 1824
14152  dev->irq = info->irq_level;
14153#line 1827
14154  dev->netdev_ops = & hdlcdev_ops;
14155#line 1828
14156  dev->watchdog_timeo = 2500;
14157#line 1829
14158  dev->tx_queue_len = 50UL;
14159#line 1832
14160  tmp = dev_to_hdlc(dev);
14161#line 1832
14162  hdlc = tmp;
14163#line 1833
14164  hdlc->attach = & hdlcdev_attach;
14165#line 1834
14166  hdlc->xmit = & hdlcdev_xmit;
14167#line 1837
14168  rc = register_netdev(dev);
14169  }
14170#line 1837
14171  if (rc != 0) {
14172    {
14173#line 1838
14174    __cil_tmp15 = (char *)"/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p";
14175#line 1838
14176    printk("<4>%s:unable to register hdlc device\n", __cil_tmp15);
14177#line 1839
14178    free_netdev(dev);
14179    }
14180#line 1840
14181    return (rc);
14182  } else {
14183
14184  }
14185#line 1843
14186  info->netdev = dev;
14187#line 1844
14188  return (0);
14189}
14190}
14191#line 1853 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
14192static void hdlcdev_exit(struct slgt_info *info ) 
14193{ struct net_device *__cil_tmp2 ;
14194  struct net_device *__cil_tmp3 ;
14195
14196  {
14197  {
14198#line 1855
14199  __cil_tmp2 = info->netdev;
14200#line 1855
14201  unregister_hdlc_device(__cil_tmp2);
14202#line 1856
14203  __cil_tmp3 = info->netdev;
14204#line 1856
14205  free_netdev(__cil_tmp3);
14206#line 1857
14207  info->netdev = (struct net_device *)0;
14208  }
14209#line 1858
14210  return;
14211}
14212}
14213#line 1865 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
14214static void rx_async(struct slgt_info *info ) 
14215{ struct tty_struct *tty ;
14216  struct mgsl_icount *icount ;
14217  unsigned int start ;
14218  unsigned int end ;
14219  unsigned char *p ;
14220  unsigned char status ;
14221  struct slgt_desc *bufs ;
14222  int i ;
14223  int count ;
14224  int chars ;
14225  int stat ;
14226  unsigned char ch ;
14227  unsigned int __cil_tmp14 ;
14228  unsigned long __cil_tmp15 ;
14229  struct slgt_desc *__cil_tmp16 ;
14230  __le16 __cil_tmp17 ;
14231  unsigned int __cil_tmp18 ;
14232  unsigned int __cil_tmp19 ;
14233  unsigned int __cil_tmp20 ;
14234  unsigned long __cil_tmp21 ;
14235  unsigned long __cil_tmp22 ;
14236  struct slgt_desc *__cil_tmp23 ;
14237  char *__cil_tmp24 ;
14238  unsigned char *__cil_tmp25 ;
14239  char (*__cil_tmp26)[25U] ;
14240  char *__cil_tmp27 ;
14241  char const   *__cil_tmp28 ;
14242  __u32 __cil_tmp29 ;
14243  unsigned char *__cil_tmp30 ;
14244  unsigned char __cil_tmp31 ;
14245  unsigned int __cil_tmp32 ;
14246  unsigned int __cil_tmp33 ;
14247  unsigned int __cil_tmp34 ;
14248  int __cil_tmp35 ;
14249  int __cil_tmp36 ;
14250  __u32 __cil_tmp37 ;
14251  int __cil_tmp38 ;
14252  __u32 __cil_tmp39 ;
14253  unsigned int __cil_tmp40 ;
14254  unsigned int __cil_tmp41 ;
14255  unsigned int __cil_tmp42 ;
14256  int __cil_tmp43 ;
14257  int __cil_tmp44 ;
14258  int __cil_tmp45 ;
14259  struct tty_struct *__cil_tmp46 ;
14260  unsigned long __cil_tmp47 ;
14261  unsigned long __cil_tmp48 ;
14262  int __cil_tmp49 ;
14263  unsigned char __cil_tmp50 ;
14264  char __cil_tmp51 ;
14265  int __cil_tmp52 ;
14266  char __cil_tmp53 ;
14267  unsigned int __cil_tmp54 ;
14268  unsigned int __cil_tmp55 ;
14269  struct timer_list *__cil_tmp56 ;
14270  unsigned long __cil_tmp57 ;
14271  unsigned long __cil_tmp58 ;
14272  unsigned int __cil_tmp59 ;
14273  unsigned long __cil_tmp60 ;
14274  struct slgt_desc *__cil_tmp61 ;
14275  __le16 __cil_tmp62 ;
14276  short __cil_tmp63 ;
14277  int __cil_tmp64 ;
14278  struct tty_struct *__cil_tmp65 ;
14279  unsigned long __cil_tmp66 ;
14280  unsigned long __cil_tmp67 ;
14281
14282  {
14283#line 1867
14284  tty = info->port.tty;
14285#line 1868
14286  icount = & info->icount;
14287#line 1872
14288  bufs = info->rbufs;
14289#line 1874
14290  chars = 0;
14291#line 1878
14292  end = info->rbuf_current;
14293#line 1878
14294  start = end;
14295#line 1880
14296  goto ldv_36844;
14297  ldv_36843: 
14298#line 1881
14299  __cil_tmp14 = info->rbuf_index;
14300#line 1881
14301  __cil_tmp15 = (unsigned long )end;
14302#line 1881
14303  __cil_tmp16 = bufs + __cil_tmp15;
14304#line 1881
14305  __cil_tmp17 = __cil_tmp16->count;
14306#line 1881
14307  __cil_tmp18 = (unsigned int )__cil_tmp17;
14308#line 1881
14309  __cil_tmp19 = __cil_tmp18 - __cil_tmp14;
14310#line 1881
14311  count = (int )__cil_tmp19;
14312#line 1882
14313  __cil_tmp20 = info->rbuf_index;
14314#line 1882
14315  __cil_tmp21 = (unsigned long )__cil_tmp20;
14316#line 1882
14317  __cil_tmp22 = (unsigned long )end;
14318#line 1882
14319  __cil_tmp23 = bufs + __cil_tmp22;
14320#line 1882
14321  __cil_tmp24 = __cil_tmp23->buf;
14322#line 1882
14323  __cil_tmp25 = (unsigned char *)__cil_tmp24;
14324#line 1882
14325  p = __cil_tmp25 + __cil_tmp21;
14326#line 1884
14327  if (debug_level > 4) {
14328    {
14329#line 1884
14330    __cil_tmp26 = & info->device_name;
14331#line 1884
14332    __cil_tmp27 = (char *)__cil_tmp26;
14333#line 1884
14334    printk("%s rx_async count=%d\n", __cil_tmp27, count);
14335    }
14336  } else {
14337
14338  }
14339#line 1885
14340  if (debug_level > 0) {
14341    {
14342#line 1885
14343    __cil_tmp28 = (char const   *)p;
14344#line 1885
14345    trace_block(info, __cil_tmp28, count, "rx");
14346    }
14347  } else {
14348
14349  }
14350#line 1887
14351  i = 0;
14352#line 1887
14353  goto ldv_36840;
14354  ldv_36839: 
14355#line 1888
14356  ch = *p;
14357#line 1889
14358  __cil_tmp29 = icount->rx;
14359#line 1889
14360  icount->rx = __cil_tmp29 + 1U;
14361#line 1891
14362  stat = 0;
14363#line 1893
14364  __cil_tmp30 = p + 1UL;
14365#line 1893
14366  __cil_tmp31 = *__cil_tmp30;
14367#line 1893
14368  __cil_tmp32 = (unsigned int )__cil_tmp31;
14369#line 1893
14370  __cil_tmp33 = __cil_tmp32 & 3U;
14371#line 1893
14372  status = (unsigned char )__cil_tmp33;
14373  {
14374#line 1893
14375  __cil_tmp34 = (unsigned int )status;
14376#line 1893
14377  if (__cil_tmp34 != 0U) {
14378    {
14379#line 1894
14380    __cil_tmp35 = (int )status;
14381#line 1894
14382    __cil_tmp36 = __cil_tmp35 & 2;
14383#line 1894
14384    if (__cil_tmp36 != 0) {
14385#line 1895
14386      __cil_tmp37 = icount->parity;
14387#line 1895
14388      icount->parity = __cil_tmp37 + 1U;
14389    } else {
14390      {
14391#line 1896
14392      __cil_tmp38 = (int )status;
14393#line 1896
14394      if (__cil_tmp38 & 1) {
14395#line 1897
14396        __cil_tmp39 = icount->frame;
14397#line 1897
14398        icount->frame = __cil_tmp39 + 1U;
14399      } else {
14400
14401      }
14402      }
14403    }
14404    }
14405    {
14406#line 1899
14407    __cil_tmp40 = info->ignore_status_mask;
14408#line 1899
14409    __cil_tmp41 = (unsigned int )status;
14410#line 1899
14411    __cil_tmp42 = __cil_tmp41 & __cil_tmp40;
14412#line 1899
14413    if (__cil_tmp42 != 0U) {
14414#line 1900
14415      goto ldv_36838;
14416    } else {
14417
14418    }
14419    }
14420    {
14421#line 1901
14422    __cil_tmp43 = (int )status;
14423#line 1901
14424    __cil_tmp44 = __cil_tmp43 & 2;
14425#line 1901
14426    if (__cil_tmp44 != 0) {
14427#line 1902
14428      stat = 3;
14429    } else {
14430      {
14431#line 1903
14432      __cil_tmp45 = (int )status;
14433#line 1903
14434      if (__cil_tmp45 & 1) {
14435#line 1904
14436        stat = 2;
14437      } else {
14438
14439      }
14440      }
14441    }
14442    }
14443  } else {
14444
14445  }
14446  }
14447  {
14448#line 1906
14449  __cil_tmp46 = (struct tty_struct *)0;
14450#line 1906
14451  __cil_tmp47 = (unsigned long )__cil_tmp46;
14452#line 1906
14453  __cil_tmp48 = (unsigned long )tty;
14454#line 1906
14455  if (__cil_tmp48 != __cil_tmp47) {
14456    {
14457#line 1907
14458    __cil_tmp49 = (int )ch;
14459#line 1907
14460    __cil_tmp50 = (unsigned char )__cil_tmp49;
14461#line 1907
14462    __cil_tmp51 = (char )stat;
14463#line 1907
14464    __cil_tmp52 = (int )__cil_tmp51;
14465#line 1907
14466    __cil_tmp53 = (char )__cil_tmp52;
14467#line 1907
14468    tty_insert_flip_char(tty, __cil_tmp50, __cil_tmp53);
14469#line 1908
14470    chars = chars + 1;
14471    }
14472  } else {
14473
14474  }
14475  }
14476  ldv_36838: 
14477#line 1887
14478  i = i + 2;
14479#line 1887
14480  p = p + 2UL;
14481  ldv_36840: ;
14482#line 1887
14483  if (i < count) {
14484#line 1888
14485    goto ldv_36839;
14486  } else {
14487#line 1890
14488    goto ldv_36841;
14489  }
14490  ldv_36841: ;
14491#line 1912
14492  if (i < count) {
14493    {
14494#line 1914
14495    __cil_tmp54 = (unsigned int )i;
14496#line 1914
14497    __cil_tmp55 = info->rbuf_index;
14498#line 1914
14499    info->rbuf_index = __cil_tmp55 + __cil_tmp54;
14500#line 1915
14501    __cil_tmp56 = & info->rx_timer;
14502#line 1915
14503    __cil_tmp57 = (unsigned long )jiffies;
14504#line 1915
14505    __cil_tmp58 = __cil_tmp57 + 1UL;
14506#line 1915
14507    mod_timer(__cil_tmp56, __cil_tmp58);
14508    }
14509#line 1916
14510    goto ldv_36842;
14511  } else {
14512
14513  }
14514  {
14515#line 1919
14516  info->rbuf_index = 0U;
14517#line 1920
14518  free_rbufs(info, end, end);
14519#line 1922
14520  end = end + 1U;
14521  }
14522  {
14523#line 1922
14524  __cil_tmp59 = info->rbuf_count;
14525#line 1922
14526  if (end == __cil_tmp59) {
14527#line 1923
14528    end = 0U;
14529  } else {
14530
14531  }
14532  }
14533#line 1926
14534  if (end == start) {
14535#line 1927
14536    goto ldv_36842;
14537  } else {
14538
14539  }
14540  ldv_36844: ;
14541  {
14542#line 1880
14543  __cil_tmp60 = (unsigned long )end;
14544#line 1880
14545  __cil_tmp61 = bufs + __cil_tmp60;
14546#line 1880
14547  __cil_tmp62 = __cil_tmp61->status;
14548#line 1880
14549  __cil_tmp63 = (short )__cil_tmp62;
14550#line 1880
14551  __cil_tmp64 = (int )__cil_tmp63;
14552#line 1880
14553  if (__cil_tmp64 < 0) {
14554#line 1881
14555    goto ldv_36843;
14556  } else {
14557#line 1883
14558    goto ldv_36842;
14559  }
14560  }
14561  ldv_36842: ;
14562  {
14563#line 1930
14564  __cil_tmp65 = (struct tty_struct *)0;
14565#line 1930
14566  __cil_tmp66 = (unsigned long )__cil_tmp65;
14567#line 1930
14568  __cil_tmp67 = (unsigned long )tty;
14569#line 1930
14570  if (__cil_tmp67 != __cil_tmp66) {
14571#line 1930
14572    if (chars != 0) {
14573      {
14574#line 1931
14575      tty_flip_buffer_push(tty);
14576      }
14577    } else {
14578
14579    }
14580  } else {
14581
14582  }
14583  }
14584#line 1932
14585  return;
14586}
14587}
14588#line 1937 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
14589static int bh_action(struct slgt_info *info ) 
14590{ unsigned long flags ;
14591  int rc ;
14592  raw_spinlock_t *tmp ;
14593  spinlock_t *__cil_tmp5 ;
14594  u32 __cil_tmp6 ;
14595  int __cil_tmp7 ;
14596  u32 __cil_tmp8 ;
14597  u32 __cil_tmp9 ;
14598  unsigned int __cil_tmp10 ;
14599  u32 __cil_tmp11 ;
14600  u32 __cil_tmp12 ;
14601  unsigned int __cil_tmp13 ;
14602  u32 __cil_tmp14 ;
14603  spinlock_t *__cil_tmp15 ;
14604
14605  {
14606  {
14607#line 1942
14608  __cil_tmp5 = & info->lock;
14609#line 1942
14610  tmp = spinlock_check(__cil_tmp5);
14611#line 1942
14612  flags = _raw_spin_lock_irqsave(tmp);
14613  }
14614  {
14615#line 1944
14616  __cil_tmp6 = info->pending_bh;
14617#line 1944
14618  __cil_tmp7 = (int )__cil_tmp6;
14619#line 1944
14620  if (__cil_tmp7 & 1) {
14621#line 1945
14622    __cil_tmp8 = info->pending_bh;
14623#line 1945
14624    info->pending_bh = __cil_tmp8 & 4294967294U;
14625#line 1946
14626    rc = 1;
14627  } else {
14628    {
14629#line 1947
14630    __cil_tmp9 = info->pending_bh;
14631#line 1947
14632    __cil_tmp10 = __cil_tmp9 & 2U;
14633#line 1947
14634    if (__cil_tmp10 != 0U) {
14635#line 1948
14636      __cil_tmp11 = info->pending_bh;
14637#line 1948
14638      info->pending_bh = __cil_tmp11 & 4294967293U;
14639#line 1949
14640      rc = 2;
14641    } else {
14642      {
14643#line 1950
14644      __cil_tmp12 = info->pending_bh;
14645#line 1950
14646      __cil_tmp13 = __cil_tmp12 & 4U;
14647#line 1950
14648      if (__cil_tmp13 != 0U) {
14649#line 1951
14650        __cil_tmp14 = info->pending_bh;
14651#line 1951
14652        info->pending_bh = __cil_tmp14 & 4294967291U;
14653#line 1952
14654        rc = 4;
14655      } else {
14656#line 1955
14657        info->bh_running = (bool )0;
14658#line 1956
14659        info->bh_requested = (bool )0;
14660#line 1957
14661        rc = 0;
14662      }
14663      }
14664    }
14665    }
14666  }
14667  }
14668  {
14669#line 1960
14670  __cil_tmp15 = & info->lock;
14671#line 1960
14672  spin_unlock_irqrestore(__cil_tmp15, flags);
14673  }
14674#line 1962
14675  return (rc);
14676}
14677}
14678#line 1968 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
14679static void bh_handler(struct work_struct *work ) 
14680{ struct slgt_info *info ;
14681  struct work_struct  const  *__mptr ;
14682  int action ;
14683  bool tmp ;
14684  bool tmp___0 ;
14685  struct slgt_info *__cil_tmp7 ;
14686  struct slgt_info *__cil_tmp8 ;
14687  unsigned long __cil_tmp9 ;
14688  unsigned long __cil_tmp10 ;
14689  char (*__cil_tmp11)[25U] ;
14690  char *__cil_tmp12 ;
14691  unsigned long __cil_tmp13 ;
14692  int __cil_tmp14 ;
14693  unsigned long __cil_tmp15 ;
14694  int __cil_tmp16 ;
14695  unsigned long __cil_tmp17 ;
14696  int __cil_tmp18 ;
14697  unsigned long __cil_tmp19 ;
14698  int __cil_tmp20 ;
14699  unsigned long __cil_tmp21 ;
14700  int __cil_tmp22 ;
14701  unsigned long __cil_tmp23 ;
14702  int __cil_tmp24 ;
14703  bool __cil_tmp25 ;
14704  char (*__cil_tmp26)[25U] ;
14705  char *__cil_tmp27 ;
14706  char (*__cil_tmp28)[25U] ;
14707  char *__cil_tmp29 ;
14708  char (*__cil_tmp30)[25U] ;
14709  char *__cil_tmp31 ;
14710
14711  {
14712#line 1970
14713  __mptr = (struct work_struct  const  *)work;
14714#line 1970
14715  __cil_tmp7 = (struct slgt_info *)__mptr;
14716#line 1970
14717  info = __cil_tmp7 + 1152921504606845504UL;
14718  {
14719#line 1973
14720  __cil_tmp8 = (struct slgt_info *)0;
14721#line 1973
14722  __cil_tmp9 = (unsigned long )__cil_tmp8;
14723#line 1973
14724  __cil_tmp10 = (unsigned long )info;
14725#line 1973
14726  if (__cil_tmp10 == __cil_tmp9) {
14727#line 1974
14728    return;
14729  } else {
14730
14731  }
14732  }
14733#line 1975
14734  info->bh_running = (bool )1;
14735#line 1977
14736  goto ldv_36879;
14737  ldv_36878: ;
14738#line 1979
14739  if (action == 1) {
14740#line 1979
14741    goto case_1;
14742  } else
14743#line 1999
14744  if (action == 2) {
14745#line 1999
14746    goto case_2___0;
14747  } else
14748#line 2002
14749  if (action == 4) {
14750#line 2002
14751    goto case_4___0;
14752  } else {
14753#line 2009
14754    goto switch_default;
14755#line 1978
14756    if (0) {
14757      case_1: ;
14758#line 1980
14759      if (debug_level > 3) {
14760        {
14761#line 1980
14762        __cil_tmp11 = & info->device_name;
14763#line 1980
14764        __cil_tmp12 = (char *)__cil_tmp11;
14765#line 1980
14766        printk("%s bh receive\n", __cil_tmp12);
14767        }
14768      } else {
14769
14770      }
14771      {
14772#line 1982
14773      __cil_tmp13 = info->params.mode;
14774#line 1982
14775      __cil_tmp14 = (int )__cil_tmp13;
14776#line 1982
14777      if (__cil_tmp14 == 1) {
14778#line 1982
14779        goto case_1___0;
14780      } else {
14781        {
14782#line 1985
14783        __cil_tmp15 = info->params.mode;
14784#line 1985
14785        __cil_tmp16 = (int )__cil_tmp15;
14786#line 1985
14787        if (__cil_tmp16 == 2) {
14788#line 1985
14789          goto case_2;
14790        } else {
14791          {
14792#line 1988
14793          __cil_tmp17 = info->params.mode;
14794#line 1988
14795          __cil_tmp18 = (int )__cil_tmp17;
14796#line 1988
14797          if (__cil_tmp18 == 6) {
14798#line 1988
14799            goto case_6;
14800          } else {
14801            {
14802#line 1989
14803            __cil_tmp19 = info->params.mode;
14804#line 1989
14805            __cil_tmp20 = (int )__cil_tmp19;
14806#line 1989
14807            if (__cil_tmp20 == 3) {
14808#line 1989
14809              goto case_3;
14810            } else {
14811              {
14812#line 1990
14813              __cil_tmp21 = info->params.mode;
14814#line 1990
14815              __cil_tmp22 = (int )__cil_tmp21;
14816#line 1990
14817              if (__cil_tmp22 == 4) {
14818#line 1990
14819                goto case_4;
14820              } else {
14821                {
14822#line 1991
14823                __cil_tmp23 = info->params.mode;
14824#line 1991
14825                __cil_tmp24 = (int )__cil_tmp23;
14826#line 1991
14827                if (__cil_tmp24 == 8) {
14828#line 1991
14829                  goto case_8;
14830                } else
14831#line 1981
14832                if (0) {
14833                  case_1___0: 
14834                  {
14835#line 1983
14836                  rx_async(info);
14837                  }
14838#line 1984
14839                  goto ldv_36862;
14840                  case_2: ;
14841#line 1986
14842                  goto ldv_36865;
14843                  ldv_36864: ;
14844                  ldv_36865: 
14845                  {
14846#line 1986
14847                  tmp = rx_get_frame(info);
14848                  }
14849#line 1986
14850                  if ((int )tmp) {
14851#line 1987
14852                    goto ldv_36864;
14853                  } else {
14854#line 1989
14855                    goto ldv_36866;
14856                  }
14857                  ldv_36866: ;
14858#line 1987
14859                  goto ldv_36862;
14860                  case_6: ;
14861                  case_3: ;
14862                  case_4: ;
14863                  case_8: ;
14864#line 1992
14865                  goto ldv_36872;
14866                  ldv_36871: ;
14867                  ldv_36872: 
14868                  {
14869#line 1992
14870                  tmp___0 = rx_get_buf(info);
14871                  }
14872#line 1992
14873                  if ((int )tmp___0) {
14874#line 1993
14875                    goto ldv_36871;
14876                  } else {
14877#line 1995
14878                    goto ldv_36873;
14879                  }
14880                  ldv_36873: ;
14881#line 1993
14882                  goto ldv_36862;
14883                } else {
14884
14885                }
14886                }
14887              }
14888              }
14889            }
14890            }
14891          }
14892          }
14893        }
14894        }
14895      }
14896      }
14897      ldv_36862: ;
14898      {
14899#line 1996
14900      __cil_tmp25 = info->rx_restart;
14901#line 1996
14902      if ((int )__cil_tmp25) {
14903        {
14904#line 1997
14905        rx_start(info);
14906        }
14907      } else {
14908
14909      }
14910      }
14911#line 1998
14912      goto ldv_36874;
14913      case_2___0: 
14914      {
14915#line 2000
14916      bh_transmit(info);
14917      }
14918#line 2001
14919      goto ldv_36874;
14920      case_4___0: ;
14921#line 2003
14922      if (debug_level > 3) {
14923        {
14924#line 2003
14925        __cil_tmp26 = & info->device_name;
14926#line 2003
14927        __cil_tmp27 = (char *)__cil_tmp26;
14928#line 2003
14929        printk("%s bh status\n", __cil_tmp27);
14930        }
14931      } else {
14932
14933      }
14934#line 2004
14935      info->ri_chkcount = 0;
14936#line 2005
14937      info->dsr_chkcount = 0;
14938#line 2006
14939      info->dcd_chkcount = 0;
14940#line 2007
14941      info->cts_chkcount = 0;
14942#line 2008
14943      goto ldv_36874;
14944      switch_default: ;
14945#line 2010
14946      if (debug_level > 3) {
14947        {
14948#line 2010
14949        __cil_tmp28 = & info->device_name;
14950#line 2010
14951        __cil_tmp29 = (char *)__cil_tmp28;
14952#line 2010
14953        printk("%s unknown action\n", __cil_tmp29);
14954        }
14955      } else {
14956
14957      }
14958#line 2011
14959      goto ldv_36874;
14960    } else {
14961
14962    }
14963  }
14964  ldv_36874: ;
14965  ldv_36879: 
14966  {
14967#line 1977
14968  action = bh_action(info);
14969  }
14970#line 1977
14971  if (action != 0) {
14972#line 1978
14973    goto ldv_36878;
14974  } else {
14975#line 1980
14976    goto ldv_36880;
14977  }
14978  ldv_36880: ;
14979#line 2014
14980  if (debug_level > 3) {
14981    {
14982#line 2014
14983    __cil_tmp30 = & info->device_name;
14984#line 2014
14985    __cil_tmp31 = (char *)__cil_tmp30;
14986#line 2014
14987    printk("%s bh_handler exit\n", __cil_tmp31);
14988    }
14989  } else {
14990
14991  }
14992#line 2015
14993  return;
14994}
14995}
14996#line 2017 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
14997static void bh_transmit(struct slgt_info *info ) 
14998{ struct tty_struct *tty ;
14999  char (*__cil_tmp3)[25U] ;
15000  char *__cil_tmp4 ;
15001  struct tty_struct *__cil_tmp5 ;
15002  unsigned long __cil_tmp6 ;
15003  unsigned long __cil_tmp7 ;
15004
15005  {
15006#line 2019
15007  tty = info->port.tty;
15008#line 2021
15009  if (debug_level > 3) {
15010    {
15011#line 2021
15012    __cil_tmp3 = & info->device_name;
15013#line 2021
15014    __cil_tmp4 = (char *)__cil_tmp3;
15015#line 2021
15016    printk("%s bh_transmit\n", __cil_tmp4);
15017    }
15018  } else {
15019
15020  }
15021  {
15022#line 2022
15023  __cil_tmp5 = (struct tty_struct *)0;
15024#line 2022
15025  __cil_tmp6 = (unsigned long )__cil_tmp5;
15026#line 2022
15027  __cil_tmp7 = (unsigned long )tty;
15028#line 2022
15029  if (__cil_tmp7 != __cil_tmp6) {
15030    {
15031#line 2023
15032    tty_wakeup(tty);
15033    }
15034  } else {
15035
15036  }
15037  }
15038#line 2024
15039  return;
15040}
15041}
15042#line 2026 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
15043static void dsr_change(struct slgt_info *info , unsigned short status ) 
15044{ __u16 tmp ;
15045  int tmp___0 ;
15046  int __cil_tmp5 ;
15047  int __cil_tmp6 ;
15048  unsigned char __cil_tmp7 ;
15049  unsigned int __cil_tmp8 ;
15050  unsigned int __cil_tmp9 ;
15051  int __cil_tmp10 ;
15052  unsigned char __cil_tmp11 ;
15053  unsigned int __cil_tmp12 ;
15054  unsigned int __cil_tmp13 ;
15055  int __cil_tmp14 ;
15056  char (*__cil_tmp15)[25U] ;
15057  char *__cil_tmp16 ;
15058  unsigned char __cil_tmp17 ;
15059  int __cil_tmp18 ;
15060  int __cil_tmp19 ;
15061  int __cil_tmp20 ;
15062  int __cil_tmp21 ;
15063  __u16 __cil_tmp22 ;
15064  __u32 __cil_tmp23 ;
15065  wait_queue_head_t *__cil_tmp24 ;
15066  void *__cil_tmp25 ;
15067  wait_queue_head_t *__cil_tmp26 ;
15068  void *__cil_tmp27 ;
15069  u32 __cil_tmp28 ;
15070
15071  {
15072  {
15073#line 2028
15074  __cil_tmp5 = (int )status;
15075#line 2028
15076  __cil_tmp6 = __cil_tmp5 & 8;
15077#line 2028
15078  if (__cil_tmp6 != 0) {
15079#line 2029
15080    __cil_tmp7 = info->signals;
15081#line 2029
15082    __cil_tmp8 = (unsigned int )__cil_tmp7;
15083#line 2029
15084    __cil_tmp9 = __cil_tmp8 | 64U;
15085#line 2029
15086    info->signals = (unsigned char )__cil_tmp9;
15087#line 2030
15088    __cil_tmp10 = info->input_signal_events.dsr_up;
15089#line 2030
15090    info->input_signal_events.dsr_up = __cil_tmp10 + 1;
15091  } else {
15092#line 2032
15093    __cil_tmp11 = info->signals;
15094#line 2032
15095    __cil_tmp12 = (unsigned int )__cil_tmp11;
15096#line 2032
15097    __cil_tmp13 = __cil_tmp12 & 191U;
15098#line 2032
15099    info->signals = (unsigned char )__cil_tmp13;
15100#line 2033
15101    __cil_tmp14 = info->input_signal_events.dsr_down;
15102#line 2033
15103    info->input_signal_events.dsr_down = __cil_tmp14 + 1;
15104  }
15105  }
15106#line 2035
15107  if (debug_level > 4) {
15108    {
15109#line 2035
15110    __cil_tmp15 = & info->device_name;
15111#line 2035
15112    __cil_tmp16 = (char *)__cil_tmp15;
15113#line 2035
15114    __cil_tmp17 = info->signals;
15115#line 2035
15116    __cil_tmp18 = (int )__cil_tmp17;
15117#line 2035
15118    printk("dsr_change %s signals=%04X\n", __cil_tmp16, __cil_tmp18);
15119    }
15120  } else {
15121
15122  }
15123#line 2036
15124  tmp___0 = info->dsr_chkcount;
15125#line 2036
15126  __cil_tmp19 = info->dsr_chkcount;
15127#line 2036
15128  info->dsr_chkcount = __cil_tmp19 + 1;
15129#line 2036
15130  if (tmp___0 == 100) {
15131    {
15132#line 2037
15133    tmp = rd_reg16(info, 140U);
15134#line 2037
15135    __cil_tmp20 = (int )tmp;
15136#line 2037
15137    __cil_tmp21 = __cil_tmp20 & 65407;
15138#line 2037
15139    __cil_tmp22 = (__u16 )__cil_tmp21;
15140#line 2037
15141    wr_reg16(info, 140U, __cil_tmp22);
15142    }
15143#line 2038
15144    return;
15145  } else {
15146
15147  }
15148  {
15149#line 2040
15150  __cil_tmp23 = info->icount.dsr;
15151#line 2040
15152  info->icount.dsr = __cil_tmp23 + 1U;
15153#line 2041
15154  __cil_tmp24 = & info->status_event_wait_q;
15155#line 2041
15156  __cil_tmp25 = (void *)0;
15157#line 2041
15158  __wake_up(__cil_tmp24, 1U, 1, __cil_tmp25);
15159#line 2042
15160  __cil_tmp26 = & info->event_wait_q;
15161#line 2042
15162  __cil_tmp27 = (void *)0;
15163#line 2042
15164  __wake_up(__cil_tmp26, 1U, 1, __cil_tmp27);
15165#line 2043
15166  __cil_tmp28 = info->pending_bh;
15167#line 2043
15168  info->pending_bh = __cil_tmp28 | 4U;
15169  }
15170#line 2044
15171  return;
15172}
15173}
15174#line 2046 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
15175static void cts_change(struct slgt_info *info , unsigned short status ) 
15176{ __u16 tmp ;
15177  int tmp___0 ;
15178  int __cil_tmp5 ;
15179  int __cil_tmp6 ;
15180  unsigned char __cil_tmp7 ;
15181  unsigned int __cil_tmp8 ;
15182  unsigned int __cil_tmp9 ;
15183  int __cil_tmp10 ;
15184  unsigned char __cil_tmp11 ;
15185  unsigned int __cil_tmp12 ;
15186  unsigned int __cil_tmp13 ;
15187  int __cil_tmp14 ;
15188  char (*__cil_tmp15)[25U] ;
15189  char *__cil_tmp16 ;
15190  unsigned char __cil_tmp17 ;
15191  int __cil_tmp18 ;
15192  int __cil_tmp19 ;
15193  int __cil_tmp20 ;
15194  int __cil_tmp21 ;
15195  __u16 __cil_tmp22 ;
15196  __u32 __cil_tmp23 ;
15197  wait_queue_head_t *__cil_tmp24 ;
15198  void *__cil_tmp25 ;
15199  wait_queue_head_t *__cil_tmp26 ;
15200  void *__cil_tmp27 ;
15201  u32 __cil_tmp28 ;
15202  unsigned long __cil_tmp29 ;
15203  unsigned long __cil_tmp30 ;
15204  struct tty_struct *__cil_tmp31 ;
15205  unsigned long __cil_tmp32 ;
15206  struct tty_struct *__cil_tmp33 ;
15207  unsigned long __cil_tmp34 ;
15208  struct tty_struct *__cil_tmp35 ;
15209  unsigned char *__cil_tmp36 ;
15210  unsigned char *__cil_tmp37 ;
15211  unsigned char __cil_tmp38 ;
15212  unsigned int __cil_tmp39 ;
15213  unsigned char __cil_tmp40 ;
15214  int __cil_tmp41 ;
15215  int __cil_tmp42 ;
15216  struct tty_struct *__cil_tmp43 ;
15217  u32 __cil_tmp44 ;
15218  unsigned char __cil_tmp45 ;
15219  int __cil_tmp46 ;
15220  int __cil_tmp47 ;
15221  struct tty_struct *__cil_tmp48 ;
15222
15223  {
15224  {
15225#line 2048
15226  __cil_tmp5 = (int )status;
15227#line 2048
15228  __cil_tmp6 = __cil_tmp5 & 4;
15229#line 2048
15230  if (__cil_tmp6 != 0) {
15231#line 2049
15232    __cil_tmp7 = info->signals;
15233#line 2049
15234    __cil_tmp8 = (unsigned int )__cil_tmp7;
15235#line 2049
15236    __cil_tmp9 = __cil_tmp8 | 16U;
15237#line 2049
15238    info->signals = (unsigned char )__cil_tmp9;
15239#line 2050
15240    __cil_tmp10 = info->input_signal_events.cts_up;
15241#line 2050
15242    info->input_signal_events.cts_up = __cil_tmp10 + 1;
15243  } else {
15244#line 2052
15245    __cil_tmp11 = info->signals;
15246#line 2052
15247    __cil_tmp12 = (unsigned int )__cil_tmp11;
15248#line 2052
15249    __cil_tmp13 = __cil_tmp12 & 239U;
15250#line 2052
15251    info->signals = (unsigned char )__cil_tmp13;
15252#line 2053
15253    __cil_tmp14 = info->input_signal_events.cts_down;
15254#line 2053
15255    info->input_signal_events.cts_down = __cil_tmp14 + 1;
15256  }
15257  }
15258#line 2055
15259  if (debug_level > 4) {
15260    {
15261#line 2055
15262    __cil_tmp15 = & info->device_name;
15263#line 2055
15264    __cil_tmp16 = (char *)__cil_tmp15;
15265#line 2055
15266    __cil_tmp17 = info->signals;
15267#line 2055
15268    __cil_tmp18 = (int )__cil_tmp17;
15269#line 2055
15270    printk("cts_change %s signals=%04X\n", __cil_tmp16, __cil_tmp18);
15271    }
15272  } else {
15273
15274  }
15275#line 2056
15276  tmp___0 = info->cts_chkcount;
15277#line 2056
15278  __cil_tmp19 = info->cts_chkcount;
15279#line 2056
15280  info->cts_chkcount = __cil_tmp19 + 1;
15281#line 2056
15282  if (tmp___0 == 100) {
15283    {
15284#line 2057
15285    tmp = rd_reg16(info, 140U);
15286#line 2057
15287    __cil_tmp20 = (int )tmp;
15288#line 2057
15289    __cil_tmp21 = __cil_tmp20 & 65471;
15290#line 2057
15291    __cil_tmp22 = (__u16 )__cil_tmp21;
15292#line 2057
15293    wr_reg16(info, 140U, __cil_tmp22);
15294    }
15295#line 2058
15296    return;
15297  } else {
15298
15299  }
15300  {
15301#line 2060
15302  __cil_tmp23 = info->icount.cts;
15303#line 2060
15304  info->icount.cts = __cil_tmp23 + 1U;
15305#line 2061
15306  __cil_tmp24 = & info->status_event_wait_q;
15307#line 2061
15308  __cil_tmp25 = (void *)0;
15309#line 2061
15310  __wake_up(__cil_tmp24, 1U, 1, __cil_tmp25);
15311#line 2062
15312  __cil_tmp26 = & info->event_wait_q;
15313#line 2062
15314  __cil_tmp27 = (void *)0;
15315#line 2062
15316  __wake_up(__cil_tmp26, 1U, 1, __cil_tmp27);
15317#line 2063
15318  __cil_tmp28 = info->pending_bh;
15319#line 2063
15320  info->pending_bh = __cil_tmp28 | 4U;
15321  }
15322  {
15323#line 2065
15324  __cil_tmp29 = info->port.flags;
15325#line 2065
15326  __cil_tmp30 = __cil_tmp29 & 67108864UL;
15327#line 2065
15328  if (__cil_tmp30 != 0UL) {
15329    {
15330#line 2066
15331    __cil_tmp31 = (struct tty_struct *)0;
15332#line 2066
15333    __cil_tmp32 = (unsigned long )__cil_tmp31;
15334#line 2066
15335    __cil_tmp33 = info->port.tty;
15336#line 2066
15337    __cil_tmp34 = (unsigned long )__cil_tmp33;
15338#line 2066
15339    if (__cil_tmp34 != __cil_tmp32) {
15340      {
15341#line 2067
15342      __cil_tmp35 = info->port.tty;
15343#line 2067
15344      __cil_tmp36 = (unsigned char *)__cil_tmp35;
15345#line 2067
15346      __cil_tmp37 = __cil_tmp36 + 580UL;
15347#line 2067
15348      __cil_tmp38 = *__cil_tmp37;
15349#line 2067
15350      __cil_tmp39 = (unsigned int )__cil_tmp38;
15351#line 2067
15352      if (__cil_tmp39 != 0U) {
15353        {
15354#line 2068
15355        __cil_tmp40 = info->signals;
15356#line 2068
15357        __cil_tmp41 = (int )__cil_tmp40;
15358#line 2068
15359        __cil_tmp42 = __cil_tmp41 & 16;
15360#line 2068
15361        if (__cil_tmp42 != 0) {
15362#line 2069
15363          __cil_tmp43 = info->port.tty;
15364#line 2069
15365          __cil_tmp43->hw_stopped = (unsigned char)0;
15366#line 2070
15367          __cil_tmp44 = info->pending_bh;
15368#line 2070
15369          info->pending_bh = __cil_tmp44 | 2U;
15370#line 2071
15371          return;
15372        } else {
15373          {
15374#line 2074
15375          __cil_tmp45 = info->signals;
15376#line 2074
15377          __cil_tmp46 = (int )__cil_tmp45;
15378#line 2074
15379          __cil_tmp47 = __cil_tmp46 & 16;
15380#line 2074
15381          if (__cil_tmp47 == 0) {
15382#line 2075
15383            __cil_tmp48 = info->port.tty;
15384#line 2075
15385            __cil_tmp48->hw_stopped = (unsigned char)1;
15386          } else {
15387
15388          }
15389          }
15390        }
15391        }
15392      } else {
15393
15394      }
15395      }
15396    } else {
15397
15398    }
15399    }
15400  } else {
15401
15402  }
15403  }
15404#line 2076
15405  return;
15406}
15407}
15408#line 2081 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
15409static void dcd_change(struct slgt_info *info , unsigned short status ) 
15410{ __u16 tmp ;
15411  int tmp___0 ;
15412  int __cil_tmp5 ;
15413  int __cil_tmp6 ;
15414  unsigned char __cil_tmp7 ;
15415  unsigned int __cil_tmp8 ;
15416  unsigned int __cil_tmp9 ;
15417  int __cil_tmp10 ;
15418  unsigned char __cil_tmp11 ;
15419  unsigned int __cil_tmp12 ;
15420  unsigned int __cil_tmp13 ;
15421  int __cil_tmp14 ;
15422  char (*__cil_tmp15)[25U] ;
15423  char *__cil_tmp16 ;
15424  unsigned char __cil_tmp17 ;
15425  int __cil_tmp18 ;
15426  int __cil_tmp19 ;
15427  int __cil_tmp20 ;
15428  int __cil_tmp21 ;
15429  __u16 __cil_tmp22 ;
15430  __u32 __cil_tmp23 ;
15431  int __cil_tmp24 ;
15432  unsigned char __cil_tmp25 ;
15433  int __cil_tmp26 ;
15434  struct net_device *__cil_tmp27 ;
15435  struct net_device *__cil_tmp28 ;
15436  wait_queue_head_t *__cil_tmp29 ;
15437  void *__cil_tmp30 ;
15438  wait_queue_head_t *__cil_tmp31 ;
15439  void *__cil_tmp32 ;
15440  u32 __cil_tmp33 ;
15441  unsigned long __cil_tmp34 ;
15442  unsigned long __cil_tmp35 ;
15443  unsigned char __cil_tmp36 ;
15444  int __cil_tmp37 ;
15445  wait_queue_head_t *__cil_tmp38 ;
15446  void *__cil_tmp39 ;
15447  struct tty_struct *__cil_tmp40 ;
15448  unsigned long __cil_tmp41 ;
15449  struct tty_struct *__cil_tmp42 ;
15450  unsigned long __cil_tmp43 ;
15451  struct tty_struct *__cil_tmp44 ;
15452
15453  {
15454  {
15455#line 2083
15456  __cil_tmp5 = (int )status;
15457#line 2083
15458  __cil_tmp6 = __cil_tmp5 & 2;
15459#line 2083
15460  if (__cil_tmp6 != 0) {
15461#line 2084
15462    __cil_tmp7 = info->signals;
15463#line 2084
15464    __cil_tmp8 = (unsigned int )__cil_tmp7;
15465#line 2084
15466    __cil_tmp9 = __cil_tmp8 | 1U;
15467#line 2084
15468    info->signals = (unsigned char )__cil_tmp9;
15469#line 2085
15470    __cil_tmp10 = info->input_signal_events.dcd_up;
15471#line 2085
15472    info->input_signal_events.dcd_up = __cil_tmp10 + 1;
15473  } else {
15474#line 2087
15475    __cil_tmp11 = info->signals;
15476#line 2087
15477    __cil_tmp12 = (unsigned int )__cil_tmp11;
15478#line 2087
15479    __cil_tmp13 = __cil_tmp12 & 254U;
15480#line 2087
15481    info->signals = (unsigned char )__cil_tmp13;
15482#line 2088
15483    __cil_tmp14 = info->input_signal_events.dcd_down;
15484#line 2088
15485    info->input_signal_events.dcd_down = __cil_tmp14 + 1;
15486  }
15487  }
15488#line 2090
15489  if (debug_level > 4) {
15490    {
15491#line 2090
15492    __cil_tmp15 = & info->device_name;
15493#line 2090
15494    __cil_tmp16 = (char *)__cil_tmp15;
15495#line 2090
15496    __cil_tmp17 = info->signals;
15497#line 2090
15498    __cil_tmp18 = (int )__cil_tmp17;
15499#line 2090
15500    printk("dcd_change %s signals=%04X\n", __cil_tmp16, __cil_tmp18);
15501    }
15502  } else {
15503
15504  }
15505#line 2091
15506  tmp___0 = info->dcd_chkcount;
15507#line 2091
15508  __cil_tmp19 = info->dcd_chkcount;
15509#line 2091
15510  info->dcd_chkcount = __cil_tmp19 + 1;
15511#line 2091
15512  if (tmp___0 == 100) {
15513    {
15514#line 2092
15515    tmp = rd_reg16(info, 140U);
15516#line 2092
15517    __cil_tmp20 = (int )tmp;
15518#line 2092
15519    __cil_tmp21 = __cil_tmp20 & 65503;
15520#line 2092
15521    __cil_tmp22 = (__u16 )__cil_tmp21;
15522#line 2092
15523    wr_reg16(info, 140U, __cil_tmp22);
15524    }
15525#line 2093
15526    return;
15527  } else {
15528
15529  }
15530#line 2095
15531  __cil_tmp23 = info->icount.dcd;
15532#line 2095
15533  info->icount.dcd = __cil_tmp23 + 1U;
15534  {
15535#line 2097
15536  __cil_tmp24 = info->netcount;
15537#line 2097
15538  if (__cil_tmp24 != 0) {
15539    {
15540#line 2098
15541    __cil_tmp25 = info->signals;
15542#line 2098
15543    __cil_tmp26 = (int )__cil_tmp25;
15544#line 2098
15545    if (__cil_tmp26 & 1) {
15546      {
15547#line 2099
15548      __cil_tmp27 = info->netdev;
15549#line 2099
15550      netif_carrier_on(__cil_tmp27);
15551      }
15552    } else {
15553      {
15554#line 2101
15555      __cil_tmp28 = info->netdev;
15556#line 2101
15557      netif_carrier_off(__cil_tmp28);
15558      }
15559    }
15560    }
15561  } else {
15562
15563  }
15564  }
15565  {
15566#line 2104
15567  __cil_tmp29 = & info->status_event_wait_q;
15568#line 2104
15569  __cil_tmp30 = (void *)0;
15570#line 2104
15571  __wake_up(__cil_tmp29, 1U, 1, __cil_tmp30);
15572#line 2105
15573  __cil_tmp31 = & info->event_wait_q;
15574#line 2105
15575  __cil_tmp32 = (void *)0;
15576#line 2105
15577  __wake_up(__cil_tmp31, 1U, 1, __cil_tmp32);
15578#line 2106
15579  __cil_tmp33 = info->pending_bh;
15580#line 2106
15581  info->pending_bh = __cil_tmp33 | 4U;
15582  }
15583  {
15584#line 2108
15585  __cil_tmp34 = info->port.flags;
15586#line 2108
15587  __cil_tmp35 = __cil_tmp34 & 33554432UL;
15588#line 2108
15589  if (__cil_tmp35 != 0UL) {
15590    {
15591#line 2109
15592    __cil_tmp36 = info->signals;
15593#line 2109
15594    __cil_tmp37 = (int )__cil_tmp36;
15595#line 2109
15596    if (__cil_tmp37 & 1) {
15597      {
15598#line 2110
15599      __cil_tmp38 = & info->port.open_wait;
15600#line 2110
15601      __cil_tmp39 = (void *)0;
15602#line 2110
15603      __wake_up(__cil_tmp38, 1U, 1, __cil_tmp39);
15604      }
15605    } else {
15606      {
15607#line 2112
15608      __cil_tmp40 = (struct tty_struct *)0;
15609#line 2112
15610      __cil_tmp41 = (unsigned long )__cil_tmp40;
15611#line 2112
15612      __cil_tmp42 = info->port.tty;
15613#line 2112
15614      __cil_tmp43 = (unsigned long )__cil_tmp42;
15615#line 2112
15616      if (__cil_tmp43 != __cil_tmp41) {
15617        {
15618#line 2113
15619        __cil_tmp44 = info->port.tty;
15620#line 2113
15621        tty_hangup(__cil_tmp44);
15622        }
15623      } else {
15624
15625      }
15626      }
15627    }
15628    }
15629  } else {
15630
15631  }
15632  }
15633#line 2114
15634  return;
15635}
15636}
15637#line 2118 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
15638static void ri_change(struct slgt_info *info , unsigned short status ) 
15639{ __u16 tmp ;
15640  int tmp___0 ;
15641  int __cil_tmp5 ;
15642  unsigned char __cil_tmp6 ;
15643  unsigned int __cil_tmp7 ;
15644  unsigned int __cil_tmp8 ;
15645  int __cil_tmp9 ;
15646  unsigned char __cil_tmp10 ;
15647  unsigned int __cil_tmp11 ;
15648  unsigned int __cil_tmp12 ;
15649  int __cil_tmp13 ;
15650  char (*__cil_tmp14)[25U] ;
15651  char *__cil_tmp15 ;
15652  unsigned char __cil_tmp16 ;
15653  int __cil_tmp17 ;
15654  int __cil_tmp18 ;
15655  int __cil_tmp19 ;
15656  int __cil_tmp20 ;
15657  __u16 __cil_tmp21 ;
15658  __u32 __cil_tmp22 ;
15659  wait_queue_head_t *__cil_tmp23 ;
15660  void *__cil_tmp24 ;
15661  wait_queue_head_t *__cil_tmp25 ;
15662  void *__cil_tmp26 ;
15663  u32 __cil_tmp27 ;
15664
15665  {
15666  {
15667#line 2120
15668  __cil_tmp5 = (int )status;
15669#line 2120
15670  if (__cil_tmp5 & 1) {
15671#line 2121
15672    __cil_tmp6 = info->signals;
15673#line 2121
15674    __cil_tmp7 = (unsigned int )__cil_tmp6;
15675#line 2121
15676    __cil_tmp8 = __cil_tmp7 | 4U;
15677#line 2121
15678    info->signals = (unsigned char )__cil_tmp8;
15679#line 2122
15680    __cil_tmp9 = info->input_signal_events.ri_up;
15681#line 2122
15682    info->input_signal_events.ri_up = __cil_tmp9 + 1;
15683  } else {
15684#line 2124
15685    __cil_tmp10 = info->signals;
15686#line 2124
15687    __cil_tmp11 = (unsigned int )__cil_tmp10;
15688#line 2124
15689    __cil_tmp12 = __cil_tmp11 & 251U;
15690#line 2124
15691    info->signals = (unsigned char )__cil_tmp12;
15692#line 2125
15693    __cil_tmp13 = info->input_signal_events.ri_down;
15694#line 2125
15695    info->input_signal_events.ri_down = __cil_tmp13 + 1;
15696  }
15697  }
15698#line 2127
15699  if (debug_level > 4) {
15700    {
15701#line 2127
15702    __cil_tmp14 = & info->device_name;
15703#line 2127
15704    __cil_tmp15 = (char *)__cil_tmp14;
15705#line 2127
15706    __cil_tmp16 = info->signals;
15707#line 2127
15708    __cil_tmp17 = (int )__cil_tmp16;
15709#line 2127
15710    printk("ri_change %s signals=%04X\n", __cil_tmp15, __cil_tmp17);
15711    }
15712  } else {
15713
15714  }
15715#line 2128
15716  tmp___0 = info->ri_chkcount;
15717#line 2128
15718  __cil_tmp18 = info->ri_chkcount;
15719#line 2128
15720  info->ri_chkcount = __cil_tmp18 + 1;
15721#line 2128
15722  if (tmp___0 == 100) {
15723    {
15724#line 2129
15725    tmp = rd_reg16(info, 140U);
15726#line 2129
15727    __cil_tmp19 = (int )tmp;
15728#line 2129
15729    __cil_tmp20 = __cil_tmp19 & 65519;
15730#line 2129
15731    __cil_tmp21 = (__u16 )__cil_tmp20;
15732#line 2129
15733    wr_reg16(info, 140U, __cil_tmp21);
15734    }
15735#line 2130
15736    return;
15737  } else {
15738
15739  }
15740  {
15741#line 2132
15742  __cil_tmp22 = info->icount.rng;
15743#line 2132
15744  info->icount.rng = __cil_tmp22 + 1U;
15745#line 2133
15746  __cil_tmp23 = & info->status_event_wait_q;
15747#line 2133
15748  __cil_tmp24 = (void *)0;
15749#line 2133
15750  __wake_up(__cil_tmp23, 1U, 1, __cil_tmp24);
15751#line 2134
15752  __cil_tmp25 = & info->event_wait_q;
15753#line 2134
15754  __cil_tmp26 = (void *)0;
15755#line 2134
15756  __wake_up(__cil_tmp25, 1U, 1, __cil_tmp26);
15757#line 2135
15758  __cil_tmp27 = info->pending_bh;
15759#line 2135
15760  info->pending_bh = __cil_tmp27 | 4U;
15761  }
15762#line 2136
15763  return;
15764}
15765}
15766#line 2138 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
15767static void isr_rxdata(struct slgt_info *info ) 
15768{ unsigned int count ;
15769  unsigned int i ;
15770  unsigned short reg ;
15771  unsigned int tmp ;
15772  unsigned int tmp___0 ;
15773  __u16 tmp___1 ;
15774  unsigned short __cil_tmp8 ;
15775  char (*__cil_tmp9)[25U] ;
15776  char *__cil_tmp10 ;
15777  int __cil_tmp11 ;
15778  unsigned long __cil_tmp12 ;
15779  struct slgt_desc *__cil_tmp13 ;
15780  struct slgt_desc *__cil_tmp14 ;
15781  __le16 __cil_tmp15 ;
15782  short __cil_tmp16 ;
15783  int __cil_tmp17 ;
15784  unsigned long __cil_tmp18 ;
15785  unsigned long __cil_tmp19 ;
15786  struct slgt_desc *__cil_tmp20 ;
15787  struct slgt_desc *__cil_tmp21 ;
15788  char *__cil_tmp22 ;
15789  char *__cil_tmp23 ;
15790  unsigned long __cil_tmp24 ;
15791  unsigned long __cil_tmp25 ;
15792  unsigned long __cil_tmp26 ;
15793  struct slgt_desc *__cil_tmp27 ;
15794  struct slgt_desc *__cil_tmp28 ;
15795  char *__cil_tmp29 ;
15796  char *__cil_tmp30 ;
15797  int __cil_tmp31 ;
15798  int __cil_tmp32 ;
15799  unsigned int __cil_tmp33 ;
15800  int __cil_tmp34 ;
15801  int __cil_tmp35 ;
15802  unsigned long __cil_tmp36 ;
15803  struct slgt_desc *__cil_tmp37 ;
15804  struct slgt_desc *__cil_tmp38 ;
15805  unsigned long __cil_tmp39 ;
15806  struct slgt_desc *__cil_tmp40 ;
15807  struct slgt_desc *__cil_tmp41 ;
15808  int __cil_tmp42 ;
15809  int __cil_tmp43 ;
15810  unsigned int __cil_tmp44 ;
15811  unsigned int __cil_tmp45 ;
15812  unsigned int __cil_tmp46 ;
15813  u32 __cil_tmp47 ;
15814  int __cil_tmp48 ;
15815  int __cil_tmp49 ;
15816
15817  {
15818#line 2140
15819  __cil_tmp8 = info->rbuf_fill_count;
15820#line 2140
15821  count = (unsigned int )__cil_tmp8;
15822#line 2141
15823  i = info->rbuf_fill_index;
15824#line 2144
15825  goto ldv_36907;
15826  ldv_36908: 
15827  {
15828#line 2145
15829  reg = rd_reg16(info, 128U);
15830  }
15831#line 2146
15832  if (debug_level > 4) {
15833    {
15834#line 2146
15835    __cil_tmp9 = & info->device_name;
15836#line 2146
15837    __cil_tmp10 = (char *)__cil_tmp9;
15838#line 2146
15839    __cil_tmp11 = (int )reg;
15840#line 2146
15841    printk("isr_rxdata %s RDR=%04X\n", __cil_tmp10, __cil_tmp11);
15842    }
15843  } else {
15844
15845  }
15846  {
15847#line 2147
15848  __cil_tmp12 = (unsigned long )i;
15849#line 2147
15850  __cil_tmp13 = info->rbufs;
15851#line 2147
15852  __cil_tmp14 = __cil_tmp13 + __cil_tmp12;
15853#line 2147
15854  __cil_tmp15 = __cil_tmp14->status;
15855#line 2147
15856  __cil_tmp16 = (short )__cil_tmp15;
15857#line 2147
15858  __cil_tmp17 = (int )__cil_tmp16;
15859#line 2147
15860  if (__cil_tmp17 < 0) {
15861    {
15862#line 2149
15863    rx_stop(info);
15864#line 2150
15865    info->rx_restart = (bool )1;
15866    }
15867#line 2151
15868    goto ldv_36907;
15869  } else {
15870
15871  }
15872  }
15873#line 2153
15874  tmp = count;
15875#line 2153
15876  count = count + 1U;
15877#line 2153
15878  __cil_tmp18 = (unsigned long )tmp;
15879#line 2153
15880  __cil_tmp19 = (unsigned long )i;
15881#line 2153
15882  __cil_tmp20 = info->rbufs;
15883#line 2153
15884  __cil_tmp21 = __cil_tmp20 + __cil_tmp19;
15885#line 2153
15886  __cil_tmp22 = __cil_tmp21->buf;
15887#line 2153
15888  __cil_tmp23 = __cil_tmp22 + __cil_tmp18;
15889#line 2153
15890  *__cil_tmp23 = (char )reg;
15891  {
15892#line 2155
15893  __cil_tmp24 = info->params.mode;
15894#line 2155
15895  if (__cil_tmp24 == 1UL) {
15896#line 2156
15897    tmp___0 = count;
15898#line 2156
15899    count = count + 1U;
15900#line 2156
15901    __cil_tmp25 = (unsigned long )tmp___0;
15902#line 2156
15903    __cil_tmp26 = (unsigned long )i;
15904#line 2156
15905    __cil_tmp27 = info->rbufs;
15906#line 2156
15907    __cil_tmp28 = __cil_tmp27 + __cil_tmp26;
15908#line 2156
15909    __cil_tmp29 = __cil_tmp28->buf;
15910#line 2156
15911    __cil_tmp30 = __cil_tmp29 + __cil_tmp25;
15912#line 2156
15913    __cil_tmp31 = (int )reg;
15914#line 2156
15915    __cil_tmp32 = __cil_tmp31 >> 8;
15916#line 2156
15917    *__cil_tmp30 = (char )__cil_tmp32;
15918  } else {
15919
15920  }
15921  }
15922  {
15923#line 2157
15924  __cil_tmp33 = info->rbuf_fill_level;
15925#line 2157
15926  if (__cil_tmp33 == count) {
15927#line 2157
15928    goto _L;
15929  } else {
15930    {
15931#line 2157
15932    __cil_tmp34 = (int )reg;
15933#line 2157
15934    __cil_tmp35 = __cil_tmp34 & 1024;
15935#line 2157
15936    if (__cil_tmp35 != 0) {
15937      _L: 
15938#line 2159
15939      __cil_tmp36 = (unsigned long )i;
15940#line 2159
15941      __cil_tmp37 = info->rbufs;
15942#line 2159
15943      __cil_tmp38 = __cil_tmp37 + __cil_tmp36;
15944#line 2159
15945      __cil_tmp38->count = (unsigned short )count;
15946#line 2160
15947      __cil_tmp39 = (unsigned long )i;
15948#line 2160
15949      __cil_tmp40 = info->rbufs;
15950#line 2160
15951      __cil_tmp41 = __cil_tmp40 + __cil_tmp39;
15952#line 2160
15953      __cil_tmp42 = (int )reg;
15954#line 2160
15955      __cil_tmp43 = __cil_tmp42 >> 8;
15956#line 2160
15957      __cil_tmp44 = (unsigned int )__cil_tmp43;
15958#line 2160
15959      __cil_tmp45 = __cil_tmp44 | 32768U;
15960#line 2160
15961      __cil_tmp41->status = (__le16 )__cil_tmp45;
15962#line 2161
15963      count = 0U;
15964#line 2161
15965      info->rbuf_fill_count = (unsigned short)0;
15966#line 2162
15967      i = i + 1U;
15968      {
15969#line 2162
15970      __cil_tmp46 = info->rbuf_count;
15971#line 2162
15972      if (i == __cil_tmp46) {
15973#line 2163
15974        i = 0U;
15975      } else {
15976
15977      }
15978      }
15979#line 2164
15980      __cil_tmp47 = info->pending_bh;
15981#line 2164
15982      info->pending_bh = __cil_tmp47 | 1U;
15983    } else {
15984
15985    }
15986    }
15987  }
15988  }
15989  ldv_36907: 
15990  {
15991#line 2144
15992  tmp___1 = rd_reg16(info, 142U);
15993  }
15994  {
15995#line 2144
15996  __cil_tmp48 = (int )tmp___1;
15997#line 2144
15998  __cil_tmp49 = __cil_tmp48 & 1024;
15999#line 2144
16000  if (__cil_tmp49 != 0) {
16001#line 2145
16002    goto ldv_36908;
16003  } else {
16004#line 2147
16005    goto ldv_36909;
16006  }
16007  }
16008  ldv_36909: 
16009#line 2168
16010  info->rbuf_fill_index = i;
16011#line 2169
16012  info->rbuf_fill_count = (unsigned short )count;
16013#line 2170
16014  return;
16015}
16016}
16017#line 2172 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
16018static void isr_serial(struct slgt_info *info ) 
16019{ unsigned short status ;
16020  __u16 tmp ;
16021  char (*__cil_tmp4)[25U] ;
16022  char *__cil_tmp5 ;
16023  int __cil_tmp6 ;
16024  int __cil_tmp7 ;
16025  __u16 __cil_tmp8 ;
16026  unsigned long __cil_tmp9 ;
16027  int __cil_tmp10 ;
16028  int __cil_tmp11 ;
16029  bool __cil_tmp12 ;
16030  int __cil_tmp13 ;
16031  unsigned short __cil_tmp14 ;
16032  unsigned int __cil_tmp15 ;
16033  int __cil_tmp16 ;
16034  int __cil_tmp17 ;
16035  int __cil_tmp18 ;
16036  int __cil_tmp19 ;
16037  int __cil_tmp20 ;
16038  int __cil_tmp21 ;
16039  __u32 __cil_tmp22 ;
16040  struct tty_struct *__cil_tmp23 ;
16041  unsigned long __cil_tmp24 ;
16042  struct tty_struct *__cil_tmp25 ;
16043  unsigned long __cil_tmp26 ;
16044  unsigned int __cil_tmp27 ;
16045  unsigned int __cil_tmp28 ;
16046  unsigned int __cil_tmp29 ;
16047  unsigned int __cil_tmp30 ;
16048  unsigned int __cil_tmp31 ;
16049  struct tty_struct *__cil_tmp32 ;
16050  unsigned long __cil_tmp33 ;
16051  unsigned long __cil_tmp34 ;
16052  struct tty_struct *__cil_tmp35 ;
16053  int __cil_tmp36 ;
16054  int __cil_tmp37 ;
16055  int __cil_tmp38 ;
16056  unsigned short __cil_tmp39 ;
16057  unsigned int __cil_tmp40 ;
16058  int __cil_tmp41 ;
16059  int __cil_tmp42 ;
16060  int __cil_tmp43 ;
16061  int __cil_tmp44 ;
16062  int __cil_tmp45 ;
16063  int __cil_tmp46 ;
16064  __u32 __cil_tmp47 ;
16065  __u32 __cil_tmp48 ;
16066  wait_queue_head_t *__cil_tmp49 ;
16067  void *__cil_tmp50 ;
16068  int __cil_tmp51 ;
16069  int __cil_tmp52 ;
16070  int __cil_tmp53 ;
16071  int __cil_tmp54 ;
16072  int __cil_tmp55 ;
16073  unsigned short __cil_tmp56 ;
16074  int __cil_tmp57 ;
16075  int __cil_tmp58 ;
16076  int __cil_tmp59 ;
16077  unsigned short __cil_tmp60 ;
16078  int __cil_tmp61 ;
16079  int __cil_tmp62 ;
16080  int __cil_tmp63 ;
16081  unsigned short __cil_tmp64 ;
16082  int __cil_tmp65 ;
16083  int __cil_tmp66 ;
16084  int __cil_tmp67 ;
16085  unsigned short __cil_tmp68 ;
16086
16087  {
16088  {
16089#line 2174
16090  tmp = rd_reg16(info, 142U);
16091#line 2174
16092  status = tmp;
16093  }
16094#line 2176
16095  if (debug_level > 4) {
16096    {
16097#line 2176
16098    __cil_tmp4 = & info->device_name;
16099#line 2176
16100    __cil_tmp5 = (char *)__cil_tmp4;
16101#line 2176
16102    __cil_tmp6 = (int )status;
16103#line 2176
16104    printk("%s isr_serial status=%04X\n", __cil_tmp5, __cil_tmp6);
16105    }
16106  } else {
16107
16108  }
16109  {
16110#line 2178
16111  __cil_tmp7 = (int )status;
16112#line 2178
16113  __cil_tmp8 = (__u16 )__cil_tmp7;
16114#line 2178
16115  wr_reg16(info, 142U, __cil_tmp8);
16116#line 2180
16117  info->irq_occurred = (bool )1;
16118  }
16119  {
16120#line 2182
16121  __cil_tmp9 = info->params.mode;
16122#line 2182
16123  if (__cil_tmp9 == 1UL) {
16124    {
16125#line 2183
16126    __cil_tmp10 = (int )status;
16127#line 2183
16128    __cil_tmp11 = __cil_tmp10 & 4096;
16129#line 2183
16130    if (__cil_tmp11 != 0) {
16131      {
16132#line 2184
16133      __cil_tmp12 = info->tx_active;
16134#line 2184
16135      if ((int )__cil_tmp12) {
16136        {
16137#line 2185
16138        __cil_tmp13 = (int )status;
16139#line 2185
16140        __cil_tmp14 = (unsigned short )__cil_tmp13;
16141#line 2185
16142        isr_txeom(info, __cil_tmp14);
16143        }
16144      } else {
16145
16146      }
16147      }
16148    } else {
16149
16150    }
16151    }
16152    {
16153#line 2187
16154    __cil_tmp15 = info->rx_pio;
16155#line 2187
16156    if (__cil_tmp15 != 0U) {
16157      {
16158#line 2187
16159      __cil_tmp16 = (int )status;
16160#line 2187
16161      __cil_tmp17 = __cil_tmp16 & 1024;
16162#line 2187
16163      if (__cil_tmp17 != 0) {
16164        {
16165#line 2188
16166        isr_rxdata(info);
16167        }
16168      } else {
16169
16170      }
16171      }
16172    } else {
16173
16174    }
16175    }
16176    {
16177#line 2189
16178    __cil_tmp18 = (int )status;
16179#line 2189
16180    __cil_tmp19 = __cil_tmp18 & 512;
16181#line 2189
16182    if (__cil_tmp19 != 0) {
16183      {
16184#line 2189
16185      __cil_tmp20 = (int )status;
16186#line 2189
16187      __cil_tmp21 = __cil_tmp20 & 16384;
16188#line 2189
16189      if (__cil_tmp21 != 0) {
16190#line 2190
16191        __cil_tmp22 = info->icount.brk;
16192#line 2190
16193        info->icount.brk = __cil_tmp22 + 1U;
16194        {
16195#line 2192
16196        __cil_tmp23 = (struct tty_struct *)0;
16197#line 2192
16198        __cil_tmp24 = (unsigned long )__cil_tmp23;
16199#line 2192
16200        __cil_tmp25 = info->port.tty;
16201#line 2192
16202        __cil_tmp26 = (unsigned long )__cil_tmp25;
16203#line 2192
16204        if (__cil_tmp26 != __cil_tmp24) {
16205          {
16206#line 2193
16207          __cil_tmp27 = info->ignore_status_mask;
16208#line 2193
16209          __cil_tmp28 = (unsigned int )status;
16210#line 2193
16211          __cil_tmp29 = __cil_tmp28 & __cil_tmp27;
16212#line 2193
16213          if (__cil_tmp29 == 0U) {
16214            {
16215#line 2194
16216            __cil_tmp30 = info->read_status_mask;
16217#line 2194
16218            __cil_tmp31 = __cil_tmp30 & 16384U;
16219#line 2194
16220            if (__cil_tmp31 != 0U) {
16221              {
16222#line 2195
16223              __cil_tmp32 = info->port.tty;
16224#line 2195
16225              tty_insert_flip_char(__cil_tmp32, (unsigned char)0, (char)1);
16226              }
16227              {
16228#line 2196
16229              __cil_tmp33 = info->port.flags;
16230#line 2196
16231              __cil_tmp34 = __cil_tmp33 & 4UL;
16232#line 2196
16233              if (__cil_tmp34 != 0UL) {
16234                {
16235#line 2197
16236                __cil_tmp35 = info->port.tty;
16237#line 2197
16238                do_SAK(__cil_tmp35);
16239                }
16240              } else {
16241
16242              }
16243              }
16244            } else {
16245
16246            }
16247            }
16248          } else {
16249
16250          }
16251          }
16252        } else {
16253
16254        }
16255        }
16256      } else {
16257
16258      }
16259      }
16260    } else {
16261
16262    }
16263    }
16264  } else {
16265    {
16266#line 2203
16267    __cil_tmp36 = (int )status;
16268#line 2203
16269    __cil_tmp37 = __cil_tmp36 & 6144;
16270#line 2203
16271    if (__cil_tmp37 != 0) {
16272      {
16273#line 2204
16274      __cil_tmp38 = (int )status;
16275#line 2204
16276      __cil_tmp39 = (unsigned short )__cil_tmp38;
16277#line 2204
16278      isr_txeom(info, __cil_tmp39);
16279      }
16280    } else {
16281
16282    }
16283    }
16284    {
16285#line 2205
16286    __cil_tmp40 = info->rx_pio;
16287#line 2205
16288    if (__cil_tmp40 != 0U) {
16289      {
16290#line 2205
16291      __cil_tmp41 = (int )status;
16292#line 2205
16293      __cil_tmp42 = __cil_tmp41 & 1024;
16294#line 2205
16295      if (__cil_tmp42 != 0) {
16296        {
16297#line 2206
16298        isr_rxdata(info);
16299        }
16300      } else {
16301
16302      }
16303      }
16304    } else {
16305
16306    }
16307    }
16308    {
16309#line 2207
16310    __cil_tmp43 = (int )status;
16311#line 2207
16312    __cil_tmp44 = __cil_tmp43 & 512;
16313#line 2207
16314    if (__cil_tmp44 != 0) {
16315      {
16316#line 2208
16317      __cil_tmp45 = (int )status;
16318#line 2208
16319      __cil_tmp46 = __cil_tmp45 & 16384;
16320#line 2208
16321      if (__cil_tmp46 != 0) {
16322#line 2209
16323        __cil_tmp47 = info->icount.rxidle;
16324#line 2209
16325        info->icount.rxidle = __cil_tmp47 + 1U;
16326      } else {
16327#line 2211
16328        __cil_tmp48 = info->icount.exithunt;
16329#line 2211
16330        info->icount.exithunt = __cil_tmp48 + 1U;
16331      }
16332      }
16333      {
16334#line 2212
16335      __cil_tmp49 = & info->event_wait_q;
16336#line 2212
16337      __cil_tmp50 = (void *)0;
16338#line 2212
16339      __wake_up(__cil_tmp49, 1U, 1, __cil_tmp50);
16340      }
16341    } else {
16342
16343    }
16344    }
16345    {
16346#line 2215
16347    __cil_tmp51 = (int )status;
16348#line 2215
16349    __cil_tmp52 = __cil_tmp51 & 256;
16350#line 2215
16351    if (__cil_tmp52 != 0) {
16352      {
16353#line 2216
16354      rx_start(info);
16355      }
16356    } else {
16357
16358    }
16359    }
16360  }
16361  }
16362  {
16363#line 2219
16364  __cil_tmp53 = (int )status;
16365#line 2219
16366  __cil_tmp54 = __cil_tmp53 & 128;
16367#line 2219
16368  if (__cil_tmp54 != 0) {
16369    {
16370#line 2220
16371    __cil_tmp55 = (int )status;
16372#line 2220
16373    __cil_tmp56 = (unsigned short )__cil_tmp55;
16374#line 2220
16375    dsr_change(info, __cil_tmp56);
16376    }
16377  } else {
16378
16379  }
16380  }
16381  {
16382#line 2221
16383  __cil_tmp57 = (int )status;
16384#line 2221
16385  __cil_tmp58 = __cil_tmp57 & 64;
16386#line 2221
16387  if (__cil_tmp58 != 0) {
16388    {
16389#line 2222
16390    __cil_tmp59 = (int )status;
16391#line 2222
16392    __cil_tmp60 = (unsigned short )__cil_tmp59;
16393#line 2222
16394    cts_change(info, __cil_tmp60);
16395    }
16396  } else {
16397
16398  }
16399  }
16400  {
16401#line 2223
16402  __cil_tmp61 = (int )status;
16403#line 2223
16404  __cil_tmp62 = __cil_tmp61 & 32;
16405#line 2223
16406  if (__cil_tmp62 != 0) {
16407    {
16408#line 2224
16409    __cil_tmp63 = (int )status;
16410#line 2224
16411    __cil_tmp64 = (unsigned short )__cil_tmp63;
16412#line 2224
16413    dcd_change(info, __cil_tmp64);
16414    }
16415  } else {
16416
16417  }
16418  }
16419  {
16420#line 2225
16421  __cil_tmp65 = (int )status;
16422#line 2225
16423  __cil_tmp66 = __cil_tmp65 & 16;
16424#line 2225
16425  if (__cil_tmp66 != 0) {
16426    {
16427#line 2226
16428    __cil_tmp67 = (int )status;
16429#line 2226
16430    __cil_tmp68 = (unsigned short )__cil_tmp67;
16431#line 2226
16432    ri_change(info, __cil_tmp68);
16433    }
16434  } else {
16435
16436  }
16437  }
16438#line 2227
16439  return;
16440}
16441}
16442#line 2229 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
16443static void isr_rdma(struct slgt_info *info ) 
16444{ unsigned int status ;
16445  __u32 tmp ;
16446  char (*__cil_tmp4)[25U] ;
16447  char *__cil_tmp5 ;
16448  unsigned int __cil_tmp6 ;
16449  char (*__cil_tmp7)[25U] ;
16450  char *__cil_tmp8 ;
16451  u32 __cil_tmp9 ;
16452
16453  {
16454  {
16455#line 2231
16456  tmp = rd_reg32(info, 144U);
16457#line 2231
16458  status = tmp;
16459  }
16460#line 2233
16461  if (debug_level > 4) {
16462    {
16463#line 2233
16464    __cil_tmp4 = & info->device_name;
16465#line 2233
16466    __cil_tmp5 = (char *)__cil_tmp4;
16467#line 2233
16468    printk("%s isr_rdma status=%08x\n", __cil_tmp5, status);
16469    }
16470  } else {
16471
16472  }
16473  {
16474#line 2246
16475  wr_reg32(info, 144U, status);
16476  }
16477  {
16478#line 2248
16479  __cil_tmp6 = status & 48U;
16480#line 2248
16481  if (__cil_tmp6 != 0U) {
16482#line 2249
16483    if (debug_level > 4) {
16484      {
16485#line 2249
16486      __cil_tmp7 = & info->device_name;
16487#line 2249
16488      __cil_tmp8 = (char *)__cil_tmp7;
16489#line 2249
16490      printk("%s isr_rdma rx_restart=1\n", __cil_tmp8);
16491      }
16492    } else {
16493
16494    }
16495#line 2250
16496    info->rx_restart = (bool )1;
16497  } else {
16498
16499  }
16500  }
16501#line 2252
16502  __cil_tmp9 = info->pending_bh;
16503#line 2252
16504  info->pending_bh = __cil_tmp9 | 1U;
16505#line 2253
16506  return;
16507}
16508}
16509#line 2255 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
16510static void isr_tdma(struct slgt_info *info ) 
16511{ unsigned int status ;
16512  __u32 tmp ;
16513  char (*__cil_tmp4)[25U] ;
16514  char *__cil_tmp5 ;
16515  unsigned int __cil_tmp6 ;
16516  u32 __cil_tmp7 ;
16517
16518  {
16519  {
16520#line 2257
16521  tmp = rd_reg32(info, 148U);
16522#line 2257
16523  status = tmp;
16524  }
16525#line 2259
16526  if (debug_level > 4) {
16527    {
16528#line 2259
16529    __cil_tmp4 = & info->device_name;
16530#line 2259
16531    __cil_tmp5 = (char *)__cil_tmp4;
16532#line 2259
16533    printk("%s isr_tdma status=%08x\n", __cil_tmp5, status);
16534    }
16535  } else {
16536
16537  }
16538  {
16539#line 2271
16540  wr_reg32(info, 148U, status);
16541  }
16542  {
16543#line 2273
16544  __cil_tmp6 = status & 56U;
16545#line 2273
16546  if (__cil_tmp6 != 0U) {
16547#line 2276
16548    __cil_tmp7 = info->pending_bh;
16549#line 2276
16550    info->pending_bh = __cil_tmp7 | 2U;
16551  } else {
16552
16553  }
16554  }
16555#line 2277
16556  return;
16557}
16558}
16559#line 2286 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
16560static bool unsent_tbufs(struct slgt_info *info ) 
16561{ unsigned int i ;
16562  bool rc ;
16563  unsigned int __cil_tmp4 ;
16564  unsigned long __cil_tmp5 ;
16565  struct slgt_desc *__cil_tmp6 ;
16566  struct slgt_desc *__cil_tmp7 ;
16567  __le16 __cil_tmp8 ;
16568  unsigned int __cil_tmp9 ;
16569  unsigned int __cil_tmp10 ;
16570
16571  {
16572#line 2288
16573  i = info->tbuf_current;
16574#line 2289
16575  rc = (bool )0;
16576  ldv_36928: ;
16577#line 2297
16578  if (i != 0U) {
16579#line 2298
16580    i = i - 1U;
16581  } else {
16582#line 2300
16583    __cil_tmp4 = info->tbuf_count;
16584#line 2300
16585    i = __cil_tmp4 - 1U;
16586  }
16587  {
16588#line 2301
16589  __cil_tmp5 = (unsigned long )i;
16590#line 2301
16591  __cil_tmp6 = info->tbufs;
16592#line 2301
16593  __cil_tmp7 = __cil_tmp6 + __cil_tmp5;
16594#line 2301
16595  __cil_tmp8 = __cil_tmp7->count;
16596#line 2301
16597  __cil_tmp9 = (unsigned int )__cil_tmp8;
16598#line 2301
16599  if (__cil_tmp9 == 0U) {
16600#line 2302
16601    goto ldv_36927;
16602  } else {
16603
16604  }
16605  }
16606#line 2303
16607  info->tbuf_start = i;
16608#line 2304
16609  rc = (bool )1;
16610  {
16611#line 2305
16612  __cil_tmp10 = info->tbuf_current;
16613#line 2305
16614  if (__cil_tmp10 != i) {
16615#line 2306
16616    goto ldv_36928;
16617  } else {
16618#line 2308
16619    goto ldv_36927;
16620  }
16621  }
16622  ldv_36927: ;
16623#line 2307
16624  return (rc);
16625}
16626}
16627#line 2310 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
16628static void isr_txeom(struct slgt_info *info , unsigned short status ) 
16629{ __u16 tmp ;
16630  unsigned short val ;
16631  __u16 tmp___0 ;
16632  bool tmp___1 ;
16633  char (*__cil_tmp7)[25U] ;
16634  char *__cil_tmp8 ;
16635  int __cil_tmp9 ;
16636  int __cil_tmp10 ;
16637  int __cil_tmp11 ;
16638  __u16 __cil_tmp12 ;
16639  int __cil_tmp13 ;
16640  int __cil_tmp14 ;
16641  unsigned int __cil_tmp15 ;
16642  unsigned int __cil_tmp16 ;
16643  int __cil_tmp17 ;
16644  __u16 __cil_tmp18 ;
16645  int __cil_tmp19 ;
16646  __u16 __cil_tmp20 ;
16647  bool __cil_tmp21 ;
16648  unsigned long __cil_tmp22 ;
16649  int __cil_tmp23 ;
16650  int __cil_tmp24 ;
16651  __u32 __cil_tmp25 ;
16652  int __cil_tmp26 ;
16653  int __cil_tmp27 ;
16654  __u32 __cil_tmp28 ;
16655  struct timer_list *__cil_tmp29 ;
16656  unsigned long __cil_tmp30 ;
16657  bool __cil_tmp31 ;
16658  unsigned char __cil_tmp32 ;
16659  unsigned int __cil_tmp33 ;
16660  unsigned int __cil_tmp34 ;
16661  int __cil_tmp35 ;
16662  struct tty_struct *__cil_tmp36 ;
16663  unsigned long __cil_tmp37 ;
16664  struct tty_struct *__cil_tmp38 ;
16665  unsigned long __cil_tmp39 ;
16666  struct tty_struct *__cil_tmp40 ;
16667  unsigned char *__cil_tmp41 ;
16668  unsigned char *__cil_tmp42 ;
16669  unsigned char __cil_tmp43 ;
16670  unsigned int __cil_tmp44 ;
16671  struct tty_struct *__cil_tmp45 ;
16672  unsigned char *__cil_tmp46 ;
16673  unsigned char *__cil_tmp47 ;
16674  unsigned char __cil_tmp48 ;
16675  unsigned int __cil_tmp49 ;
16676  u32 __cil_tmp50 ;
16677
16678  {
16679#line 2312
16680  if (debug_level > 4) {
16681    {
16682#line 2312
16683    __cil_tmp7 = & info->device_name;
16684#line 2312
16685    __cil_tmp8 = (char *)__cil_tmp7;
16686#line 2312
16687    __cil_tmp9 = (int )status;
16688#line 2312
16689    printk("%s txeom status=%04x\n", __cil_tmp8, __cil_tmp9);
16690    }
16691  } else {
16692
16693  }
16694  {
16695#line 2314
16696  tmp = rd_reg16(info, 140U);
16697#line 2314
16698  __cil_tmp10 = (int )tmp;
16699#line 2314
16700  __cil_tmp11 = __cil_tmp10 & 51199;
16701#line 2314
16702  __cil_tmp12 = (__u16 )__cil_tmp11;
16703#line 2314
16704  wr_reg16(info, 140U, __cil_tmp12);
16705#line 2315
16706  tdma_reset(info);
16707  }
16708  {
16709#line 2316
16710  __cil_tmp13 = (int )status;
16711#line 2316
16712  __cil_tmp14 = __cil_tmp13 & 2048;
16713#line 2316
16714  if (__cil_tmp14 != 0) {
16715    {
16716#line 2317
16717    tmp___0 = rd_reg16(info, 130U);
16718#line 2317
16719    val = tmp___0;
16720#line 2318
16721    __cil_tmp15 = (unsigned int )val;
16722#line 2318
16723    __cil_tmp16 = __cil_tmp15 | 4U;
16724#line 2318
16725    __cil_tmp17 = (int )__cil_tmp16;
16726#line 2318
16727    __cil_tmp18 = (__u16 )__cil_tmp17;
16728#line 2318
16729    wr_reg16(info, 130U, __cil_tmp18);
16730#line 2319
16731    __cil_tmp19 = (int )val;
16732#line 2319
16733    __cil_tmp20 = (__u16 )__cil_tmp19;
16734#line 2319
16735    wr_reg16(info, 130U, __cil_tmp20);
16736    }
16737  } else {
16738
16739  }
16740  }
16741  {
16742#line 2322
16743  __cil_tmp21 = info->tx_active;
16744#line 2322
16745  if ((int )__cil_tmp21) {
16746    {
16747#line 2323
16748    __cil_tmp22 = info->params.mode;
16749#line 2323
16750    if (__cil_tmp22 != 1UL) {
16751      {
16752#line 2324
16753      __cil_tmp23 = (int )status;
16754#line 2324
16755      __cil_tmp24 = __cil_tmp23 & 2048;
16756#line 2324
16757      if (__cil_tmp24 != 0) {
16758#line 2325
16759        __cil_tmp25 = info->icount.txunder;
16760#line 2325
16761        info->icount.txunder = __cil_tmp25 + 1U;
16762      } else {
16763        {
16764#line 2326
16765        __cil_tmp26 = (int )status;
16766#line 2326
16767        __cil_tmp27 = __cil_tmp26 & 4096;
16768#line 2326
16769        if (__cil_tmp27 != 0) {
16770#line 2327
16771          __cil_tmp28 = info->icount.txok;
16772#line 2327
16773          info->icount.txok = __cil_tmp28 + 1U;
16774        } else {
16775
16776        }
16777        }
16778      }
16779      }
16780    } else {
16781
16782    }
16783    }
16784    {
16785#line 2330
16786    tmp___1 = unsent_tbufs(info);
16787    }
16788#line 2330
16789    if ((int )tmp___1) {
16790      {
16791#line 2331
16792      tx_start(info);
16793#line 2332
16794      update_tx_timer(info);
16795      }
16796#line 2333
16797      return;
16798    } else {
16799
16800    }
16801    {
16802#line 2335
16803    info->tx_active = (bool )0;
16804#line 2337
16805    __cil_tmp29 = & info->tx_timer;
16806#line 2337
16807    del_timer(__cil_tmp29);
16808    }
16809    {
16810#line 2339
16811    __cil_tmp30 = info->params.mode;
16812#line 2339
16813    if (__cil_tmp30 != 1UL) {
16814      {
16815#line 2339
16816      __cil_tmp31 = info->drop_rts_on_tx_done;
16817#line 2339
16818      if ((int )__cil_tmp31) {
16819        {
16820#line 2340
16821        __cil_tmp32 = info->signals;
16822#line 2340
16823        __cil_tmp33 = (unsigned int )__cil_tmp32;
16824#line 2340
16825        __cil_tmp34 = __cil_tmp33 & 223U;
16826#line 2340
16827        info->signals = (unsigned char )__cil_tmp34;
16828#line 2341
16829        info->drop_rts_on_tx_done = (bool )0;
16830#line 2342
16831        set_signals(info);
16832        }
16833      } else {
16834
16835      }
16836      }
16837    } else {
16838
16839    }
16840    }
16841    {
16842#line 2346
16843    __cil_tmp35 = info->netcount;
16844#line 2346
16845    if (__cil_tmp35 != 0) {
16846      {
16847#line 2347
16848      hdlcdev_tx_done(info);
16849      }
16850    } else {
16851      {
16852#line 2351
16853      __cil_tmp36 = (struct tty_struct *)0;
16854#line 2351
16855      __cil_tmp37 = (unsigned long )__cil_tmp36;
16856#line 2351
16857      __cil_tmp38 = info->port.tty;
16858#line 2351
16859      __cil_tmp39 = (unsigned long )__cil_tmp38;
16860#line 2351
16861      if (__cil_tmp39 != __cil_tmp37) {
16862        {
16863#line 2351
16864        __cil_tmp40 = info->port.tty;
16865#line 2351
16866        __cil_tmp41 = (unsigned char *)__cil_tmp40;
16867#line 2351
16868        __cil_tmp42 = __cil_tmp41 + 580UL;
16869#line 2351
16870        __cil_tmp43 = *__cil_tmp42;
16871#line 2351
16872        __cil_tmp44 = (unsigned int )__cil_tmp43;
16873#line 2351
16874        if (__cil_tmp44 != 0U) {
16875          {
16876#line 2352
16877          tx_stop(info);
16878          }
16879#line 2353
16880          return;
16881        } else {
16882          {
16883#line 2351
16884          __cil_tmp45 = info->port.tty;
16885#line 2351
16886          __cil_tmp46 = (unsigned char *)__cil_tmp45;
16887#line 2351
16888          __cil_tmp47 = __cil_tmp46 + 580UL;
16889#line 2351
16890          __cil_tmp48 = *__cil_tmp47;
16891#line 2351
16892          __cil_tmp49 = (unsigned int )__cil_tmp48;
16893#line 2351
16894          if (__cil_tmp49 != 0U) {
16895            {
16896#line 2352
16897            tx_stop(info);
16898            }
16899#line 2353
16900            return;
16901          } else {
16902
16903          }
16904          }
16905        }
16906        }
16907      } else {
16908
16909      }
16910      }
16911#line 2355
16912      __cil_tmp50 = info->pending_bh;
16913#line 2355
16914      info->pending_bh = __cil_tmp50 | 2U;
16915    }
16916    }
16917  } else {
16918
16919  }
16920  }
16921#line 2358
16922  return;
16923}
16924}
16925#line 2360 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
16926static void isr_gpio(struct slgt_info *info , unsigned int changed , unsigned int state ) 
16927{ struct cond_wait *w ;
16928  struct cond_wait *prev ;
16929  unsigned int __cil_tmp6 ;
16930  unsigned int __cil_tmp7 ;
16931  wait_queue_head_t *__cil_tmp8 ;
16932  void *__cil_tmp9 ;
16933  struct cond_wait *__cil_tmp10 ;
16934  unsigned long __cil_tmp11 ;
16935  unsigned long __cil_tmp12 ;
16936  struct cond_wait *__cil_tmp13 ;
16937  unsigned long __cil_tmp14 ;
16938  unsigned long __cil_tmp15 ;
16939
16940  {
16941#line 2365
16942  w = info->gpio_wait_q;
16943#line 2365
16944  prev = (struct cond_wait *)0;
16945#line 2365
16946  goto ldv_36942;
16947  ldv_36941: ;
16948  {
16949#line 2366
16950  __cil_tmp6 = w->data;
16951#line 2366
16952  __cil_tmp7 = __cil_tmp6 & changed;
16953#line 2366
16954  if (__cil_tmp7 != 0U) {
16955    {
16956#line 2367
16957    w->data = state;
16958#line 2368
16959    __cil_tmp8 = & w->q;
16960#line 2368
16961    __cil_tmp9 = (void *)0;
16962#line 2368
16963    __wake_up(__cil_tmp8, 1U, 1, __cil_tmp9);
16964    }
16965    {
16966#line 2369
16967    __cil_tmp10 = (struct cond_wait *)0;
16968#line 2369
16969    __cil_tmp11 = (unsigned long )__cil_tmp10;
16970#line 2369
16971    __cil_tmp12 = (unsigned long )prev;
16972#line 2369
16973    if (__cil_tmp12 != __cil_tmp11) {
16974#line 2370
16975      prev->next = w->next;
16976    } else {
16977#line 2372
16978      info->gpio_wait_q = w->next;
16979    }
16980    }
16981  } else {
16982#line 2374
16983    prev = w;
16984  }
16985  }
16986#line 2365
16987  w = w->next;
16988  ldv_36942: ;
16989  {
16990#line 2365
16991  __cil_tmp13 = (struct cond_wait *)0;
16992#line 2365
16993  __cil_tmp14 = (unsigned long )__cil_tmp13;
16994#line 2365
16995  __cil_tmp15 = (unsigned long )w;
16996#line 2365
16997  if (__cil_tmp15 != __cil_tmp14) {
16998#line 2366
16999    goto ldv_36941;
17000  } else {
17001#line 2368
17002    goto ldv_36943;
17003  }
17004  }
17005  ldv_36943: ;
17006#line 2370
17007  return;
17008}
17009}
17010#line 2383 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
17011static irqreturn_t slgt_interrupt(int dummy , void *dev_id ) 
17012{ struct slgt_info *info ;
17013  unsigned int gsr ;
17014  unsigned int i ;
17015  __u32 tmp ;
17016  unsigned int state ;
17017  unsigned int changed ;
17018  struct slgt_info *port ;
17019  unsigned int __cil_tmp10 ;
17020  char (*__cil_tmp11)[25U] ;
17021  char *__cil_tmp12 ;
17022  struct slgt_info *__cil_tmp13 ;
17023  unsigned long __cil_tmp14 ;
17024  struct slgt_info *__cil_tmp15 ;
17025  unsigned long __cil_tmp16 ;
17026  struct slgt_info *__cil_tmp17 ;
17027  spinlock_t *__cil_tmp18 ;
17028  int __cil_tmp19 ;
17029  int __cil_tmp20 ;
17030  unsigned int __cil_tmp21 ;
17031  unsigned int __cil_tmp22 ;
17032  struct slgt_info *__cil_tmp23 ;
17033  unsigned int __cil_tmp24 ;
17034  int __cil_tmp25 ;
17035  int __cil_tmp26 ;
17036  unsigned int __cil_tmp27 ;
17037  unsigned int __cil_tmp28 ;
17038  struct slgt_info *__cil_tmp29 ;
17039  unsigned int __cil_tmp30 ;
17040  int __cil_tmp31 ;
17041  int __cil_tmp32 ;
17042  unsigned int __cil_tmp33 ;
17043  unsigned int __cil_tmp34 ;
17044  struct slgt_info *__cil_tmp35 ;
17045  struct slgt_info *__cil_tmp36 ;
17046  spinlock_t *__cil_tmp37 ;
17047  int __cil_tmp38 ;
17048  unsigned int __cil_tmp39 ;
17049  unsigned int __cil_tmp40 ;
17050  spinlock_t *__cil_tmp41 ;
17051  char (*__cil_tmp42)[25U] ;
17052  char *__cil_tmp43 ;
17053  struct slgt_info *__cil_tmp44 ;
17054  unsigned long __cil_tmp45 ;
17055  struct slgt_info *__cil_tmp46 ;
17056  unsigned long __cil_tmp47 ;
17057  struct slgt_info *__cil_tmp48 ;
17058  int __cil_tmp49 ;
17059  unsigned int __cil_tmp50 ;
17060  spinlock_t *__cil_tmp51 ;
17061  struct slgt_info *__cil_tmp52 ;
17062  unsigned long __cil_tmp53 ;
17063  unsigned long __cil_tmp54 ;
17064  spinlock_t *__cil_tmp55 ;
17065  int __cil_tmp56 ;
17066  int __cil_tmp57 ;
17067  u32 __cil_tmp58 ;
17068  bool __cil_tmp59 ;
17069  bool __cil_tmp60 ;
17070  char (*__cil_tmp61)[25U] ;
17071  char *__cil_tmp62 ;
17072  struct work_struct *__cil_tmp63 ;
17073  spinlock_t *__cil_tmp64 ;
17074  int __cil_tmp65 ;
17075  unsigned int __cil_tmp66 ;
17076  unsigned int __cil_tmp67 ;
17077
17078  {
17079#line 2385
17080  info = (struct slgt_info *)dev_id;
17081#line 2389
17082  if (debug_level > 4) {
17083    {
17084#line 2389
17085    __cil_tmp10 = info->irq_level;
17086#line 2389
17087    printk("slgt_interrupt irq=%d entry\n", __cil_tmp10);
17088    }
17089  } else {
17090
17091  }
17092#line 2391
17093  goto ldv_36956;
17094  ldv_36955: ;
17095#line 2392
17096  if (debug_level > 4) {
17097    {
17098#line 2392
17099    __cil_tmp11 = & info->device_name;
17100#line 2392
17101    __cil_tmp12 = (char *)__cil_tmp11;
17102#line 2392
17103    printk("%s gsr=%08x\n", __cil_tmp12, gsr);
17104    }
17105  } else {
17106
17107  }
17108#line 2393
17109  info->irq_occurred = (bool )1;
17110#line 2394
17111  i = 0U;
17112#line 2394
17113  goto ldv_36953;
17114  ldv_36952: ;
17115  {
17116#line 2395
17117  __cil_tmp13 = (struct slgt_info *)0;
17118#line 2395
17119  __cil_tmp14 = (unsigned long )__cil_tmp13;
17120#line 2395
17121  __cil_tmp15 = info->port_array[i];
17122#line 2395
17123  __cil_tmp16 = (unsigned long )__cil_tmp15;
17124#line 2395
17125  if (__cil_tmp16 == __cil_tmp14) {
17126#line 2396
17127    goto ldv_36951;
17128  } else {
17129
17130  }
17131  }
17132  {
17133#line 2397
17134  __cil_tmp17 = info->port_array[i];
17135#line 2397
17136  __cil_tmp18 = & __cil_tmp17->lock;
17137#line 2397
17138  spin_lock(__cil_tmp18);
17139  }
17140  {
17141#line 2398
17142  __cil_tmp19 = (int )i;
17143#line 2398
17144  __cil_tmp20 = 256 << __cil_tmp19;
17145#line 2398
17146  __cil_tmp21 = (unsigned int )__cil_tmp20;
17147#line 2398
17148  __cil_tmp22 = __cil_tmp21 & gsr;
17149#line 2398
17150  if (__cil_tmp22 != 0U) {
17151    {
17152#line 2399
17153    __cil_tmp23 = info->port_array[i];
17154#line 2399
17155    isr_serial(__cil_tmp23);
17156    }
17157  } else {
17158
17159  }
17160  }
17161  {
17162#line 2400
17163  __cil_tmp24 = i * 2U;
17164#line 2400
17165  __cil_tmp25 = (int )__cil_tmp24;
17166#line 2400
17167  __cil_tmp26 = 65536 << __cil_tmp25;
17168#line 2400
17169  __cil_tmp27 = (unsigned int )__cil_tmp26;
17170#line 2400
17171  __cil_tmp28 = __cil_tmp27 & gsr;
17172#line 2400
17173  if (__cil_tmp28 != 0U) {
17174    {
17175#line 2401
17176    __cil_tmp29 = info->port_array[i];
17177#line 2401
17178    isr_rdma(__cil_tmp29);
17179    }
17180  } else {
17181
17182  }
17183  }
17184  {
17185#line 2402
17186  __cil_tmp30 = i * 2U;
17187#line 2402
17188  __cil_tmp31 = (int )__cil_tmp30;
17189#line 2402
17190  __cil_tmp32 = 131072 << __cil_tmp31;
17191#line 2402
17192  __cil_tmp33 = (unsigned int )__cil_tmp32;
17193#line 2402
17194  __cil_tmp34 = __cil_tmp33 & gsr;
17195#line 2402
17196  if (__cil_tmp34 != 0U) {
17197    {
17198#line 2403
17199    __cil_tmp35 = info->port_array[i];
17200#line 2403
17201    isr_tdma(__cil_tmp35);
17202    }
17203  } else {
17204
17205  }
17206  }
17207  {
17208#line 2404
17209  __cil_tmp36 = info->port_array[i];
17210#line 2404
17211  __cil_tmp37 = & __cil_tmp36->lock;
17212#line 2404
17213  spin_unlock(__cil_tmp37);
17214  }
17215  ldv_36951: 
17216#line 2394
17217  i = i + 1U;
17218  ldv_36953: ;
17219  {
17220#line 2394
17221  __cil_tmp38 = info->port_count;
17222#line 2394
17223  __cil_tmp39 = (unsigned int )__cil_tmp38;
17224#line 2394
17225  if (__cil_tmp39 > i) {
17226#line 2395
17227    goto ldv_36952;
17228  } else {
17229#line 2397
17230    goto ldv_36954;
17231  }
17232  }
17233  ldv_36954: ;
17234  ldv_36956: 
17235  {
17236#line 2391
17237  tmp = rd_reg32(info, 0U);
17238#line 2391
17239  gsr = tmp & 4294967040U;
17240  }
17241#line 2391
17242  if (gsr != 0U) {
17243#line 2392
17244    goto ldv_36955;
17245  } else {
17246#line 2394
17247    goto ldv_36957;
17248  }
17249  ldv_36957: ;
17250  {
17251#line 2408
17252  __cil_tmp40 = info->gpio_present;
17253#line 2408
17254  if (__cil_tmp40 != 0U) {
17255    {
17256#line 2411
17257    __cil_tmp41 = & info->lock;
17258#line 2411
17259    spin_lock(__cil_tmp41);
17260    }
17261#line 2412
17262    goto ldv_36964;
17263    ldv_36963: ;
17264#line 2413
17265    if (debug_level > 4) {
17266      {
17267#line 2413
17268      __cil_tmp42 = & info->device_name;
17269#line 2413
17270      __cil_tmp43 = (char *)__cil_tmp42;
17271#line 2413
17272      printk("%s iosr=%08x\n", __cil_tmp43, changed);
17273      }
17274    } else {
17275
17276    }
17277    {
17278#line 2415
17279    state = rd_reg32(info, 16U);
17280#line 2417
17281    wr_reg32(info, 20U, changed);
17282#line 2418
17283    i = 0U;
17284    }
17285#line 2418
17286    goto ldv_36961;
17287    ldv_36960: ;
17288    {
17289#line 2419
17290    __cil_tmp44 = (struct slgt_info *)0;
17291#line 2419
17292    __cil_tmp45 = (unsigned long )__cil_tmp44;
17293#line 2419
17294    __cil_tmp46 = info->port_array[i];
17295#line 2419
17296    __cil_tmp47 = (unsigned long )__cil_tmp46;
17297#line 2419
17298    if (__cil_tmp47 != __cil_tmp45) {
17299      {
17300#line 2420
17301      __cil_tmp48 = info->port_array[i];
17302#line 2420
17303      isr_gpio(__cil_tmp48, changed, state);
17304      }
17305    } else {
17306
17307    }
17308    }
17309#line 2418
17310    i = i + 1U;
17311    ldv_36961: ;
17312    {
17313#line 2418
17314    __cil_tmp49 = info->port_count;
17315#line 2418
17316    __cil_tmp50 = (unsigned int )__cil_tmp49;
17317#line 2418
17318    if (__cil_tmp50 > i) {
17319#line 2419
17320      goto ldv_36960;
17321    } else {
17322#line 2421
17323      goto ldv_36962;
17324    }
17325    }
17326    ldv_36962: ;
17327    ldv_36964: 
17328    {
17329#line 2412
17330    changed = rd_reg32(info, 20U);
17331    }
17332#line 2412
17333    if (changed != 0U) {
17334#line 2413
17335      goto ldv_36963;
17336    } else {
17337#line 2415
17338      goto ldv_36965;
17339    }
17340    ldv_36965: 
17341    {
17342#line 2423
17343    __cil_tmp51 = & info->lock;
17344#line 2423
17345    spin_unlock(__cil_tmp51);
17346    }
17347  } else {
17348
17349  }
17350  }
17351#line 2426
17352  i = 0U;
17353#line 2426
17354  goto ldv_36969;
17355  ldv_36968: 
17356#line 2427
17357  port = info->port_array[i];
17358  {
17359#line 2428
17360  __cil_tmp52 = (struct slgt_info *)0;
17361#line 2428
17362  __cil_tmp53 = (unsigned long )__cil_tmp52;
17363#line 2428
17364  __cil_tmp54 = (unsigned long )port;
17365#line 2428
17366  if (__cil_tmp54 == __cil_tmp53) {
17367#line 2429
17368    goto ldv_36967;
17369  } else {
17370
17371  }
17372  }
17373  {
17374#line 2430
17375  __cil_tmp55 = & port->lock;
17376#line 2430
17377  spin_lock(__cil_tmp55);
17378  }
17379  {
17380#line 2431
17381  __cil_tmp56 = port->port.count;
17382#line 2431
17383  if (__cil_tmp56 != 0) {
17384#line 2431
17385    goto _L;
17386  } else {
17387    {
17388#line 2431
17389    __cil_tmp57 = port->netcount;
17390#line 2431
17391    if (__cil_tmp57 != 0) {
17392      _L: 
17393      {
17394#line 2431
17395      __cil_tmp58 = port->pending_bh;
17396#line 2431
17397      if (__cil_tmp58 != 0U) {
17398        {
17399#line 2431
17400        __cil_tmp59 = port->bh_running;
17401#line 2431
17402        if (! __cil_tmp59) {
17403          {
17404#line 2431
17405          __cil_tmp60 = port->bh_requested;
17406#line 2431
17407          if (! __cil_tmp60) {
17408#line 2434
17409            if (debug_level > 4) {
17410              {
17411#line 2434
17412              __cil_tmp61 = & port->device_name;
17413#line 2434
17414              __cil_tmp62 = (char *)__cil_tmp61;
17415#line 2434
17416              printk("%s bh queued\n", __cil_tmp62);
17417              }
17418            } else {
17419
17420            }
17421            {
17422#line 2435
17423            __cil_tmp63 = & port->task;
17424#line 2435
17425            schedule_work(__cil_tmp63);
17426#line 2436
17427            port->bh_requested = (bool )1;
17428            }
17429          } else {
17430
17431          }
17432          }
17433        } else {
17434
17435        }
17436        }
17437      } else {
17438
17439      }
17440      }
17441    } else {
17442
17443    }
17444    }
17445  }
17446  }
17447  {
17448#line 2438
17449  __cil_tmp64 = & port->lock;
17450#line 2438
17451  spin_unlock(__cil_tmp64);
17452  }
17453  ldv_36967: 
17454#line 2426
17455  i = i + 1U;
17456  ldv_36969: ;
17457  {
17458#line 2426
17459  __cil_tmp65 = info->port_count;
17460#line 2426
17461  __cil_tmp66 = (unsigned int )__cil_tmp65;
17462#line 2426
17463  if (__cil_tmp66 > i) {
17464#line 2427
17465    goto ldv_36968;
17466  } else {
17467#line 2429
17468    goto ldv_36970;
17469  }
17470  }
17471  ldv_36970: ;
17472#line 2441
17473  if (debug_level > 4) {
17474    {
17475#line 2441
17476    __cil_tmp67 = info->irq_level;
17477#line 2441
17478    printk("slgt_interrupt irq=%d exit\n", __cil_tmp67);
17479    }
17480  } else {
17481
17482  }
17483#line 2442
17484  return ((irqreturn_t )1);
17485}
17486}
17487#line 2445 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
17488static int startup(struct slgt_info *info ) 
17489{ void *tmp ;
17490  char (*__cil_tmp3)[25U] ;
17491  char *__cil_tmp4 ;
17492  unsigned long __cil_tmp5 ;
17493  unsigned long __cil_tmp6 ;
17494  unsigned char *__cil_tmp7 ;
17495  unsigned long __cil_tmp8 ;
17496  unsigned char *__cil_tmp9 ;
17497  unsigned long __cil_tmp10 ;
17498  u32 __cil_tmp11 ;
17499  size_t __cil_tmp12 ;
17500  unsigned char *__cil_tmp13 ;
17501  unsigned long __cil_tmp14 ;
17502  unsigned char *__cil_tmp15 ;
17503  unsigned long __cil_tmp16 ;
17504  char (*__cil_tmp17)[25U] ;
17505  char *__cil_tmp18 ;
17506  struct mgsl_icount *__cil_tmp19 ;
17507  void *__cil_tmp20 ;
17508  struct tty_struct *__cil_tmp21 ;
17509  unsigned long __cil_tmp22 ;
17510  struct tty_struct *__cil_tmp23 ;
17511  unsigned long __cil_tmp24 ;
17512  struct tty_struct *__cil_tmp25 ;
17513  unsigned long *__cil_tmp26 ;
17514  unsigned long volatile   *__cil_tmp27 ;
17515  unsigned long __cil_tmp28 ;
17516
17517  {
17518#line 2447
17519  if (debug_level > 2) {
17520    {
17521#line 2447
17522    __cil_tmp3 = & info->device_name;
17523#line 2447
17524    __cil_tmp4 = (char *)__cil_tmp3;
17525#line 2447
17526    printk("%s startup\n", __cil_tmp4);
17527    }
17528  } else {
17529
17530  }
17531  {
17532#line 2449
17533  __cil_tmp5 = info->port.flags;
17534#line 2449
17535  __cil_tmp6 = __cil_tmp5 & 2147483648UL;
17536#line 2449
17537  if (__cil_tmp6 != 0UL) {
17538#line 2450
17539    return (0);
17540  } else {
17541
17542  }
17543  }
17544  {
17545#line 2452
17546  __cil_tmp7 = (unsigned char *)0;
17547#line 2452
17548  __cil_tmp8 = (unsigned long )__cil_tmp7;
17549#line 2452
17550  __cil_tmp9 = info->tx_buf;
17551#line 2452
17552  __cil_tmp10 = (unsigned long )__cil_tmp9;
17553#line 2452
17554  if (__cil_tmp10 == __cil_tmp8) {
17555    {
17556#line 2453
17557    __cil_tmp11 = info->max_frame_size;
17558#line 2453
17559    __cil_tmp12 = (size_t )__cil_tmp11;
17560#line 2453
17561    tmp = kmalloc(__cil_tmp12, 208U);
17562#line 2453
17563    info->tx_buf = (unsigned char *)tmp;
17564    }
17565    {
17566#line 2454
17567    __cil_tmp13 = (unsigned char *)0;
17568#line 2454
17569    __cil_tmp14 = (unsigned long )__cil_tmp13;
17570#line 2454
17571    __cil_tmp15 = info->tx_buf;
17572#line 2454
17573    __cil_tmp16 = (unsigned long )__cil_tmp15;
17574#line 2454
17575    if (__cil_tmp16 == __cil_tmp14) {
17576#line 2455
17577      if (debug_level > 1) {
17578        {
17579#line 2455
17580        __cil_tmp17 = & info->device_name;
17581#line 2455
17582        __cil_tmp18 = (char *)__cil_tmp17;
17583#line 2455
17584        printk("%s can\'t allocate tx buffer\n", __cil_tmp18);
17585        }
17586      } else {
17587
17588      }
17589#line 2456
17590      return (-12);
17591    } else {
17592
17593    }
17594    }
17595  } else {
17596
17597  }
17598  }
17599  {
17600#line 2460
17601  info->pending_bh = 0U;
17602#line 2462
17603  __cil_tmp19 = & info->icount;
17604#line 2462
17605  __cil_tmp20 = (void *)__cil_tmp19;
17606#line 2462
17607  memset(__cil_tmp20, 0, 92UL);
17608#line 2465
17609  change_params(info);
17610  }
17611  {
17612#line 2467
17613  __cil_tmp21 = (struct tty_struct *)0;
17614#line 2467
17615  __cil_tmp22 = (unsigned long )__cil_tmp21;
17616#line 2467
17617  __cil_tmp23 = info->port.tty;
17618#line 2467
17619  __cil_tmp24 = (unsigned long )__cil_tmp23;
17620#line 2467
17621  if (__cil_tmp24 != __cil_tmp22) {
17622    {
17623#line 2468
17624    __cil_tmp25 = info->port.tty;
17625#line 2468
17626    __cil_tmp26 = & __cil_tmp25->flags;
17627#line 2468
17628    __cil_tmp27 = (unsigned long volatile   *)__cil_tmp26;
17629#line 2468
17630    clear_bit(1, __cil_tmp27);
17631    }
17632  } else {
17633
17634  }
17635  }
17636#line 2470
17637  __cil_tmp28 = info->port.flags;
17638#line 2470
17639  info->port.flags = __cil_tmp28 | 2147483648UL;
17640#line 2472
17641  return (0);
17642}
17643}
17644#line 2478 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
17645static void shutdown(struct slgt_info *info ) 
17646{ unsigned long flags ;
17647  raw_spinlock_t *tmp ;
17648  __u16 tmp___0 ;
17649  unsigned long __cil_tmp5 ;
17650  unsigned long __cil_tmp6 ;
17651  char (*__cil_tmp7)[25U] ;
17652  char *__cil_tmp8 ;
17653  wait_queue_head_t *__cil_tmp9 ;
17654  void *__cil_tmp10 ;
17655  wait_queue_head_t *__cil_tmp11 ;
17656  void *__cil_tmp12 ;
17657  struct timer_list *__cil_tmp13 ;
17658  struct timer_list *__cil_tmp14 ;
17659  unsigned char *__cil_tmp15 ;
17660  void const   *__cil_tmp16 ;
17661  spinlock_t *__cil_tmp17 ;
17662  int __cil_tmp18 ;
17663  int __cil_tmp19 ;
17664  __u16 __cil_tmp20 ;
17665  struct tty_struct *__cil_tmp21 ;
17666  unsigned long __cil_tmp22 ;
17667  struct tty_struct *__cil_tmp23 ;
17668  unsigned long __cil_tmp24 ;
17669  unsigned char __cil_tmp25 ;
17670  unsigned int __cil_tmp26 ;
17671  unsigned int __cil_tmp27 ;
17672  struct tty_struct *__cil_tmp28 ;
17673  struct ktermios *__cil_tmp29 ;
17674  tcflag_t __cil_tmp30 ;
17675  unsigned int __cil_tmp31 ;
17676  unsigned char __cil_tmp32 ;
17677  unsigned int __cil_tmp33 ;
17678  unsigned int __cil_tmp34 ;
17679  struct cond_wait **__cil_tmp35 ;
17680  spinlock_t *__cil_tmp36 ;
17681  struct tty_struct *__cil_tmp37 ;
17682  unsigned long __cil_tmp38 ;
17683  struct tty_struct *__cil_tmp39 ;
17684  unsigned long __cil_tmp40 ;
17685  struct tty_struct *__cil_tmp41 ;
17686  unsigned long *__cil_tmp42 ;
17687  unsigned long volatile   *__cil_tmp43 ;
17688  unsigned long __cil_tmp44 ;
17689
17690  {
17691  {
17692#line 2482
17693  __cil_tmp5 = info->port.flags;
17694#line 2482
17695  __cil_tmp6 = __cil_tmp5 & 2147483648UL;
17696#line 2482
17697  if (__cil_tmp6 == 0UL) {
17698#line 2483
17699    return;
17700  } else {
17701
17702  }
17703  }
17704#line 2485
17705  if (debug_level > 2) {
17706    {
17707#line 2485
17708    __cil_tmp7 = & info->device_name;
17709#line 2485
17710    __cil_tmp8 = (char *)__cil_tmp7;
17711#line 2485
17712    printk("%s shutdown\n", __cil_tmp8);
17713    }
17714  } else {
17715
17716  }
17717  {
17718#line 2489
17719  __cil_tmp9 = & info->status_event_wait_q;
17720#line 2489
17721  __cil_tmp10 = (void *)0;
17722#line 2489
17723  __wake_up(__cil_tmp9, 1U, 1, __cil_tmp10);
17724#line 2490
17725  __cil_tmp11 = & info->event_wait_q;
17726#line 2490
17727  __cil_tmp12 = (void *)0;
17728#line 2490
17729  __wake_up(__cil_tmp11, 1U, 1, __cil_tmp12);
17730#line 2492
17731  __cil_tmp13 = & info->tx_timer;
17732#line 2492
17733  del_timer_sync(__cil_tmp13);
17734#line 2493
17735  __cil_tmp14 = & info->rx_timer;
17736#line 2493
17737  del_timer_sync(__cil_tmp14);
17738#line 2495
17739  __cil_tmp15 = info->tx_buf;
17740#line 2495
17741  __cil_tmp16 = (void const   *)__cil_tmp15;
17742#line 2495
17743  kfree(__cil_tmp16);
17744#line 2496
17745  info->tx_buf = (unsigned char *)0;
17746#line 2498
17747  __cil_tmp17 = & info->lock;
17748#line 2498
17749  tmp = spinlock_check(__cil_tmp17);
17750#line 2498
17751  flags = _raw_spin_lock_irqsave(tmp);
17752#line 2500
17753  tx_stop(info);
17754#line 2501
17755  rx_stop(info);
17756#line 2503
17757  tmp___0 = rd_reg16(info, 140U);
17758#line 2503
17759  __cil_tmp18 = (int )tmp___0;
17760#line 2503
17761  __cil_tmp19 = __cil_tmp18 & 49166;
17762#line 2503
17763  __cil_tmp20 = (__u16 )__cil_tmp19;
17764#line 2503
17765  wr_reg16(info, 140U, __cil_tmp20);
17766  }
17767  {
17768#line 2505
17769  __cil_tmp21 = (struct tty_struct *)0;
17770#line 2505
17771  __cil_tmp22 = (unsigned long )__cil_tmp21;
17772#line 2505
17773  __cil_tmp23 = info->port.tty;
17774#line 2505
17775  __cil_tmp24 = (unsigned long )__cil_tmp23;
17776#line 2505
17777  if (__cil_tmp24 == __cil_tmp22) {
17778    {
17779#line 2506
17780    __cil_tmp25 = info->signals;
17781#line 2506
17782    __cil_tmp26 = (unsigned int )__cil_tmp25;
17783#line 2506
17784    __cil_tmp27 = __cil_tmp26 & 95U;
17785#line 2506
17786    info->signals = (unsigned char )__cil_tmp27;
17787#line 2507
17788    set_signals(info);
17789    }
17790  } else {
17791    {
17792#line 2505
17793    __cil_tmp28 = info->port.tty;
17794#line 2505
17795    __cil_tmp29 = __cil_tmp28->termios;
17796#line 2505
17797    __cil_tmp30 = __cil_tmp29->c_cflag;
17798#line 2505
17799    __cil_tmp31 = __cil_tmp30 & 1024U;
17800#line 2505
17801    if (__cil_tmp31 != 0U) {
17802      {
17803#line 2506
17804      __cil_tmp32 = info->signals;
17805#line 2506
17806      __cil_tmp33 = (unsigned int )__cil_tmp32;
17807#line 2506
17808      __cil_tmp34 = __cil_tmp33 & 95U;
17809#line 2506
17810      info->signals = (unsigned char )__cil_tmp34;
17811#line 2507
17812      set_signals(info);
17813      }
17814    } else {
17815
17816    }
17817    }
17818  }
17819  }
17820  {
17821#line 2510
17822  __cil_tmp35 = & info->gpio_wait_q;
17823#line 2510
17824  flush_cond_wait(__cil_tmp35);
17825#line 2512
17826  __cil_tmp36 = & info->lock;
17827#line 2512
17828  spin_unlock_irqrestore(__cil_tmp36, flags);
17829  }
17830  {
17831#line 2514
17832  __cil_tmp37 = (struct tty_struct *)0;
17833#line 2514
17834  __cil_tmp38 = (unsigned long )__cil_tmp37;
17835#line 2514
17836  __cil_tmp39 = info->port.tty;
17837#line 2514
17838  __cil_tmp40 = (unsigned long )__cil_tmp39;
17839#line 2514
17840  if (__cil_tmp40 != __cil_tmp38) {
17841    {
17842#line 2515
17843    __cil_tmp41 = info->port.tty;
17844#line 2515
17845    __cil_tmp42 = & __cil_tmp41->flags;
17846#line 2515
17847    __cil_tmp43 = (unsigned long volatile   *)__cil_tmp42;
17848#line 2515
17849    set_bit(1U, __cil_tmp43);
17850    }
17851  } else {
17852
17853  }
17854  }
17855#line 2517
17856  __cil_tmp44 = info->port.flags;
17857#line 2517
17858  info->port.flags = __cil_tmp44 & 2147483647UL;
17859#line 2518
17860  return;
17861}
17862}
17863#line 2520 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
17864static void program_hw(struct slgt_info *info ) 
17865{ unsigned long flags ;
17866  raw_spinlock_t *tmp ;
17867  __u16 tmp___0 ;
17868  spinlock_t *__cil_tmp5 ;
17869  unsigned long __cil_tmp6 ;
17870  int __cil_tmp7 ;
17871  unsigned int __cil_tmp8 ;
17872  unsigned int __cil_tmp9 ;
17873  int __cil_tmp10 ;
17874  __u16 __cil_tmp11 ;
17875  int __cil_tmp12 ;
17876  struct tty_struct *__cil_tmp13 ;
17877  unsigned long __cil_tmp14 ;
17878  struct tty_struct *__cil_tmp15 ;
17879  unsigned long __cil_tmp16 ;
17880  struct tty_struct *__cil_tmp17 ;
17881  struct ktermios *__cil_tmp18 ;
17882  tcflag_t __cil_tmp19 ;
17883  unsigned int __cil_tmp20 ;
17884  spinlock_t *__cil_tmp21 ;
17885
17886  {
17887  {
17888#line 2524
17889  __cil_tmp5 = & info->lock;
17890#line 2524
17891  tmp = spinlock_check(__cil_tmp5);
17892#line 2524
17893  flags = _raw_spin_lock_irqsave(tmp);
17894#line 2526
17895  rx_stop(info);
17896#line 2527
17897  tx_stop(info);
17898  }
17899  {
17900#line 2529
17901  __cil_tmp6 = info->params.mode;
17902#line 2529
17903  if (__cil_tmp6 != 1UL) {
17904    {
17905#line 2531
17906    sync_mode(info);
17907    }
17908  } else {
17909    {
17910#line 2529
17911    __cil_tmp7 = info->netcount;
17912#line 2529
17913    if (__cil_tmp7 != 0) {
17914      {
17915#line 2531
17916      sync_mode(info);
17917      }
17918    } else {
17919      {
17920#line 2533
17921      async_mode(info);
17922      }
17923    }
17924    }
17925  }
17926  }
17927  {
17928#line 2535
17929  set_signals(info);
17930#line 2537
17931  info->dcd_chkcount = 0;
17932#line 2538
17933  info->cts_chkcount = 0;
17934#line 2539
17935  info->ri_chkcount = 0;
17936#line 2540
17937  info->dsr_chkcount = 0;
17938#line 2542
17939  tmp___0 = rd_reg16(info, 140U);
17940#line 2542
17941  __cil_tmp8 = (unsigned int )tmp___0;
17942#line 2542
17943  __cil_tmp9 = __cil_tmp8 | 240U;
17944#line 2542
17945  __cil_tmp10 = (int )__cil_tmp9;
17946#line 2542
17947  __cil_tmp11 = (__u16 )__cil_tmp10;
17948#line 2542
17949  wr_reg16(info, 140U, __cil_tmp11);
17950#line 2543
17951  get_signals(info);
17952  }
17953  {
17954#line 2545
17955  __cil_tmp12 = info->netcount;
17956#line 2545
17957  if (__cil_tmp12 != 0) {
17958    {
17959#line 2547
17960    rx_start(info);
17961    }
17962  } else {
17963    {
17964#line 2545
17965    __cil_tmp13 = (struct tty_struct *)0;
17966#line 2545
17967    __cil_tmp14 = (unsigned long )__cil_tmp13;
17968#line 2545
17969    __cil_tmp15 = info->port.tty;
17970#line 2545
17971    __cil_tmp16 = (unsigned long )__cil_tmp15;
17972#line 2545
17973    if (__cil_tmp16 != __cil_tmp14) {
17974      {
17975#line 2545
17976      __cil_tmp17 = info->port.tty;
17977#line 2545
17978      __cil_tmp18 = __cil_tmp17->termios;
17979#line 2545
17980      __cil_tmp19 = __cil_tmp18->c_cflag;
17981#line 2545
17982      __cil_tmp20 = __cil_tmp19 & 128U;
17983#line 2545
17984      if (__cil_tmp20 != 0U) {
17985        {
17986#line 2547
17987        rx_start(info);
17988        }
17989      } else {
17990
17991      }
17992      }
17993    } else {
17994
17995    }
17996    }
17997  }
17998  }
17999  {
18000#line 2549
18001  __cil_tmp21 = & info->lock;
18002#line 2549
18003  spin_unlock_irqrestore(__cil_tmp21, flags);
18004  }
18005#line 2550
18006  return;
18007}
18008}
18009#line 2555 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
18010static void change_params(struct slgt_info *info ) 
18011{ unsigned int cflag ;
18012  int bits_per_char ;
18013  speed_t tmp ;
18014  struct tty_struct *__cil_tmp5 ;
18015  unsigned long __cil_tmp6 ;
18016  struct tty_struct *__cil_tmp7 ;
18017  unsigned long __cil_tmp8 ;
18018  struct ktermios *__cil_tmp9 ;
18019  unsigned long __cil_tmp10 ;
18020  struct tty_struct *__cil_tmp11 ;
18021  struct ktermios *__cil_tmp12 ;
18022  unsigned long __cil_tmp13 ;
18023  char (*__cil_tmp14)[25U] ;
18024  char *__cil_tmp15 ;
18025  struct tty_struct *__cil_tmp16 ;
18026  struct ktermios *__cil_tmp17 ;
18027  unsigned int __cil_tmp18 ;
18028  unsigned char __cil_tmp19 ;
18029  unsigned int __cil_tmp20 ;
18030  unsigned int __cil_tmp21 ;
18031  unsigned char __cil_tmp22 ;
18032  unsigned int __cil_tmp23 ;
18033  unsigned int __cil_tmp24 ;
18034  unsigned int __cil_tmp25 ;
18035  int __cil_tmp26 ;
18036  unsigned int __cil_tmp27 ;
18037  int __cil_tmp28 ;
18038  unsigned int __cil_tmp29 ;
18039  int __cil_tmp30 ;
18040  unsigned int __cil_tmp31 ;
18041  int __cil_tmp32 ;
18042  unsigned int __cil_tmp33 ;
18043  unsigned int __cil_tmp34 ;
18044  unsigned int __cil_tmp35 ;
18045  unsigned char __cil_tmp36 ;
18046  int __cil_tmp37 ;
18047  unsigned char __cil_tmp38 ;
18048  int __cil_tmp39 ;
18049  int __cil_tmp40 ;
18050  struct tty_struct *__cil_tmp41 ;
18051  unsigned long __cil_tmp42 ;
18052  unsigned long __cil_tmp43 ;
18053  int __cil_tmp44 ;
18054  unsigned long __cil_tmp45 ;
18055  unsigned long __cil_tmp46 ;
18056  int __cil_tmp47 ;
18057  int __cil_tmp48 ;
18058  unsigned long __cil_tmp49 ;
18059  unsigned long __cil_tmp50 ;
18060  unsigned int __cil_tmp51 ;
18061  unsigned long __cil_tmp52 ;
18062  unsigned long __cil_tmp53 ;
18063  struct tty_struct *__cil_tmp54 ;
18064  struct ktermios *__cil_tmp55 ;
18065  tcflag_t __cil_tmp56 ;
18066  unsigned int __cil_tmp57 ;
18067  unsigned int __cil_tmp58 ;
18068  struct tty_struct *__cil_tmp59 ;
18069  struct ktermios *__cil_tmp60 ;
18070  tcflag_t __cil_tmp61 ;
18071  unsigned int __cil_tmp62 ;
18072  unsigned int __cil_tmp63 ;
18073  struct tty_struct *__cil_tmp64 ;
18074  struct ktermios *__cil_tmp65 ;
18075  tcflag_t __cil_tmp66 ;
18076  unsigned int __cil_tmp67 ;
18077  unsigned int __cil_tmp68 ;
18078  struct tty_struct *__cil_tmp69 ;
18079  struct ktermios *__cil_tmp70 ;
18080  tcflag_t __cil_tmp71 ;
18081  unsigned int __cil_tmp72 ;
18082  unsigned int __cil_tmp73 ;
18083  struct tty_struct *__cil_tmp74 ;
18084  struct ktermios *__cil_tmp75 ;
18085  tcflag_t __cil_tmp76 ;
18086  int __cil_tmp77 ;
18087  unsigned int __cil_tmp78 ;
18088  struct tty_struct *__cil_tmp79 ;
18089  struct ktermios *__cil_tmp80 ;
18090  tcflag_t __cil_tmp81 ;
18091  unsigned int __cil_tmp82 ;
18092  unsigned int __cil_tmp83 ;
18093
18094  {
18095  {
18096#line 2560
18097  __cil_tmp5 = (struct tty_struct *)0;
18098#line 2560
18099  __cil_tmp6 = (unsigned long )__cil_tmp5;
18100#line 2560
18101  __cil_tmp7 = info->port.tty;
18102#line 2560
18103  __cil_tmp8 = (unsigned long )__cil_tmp7;
18104#line 2560
18105  if (__cil_tmp8 == __cil_tmp6) {
18106#line 2561
18107    return;
18108  } else {
18109    {
18110#line 2560
18111    __cil_tmp9 = (struct ktermios *)0;
18112#line 2560
18113    __cil_tmp10 = (unsigned long )__cil_tmp9;
18114#line 2560
18115    __cil_tmp11 = info->port.tty;
18116#line 2560
18117    __cil_tmp12 = __cil_tmp11->termios;
18118#line 2560
18119    __cil_tmp13 = (unsigned long )__cil_tmp12;
18120#line 2560
18121    if (__cil_tmp13 == __cil_tmp10) {
18122#line 2561
18123      return;
18124    } else {
18125
18126    }
18127    }
18128  }
18129  }
18130#line 2562
18131  if (debug_level > 2) {
18132    {
18133#line 2562
18134    __cil_tmp14 = & info->device_name;
18135#line 2562
18136    __cil_tmp15 = (char *)__cil_tmp14;
18137#line 2562
18138    printk("%s change_params\n", __cil_tmp15);
18139    }
18140  } else {
18141
18142  }
18143#line 2564
18144  __cil_tmp16 = info->port.tty;
18145#line 2564
18146  __cil_tmp17 = __cil_tmp16->termios;
18147#line 2564
18148  cflag = __cil_tmp17->c_cflag;
18149  {
18150#line 2568
18151  __cil_tmp18 = cflag & 4111U;
18152#line 2568
18153  if (__cil_tmp18 != 0U) {
18154#line 2569
18155    __cil_tmp19 = info->signals;
18156#line 2569
18157    __cil_tmp20 = (unsigned int )__cil_tmp19;
18158#line 2569
18159    __cil_tmp21 = __cil_tmp20 | 160U;
18160#line 2569
18161    info->signals = (unsigned char )__cil_tmp21;
18162  } else {
18163#line 2571
18164    __cil_tmp22 = info->signals;
18165#line 2571
18166    __cil_tmp23 = (unsigned int )__cil_tmp22;
18167#line 2571
18168    __cil_tmp24 = __cil_tmp23 & 95U;
18169#line 2571
18170    info->signals = (unsigned char )__cil_tmp24;
18171  }
18172  }
18173  {
18174#line 2576
18175  __cil_tmp25 = cflag & 48U;
18176#line 2576
18177  __cil_tmp26 = (int )__cil_tmp25;
18178#line 2576
18179  if (__cil_tmp26 == 0) {
18180#line 2576
18181    goto case_0;
18182  } else {
18183    {
18184#line 2577
18185    __cil_tmp27 = cflag & 48U;
18186#line 2577
18187    __cil_tmp28 = (int )__cil_tmp27;
18188#line 2577
18189    if (__cil_tmp28 == 16) {
18190#line 2577
18191      goto case_16;
18192    } else {
18193      {
18194#line 2578
18195      __cil_tmp29 = cflag & 48U;
18196#line 2578
18197      __cil_tmp30 = (int )__cil_tmp29;
18198#line 2578
18199      if (__cil_tmp30 == 32) {
18200#line 2578
18201        goto case_32;
18202      } else {
18203        {
18204#line 2579
18205        __cil_tmp31 = cflag & 48U;
18206#line 2579
18207        __cil_tmp32 = (int )__cil_tmp31;
18208#line 2579
18209        if (__cil_tmp32 == 48) {
18210#line 2579
18211          goto case_48;
18212        } else {
18213#line 2580
18214          goto switch_default;
18215#line 2575
18216          if (0) {
18217            case_0: 
18218#line 2576
18219            info->params.data_bits = (unsigned char)5;
18220#line 2576
18221            goto ldv_36994;
18222            case_16: 
18223#line 2577
18224            info->params.data_bits = (unsigned char)6;
18225#line 2577
18226            goto ldv_36994;
18227            case_32: 
18228#line 2578
18229            info->params.data_bits = (unsigned char)7;
18230#line 2578
18231            goto ldv_36994;
18232            case_48: 
18233#line 2579
18234            info->params.data_bits = (unsigned char)8;
18235#line 2579
18236            goto ldv_36994;
18237            switch_default: 
18238#line 2580
18239            info->params.data_bits = (unsigned char)7;
18240#line 2580
18241            goto ldv_36994;
18242          } else {
18243
18244          }
18245        }
18246        }
18247      }
18248      }
18249    }
18250    }
18251  }
18252  }
18253  ldv_36994: ;
18254  {
18255#line 2583
18256  __cil_tmp33 = cflag & 64U;
18257#line 2583
18258  if (__cil_tmp33 != 0U) {
18259#line 2583
18260    info->params.stop_bits = (unsigned char)2;
18261  } else {
18262#line 2583
18263    info->params.stop_bits = (unsigned char)1;
18264  }
18265  }
18266  {
18267#line 2585
18268  __cil_tmp34 = cflag & 256U;
18269#line 2585
18270  if (__cil_tmp34 != 0U) {
18271    {
18272#line 2586
18273    __cil_tmp35 = cflag & 512U;
18274#line 2586
18275    if (__cil_tmp35 != 0U) {
18276#line 2586
18277      info->params.parity = (unsigned char)2;
18278    } else {
18279#line 2586
18280      info->params.parity = (unsigned char)1;
18281    }
18282    }
18283  } else {
18284#line 2588
18285    info->params.parity = (unsigned char)0;
18286  }
18287  }
18288  {
18289#line 2593
18290  __cil_tmp36 = info->params.stop_bits;
18291#line 2593
18292  __cil_tmp37 = (int )__cil_tmp36;
18293#line 2593
18294  __cil_tmp38 = info->params.data_bits;
18295#line 2593
18296  __cil_tmp39 = (int )__cil_tmp38;
18297#line 2593
18298  __cil_tmp40 = __cil_tmp39 + __cil_tmp37;
18299#line 2593
18300  bits_per_char = __cil_tmp40 + 1;
18301#line 2596
18302  __cil_tmp41 = info->port.tty;
18303#line 2596
18304  tmp = tty_get_baud_rate(__cil_tmp41);
18305#line 2596
18306  info->params.data_rate = (unsigned long )tmp;
18307  }
18308  {
18309#line 2598
18310  __cil_tmp42 = info->params.data_rate;
18311#line 2598
18312  if (__cil_tmp42 != 0UL) {
18313#line 2599
18314    __cil_tmp43 = info->params.data_rate;
18315#line 2599
18316    __cil_tmp44 = bits_per_char * 8000;
18317#line 2599
18318    __cil_tmp45 = (unsigned long )__cil_tmp44;
18319#line 2599
18320    __cil_tmp46 = __cil_tmp45 / __cil_tmp43;
18321#line 2599
18322    info->timeout = (int )__cil_tmp46;
18323  } else {
18324
18325  }
18326  }
18327#line 2602
18328  __cil_tmp47 = info->timeout;
18329#line 2602
18330  info->timeout = __cil_tmp47 + 5;
18331  {
18332#line 2604
18333  __cil_tmp48 = (int )cflag;
18334#line 2604
18335  if (__cil_tmp48 < 0) {
18336#line 2605
18337    __cil_tmp49 = info->port.flags;
18338#line 2605
18339    info->port.flags = __cil_tmp49 | 67108864UL;
18340  } else {
18341#line 2607
18342    __cil_tmp50 = info->port.flags;
18343#line 2607
18344    info->port.flags = __cil_tmp50 & 4227858431UL;
18345  }
18346  }
18347  {
18348#line 2609
18349  __cil_tmp51 = cflag & 2048U;
18350#line 2609
18351  if (__cil_tmp51 != 0U) {
18352#line 2610
18353    __cil_tmp52 = info->port.flags;
18354#line 2610
18355    info->port.flags = __cil_tmp52 & 4261412863UL;
18356  } else {
18357#line 2612
18358    __cil_tmp53 = info->port.flags;
18359#line 2612
18360    info->port.flags = __cil_tmp53 | 33554432UL;
18361  }
18362  }
18363#line 2616
18364  info->read_status_mask = 256U;
18365  {
18366#line 2617
18367  __cil_tmp54 = info->port.tty;
18368#line 2617
18369  __cil_tmp55 = __cil_tmp54->termios;
18370#line 2617
18371  __cil_tmp56 = __cil_tmp55->c_iflag;
18372#line 2617
18373  __cil_tmp57 = __cil_tmp56 & 16U;
18374#line 2617
18375  if (__cil_tmp57 != 0U) {
18376#line 2618
18377    __cil_tmp58 = info->read_status_mask;
18378#line 2618
18379    info->read_status_mask = __cil_tmp58 | 3U;
18380  } else {
18381
18382  }
18383  }
18384  {
18385#line 2619
18386  __cil_tmp59 = info->port.tty;
18387#line 2619
18388  __cil_tmp60 = __cil_tmp59->termios;
18389#line 2619
18390  __cil_tmp61 = __cil_tmp60->c_iflag;
18391#line 2619
18392  __cil_tmp62 = __cil_tmp61 & 2U;
18393#line 2619
18394  if (__cil_tmp62 != 0U) {
18395#line 2620
18396    __cil_tmp63 = info->read_status_mask;
18397#line 2620
18398    info->read_status_mask = __cil_tmp63 | 16384U;
18399  } else {
18400    {
18401#line 2619
18402    __cil_tmp64 = info->port.tty;
18403#line 2619
18404    __cil_tmp65 = __cil_tmp64->termios;
18405#line 2619
18406    __cil_tmp66 = __cil_tmp65->c_iflag;
18407#line 2619
18408    __cil_tmp67 = __cil_tmp66 & 8U;
18409#line 2619
18410    if (__cil_tmp67 != 0U) {
18411#line 2620
18412      __cil_tmp68 = info->read_status_mask;
18413#line 2620
18414      info->read_status_mask = __cil_tmp68 | 16384U;
18415    } else {
18416
18417    }
18418    }
18419  }
18420  }
18421  {
18422#line 2621
18423  __cil_tmp69 = info->port.tty;
18424#line 2621
18425  __cil_tmp70 = __cil_tmp69->termios;
18426#line 2621
18427  __cil_tmp71 = __cil_tmp70->c_iflag;
18428#line 2621
18429  __cil_tmp72 = __cil_tmp71 & 4U;
18430#line 2621
18431  if (__cil_tmp72 != 0U) {
18432#line 2622
18433    __cil_tmp73 = info->ignore_status_mask;
18434#line 2622
18435    info->ignore_status_mask = __cil_tmp73 | 3U;
18436  } else {
18437
18438  }
18439  }
18440  {
18441#line 2623
18442  __cil_tmp74 = info->port.tty;
18443#line 2623
18444  __cil_tmp75 = __cil_tmp74->termios;
18445#line 2623
18446  __cil_tmp76 = __cil_tmp75->c_iflag;
18447#line 2623
18448  __cil_tmp77 = (int )__cil_tmp76;
18449#line 2623
18450  if (__cil_tmp77 & 1) {
18451#line 2624
18452    __cil_tmp78 = info->ignore_status_mask;
18453#line 2624
18454    info->ignore_status_mask = __cil_tmp78 | 16384U;
18455    {
18456#line 2628
18457    __cil_tmp79 = info->port.tty;
18458#line 2628
18459    __cil_tmp80 = __cil_tmp79->termios;
18460#line 2628
18461    __cil_tmp81 = __cil_tmp80->c_iflag;
18462#line 2628
18463    __cil_tmp82 = __cil_tmp81 & 4U;
18464#line 2628
18465    if (__cil_tmp82 != 0U) {
18466#line 2629
18467      __cil_tmp83 = info->ignore_status_mask;
18468#line 2629
18469      info->ignore_status_mask = __cil_tmp83 | 16U;
18470    } else {
18471
18472    }
18473    }
18474  } else {
18475
18476  }
18477  }
18478  {
18479#line 2632
18480  program_hw(info);
18481  }
18482#line 2633
18483  return;
18484}
18485}
18486#line 2635 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
18487static int get_stats(struct slgt_info *info , struct mgsl_icount *user_icount ) 
18488{ int tmp ;
18489  char (*__cil_tmp4)[25U] ;
18490  char *__cil_tmp5 ;
18491  struct mgsl_icount *__cil_tmp6 ;
18492  unsigned long __cil_tmp7 ;
18493  unsigned long __cil_tmp8 ;
18494  struct mgsl_icount *__cil_tmp9 ;
18495  void *__cil_tmp10 ;
18496  void *__cil_tmp11 ;
18497  struct mgsl_icount *__cil_tmp12 ;
18498  void const   *__cil_tmp13 ;
18499
18500  {
18501#line 2637
18502  if (debug_level > 2) {
18503    {
18504#line 2637
18505    __cil_tmp4 = & info->device_name;
18506#line 2637
18507    __cil_tmp5 = (char *)__cil_tmp4;
18508#line 2637
18509    printk("%s get_stats\n", __cil_tmp5);
18510    }
18511  } else {
18512
18513  }
18514  {
18515#line 2638
18516  __cil_tmp6 = (struct mgsl_icount *)0;
18517#line 2638
18518  __cil_tmp7 = (unsigned long )__cil_tmp6;
18519#line 2638
18520  __cil_tmp8 = (unsigned long )user_icount;
18521#line 2638
18522  if (__cil_tmp8 == __cil_tmp7) {
18523    {
18524#line 2639
18525    __cil_tmp9 = & info->icount;
18526#line 2639
18527    __cil_tmp10 = (void *)__cil_tmp9;
18528#line 2639
18529    memset(__cil_tmp10, 0, 92UL);
18530    }
18531  } else {
18532    {
18533#line 2641
18534    __cil_tmp11 = (void *)user_icount;
18535#line 2641
18536    __cil_tmp12 = & info->icount;
18537#line 2641
18538    __cil_tmp13 = (void const   *)__cil_tmp12;
18539#line 2641
18540    tmp = copy_to_user(__cil_tmp11, __cil_tmp13, 92U);
18541    }
18542#line 2641
18543    if (tmp != 0) {
18544#line 2642
18545      return (-14);
18546    } else {
18547
18548    }
18549  }
18550  }
18551#line 2644
18552  return (0);
18553}
18554}
18555#line 2647 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
18556static int get_params(struct slgt_info *info , MGSL_PARAMS *user_params ) 
18557{ int tmp ;
18558  char (*__cil_tmp4)[25U] ;
18559  char *__cil_tmp5 ;
18560  void *__cil_tmp6 ;
18561  MGSL_PARAMS *__cil_tmp7 ;
18562  void const   *__cil_tmp8 ;
18563
18564  {
18565#line 2649
18566  if (debug_level > 2) {
18567    {
18568#line 2649
18569    __cil_tmp4 = & info->device_name;
18570#line 2649
18571    __cil_tmp5 = (char *)__cil_tmp4;
18572#line 2649
18573    printk("%s get_params\n", __cil_tmp5);
18574    }
18575  } else {
18576
18577  }
18578  {
18579#line 2650
18580  __cil_tmp6 = (void *)user_params;
18581#line 2650
18582  __cil_tmp7 = & info->params;
18583#line 2650
18584  __cil_tmp8 = (void const   *)__cil_tmp7;
18585#line 2650
18586  tmp = copy_to_user(__cil_tmp6, __cil_tmp8, 48U);
18587  }
18588#line 2650
18589  if (tmp != 0) {
18590#line 2651
18591    return (-14);
18592  } else {
18593
18594  }
18595#line 2652
18596  return (0);
18597}
18598}
18599#line 2655 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
18600static int set_params(struct slgt_info *info , MGSL_PARAMS *new_params ) 
18601{ unsigned long flags ;
18602  MGSL_PARAMS tmp_params ;
18603  unsigned long tmp ;
18604  raw_spinlock_t *tmp___0 ;
18605  size_t __len ;
18606  void *__ret ;
18607  char (*__cil_tmp9)[25U] ;
18608  char *__cil_tmp10 ;
18609  void *__cil_tmp11 ;
18610  void const   *__cil_tmp12 ;
18611  spinlock_t *__cil_tmp13 ;
18612  MGSL_PARAMS *__cil_tmp14 ;
18613  void *__cil_tmp15 ;
18614  void const   *__cil_tmp16 ;
18615  MGSL_PARAMS *__cil_tmp17 ;
18616  void *__cil_tmp18 ;
18617  void const   *__cil_tmp19 ;
18618  spinlock_t *__cil_tmp20 ;
18619
18620  {
18621#line 2660
18622  if (debug_level > 2) {
18623    {
18624#line 2660
18625    __cil_tmp9 = & info->device_name;
18626#line 2660
18627    __cil_tmp10 = (char *)__cil_tmp9;
18628#line 2660
18629    printk("%s set_params\n", __cil_tmp10);
18630    }
18631  } else {
18632
18633  }
18634  {
18635#line 2661
18636  __cil_tmp11 = (void *)(& tmp_params);
18637#line 2661
18638  __cil_tmp12 = (void const   *)new_params;
18639#line 2661
18640  tmp = copy_from_user(__cil_tmp11, __cil_tmp12, 48UL);
18641  }
18642#line 2661
18643  if (tmp != 0UL) {
18644#line 2662
18645    return (-14);
18646  } else {
18647
18648  }
18649  {
18650#line 2664
18651  __cil_tmp13 = & info->lock;
18652#line 2664
18653  tmp___0 = spinlock_check(__cil_tmp13);
18654#line 2664
18655  flags = _raw_spin_lock_irqsave(tmp___0);
18656  }
18657#line 2665
18658  if (tmp_params.mode == 7UL) {
18659#line 2666
18660    info->base_clock = (unsigned int )tmp_params.clock_speed;
18661  } else {
18662#line 2668
18663    __len = 48UL;
18664#line 2668
18665    if (__len > 63UL) {
18666      {
18667#line 2668
18668      __cil_tmp14 = & info->params;
18669#line 2668
18670      __cil_tmp15 = (void *)__cil_tmp14;
18671#line 2668
18672      __cil_tmp16 = (void const   *)(& tmp_params);
18673#line 2668
18674      __ret = __memcpy(__cil_tmp15, __cil_tmp16, __len);
18675      }
18676    } else {
18677      {
18678#line 2668
18679      __cil_tmp17 = & info->params;
18680#line 2668
18681      __cil_tmp18 = (void *)__cil_tmp17;
18682#line 2668
18683      __cil_tmp19 = (void const   *)(& tmp_params);
18684#line 2668
18685      __ret = __builtin_memcpy(__cil_tmp18, __cil_tmp19, __len);
18686      }
18687    }
18688  }
18689  {
18690#line 2669
18691  __cil_tmp20 = & info->lock;
18692#line 2669
18693  spin_unlock_irqrestore(__cil_tmp20, flags);
18694#line 2671
18695  program_hw(info);
18696  }
18697#line 2673
18698  return (0);
18699}
18700}
18701#line 2676 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
18702static int get_txidle(struct slgt_info *info , int *idle_mode ) 
18703{ int __ret_pu ;
18704  int __pu_val ;
18705  char (*__cil_tmp5)[25U] ;
18706  char *__cil_tmp6 ;
18707  u32 __cil_tmp7 ;
18708  u32 __cil_tmp8 ;
18709
18710  {
18711#line 2678
18712  if (debug_level > 2) {
18713    {
18714#line 2678
18715    __cil_tmp5 = & info->device_name;
18716#line 2678
18717    __cil_tmp6 = (char *)__cil_tmp5;
18718#line 2678
18719    __cil_tmp7 = info->idle_mode;
18720#line 2678
18721    printk("%s get_txidle=%d\n", __cil_tmp6, __cil_tmp7);
18722    }
18723  } else {
18724
18725  }
18726  {
18727#line 2679
18728  might_fault();
18729#line 2679
18730  __cil_tmp8 = info->idle_mode;
18731#line 2679
18732  __pu_val = (int )__cil_tmp8;
18733  }
18734#line 2679
18735  if (1) {
18736#line 2679
18737    goto case_4;
18738  } else {
18739#line 2679
18740    goto switch_default;
18741#line 2679
18742    if (0) {
18743#line 2679
18744      __asm__  volatile   ("call __put_user_1": "=a" (__ret_pu): "0" (__pu_val), "c" (idle_mode): "ebx");
18745#line 2679
18746      goto ldv_37026;
18747#line 2679
18748      __asm__  volatile   ("call __put_user_2": "=a" (__ret_pu): "0" (__pu_val), "c" (idle_mode): "ebx");
18749#line 2679
18750      goto ldv_37026;
18751      case_4: 
18752#line 2679
18753      __asm__  volatile   ("call __put_user_4": "=a" (__ret_pu): "0" (__pu_val), "c" (idle_mode): "ebx");
18754#line 2679
18755      goto ldv_37026;
18756#line 2679
18757      __asm__  volatile   ("call __put_user_8": "=a" (__ret_pu): "0" (__pu_val), "c" (idle_mode): "ebx");
18758#line 2679
18759      goto ldv_37026;
18760      switch_default: 
18761#line 2679
18762      __asm__  volatile   ("call __put_user_X": "=a" (__ret_pu): "0" (__pu_val), "c" (idle_mode): "ebx");
18763#line 2679
18764      goto ldv_37026;
18765    } else {
18766
18767    }
18768  }
18769  ldv_37026: ;
18770#line 2679
18771  if (__ret_pu != 0) {
18772#line 2680
18773    return (-14);
18774  } else {
18775
18776  }
18777#line 2681
18778  return (0);
18779}
18780}
18781#line 2684 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
18782static int set_txidle(struct slgt_info *info , int idle_mode ) 
18783{ unsigned long flags ;
18784  raw_spinlock_t *tmp ;
18785  char (*__cil_tmp5)[25U] ;
18786  char *__cil_tmp6 ;
18787  spinlock_t *__cil_tmp7 ;
18788  unsigned long __cil_tmp8 ;
18789  spinlock_t *__cil_tmp9 ;
18790
18791  {
18792#line 2687
18793  if (debug_level > 2) {
18794    {
18795#line 2687
18796    __cil_tmp5 = & info->device_name;
18797#line 2687
18798    __cil_tmp6 = (char *)__cil_tmp5;
18799#line 2687
18800    printk("%s set_txidle(%d)\n", __cil_tmp6, idle_mode);
18801    }
18802  } else {
18803
18804  }
18805  {
18806#line 2688
18807  __cil_tmp7 = & info->lock;
18808#line 2688
18809  tmp = spinlock_check(__cil_tmp7);
18810#line 2688
18811  flags = _raw_spin_lock_irqsave(tmp);
18812#line 2689
18813  info->idle_mode = (u32 )idle_mode;
18814  }
18815  {
18816#line 2690
18817  __cil_tmp8 = info->params.mode;
18818#line 2690
18819  if (__cil_tmp8 != 1UL) {
18820    {
18821#line 2691
18822    tx_set_idle(info);
18823    }
18824  } else {
18825
18826  }
18827  }
18828  {
18829#line 2692
18830  __cil_tmp9 = & info->lock;
18831#line 2692
18832  spin_unlock_irqrestore(__cil_tmp9, flags);
18833  }
18834#line 2693
18835  return (0);
18836}
18837}
18838#line 2696 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
18839static int tx_enable(struct slgt_info *info , int enable ) 
18840{ unsigned long flags ;
18841  raw_spinlock_t *tmp ;
18842  char (*__cil_tmp5)[25U] ;
18843  char *__cil_tmp6 ;
18844  spinlock_t *__cil_tmp7 ;
18845  bool __cil_tmp8 ;
18846  bool __cil_tmp9 ;
18847  spinlock_t *__cil_tmp10 ;
18848
18849  {
18850#line 2699
18851  if (debug_level > 2) {
18852    {
18853#line 2699
18854    __cil_tmp5 = & info->device_name;
18855#line 2699
18856    __cil_tmp6 = (char *)__cil_tmp5;
18857#line 2699
18858    printk("%s tx_enable(%d)\n", __cil_tmp6, enable);
18859    }
18860  } else {
18861
18862  }
18863  {
18864#line 2700
18865  __cil_tmp7 = & info->lock;
18866#line 2700
18867  tmp = spinlock_check(__cil_tmp7);
18868#line 2700
18869  flags = _raw_spin_lock_irqsave(tmp);
18870  }
18871#line 2701
18872  if (enable != 0) {
18873    {
18874#line 2702
18875    __cil_tmp8 = info->tx_enabled;
18876#line 2702
18877    if (! __cil_tmp8) {
18878      {
18879#line 2703
18880      tx_start(info);
18881      }
18882    } else {
18883      {
18884#line 2705
18885      __cil_tmp9 = info->tx_enabled;
18886#line 2705
18887      if ((int )__cil_tmp9) {
18888        {
18889#line 2706
18890        tx_stop(info);
18891        }
18892      } else {
18893
18894      }
18895      }
18896    }
18897    }
18898  } else {
18899
18900  }
18901  {
18902#line 2708
18903  __cil_tmp10 = & info->lock;
18904#line 2708
18905  spin_unlock_irqrestore(__cil_tmp10, flags);
18906  }
18907#line 2709
18908  return (0);
18909}
18910}
18911#line 2715 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
18912static int tx_abort(struct slgt_info *info ) 
18913{ unsigned long flags ;
18914  raw_spinlock_t *tmp ;
18915  char (*__cil_tmp4)[25U] ;
18916  char *__cil_tmp5 ;
18917  spinlock_t *__cil_tmp6 ;
18918  spinlock_t *__cil_tmp7 ;
18919
18920  {
18921#line 2718
18922  if (debug_level > 2) {
18923    {
18924#line 2718
18925    __cil_tmp4 = & info->device_name;
18926#line 2718
18927    __cil_tmp5 = (char *)__cil_tmp4;
18928#line 2718
18929    printk("%s tx_abort\n", __cil_tmp5);
18930    }
18931  } else {
18932
18933  }
18934  {
18935#line 2719
18936  __cil_tmp6 = & info->lock;
18937#line 2719
18938  tmp = spinlock_check(__cil_tmp6);
18939#line 2719
18940  flags = _raw_spin_lock_irqsave(tmp);
18941#line 2720
18942  tdma_reset(info);
18943#line 2721
18944  __cil_tmp7 = & info->lock;
18945#line 2721
18946  spin_unlock_irqrestore(__cil_tmp7, flags);
18947  }
18948#line 2722
18949  return (0);
18950}
18951}
18952#line 2725 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
18953static int rx_enable(struct slgt_info *info , int enable ) 
18954{ unsigned long flags ;
18955  unsigned int rbuf_fill_level ;
18956  raw_spinlock_t *tmp ;
18957  __u16 tmp___0 ;
18958  char (*__cil_tmp7)[25U] ;
18959  char *__cil_tmp8 ;
18960  spinlock_t *__cil_tmp9 ;
18961  unsigned int __cil_tmp10 ;
18962  spinlock_t *__cil_tmp11 ;
18963  unsigned int __cil_tmp12 ;
18964  spinlock_t *__cil_tmp13 ;
18965  bool __cil_tmp14 ;
18966  unsigned int __cil_tmp15 ;
18967  unsigned int __cil_tmp16 ;
18968  int __cil_tmp17 ;
18969  __u16 __cil_tmp18 ;
18970  bool __cil_tmp19 ;
18971  spinlock_t *__cil_tmp20 ;
18972
18973  {
18974#line 2729
18975  if (debug_level > 2) {
18976    {
18977#line 2729
18978    __cil_tmp7 = & info->device_name;
18979#line 2729
18980    __cil_tmp8 = (char *)__cil_tmp7;
18981#line 2729
18982    printk("%s rx_enable(%08x)\n", __cil_tmp8, enable);
18983    }
18984  } else {
18985
18986  }
18987  {
18988#line 2730
18989  __cil_tmp9 = & info->lock;
18990#line 2730
18991  tmp = spinlock_check(__cil_tmp9);
18992#line 2730
18993  flags = _raw_spin_lock_irqsave(tmp);
18994#line 2736
18995  __cil_tmp10 = (unsigned int )enable;
18996#line 2736
18997  rbuf_fill_level = __cil_tmp10 >> 16;
18998  }
18999#line 2737
19000  if (rbuf_fill_level != 0U) {
19001#line 2738
19002    if (rbuf_fill_level > 256U) {
19003      {
19004#line 2739
19005      __cil_tmp11 = & info->lock;
19006#line 2739
19007      spin_unlock_irqrestore(__cil_tmp11, flags);
19008      }
19009#line 2740
19010      return (-22);
19011    } else {
19012      {
19013#line 2738
19014      __cil_tmp12 = rbuf_fill_level & 3U;
19015#line 2738
19016      if (__cil_tmp12 != 0U) {
19017        {
19018#line 2739
19019        __cil_tmp13 = & info->lock;
19020#line 2739
19021        spin_unlock_irqrestore(__cil_tmp13, flags);
19022        }
19023#line 2740
19024        return (-22);
19025      } else {
19026
19027      }
19028      }
19029    }
19030#line 2742
19031    info->rbuf_fill_level = rbuf_fill_level;
19032#line 2743
19033    if (rbuf_fill_level <= 127U) {
19034#line 2744
19035      info->rx_pio = 1U;
19036    } else {
19037#line 2746
19038      info->rx_pio = 0U;
19039    }
19040    {
19041#line 2747
19042    rx_stop(info);
19043    }
19044  } else {
19045
19046  }
19047#line 2756
19048  enable = enable & 3;
19049#line 2757
19050  if (enable != 0) {
19051    {
19052#line 2758
19053    __cil_tmp14 = info->rx_enabled;
19054#line 2758
19055    if (! __cil_tmp14) {
19056      {
19057#line 2759
19058      rx_start(info);
19059      }
19060    } else
19061#line 2760
19062    if (enable == 2) {
19063      {
19064#line 2762
19065      tmp___0 = rd_reg16(info, 134U);
19066#line 2762
19067      __cil_tmp15 = (unsigned int )tmp___0;
19068#line 2762
19069      __cil_tmp16 = __cil_tmp15 | 8U;
19070#line 2762
19071      __cil_tmp17 = (int )__cil_tmp16;
19072#line 2762
19073      __cil_tmp18 = (__u16 )__cil_tmp17;
19074#line 2762
19075      wr_reg16(info, 134U, __cil_tmp18);
19076      }
19077    } else {
19078      {
19079#line 2765
19080      __cil_tmp19 = info->rx_enabled;
19081#line 2765
19082      if ((int )__cil_tmp19) {
19083        {
19084#line 2766
19085        rx_stop(info);
19086        }
19087      } else {
19088
19089      }
19090      }
19091    }
19092    }
19093  } else {
19094
19095  }
19096  {
19097#line 2768
19098  __cil_tmp20 = & info->lock;
19099#line 2768
19100  spin_unlock_irqrestore(__cil_tmp20, flags);
19101  }
19102#line 2769
19103  return (0);
19104}
19105}
19106#line 2775 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
19107static int wait_mgsl_event(struct slgt_info *info , int *mask_ptr ) 
19108{ unsigned long flags ;
19109  int s ;
19110  int rc ;
19111  struct mgsl_icount cprev ;
19112  struct mgsl_icount cnow ;
19113  int events ;
19114  int mask ;
19115  struct _input_signal_events oldsigs ;
19116  struct _input_signal_events newsigs ;
19117  wait_queue_t wait ;
19118  struct task_struct *tmp ;
19119  int __ret_gu ;
19120  unsigned long __val_gu ;
19121  raw_spinlock_t *tmp___0 ;
19122  int tmp___1 ;
19123  int tmp___2 ;
19124  int tmp___3 ;
19125  int tmp___4 ;
19126  unsigned short val ;
19127  __u16 tmp___5 ;
19128  long volatile   __x ;
19129  u8 volatile   *__ptr ;
19130  struct task_struct *tmp___6 ;
19131  u16 volatile   *__ptr___0 ;
19132  struct task_struct *tmp___7 ;
19133  u32 volatile   *__ptr___1 ;
19134  struct task_struct *tmp___8 ;
19135  u64 volatile   *__ptr___2 ;
19136  struct task_struct *tmp___9 ;
19137  struct task_struct *tmp___10 ;
19138  int tmp___11 ;
19139  raw_spinlock_t *tmp___12 ;
19140  long volatile   __x___0 ;
19141  u8 volatile   *__ptr___3 ;
19142  struct task_struct *tmp___13 ;
19143  u16 volatile   *__ptr___4 ;
19144  struct task_struct *tmp___14 ;
19145  u32 volatile   *__ptr___5 ;
19146  struct task_struct *tmp___15 ;
19147  u64 volatile   *__ptr___6 ;
19148  struct task_struct *tmp___16 ;
19149  int tmp___17 ;
19150  int tmp___18 ;
19151  int tmp___19 ;
19152  int tmp___20 ;
19153  int tmp___21 ;
19154  int tmp___22 ;
19155  int tmp___23 ;
19156  int tmp___24 ;
19157  int tmp___25 ;
19158  long volatile   __x___1 ;
19159  u8 volatile   *__ptr___7 ;
19160  struct task_struct *tmp___26 ;
19161  u16 volatile   *__ptr___8 ;
19162  struct task_struct *tmp___27 ;
19163  u32 volatile   *__ptr___9 ;
19164  struct task_struct *tmp___28 ;
19165  u64 volatile   *__ptr___10 ;
19166  struct task_struct *tmp___29 ;
19167  raw_spinlock_t *tmp___30 ;
19168  __u16 tmp___31 ;
19169  int tmp___32 ;
19170  int __ret_pu ;
19171  int __pu_val ;
19172  char (*__cil_tmp67)[25U] ;
19173  char *__cil_tmp68 ;
19174  spinlock_t *__cil_tmp69 ;
19175  unsigned char __cil_tmp70 ;
19176  int __cil_tmp71 ;
19177  int __cil_tmp72 ;
19178  int __cil_tmp73 ;
19179  int __cil_tmp74 ;
19180  int __cil_tmp75 ;
19181  int __cil_tmp76 ;
19182  spinlock_t *__cil_tmp77 ;
19183  int __cil_tmp78 ;
19184  int __cil_tmp79 ;
19185  int __cil_tmp80 ;
19186  unsigned int __cil_tmp81 ;
19187  unsigned int __cil_tmp82 ;
19188  int __cil_tmp83 ;
19189  __u16 __cil_tmp84 ;
19190  long volatile   *__cil_tmp85 ;
19191  long volatile   *__cil_tmp86 ;
19192  long volatile   *__cil_tmp87 ;
19193  long volatile   *__cil_tmp88 ;
19194  wait_queue_head_t *__cil_tmp89 ;
19195  spinlock_t *__cil_tmp90 ;
19196  spinlock_t *__cil_tmp91 ;
19197  long volatile   *__cil_tmp92 ;
19198  long volatile   *__cil_tmp93 ;
19199  long volatile   *__cil_tmp94 ;
19200  long volatile   *__cil_tmp95 ;
19201  spinlock_t *__cil_tmp96 ;
19202  int __cil_tmp97 ;
19203  int __cil_tmp98 ;
19204  int __cil_tmp99 ;
19205  int __cil_tmp100 ;
19206  int __cil_tmp101 ;
19207  int __cil_tmp102 ;
19208  int __cil_tmp103 ;
19209  int __cil_tmp104 ;
19210  int __cil_tmp105 ;
19211  int __cil_tmp106 ;
19212  wait_queue_head_t *__cil_tmp107 ;
19213  long volatile   *__cil_tmp108 ;
19214  long volatile   *__cil_tmp109 ;
19215  long volatile   *__cil_tmp110 ;
19216  long volatile   *__cil_tmp111 ;
19217  int __cil_tmp112 ;
19218  spinlock_t *__cil_tmp113 ;
19219  wait_queue_head_t *__cil_tmp114 ;
19220  int __cil_tmp115 ;
19221  int __cil_tmp116 ;
19222  __u16 __cil_tmp117 ;
19223  spinlock_t *__cil_tmp118 ;
19224
19225  {
19226  {
19227#line 2779
19228  rc = 0;
19229#line 2784
19230  tmp = get_current();
19231#line 2784
19232  wait.flags = 0U;
19233#line 2784
19234  wait.private = (void *)tmp;
19235#line 2784
19236  wait.func = & default_wake_function;
19237#line 2784
19238  wait.task_list.next = (struct list_head *)0;
19239#line 2784
19240  wait.task_list.prev = (struct list_head *)0;
19241#line 2786
19242  might_fault();
19243  }
19244#line 2786
19245  if (1) {
19246#line 2786
19247    goto case_4;
19248  } else {
19249#line 2786
19250    goto switch_default;
19251#line 2786
19252    if (0) {
19253#line 2786
19254      __asm__  volatile   ("call __get_user_1": "=a" (__ret_gu), "=d" (__val_gu): "0" (mask_ptr));
19255#line 2786
19256      goto ldv_37081;
19257#line 2786
19258      __asm__  volatile   ("call __get_user_2": "=a" (__ret_gu), "=d" (__val_gu): "0" (mask_ptr));
19259#line 2786
19260      goto ldv_37081;
19261      case_4: 
19262#line 2786
19263      __asm__  volatile   ("call __get_user_4": "=a" (__ret_gu), "=d" (__val_gu): "0" (mask_ptr));
19264#line 2786
19265      goto ldv_37081;
19266#line 2786
19267      __asm__  volatile   ("call __get_user_8": "=a" (__ret_gu), "=d" (__val_gu): "0" (mask_ptr));
19268#line 2786
19269      goto ldv_37081;
19270      switch_default: 
19271#line 2786
19272      __asm__  volatile   ("call __get_user_X": "=a" (__ret_gu), "=d" (__val_gu): "0" (mask_ptr));
19273#line 2786
19274      goto ldv_37081;
19275    } else {
19276
19277    }
19278  }
19279  ldv_37081: 
19280#line 2786
19281  mask = (int )__val_gu;
19282#line 2786
19283  if (__ret_gu != 0) {
19284#line 2787
19285    return (-14);
19286  } else {
19287
19288  }
19289#line 2789
19290  if (debug_level > 2) {
19291    {
19292#line 2789
19293    __cil_tmp67 = & info->device_name;
19294#line 2789
19295    __cil_tmp68 = (char *)__cil_tmp67;
19296#line 2789
19297    printk("%s wait_mgsl_event(%d)\n", __cil_tmp68, mask);
19298    }
19299  } else {
19300
19301  }
19302  {
19303#line 2791
19304  __cil_tmp69 = & info->lock;
19305#line 2791
19306  tmp___0 = spinlock_check(__cil_tmp69);
19307#line 2791
19308  flags = _raw_spin_lock_irqsave(tmp___0);
19309#line 2794
19310  get_signals(info);
19311#line 2795
19312  __cil_tmp70 = info->signals;
19313#line 2795
19314  s = (int )__cil_tmp70;
19315  }
19316  {
19317#line 2797
19318  __cil_tmp71 = s & 64;
19319#line 2797
19320  if (__cil_tmp71 != 0) {
19321#line 2797
19322    tmp___1 = 1;
19323  } else {
19324#line 2797
19325    tmp___1 = 2;
19326  }
19327  }
19328#line 2797
19329  if (s & 1) {
19330#line 2797
19331    tmp___2 = 16;
19332  } else {
19333#line 2797
19334    tmp___2 = 32;
19335  }
19336  {
19337#line 2797
19338  __cil_tmp72 = s & 16;
19339#line 2797
19340  if (__cil_tmp72 != 0) {
19341#line 2797
19342    tmp___3 = 4;
19343  } else {
19344#line 2797
19345    tmp___3 = 8;
19346  }
19347  }
19348  {
19349#line 2797
19350  __cil_tmp73 = s & 4;
19351#line 2797
19352  if (__cil_tmp73 != 0) {
19353#line 2797
19354    tmp___4 = 64;
19355  } else {
19356#line 2797
19357    tmp___4 = 128;
19358  }
19359  }
19360#line 2797
19361  __cil_tmp74 = tmp___1 + tmp___2;
19362#line 2797
19363  __cil_tmp75 = __cil_tmp74 + tmp___3;
19364#line 2797
19365  __cil_tmp76 = __cil_tmp75 + tmp___4;
19366#line 2797
19367  events = __cil_tmp76 & mask;
19368#line 2802
19369  if (events != 0) {
19370    {
19371#line 2803
19372    __cil_tmp77 = & info->lock;
19373#line 2803
19374    spin_unlock_irqrestore(__cil_tmp77, flags);
19375    }
19376#line 2804
19377    goto exit;
19378  } else {
19379
19380  }
19381#line 2808
19382  cprev = info->icount;
19383#line 2809
19384  oldsigs = info->input_signal_events;
19385  {
19386#line 2812
19387  __cil_tmp78 = mask & 768;
19388#line 2812
19389  if (__cil_tmp78 != 0) {
19390    {
19391#line 2813
19392    tmp___5 = rd_reg16(info, 140U);
19393#line 2813
19394    val = tmp___5;
19395    }
19396    {
19397#line 2814
19398    __cil_tmp79 = (int )val;
19399#line 2814
19400    __cil_tmp80 = __cil_tmp79 & 512;
19401#line 2814
19402    if (__cil_tmp80 == 0) {
19403      {
19404#line 2815
19405      __cil_tmp81 = (unsigned int )val;
19406#line 2815
19407      __cil_tmp82 = __cil_tmp81 | 512U;
19408#line 2815
19409      __cil_tmp83 = (int )__cil_tmp82;
19410#line 2815
19411      __cil_tmp84 = (__u16 )__cil_tmp83;
19412#line 2815
19413      wr_reg16(info, 140U, __cil_tmp84);
19414      }
19415    } else {
19416
19417    }
19418    }
19419  } else {
19420
19421  }
19422  }
19423#line 2818
19424  __x = (long volatile   )1L;
19425#line 2818
19426  if (1) {
19427#line 2818
19428    goto case_8___0;
19429  } else {
19430#line 2818
19431    goto switch_default___0;
19432#line 2818
19433    if (0) {
19434      {
19435#line 2818
19436      tmp___6 = get_current();
19437#line 2818
19438      __cil_tmp85 = & tmp___6->state;
19439#line 2818
19440      __ptr = (u8 volatile   *)__cil_tmp85;
19441#line 2818
19442      __asm__  volatile   ("xchgb %0,%1": "=q" (__x), "+m" (*__ptr): "0" (__x): "memory");
19443      }
19444#line 2818
19445      goto ldv_37095;
19446      {
19447#line 2818
19448      tmp___7 = get_current();
19449#line 2818
19450      __cil_tmp86 = & tmp___7->state;
19451#line 2818
19452      __ptr___0 = (u16 volatile   *)__cil_tmp86;
19453#line 2818
19454      __asm__  volatile   ("xchgw %0,%1": "=r" (__x), "+m" (*__ptr___0): "0" (__x): "memory");
19455      }
19456#line 2818
19457      goto ldv_37095;
19458      {
19459#line 2818
19460      tmp___8 = get_current();
19461#line 2818
19462      __cil_tmp87 = & tmp___8->state;
19463#line 2818
19464      __ptr___1 = (u32 volatile   *)__cil_tmp87;
19465#line 2818
19466      __asm__  volatile   ("xchgl %0,%1": "=r" (__x), "+m" (*__ptr___1): "0" (__x): "memory");
19467      }
19468#line 2818
19469      goto ldv_37095;
19470      case_8___0: 
19471      {
19472#line 2818
19473      tmp___9 = get_current();
19474#line 2818
19475      __cil_tmp88 = & tmp___9->state;
19476#line 2818
19477      __ptr___2 = (u64 volatile   *)__cil_tmp88;
19478#line 2818
19479      __asm__  volatile   ("xchgq %0,%1": "=r" (__x), "+m" (*__ptr___2): "0" (__x): "memory");
19480      }
19481#line 2818
19482      goto ldv_37095;
19483      switch_default___0: 
19484      {
19485#line 2818
19486      __xchg_wrong_size();
19487      }
19488    } else {
19489
19490    }
19491  }
19492  ldv_37095: 
19493  {
19494#line 2819
19495  __cil_tmp89 = & info->event_wait_q;
19496#line 2819
19497  add_wait_queue(__cil_tmp89, & wait);
19498#line 2821
19499  __cil_tmp90 = & info->lock;
19500#line 2821
19501  spin_unlock_irqrestore(__cil_tmp90, flags);
19502  }
19503  ldv_37120: 
19504  {
19505#line 2824
19506  schedule();
19507#line 2825
19508  tmp___10 = get_current();
19509#line 2825
19510  tmp___11 = signal_pending(tmp___10);
19511  }
19512#line 2825
19513  if (tmp___11 != 0) {
19514#line 2826
19515    rc = -512;
19516#line 2827
19517    goto ldv_37104;
19518  } else {
19519
19520  }
19521  {
19522#line 2831
19523  __cil_tmp91 = & info->lock;
19524#line 2831
19525  tmp___12 = spinlock_check(__cil_tmp91);
19526#line 2831
19527  flags = _raw_spin_lock_irqsave(tmp___12);
19528#line 2832
19529  cnow = info->icount;
19530#line 2833
19531  newsigs = info->input_signal_events;
19532#line 2834
19533  __x___0 = (long volatile   )1L;
19534  }
19535#line 2834
19536  if (1) {
19537#line 2834
19538    goto case_8___1;
19539  } else {
19540#line 2834
19541    goto switch_default___1;
19542#line 2834
19543    if (0) {
19544      {
19545#line 2834
19546      tmp___13 = get_current();
19547#line 2834
19548      __cil_tmp92 = & tmp___13->state;
19549#line 2834
19550      __ptr___3 = (u8 volatile   *)__cil_tmp92;
19551#line 2834
19552      __asm__  volatile   ("xchgb %0,%1": "=q" (__x___0), "+m" (*__ptr___3): "0" (__x___0): "memory");
19553      }
19554#line 2834
19555      goto ldv_37111;
19556      {
19557#line 2834
19558      tmp___14 = get_current();
19559#line 2834
19560      __cil_tmp93 = & tmp___14->state;
19561#line 2834
19562      __ptr___4 = (u16 volatile   *)__cil_tmp93;
19563#line 2834
19564      __asm__  volatile   ("xchgw %0,%1": "=r" (__x___0), "+m" (*__ptr___4): "0" (__x___0): "memory");
19565      }
19566#line 2834
19567      goto ldv_37111;
19568      {
19569#line 2834
19570      tmp___15 = get_current();
19571#line 2834
19572      __cil_tmp94 = & tmp___15->state;
19573#line 2834
19574      __ptr___5 = (u32 volatile   *)__cil_tmp94;
19575#line 2834
19576      __asm__  volatile   ("xchgl %0,%1": "=r" (__x___0), "+m" (*__ptr___5): "0" (__x___0): "memory");
19577      }
19578#line 2834
19579      goto ldv_37111;
19580      case_8___1: 
19581      {
19582#line 2834
19583      tmp___16 = get_current();
19584#line 2834
19585      __cil_tmp95 = & tmp___16->state;
19586#line 2834
19587      __ptr___6 = (u64 volatile   *)__cil_tmp95;
19588#line 2834
19589      __asm__  volatile   ("xchgq %0,%1": "=r" (__x___0), "+m" (*__ptr___6): "0" (__x___0): "memory");
19590      }
19591#line 2834
19592      goto ldv_37111;
19593      switch_default___1: 
19594      {
19595#line 2834
19596      __xchg_wrong_size();
19597      }
19598    } else {
19599
19600    }
19601  }
19602  ldv_37111: 
19603  {
19604#line 2835
19605  __cil_tmp96 = & info->lock;
19606#line 2835
19607  spin_unlock_irqrestore(__cil_tmp96, flags);
19608  }
19609#line 2838
19610  if (newsigs.dsr_up == oldsigs.dsr_up) {
19611#line 2838
19612    if (newsigs.dsr_down == oldsigs.dsr_down) {
19613#line 2838
19614      if (newsigs.dcd_up == oldsigs.dcd_up) {
19615#line 2838
19616        if (newsigs.dcd_down == oldsigs.dcd_down) {
19617#line 2838
19618          if (newsigs.cts_up == oldsigs.cts_up) {
19619#line 2838
19620            if (newsigs.cts_down == oldsigs.cts_down) {
19621#line 2838
19622              if (newsigs.ri_up == oldsigs.ri_up) {
19623#line 2838
19624                if (newsigs.ri_down == oldsigs.ri_down) {
19625#line 2838
19626                  if (cnow.exithunt == cprev.exithunt) {
19627#line 2838
19628                    if (cnow.rxidle == cprev.rxidle) {
19629#line 2848
19630                      rc = -5;
19631#line 2849
19632                      goto ldv_37104;
19633                    } else {
19634
19635                    }
19636                  } else {
19637
19638                  }
19639                } else {
19640
19641                }
19642              } else {
19643
19644              }
19645            } else {
19646
19647            }
19648          } else {
19649
19650          }
19651        } else {
19652
19653        }
19654      } else {
19655
19656      }
19657    } else {
19658
19659    }
19660  } else {
19661
19662  }
19663#line 2852
19664  if (newsigs.dsr_down != oldsigs.dsr_down) {
19665#line 2852
19666    tmp___17 = 2;
19667  } else {
19668#line 2852
19669    tmp___17 = 0;
19670  }
19671#line 2852
19672  if (newsigs.dcd_up != oldsigs.dcd_up) {
19673#line 2852
19674    tmp___18 = 16;
19675  } else {
19676#line 2852
19677    tmp___18 = 0;
19678  }
19679#line 2852
19680  if (newsigs.dcd_down != oldsigs.dcd_down) {
19681#line 2852
19682    tmp___19 = 32;
19683  } else {
19684#line 2852
19685    tmp___19 = 0;
19686  }
19687#line 2852
19688  if (newsigs.cts_up != oldsigs.cts_up) {
19689#line 2852
19690    tmp___20 = 4;
19691  } else {
19692#line 2852
19693    tmp___20 = 0;
19694  }
19695#line 2852
19696  if (newsigs.cts_down != oldsigs.cts_down) {
19697#line 2852
19698    tmp___21 = 8;
19699  } else {
19700#line 2852
19701    tmp___21 = 0;
19702  }
19703#line 2852
19704  if (newsigs.ri_up != oldsigs.ri_up) {
19705#line 2852
19706    tmp___22 = 64;
19707  } else {
19708#line 2852
19709    tmp___22 = 0;
19710  }
19711#line 2852
19712  if (newsigs.ri_down != oldsigs.ri_down) {
19713#line 2852
19714    tmp___23 = 128;
19715  } else {
19716#line 2852
19717    tmp___23 = 0;
19718  }
19719#line 2852
19720  if (cnow.exithunt != cprev.exithunt) {
19721#line 2852
19722    tmp___24 = 256;
19723  } else {
19724#line 2852
19725    tmp___24 = 0;
19726  }
19727#line 2852
19728  if (cnow.rxidle != cprev.rxidle) {
19729#line 2852
19730    tmp___25 = 512;
19731  } else {
19732#line 2852
19733    tmp___25 = 0;
19734  }
19735#line 2852
19736  __cil_tmp97 = newsigs.dsr_up != oldsigs.dsr_up;
19737#line 2852
19738  __cil_tmp98 = __cil_tmp97 + tmp___17;
19739#line 2852
19740  __cil_tmp99 = __cil_tmp98 + tmp___18;
19741#line 2852
19742  __cil_tmp100 = __cil_tmp99 + tmp___19;
19743#line 2852
19744  __cil_tmp101 = __cil_tmp100 + tmp___20;
19745#line 2852
19746  __cil_tmp102 = __cil_tmp101 + tmp___21;
19747#line 2852
19748  __cil_tmp103 = __cil_tmp102 + tmp___22;
19749#line 2852
19750  __cil_tmp104 = __cil_tmp103 + tmp___23;
19751#line 2852
19752  __cil_tmp105 = __cil_tmp104 + tmp___24;
19753#line 2852
19754  __cil_tmp106 = __cil_tmp105 + tmp___25;
19755#line 2852
19756  events = __cil_tmp106 & mask;
19757#line 2863
19758  if (events != 0) {
19759#line 2864
19760    goto ldv_37104;
19761  } else {
19762
19763  }
19764#line 2866
19765  cprev = cnow;
19766#line 2867
19767  oldsigs = newsigs;
19768#line 2868
19769  goto ldv_37120;
19770  ldv_37104: 
19771  {
19772#line 2870
19773  __cil_tmp107 = & info->event_wait_q;
19774#line 2870
19775  remove_wait_queue(__cil_tmp107, & wait);
19776#line 2871
19777  __x___1 = (long volatile   )0L;
19778  }
19779#line 2871
19780  if (1) {
19781#line 2871
19782    goto case_8___2;
19783  } else {
19784#line 2871
19785    goto switch_default___2;
19786#line 2871
19787    if (0) {
19788      {
19789#line 2871
19790      tmp___26 = get_current();
19791#line 2871
19792      __cil_tmp108 = & tmp___26->state;
19793#line 2871
19794      __ptr___7 = (u8 volatile   *)__cil_tmp108;
19795#line 2871
19796      __asm__  volatile   ("xchgb %0,%1": "=q" (__x___1), "+m" (*__ptr___7): "0" (__x___1): "memory");
19797      }
19798#line 2871
19799      goto ldv_37124;
19800      {
19801#line 2871
19802      tmp___27 = get_current();
19803#line 2871
19804      __cil_tmp109 = & tmp___27->state;
19805#line 2871
19806      __ptr___8 = (u16 volatile   *)__cil_tmp109;
19807#line 2871
19808      __asm__  volatile   ("xchgw %0,%1": "=r" (__x___1), "+m" (*__ptr___8): "0" (__x___1): "memory");
19809      }
19810#line 2871
19811      goto ldv_37124;
19812      {
19813#line 2871
19814      tmp___28 = get_current();
19815#line 2871
19816      __cil_tmp110 = & tmp___28->state;
19817#line 2871
19818      __ptr___9 = (u32 volatile   *)__cil_tmp110;
19819#line 2871
19820      __asm__  volatile   ("xchgl %0,%1": "=r" (__x___1), "+m" (*__ptr___9): "0" (__x___1): "memory");
19821      }
19822#line 2871
19823      goto ldv_37124;
19824      case_8___2: 
19825      {
19826#line 2871
19827      tmp___29 = get_current();
19828#line 2871
19829      __cil_tmp111 = & tmp___29->state;
19830#line 2871
19831      __ptr___10 = (u64 volatile   *)__cil_tmp111;
19832#line 2871
19833      __asm__  volatile   ("xchgq %0,%1": "=r" (__x___1), "+m" (*__ptr___10): "0" (__x___1): "memory");
19834      }
19835#line 2871
19836      goto ldv_37124;
19837      switch_default___2: 
19838      {
19839#line 2871
19840      __xchg_wrong_size();
19841      }
19842    } else {
19843
19844    }
19845  }
19846  ldv_37124: ;
19847  {
19848#line 2874
19849  __cil_tmp112 = mask & 768;
19850#line 2874
19851  if (__cil_tmp112 != 0) {
19852    {
19853#line 2875
19854    __cil_tmp113 = & info->lock;
19855#line 2875
19856    tmp___30 = spinlock_check(__cil_tmp113);
19857#line 2875
19858    flags = _raw_spin_lock_irqsave(tmp___30);
19859#line 2876
19860    __cil_tmp114 = & info->event_wait_q;
19861#line 2876
19862    tmp___32 = waitqueue_active(__cil_tmp114);
19863    }
19864#line 2876
19865    if (tmp___32 == 0) {
19866      {
19867#line 2878
19868      tmp___31 = rd_reg16(info, 140U);
19869#line 2878
19870      __cil_tmp115 = (int )tmp___31;
19871#line 2878
19872      __cil_tmp116 = __cil_tmp115 & 65023;
19873#line 2878
19874      __cil_tmp117 = (__u16 )__cil_tmp116;
19875#line 2878
19876      wr_reg16(info, 140U, __cil_tmp117);
19877      }
19878    } else {
19879
19880    }
19881    {
19882#line 2881
19883    __cil_tmp118 = & info->lock;
19884#line 2881
19885    spin_unlock_irqrestore(__cil_tmp118, flags);
19886    }
19887  } else {
19888
19889  }
19890  }
19891  exit: ;
19892#line 2884
19893  if (rc == 0) {
19894    {
19895#line 2885
19896    might_fault();
19897#line 2885
19898    __pu_val = events;
19899    }
19900#line 2885
19901    if (1) {
19902#line 2885
19903      goto case_4___3;
19904    } else {
19905#line 2885
19906      goto switch_default___3;
19907#line 2885
19908      if (0) {
19909#line 2885
19910        __asm__  volatile   ("call __put_user_1": "=a" (__ret_pu): "0" (__pu_val),
19911                             "c" (mask_ptr): "ebx");
19912#line 2885
19913        goto ldv_37139;
19914#line 2885
19915        __asm__  volatile   ("call __put_user_2": "=a" (__ret_pu): "0" (__pu_val),
19916                             "c" (mask_ptr): "ebx");
19917#line 2885
19918        goto ldv_37139;
19919        case_4___3: 
19920#line 2885
19921        __asm__  volatile   ("call __put_user_4": "=a" (__ret_pu): "0" (__pu_val),
19922                             "c" (mask_ptr): "ebx");
19923#line 2885
19924        goto ldv_37139;
19925#line 2885
19926        __asm__  volatile   ("call __put_user_8": "=a" (__ret_pu): "0" (__pu_val),
19927                             "c" (mask_ptr): "ebx");
19928#line 2885
19929        goto ldv_37139;
19930        switch_default___3: 
19931#line 2885
19932        __asm__  volatile   ("call __put_user_X": "=a" (__ret_pu): "0" (__pu_val),
19933                             "c" (mask_ptr): "ebx");
19934#line 2885
19935        goto ldv_37139;
19936      } else {
19937
19938      }
19939    }
19940    ldv_37139: 
19941#line 2885
19942    rc = __ret_pu;
19943  } else {
19944
19945  }
19946#line 2886
19947  return (rc);
19948}
19949}
19950#line 2889 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
19951static int get_interface(struct slgt_info *info , int *if_mode ) 
19952{ int __ret_pu ;
19953  int __pu_val ;
19954  char (*__cil_tmp5)[25U] ;
19955  char *__cil_tmp6 ;
19956  unsigned int __cil_tmp7 ;
19957  unsigned int __cil_tmp8 ;
19958
19959  {
19960#line 2891
19961  if (debug_level > 2) {
19962    {
19963#line 2891
19964    __cil_tmp5 = & info->device_name;
19965#line 2891
19966    __cil_tmp6 = (char *)__cil_tmp5;
19967#line 2891
19968    __cil_tmp7 = info->if_mode;
19969#line 2891
19970    printk("%s get_interface=%x\n", __cil_tmp6, __cil_tmp7);
19971    }
19972  } else {
19973
19974  }
19975  {
19976#line 2892
19977  might_fault();
19978#line 2892
19979  __cil_tmp8 = info->if_mode;
19980#line 2892
19981  __pu_val = (int )__cil_tmp8;
19982  }
19983#line 2892
19984  if (1) {
19985#line 2892
19986    goto case_4;
19987  } else {
19988#line 2892
19989    goto switch_default;
19990#line 2892
19991    if (0) {
19992#line 2892
19993      __asm__  volatile   ("call __put_user_1": "=a" (__ret_pu): "0" (__pu_val), "c" (if_mode): "ebx");
19994#line 2892
19995      goto ldv_37152;
19996#line 2892
19997      __asm__  volatile   ("call __put_user_2": "=a" (__ret_pu): "0" (__pu_val), "c" (if_mode): "ebx");
19998#line 2892
19999      goto ldv_37152;
20000      case_4: 
20001#line 2892
20002      __asm__  volatile   ("call __put_user_4": "=a" (__ret_pu): "0" (__pu_val), "c" (if_mode): "ebx");
20003#line 2892
20004      goto ldv_37152;
20005#line 2892
20006      __asm__  volatile   ("call __put_user_8": "=a" (__ret_pu): "0" (__pu_val), "c" (if_mode): "ebx");
20007#line 2892
20008      goto ldv_37152;
20009      switch_default: 
20010#line 2892
20011      __asm__  volatile   ("call __put_user_X": "=a" (__ret_pu): "0" (__pu_val), "c" (if_mode): "ebx");
20012#line 2892
20013      goto ldv_37152;
20014    } else {
20015
20016    }
20017  }
20018  ldv_37152: ;
20019#line 2892
20020  if (__ret_pu != 0) {
20021#line 2893
20022    return (-14);
20023  } else {
20024
20025  }
20026#line 2894
20027  return (0);
20028}
20029}
20030#line 2897 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
20031static int set_interface(struct slgt_info *info , int if_mode ) 
20032{ unsigned long flags ;
20033  unsigned short val ;
20034  raw_spinlock_t *tmp ;
20035  char (*__cil_tmp6)[25U] ;
20036  char *__cil_tmp7 ;
20037  spinlock_t *__cil_tmp8 ;
20038  unsigned int __cil_tmp9 ;
20039  unsigned int __cil_tmp10 ;
20040  unsigned int __cil_tmp11 ;
20041  unsigned int __cil_tmp12 ;
20042  unsigned int __cil_tmp13 ;
20043  unsigned int __cil_tmp14 ;
20044  int __cil_tmp15 ;
20045  __u16 __cil_tmp16 ;
20046  spinlock_t *__cil_tmp17 ;
20047
20048  {
20049#line 2902
20050  if (debug_level > 2) {
20051    {
20052#line 2902
20053    __cil_tmp6 = & info->device_name;
20054#line 2902
20055    __cil_tmp7 = (char *)__cil_tmp6;
20056#line 2902
20057    printk("%s set_interface=%x)\n", __cil_tmp7, if_mode);
20058    }
20059  } else {
20060
20061  }
20062  {
20063#line 2903
20064  __cil_tmp8 = & info->lock;
20065#line 2903
20066  tmp = spinlock_check(__cil_tmp8);
20067#line 2903
20068  flags = _raw_spin_lock_irqsave(tmp);
20069#line 2904
20070  info->if_mode = (unsigned int )if_mode;
20071#line 2906
20072  msc_set_vcr(info);
20073#line 2909
20074  val = rd_reg16(info, 130U);
20075  }
20076  {
20077#line 2910
20078  __cil_tmp9 = info->if_mode;
20079#line 2910
20080  __cil_tmp10 = __cil_tmp9 & 16U;
20081#line 2910
20082  if (__cil_tmp10 != 0U) {
20083#line 2911
20084    __cil_tmp11 = (unsigned int )val;
20085#line 2911
20086    __cil_tmp12 = __cil_tmp11 | 128U;
20087#line 2911
20088    val = (unsigned short )__cil_tmp12;
20089  } else {
20090#line 2913
20091    __cil_tmp13 = (unsigned int )val;
20092#line 2913
20093    __cil_tmp14 = __cil_tmp13 & 65407U;
20094#line 2913
20095    val = (unsigned short )__cil_tmp14;
20096  }
20097  }
20098  {
20099#line 2914
20100  __cil_tmp15 = (int )val;
20101#line 2914
20102  __cil_tmp16 = (__u16 )__cil_tmp15;
20103#line 2914
20104  wr_reg16(info, 130U, __cil_tmp16);
20105#line 2916
20106  __cil_tmp17 = & info->lock;
20107#line 2916
20108  spin_unlock_irqrestore(__cil_tmp17, flags);
20109  }
20110#line 2917
20111  return (0);
20112}
20113}
20114#line 2920 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
20115static int get_xsync(struct slgt_info *info , int *xsync ) 
20116{ int __ret_pu ;
20117  int __pu_val ;
20118  char (*__cil_tmp5)[25U] ;
20119  char *__cil_tmp6 ;
20120  unsigned int __cil_tmp7 ;
20121  unsigned int __cil_tmp8 ;
20122
20123  {
20124#line 2922
20125  if (debug_level > 2) {
20126    {
20127#line 2922
20128    __cil_tmp5 = & info->device_name;
20129#line 2922
20130    __cil_tmp6 = (char *)__cil_tmp5;
20131#line 2922
20132    __cil_tmp7 = info->xsync;
20133#line 2922
20134    printk("%s get_xsync=%x\n", __cil_tmp6, __cil_tmp7);
20135    }
20136  } else {
20137
20138  }
20139  {
20140#line 2923
20141  might_fault();
20142#line 2923
20143  __cil_tmp8 = info->xsync;
20144#line 2923
20145  __pu_val = (int )__cil_tmp8;
20146  }
20147#line 2923
20148  if (1) {
20149#line 2923
20150    goto case_4;
20151  } else {
20152#line 2923
20153    goto switch_default;
20154#line 2923
20155    if (0) {
20156#line 2923
20157      __asm__  volatile   ("call __put_user_1": "=a" (__ret_pu): "0" (__pu_val), "c" (xsync): "ebx");
20158#line 2923
20159      goto ldv_37174;
20160#line 2923
20161      __asm__  volatile   ("call __put_user_2": "=a" (__ret_pu): "0" (__pu_val), "c" (xsync): "ebx");
20162#line 2923
20163      goto ldv_37174;
20164      case_4: 
20165#line 2923
20166      __asm__  volatile   ("call __put_user_4": "=a" (__ret_pu): "0" (__pu_val), "c" (xsync): "ebx");
20167#line 2923
20168      goto ldv_37174;
20169#line 2923
20170      __asm__  volatile   ("call __put_user_8": "=a" (__ret_pu): "0" (__pu_val), "c" (xsync): "ebx");
20171#line 2923
20172      goto ldv_37174;
20173      switch_default: 
20174#line 2923
20175      __asm__  volatile   ("call __put_user_X": "=a" (__ret_pu): "0" (__pu_val), "c" (xsync): "ebx");
20176#line 2923
20177      goto ldv_37174;
20178    } else {
20179
20180    }
20181  }
20182  ldv_37174: ;
20183#line 2923
20184  if (__ret_pu != 0) {
20185#line 2924
20186    return (-14);
20187  } else {
20188
20189  }
20190#line 2925
20191  return (0);
20192}
20193}
20194#line 2934 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
20195static int set_xsync(struct slgt_info *info , int xsync ) 
20196{ unsigned long flags ;
20197  raw_spinlock_t *tmp ;
20198  char (*__cil_tmp5)[25U] ;
20199  char *__cil_tmp6 ;
20200  spinlock_t *__cil_tmp7 ;
20201  __u32 __cil_tmp8 ;
20202  spinlock_t *__cil_tmp9 ;
20203
20204  {
20205#line 2938
20206  if (debug_level > 2) {
20207    {
20208#line 2938
20209    __cil_tmp5 = & info->device_name;
20210#line 2938
20211    __cil_tmp6 = (char *)__cil_tmp5;
20212#line 2938
20213    printk("%s set_xsync=%x)\n", __cil_tmp6, xsync);
20214    }
20215  } else {
20216
20217  }
20218  {
20219#line 2939
20220  __cil_tmp7 = & info->lock;
20221#line 2939
20222  tmp = spinlock_check(__cil_tmp7);
20223#line 2939
20224  flags = _raw_spin_lock_irqsave(tmp);
20225#line 2940
20226  info->xsync = (unsigned int )xsync;
20227#line 2941
20228  __cil_tmp8 = (__u32 )xsync;
20229#line 2941
20230  wr_reg32(info, 64U, __cil_tmp8);
20231#line 2942
20232  __cil_tmp9 = & info->lock;
20233#line 2942
20234  spin_unlock_irqrestore(__cil_tmp9, flags);
20235  }
20236#line 2943
20237  return (0);
20238}
20239}
20240#line 2946 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
20241static int get_xctrl(struct slgt_info *info , int *xctrl ) 
20242{ int __ret_pu ;
20243  int __pu_val ;
20244  char (*__cil_tmp5)[25U] ;
20245  char *__cil_tmp6 ;
20246  unsigned int __cil_tmp7 ;
20247  unsigned int __cil_tmp8 ;
20248
20249  {
20250#line 2948
20251  if (debug_level > 2) {
20252    {
20253#line 2948
20254    __cil_tmp5 = & info->device_name;
20255#line 2948
20256    __cil_tmp6 = (char *)__cil_tmp5;
20257#line 2948
20258    __cil_tmp7 = info->xctrl;
20259#line 2948
20260    printk("%s get_xctrl=%x\n", __cil_tmp6, __cil_tmp7);
20261    }
20262  } else {
20263
20264  }
20265  {
20266#line 2949
20267  might_fault();
20268#line 2949
20269  __cil_tmp8 = info->xctrl;
20270#line 2949
20271  __pu_val = (int )__cil_tmp8;
20272  }
20273#line 2949
20274  if (1) {
20275#line 2949
20276    goto case_4;
20277  } else {
20278#line 2949
20279    goto switch_default;
20280#line 2949
20281    if (0) {
20282#line 2949
20283      __asm__  volatile   ("call __put_user_1": "=a" (__ret_pu): "0" (__pu_val), "c" (xctrl): "ebx");
20284#line 2949
20285      goto ldv_37195;
20286#line 2949
20287      __asm__  volatile   ("call __put_user_2": "=a" (__ret_pu): "0" (__pu_val), "c" (xctrl): "ebx");
20288#line 2949
20289      goto ldv_37195;
20290      case_4: 
20291#line 2949
20292      __asm__  volatile   ("call __put_user_4": "=a" (__ret_pu): "0" (__pu_val), "c" (xctrl): "ebx");
20293#line 2949
20294      goto ldv_37195;
20295#line 2949
20296      __asm__  volatile   ("call __put_user_8": "=a" (__ret_pu): "0" (__pu_val), "c" (xctrl): "ebx");
20297#line 2949
20298      goto ldv_37195;
20299      switch_default: 
20300#line 2949
20301      __asm__  volatile   ("call __put_user_X": "=a" (__ret_pu): "0" (__pu_val), "c" (xctrl): "ebx");
20302#line 2949
20303      goto ldv_37195;
20304    } else {
20305
20306    }
20307  }
20308  ldv_37195: ;
20309#line 2949
20310  if (__ret_pu != 0) {
20311#line 2950
20312    return (-14);
20313  } else {
20314
20315  }
20316#line 2951
20317  return (0);
20318}
20319}
20320#line 2971 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
20321static int set_xctrl(struct slgt_info *info , int xctrl ) 
20322{ unsigned long flags ;
20323  raw_spinlock_t *tmp ;
20324  char (*__cil_tmp5)[25U] ;
20325  char *__cil_tmp6 ;
20326  spinlock_t *__cil_tmp7 ;
20327  __u32 __cil_tmp8 ;
20328  spinlock_t *__cil_tmp9 ;
20329
20330  {
20331#line 2975
20332  if (debug_level > 2) {
20333    {
20334#line 2975
20335    __cil_tmp5 = & info->device_name;
20336#line 2975
20337    __cil_tmp6 = (char *)__cil_tmp5;
20338#line 2975
20339    printk("%s set_xctrl=%x)\n", __cil_tmp6, xctrl);
20340    }
20341  } else {
20342
20343  }
20344  {
20345#line 2976
20346  __cil_tmp7 = & info->lock;
20347#line 2976
20348  tmp = spinlock_check(__cil_tmp7);
20349#line 2976
20350  flags = _raw_spin_lock_irqsave(tmp);
20351#line 2977
20352  info->xctrl = (unsigned int )xctrl;
20353#line 2978
20354  __cil_tmp8 = (__u32 )xctrl;
20355#line 2978
20356  wr_reg32(info, 68U, __cil_tmp8);
20357#line 2979
20358  __cil_tmp9 = & info->lock;
20359#line 2979
20360  spin_unlock_irqrestore(__cil_tmp9, flags);
20361  }
20362#line 2980
20363  return (0);
20364}
20365}
20366#line 2992 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
20367static int set_gpio(struct slgt_info *info , struct gpio_desc *user_gpio ) 
20368{ unsigned long flags ;
20369  struct gpio_desc gpio ;
20370  __u32 data ;
20371  unsigned long tmp ;
20372  raw_spinlock_t *tmp___0 ;
20373  unsigned int __cil_tmp8 ;
20374  void *__cil_tmp9 ;
20375  void const   *__cil_tmp10 ;
20376  char (*__cil_tmp11)[25U] ;
20377  char *__cil_tmp12 ;
20378  struct slgt_info *__cil_tmp13 ;
20379  spinlock_t *__cil_tmp14 ;
20380  unsigned int __cil_tmp15 ;
20381  __u32 __cil_tmp16 ;
20382  unsigned int __cil_tmp17 ;
20383  unsigned int __cil_tmp18 ;
20384  unsigned int __cil_tmp19 ;
20385  __u32 __cil_tmp20 ;
20386  unsigned int __cil_tmp21 ;
20387  unsigned int __cil_tmp22 ;
20388  struct slgt_info *__cil_tmp23 ;
20389  spinlock_t *__cil_tmp24 ;
20390
20391  {
20392  {
20393#line 2998
20394  __cil_tmp8 = info->gpio_present;
20395#line 2998
20396  if (__cil_tmp8 == 0U) {
20397#line 2999
20398    return (-22);
20399  } else {
20400
20401  }
20402  }
20403  {
20404#line 3000
20405  __cil_tmp9 = (void *)(& gpio);
20406#line 3000
20407  __cil_tmp10 = (void const   *)user_gpio;
20408#line 3000
20409  tmp = copy_from_user(__cil_tmp9, __cil_tmp10, 16UL);
20410  }
20411#line 3000
20412  if (tmp != 0UL) {
20413#line 3001
20414    return (-14);
20415  } else {
20416
20417  }
20418#line 3002
20419  if (debug_level > 2) {
20420    {
20421#line 3002
20422    __cil_tmp11 = & info->device_name;
20423#line 3002
20424    __cil_tmp12 = (char *)__cil_tmp11;
20425#line 3002
20426    printk("%s set_gpio state=%08x smask=%08x dir=%08x dmask=%08x\n", __cil_tmp12,
20427           gpio.state, gpio.smask, gpio.dir, gpio.dmask);
20428    }
20429  } else {
20430
20431  }
20432  {
20433#line 3006
20434  __cil_tmp13 = info->port_array[0];
20435#line 3006
20436  __cil_tmp14 = & __cil_tmp13->lock;
20437#line 3006
20438  tmp___0 = spinlock_check(__cil_tmp14);
20439#line 3006
20440  flags = _raw_spin_lock_irqsave(tmp___0);
20441  }
20442#line 3007
20443  if (gpio.dmask != 0U) {
20444    {
20445#line 3008
20446    data = rd_reg32(info, 8U);
20447#line 3009
20448    __cil_tmp15 = gpio.dmask & gpio.dir;
20449#line 3009
20450    data = __cil_tmp15 | data;
20451#line 3010
20452    __cil_tmp16 = ~ gpio.dir;
20453#line 3010
20454    __cil_tmp17 = gpio.dmask & __cil_tmp16;
20455#line 3010
20456    __cil_tmp18 = ~ __cil_tmp17;
20457#line 3010
20458    data = __cil_tmp18 & data;
20459#line 3011
20460    wr_reg32(info, 8U, data);
20461    }
20462  } else {
20463
20464  }
20465#line 3013
20466  if (gpio.smask != 0U) {
20467    {
20468#line 3014
20469    data = rd_reg32(info, 16U);
20470#line 3015
20471    __cil_tmp19 = gpio.smask & gpio.state;
20472#line 3015
20473    data = __cil_tmp19 | data;
20474#line 3016
20475    __cil_tmp20 = ~ gpio.state;
20476#line 3016
20477    __cil_tmp21 = gpio.smask & __cil_tmp20;
20478#line 3016
20479    __cil_tmp22 = ~ __cil_tmp21;
20480#line 3016
20481    data = __cil_tmp22 & data;
20482#line 3017
20483    wr_reg32(info, 16U, data);
20484    }
20485  } else {
20486
20487  }
20488  {
20489#line 3019
20490  __cil_tmp23 = info->port_array[0];
20491#line 3019
20492  __cil_tmp24 = & __cil_tmp23->lock;
20493#line 3019
20494  spin_unlock_irqrestore(__cil_tmp24, flags);
20495  }
20496#line 3021
20497  return (0);
20498}
20499}
20500#line 3027 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
20501static int get_gpio(struct slgt_info *info , struct gpio_desc *user_gpio ) 
20502{ struct gpio_desc gpio ;
20503  int tmp ;
20504  unsigned int __cil_tmp5 ;
20505  void *__cil_tmp6 ;
20506  void const   *__cil_tmp7 ;
20507  char (*__cil_tmp8)[25U] ;
20508  char *__cil_tmp9 ;
20509
20510  {
20511  {
20512#line 3030
20513  __cil_tmp5 = info->gpio_present;
20514#line 3030
20515  if (__cil_tmp5 == 0U) {
20516#line 3031
20517    return (-22);
20518  } else {
20519
20520  }
20521  }
20522  {
20523#line 3032
20524  gpio.state = rd_reg32(info, 16U);
20525#line 3033
20526  gpio.smask = 4294967295U;
20527#line 3034
20528  gpio.dir = rd_reg32(info, 8U);
20529#line 3035
20530  gpio.dmask = 4294967295U;
20531#line 3036
20532  __cil_tmp6 = (void *)user_gpio;
20533#line 3036
20534  __cil_tmp7 = (void const   *)(& gpio);
20535#line 3036
20536  tmp = copy_to_user(__cil_tmp6, __cil_tmp7, 16U);
20537  }
20538#line 3036
20539  if (tmp != 0) {
20540#line 3037
20541    return (-14);
20542  } else {
20543
20544  }
20545#line 3038
20546  if (debug_level > 2) {
20547    {
20548#line 3038
20549    __cil_tmp8 = & info->device_name;
20550#line 3038
20551    __cil_tmp9 = (char *)__cil_tmp8;
20552#line 3038
20553    printk("%s get_gpio state=%08x dir=%08x\n", __cil_tmp9, gpio.state, gpio.dir);
20554    }
20555  } else {
20556
20557  }
20558#line 3040
20559  return (0);
20560}
20561}
20562#line 3046 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
20563static void init_cond_wait(struct cond_wait *w , unsigned int data ) 
20564{ struct lock_class_key __key ;
20565  struct task_struct *tmp ;
20566  wait_queue_head_t *__cil_tmp5 ;
20567  wait_queue_t *__cil_tmp6 ;
20568
20569  {
20570  {
20571#line 3048
20572  __cil_tmp5 = & w->q;
20573#line 3048
20574  __init_waitqueue_head(__cil_tmp5, & __key);
20575#line 3049
20576  tmp = get_current();
20577#line 3049
20578  __cil_tmp6 = & w->wait;
20579#line 3049
20580  init_waitqueue_entry(__cil_tmp6, tmp);
20581#line 3050
20582  w->data = data;
20583  }
20584#line 3051
20585  return;
20586}
20587}
20588#line 3053 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
20589static void add_cond_wait(struct cond_wait **head , struct cond_wait *w ) 
20590{ long volatile   __x ;
20591  u8 volatile   *__ptr ;
20592  struct task_struct *tmp ;
20593  u16 volatile   *__ptr___0 ;
20594  struct task_struct *tmp___0 ;
20595  u32 volatile   *__ptr___1 ;
20596  struct task_struct *tmp___1 ;
20597  u64 volatile   *__ptr___2 ;
20598  struct task_struct *tmp___2 ;
20599  long volatile   *__cil_tmp12 ;
20600  long volatile   *__cil_tmp13 ;
20601  long volatile   *__cil_tmp14 ;
20602  long volatile   *__cil_tmp15 ;
20603  wait_queue_head_t *__cil_tmp16 ;
20604  wait_queue_t *__cil_tmp17 ;
20605
20606  {
20607#line 3055
20608  __x = (long volatile   )1L;
20609#line 3055
20610  if (1) {
20611#line 3055
20612    goto case_8;
20613  } else {
20614#line 3055
20615    goto switch_default;
20616#line 3055
20617    if (0) {
20618      {
20619#line 3055
20620      tmp = get_current();
20621#line 3055
20622      __cil_tmp12 = & tmp->state;
20623#line 3055
20624      __ptr = (u8 volatile   *)__cil_tmp12;
20625#line 3055
20626      __asm__  volatile   ("xchgb %0,%1": "=q" (__x), "+m" (*__ptr): "0" (__x): "memory");
20627      }
20628#line 3055
20629      goto ldv_37236;
20630      {
20631#line 3055
20632      tmp___0 = get_current();
20633#line 3055
20634      __cil_tmp13 = & tmp___0->state;
20635#line 3055
20636      __ptr___0 = (u16 volatile   *)__cil_tmp13;
20637#line 3055
20638      __asm__  volatile   ("xchgw %0,%1": "=r" (__x), "+m" (*__ptr___0): "0" (__x): "memory");
20639      }
20640#line 3055
20641      goto ldv_37236;
20642      {
20643#line 3055
20644      tmp___1 = get_current();
20645#line 3055
20646      __cil_tmp14 = & tmp___1->state;
20647#line 3055
20648      __ptr___1 = (u32 volatile   *)__cil_tmp14;
20649#line 3055
20650      __asm__  volatile   ("xchgl %0,%1": "=r" (__x), "+m" (*__ptr___1): "0" (__x): "memory");
20651      }
20652#line 3055
20653      goto ldv_37236;
20654      case_8: 
20655      {
20656#line 3055
20657      tmp___2 = get_current();
20658#line 3055
20659      __cil_tmp15 = & tmp___2->state;
20660#line 3055
20661      __ptr___2 = (u64 volatile   *)__cil_tmp15;
20662#line 3055
20663      __asm__  volatile   ("xchgq %0,%1": "=r" (__x), "+m" (*__ptr___2): "0" (__x): "memory");
20664      }
20665#line 3055
20666      goto ldv_37236;
20667      switch_default: 
20668      {
20669#line 3055
20670      __xchg_wrong_size();
20671      }
20672    } else {
20673
20674    }
20675  }
20676  ldv_37236: 
20677  {
20678#line 3056
20679  __cil_tmp16 = & w->q;
20680#line 3056
20681  __cil_tmp17 = & w->wait;
20682#line 3056
20683  add_wait_queue(__cil_tmp16, __cil_tmp17);
20684#line 3057
20685  w->next = *head;
20686#line 3058
20687  *head = w;
20688  }
20689#line 3059
20690  return;
20691}
20692}
20693#line 3061 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
20694static void remove_cond_wait(struct cond_wait **head , struct cond_wait *cw ) 
20695{ struct cond_wait *w ;
20696  struct cond_wait *prev ;
20697  long volatile   __x ;
20698  u8 volatile   *__ptr ;
20699  struct task_struct *tmp ;
20700  u16 volatile   *__ptr___0 ;
20701  struct task_struct *tmp___0 ;
20702  u32 volatile   *__ptr___1 ;
20703  struct task_struct *tmp___1 ;
20704  u64 volatile   *__ptr___2 ;
20705  struct task_struct *tmp___2 ;
20706  wait_queue_head_t *__cil_tmp14 ;
20707  wait_queue_t *__cil_tmp15 ;
20708  long volatile   *__cil_tmp16 ;
20709  long volatile   *__cil_tmp17 ;
20710  long volatile   *__cil_tmp18 ;
20711  long volatile   *__cil_tmp19 ;
20712  unsigned long __cil_tmp20 ;
20713  unsigned long __cil_tmp21 ;
20714  struct cond_wait *__cil_tmp22 ;
20715  unsigned long __cil_tmp23 ;
20716  unsigned long __cil_tmp24 ;
20717  struct cond_wait *__cil_tmp25 ;
20718  unsigned long __cil_tmp26 ;
20719  unsigned long __cil_tmp27 ;
20720
20721  {
20722  {
20723#line 3064
20724  __cil_tmp14 = & cw->q;
20725#line 3064
20726  __cil_tmp15 = & cw->wait;
20727#line 3064
20728  remove_wait_queue(__cil_tmp14, __cil_tmp15);
20729#line 3065
20730  __x = (long volatile   )0L;
20731  }
20732#line 3065
20733  if (1) {
20734#line 3065
20735    goto case_8;
20736  } else {
20737#line 3065
20738    goto switch_default;
20739#line 3065
20740    if (0) {
20741      {
20742#line 3065
20743      tmp = get_current();
20744#line 3065
20745      __cil_tmp16 = & tmp->state;
20746#line 3065
20747      __ptr = (u8 volatile   *)__cil_tmp16;
20748#line 3065
20749      __asm__  volatile   ("xchgb %0,%1": "=q" (__x), "+m" (*__ptr): "0" (__x): "memory");
20750      }
20751#line 3065
20752      goto ldv_37254;
20753      {
20754#line 3065
20755      tmp___0 = get_current();
20756#line 3065
20757      __cil_tmp17 = & tmp___0->state;
20758#line 3065
20759      __ptr___0 = (u16 volatile   *)__cil_tmp17;
20760#line 3065
20761      __asm__  volatile   ("xchgw %0,%1": "=r" (__x), "+m" (*__ptr___0): "0" (__x): "memory");
20762      }
20763#line 3065
20764      goto ldv_37254;
20765      {
20766#line 3065
20767      tmp___1 = get_current();
20768#line 3065
20769      __cil_tmp18 = & tmp___1->state;
20770#line 3065
20771      __ptr___1 = (u32 volatile   *)__cil_tmp18;
20772#line 3065
20773      __asm__  volatile   ("xchgl %0,%1": "=r" (__x), "+m" (*__ptr___1): "0" (__x): "memory");
20774      }
20775#line 3065
20776      goto ldv_37254;
20777      case_8: 
20778      {
20779#line 3065
20780      tmp___2 = get_current();
20781#line 3065
20782      __cil_tmp19 = & tmp___2->state;
20783#line 3065
20784      __ptr___2 = (u64 volatile   *)__cil_tmp19;
20785#line 3065
20786      __asm__  volatile   ("xchgq %0,%1": "=r" (__x), "+m" (*__ptr___2): "0" (__x): "memory");
20787      }
20788#line 3065
20789      goto ldv_37254;
20790      switch_default: 
20791      {
20792#line 3065
20793      __xchg_wrong_size();
20794      }
20795    } else {
20796
20797    }
20798  }
20799  ldv_37254: 
20800#line 3066
20801  w = *head;
20802#line 3066
20803  prev = (struct cond_wait *)0;
20804#line 3066
20805  goto ldv_37265;
20806  ldv_37264: ;
20807  {
20808#line 3067
20809  __cil_tmp20 = (unsigned long )cw;
20810#line 3067
20811  __cil_tmp21 = (unsigned long )w;
20812#line 3067
20813  if (__cil_tmp21 == __cil_tmp20) {
20814    {
20815#line 3068
20816    __cil_tmp22 = (struct cond_wait *)0;
20817#line 3068
20818    __cil_tmp23 = (unsigned long )__cil_tmp22;
20819#line 3068
20820    __cil_tmp24 = (unsigned long )prev;
20821#line 3068
20822    if (__cil_tmp24 != __cil_tmp23) {
20823#line 3069
20824      prev->next = w->next;
20825    } else {
20826#line 3071
20827      *head = w->next;
20828    }
20829    }
20830#line 3072
20831    goto ldv_37263;
20832  } else {
20833
20834  }
20835  }
20836#line 3066
20837  prev = w;
20838#line 3066
20839  w = w->next;
20840  ldv_37265: ;
20841  {
20842#line 3066
20843  __cil_tmp25 = (struct cond_wait *)0;
20844#line 3066
20845  __cil_tmp26 = (unsigned long )__cil_tmp25;
20846#line 3066
20847  __cil_tmp27 = (unsigned long )w;
20848#line 3066
20849  if (__cil_tmp27 != __cil_tmp26) {
20850#line 3067
20851    goto ldv_37264;
20852  } else {
20853#line 3069
20854    goto ldv_37263;
20855  }
20856  }
20857  ldv_37263: ;
20858#line 3071
20859  return;
20860}
20861}
20862#line 3077 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
20863static void flush_cond_wait(struct cond_wait **head ) 
20864{ struct cond_wait *__cil_tmp2 ;
20865  wait_queue_head_t *__cil_tmp3 ;
20866  void *__cil_tmp4 ;
20867  struct cond_wait *__cil_tmp5 ;
20868  struct cond_wait *__cil_tmp6 ;
20869  unsigned long __cil_tmp7 ;
20870  struct cond_wait *__cil_tmp8 ;
20871  unsigned long __cil_tmp9 ;
20872
20873  {
20874#line 3079
20875  goto ldv_37270;
20876  ldv_37269: 
20877  {
20878#line 3080
20879  __cil_tmp2 = *head;
20880#line 3080
20881  __cil_tmp3 = & __cil_tmp2->q;
20882#line 3080
20883  __cil_tmp4 = (void *)0;
20884#line 3080
20885  __wake_up(__cil_tmp3, 1U, 1, __cil_tmp4);
20886#line 3081
20887  __cil_tmp5 = *head;
20888#line 3081
20889  *head = __cil_tmp5->next;
20890  }
20891  ldv_37270: ;
20892  {
20893#line 3079
20894  __cil_tmp6 = (struct cond_wait *)0;
20895#line 3079
20896  __cil_tmp7 = (unsigned long )__cil_tmp6;
20897#line 3079
20898  __cil_tmp8 = *head;
20899#line 3079
20900  __cil_tmp9 = (unsigned long )__cil_tmp8;
20901#line 3079
20902  if (__cil_tmp9 != __cil_tmp7) {
20903#line 3080
20904    goto ldv_37269;
20905  } else {
20906#line 3082
20907    goto ldv_37271;
20908  }
20909  }
20910  ldv_37271: ;
20911#line 3084
20912  return;
20913}
20914}
20915#line 3101 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
20916static int wait_gpio(struct slgt_info *info , struct gpio_desc *user_gpio ) 
20917{ unsigned long flags ;
20918  int rc ;
20919  struct gpio_desc gpio ;
20920  struct cond_wait wait ;
20921  u32 state ;
20922  unsigned long tmp ;
20923  __u32 tmp___0 ;
20924  raw_spinlock_t *tmp___1 ;
20925  __u32 tmp___2 ;
20926  struct task_struct *tmp___3 ;
20927  int tmp___4 ;
20928  raw_spinlock_t *tmp___5 ;
20929  int tmp___6 ;
20930  unsigned int __cil_tmp16 ;
20931  void *__cil_tmp17 ;
20932  void const   *__cil_tmp18 ;
20933  char (*__cil_tmp19)[25U] ;
20934  char *__cil_tmp20 ;
20935  __u32 __cil_tmp21 ;
20936  struct slgt_info *__cil_tmp22 ;
20937  spinlock_t *__cil_tmp23 ;
20938  unsigned int __cil_tmp24 ;
20939  unsigned int __cil_tmp25 ;
20940  unsigned int __cil_tmp26 ;
20941  unsigned int __cil_tmp27 ;
20942  struct cond_wait **__cil_tmp28 ;
20943  struct slgt_info *__cil_tmp29 ;
20944  spinlock_t *__cil_tmp30 ;
20945  struct slgt_info *__cil_tmp31 ;
20946  spinlock_t *__cil_tmp32 ;
20947  struct cond_wait **__cil_tmp33 ;
20948  struct cond_wait *__cil_tmp34 ;
20949  unsigned long __cil_tmp35 ;
20950  struct cond_wait *__cil_tmp36 ;
20951  unsigned long __cil_tmp37 ;
20952  struct slgt_info *__cil_tmp38 ;
20953  spinlock_t *__cil_tmp39 ;
20954  void *__cil_tmp40 ;
20955  void const   *__cil_tmp41 ;
20956
20957  {
20958#line 3104
20959  rc = 0;
20960  {
20961#line 3109
20962  __cil_tmp16 = info->gpio_present;
20963#line 3109
20964  if (__cil_tmp16 == 0U) {
20965#line 3110
20966    return (-22);
20967  } else {
20968
20969  }
20970  }
20971  {
20972#line 3111
20973  __cil_tmp17 = (void *)(& gpio);
20974#line 3111
20975  __cil_tmp18 = (void const   *)user_gpio;
20976#line 3111
20977  tmp = copy_from_user(__cil_tmp17, __cil_tmp18, 16UL);
20978  }
20979#line 3111
20980  if (tmp != 0UL) {
20981#line 3112
20982    return (-14);
20983  } else {
20984
20985  }
20986#line 3113
20987  if (debug_level > 2) {
20988    {
20989#line 3113
20990    __cil_tmp19 = & info->device_name;
20991#line 3113
20992    __cil_tmp20 = (char *)__cil_tmp19;
20993#line 3113
20994    printk("%s wait_gpio() state=%08x smask=%08x\n", __cil_tmp20, gpio.state, gpio.smask);
20995    }
20996  } else {
20997
20998  }
20999  {
21000#line 3116
21001  tmp___0 = rd_reg32(info, 8U);
21002#line 3116
21003  __cil_tmp21 = ~ tmp___0;
21004#line 3116
21005  gpio.smask = gpio.smask & __cil_tmp21;
21006  }
21007#line 3116
21008  if (gpio.smask == 0U) {
21009#line 3117
21010    return (-22);
21011  } else {
21012
21013  }
21014  {
21015#line 3118
21016  init_cond_wait(& wait, gpio.smask);
21017#line 3120
21018  __cil_tmp22 = info->port_array[0];
21019#line 3120
21020  __cil_tmp23 = & __cil_tmp22->lock;
21021#line 3120
21022  tmp___1 = spinlock_check(__cil_tmp23);
21023#line 3120
21024  flags = _raw_spin_lock_irqsave(tmp___1);
21025#line 3122
21026  tmp___2 = rd_reg32(info, 12U);
21027#line 3122
21028  __cil_tmp24 = tmp___2 | gpio.smask;
21029#line 3122
21030  wr_reg32(info, 12U, __cil_tmp24);
21031#line 3124
21032  state = rd_reg32(info, 16U);
21033  }
21034  {
21035#line 3126
21036  __cil_tmp25 = gpio.state ^ state;
21037#line 3126
21038  __cil_tmp26 = ~ __cil_tmp25;
21039#line 3126
21040  __cil_tmp27 = gpio.smask & __cil_tmp26;
21041#line 3126
21042  if (__cil_tmp27 != 0U) {
21043#line 3128
21044    gpio.state = state;
21045  } else {
21046    {
21047#line 3131
21048    __cil_tmp28 = & info->gpio_wait_q;
21049#line 3131
21050    add_cond_wait(__cil_tmp28, & wait);
21051#line 3132
21052    __cil_tmp29 = info->port_array[0];
21053#line 3132
21054    __cil_tmp30 = & __cil_tmp29->lock;
21055#line 3132
21056    spin_unlock_irqrestore(__cil_tmp30, flags);
21057#line 3133
21058    schedule();
21059#line 3134
21060    tmp___3 = get_current();
21061#line 3134
21062    tmp___4 = signal_pending(tmp___3);
21063    }
21064#line 3134
21065    if (tmp___4 != 0) {
21066#line 3135
21067      rc = -512;
21068    } else {
21069#line 3137
21070      gpio.state = wait.data;
21071    }
21072    {
21073#line 3138
21074    __cil_tmp31 = info->port_array[0];
21075#line 3138
21076    __cil_tmp32 = & __cil_tmp31->lock;
21077#line 3138
21078    tmp___5 = spinlock_check(__cil_tmp32);
21079#line 3138
21080    flags = _raw_spin_lock_irqsave(tmp___5);
21081#line 3139
21082    __cil_tmp33 = & info->gpio_wait_q;
21083#line 3139
21084    remove_cond_wait(__cil_tmp33, & wait);
21085    }
21086  }
21087  }
21088  {
21089#line 3143
21090  __cil_tmp34 = (struct cond_wait *)0;
21091#line 3143
21092  __cil_tmp35 = (unsigned long )__cil_tmp34;
21093#line 3143
21094  __cil_tmp36 = info->gpio_wait_q;
21095#line 3143
21096  __cil_tmp37 = (unsigned long )__cil_tmp36;
21097#line 3143
21098  if (__cil_tmp37 == __cil_tmp35) {
21099    {
21100#line 3144
21101    wr_reg32(info, 12U, 0U);
21102    }
21103  } else {
21104
21105  }
21106  }
21107  {
21108#line 3145
21109  __cil_tmp38 = info->port_array[0];
21110#line 3145
21111  __cil_tmp39 = & __cil_tmp38->lock;
21112#line 3145
21113  spin_unlock_irqrestore(__cil_tmp39, flags);
21114  }
21115#line 3147
21116  if (rc == 0) {
21117    {
21118#line 3147
21119    __cil_tmp40 = (void *)user_gpio;
21120#line 3147
21121    __cil_tmp41 = (void const   *)(& gpio);
21122#line 3147
21123    tmp___6 = copy_to_user(__cil_tmp40, __cil_tmp41, 16U);
21124    }
21125#line 3147
21126    if (tmp___6 != 0) {
21127#line 3148
21128      rc = -14;
21129    } else {
21130
21131    }
21132  } else {
21133
21134  }
21135#line 3149
21136  return (rc);
21137}
21138}
21139#line 3152 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
21140static int modem_input_wait(struct slgt_info *info , int arg ) 
21141{ unsigned long flags ;
21142  int rc ;
21143  struct mgsl_icount cprev ;
21144  struct mgsl_icount cnow ;
21145  wait_queue_t wait ;
21146  struct task_struct *tmp ;
21147  raw_spinlock_t *tmp___0 ;
21148  long volatile   __x ;
21149  u8 volatile   *__ptr ;
21150  struct task_struct *tmp___1 ;
21151  u16 volatile   *__ptr___0 ;
21152  struct task_struct *tmp___2 ;
21153  u32 volatile   *__ptr___1 ;
21154  struct task_struct *tmp___3 ;
21155  u64 volatile   *__ptr___2 ;
21156  struct task_struct *tmp___4 ;
21157  struct task_struct *tmp___5 ;
21158  int tmp___6 ;
21159  raw_spinlock_t *tmp___7 ;
21160  long volatile   __x___0 ;
21161  u8 volatile   *__ptr___3 ;
21162  struct task_struct *tmp___8 ;
21163  u16 volatile   *__ptr___4 ;
21164  struct task_struct *tmp___9 ;
21165  u32 volatile   *__ptr___5 ;
21166  struct task_struct *tmp___10 ;
21167  u64 volatile   *__ptr___6 ;
21168  struct task_struct *tmp___11 ;
21169  long volatile   __x___1 ;
21170  u8 volatile   *__ptr___7 ;
21171  struct task_struct *tmp___12 ;
21172  u16 volatile   *__ptr___8 ;
21173  struct task_struct *tmp___13 ;
21174  u32 volatile   *__ptr___9 ;
21175  struct task_struct *tmp___14 ;
21176  u64 volatile   *__ptr___10 ;
21177  struct task_struct *tmp___15 ;
21178  spinlock_t *__cil_tmp40 ;
21179  wait_queue_head_t *__cil_tmp41 ;
21180  long volatile   *__cil_tmp42 ;
21181  long volatile   *__cil_tmp43 ;
21182  long volatile   *__cil_tmp44 ;
21183  long volatile   *__cil_tmp45 ;
21184  spinlock_t *__cil_tmp46 ;
21185  spinlock_t *__cil_tmp47 ;
21186  long volatile   *__cil_tmp48 ;
21187  long volatile   *__cil_tmp49 ;
21188  long volatile   *__cil_tmp50 ;
21189  long volatile   *__cil_tmp51 ;
21190  spinlock_t *__cil_tmp52 ;
21191  int __cil_tmp53 ;
21192  int __cil_tmp54 ;
21193  int __cil_tmp55 ;
21194  int __cil_tmp56 ;
21195  wait_queue_head_t *__cil_tmp57 ;
21196  long volatile   *__cil_tmp58 ;
21197  long volatile   *__cil_tmp59 ;
21198  long volatile   *__cil_tmp60 ;
21199  long volatile   *__cil_tmp61 ;
21200
21201  {
21202  {
21203#line 3157
21204  tmp = get_current();
21205#line 3157
21206  wait.flags = 0U;
21207#line 3157
21208  wait.private = (void *)tmp;
21209#line 3157
21210  wait.func = & default_wake_function;
21211#line 3157
21212  wait.task_list.next = (struct list_head *)0;
21213#line 3157
21214  wait.task_list.prev = (struct list_head *)0;
21215#line 3160
21216  __cil_tmp40 = & info->lock;
21217#line 3160
21218  tmp___0 = spinlock_check(__cil_tmp40);
21219#line 3160
21220  flags = _raw_spin_lock_irqsave(tmp___0);
21221#line 3161
21222  cprev = info->icount;
21223#line 3162
21224  __cil_tmp41 = & info->status_event_wait_q;
21225#line 3162
21226  add_wait_queue(__cil_tmp41, & wait);
21227#line 3163
21228  __x = (long volatile   )1L;
21229  }
21230#line 3163
21231  if (1) {
21232#line 3163
21233    goto case_8;
21234  } else {
21235#line 3163
21236    goto switch_default;
21237#line 3163
21238    if (0) {
21239      {
21240#line 3163
21241      tmp___1 = get_current();
21242#line 3163
21243      __cil_tmp42 = & tmp___1->state;
21244#line 3163
21245      __ptr = (u8 volatile   *)__cil_tmp42;
21246#line 3163
21247      __asm__  volatile   ("xchgb %0,%1": "=q" (__x), "+m" (*__ptr): "0" (__x): "memory");
21248      }
21249#line 3163
21250      goto ldv_37302;
21251      {
21252#line 3163
21253      tmp___2 = get_current();
21254#line 3163
21255      __cil_tmp43 = & tmp___2->state;
21256#line 3163
21257      __ptr___0 = (u16 volatile   *)__cil_tmp43;
21258#line 3163
21259      __asm__  volatile   ("xchgw %0,%1": "=r" (__x), "+m" (*__ptr___0): "0" (__x): "memory");
21260      }
21261#line 3163
21262      goto ldv_37302;
21263      {
21264#line 3163
21265      tmp___3 = get_current();
21266#line 3163
21267      __cil_tmp44 = & tmp___3->state;
21268#line 3163
21269      __ptr___1 = (u32 volatile   *)__cil_tmp44;
21270#line 3163
21271      __asm__  volatile   ("xchgl %0,%1": "=r" (__x), "+m" (*__ptr___1): "0" (__x): "memory");
21272      }
21273#line 3163
21274      goto ldv_37302;
21275      case_8: 
21276      {
21277#line 3163
21278      tmp___4 = get_current();
21279#line 3163
21280      __cil_tmp45 = & tmp___4->state;
21281#line 3163
21282      __ptr___2 = (u64 volatile   *)__cil_tmp45;
21283#line 3163
21284      __asm__  volatile   ("xchgq %0,%1": "=r" (__x), "+m" (*__ptr___2): "0" (__x): "memory");
21285      }
21286#line 3163
21287      goto ldv_37302;
21288      switch_default: 
21289      {
21290#line 3163
21291      __xchg_wrong_size();
21292      }
21293    } else {
21294
21295    }
21296  }
21297  ldv_37302: 
21298  {
21299#line 3164
21300  __cil_tmp46 = & info->lock;
21301#line 3164
21302  spin_unlock_irqrestore(__cil_tmp46, flags);
21303  }
21304  ldv_37327: 
21305  {
21306#line 3167
21307  schedule();
21308#line 3168
21309  tmp___5 = get_current();
21310#line 3168
21311  tmp___6 = signal_pending(tmp___5);
21312  }
21313#line 3168
21314  if (tmp___6 != 0) {
21315#line 3169
21316    rc = -512;
21317#line 3170
21318    goto ldv_37311;
21319  } else {
21320
21321  }
21322  {
21323#line 3174
21324  __cil_tmp47 = & info->lock;
21325#line 3174
21326  tmp___7 = spinlock_check(__cil_tmp47);
21327#line 3174
21328  flags = _raw_spin_lock_irqsave(tmp___7);
21329#line 3175
21330  cnow = info->icount;
21331#line 3176
21332  __x___0 = (long volatile   )1L;
21333  }
21334#line 3176
21335  if (1) {
21336#line 3176
21337    goto case_8___0;
21338  } else {
21339#line 3176
21340    goto switch_default___0;
21341#line 3176
21342    if (0) {
21343      {
21344#line 3176
21345      tmp___8 = get_current();
21346#line 3176
21347      __cil_tmp48 = & tmp___8->state;
21348#line 3176
21349      __ptr___3 = (u8 volatile   *)__cil_tmp48;
21350#line 3176
21351      __asm__  volatile   ("xchgb %0,%1": "=q" (__x___0), "+m" (*__ptr___3): "0" (__x___0): "memory");
21352      }
21353#line 3176
21354      goto ldv_37318;
21355      {
21356#line 3176
21357      tmp___9 = get_current();
21358#line 3176
21359      __cil_tmp49 = & tmp___9->state;
21360#line 3176
21361      __ptr___4 = (u16 volatile   *)__cil_tmp49;
21362#line 3176
21363      __asm__  volatile   ("xchgw %0,%1": "=r" (__x___0), "+m" (*__ptr___4): "0" (__x___0): "memory");
21364      }
21365#line 3176
21366      goto ldv_37318;
21367      {
21368#line 3176
21369      tmp___10 = get_current();
21370#line 3176
21371      __cil_tmp50 = & tmp___10->state;
21372#line 3176
21373      __ptr___5 = (u32 volatile   *)__cil_tmp50;
21374#line 3176
21375      __asm__  volatile   ("xchgl %0,%1": "=r" (__x___0), "+m" (*__ptr___5): "0" (__x___0): "memory");
21376      }
21377#line 3176
21378      goto ldv_37318;
21379      case_8___0: 
21380      {
21381#line 3176
21382      tmp___11 = get_current();
21383#line 3176
21384      __cil_tmp51 = & tmp___11->state;
21385#line 3176
21386      __ptr___6 = (u64 volatile   *)__cil_tmp51;
21387#line 3176
21388      __asm__  volatile   ("xchgq %0,%1": "=r" (__x___0), "+m" (*__ptr___6): "0" (__x___0): "memory");
21389      }
21390#line 3176
21391      goto ldv_37318;
21392      switch_default___0: 
21393      {
21394#line 3176
21395      __xchg_wrong_size();
21396      }
21397    } else {
21398
21399    }
21400  }
21401  ldv_37318: 
21402  {
21403#line 3177
21404  __cil_tmp52 = & info->lock;
21405#line 3177
21406  spin_unlock_irqrestore(__cil_tmp52, flags);
21407  }
21408#line 3180
21409  if (cnow.rng == cprev.rng) {
21410#line 3180
21411    if (cnow.dsr == cprev.dsr) {
21412#line 3180
21413      if (cnow.dcd == cprev.dcd) {
21414#line 3180
21415        if (cnow.cts == cprev.cts) {
21416#line 3182
21417          rc = -5;
21418#line 3183
21419          goto ldv_37311;
21420        } else {
21421
21422        }
21423      } else {
21424
21425      }
21426    } else {
21427
21428    }
21429  } else {
21430
21431  }
21432  {
21433#line 3187
21434  __cil_tmp53 = arg & 128;
21435#line 3187
21436  if (__cil_tmp53 != 0) {
21437#line 3187
21438    if (cnow.rng != cprev.rng) {
21439#line 3191
21440      rc = 0;
21441#line 3192
21442      goto ldv_37311;
21443    } else {
21444#line 3187
21445      goto _L___1;
21446    }
21447  } else {
21448    _L___1: 
21449    {
21450#line 3187
21451    __cil_tmp54 = arg & 256;
21452#line 3187
21453    if (__cil_tmp54 != 0) {
21454#line 3187
21455      if (cnow.dsr != cprev.dsr) {
21456#line 3191
21457        rc = 0;
21458#line 3192
21459        goto ldv_37311;
21460      } else {
21461#line 3187
21462        goto _L___0;
21463      }
21464    } else {
21465      _L___0: 
21466      {
21467#line 3187
21468      __cil_tmp55 = arg & 64;
21469#line 3187
21470      if (__cil_tmp55 != 0) {
21471#line 3187
21472        if (cnow.dcd != cprev.dcd) {
21473#line 3191
21474          rc = 0;
21475#line 3192
21476          goto ldv_37311;
21477        } else {
21478#line 3187
21479          goto _L;
21480        }
21481      } else {
21482        _L: 
21483        {
21484#line 3187
21485        __cil_tmp56 = arg & 32;
21486#line 3187
21487        if (__cil_tmp56 != 0) {
21488#line 3187
21489          if (cnow.cts != cprev.cts) {
21490#line 3191
21491            rc = 0;
21492#line 3192
21493            goto ldv_37311;
21494          } else {
21495
21496          }
21497        } else {
21498
21499        }
21500        }
21501      }
21502      }
21503    }
21504    }
21505  }
21506  }
21507#line 3195
21508  cprev = cnow;
21509#line 3196
21510  goto ldv_37327;
21511  ldv_37311: 
21512  {
21513#line 3197
21514  __cil_tmp57 = & info->status_event_wait_q;
21515#line 3197
21516  remove_wait_queue(__cil_tmp57, & wait);
21517#line 3198
21518  __x___1 = (long volatile   )0L;
21519  }
21520#line 3198
21521  if (1) {
21522#line 3198
21523    goto case_8___1;
21524  } else {
21525#line 3198
21526    goto switch_default___1;
21527#line 3198
21528    if (0) {
21529      {
21530#line 3198
21531      tmp___12 = get_current();
21532#line 3198
21533      __cil_tmp58 = & tmp___12->state;
21534#line 3198
21535      __ptr___7 = (u8 volatile   *)__cil_tmp58;
21536#line 3198
21537      __asm__  volatile   ("xchgb %0,%1": "=q" (__x___1), "+m" (*__ptr___7): "0" (__x___1): "memory");
21538      }
21539#line 3198
21540      goto ldv_37331;
21541      {
21542#line 3198
21543      tmp___13 = get_current();
21544#line 3198
21545      __cil_tmp59 = & tmp___13->state;
21546#line 3198
21547      __ptr___8 = (u16 volatile   *)__cil_tmp59;
21548#line 3198
21549      __asm__  volatile   ("xchgw %0,%1": "=r" (__x___1), "+m" (*__ptr___8): "0" (__x___1): "memory");
21550      }
21551#line 3198
21552      goto ldv_37331;
21553      {
21554#line 3198
21555      tmp___14 = get_current();
21556#line 3198
21557      __cil_tmp60 = & tmp___14->state;
21558#line 3198
21559      __ptr___9 = (u32 volatile   *)__cil_tmp60;
21560#line 3198
21561      __asm__  volatile   ("xchgl %0,%1": "=r" (__x___1), "+m" (*__ptr___9): "0" (__x___1): "memory");
21562      }
21563#line 3198
21564      goto ldv_37331;
21565      case_8___1: 
21566      {
21567#line 3198
21568      tmp___15 = get_current();
21569#line 3198
21570      __cil_tmp61 = & tmp___15->state;
21571#line 3198
21572      __ptr___10 = (u64 volatile   *)__cil_tmp61;
21573#line 3198
21574      __asm__  volatile   ("xchgq %0,%1": "=r" (__x___1), "+m" (*__ptr___10): "0" (__x___1): "memory");
21575      }
21576#line 3198
21577      goto ldv_37331;
21578      switch_default___1: 
21579      {
21580#line 3198
21581      __xchg_wrong_size();
21582      }
21583    } else {
21584
21585    }
21586  }
21587  ldv_37331: ;
21588#line 3199
21589  return (rc);
21590}
21591}
21592#line 3205 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
21593static int tiocmget(struct tty_struct *tty ) 
21594{ struct slgt_info *info ;
21595  unsigned int result ;
21596  unsigned long flags ;
21597  raw_spinlock_t *tmp ;
21598  int tmp___0 ;
21599  int tmp___1 ;
21600  int tmp___2 ;
21601  int tmp___3 ;
21602  int tmp___4 ;
21603  int tmp___5 ;
21604  void *__cil_tmp12 ;
21605  spinlock_t *__cil_tmp13 ;
21606  spinlock_t *__cil_tmp14 ;
21607  unsigned char __cil_tmp15 ;
21608  int __cil_tmp16 ;
21609  int __cil_tmp17 ;
21610  unsigned char __cil_tmp18 ;
21611  signed char __cil_tmp19 ;
21612  int __cil_tmp20 ;
21613  unsigned char __cil_tmp21 ;
21614  int __cil_tmp22 ;
21615  unsigned char __cil_tmp23 ;
21616  int __cil_tmp24 ;
21617  int __cil_tmp25 ;
21618  unsigned char __cil_tmp26 ;
21619  int __cil_tmp27 ;
21620  int __cil_tmp28 ;
21621  unsigned char __cil_tmp29 ;
21622  int __cil_tmp30 ;
21623  int __cil_tmp31 ;
21624  int __cil_tmp32 ;
21625  int __cil_tmp33 ;
21626  int __cil_tmp34 ;
21627  int __cil_tmp35 ;
21628  int __cil_tmp36 ;
21629  char (*__cil_tmp37)[25U] ;
21630  char *__cil_tmp38 ;
21631
21632  {
21633  {
21634#line 3207
21635  __cil_tmp12 = tty->driver_data;
21636#line 3207
21637  info = (struct slgt_info *)__cil_tmp12;
21638#line 3211
21639  __cil_tmp13 = & info->lock;
21640#line 3211
21641  tmp = spinlock_check(__cil_tmp13);
21642#line 3211
21643  flags = _raw_spin_lock_irqsave(tmp);
21644#line 3212
21645  get_signals(info);
21646#line 3213
21647  __cil_tmp14 = & info->lock;
21648#line 3213
21649  spin_unlock_irqrestore(__cil_tmp14, flags);
21650  }
21651  {
21652#line 3215
21653  __cil_tmp15 = info->signals;
21654#line 3215
21655  __cil_tmp16 = (int )__cil_tmp15;
21656#line 3215
21657  __cil_tmp17 = __cil_tmp16 & 32;
21658#line 3215
21659  if (__cil_tmp17 != 0) {
21660#line 3215
21661    tmp___0 = 4;
21662  } else {
21663#line 3215
21664    tmp___0 = 0;
21665  }
21666  }
21667  {
21668#line 3215
21669  __cil_tmp18 = info->signals;
21670#line 3215
21671  __cil_tmp19 = (signed char )__cil_tmp18;
21672#line 3215
21673  __cil_tmp20 = (int )__cil_tmp19;
21674#line 3215
21675  if (__cil_tmp20 < 0) {
21676#line 3215
21677    tmp___1 = 2;
21678  } else {
21679#line 3215
21680    tmp___1 = 0;
21681  }
21682  }
21683  {
21684#line 3215
21685  __cil_tmp21 = info->signals;
21686#line 3215
21687  __cil_tmp22 = (int )__cil_tmp21;
21688#line 3215
21689  if (__cil_tmp22 & 1) {
21690#line 3215
21691    tmp___2 = 64;
21692  } else {
21693#line 3215
21694    tmp___2 = 0;
21695  }
21696  }
21697  {
21698#line 3215
21699  __cil_tmp23 = info->signals;
21700#line 3215
21701  __cil_tmp24 = (int )__cil_tmp23;
21702#line 3215
21703  __cil_tmp25 = __cil_tmp24 & 4;
21704#line 3215
21705  if (__cil_tmp25 != 0) {
21706#line 3215
21707    tmp___3 = 128;
21708  } else {
21709#line 3215
21710    tmp___3 = 0;
21711  }
21712  }
21713  {
21714#line 3215
21715  __cil_tmp26 = info->signals;
21716#line 3215
21717  __cil_tmp27 = (int )__cil_tmp26;
21718#line 3215
21719  __cil_tmp28 = __cil_tmp27 & 64;
21720#line 3215
21721  if (__cil_tmp28 != 0) {
21722#line 3215
21723    tmp___4 = 256;
21724  } else {
21725#line 3215
21726    tmp___4 = 0;
21727  }
21728  }
21729  {
21730#line 3215
21731  __cil_tmp29 = info->signals;
21732#line 3215
21733  __cil_tmp30 = (int )__cil_tmp29;
21734#line 3215
21735  __cil_tmp31 = __cil_tmp30 & 16;
21736#line 3215
21737  if (__cil_tmp31 != 0) {
21738#line 3215
21739    tmp___5 = 32;
21740  } else {
21741#line 3215
21742    tmp___5 = 0;
21743  }
21744  }
21745#line 3215
21746  __cil_tmp32 = tmp___0 + tmp___1;
21747#line 3215
21748  __cil_tmp33 = __cil_tmp32 + tmp___2;
21749#line 3215
21750  __cil_tmp34 = __cil_tmp33 + tmp___3;
21751#line 3215
21752  __cil_tmp35 = __cil_tmp34 + tmp___4;
21753#line 3215
21754  __cil_tmp36 = __cil_tmp35 + tmp___5;
21755#line 3215
21756  result = (unsigned int )__cil_tmp36;
21757#line 3222
21758  if (debug_level > 2) {
21759    {
21760#line 3222
21761    __cil_tmp37 = & info->device_name;
21762#line 3222
21763    __cil_tmp38 = (char *)__cil_tmp37;
21764#line 3222
21765    printk("%s tiocmget value=%08X\n", __cil_tmp38, result);
21766    }
21767  } else {
21768
21769  }
21770#line 3223
21771  return ((int )result);
21772}
21773}
21774#line 3233 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
21775static int tiocmset(struct tty_struct *tty , unsigned int set , unsigned int clear ) 
21776{ struct slgt_info *info ;
21777  unsigned long flags ;
21778  raw_spinlock_t *tmp ;
21779  void *__cil_tmp7 ;
21780  char (*__cil_tmp8)[25U] ;
21781  char *__cil_tmp9 ;
21782  unsigned int __cil_tmp10 ;
21783  unsigned char __cil_tmp11 ;
21784  unsigned int __cil_tmp12 ;
21785  unsigned int __cil_tmp13 ;
21786  unsigned int __cil_tmp14 ;
21787  unsigned char __cil_tmp15 ;
21788  unsigned int __cil_tmp16 ;
21789  unsigned int __cil_tmp17 ;
21790  unsigned int __cil_tmp18 ;
21791  unsigned char __cil_tmp19 ;
21792  unsigned int __cil_tmp20 ;
21793  unsigned int __cil_tmp21 ;
21794  unsigned int __cil_tmp22 ;
21795  unsigned char __cil_tmp23 ;
21796  unsigned int __cil_tmp24 ;
21797  unsigned int __cil_tmp25 ;
21798  spinlock_t *__cil_tmp26 ;
21799  spinlock_t *__cil_tmp27 ;
21800
21801  {
21802#line 3236
21803  __cil_tmp7 = tty->driver_data;
21804#line 3236
21805  info = (struct slgt_info *)__cil_tmp7;
21806#line 3239
21807  if (debug_level > 2) {
21808    {
21809#line 3239
21810    __cil_tmp8 = & info->device_name;
21811#line 3239
21812    __cil_tmp9 = (char *)__cil_tmp8;
21813#line 3239
21814    printk("%s tiocmset(%x,%x)\n", __cil_tmp9, set, clear);
21815    }
21816  } else {
21817
21818  }
21819  {
21820#line 3241
21821  __cil_tmp10 = set & 4U;
21822#line 3241
21823  if (__cil_tmp10 != 0U) {
21824#line 3242
21825    __cil_tmp11 = info->signals;
21826#line 3242
21827    __cil_tmp12 = (unsigned int )__cil_tmp11;
21828#line 3242
21829    __cil_tmp13 = __cil_tmp12 | 32U;
21830#line 3242
21831    info->signals = (unsigned char )__cil_tmp13;
21832  } else {
21833
21834  }
21835  }
21836  {
21837#line 3243
21838  __cil_tmp14 = set & 2U;
21839#line 3243
21840  if (__cil_tmp14 != 0U) {
21841#line 3244
21842    __cil_tmp15 = info->signals;
21843#line 3244
21844    __cil_tmp16 = (unsigned int )__cil_tmp15;
21845#line 3244
21846    __cil_tmp17 = __cil_tmp16 | 128U;
21847#line 3244
21848    info->signals = (unsigned char )__cil_tmp17;
21849  } else {
21850
21851  }
21852  }
21853  {
21854#line 3245
21855  __cil_tmp18 = clear & 4U;
21856#line 3245
21857  if (__cil_tmp18 != 0U) {
21858#line 3246
21859    __cil_tmp19 = info->signals;
21860#line 3246
21861    __cil_tmp20 = (unsigned int )__cil_tmp19;
21862#line 3246
21863    __cil_tmp21 = __cil_tmp20 & 223U;
21864#line 3246
21865    info->signals = (unsigned char )__cil_tmp21;
21866  } else {
21867
21868  }
21869  }
21870  {
21871#line 3247
21872  __cil_tmp22 = clear & 2U;
21873#line 3247
21874  if (__cil_tmp22 != 0U) {
21875#line 3248
21876    __cil_tmp23 = info->signals;
21877#line 3248
21878    __cil_tmp24 = (unsigned int )__cil_tmp23;
21879#line 3248
21880    __cil_tmp25 = __cil_tmp24 & 127U;
21881#line 3248
21882    info->signals = (unsigned char )__cil_tmp25;
21883  } else {
21884
21885  }
21886  }
21887  {
21888#line 3250
21889  __cil_tmp26 = & info->lock;
21890#line 3250
21891  tmp = spinlock_check(__cil_tmp26);
21892#line 3250
21893  flags = _raw_spin_lock_irqsave(tmp);
21894#line 3251
21895  set_signals(info);
21896#line 3252
21897  __cil_tmp27 = & info->lock;
21898#line 3252
21899  spin_unlock_irqrestore(__cil_tmp27, flags);
21900  }
21901#line 3253
21902  return (0);
21903}
21904}
21905#line 3256 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
21906static int carrier_raised(struct tty_port *port ) 
21907{ unsigned long flags ;
21908  struct slgt_info *info ;
21909  struct tty_port  const  *__mptr ;
21910  raw_spinlock_t *tmp ;
21911  struct slgt_info *__cil_tmp6 ;
21912  spinlock_t *__cil_tmp7 ;
21913  spinlock_t *__cil_tmp8 ;
21914  unsigned char __cil_tmp9 ;
21915  int __cil_tmp10 ;
21916
21917  {
21918  {
21919#line 3259
21920  __mptr = (struct tty_port  const  *)port;
21921#line 3259
21922  __cil_tmp6 = (struct slgt_info *)__mptr;
21923#line 3259
21924  info = __cil_tmp6 + 1152921504606846968UL;
21925#line 3261
21926  __cil_tmp7 = & info->lock;
21927#line 3261
21928  tmp = spinlock_check(__cil_tmp7);
21929#line 3261
21930  flags = _raw_spin_lock_irqsave(tmp);
21931#line 3262
21932  get_signals(info);
21933#line 3263
21934  __cil_tmp8 = & info->lock;
21935#line 3263
21936  spin_unlock_irqrestore(__cil_tmp8, flags);
21937  }
21938  {
21939#line 3264
21940  __cil_tmp9 = info->signals;
21941#line 3264
21942  __cil_tmp10 = (int )__cil_tmp9;
21943#line 3264
21944  return (__cil_tmp10 & 1);
21945  }
21946}
21947}
21948#line 3267 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
21949static void dtr_rts(struct tty_port *port , int on ) 
21950{ unsigned long flags ;
21951  struct slgt_info *info ;
21952  struct tty_port  const  *__mptr ;
21953  raw_spinlock_t *tmp ;
21954  struct slgt_info *__cil_tmp7 ;
21955  spinlock_t *__cil_tmp8 ;
21956  unsigned char __cil_tmp9 ;
21957  unsigned int __cil_tmp10 ;
21958  unsigned int __cil_tmp11 ;
21959  unsigned char __cil_tmp12 ;
21960  unsigned int __cil_tmp13 ;
21961  unsigned int __cil_tmp14 ;
21962  spinlock_t *__cil_tmp15 ;
21963
21964  {
21965  {
21966#line 3270
21967  __mptr = (struct tty_port  const  *)port;
21968#line 3270
21969  __cil_tmp7 = (struct slgt_info *)__mptr;
21970#line 3270
21971  info = __cil_tmp7 + 1152921504606846968UL;
21972#line 3272
21973  __cil_tmp8 = & info->lock;
21974#line 3272
21975  tmp = spinlock_check(__cil_tmp8);
21976#line 3272
21977  flags = _raw_spin_lock_irqsave(tmp);
21978  }
21979#line 3273
21980  if (on != 0) {
21981#line 3274
21982    __cil_tmp9 = info->signals;
21983#line 3274
21984    __cil_tmp10 = (unsigned int )__cil_tmp9;
21985#line 3274
21986    __cil_tmp11 = __cil_tmp10 | 160U;
21987#line 3274
21988    info->signals = (unsigned char )__cil_tmp11;
21989  } else {
21990#line 3276
21991    __cil_tmp12 = info->signals;
21992#line 3276
21993    __cil_tmp13 = (unsigned int )__cil_tmp12;
21994#line 3276
21995    __cil_tmp14 = __cil_tmp13 & 95U;
21996#line 3276
21997    info->signals = (unsigned char )__cil_tmp14;
21998  }
21999  {
22000#line 3277
22001  set_signals(info);
22002#line 3278
22003  __cil_tmp15 = & info->lock;
22004#line 3278
22005  spin_unlock_irqrestore(__cil_tmp15, flags);
22006  }
22007#line 3279
22008  return;
22009}
22010}
22011#line 3285 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
22012static int block_til_ready(struct tty_struct *tty , struct file *filp , struct slgt_info *info ) 
22013{ wait_queue_t wait ;
22014  struct task_struct *tmp ;
22015  int retval ;
22016  bool do_clocal ;
22017  bool extra_count ;
22018  unsigned long flags ;
22019  int cd ;
22020  struct tty_port *port ;
22021  raw_spinlock_t *tmp___0 ;
22022  int tmp___1 ;
22023  long volatile   __x ;
22024  u8 volatile   *__ptr ;
22025  struct task_struct *tmp___2 ;
22026  u16 volatile   *__ptr___0 ;
22027  struct task_struct *tmp___3 ;
22028  u32 volatile   *__ptr___1 ;
22029  struct task_struct *tmp___4 ;
22030  u64 volatile   *__ptr___2 ;
22031  struct task_struct *tmp___5 ;
22032  int tmp___6 ;
22033  struct task_struct *tmp___7 ;
22034  int tmp___8 ;
22035  long volatile   __x___0 ;
22036  u8 volatile   *__ptr___3 ;
22037  struct task_struct *tmp___9 ;
22038  u16 volatile   *__ptr___4 ;
22039  struct task_struct *tmp___10 ;
22040  u32 volatile   *__ptr___5 ;
22041  struct task_struct *tmp___11 ;
22042  u64 volatile   *__ptr___6 ;
22043  struct task_struct *tmp___12 ;
22044  struct tty_driver *__cil_tmp35 ;
22045  char const   *__cil_tmp36 ;
22046  unsigned int __cil_tmp37 ;
22047  unsigned int __cil_tmp38 ;
22048  unsigned long __cil_tmp39 ;
22049  unsigned long __cil_tmp40 ;
22050  unsigned long __cil_tmp41 ;
22051  unsigned long __cil_tmp42 ;
22052  struct ktermios *__cil_tmp43 ;
22053  tcflag_t __cil_tmp44 ;
22054  unsigned int __cil_tmp45 ;
22055  wait_queue_head_t *__cil_tmp46 ;
22056  spinlock_t *__cil_tmp47 ;
22057  int __cil_tmp48 ;
22058  spinlock_t *__cil_tmp49 ;
22059  int __cil_tmp50 ;
22060  struct ktermios *__cil_tmp51 ;
22061  tcflag_t __cil_tmp52 ;
22062  unsigned int __cil_tmp53 ;
22063  long volatile   *__cil_tmp54 ;
22064  long volatile   *__cil_tmp55 ;
22065  long volatile   *__cil_tmp56 ;
22066  long volatile   *__cil_tmp57 ;
22067  unsigned long __cil_tmp58 ;
22068  unsigned long __cil_tmp59 ;
22069  unsigned long __cil_tmp60 ;
22070  int __cil_tmp61 ;
22071  unsigned long __cil_tmp62 ;
22072  unsigned long __cil_tmp63 ;
22073  struct tty_driver *__cil_tmp64 ;
22074  char const   *__cil_tmp65 ;
22075  long volatile   *__cil_tmp66 ;
22076  long volatile   *__cil_tmp67 ;
22077  long volatile   *__cil_tmp68 ;
22078  long volatile   *__cil_tmp69 ;
22079  wait_queue_head_t *__cil_tmp70 ;
22080  int __cil_tmp71 ;
22081  int __cil_tmp72 ;
22082  unsigned long __cil_tmp73 ;
22083  struct tty_driver *__cil_tmp74 ;
22084  char const   *__cil_tmp75 ;
22085
22086  {
22087  {
22088#line 3288
22089  tmp = get_current();
22090#line 3288
22091  wait.flags = 0U;
22092#line 3288
22093  wait.private = (void *)tmp;
22094#line 3288
22095  wait.func = & default_wake_function;
22096#line 3288
22097  wait.task_list.next = (struct list_head *)0;
22098#line 3288
22099  wait.task_list.prev = (struct list_head *)0;
22100#line 3290
22101  do_clocal = (bool )0;
22102#line 3291
22103  extra_count = (bool )0;
22104#line 3294
22105  port = & info->port;
22106  }
22107#line 3296
22108  if (debug_level > 2) {
22109    {
22110#line 3296
22111    __cil_tmp35 = tty->driver;
22112#line 3296
22113    __cil_tmp36 = __cil_tmp35->name;
22114#line 3296
22115    printk("%s block_til_ready\n", __cil_tmp36);
22116    }
22117  } else {
22118
22119  }
22120  {
22121#line 3298
22122  __cil_tmp37 = filp->f_flags;
22123#line 3298
22124  __cil_tmp38 = __cil_tmp37 & 2048U;
22125#line 3298
22126  if (__cil_tmp38 != 0U) {
22127#line 3300
22128    __cil_tmp39 = port->flags;
22129#line 3300
22130    port->flags = __cil_tmp39 | 536870912UL;
22131#line 3301
22132    return (0);
22133  } else {
22134    {
22135#line 3298
22136    __cil_tmp40 = tty->flags;
22137#line 3298
22138    __cil_tmp41 = __cil_tmp40 & 2UL;
22139#line 3298
22140    if (__cil_tmp41 != 0UL) {
22141#line 3300
22142      __cil_tmp42 = port->flags;
22143#line 3300
22144      port->flags = __cil_tmp42 | 536870912UL;
22145#line 3301
22146      return (0);
22147    } else {
22148
22149    }
22150    }
22151  }
22152  }
22153  {
22154#line 3304
22155  __cil_tmp43 = tty->termios;
22156#line 3304
22157  __cil_tmp44 = __cil_tmp43->c_cflag;
22158#line 3304
22159  __cil_tmp45 = __cil_tmp44 & 2048U;
22160#line 3304
22161  if (__cil_tmp45 != 0U) {
22162#line 3305
22163    do_clocal = (bool )1;
22164  } else {
22165
22166  }
22167  }
22168  {
22169#line 3314
22170  retval = 0;
22171#line 3315
22172  __cil_tmp46 = & port->open_wait;
22173#line 3315
22174  add_wait_queue(__cil_tmp46, & wait);
22175#line 3317
22176  __cil_tmp47 = & info->lock;
22177#line 3317
22178  tmp___0 = spinlock_check(__cil_tmp47);
22179#line 3317
22180  flags = _raw_spin_lock_irqsave(tmp___0);
22181#line 3318
22182  tmp___1 = tty_hung_up_p(filp);
22183  }
22184#line 3318
22185  if (tmp___1 == 0) {
22186#line 3319
22187    extra_count = (bool )1;
22188#line 3320
22189    __cil_tmp48 = port->count;
22190#line 3320
22191    port->count = __cil_tmp48 - 1;
22192  } else {
22193
22194  }
22195  {
22196#line 3322
22197  __cil_tmp49 = & info->lock;
22198#line 3322
22199  spin_unlock_irqrestore(__cil_tmp49, flags);
22200#line 3323
22201  __cil_tmp50 = port->blocked_open;
22202#line 3323
22203  port->blocked_open = __cil_tmp50 + 1;
22204  }
22205  ldv_37408: ;
22206  {
22207#line 3326
22208  __cil_tmp51 = tty->termios;
22209#line 3326
22210  __cil_tmp52 = __cil_tmp51->c_cflag;
22211#line 3326
22212  __cil_tmp53 = __cil_tmp52 & 4111U;
22213#line 3326
22214  if (__cil_tmp53 != 0U) {
22215    {
22216#line 3327
22217    tty_port_raise_dtr_rts(port);
22218    }
22219  } else {
22220
22221  }
22222  }
22223#line 3329
22224  __x = (long volatile   )1L;
22225#line 3329
22226  if (1) {
22227#line 3329
22228    goto case_8;
22229  } else {
22230#line 3329
22231    goto switch_default;
22232#line 3329
22233    if (0) {
22234      {
22235#line 3329
22236      tmp___2 = get_current();
22237#line 3329
22238      __cil_tmp54 = & tmp___2->state;
22239#line 3329
22240      __ptr = (u8 volatile   *)__cil_tmp54;
22241#line 3329
22242      __asm__  volatile   ("xchgb %0,%1": "=q" (__x), "+m" (*__ptr): "0" (__x): "memory");
22243      }
22244#line 3329
22245      goto ldv_37398;
22246      {
22247#line 3329
22248      tmp___3 = get_current();
22249#line 3329
22250      __cil_tmp55 = & tmp___3->state;
22251#line 3329
22252      __ptr___0 = (u16 volatile   *)__cil_tmp55;
22253#line 3329
22254      __asm__  volatile   ("xchgw %0,%1": "=r" (__x), "+m" (*__ptr___0): "0" (__x): "memory");
22255      }
22256#line 3329
22257      goto ldv_37398;
22258      {
22259#line 3329
22260      tmp___4 = get_current();
22261#line 3329
22262      __cil_tmp56 = & tmp___4->state;
22263#line 3329
22264      __ptr___1 = (u32 volatile   *)__cil_tmp56;
22265#line 3329
22266      __asm__  volatile   ("xchgl %0,%1": "=r" (__x), "+m" (*__ptr___1): "0" (__x): "memory");
22267      }
22268#line 3329
22269      goto ldv_37398;
22270      case_8: 
22271      {
22272#line 3329
22273      tmp___5 = get_current();
22274#line 3329
22275      __cil_tmp57 = & tmp___5->state;
22276#line 3329
22277      __ptr___2 = (u64 volatile   *)__cil_tmp57;
22278#line 3329
22279      __asm__  volatile   ("xchgq %0,%1": "=r" (__x), "+m" (*__ptr___2): "0" (__x): "memory");
22280      }
22281#line 3329
22282      goto ldv_37398;
22283      switch_default: 
22284      {
22285#line 3329
22286      __xchg_wrong_size();
22287      }
22288    } else {
22289
22290    }
22291  }
22292  ldv_37398: 
22293  {
22294#line 3331
22295  tmp___6 = tty_hung_up_p(filp);
22296  }
22297#line 3331
22298  if (tmp___6 != 0) {
22299#line 3331
22300    goto _L;
22301  } else {
22302    {
22303#line 3331
22304    __cil_tmp58 = port->flags;
22305#line 3331
22306    __cil_tmp59 = __cil_tmp58 & 2147483648UL;
22307#line 3331
22308    if (__cil_tmp59 == 0UL) {
22309      _L: 
22310      {
22311#line 3332
22312      __cil_tmp60 = port->flags;
22313#line 3332
22314      __cil_tmp61 = (int )__cil_tmp60;
22315#line 3332
22316      if (__cil_tmp61 & 1) {
22317#line 3332
22318        retval = -11;
22319      } else {
22320#line 3332
22321        retval = -512;
22322      }
22323      }
22324#line 3334
22325      goto ldv_37407;
22326    } else {
22327
22328    }
22329    }
22330  }
22331  {
22332#line 3337
22333  cd = tty_port_carrier_raised(port);
22334  }
22335  {
22336#line 3339
22337  __cil_tmp62 = port->flags;
22338#line 3339
22339  __cil_tmp63 = __cil_tmp62 & 134217728UL;
22340#line 3339
22341  if (__cil_tmp63 == 0UL) {
22342#line 3339
22343    if ((int )do_clocal) {
22344#line 3340
22345      goto ldv_37407;
22346    } else
22347#line 3339
22348    if (cd != 0) {
22349#line 3340
22350      goto ldv_37407;
22351    } else {
22352
22353    }
22354  } else {
22355
22356  }
22357  }
22358  {
22359#line 3342
22360  tmp___7 = get_current();
22361#line 3342
22362  tmp___8 = signal_pending(tmp___7);
22363  }
22364#line 3342
22365  if (tmp___8 != 0) {
22366#line 3343
22367    retval = -512;
22368#line 3344
22369    goto ldv_37407;
22370  } else {
22371
22372  }
22373#line 3347
22374  if (debug_level > 2) {
22375    {
22376#line 3347
22377    __cil_tmp64 = tty->driver;
22378#line 3347
22379    __cil_tmp65 = __cil_tmp64->name;
22380#line 3347
22381    printk("%s block_til_ready wait\n", __cil_tmp65);
22382    }
22383  } else {
22384
22385  }
22386  {
22387#line 3348
22388  tty_unlock();
22389#line 3349
22390  schedule();
22391#line 3350
22392  tty_lock();
22393  }
22394#line 3351
22395  goto ldv_37408;
22396  ldv_37407: 
22397#line 3353
22398  __x___0 = (long volatile   )0L;
22399#line 3353
22400  if (1) {
22401#line 3353
22402    goto case_8___0;
22403  } else {
22404#line 3353
22405    goto switch_default___0;
22406#line 3353
22407    if (0) {
22408      {
22409#line 3353
22410      tmp___9 = get_current();
22411#line 3353
22412      __cil_tmp66 = & tmp___9->state;
22413#line 3353
22414      __ptr___3 = (u8 volatile   *)__cil_tmp66;
22415#line 3353
22416      __asm__  volatile   ("xchgb %0,%1": "=q" (__x___0), "+m" (*__ptr___3): "0" (__x___0): "memory");
22417      }
22418#line 3353
22419      goto ldv_37412;
22420      {
22421#line 3353
22422      tmp___10 = get_current();
22423#line 3353
22424      __cil_tmp67 = & tmp___10->state;
22425#line 3353
22426      __ptr___4 = (u16 volatile   *)__cil_tmp67;
22427#line 3353
22428      __asm__  volatile   ("xchgw %0,%1": "=r" (__x___0), "+m" (*__ptr___4): "0" (__x___0): "memory");
22429      }
22430#line 3353
22431      goto ldv_37412;
22432      {
22433#line 3353
22434      tmp___11 = get_current();
22435#line 3353
22436      __cil_tmp68 = & tmp___11->state;
22437#line 3353
22438      __ptr___5 = (u32 volatile   *)__cil_tmp68;
22439#line 3353
22440      __asm__  volatile   ("xchgl %0,%1": "=r" (__x___0), "+m" (*__ptr___5): "0" (__x___0): "memory");
22441      }
22442#line 3353
22443      goto ldv_37412;
22444      case_8___0: 
22445      {
22446#line 3353
22447      tmp___12 = get_current();
22448#line 3353
22449      __cil_tmp69 = & tmp___12->state;
22450#line 3353
22451      __ptr___6 = (u64 volatile   *)__cil_tmp69;
22452#line 3353
22453      __asm__  volatile   ("xchgq %0,%1": "=r" (__x___0), "+m" (*__ptr___6): "0" (__x___0): "memory");
22454      }
22455#line 3353
22456      goto ldv_37412;
22457      switch_default___0: 
22458      {
22459#line 3353
22460      __xchg_wrong_size();
22461      }
22462    } else {
22463
22464    }
22465  }
22466  ldv_37412: 
22467  {
22468#line 3354
22469  __cil_tmp70 = & port->open_wait;
22470#line 3354
22471  remove_wait_queue(__cil_tmp70, & wait);
22472  }
22473#line 3356
22474  if ((int )extra_count) {
22475#line 3357
22476    __cil_tmp71 = port->count;
22477#line 3357
22478    port->count = __cil_tmp71 + 1;
22479  } else {
22480
22481  }
22482#line 3358
22483  __cil_tmp72 = port->blocked_open;
22484#line 3358
22485  port->blocked_open = __cil_tmp72 - 1;
22486#line 3360
22487  if (retval == 0) {
22488#line 3361
22489    __cil_tmp73 = port->flags;
22490#line 3361
22491    port->flags = __cil_tmp73 | 536870912UL;
22492  } else {
22493
22494  }
22495#line 3363
22496  if (debug_level > 2) {
22497    {
22498#line 3363
22499    __cil_tmp74 = tty->driver;
22500#line 3363
22501    __cil_tmp75 = __cil_tmp74->name;
22502#line 3363
22503    printk("%s block_til_ready ready, rc=%d\n", __cil_tmp75, retval);
22504    }
22505  } else {
22506
22507  }
22508#line 3364
22509  return (retval);
22510}
22511}
22512#line 3367 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
22513static int alloc_tmp_rbuf(struct slgt_info *info ) 
22514{ void *tmp ;
22515  u32 __cil_tmp3 ;
22516  u32 __cil_tmp4 ;
22517  size_t __cil_tmp5 ;
22518  unsigned char *__cil_tmp6 ;
22519  unsigned long __cil_tmp7 ;
22520  unsigned char *__cil_tmp8 ;
22521  unsigned long __cil_tmp9 ;
22522
22523  {
22524  {
22525#line 3369
22526  __cil_tmp3 = info->max_frame_size;
22527#line 3369
22528  __cil_tmp4 = __cil_tmp3 + 5U;
22529#line 3369
22530  __cil_tmp5 = (size_t )__cil_tmp4;
22531#line 3369
22532  tmp = kmalloc(__cil_tmp5, 208U);
22533#line 3369
22534  info->tmp_rbuf = (unsigned char *)tmp;
22535  }
22536  {
22537#line 3370
22538  __cil_tmp6 = (unsigned char *)0;
22539#line 3370
22540  __cil_tmp7 = (unsigned long )__cil_tmp6;
22541#line 3370
22542  __cil_tmp8 = info->tmp_rbuf;
22543#line 3370
22544  __cil_tmp9 = (unsigned long )__cil_tmp8;
22545#line 3370
22546  if (__cil_tmp9 == __cil_tmp7) {
22547#line 3371
22548    return (-12);
22549  } else {
22550
22551  }
22552  }
22553#line 3372
22554  return (0);
22555}
22556}
22557#line 3375 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
22558static void free_tmp_rbuf(struct slgt_info *info ) 
22559{ unsigned char *__cil_tmp2 ;
22560  void const   *__cil_tmp3 ;
22561
22562  {
22563  {
22564#line 3377
22565  __cil_tmp2 = info->tmp_rbuf;
22566#line 3377
22567  __cil_tmp3 = (void const   *)__cil_tmp2;
22568#line 3377
22569  kfree(__cil_tmp3);
22570#line 3378
22571  info->tmp_rbuf = (unsigned char *)0;
22572  }
22573#line 3379
22574  return;
22575}
22576}
22577#line 3384 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
22578static int alloc_desc(struct slgt_info *info ) 
22579{ unsigned int i ;
22580  unsigned int pbufs ;
22581  void *tmp ;
22582  struct pci_dev *__cil_tmp5 ;
22583  dma_addr_t *__cil_tmp6 ;
22584  char *__cil_tmp7 ;
22585  unsigned long __cil_tmp8 ;
22586  char *__cil_tmp9 ;
22587  unsigned long __cil_tmp10 ;
22588  char *__cil_tmp11 ;
22589  void *__cil_tmp12 ;
22590  char *__cil_tmp13 ;
22591  unsigned int __cil_tmp14 ;
22592  unsigned long __cil_tmp15 ;
22593  char *__cil_tmp16 ;
22594  struct slgt_desc *__cil_tmp17 ;
22595  dma_addr_t __cil_tmp18 ;
22596  unsigned long __cil_tmp19 ;
22597  struct slgt_desc *__cil_tmp20 ;
22598  struct slgt_desc *__cil_tmp21 ;
22599  unsigned int __cil_tmp22 ;
22600  unsigned int __cil_tmp23 ;
22601  unsigned int __cil_tmp24 ;
22602  unsigned long __cil_tmp25 ;
22603  struct slgt_desc *__cil_tmp26 ;
22604  struct slgt_desc *__cil_tmp27 ;
22605  unsigned long __cil_tmp28 ;
22606  struct slgt_desc *__cil_tmp29 ;
22607  struct slgt_desc *__cil_tmp30 ;
22608  unsigned int __cil_tmp31 ;
22609  unsigned int __cil_tmp32 ;
22610  unsigned long __cil_tmp33 ;
22611  struct slgt_desc *__cil_tmp34 ;
22612  struct slgt_desc *__cil_tmp35 ;
22613  unsigned int __cil_tmp36 ;
22614  unsigned long __cil_tmp37 ;
22615  struct slgt_desc *__cil_tmp38 ;
22616  struct slgt_desc *__cil_tmp39 ;
22617  unsigned int __cil_tmp40 ;
22618  unsigned int __cil_tmp41 ;
22619  unsigned int __cil_tmp42 ;
22620  unsigned int __cil_tmp43 ;
22621  unsigned int __cil_tmp44 ;
22622  unsigned long __cil_tmp45 ;
22623  struct slgt_desc *__cil_tmp46 ;
22624  struct slgt_desc *__cil_tmp47 ;
22625  unsigned int __cil_tmp48 ;
22626  unsigned int __cil_tmp49 ;
22627  unsigned long __cil_tmp50 ;
22628  struct slgt_desc *__cil_tmp51 ;
22629  struct slgt_desc *__cil_tmp52 ;
22630  unsigned int __cil_tmp53 ;
22631  unsigned int __cil_tmp54 ;
22632  unsigned int __cil_tmp55 ;
22633  unsigned int __cil_tmp56 ;
22634  unsigned int __cil_tmp57 ;
22635
22636  {
22637  {
22638#line 3390
22639  __cil_tmp5 = info->pdev;
22640#line 3390
22641  __cil_tmp6 = & info->bufs_dma_addr;
22642#line 3390
22643  tmp = pci_alloc_consistent(__cil_tmp5, 4096UL, __cil_tmp6);
22644#line 3390
22645  info->bufs = (char *)tmp;
22646  }
22647  {
22648#line 3391
22649  __cil_tmp7 = (char *)0;
22650#line 3391
22651  __cil_tmp8 = (unsigned long )__cil_tmp7;
22652#line 3391
22653  __cil_tmp9 = info->bufs;
22654#line 3391
22655  __cil_tmp10 = (unsigned long )__cil_tmp9;
22656#line 3391
22657  if (__cil_tmp10 == __cil_tmp8) {
22658#line 3392
22659    return (-12);
22660  } else {
22661
22662  }
22663  }
22664  {
22665#line 3394
22666  __cil_tmp11 = info->bufs;
22667#line 3394
22668  __cil_tmp12 = (void *)__cil_tmp11;
22669#line 3394
22670  memset(__cil_tmp12, 0, 4096UL);
22671#line 3396
22672  __cil_tmp13 = info->bufs;
22673#line 3396
22674  info->rbufs = (struct slgt_desc *)__cil_tmp13;
22675#line 3397
22676  __cil_tmp14 = info->rbuf_count;
22677#line 3397
22678  __cil_tmp15 = (unsigned long )__cil_tmp14;
22679#line 3397
22680  __cil_tmp16 = info->bufs;
22681#line 3397
22682  __cil_tmp17 = (struct slgt_desc *)__cil_tmp16;
22683#line 3397
22684  info->tbufs = __cil_tmp17 + __cil_tmp15;
22685#line 3399
22686  __cil_tmp18 = info->bufs_dma_addr;
22687#line 3399
22688  pbufs = (unsigned int )__cil_tmp18;
22689#line 3405
22690  i = 0U;
22691  }
22692#line 3405
22693  goto ldv_37433;
22694  ldv_37432: 
22695#line 3407
22696  __cil_tmp19 = (unsigned long )i;
22697#line 3407
22698  __cil_tmp20 = info->rbufs;
22699#line 3407
22700  __cil_tmp21 = __cil_tmp20 + __cil_tmp19;
22701#line 3407
22702  __cil_tmp22 = i * 48U;
22703#line 3407
22704  __cil_tmp21->pdesc = __cil_tmp22 + pbufs;
22705  {
22706#line 3410
22707  __cil_tmp23 = info->rbuf_count;
22708#line 3410
22709  __cil_tmp24 = __cil_tmp23 - 1U;
22710#line 3410
22711  if (__cil_tmp24 == i) {
22712#line 3411
22713    __cil_tmp25 = (unsigned long )i;
22714#line 3411
22715    __cil_tmp26 = info->rbufs;
22716#line 3411
22717    __cil_tmp27 = __cil_tmp26 + __cil_tmp25;
22718#line 3411
22719    __cil_tmp27->next = pbufs;
22720  } else {
22721#line 3413
22722    __cil_tmp28 = (unsigned long )i;
22723#line 3413
22724    __cil_tmp29 = info->rbufs;
22725#line 3413
22726    __cil_tmp30 = __cil_tmp29 + __cil_tmp28;
22727#line 3413
22728    __cil_tmp31 = i + 1U;
22729#line 3413
22730    __cil_tmp32 = __cil_tmp31 * 48U;
22731#line 3413
22732    __cil_tmp30->next = __cil_tmp32 + pbufs;
22733  }
22734  }
22735#line 3414
22736  __cil_tmp33 = (unsigned long )i;
22737#line 3414
22738  __cil_tmp34 = info->rbufs;
22739#line 3414
22740  __cil_tmp35 = __cil_tmp34 + __cil_tmp33;
22741#line 3414
22742  __cil_tmp35->count = (__le16 )256U;
22743#line 3405
22744  i = i + 1U;
22745  ldv_37433: ;
22746  {
22747#line 3405
22748  __cil_tmp36 = info->rbuf_count;
22749#line 3405
22750  if (__cil_tmp36 > i) {
22751#line 3406
22752    goto ldv_37432;
22753  } else {
22754#line 3408
22755    goto ldv_37434;
22756  }
22757  }
22758  ldv_37434: 
22759#line 3417
22760  i = 0U;
22761#line 3417
22762  goto ldv_37436;
22763  ldv_37435: 
22764#line 3419
22765  __cil_tmp37 = (unsigned long )i;
22766#line 3419
22767  __cil_tmp38 = info->tbufs;
22768#line 3419
22769  __cil_tmp39 = __cil_tmp38 + __cil_tmp37;
22770#line 3419
22771  __cil_tmp40 = info->rbuf_count;
22772#line 3419
22773  __cil_tmp41 = __cil_tmp40 + i;
22774#line 3419
22775  __cil_tmp42 = __cil_tmp41 * 48U;
22776#line 3419
22777  __cil_tmp39->pdesc = __cil_tmp42 + pbufs;
22778  {
22779#line 3422
22780  __cil_tmp43 = info->tbuf_count;
22781#line 3422
22782  __cil_tmp44 = __cil_tmp43 - 1U;
22783#line 3422
22784  if (__cil_tmp44 == i) {
22785#line 3423
22786    __cil_tmp45 = (unsigned long )i;
22787#line 3423
22788    __cil_tmp46 = info->tbufs;
22789#line 3423
22790    __cil_tmp47 = __cil_tmp46 + __cil_tmp45;
22791#line 3423
22792    __cil_tmp48 = info->rbuf_count;
22793#line 3423
22794    __cil_tmp49 = __cil_tmp48 * 48U;
22795#line 3423
22796    __cil_tmp47->next = __cil_tmp49 + pbufs;
22797  } else {
22798#line 3425
22799    __cil_tmp50 = (unsigned long )i;
22800#line 3425
22801    __cil_tmp51 = info->tbufs;
22802#line 3425
22803    __cil_tmp52 = __cil_tmp51 + __cil_tmp50;
22804#line 3425
22805    __cil_tmp53 = info->rbuf_count;
22806#line 3425
22807    __cil_tmp54 = __cil_tmp53 + i;
22808#line 3425
22809    __cil_tmp55 = __cil_tmp54 + 1U;
22810#line 3425
22811    __cil_tmp56 = __cil_tmp55 * 48U;
22812#line 3425
22813    __cil_tmp52->next = __cil_tmp56 + pbufs;
22814  }
22815  }
22816#line 3417
22817  i = i + 1U;
22818  ldv_37436: ;
22819  {
22820#line 3417
22821  __cil_tmp57 = info->tbuf_count;
22822#line 3417
22823  if (__cil_tmp57 > i) {
22824#line 3418
22825    goto ldv_37435;
22826  } else {
22827#line 3420
22828    goto ldv_37437;
22829  }
22830  }
22831  ldv_37437: ;
22832#line 3428
22833  return (0);
22834}
22835}
22836#line 3431 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
22837static void free_desc(struct slgt_info *info ) 
22838{ char *__cil_tmp2 ;
22839  unsigned long __cil_tmp3 ;
22840  char *__cil_tmp4 ;
22841  unsigned long __cil_tmp5 ;
22842  struct pci_dev *__cil_tmp6 ;
22843  char *__cil_tmp7 ;
22844  void *__cil_tmp8 ;
22845  dma_addr_t __cil_tmp9 ;
22846
22847  {
22848  {
22849#line 3433
22850  __cil_tmp2 = (char *)0;
22851#line 3433
22852  __cil_tmp3 = (unsigned long )__cil_tmp2;
22853#line 3433
22854  __cil_tmp4 = info->bufs;
22855#line 3433
22856  __cil_tmp5 = (unsigned long )__cil_tmp4;
22857#line 3433
22858  if (__cil_tmp5 != __cil_tmp3) {
22859    {
22860#line 3434
22861    __cil_tmp6 = info->pdev;
22862#line 3434
22863    __cil_tmp7 = info->bufs;
22864#line 3434
22865    __cil_tmp8 = (void *)__cil_tmp7;
22866#line 3434
22867    __cil_tmp9 = info->bufs_dma_addr;
22868#line 3434
22869    pci_free_consistent(__cil_tmp6, 4096UL, __cil_tmp8, __cil_tmp9);
22870#line 3435
22871    info->bufs = (char *)0;
22872#line 3436
22873    info->rbufs = (struct slgt_desc *)0;
22874#line 3437
22875    info->tbufs = (struct slgt_desc *)0;
22876    }
22877  } else {
22878
22879  }
22880  }
22881#line 3439
22882  return;
22883}
22884}
22885#line 3441 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
22886static int alloc_bufs(struct slgt_info *info , struct slgt_desc *bufs , int count ) 
22887{ int i ;
22888  char *tmp ;
22889  void *tmp___0 ;
22890  struct pci_dev *__cil_tmp7 ;
22891  unsigned long __cil_tmp8 ;
22892  struct slgt_desc *__cil_tmp9 ;
22893  dma_addr_t *__cil_tmp10 ;
22894  unsigned long __cil_tmp11 ;
22895  struct slgt_desc *__cil_tmp12 ;
22896  char *__cil_tmp13 ;
22897  unsigned long __cil_tmp14 ;
22898  unsigned long __cil_tmp15 ;
22899  unsigned long __cil_tmp16 ;
22900  struct slgt_desc *__cil_tmp17 ;
22901  unsigned long __cil_tmp18 ;
22902  struct slgt_desc *__cil_tmp19 ;
22903  dma_addr_t __cil_tmp20 ;
22904
22905  {
22906#line 3444
22907  i = 0;
22908#line 3444
22909  goto ldv_37448;
22910  ldv_37447: 
22911  {
22912#line 3445
22913  __cil_tmp7 = info->pdev;
22914#line 3445
22915  __cil_tmp8 = (unsigned long )i;
22916#line 3445
22917  __cil_tmp9 = bufs + __cil_tmp8;
22918#line 3445
22919  __cil_tmp10 = & __cil_tmp9->buf_dma_addr;
22920#line 3445
22921  tmp___0 = pci_alloc_consistent(__cil_tmp7, 256UL, __cil_tmp10);
22922#line 3445
22923  tmp = (char *)tmp___0;
22924#line 3445
22925  __cil_tmp11 = (unsigned long )i;
22926#line 3445
22927  __cil_tmp12 = bufs + __cil_tmp11;
22928#line 3445
22929  __cil_tmp12->buf = tmp;
22930  }
22931  {
22932#line 3445
22933  __cil_tmp13 = (char *)0;
22934#line 3445
22935  __cil_tmp14 = (unsigned long )__cil_tmp13;
22936#line 3445
22937  __cil_tmp15 = (unsigned long )tmp;
22938#line 3445
22939  if (__cil_tmp15 == __cil_tmp14) {
22940#line 3446
22941    return (-12);
22942  } else {
22943
22944  }
22945  }
22946#line 3447
22947  __cil_tmp16 = (unsigned long )i;
22948#line 3447
22949  __cil_tmp17 = bufs + __cil_tmp16;
22950#line 3447
22951  __cil_tmp18 = (unsigned long )i;
22952#line 3447
22953  __cil_tmp19 = bufs + __cil_tmp18;
22954#line 3447
22955  __cil_tmp20 = __cil_tmp19->buf_dma_addr;
22956#line 3447
22957  __cil_tmp17->pbuf = (unsigned int )__cil_tmp20;
22958#line 3444
22959  i = i + 1;
22960  ldv_37448: ;
22961#line 3444
22962  if (i < count) {
22963#line 3445
22964    goto ldv_37447;
22965  } else {
22966#line 3447
22967    goto ldv_37449;
22968  }
22969  ldv_37449: ;
22970#line 3449
22971  return (0);
22972}
22973}
22974#line 3452 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
22975static void free_bufs(struct slgt_info *info , struct slgt_desc *bufs , int count ) 
22976{ int i ;
22977  char *__cil_tmp5 ;
22978  unsigned long __cil_tmp6 ;
22979  unsigned long __cil_tmp7 ;
22980  struct slgt_desc *__cil_tmp8 ;
22981  char *__cil_tmp9 ;
22982  unsigned long __cil_tmp10 ;
22983  struct pci_dev *__cil_tmp11 ;
22984  unsigned long __cil_tmp12 ;
22985  struct slgt_desc *__cil_tmp13 ;
22986  char *__cil_tmp14 ;
22987  void *__cil_tmp15 ;
22988  unsigned long __cil_tmp16 ;
22989  struct slgt_desc *__cil_tmp17 ;
22990  dma_addr_t __cil_tmp18 ;
22991  unsigned long __cil_tmp19 ;
22992  struct slgt_desc *__cil_tmp20 ;
22993
22994  {
22995#line 3455
22996  i = 0;
22997#line 3455
22998  goto ldv_37458;
22999  ldv_37457: ;
23000  {
23001#line 3456
23002  __cil_tmp5 = (char *)0;
23003#line 3456
23004  __cil_tmp6 = (unsigned long )__cil_tmp5;
23005#line 3456
23006  __cil_tmp7 = (unsigned long )i;
23007#line 3456
23008  __cil_tmp8 = bufs + __cil_tmp7;
23009#line 3456
23010  __cil_tmp9 = __cil_tmp8->buf;
23011#line 3456
23012  __cil_tmp10 = (unsigned long )__cil_tmp9;
23013#line 3456
23014  if (__cil_tmp10 == __cil_tmp6) {
23015#line 3457
23016    goto ldv_37456;
23017  } else {
23018
23019  }
23020  }
23021  {
23022#line 3458
23023  __cil_tmp11 = info->pdev;
23024#line 3458
23025  __cil_tmp12 = (unsigned long )i;
23026#line 3458
23027  __cil_tmp13 = bufs + __cil_tmp12;
23028#line 3458
23029  __cil_tmp14 = __cil_tmp13->buf;
23030#line 3458
23031  __cil_tmp15 = (void *)__cil_tmp14;
23032#line 3458
23033  __cil_tmp16 = (unsigned long )i;
23034#line 3458
23035  __cil_tmp17 = bufs + __cil_tmp16;
23036#line 3458
23037  __cil_tmp18 = __cil_tmp17->buf_dma_addr;
23038#line 3458
23039  pci_free_consistent(__cil_tmp11, 256UL, __cil_tmp15, __cil_tmp18);
23040#line 3459
23041  __cil_tmp19 = (unsigned long )i;
23042#line 3459
23043  __cil_tmp20 = bufs + __cil_tmp19;
23044#line 3459
23045  __cil_tmp20->buf = (char *)0;
23046  }
23047  ldv_37456: 
23048#line 3455
23049  i = i + 1;
23050  ldv_37458: ;
23051#line 3455
23052  if (i < count) {
23053#line 3456
23054    goto ldv_37457;
23055  } else {
23056#line 3458
23057    goto ldv_37459;
23058  }
23059  ldv_37459: ;
23060#line 3460
23061  return;
23062}
23063}
23064#line 3463 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
23065static int alloc_dma_bufs(struct slgt_info *info ) 
23066{ int tmp ;
23067  int tmp___0 ;
23068  int tmp___1 ;
23069  int tmp___2 ;
23070  struct slgt_desc *__cil_tmp6 ;
23071  unsigned int __cil_tmp7 ;
23072  int __cil_tmp8 ;
23073  struct slgt_desc *__cil_tmp9 ;
23074  unsigned int __cil_tmp10 ;
23075  int __cil_tmp11 ;
23076  char (*__cil_tmp12)[25U] ;
23077  char *__cil_tmp13 ;
23078
23079  {
23080  {
23081#line 3465
23082  info->rbuf_count = 32U;
23083#line 3466
23084  info->tbuf_count = 32U;
23085#line 3468
23086  tmp = alloc_desc(info);
23087  }
23088#line 3468
23089  if (tmp < 0) {
23090#line 3468
23091    goto _L;
23092  } else {
23093    {
23094#line 3468
23095    __cil_tmp6 = info->rbufs;
23096#line 3468
23097    __cil_tmp7 = info->rbuf_count;
23098#line 3468
23099    __cil_tmp8 = (int )__cil_tmp7;
23100#line 3468
23101    tmp___0 = alloc_bufs(info, __cil_tmp6, __cil_tmp8);
23102    }
23103#line 3468
23104    if (tmp___0 < 0) {
23105#line 3468
23106      goto _L;
23107    } else {
23108      {
23109#line 3468
23110      __cil_tmp9 = info->tbufs;
23111#line 3468
23112      __cil_tmp10 = info->tbuf_count;
23113#line 3468
23114      __cil_tmp11 = (int )__cil_tmp10;
23115#line 3468
23116      tmp___1 = alloc_bufs(info, __cil_tmp9, __cil_tmp11);
23117      }
23118#line 3468
23119      if (tmp___1 < 0) {
23120#line 3468
23121        goto _L;
23122      } else {
23123        {
23124#line 3468
23125        tmp___2 = alloc_tmp_rbuf(info);
23126        }
23127#line 3468
23128        if (tmp___2 < 0) {
23129          _L: 
23130#line 3472
23131          if (debug_level > 1) {
23132            {
23133#line 3472
23134            __cil_tmp12 = & info->device_name;
23135#line 3472
23136            __cil_tmp13 = (char *)__cil_tmp12;
23137#line 3472
23138            printk("%s DMA buffer alloc fail\n", __cil_tmp13);
23139            }
23140          } else {
23141
23142          }
23143#line 3473
23144          return (-12);
23145        } else {
23146
23147        }
23148      }
23149    }
23150  }
23151  {
23152#line 3475
23153  reset_rbufs(info);
23154  }
23155#line 3476
23156  return (0);
23157}
23158}
23159#line 3479 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
23160static void free_dma_bufs(struct slgt_info *info ) 
23161{ char *__cil_tmp2 ;
23162  unsigned long __cil_tmp3 ;
23163  char *__cil_tmp4 ;
23164  unsigned long __cil_tmp5 ;
23165  struct slgt_desc *__cil_tmp6 ;
23166  unsigned int __cil_tmp7 ;
23167  int __cil_tmp8 ;
23168  struct slgt_desc *__cil_tmp9 ;
23169  unsigned int __cil_tmp10 ;
23170  int __cil_tmp11 ;
23171
23172  {
23173  {
23174#line 3481
23175  __cil_tmp2 = (char *)0;
23176#line 3481
23177  __cil_tmp3 = (unsigned long )__cil_tmp2;
23178#line 3481
23179  __cil_tmp4 = info->bufs;
23180#line 3481
23181  __cil_tmp5 = (unsigned long )__cil_tmp4;
23182#line 3481
23183  if (__cil_tmp5 != __cil_tmp3) {
23184    {
23185#line 3482
23186    __cil_tmp6 = info->rbufs;
23187#line 3482
23188    __cil_tmp7 = info->rbuf_count;
23189#line 3482
23190    __cil_tmp8 = (int )__cil_tmp7;
23191#line 3482
23192    free_bufs(info, __cil_tmp6, __cil_tmp8);
23193#line 3483
23194    __cil_tmp9 = info->tbufs;
23195#line 3483
23196    __cil_tmp10 = info->tbuf_count;
23197#line 3483
23198    __cil_tmp11 = (int )__cil_tmp10;
23199#line 3483
23200    free_bufs(info, __cil_tmp9, __cil_tmp11);
23201#line 3484
23202    free_desc(info);
23203    }
23204  } else {
23205
23206  }
23207  }
23208  {
23209#line 3486
23210  free_tmp_rbuf(info);
23211  }
23212#line 3487
23213  return;
23214}
23215}
23216#line 3489 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
23217static int claim_resources(struct slgt_info *info ) 
23218{ struct resource *tmp ;
23219  void *tmp___0 ;
23220  u32 __cil_tmp4 ;
23221  resource_size_t __cil_tmp5 ;
23222  struct resource *__cil_tmp6 ;
23223  unsigned long __cil_tmp7 ;
23224  unsigned long __cil_tmp8 ;
23225  char (*__cil_tmp9)[25U] ;
23226  char *__cil_tmp10 ;
23227  u32 __cil_tmp11 ;
23228  u32 __cil_tmp12 ;
23229  resource_size_t __cil_tmp13 ;
23230  unsigned char *__cil_tmp14 ;
23231  unsigned long __cil_tmp15 ;
23232  unsigned char *__cil_tmp16 ;
23233  unsigned long __cil_tmp17 ;
23234  char (*__cil_tmp18)[25U] ;
23235  char *__cil_tmp19 ;
23236  u32 __cil_tmp20 ;
23237
23238  {
23239  {
23240#line 3491
23241  __cil_tmp4 = info->phys_reg_addr;
23242#line 3491
23243  __cil_tmp5 = (resource_size_t )__cil_tmp4;
23244#line 3491
23245  tmp = __request_region(& iomem_resource, __cil_tmp5, 256ULL, "synclink_gt", 0);
23246  }
23247  {
23248#line 3491
23249  __cil_tmp6 = (struct resource *)0;
23250#line 3491
23251  __cil_tmp7 = (unsigned long )__cil_tmp6;
23252#line 3491
23253  __cil_tmp8 = (unsigned long )tmp;
23254#line 3491
23255  if (__cil_tmp8 == __cil_tmp7) {
23256#line 3492
23257    if (debug_level > 1) {
23258      {
23259#line 3492
23260      __cil_tmp9 = & info->device_name;
23261#line 3492
23262      __cil_tmp10 = (char *)__cil_tmp9;
23263#line 3492
23264      __cil_tmp11 = info->phys_reg_addr;
23265#line 3492
23266      printk("%s reg addr conflict, addr=%08X\n", __cil_tmp10, __cil_tmp11);
23267      }
23268    } else {
23269
23270    }
23271#line 3494
23272    info->init_error = 2;
23273#line 3495
23274    goto errout;
23275  } else {
23276#line 3498
23277    info->reg_addr_requested = (bool )1;
23278  }
23279  }
23280  {
23281#line 3500
23282  __cil_tmp12 = info->phys_reg_addr;
23283#line 3500
23284  __cil_tmp13 = (resource_size_t )__cil_tmp12;
23285#line 3500
23286  tmp___0 = ioremap_nocache(__cil_tmp13, 256UL);
23287#line 3500
23288  info->reg_addr = (unsigned char *)tmp___0;
23289  }
23290  {
23291#line 3501
23292  __cil_tmp14 = (unsigned char *)0;
23293#line 3501
23294  __cil_tmp15 = (unsigned long )__cil_tmp14;
23295#line 3501
23296  __cil_tmp16 = info->reg_addr;
23297#line 3501
23298  __cil_tmp17 = (unsigned long )__cil_tmp16;
23299#line 3501
23300  if (__cil_tmp17 == __cil_tmp15) {
23301#line 3502
23302    if (debug_level > 1) {
23303      {
23304#line 3502
23305      __cil_tmp18 = & info->device_name;
23306#line 3502
23307      __cil_tmp19 = (char *)__cil_tmp18;
23308#line 3502
23309      __cil_tmp20 = info->phys_reg_addr;
23310#line 3502
23311      printk("%s can\'t map device registers, addr=%08X\n", __cil_tmp19, __cil_tmp20);
23312      }
23313    } else {
23314
23315    }
23316#line 3504
23317    info->init_error = 8;
23318#line 3505
23319    goto errout;
23320  } else {
23321
23322  }
23323  }
23324#line 3507
23325  return (0);
23326  errout: 
23327  {
23328#line 3510
23329  release_resources(info);
23330  }
23331#line 3511
23332  return (-19);
23333}
23334}
23335#line 3514 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
23336static void release_resources(struct slgt_info *info ) 
23337{ bool __cil_tmp2 ;
23338  unsigned int __cil_tmp3 ;
23339  void *__cil_tmp4 ;
23340  bool __cil_tmp5 ;
23341  u32 __cil_tmp6 ;
23342  resource_size_t __cil_tmp7 ;
23343  unsigned char *__cil_tmp8 ;
23344  unsigned long __cil_tmp9 ;
23345  unsigned char *__cil_tmp10 ;
23346  unsigned long __cil_tmp11 ;
23347  unsigned char *__cil_tmp12 ;
23348  void volatile   *__cil_tmp13 ;
23349
23350  {
23351  {
23352#line 3516
23353  __cil_tmp2 = info->irq_requested;
23354#line 3516
23355  if ((int )__cil_tmp2) {
23356    {
23357#line 3517
23358    __cil_tmp3 = info->irq_level;
23359#line 3517
23360    __cil_tmp4 = (void *)info;
23361#line 3517
23362    free_irq(__cil_tmp3, __cil_tmp4);
23363#line 3518
23364    info->irq_requested = (bool )0;
23365    }
23366  } else {
23367
23368  }
23369  }
23370  {
23371#line 3521
23372  __cil_tmp5 = info->reg_addr_requested;
23373#line 3521
23374  if ((int )__cil_tmp5) {
23375    {
23376#line 3522
23377    __cil_tmp6 = info->phys_reg_addr;
23378#line 3522
23379    __cil_tmp7 = (resource_size_t )__cil_tmp6;
23380#line 3522
23381    __release_region(& iomem_resource, __cil_tmp7, 256ULL);
23382#line 3523
23383    info->reg_addr_requested = (bool )0;
23384    }
23385  } else {
23386
23387  }
23388  }
23389  {
23390#line 3526
23391  __cil_tmp8 = (unsigned char *)0;
23392#line 3526
23393  __cil_tmp9 = (unsigned long )__cil_tmp8;
23394#line 3526
23395  __cil_tmp10 = info->reg_addr;
23396#line 3526
23397  __cil_tmp11 = (unsigned long )__cil_tmp10;
23398#line 3526
23399  if (__cil_tmp11 != __cil_tmp9) {
23400    {
23401#line 3527
23402    __cil_tmp12 = info->reg_addr;
23403#line 3527
23404    __cil_tmp13 = (void volatile   *)__cil_tmp12;
23405#line 3527
23406    iounmap(__cil_tmp13);
23407#line 3528
23408    info->reg_addr = (unsigned char *)0;
23409    }
23410  } else {
23411
23412  }
23413  }
23414#line 3530
23415  return;
23416}
23417}
23418#line 3535 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
23419static void add_device(struct slgt_info *info ) 
23420{ char *devstr ;
23421  struct slgt_info *current_dev ;
23422  char (*__cil_tmp4)[25U] ;
23423  char *__cil_tmp5 ;
23424  int __cil_tmp6 ;
23425  int __cil_tmp7 ;
23426  struct slgt_info *__cil_tmp8 ;
23427  unsigned long __cil_tmp9 ;
23428  unsigned long __cil_tmp10 ;
23429  struct slgt_info *__cil_tmp11 ;
23430  unsigned long __cil_tmp12 ;
23431  struct slgt_info *__cil_tmp13 ;
23432  unsigned long __cil_tmp14 ;
23433  u32 __cil_tmp15 ;
23434  u32 __cil_tmp16 ;
23435  struct pci_dev *__cil_tmp17 ;
23436  unsigned short __cil_tmp18 ;
23437  int __cil_tmp19 ;
23438  struct pci_dev *__cil_tmp20 ;
23439  unsigned short __cil_tmp21 ;
23440  int __cil_tmp22 ;
23441  struct pci_dev *__cil_tmp23 ;
23442  unsigned short __cil_tmp24 ;
23443  int __cil_tmp25 ;
23444  struct pci_dev *__cil_tmp26 ;
23445  unsigned short __cil_tmp27 ;
23446  int __cil_tmp28 ;
23447  char (*__cil_tmp29)[25U] ;
23448  char *__cil_tmp30 ;
23449  u32 __cil_tmp31 ;
23450  unsigned int __cil_tmp32 ;
23451  u32 __cil_tmp33 ;
23452
23453  {
23454  {
23455#line 3539
23456  info->next_device = (struct slgt_info *)0;
23457#line 3540
23458  info->line = slgt_device_count;
23459#line 3541
23460  __cil_tmp4 = & info->device_name;
23461#line 3541
23462  __cil_tmp5 = (char *)__cil_tmp4;
23463#line 3541
23464  __cil_tmp6 = info->line;
23465#line 3541
23466  sprintf(__cil_tmp5, "%s%d", tty_dev_prefix, __cil_tmp6);
23467  }
23468  {
23469#line 3543
23470  __cil_tmp7 = info->line;
23471#line 3543
23472  if (__cil_tmp7 <= 31) {
23473#line 3544
23474    if (maxframe[info->line] != 0) {
23475#line 3545
23476      info->max_frame_size = (u32 )maxframe[info->line];
23477    } else {
23478
23479    }
23480  } else {
23481
23482  }
23483  }
23484#line 3548
23485  slgt_device_count = slgt_device_count + 1;
23486  {
23487#line 3550
23488  __cil_tmp8 = (struct slgt_info *)0;
23489#line 3550
23490  __cil_tmp9 = (unsigned long )__cil_tmp8;
23491#line 3550
23492  __cil_tmp10 = (unsigned long )slgt_device_list;
23493#line 3550
23494  if (__cil_tmp10 == __cil_tmp9) {
23495#line 3551
23496    slgt_device_list = info;
23497  } else {
23498#line 3553
23499    current_dev = slgt_device_list;
23500#line 3554
23501    goto ldv_37479;
23502    ldv_37478: 
23503#line 3555
23504    current_dev = current_dev->next_device;
23505    ldv_37479: ;
23506    {
23507#line 3554
23508    __cil_tmp11 = (struct slgt_info *)0;
23509#line 3554
23510    __cil_tmp12 = (unsigned long )__cil_tmp11;
23511#line 3554
23512    __cil_tmp13 = current_dev->next_device;
23513#line 3554
23514    __cil_tmp14 = (unsigned long )__cil_tmp13;
23515#line 3554
23516    if (__cil_tmp14 != __cil_tmp12) {
23517#line 3555
23518      goto ldv_37478;
23519    } else {
23520#line 3557
23521      goto ldv_37480;
23522    }
23523    }
23524    ldv_37480: 
23525#line 3556
23526    current_dev->next_device = info;
23527  }
23528  }
23529  {
23530#line 3559
23531  __cil_tmp15 = info->max_frame_size;
23532#line 3559
23533  if (__cil_tmp15 <= 4095U) {
23534#line 3560
23535    info->max_frame_size = 4096U;
23536  } else {
23537    {
23538#line 3561
23539    __cil_tmp16 = info->max_frame_size;
23540#line 3561
23541    if (__cil_tmp16 > 65535U) {
23542#line 3562
23543      info->max_frame_size = 65535U;
23544    } else {
23545
23546    }
23547    }
23548  }
23549  }
23550  {
23551#line 3565
23552  __cil_tmp17 = info->pdev;
23553#line 3565
23554  __cil_tmp18 = __cil_tmp17->device;
23555#line 3565
23556  __cil_tmp19 = (int )__cil_tmp18;
23557#line 3565
23558  if (__cil_tmp19 == 112) {
23559#line 3565
23560    goto case_112;
23561  } else {
23562    {
23563#line 3568
23564    __cil_tmp20 = info->pdev;
23565#line 3568
23566    __cil_tmp21 = __cil_tmp20->device;
23567#line 3568
23568    __cil_tmp22 = (int )__cil_tmp21;
23569#line 3568
23570    if (__cil_tmp22 == 160) {
23571#line 3568
23572      goto case_160;
23573    } else {
23574      {
23575#line 3571
23576      __cil_tmp23 = info->pdev;
23577#line 3571
23578      __cil_tmp24 = __cil_tmp23->device;
23579#line 3571
23580      __cil_tmp25 = (int )__cil_tmp24;
23581#line 3571
23582      if (__cil_tmp25 == 128) {
23583#line 3571
23584        goto case_128;
23585      } else {
23586        {
23587#line 3574
23588        __cil_tmp26 = info->pdev;
23589#line 3574
23590        __cil_tmp27 = __cil_tmp26->device;
23591#line 3574
23592        __cil_tmp28 = (int )__cil_tmp27;
23593#line 3574
23594        if (__cil_tmp28 == 144) {
23595#line 3574
23596          goto case_144;
23597        } else {
23598#line 3578
23599          goto switch_default;
23600#line 3564
23601          if (0) {
23602            case_112: 
23603#line 3566
23604            devstr = (char *)"GT";
23605#line 3567
23606            goto ldv_37482;
23607            case_160: 
23608#line 3569
23609            devstr = (char *)"GT2";
23610#line 3570
23611            goto ldv_37482;
23612            case_128: 
23613#line 3572
23614            devstr = (char *)"GT4";
23615#line 3573
23616            goto ldv_37482;
23617            case_144: 
23618#line 3575
23619            devstr = (char *)"AC";
23620#line 3576
23621            info->params.mode = 1UL;
23622#line 3577
23623            goto ldv_37482;
23624            switch_default: 
23625#line 3579
23626            devstr = (char *)"(unknown model)";
23627          } else {
23628
23629          }
23630        }
23631        }
23632      }
23633      }
23634    }
23635    }
23636  }
23637  }
23638  ldv_37482: 
23639  {
23640#line 3581
23641  __cil_tmp29 = & info->device_name;
23642#line 3581
23643  __cil_tmp30 = (char *)__cil_tmp29;
23644#line 3581
23645  __cil_tmp31 = info->phys_reg_addr;
23646#line 3581
23647  __cil_tmp32 = info->irq_level;
23648#line 3581
23649  __cil_tmp33 = info->max_frame_size;
23650#line 3581
23651  printk("SyncLink %s %s IO=%08x IRQ=%d MaxFrameSize=%u\n", devstr, __cil_tmp30, __cil_tmp31,
23652         __cil_tmp32, __cil_tmp33);
23653#line 3586
23654  hdlcdev_init(info);
23655  }
23656#line 3587
23657  return;
23658}
23659}
23660#line 3590 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
23661static struct tty_port_operations  const  slgt_port_ops  =    {& carrier_raised, & dtr_rts, (void (*)(struct tty_port * ))0, (void (*)(struct tty_port * ))0,
23662    (int (*)(struct tty_port * , struct tty_struct * ))0, (void (*)(struct tty_port * ))0};
23663#line 3598 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
23664static struct slgt_info *alloc_dev(int adapter_num , int port_num , struct pci_dev *pdev ) 
23665{ struct slgt_info *info ;
23666  void *tmp ;
23667  struct lock_class_key __key ;
23668  atomic_long_t __constr_expr_0 ;
23669  struct lock_class_key __key___0 ;
23670  struct lock_class_key __key___1 ;
23671  struct lock_class_key __key___2 ;
23672  size_t __len ;
23673  void *__ret ;
23674  struct lock_class_key __key___3 ;
23675  struct lock_class_key __key___4 ;
23676  struct slgt_info *__cil_tmp15 ;
23677  unsigned long __cil_tmp16 ;
23678  unsigned long __cil_tmp17 ;
23679  struct tty_port *__cil_tmp18 ;
23680  struct work_struct *__cil_tmp19 ;
23681  struct lockdep_map *__cil_tmp20 ;
23682  struct list_head *__cil_tmp21 ;
23683  wait_queue_head_t *__cil_tmp22 ;
23684  wait_queue_head_t *__cil_tmp23 ;
23685  spinlock_t *__cil_tmp24 ;
23686  struct raw_spinlock *__cil_tmp25 ;
23687  MGSL_PARAMS *__cil_tmp26 ;
23688  void *__cil_tmp27 ;
23689  void const   *__cil_tmp28 ;
23690  MGSL_PARAMS *__cil_tmp29 ;
23691  void *__cil_tmp30 ;
23692  void const   *__cil_tmp31 ;
23693  struct timer_list *__cil_tmp32 ;
23694  unsigned long __cil_tmp33 ;
23695  struct timer_list *__cil_tmp34 ;
23696  unsigned long __cil_tmp35 ;
23697  resource_size_t __cil_tmp36 ;
23698
23699  {
23700  {
23701#line 3602
23702  tmp = kzalloc(10120UL, 208U);
23703#line 3602
23704  info = (struct slgt_info *)tmp;
23705  }
23706  {
23707#line 3604
23708  __cil_tmp15 = (struct slgt_info *)0;
23709#line 3604
23710  __cil_tmp16 = (unsigned long )__cil_tmp15;
23711#line 3604
23712  __cil_tmp17 = (unsigned long )info;
23713#line 3604
23714  if (__cil_tmp17 == __cil_tmp16) {
23715#line 3605
23716    if (debug_level > 1) {
23717      {
23718#line 3605
23719      printk("%s device alloc failed adapter=%d port=%d\n", driver_name, adapter_num,
23720             port_num);
23721      }
23722    } else {
23723      {
23724#line 3608
23725      __cil_tmp18 = & info->port;
23726#line 3608
23727      tty_port_init(__cil_tmp18);
23728#line 3609
23729      info->port.ops = & slgt_port_ops;
23730#line 3610
23731      info->magic = 21505;
23732#line 3611
23733      __cil_tmp19 = & info->task;
23734#line 3611
23735      __init_work(__cil_tmp19, 0);
23736#line 3611
23737      __constr_expr_0.counter = 2097664L;
23738#line 3611
23739      info->task.data = __constr_expr_0;
23740#line 3611
23741      __cil_tmp20 = & info->task.lockdep_map;
23742#line 3611
23743      lockdep_init_map(__cil_tmp20, "(&info->task)", & __key, 0);
23744#line 3611
23745      __cil_tmp21 = & info->task.entry;
23746#line 3611
23747      INIT_LIST_HEAD(__cil_tmp21);
23748#line 3611
23749      info->task.func = & bh_handler;
23750#line 3612
23751      info->max_frame_size = 4096U;
23752#line 3613
23753      info->base_clock = 14745600U;
23754#line 3614
23755      info->rbuf_fill_level = 256U;
23756#line 3615
23757      info->port.close_delay = 125U;
23758#line 3616
23759      info->port.closing_wait = 7500U;
23760#line 3617
23761      __cil_tmp22 = & info->status_event_wait_q;
23762#line 3617
23763      __init_waitqueue_head(__cil_tmp22, & __key___0);
23764#line 3618
23765      __cil_tmp23 = & info->event_wait_q;
23766#line 3618
23767      __init_waitqueue_head(__cil_tmp23, & __key___1);
23768#line 3619
23769      __cil_tmp24 = & info->netlock;
23770#line 3619
23771      spinlock_check(__cil_tmp24);
23772#line 3619
23773      __cil_tmp25 = & info->netlock.ldv_6060.rlock;
23774#line 3619
23775      __raw_spin_lock_init(__cil_tmp25, "&(&info->netlock)->rlock", & __key___2);
23776#line 3620
23777      __len = 48UL;
23778      }
23779#line 3620
23780      if (__len > 63UL) {
23781        {
23782#line 3620
23783        __cil_tmp26 = & info->params;
23784#line 3620
23785        __cil_tmp27 = (void *)__cil_tmp26;
23786#line 3620
23787        __cil_tmp28 = (void const   *)(& default_params);
23788#line 3620
23789        __ret = __memcpy(__cil_tmp27, __cil_tmp28, __len);
23790        }
23791      } else {
23792        {
23793#line 3620
23794        __cil_tmp29 = & info->params;
23795#line 3620
23796        __cil_tmp30 = (void *)__cil_tmp29;
23797#line 3620
23798        __cil_tmp31 = (void const   *)(& default_params);
23799#line 3620
23800        __ret = __builtin_memcpy(__cil_tmp30, __cil_tmp31, __len);
23801        }
23802      }
23803      {
23804#line 3621
23805      info->idle_mode = 0U;
23806#line 3622
23807      info->adapter_num = adapter_num;
23808#line 3623
23809      info->port_num = port_num;
23810#line 3625
23811      __cil_tmp32 = & info->tx_timer;
23812#line 3625
23813      __cil_tmp33 = (unsigned long )info;
23814#line 3625
23815      setup_timer_key(__cil_tmp32, "&info->tx_timer", & __key___3, & tx_timeout, __cil_tmp33);
23816#line 3626
23817      __cil_tmp34 = & info->rx_timer;
23818#line 3626
23819      __cil_tmp35 = (unsigned long )info;
23820#line 3626
23821      setup_timer_key(__cil_tmp34, "&info->rx_timer", & __key___4, & rx_timeout, __cil_tmp35);
23822#line 3629
23823      info->pdev = pdev;
23824#line 3630
23825      info->irq_level = pdev->irq;
23826#line 3631
23827      __cil_tmp36 = pdev->resource[0].start;
23828#line 3631
23829      info->phys_reg_addr = (u32 )__cil_tmp36;
23830#line 3633
23831      info->bus_type = 5U;
23832#line 3634
23833      info->irq_flags = 128UL;
23834#line 3636
23835      info->init_error = -1;
23836      }
23837    }
23838  } else {
23839
23840  }
23841  }
23842#line 3639
23843  return (info);
23844}
23845}
23846#line 3642 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
23847static void device_init(int adapter_num , struct pci_dev *pdev ) 
23848{ struct slgt_info *port_array[4U] ;
23849  int i ;
23850  int port_count ;
23851  size_t __len ;
23852  void *__ret ;
23853  struct lock_class_key __key ;
23854  int tmp ;
23855  int tmp___0 ;
23856  unsigned short __cil_tmp11 ;
23857  unsigned int __cil_tmp12 ;
23858  unsigned short __cil_tmp13 ;
23859  unsigned int __cil_tmp14 ;
23860  struct slgt_info *__cil_tmp15 ;
23861  unsigned long __cil_tmp16 ;
23862  unsigned long __cil_tmp17 ;
23863  void const   *__cil_tmp18 ;
23864  struct slgt_info *(*__cil_tmp19)[4U] ;
23865  void *__cil_tmp20 ;
23866  void const   *__cil_tmp21 ;
23867  struct slgt_info *(*__cil_tmp22)[4U] ;
23868  void *__cil_tmp23 ;
23869  void const   *__cil_tmp24 ;
23870  spinlock_t *__cil_tmp25 ;
23871  struct raw_spinlock *__cil_tmp26 ;
23872  unsigned int __cil_tmp27 ;
23873  unsigned long __cil_tmp28 ;
23874  char (*__cil_tmp29)[25U] ;
23875  char const   *__cil_tmp30 ;
23876  void *__cil_tmp31 ;
23877  char (*__cil_tmp32)[25U] ;
23878  char *__cil_tmp33 ;
23879  unsigned int __cil_tmp34 ;
23880  int __cil_tmp35 ;
23881  unsigned int __cil_tmp36 ;
23882  struct pci_dev *__cil_tmp37 ;
23883  struct device *__cil_tmp38 ;
23884
23885  {
23886#line 3646
23887  port_count = 1;
23888  {
23889#line 3648
23890  __cil_tmp11 = pdev->device;
23891#line 3648
23892  __cil_tmp12 = (unsigned int )__cil_tmp11;
23893#line 3648
23894  if (__cil_tmp12 == 160U) {
23895#line 3649
23896    port_count = 2;
23897  } else {
23898    {
23899#line 3650
23900    __cil_tmp13 = pdev->device;
23901#line 3650
23902    __cil_tmp14 = (unsigned int )__cil_tmp13;
23903#line 3650
23904    if (__cil_tmp14 == 128U) {
23905#line 3651
23906      port_count = 4;
23907    } else {
23908
23909    }
23910    }
23911  }
23912  }
23913#line 3654
23914  i = 0;
23915#line 3654
23916  goto ldv_37515;
23917  ldv_37514: 
23918  {
23919#line 3655
23920  port_array[i] = alloc_dev(adapter_num, i, pdev);
23921  }
23922  {
23923#line 3656
23924  __cil_tmp15 = (struct slgt_info *)0;
23925#line 3656
23926  __cil_tmp16 = (unsigned long )__cil_tmp15;
23927#line 3656
23928  __cil_tmp17 = (unsigned long )port_array[i];
23929#line 3656
23930  if (__cil_tmp17 == __cil_tmp16) {
23931#line 3657
23932    i = i - 1;
23933#line 3657
23934    goto ldv_37512;
23935    ldv_37511: 
23936    {
23937#line 3658
23938    __cil_tmp18 = (void const   *)port_array[i];
23939#line 3658
23940    kfree(__cil_tmp18);
23941#line 3657
23942    i = i - 1;
23943    }
23944    ldv_37512: ;
23945#line 3657
23946    if (i >= 0) {
23947#line 3658
23948      goto ldv_37511;
23949    } else {
23950#line 3660
23951      goto ldv_37513;
23952    }
23953    ldv_37513: ;
23954#line 3659
23955    return;
23956  } else {
23957
23958  }
23959  }
23960#line 3654
23961  i = i + 1;
23962  ldv_37515: ;
23963#line 3654
23964  if (i < port_count) {
23965#line 3655
23966    goto ldv_37514;
23967  } else {
23968#line 3657
23969    goto ldv_37516;
23970  }
23971  ldv_37516: 
23972#line 3664
23973  i = 0;
23974#line 3664
23975  goto ldv_37522;
23976  ldv_37521: 
23977#line 3665
23978  __len = 32UL;
23979#line 3665
23980  if (__len > 63UL) {
23981    {
23982#line 3665
23983    __cil_tmp19 = & (port_array[i])->port_array;
23984#line 3665
23985    __cil_tmp20 = (void *)__cil_tmp19;
23986#line 3665
23987    __cil_tmp21 = (void const   *)(& port_array);
23988#line 3665
23989    __ret = __memcpy(__cil_tmp20, __cil_tmp21, __len);
23990    }
23991  } else {
23992    {
23993#line 3665
23994    __cil_tmp22 = & (port_array[i])->port_array;
23995#line 3665
23996    __cil_tmp23 = (void *)__cil_tmp22;
23997#line 3665
23998    __cil_tmp24 = (void const   *)(& port_array);
23999#line 3665
24000    __ret = __builtin_memcpy(__cil_tmp23, __cil_tmp24, __len);
24001    }
24002  }
24003  {
24004#line 3666
24005  add_device(port_array[i]);
24006#line 3667
24007  (port_array[i])->port_count = port_count;
24008#line 3668
24009  __cil_tmp25 = & (port_array[i])->lock;
24010#line 3668
24011  spinlock_check(__cil_tmp25);
24012#line 3668
24013  __cil_tmp26 = & (port_array[i])->lock.ldv_6060.rlock;
24014#line 3668
24015  __raw_spin_lock_init(__cil_tmp26, "&(&port_array[i]->lock)->rlock", & __key);
24016#line 3664
24017  i = i + 1;
24018  }
24019  ldv_37522: ;
24020#line 3664
24021  if (i < port_count) {
24022#line 3665
24023    goto ldv_37521;
24024  } else {
24025#line 3667
24026    goto ldv_37523;
24027  }
24028  ldv_37523: 
24029  {
24030#line 3672
24031  tmp___0 = claim_resources(port_array[0]);
24032  }
24033#line 3672
24034  if (tmp___0 == 0) {
24035    {
24036#line 3674
24037    alloc_dma_bufs(port_array[0]);
24038#line 3677
24039    i = 1;
24040    }
24041#line 3677
24042    goto ldv_37525;
24043    ldv_37524: 
24044    {
24045#line 3678
24046    (port_array[i])->irq_level = (port_array[0])->irq_level;
24047#line 3679
24048    (port_array[i])->reg_addr = (port_array[0])->reg_addr;
24049#line 3680
24050    alloc_dma_bufs(port_array[i]);
24051#line 3677
24052    i = i + 1;
24053    }
24054    ldv_37525: ;
24055#line 3677
24056    if (i < port_count) {
24057#line 3678
24058      goto ldv_37524;
24059    } else {
24060#line 3680
24061      goto ldv_37526;
24062    }
24063    ldv_37526: 
24064    {
24065#line 3683
24066    __cil_tmp27 = (port_array[0])->irq_level;
24067#line 3683
24068    __cil_tmp28 = (port_array[0])->irq_flags;
24069#line 3683
24070    __cil_tmp29 = & (port_array[0])->device_name;
24071#line 3683
24072    __cil_tmp30 = (char const   *)__cil_tmp29;
24073#line 3683
24074    __cil_tmp31 = (void *)port_array[0];
24075#line 3683
24076    tmp = request_irq(__cil_tmp27, & slgt_interrupt, __cil_tmp28, __cil_tmp30, __cil_tmp31);
24077    }
24078#line 3683
24079    if (tmp < 0) {
24080#line 3688
24081      if (debug_level > 1) {
24082        {
24083#line 3688
24084        __cil_tmp32 = & (port_array[0])->device_name;
24085#line 3688
24086        __cil_tmp33 = (char *)__cil_tmp32;
24087#line 3688
24088        __cil_tmp34 = (port_array[0])->irq_level;
24089#line 3688
24090        printk("%s request_irq failed IRQ=%d\n", __cil_tmp33, __cil_tmp34);
24091        }
24092      } else {
24093        {
24094#line 3692
24095        (port_array[0])->irq_requested = (bool )1;
24096#line 3693
24097        adapter_test(port_array[0]);
24098#line 3694
24099        i = 1;
24100        }
24101#line 3694
24102        goto ldv_37528;
24103        ldv_37527: 
24104#line 3695
24105        (port_array[i])->init_error = (port_array[0])->init_error;
24106#line 3696
24107        (port_array[i])->gpio_present = (port_array[0])->gpio_present;
24108#line 3694
24109        i = i + 1;
24110        ldv_37528: ;
24111#line 3694
24112        if (i < port_count) {
24113#line 3695
24114          goto ldv_37527;
24115        } else {
24116#line 3697
24117          goto ldv_37529;
24118        }
24119        ldv_37529: ;
24120      }
24121    } else {
24122
24123    }
24124  } else {
24125
24126  }
24127#line 3701
24128  i = 0;
24129#line 3701
24130  goto ldv_37531;
24131  ldv_37530: 
24132  {
24133#line 3702
24134  __cil_tmp35 = (port_array[i])->line;
24135#line 3702
24136  __cil_tmp36 = (unsigned int )__cil_tmp35;
24137#line 3702
24138  __cil_tmp37 = (port_array[i])->pdev;
24139#line 3702
24140  __cil_tmp38 = & __cil_tmp37->dev;
24141#line 3702
24142  tty_register_device(serial_driver, __cil_tmp36, __cil_tmp38);
24143#line 3701
24144  i = i + 1;
24145  }
24146  ldv_37531: ;
24147#line 3701
24148  if (i < port_count) {
24149#line 3702
24150    goto ldv_37530;
24151  } else {
24152#line 3704
24153    goto ldv_37532;
24154  }
24155  ldv_37532: ;
24156#line 3706
24157  return;
24158}
24159}
24160#line 3705 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
24161static int init_one(struct pci_dev *dev , struct pci_device_id  const  *ent ) 
24162{ int tmp ;
24163
24164  {
24165  {
24166#line 3708
24167  tmp = pci_enable_device(dev);
24168  }
24169#line 3708
24170  if (tmp != 0) {
24171    {
24172#line 3709
24173    printk("error enabling pci device %p\n", dev);
24174    }
24175#line 3710
24176    return (-5);
24177  } else {
24178
24179  }
24180  {
24181#line 3712
24182  pci_set_master(dev);
24183#line 3713
24184  device_init(slgt_device_count, dev);
24185  }
24186#line 3714
24187  return (0);
24188}
24189}
24190#line 3717 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
24191static void remove_one(struct pci_dev *dev ) 
24192{ 
24193
24194  {
24195#line 3719
24196  return;
24197}
24198}
24199#line 3721 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
24200static struct tty_operations  const  ops  = 
24201#line 3721
24202     {(struct tty_struct *(*)(struct tty_driver * , struct inode * , int  ))0, (int (*)(struct tty_driver * ,
24203                                                                                      struct tty_struct * ))0,
24204    (void (*)(struct tty_driver * , struct tty_struct * ))0, & open, & close, (void (*)(struct tty_struct * ))0,
24205    (void (*)(struct tty_struct * ))0, & write, & put_char, & flush_chars, & write_room,
24206    & chars_in_buffer, & ioctl, & slgt_compat_ioctl, & set_termios, & throttle, & unthrottle,
24207    & tx_hold, & tx_release, & hangup, & set_break, & flush_buffer, (void (*)(struct tty_struct * ))0,
24208    & wait_until_sent, & send_xchar, & tiocmget, & tiocmset, (int (*)(struct tty_struct * ,
24209                                                                      struct winsize * ))0,
24210    (int (*)(struct tty_struct * , struct termiox * ))0, & get_icount, (int (*)(struct tty_driver * ,
24211                                                                                int  ,
24212                                                                                char * ))0,
24213    (int (*)(struct tty_driver * , int  ))0, (void (*)(struct tty_driver * , int  ,
24214                                                       char  ))0, & synclink_gt_proc_fops};
24215#line 3747 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
24216static void slgt_cleanup(void) 
24217{ int rc ;
24218  struct slgt_info *info ;
24219  struct slgt_info *tmp ;
24220  struct tty_driver *__cil_tmp4 ;
24221  unsigned long __cil_tmp5 ;
24222  unsigned long __cil_tmp6 ;
24223  int __cil_tmp7 ;
24224  unsigned int __cil_tmp8 ;
24225  struct slgt_info *__cil_tmp9 ;
24226  unsigned long __cil_tmp10 ;
24227  unsigned long __cil_tmp11 ;
24228  struct slgt_info *__cil_tmp12 ;
24229  unsigned long __cil_tmp13 ;
24230  unsigned long __cil_tmp14 ;
24231  int __cil_tmp15 ;
24232  void const   *__cil_tmp16 ;
24233  struct slgt_info *__cil_tmp17 ;
24234  unsigned long __cil_tmp18 ;
24235  unsigned long __cil_tmp19 ;
24236
24237  {
24238  {
24239#line 3753
24240  printk("<6>unload %s\n", driver_name);
24241  }
24242  {
24243#line 3755
24244  __cil_tmp4 = (struct tty_driver *)0;
24245#line 3755
24246  __cil_tmp5 = (unsigned long )__cil_tmp4;
24247#line 3755
24248  __cil_tmp6 = (unsigned long )serial_driver;
24249#line 3755
24250  if (__cil_tmp6 != __cil_tmp5) {
24251#line 3756
24252    info = slgt_device_list;
24253#line 3756
24254    goto ldv_37548;
24255    ldv_37547: 
24256    {
24257#line 3757
24258    __cil_tmp7 = info->line;
24259#line 3757
24260    __cil_tmp8 = (unsigned int )__cil_tmp7;
24261#line 3757
24262    tty_unregister_device(serial_driver, __cil_tmp8);
24263#line 3756
24264    info = info->next_device;
24265    }
24266    ldv_37548: ;
24267    {
24268#line 3756
24269    __cil_tmp9 = (struct slgt_info *)0;
24270#line 3756
24271    __cil_tmp10 = (unsigned long )__cil_tmp9;
24272#line 3756
24273    __cil_tmp11 = (unsigned long )info;
24274#line 3756
24275    if (__cil_tmp11 != __cil_tmp10) {
24276#line 3757
24277      goto ldv_37547;
24278    } else {
24279#line 3759
24280      goto ldv_37549;
24281    }
24282    }
24283    ldv_37549: 
24284    {
24285#line 3758
24286    rc = tty_unregister_driver(serial_driver);
24287    }
24288#line 3758
24289    if (rc != 0) {
24290#line 3759
24291      if (debug_level > 1) {
24292        {
24293#line 3759
24294        printk("tty_unregister_driver error=%d\n", rc);
24295        }
24296      } else {
24297
24298      }
24299    } else {
24300
24301    }
24302    {
24303#line 3760
24304    put_tty_driver(serial_driver);
24305    }
24306  } else {
24307
24308  }
24309  }
24310#line 3764
24311  info = slgt_device_list;
24312#line 3765
24313  goto ldv_37551;
24314  ldv_37550: 
24315  {
24316#line 3766
24317  reset_port(info);
24318#line 3767
24319  info = info->next_device;
24320  }
24321  ldv_37551: ;
24322  {
24323#line 3765
24324  __cil_tmp12 = (struct slgt_info *)0;
24325#line 3765
24326  __cil_tmp13 = (unsigned long )__cil_tmp12;
24327#line 3765
24328  __cil_tmp14 = (unsigned long )info;
24329#line 3765
24330  if (__cil_tmp14 != __cil_tmp13) {
24331#line 3766
24332    goto ldv_37550;
24333  } else {
24334#line 3768
24335    goto ldv_37552;
24336  }
24337  }
24338  ldv_37552: 
24339#line 3771
24340  info = slgt_device_list;
24341#line 3772
24342  goto ldv_37554;
24343  ldv_37553: 
24344  {
24345#line 3774
24346  hdlcdev_exit(info);
24347#line 3776
24348  free_dma_bufs(info);
24349#line 3777
24350  free_tmp_rbuf(info);
24351  }
24352  {
24353#line 3778
24354  __cil_tmp15 = info->port_num;
24355#line 3778
24356  if (__cil_tmp15 == 0) {
24357    {
24358#line 3779
24359    release_resources(info);
24360    }
24361  } else {
24362
24363  }
24364  }
24365  {
24366#line 3780
24367  tmp = info;
24368#line 3781
24369  info = info->next_device;
24370#line 3782
24371  __cil_tmp16 = (void const   *)tmp;
24372#line 3782
24373  kfree(__cil_tmp16);
24374  }
24375  ldv_37554: ;
24376  {
24377#line 3772
24378  __cil_tmp17 = (struct slgt_info *)0;
24379#line 3772
24380  __cil_tmp18 = (unsigned long )__cil_tmp17;
24381#line 3772
24382  __cil_tmp19 = (unsigned long )info;
24383#line 3772
24384  if (__cil_tmp19 != __cil_tmp18) {
24385#line 3773
24386    goto ldv_37553;
24387  } else {
24388#line 3775
24389    goto ldv_37555;
24390  }
24391  }
24392  ldv_37555: ;
24393#line 3785
24394  if ((int )pci_registered) {
24395    {
24396#line 3786
24397    pci_unregister_driver(& pci_driver);
24398    }
24399  } else {
24400
24401  }
24402#line 3787
24403  return;
24404}
24405}
24406#line 3792 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
24407static int slgt_init(void) 
24408{ int rc ;
24409  struct tty_driver *__cil_tmp2 ;
24410  unsigned long __cil_tmp3 ;
24411  unsigned long __cil_tmp4 ;
24412  int __cil_tmp5 ;
24413  struct slgt_info *__cil_tmp6 ;
24414  unsigned long __cil_tmp7 ;
24415  unsigned long __cil_tmp8 ;
24416
24417  {
24418  {
24419#line 3796
24420  printk("<6>%s\n", driver_name);
24421#line 3798
24422  serial_driver = alloc_tty_driver(32);
24423  }
24424  {
24425#line 3799
24426  __cil_tmp2 = (struct tty_driver *)0;
24427#line 3799
24428  __cil_tmp3 = (unsigned long )__cil_tmp2;
24429#line 3799
24430  __cil_tmp4 = (unsigned long )serial_driver;
24431#line 3799
24432  if (__cil_tmp4 == __cil_tmp3) {
24433    {
24434#line 3800
24435    printk("%s can\'t allocate tty driver\n", driver_name);
24436    }
24437#line 3801
24438    return (-12);
24439  } else {
24440
24441  }
24442  }
24443  {
24444#line 3806
24445  serial_driver->owner = & __this_module;
24446#line 3807
24447  serial_driver->driver_name = (char const   *)tty_driver_name;
24448#line 3808
24449  serial_driver->name = (char const   *)tty_dev_prefix;
24450#line 3809
24451  serial_driver->major = ttymajor;
24452#line 3810
24453  serial_driver->minor_start = 64;
24454#line 3811
24455  serial_driver->type = (short)3;
24456#line 3812
24457  serial_driver->subtype = (short)1;
24458#line 3813
24459  serial_driver->init_termios = tty_std_termios;
24460#line 3814
24461  serial_driver->init_termios.c_cflag = 3261U;
24462#line 3816
24463  serial_driver->init_termios.c_ispeed = 9600U;
24464#line 3817
24465  serial_driver->init_termios.c_ospeed = 9600U;
24466#line 3818
24467  serial_driver->flags = 12;
24468#line 3819
24469  tty_set_operations(serial_driver, & ops);
24470#line 3820
24471  rc = tty_register_driver(serial_driver);
24472  }
24473#line 3820
24474  if (rc < 0) {
24475#line 3821
24476    if (debug_level > 1) {
24477      {
24478#line 3821
24479      printk("%s can\'t register serial driver\n", driver_name);
24480      }
24481    } else {
24482
24483    }
24484    {
24485#line 3822
24486    put_tty_driver(serial_driver);
24487#line 3823
24488    serial_driver = (struct tty_driver *)0;
24489    }
24490#line 3824
24491    goto error;
24492  } else {
24493
24494  }
24495  {
24496#line 3827
24497  __cil_tmp5 = serial_driver->major;
24498#line 3827
24499  printk("<6>%s, tty major#%d\n", driver_name, __cil_tmp5);
24500#line 3830
24501  slgt_device_count = 0;
24502#line 3831
24503  rc = __pci_register_driver(& pci_driver, & __this_module, "synclink_gt");
24504  }
24505#line 3831
24506  if (rc < 0) {
24507    {
24508#line 3832
24509    printk("%s pci_register_driver error=%d\n", driver_name, rc);
24510    }
24511#line 3833
24512    goto error;
24513  } else {
24514
24515  }
24516#line 3835
24517  pci_registered = (bool )1;
24518  {
24519#line 3837
24520  __cil_tmp6 = (struct slgt_info *)0;
24521#line 3837
24522  __cil_tmp7 = (unsigned long )__cil_tmp6;
24523#line 3837
24524  __cil_tmp8 = (unsigned long )slgt_device_list;
24525#line 3837
24526  if (__cil_tmp8 == __cil_tmp7) {
24527    {
24528#line 3838
24529    printk("%s no devices found\n", driver_name);
24530    }
24531  } else {
24532
24533  }
24534  }
24535#line 3840
24536  return (0);
24537  error: 
24538  {
24539#line 3843
24540  slgt_cleanup();
24541  }
24542#line 3844
24543  return (rc);
24544}
24545}
24546#line 3847 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
24547static void slgt_exit(void) 
24548{ 
24549
24550  {
24551  {
24552#line 3849
24553  slgt_cleanup();
24554  }
24555#line 3850
24556  return;
24557}
24558}
24559#line 3866 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
24560static __u8 rd_reg8(struct slgt_info *info , unsigned int addr ) 
24561{ unsigned long reg_addr ;
24562  unsigned char tmp ;
24563  unsigned long __cil_tmp5 ;
24564  unsigned char *__cil_tmp6 ;
24565  unsigned long __cil_tmp7 ;
24566  int __cil_tmp8 ;
24567  int __cil_tmp9 ;
24568  unsigned long __cil_tmp10 ;
24569  int __cil_tmp11 ;
24570  int __cil_tmp12 ;
24571  unsigned long __cil_tmp13 ;
24572  void const volatile   *__cil_tmp14 ;
24573
24574  {
24575#line 3868
24576  __cil_tmp5 = (unsigned long )addr;
24577#line 3868
24578  __cil_tmp6 = info->reg_addr;
24579#line 3868
24580  __cil_tmp7 = (unsigned long )__cil_tmp6;
24581#line 3868
24582  reg_addr = __cil_tmp7 + __cil_tmp5;
24583#line 3868
24584  if (addr > 127U) {
24585#line 3868
24586    __cil_tmp8 = info->port_num;
24587#line 3868
24588    __cil_tmp9 = __cil_tmp8 * 32;
24589#line 3868
24590    __cil_tmp10 = (unsigned long )__cil_tmp9;
24591#line 3868
24592    reg_addr = __cil_tmp10 + reg_addr;
24593  } else
24594#line 3868
24595  if (addr > 63U) {
24596#line 3868
24597    __cil_tmp11 = info->port_num;
24598#line 3868
24599    __cil_tmp12 = __cil_tmp11 * 16;
24600#line 3868
24601    __cil_tmp13 = (unsigned long )__cil_tmp12;
24602#line 3868
24603    reg_addr = __cil_tmp13 + reg_addr;
24604  } else {
24605
24606  }
24607  {
24608#line 3869
24609  __cil_tmp14 = (void const volatile   *)reg_addr;
24610#line 3869
24611  tmp = readb(__cil_tmp14);
24612  }
24613#line 3869
24614  return (tmp);
24615}
24616}
24617#line 3872 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
24618static void wr_reg8(struct slgt_info *info , unsigned int addr , __u8 value ) 
24619{ unsigned long reg_addr ;
24620  unsigned long __cil_tmp5 ;
24621  unsigned char *__cil_tmp6 ;
24622  unsigned long __cil_tmp7 ;
24623  int __cil_tmp8 ;
24624  int __cil_tmp9 ;
24625  unsigned long __cil_tmp10 ;
24626  int __cil_tmp11 ;
24627  int __cil_tmp12 ;
24628  unsigned long __cil_tmp13 ;
24629  int __cil_tmp14 ;
24630  unsigned char __cil_tmp15 ;
24631  void volatile   *__cil_tmp16 ;
24632
24633  {
24634#line 3874
24635  __cil_tmp5 = (unsigned long )addr;
24636#line 3874
24637  __cil_tmp6 = info->reg_addr;
24638#line 3874
24639  __cil_tmp7 = (unsigned long )__cil_tmp6;
24640#line 3874
24641  reg_addr = __cil_tmp7 + __cil_tmp5;
24642#line 3874
24643  if (addr > 127U) {
24644#line 3874
24645    __cil_tmp8 = info->port_num;
24646#line 3874
24647    __cil_tmp9 = __cil_tmp8 * 32;
24648#line 3874
24649    __cil_tmp10 = (unsigned long )__cil_tmp9;
24650#line 3874
24651    reg_addr = __cil_tmp10 + reg_addr;
24652  } else
24653#line 3874
24654  if (addr > 63U) {
24655#line 3874
24656    __cil_tmp11 = info->port_num;
24657#line 3874
24658    __cil_tmp12 = __cil_tmp11 * 16;
24659#line 3874
24660    __cil_tmp13 = (unsigned long )__cil_tmp12;
24661#line 3874
24662    reg_addr = __cil_tmp13 + reg_addr;
24663  } else {
24664
24665  }
24666  {
24667#line 3875
24668  __cil_tmp14 = (int )value;
24669#line 3875
24670  __cil_tmp15 = (unsigned char )__cil_tmp14;
24671#line 3875
24672  __cil_tmp16 = (void volatile   *)reg_addr;
24673#line 3875
24674  writeb(__cil_tmp15, __cil_tmp16);
24675  }
24676#line 3876
24677  return;
24678}
24679}
24680#line 3878 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
24681static __u16 rd_reg16(struct slgt_info *info , unsigned int addr ) 
24682{ unsigned long reg_addr ;
24683  unsigned short tmp ;
24684  unsigned long __cil_tmp5 ;
24685  unsigned char *__cil_tmp6 ;
24686  unsigned long __cil_tmp7 ;
24687  int __cil_tmp8 ;
24688  int __cil_tmp9 ;
24689  unsigned long __cil_tmp10 ;
24690  int __cil_tmp11 ;
24691  int __cil_tmp12 ;
24692  unsigned long __cil_tmp13 ;
24693  void const volatile   *__cil_tmp14 ;
24694
24695  {
24696#line 3880
24697  __cil_tmp5 = (unsigned long )addr;
24698#line 3880
24699  __cil_tmp6 = info->reg_addr;
24700#line 3880
24701  __cil_tmp7 = (unsigned long )__cil_tmp6;
24702#line 3880
24703  reg_addr = __cil_tmp7 + __cil_tmp5;
24704#line 3880
24705  if (addr > 127U) {
24706#line 3880
24707    __cil_tmp8 = info->port_num;
24708#line 3880
24709    __cil_tmp9 = __cil_tmp8 * 32;
24710#line 3880
24711    __cil_tmp10 = (unsigned long )__cil_tmp9;
24712#line 3880
24713    reg_addr = __cil_tmp10 + reg_addr;
24714  } else
24715#line 3880
24716  if (addr > 63U) {
24717#line 3880
24718    __cil_tmp11 = info->port_num;
24719#line 3880
24720    __cil_tmp12 = __cil_tmp11 * 16;
24721#line 3880
24722    __cil_tmp13 = (unsigned long )__cil_tmp12;
24723#line 3880
24724    reg_addr = __cil_tmp13 + reg_addr;
24725  } else {
24726
24727  }
24728  {
24729#line 3881
24730  __cil_tmp14 = (void const volatile   *)reg_addr;
24731#line 3881
24732  tmp = readw(__cil_tmp14);
24733  }
24734#line 3881
24735  return (tmp);
24736}
24737}
24738#line 3884 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
24739static void wr_reg16(struct slgt_info *info , unsigned int addr , __u16 value ) 
24740{ unsigned long reg_addr ;
24741  unsigned long __cil_tmp5 ;
24742  unsigned char *__cil_tmp6 ;
24743  unsigned long __cil_tmp7 ;
24744  int __cil_tmp8 ;
24745  int __cil_tmp9 ;
24746  unsigned long __cil_tmp10 ;
24747  int __cil_tmp11 ;
24748  int __cil_tmp12 ;
24749  unsigned long __cil_tmp13 ;
24750  int __cil_tmp14 ;
24751  unsigned short __cil_tmp15 ;
24752  void volatile   *__cil_tmp16 ;
24753
24754  {
24755#line 3886
24756  __cil_tmp5 = (unsigned long )addr;
24757#line 3886
24758  __cil_tmp6 = info->reg_addr;
24759#line 3886
24760  __cil_tmp7 = (unsigned long )__cil_tmp6;
24761#line 3886
24762  reg_addr = __cil_tmp7 + __cil_tmp5;
24763#line 3886
24764  if (addr > 127U) {
24765#line 3886
24766    __cil_tmp8 = info->port_num;
24767#line 3886
24768    __cil_tmp9 = __cil_tmp8 * 32;
24769#line 3886
24770    __cil_tmp10 = (unsigned long )__cil_tmp9;
24771#line 3886
24772    reg_addr = __cil_tmp10 + reg_addr;
24773  } else
24774#line 3886
24775  if (addr > 63U) {
24776#line 3886
24777    __cil_tmp11 = info->port_num;
24778#line 3886
24779    __cil_tmp12 = __cil_tmp11 * 16;
24780#line 3886
24781    __cil_tmp13 = (unsigned long )__cil_tmp12;
24782#line 3886
24783    reg_addr = __cil_tmp13 + reg_addr;
24784  } else {
24785
24786  }
24787  {
24788#line 3887
24789  __cil_tmp14 = (int )value;
24790#line 3887
24791  __cil_tmp15 = (unsigned short )__cil_tmp14;
24792#line 3887
24793  __cil_tmp16 = (void volatile   *)reg_addr;
24794#line 3887
24795  writew(__cil_tmp15, __cil_tmp16);
24796  }
24797#line 3888
24798  return;
24799}
24800}
24801#line 3890 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
24802static __u32 rd_reg32(struct slgt_info *info , unsigned int addr ) 
24803{ unsigned long reg_addr ;
24804  unsigned int tmp ;
24805  unsigned long __cil_tmp5 ;
24806  unsigned char *__cil_tmp6 ;
24807  unsigned long __cil_tmp7 ;
24808  int __cil_tmp8 ;
24809  int __cil_tmp9 ;
24810  unsigned long __cil_tmp10 ;
24811  int __cil_tmp11 ;
24812  int __cil_tmp12 ;
24813  unsigned long __cil_tmp13 ;
24814  void const volatile   *__cil_tmp14 ;
24815
24816  {
24817#line 3892
24818  __cil_tmp5 = (unsigned long )addr;
24819#line 3892
24820  __cil_tmp6 = info->reg_addr;
24821#line 3892
24822  __cil_tmp7 = (unsigned long )__cil_tmp6;
24823#line 3892
24824  reg_addr = __cil_tmp7 + __cil_tmp5;
24825#line 3892
24826  if (addr > 127U) {
24827#line 3892
24828    __cil_tmp8 = info->port_num;
24829#line 3892
24830    __cil_tmp9 = __cil_tmp8 * 32;
24831#line 3892
24832    __cil_tmp10 = (unsigned long )__cil_tmp9;
24833#line 3892
24834    reg_addr = __cil_tmp10 + reg_addr;
24835  } else
24836#line 3892
24837  if (addr > 63U) {
24838#line 3892
24839    __cil_tmp11 = info->port_num;
24840#line 3892
24841    __cil_tmp12 = __cil_tmp11 * 16;
24842#line 3892
24843    __cil_tmp13 = (unsigned long )__cil_tmp12;
24844#line 3892
24845    reg_addr = __cil_tmp13 + reg_addr;
24846  } else {
24847
24848  }
24849  {
24850#line 3893
24851  __cil_tmp14 = (void const volatile   *)reg_addr;
24852#line 3893
24853  tmp = readl(__cil_tmp14);
24854  }
24855#line 3893
24856  return (tmp);
24857}
24858}
24859#line 3896 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
24860static void wr_reg32(struct slgt_info *info , unsigned int addr , __u32 value ) 
24861{ unsigned long reg_addr ;
24862  unsigned long __cil_tmp5 ;
24863  unsigned char *__cil_tmp6 ;
24864  unsigned long __cil_tmp7 ;
24865  int __cil_tmp8 ;
24866  int __cil_tmp9 ;
24867  unsigned long __cil_tmp10 ;
24868  int __cil_tmp11 ;
24869  int __cil_tmp12 ;
24870  unsigned long __cil_tmp13 ;
24871  void volatile   *__cil_tmp14 ;
24872
24873  {
24874#line 3898
24875  __cil_tmp5 = (unsigned long )addr;
24876#line 3898
24877  __cil_tmp6 = info->reg_addr;
24878#line 3898
24879  __cil_tmp7 = (unsigned long )__cil_tmp6;
24880#line 3898
24881  reg_addr = __cil_tmp7 + __cil_tmp5;
24882#line 3898
24883  if (addr > 127U) {
24884#line 3898
24885    __cil_tmp8 = info->port_num;
24886#line 3898
24887    __cil_tmp9 = __cil_tmp8 * 32;
24888#line 3898
24889    __cil_tmp10 = (unsigned long )__cil_tmp9;
24890#line 3898
24891    reg_addr = __cil_tmp10 + reg_addr;
24892  } else
24893#line 3898
24894  if (addr > 63U) {
24895#line 3898
24896    __cil_tmp11 = info->port_num;
24897#line 3898
24898    __cil_tmp12 = __cil_tmp11 * 16;
24899#line 3898
24900    __cil_tmp13 = (unsigned long )__cil_tmp12;
24901#line 3898
24902    reg_addr = __cil_tmp13 + reg_addr;
24903  } else {
24904
24905  }
24906  {
24907#line 3899
24908  __cil_tmp14 = (void volatile   *)reg_addr;
24909#line 3899
24910  writel(value, __cil_tmp14);
24911  }
24912#line 3900
24913  return;
24914}
24915}
24916#line 3902 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
24917static void rdma_reset(struct slgt_info *info ) 
24918{ unsigned int i ;
24919  __u32 tmp ;
24920  unsigned int __cil_tmp4 ;
24921
24922  {
24923  {
24924#line 3907
24925  wr_reg32(info, 144U, 2U);
24926#line 3910
24927  i = 0U;
24928  }
24929#line 3910
24930  goto ldv_37613;
24931  ldv_37612: 
24932  {
24933#line 3911
24934  tmp = rd_reg32(info, 144U);
24935  }
24936  {
24937#line 3911
24938  __cil_tmp4 = tmp & 1U;
24939#line 3911
24940  if (__cil_tmp4 == 0U) {
24941#line 3912
24942    goto ldv_37611;
24943  } else {
24944
24945  }
24946  }
24947#line 3910
24948  i = i + 1U;
24949  ldv_37613: ;
24950#line 3910
24951  if (i <= 999U) {
24952#line 3911
24953    goto ldv_37612;
24954  } else {
24955#line 3913
24956    goto ldv_37611;
24957  }
24958  ldv_37611: ;
24959#line 3915
24960  return;
24961}
24962}
24963#line 3915 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
24964static void tdma_reset(struct slgt_info *info ) 
24965{ unsigned int i ;
24966  __u32 tmp ;
24967  unsigned int __cil_tmp4 ;
24968
24969  {
24970  {
24971#line 3920
24972  wr_reg32(info, 148U, 2U);
24973#line 3923
24974  i = 0U;
24975  }
24976#line 3923
24977  goto ldv_37620;
24978  ldv_37619: 
24979  {
24980#line 3924
24981  tmp = rd_reg32(info, 148U);
24982  }
24983  {
24984#line 3924
24985  __cil_tmp4 = tmp & 1U;
24986#line 3924
24987  if (__cil_tmp4 == 0U) {
24988#line 3925
24989    goto ldv_37618;
24990  } else {
24991
24992  }
24993  }
24994#line 3923
24995  i = i + 1U;
24996  ldv_37620: ;
24997#line 3923
24998  if (i <= 999U) {
24999#line 3924
25000    goto ldv_37619;
25001  } else {
25002#line 3926
25003    goto ldv_37618;
25004  }
25005  ldv_37618: ;
25006#line 3928
25007  return;
25008}
25009}
25010#line 3933 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
25011static void enable_loopback(struct slgt_info *info ) 
25012{ __u16 tmp ;
25013  unsigned int __cil_tmp3 ;
25014  unsigned int __cil_tmp4 ;
25015  int __cil_tmp5 ;
25016  __u16 __cil_tmp6 ;
25017  unsigned long __cil_tmp7 ;
25018  __u8 __cil_tmp8 ;
25019  unsigned long __cil_tmp9 ;
25020  unsigned long __cil_tmp10 ;
25021  u32 __cil_tmp11 ;
25022
25023  {
25024  {
25025#line 3936
25026  tmp = rd_reg16(info, 140U);
25027#line 3936
25028  __cil_tmp3 = (unsigned int )tmp;
25029#line 3936
25030  __cil_tmp4 = __cil_tmp3 | 4U;
25031#line 3936
25032  __cil_tmp5 = (int )__cil_tmp4;
25033#line 3936
25034  __cil_tmp6 = (__u16 )__cil_tmp5;
25035#line 3936
25036  wr_reg16(info, 140U, __cil_tmp6);
25037  }
25038  {
25039#line 3938
25040  __cil_tmp7 = info->params.mode;
25041#line 3938
25042  if (__cil_tmp7 != 1UL) {
25043    {
25044#line 3947
25045    __cil_tmp8 = (__u8 )73;
25046#line 3947
25047    wr_reg8(info, 137U, __cil_tmp8);
25048    }
25049    {
25050#line 3950
25051    __cil_tmp9 = info->params.clock_speed;
25052#line 3950
25053    if (__cil_tmp9 != 0UL) {
25054      {
25055#line 3951
25056      __cil_tmp10 = info->params.clock_speed;
25057#line 3951
25058      __cil_tmp11 = (u32 )__cil_tmp10;
25059#line 3951
25060      set_rate(info, __cil_tmp11);
25061      }
25062    } else {
25063      {
25064#line 3953
25065      set_rate(info, 3686400U);
25066      }
25067    }
25068    }
25069  } else {
25070
25071  }
25072  }
25073#line 3955
25074  return;
25075}
25076}
25077#line 3960 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
25078static void set_rate(struct slgt_info *info , u32 rate ) 
25079{ unsigned int div ;
25080  unsigned int osc ;
25081  unsigned int __cil_tmp5 ;
25082  unsigned short __cil_tmp6 ;
25083  int __cil_tmp7 ;
25084  __u16 __cil_tmp8 ;
25085
25086  {
25087#line 3963
25088  osc = info->base_clock;
25089#line 3971
25090  if (rate != 0U) {
25091#line 3972
25092    div = osc / rate;
25093    {
25094#line 3973
25095    __cil_tmp5 = osc % rate;
25096#line 3973
25097    if (__cil_tmp5 == 0U) {
25098#line 3973
25099      if (div != 0U) {
25100#line 3974
25101        div = div - 1U;
25102      } else {
25103
25104      }
25105    } else {
25106
25107    }
25108    }
25109    {
25110#line 3975
25111    __cil_tmp6 = (unsigned short )div;
25112#line 3975
25113    __cil_tmp7 = (int )__cil_tmp6;
25114#line 3975
25115    __cil_tmp8 = (__u16 )__cil_tmp7;
25116#line 3975
25117    wr_reg16(info, 138U, __cil_tmp8);
25118    }
25119  } else {
25120
25121  }
25122#line 3977
25123  return;
25124}
25125}
25126#line 3979 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
25127static void rx_stop(struct slgt_info *info ) 
25128{ unsigned short val ;
25129  __u16 tmp ;
25130  __u16 tmp___0 ;
25131  unsigned int __cil_tmp5 ;
25132  unsigned int __cil_tmp6 ;
25133  unsigned int __cil_tmp7 ;
25134  unsigned int __cil_tmp8 ;
25135  int __cil_tmp9 ;
25136  __u16 __cil_tmp10 ;
25137  int __cil_tmp11 ;
25138  __u16 __cil_tmp12 ;
25139  int __cil_tmp13 ;
25140  int __cil_tmp14 ;
25141  __u16 __cil_tmp15 ;
25142  __u16 __cil_tmp16 ;
25143
25144  {
25145  {
25146#line 3984
25147  tmp = rd_reg16(info, 134U);
25148#line 3984
25149  __cil_tmp5 = (unsigned int )tmp;
25150#line 3984
25151  __cil_tmp6 = __cil_tmp5 & 65533U;
25152#line 3984
25153  val = (unsigned short )__cil_tmp6;
25154#line 3985
25155  __cil_tmp7 = (unsigned int )val;
25156#line 3985
25157  __cil_tmp8 = __cil_tmp7 | 4U;
25158#line 3985
25159  __cil_tmp9 = (int )__cil_tmp8;
25160#line 3985
25161  __cil_tmp10 = (__u16 )__cil_tmp9;
25162#line 3985
25163  wr_reg16(info, 134U, __cil_tmp10);
25164#line 3986
25165  __cil_tmp11 = (int )val;
25166#line 3986
25167  __cil_tmp12 = (__u16 )__cil_tmp11;
25168#line 3986
25169  wr_reg16(info, 134U, __cil_tmp12);
25170#line 3988
25171  tmp___0 = rd_reg16(info, 140U);
25172#line 3988
25173  __cil_tmp13 = (int )tmp___0;
25174#line 3988
25175  __cil_tmp14 = __cil_tmp13 & 63743;
25176#line 3988
25177  __cil_tmp15 = (__u16 )__cil_tmp14;
25178#line 3988
25179  wr_reg16(info, 140U, __cil_tmp15);
25180#line 3991
25181  __cil_tmp16 = (__u16 )768;
25182#line 3991
25183  wr_reg16(info, 142U, __cil_tmp16);
25184#line 3993
25185  rdma_reset(info);
25186#line 3995
25187  info->rx_enabled = (bool )0;
25188#line 3996
25189  info->rx_restart = (bool )0;
25190  }
25191#line 3997
25192  return;
25193}
25194}
25195#line 3999 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
25196static void rx_start(struct slgt_info *info ) 
25197{ unsigned short val ;
25198  __u16 tmp ;
25199  __u16 tmp___0 ;
25200  __u16 tmp___1 ;
25201  __u16 tmp___2 ;
25202  __u16 tmp___3 ;
25203  __u16 tmp___4 ;
25204  __u16 tmp___5 ;
25205  int __cil_tmp10 ;
25206  int __cil_tmp11 ;
25207  __u16 __cil_tmp12 ;
25208  __u16 __cil_tmp13 ;
25209  unsigned int __cil_tmp14 ;
25210  unsigned int __cil_tmp15 ;
25211  unsigned int __cil_tmp16 ;
25212  unsigned int __cil_tmp17 ;
25213  int __cil_tmp18 ;
25214  __u16 __cil_tmp19 ;
25215  int __cil_tmp20 ;
25216  __u16 __cil_tmp21 ;
25217  unsigned int __cil_tmp22 ;
25218  int __cil_tmp23 ;
25219  int __cil_tmp24 ;
25220  __u16 __cil_tmp25 ;
25221  unsigned int __cil_tmp26 ;
25222  unsigned int __cil_tmp27 ;
25223  int __cil_tmp28 ;
25224  __u16 __cil_tmp29 ;
25225  unsigned long __cil_tmp30 ;
25226  unsigned int __cil_tmp31 ;
25227  unsigned int __cil_tmp32 ;
25228  int __cil_tmp33 ;
25229  __u16 __cil_tmp34 ;
25230  struct slgt_desc *__cil_tmp35 ;
25231  unsigned int __cil_tmp36 ;
25232  unsigned long __cil_tmp37 ;
25233  unsigned int __cil_tmp38 ;
25234  unsigned int __cil_tmp39 ;
25235  int __cil_tmp40 ;
25236  __u16 __cil_tmp41 ;
25237  unsigned int __cil_tmp42 ;
25238  unsigned int __cil_tmp43 ;
25239  int __cil_tmp44 ;
25240  __u16 __cil_tmp45 ;
25241
25242  {
25243  {
25244#line 4003
25245  tmp = rd_reg16(info, 140U);
25246#line 4003
25247  __cil_tmp10 = (int )tmp;
25248#line 4003
25249  __cil_tmp11 = __cil_tmp10 & 64255;
25250#line 4003
25251  __cil_tmp12 = (__u16 )__cil_tmp11;
25252#line 4003
25253  wr_reg16(info, 140U, __cil_tmp12);
25254#line 4006
25255  __cil_tmp13 = (__u16 )256;
25256#line 4006
25257  wr_reg16(info, 142U, __cil_tmp13);
25258#line 4009
25259  tmp___0 = rd_reg16(info, 134U);
25260#line 4009
25261  __cil_tmp14 = (unsigned int )tmp___0;
25262#line 4009
25263  __cil_tmp15 = __cil_tmp14 & 65533U;
25264#line 4009
25265  val = (unsigned short )__cil_tmp15;
25266#line 4010
25267  __cil_tmp16 = (unsigned int )val;
25268#line 4010
25269  __cil_tmp17 = __cil_tmp16 | 4U;
25270#line 4010
25271  __cil_tmp18 = (int )__cil_tmp17;
25272#line 4010
25273  __cil_tmp19 = (__u16 )__cil_tmp18;
25274#line 4010
25275  wr_reg16(info, 134U, __cil_tmp19);
25276#line 4011
25277  __cil_tmp20 = (int )val;
25278#line 4011
25279  __cil_tmp21 = (__u16 )__cil_tmp20;
25280#line 4011
25281  wr_reg16(info, 134U, __cil_tmp21);
25282#line 4013
25283  rdma_reset(info);
25284#line 4014
25285  reset_rbufs(info);
25286  }
25287  {
25288#line 4016
25289  __cil_tmp22 = info->rx_pio;
25290#line 4016
25291  if (__cil_tmp22 != 0U) {
25292    {
25293#line 4018
25294    tmp___1 = rd_reg16(info, 140U);
25295#line 4018
25296    __cil_tmp23 = (int )tmp___1;
25297#line 4018
25298    __cil_tmp24 = __cil_tmp23 & 49151;
25299#line 4018
25300    __cil_tmp25 = (__u16 )__cil_tmp24;
25301#line 4018
25302    wr_reg16(info, 140U, __cil_tmp25);
25303#line 4019
25304    tmp___2 = rd_reg16(info, 140U);
25305#line 4019
25306    __cil_tmp26 = (unsigned int )tmp___2;
25307#line 4019
25308    __cil_tmp27 = __cil_tmp26 | 1024U;
25309#line 4019
25310    __cil_tmp28 = (int )__cil_tmp27;
25311#line 4019
25312    __cil_tmp29 = (__u16 )__cil_tmp28;
25313#line 4019
25314    wr_reg16(info, 140U, __cil_tmp29);
25315    }
25316    {
25317#line 4020
25318    __cil_tmp30 = info->params.mode;
25319#line 4020
25320    if (__cil_tmp30 == 1UL) {
25321      {
25322#line 4022
25323      wr_reg32(info, 144U, 64U);
25324      }
25325    } else {
25326
25327    }
25328    }
25329  } else {
25330    {
25331#line 4026
25332    tmp___3 = rd_reg16(info, 140U);
25333#line 4026
25334    __cil_tmp31 = (unsigned int )tmp___3;
25335#line 4026
25336    __cil_tmp32 = __cil_tmp31 | 16384U;
25337#line 4026
25338    __cil_tmp33 = (int )__cil_tmp32;
25339#line 4026
25340    __cil_tmp34 = (__u16 )__cil_tmp33;
25341#line 4026
25342    wr_reg16(info, 140U, __cil_tmp34);
25343#line 4028
25344    __cil_tmp35 = info->rbufs;
25345#line 4028
25346    __cil_tmp36 = __cil_tmp35->pdesc;
25347#line 4028
25348    wr_reg32(info, 152U, __cil_tmp36);
25349    }
25350    {
25351#line 4030
25352    __cil_tmp37 = info->params.mode;
25353#line 4030
25354    if (__cil_tmp37 != 1UL) {
25355      {
25356#line 4032
25357      wr_reg32(info, 144U, 5U);
25358      }
25359    } else {
25360      {
25361#line 4035
25362      wr_reg32(info, 144U, 69U);
25363      }
25364    }
25365    }
25366  }
25367  }
25368  {
25369#line 4039
25370  tmp___4 = rd_reg16(info, 140U);
25371#line 4039
25372  __cil_tmp38 = (unsigned int )tmp___4;
25373#line 4039
25374  __cil_tmp39 = __cil_tmp38 | 256U;
25375#line 4039
25376  __cil_tmp40 = (int )__cil_tmp39;
25377#line 4039
25378  __cil_tmp41 = (__u16 )__cil_tmp40;
25379#line 4039
25380  wr_reg16(info, 140U, __cil_tmp41);
25381#line 4042
25382  tmp___5 = rd_reg16(info, 134U);
25383#line 4042
25384  __cil_tmp42 = (unsigned int )tmp___5;
25385#line 4042
25386  __cil_tmp43 = __cil_tmp42 | 2U;
25387#line 4042
25388  __cil_tmp44 = (int )__cil_tmp43;
25389#line 4042
25390  __cil_tmp45 = (__u16 )__cil_tmp44;
25391#line 4042
25392  wr_reg16(info, 134U, __cil_tmp45);
25393#line 4044
25394  info->rx_restart = (bool )0;
25395#line 4045
25396  info->rx_enabled = (bool )1;
25397  }
25398#line 4046
25399  return;
25400}
25401}
25402#line 4048 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
25403static void tx_start(struct slgt_info *info ) 
25404{ __u16 tmp ;
25405  __u16 tmp___0 ;
25406  __u16 tmp___1 ;
25407  __u16 tmp___2 ;
25408  __u16 tmp___3 ;
25409  bool __cil_tmp7 ;
25410  short __cil_tmp8 ;
25411  int __cil_tmp9 ;
25412  int __cil_tmp10 ;
25413  int __cil_tmp11 ;
25414  unsigned short __cil_tmp12 ;
25415  int __cil_tmp13 ;
25416  __u16 __cil_tmp14 ;
25417  unsigned int __cil_tmp15 ;
25418  unsigned long __cil_tmp16 ;
25419  struct slgt_desc *__cil_tmp17 ;
25420  struct slgt_desc *__cil_tmp18 ;
25421  __le16 __cil_tmp19 ;
25422  unsigned int __cil_tmp20 ;
25423  unsigned long __cil_tmp21 ;
25424  unsigned short __cil_tmp22 ;
25425  int __cil_tmp23 ;
25426  int __cil_tmp24 ;
25427  unsigned char __cil_tmp25 ;
25428  int __cil_tmp26 ;
25429  int __cil_tmp27 ;
25430  unsigned char __cil_tmp28 ;
25431  unsigned int __cil_tmp29 ;
25432  unsigned int __cil_tmp30 ;
25433  int __cil_tmp31 ;
25434  int __cil_tmp32 ;
25435  __u16 __cil_tmp33 ;
25436  unsigned int __cil_tmp34 ;
25437  unsigned int __cil_tmp35 ;
25438  int __cil_tmp36 ;
25439  __u16 __cil_tmp37 ;
25440  __u16 __cil_tmp38 ;
25441  int __cil_tmp39 ;
25442  int __cil_tmp40 ;
25443  __u16 __cil_tmp41 ;
25444  unsigned int __cil_tmp42 ;
25445  unsigned int __cil_tmp43 ;
25446  int __cil_tmp44 ;
25447  __u16 __cil_tmp45 ;
25448  __u16 __cil_tmp46 ;
25449  unsigned int __cil_tmp47 ;
25450  unsigned long __cil_tmp48 ;
25451  struct slgt_desc *__cil_tmp49 ;
25452  struct slgt_desc *__cil_tmp50 ;
25453  unsigned int __cil_tmp51 ;
25454
25455  {
25456  {
25457#line 4050
25458  __cil_tmp7 = info->tx_enabled;
25459#line 4050
25460  if (! __cil_tmp7) {
25461    {
25462#line 4051
25463    tmp = rd_reg16(info, 130U);
25464#line 4051
25465    __cil_tmp8 = (short )tmp;
25466#line 4051
25467    __cil_tmp9 = (int )__cil_tmp8;
25468#line 4051
25469    __cil_tmp10 = __cil_tmp9 & 65529;
25470#line 4051
25471    __cil_tmp11 = __cil_tmp10 | 2;
25472#line 4051
25473    __cil_tmp12 = (unsigned short )__cil_tmp11;
25474#line 4051
25475    __cil_tmp13 = (int )__cil_tmp12;
25476#line 4051
25477    __cil_tmp14 = (__u16 )__cil_tmp13;
25478#line 4051
25479    wr_reg16(info, 130U, __cil_tmp14);
25480#line 4053
25481    info->tx_enabled = (bool )1;
25482    }
25483  } else {
25484
25485  }
25486  }
25487  {
25488#line 4056
25489  __cil_tmp15 = info->tbuf_start;
25490#line 4056
25491  __cil_tmp16 = (unsigned long )__cil_tmp15;
25492#line 4056
25493  __cil_tmp17 = info->tbufs;
25494#line 4056
25495  __cil_tmp18 = __cil_tmp17 + __cil_tmp16;
25496#line 4056
25497  __cil_tmp19 = __cil_tmp18->count;
25498#line 4056
25499  __cil_tmp20 = (unsigned int )__cil_tmp19;
25500#line 4056
25501  if (__cil_tmp20 != 0U) {
25502#line 4057
25503    info->drop_rts_on_tx_done = (bool )0;
25504    {
25505#line 4059
25506    __cil_tmp21 = info->params.mode;
25507#line 4059
25508    if (__cil_tmp21 != 1UL) {
25509      {
25510#line 4060
25511      __cil_tmp22 = info->params.flags;
25512#line 4060
25513      __cil_tmp23 = (int )__cil_tmp22;
25514#line 4060
25515      __cil_tmp24 = __cil_tmp23 & 128;
25516#line 4060
25517      if (__cil_tmp24 != 0) {
25518        {
25519#line 4061
25520        get_signals(info);
25521        }
25522        {
25523#line 4062
25524        __cil_tmp25 = info->signals;
25525#line 4062
25526        __cil_tmp26 = (int )__cil_tmp25;
25527#line 4062
25528        __cil_tmp27 = __cil_tmp26 & 32;
25529#line 4062
25530        if (__cil_tmp27 == 0) {
25531          {
25532#line 4063
25533          __cil_tmp28 = info->signals;
25534#line 4063
25535          __cil_tmp29 = (unsigned int )__cil_tmp28;
25536#line 4063
25537          __cil_tmp30 = __cil_tmp29 | 32U;
25538#line 4063
25539          info->signals = (unsigned char )__cil_tmp30;
25540#line 4064
25541          set_signals(info);
25542#line 4065
25543          info->drop_rts_on_tx_done = (bool )1;
25544          }
25545        } else {
25546
25547        }
25548        }
25549      } else {
25550
25551      }
25552      }
25553      {
25554#line 4069
25555      tmp___0 = rd_reg16(info, 140U);
25556#line 4069
25557      __cil_tmp31 = (int )tmp___0;
25558#line 4069
25559      __cil_tmp32 = __cil_tmp31 & 57343;
25560#line 4069
25561      __cil_tmp33 = (__u16 )__cil_tmp32;
25562#line 4069
25563      wr_reg16(info, 140U, __cil_tmp33);
25564#line 4070
25565      tmp___1 = rd_reg16(info, 140U);
25566#line 4070
25567      __cil_tmp34 = (unsigned int )tmp___1;
25568#line 4070
25569      __cil_tmp35 = __cil_tmp34 | 6144U;
25570#line 4070
25571      __cil_tmp36 = (int )__cil_tmp35;
25572#line 4070
25573      __cil_tmp37 = (__u16 )__cil_tmp36;
25574#line 4070
25575      wr_reg16(info, 140U, __cil_tmp37);
25576#line 4072
25577      __cil_tmp38 = (__u16 )6144;
25578#line 4072
25579      wr_reg16(info, 142U, __cil_tmp38);
25580      }
25581    } else {
25582      {
25583#line 4074
25584      tmp___2 = rd_reg16(info, 140U);
25585#line 4074
25586      __cil_tmp39 = (int )tmp___2;
25587#line 4074
25588      __cil_tmp40 = __cil_tmp39 & 57343;
25589#line 4074
25590      __cil_tmp41 = (__u16 )__cil_tmp40;
25591#line 4074
25592      wr_reg16(info, 140U, __cil_tmp41);
25593#line 4075
25594      tmp___3 = rd_reg16(info, 140U);
25595#line 4075
25596      __cil_tmp42 = (unsigned int )tmp___3;
25597#line 4075
25598      __cil_tmp43 = __cil_tmp42 | 4096U;
25599#line 4075
25600      __cil_tmp44 = (int )__cil_tmp43;
25601#line 4075
25602      __cil_tmp45 = (__u16 )__cil_tmp44;
25603#line 4075
25604      wr_reg16(info, 140U, __cil_tmp45);
25605#line 4077
25606      __cil_tmp46 = (__u16 )4096;
25607#line 4077
25608      wr_reg16(info, 142U, __cil_tmp46);
25609      }
25610    }
25611    }
25612    {
25613#line 4080
25614    __cil_tmp47 = info->tbuf_start;
25615#line 4080
25616    __cil_tmp48 = (unsigned long )__cil_tmp47;
25617#line 4080
25618    __cil_tmp49 = info->tbufs;
25619#line 4080
25620    __cil_tmp50 = __cil_tmp49 + __cil_tmp48;
25621#line 4080
25622    __cil_tmp51 = __cil_tmp50->pdesc;
25623#line 4080
25624    wr_reg32(info, 156U, __cil_tmp51);
25625#line 4081
25626    wr_reg32(info, 148U, 5U);
25627#line 4082
25628    info->tx_active = (bool )1;
25629    }
25630  } else {
25631
25632  }
25633  }
25634#line 4084
25635  return;
25636}
25637}
25638#line 4086 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
25639static void tx_stop(struct slgt_info *info ) 
25640{ unsigned short val ;
25641  __u16 tmp ;
25642  __u16 tmp___0 ;
25643  struct timer_list *__cil_tmp5 ;
25644  unsigned int __cil_tmp6 ;
25645  unsigned int __cil_tmp7 ;
25646  unsigned int __cil_tmp8 ;
25647  unsigned int __cil_tmp9 ;
25648  int __cil_tmp10 ;
25649  __u16 __cil_tmp11 ;
25650  int __cil_tmp12 ;
25651  int __cil_tmp13 ;
25652  __u16 __cil_tmp14 ;
25653  __u16 __cil_tmp15 ;
25654
25655  {
25656  {
25657#line 4090
25658  __cil_tmp5 = & info->tx_timer;
25659#line 4090
25660  del_timer(__cil_tmp5);
25661#line 4092
25662  tdma_reset(info);
25663#line 4095
25664  tmp = rd_reg16(info, 130U);
25665#line 4095
25666  __cil_tmp6 = (unsigned int )tmp;
25667#line 4095
25668  __cil_tmp7 = __cil_tmp6 & 65533U;
25669#line 4095
25670  val = (unsigned short )__cil_tmp7;
25671#line 4096
25672  __cil_tmp8 = (unsigned int )val;
25673#line 4096
25674  __cil_tmp9 = __cil_tmp8 | 4U;
25675#line 4096
25676  __cil_tmp10 = (int )__cil_tmp9;
25677#line 4096
25678  __cil_tmp11 = (__u16 )__cil_tmp10;
25679#line 4096
25680  wr_reg16(info, 130U, __cil_tmp11);
25681#line 4098
25682  tmp___0 = rd_reg16(info, 140U);
25683#line 4098
25684  __cil_tmp12 = (int )tmp___0;
25685#line 4098
25686  __cil_tmp13 = __cil_tmp12 & 51199;
25687#line 4098
25688  __cil_tmp14 = (__u16 )__cil_tmp13;
25689#line 4098
25690  wr_reg16(info, 140U, __cil_tmp14);
25691#line 4101
25692  __cil_tmp15 = (__u16 )6144;
25693#line 4101
25694  wr_reg16(info, 142U, __cil_tmp15);
25695#line 4103
25696  reset_tbufs(info);
25697#line 4105
25698  info->tx_enabled = (bool )0;
25699#line 4106
25700  info->tx_active = (bool )0;
25701  }
25702#line 4107
25703  return;
25704}
25705}
25706#line 4109 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
25707static void reset_port(struct slgt_info *info ) 
25708{ __u16 tmp ;
25709  unsigned char *__cil_tmp3 ;
25710  unsigned long __cil_tmp4 ;
25711  unsigned char *__cil_tmp5 ;
25712  unsigned long __cil_tmp6 ;
25713  unsigned char __cil_tmp7 ;
25714  unsigned int __cil_tmp8 ;
25715  unsigned int __cil_tmp9 ;
25716  int __cil_tmp10 ;
25717  int __cil_tmp11 ;
25718  __u16 __cil_tmp12 ;
25719
25720  {
25721  {
25722#line 4111
25723  __cil_tmp3 = (unsigned char *)0;
25724#line 4111
25725  __cil_tmp4 = (unsigned long )__cil_tmp3;
25726#line 4111
25727  __cil_tmp5 = info->reg_addr;
25728#line 4111
25729  __cil_tmp6 = (unsigned long )__cil_tmp5;
25730#line 4111
25731  if (__cil_tmp6 == __cil_tmp4) {
25732#line 4112
25733    return;
25734  } else {
25735
25736  }
25737  }
25738  {
25739#line 4114
25740  tx_stop(info);
25741#line 4115
25742  rx_stop(info);
25743#line 4117
25744  __cil_tmp7 = info->signals;
25745#line 4117
25746  __cil_tmp8 = (unsigned int )__cil_tmp7;
25747#line 4117
25748  __cil_tmp9 = __cil_tmp8 & 95U;
25749#line 4117
25750  info->signals = (unsigned char )__cil_tmp9;
25751#line 4118
25752  set_signals(info);
25753#line 4120
25754  tmp = rd_reg16(info, 140U);
25755#line 4120
25756  __cil_tmp10 = (int )tmp;
25757#line 4120
25758  __cil_tmp11 = __cil_tmp10 & 49166;
25759#line 4120
25760  __cil_tmp12 = (__u16 )__cil_tmp11;
25761#line 4120
25762  wr_reg16(info, 140U, __cil_tmp12);
25763  }
25764#line 4121
25765  return;
25766}
25767}
25768#line 4123 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
25769static void reset_adapter(struct slgt_info *info ) 
25770{ int i ;
25771  struct slgt_info *__cil_tmp3 ;
25772  unsigned long __cil_tmp4 ;
25773  struct slgt_info *__cil_tmp5 ;
25774  unsigned long __cil_tmp6 ;
25775  struct slgt_info *__cil_tmp7 ;
25776  int __cil_tmp8 ;
25777
25778  {
25779#line 4126
25780  i = 0;
25781#line 4126
25782  goto ldv_37653;
25783  ldv_37652: ;
25784  {
25785#line 4127
25786  __cil_tmp3 = (struct slgt_info *)0;
25787#line 4127
25788  __cil_tmp4 = (unsigned long )__cil_tmp3;
25789#line 4127
25790  __cil_tmp5 = info->port_array[i];
25791#line 4127
25792  __cil_tmp6 = (unsigned long )__cil_tmp5;
25793#line 4127
25794  if (__cil_tmp6 != __cil_tmp4) {
25795    {
25796#line 4128
25797    __cil_tmp7 = info->port_array[i];
25798#line 4128
25799    reset_port(__cil_tmp7);
25800    }
25801  } else {
25802
25803  }
25804  }
25805#line 4126
25806  i = i + 1;
25807  ldv_37653: ;
25808  {
25809#line 4126
25810  __cil_tmp8 = info->port_count;
25811#line 4126
25812  if (__cil_tmp8 > i) {
25813#line 4127
25814    goto ldv_37652;
25815  } else {
25816#line 4129
25817    goto ldv_37654;
25818  }
25819  }
25820  ldv_37654: ;
25821#line 4131
25822  return;
25823}
25824}
25825#line 4132 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
25826static void async_mode(struct slgt_info *info ) 
25827{ unsigned short val ;
25828  __u16 tmp ;
25829  __u32 tmp___0 ;
25830  __u16 tmp___1 ;
25831  int __cil_tmp6 ;
25832  int __cil_tmp7 ;
25833  __u16 __cil_tmp8 ;
25834  unsigned int __cil_tmp9 ;
25835  unsigned int __cil_tmp10 ;
25836  unsigned int __cil_tmp11 ;
25837  unsigned int __cil_tmp12 ;
25838  unsigned char __cil_tmp13 ;
25839  unsigned int __cil_tmp14 ;
25840  unsigned int __cil_tmp15 ;
25841  unsigned int __cil_tmp16 ;
25842  unsigned char __cil_tmp17 ;
25843  unsigned int __cil_tmp18 ;
25844  unsigned int __cil_tmp19 ;
25845  unsigned int __cil_tmp20 ;
25846  unsigned char __cil_tmp21 ;
25847  int __cil_tmp22 ;
25848  unsigned char __cil_tmp23 ;
25849  int __cil_tmp24 ;
25850  unsigned char __cil_tmp25 ;
25851  int __cil_tmp26 ;
25852  unsigned int __cil_tmp27 ;
25853  unsigned int __cil_tmp28 ;
25854  unsigned int __cil_tmp29 ;
25855  unsigned int __cil_tmp30 ;
25856  unsigned int __cil_tmp31 ;
25857  unsigned int __cil_tmp32 ;
25858  unsigned char __cil_tmp33 ;
25859  unsigned int __cil_tmp34 ;
25860  unsigned int __cil_tmp35 ;
25861  unsigned int __cil_tmp36 ;
25862  unsigned short __cil_tmp37 ;
25863  int __cil_tmp38 ;
25864  int __cil_tmp39 ;
25865  unsigned int __cil_tmp40 ;
25866  unsigned int __cil_tmp41 ;
25867  int __cil_tmp42 ;
25868  __u16 __cil_tmp43 ;
25869  unsigned char __cil_tmp44 ;
25870  unsigned int __cil_tmp45 ;
25871  unsigned int __cil_tmp46 ;
25872  unsigned int __cil_tmp47 ;
25873  unsigned char __cil_tmp48 ;
25874  unsigned int __cil_tmp49 ;
25875  unsigned int __cil_tmp50 ;
25876  unsigned int __cil_tmp51 ;
25877  unsigned char __cil_tmp52 ;
25878  int __cil_tmp53 ;
25879  unsigned char __cil_tmp54 ;
25880  int __cil_tmp55 ;
25881  unsigned char __cil_tmp56 ;
25882  int __cil_tmp57 ;
25883  unsigned int __cil_tmp58 ;
25884  unsigned int __cil_tmp59 ;
25885  unsigned int __cil_tmp60 ;
25886  unsigned int __cil_tmp61 ;
25887  unsigned int __cil_tmp62 ;
25888  unsigned int __cil_tmp63 ;
25889  unsigned short __cil_tmp64 ;
25890  int __cil_tmp65 ;
25891  int __cil_tmp66 ;
25892  unsigned int __cil_tmp67 ;
25893  unsigned int __cil_tmp68 ;
25894  int __cil_tmp69 ;
25895  __u16 __cil_tmp70 ;
25896  __u8 __cil_tmp71 ;
25897  unsigned int __cil_tmp72 ;
25898  unsigned long __cil_tmp73 ;
25899  unsigned long __cil_tmp74 ;
25900  unsigned long __cil_tmp75 ;
25901  unsigned int __cil_tmp76 ;
25902  unsigned long __cil_tmp77 ;
25903  unsigned int __cil_tmp78 ;
25904  unsigned int __cil_tmp79 ;
25905  unsigned long __cil_tmp80 ;
25906  u32 __cil_tmp81 ;
25907  u32 __cil_tmp82 ;
25908  unsigned long __cil_tmp83 ;
25909  unsigned long __cil_tmp84 ;
25910  unsigned int __cil_tmp85 ;
25911  unsigned long __cil_tmp86 ;
25912  unsigned long __cil_tmp87 ;
25913  unsigned int __cil_tmp88 ;
25914  unsigned int __cil_tmp89 ;
25915  unsigned long __cil_tmp90 ;
25916  u32 __cil_tmp91 ;
25917  u32 __cil_tmp92 ;
25918  unsigned long __cil_tmp93 ;
25919  u32 __cil_tmp94 ;
25920  u32 __cil_tmp95 ;
25921  unsigned long __cil_tmp96 ;
25922  u32 __cil_tmp97 ;
25923  u32 __cil_tmp98 ;
25924  unsigned long __cil_tmp99 ;
25925  u32 __cil_tmp100 ;
25926  u32 __cil_tmp101 ;
25927  int __cil_tmp102 ;
25928  __u16 __cil_tmp103 ;
25929  unsigned int __cil_tmp104 ;
25930  unsigned int __cil_tmp105 ;
25931  int __cil_tmp106 ;
25932  __u16 __cil_tmp107 ;
25933  unsigned char __cil_tmp108 ;
25934  unsigned int __cil_tmp109 ;
25935
25936  {
25937  {
25938#line 4136
25939  tmp = rd_reg16(info, 140U);
25940#line 4136
25941  __cil_tmp6 = (int )tmp;
25942#line 4136
25943  __cil_tmp7 = __cil_tmp6 & 49166;
25944#line 4136
25945  __cil_tmp8 = (__u16 )__cil_tmp7;
25946#line 4136
25947  wr_reg16(info, 140U, __cil_tmp8);
25948#line 4137
25949  tx_stop(info);
25950#line 4138
25951  rx_stop(info);
25952#line 4158
25953  val = (unsigned short)16384;
25954  }
25955  {
25956#line 4160
25957  __cil_tmp9 = info->if_mode;
25958#line 4160
25959  __cil_tmp10 = __cil_tmp9 & 16U;
25960#line 4160
25961  if (__cil_tmp10 != 0U) {
25962#line 4161
25963    __cil_tmp11 = (unsigned int )val;
25964#line 4161
25965    __cil_tmp12 = __cil_tmp11 | 128U;
25966#line 4161
25967    val = (unsigned short )__cil_tmp12;
25968  } else {
25969
25970  }
25971  }
25972  {
25973#line 4163
25974  __cil_tmp13 = info->params.parity;
25975#line 4163
25976  __cil_tmp14 = (unsigned int )__cil_tmp13;
25977#line 4163
25978  if (__cil_tmp14 != 0U) {
25979#line 4164
25980    __cil_tmp15 = (unsigned int )val;
25981#line 4164
25982    __cil_tmp16 = __cil_tmp15 | 512U;
25983#line 4164
25984    val = (unsigned short )__cil_tmp16;
25985    {
25986#line 4165
25987    __cil_tmp17 = info->params.parity;
25988#line 4165
25989    __cil_tmp18 = (unsigned int )__cil_tmp17;
25990#line 4165
25991    if (__cil_tmp18 == 2U) {
25992#line 4166
25993      __cil_tmp19 = (unsigned int )val;
25994#line 4166
25995      __cil_tmp20 = __cil_tmp19 | 256U;
25996#line 4166
25997      val = (unsigned short )__cil_tmp20;
25998    } else {
25999
26000    }
26001    }
26002  } else {
26003
26004  }
26005  }
26006  {
26007#line 4171
26008  __cil_tmp21 = info->params.data_bits;
26009#line 4171
26010  __cil_tmp22 = (int )__cil_tmp21;
26011#line 4171
26012  if (__cil_tmp22 == 6) {
26013#line 4171
26014    goto case_6;
26015  } else {
26016    {
26017#line 4172
26018    __cil_tmp23 = info->params.data_bits;
26019#line 4172
26020    __cil_tmp24 = (int )__cil_tmp23;
26021#line 4172
26022    if (__cil_tmp24 == 7) {
26023#line 4172
26024      goto case_7;
26025    } else {
26026      {
26027#line 4173
26028      __cil_tmp25 = info->params.data_bits;
26029#line 4173
26030      __cil_tmp26 = (int )__cil_tmp25;
26031#line 4173
26032      if (__cil_tmp26 == 8) {
26033#line 4173
26034        goto case_8;
26035      } else
26036#line 4169
26037      if (0) {
26038        case_6: 
26039#line 4171
26040        __cil_tmp27 = (unsigned int )val;
26041#line 4171
26042        __cil_tmp28 = __cil_tmp27 | 16U;
26043#line 4171
26044        val = (unsigned short )__cil_tmp28;
26045#line 4171
26046        goto ldv_37660;
26047        case_7: 
26048#line 4172
26049        __cil_tmp29 = (unsigned int )val;
26050#line 4172
26051        __cil_tmp30 = __cil_tmp29 | 32U;
26052#line 4172
26053        val = (unsigned short )__cil_tmp30;
26054#line 4172
26055        goto ldv_37660;
26056        case_8: 
26057#line 4173
26058        __cil_tmp31 = (unsigned int )val;
26059#line 4173
26060        __cil_tmp32 = __cil_tmp31 | 48U;
26061#line 4173
26062        val = (unsigned short )__cil_tmp32;
26063#line 4173
26064        goto ldv_37660;
26065      } else {
26066
26067      }
26068      }
26069    }
26070    }
26071  }
26072  }
26073  ldv_37660: ;
26074  {
26075#line 4176
26076  __cil_tmp33 = info->params.stop_bits;
26077#line 4176
26078  __cil_tmp34 = (unsigned int )__cil_tmp33;
26079#line 4176
26080  if (__cil_tmp34 != 1U) {
26081#line 4177
26082    __cil_tmp35 = (unsigned int )val;
26083#line 4177
26084    __cil_tmp36 = __cil_tmp35 | 8U;
26085#line 4177
26086    val = (unsigned short )__cil_tmp36;
26087  } else {
26088
26089  }
26090  }
26091  {
26092#line 4179
26093  __cil_tmp37 = info->params.flags;
26094#line 4179
26095  __cil_tmp38 = (int )__cil_tmp37;
26096#line 4179
26097  __cil_tmp39 = __cil_tmp38 & 32;
26098#line 4179
26099  if (__cil_tmp39 != 0) {
26100#line 4180
26101    __cil_tmp40 = (unsigned int )val;
26102#line 4180
26103    __cil_tmp41 = __cil_tmp40 | 1U;
26104#line 4180
26105    val = (unsigned short )__cil_tmp41;
26106  } else {
26107
26108  }
26109  }
26110  {
26111#line 4182
26112  __cil_tmp42 = (int )val;
26113#line 4182
26114  __cil_tmp43 = (__u16 )__cil_tmp42;
26115#line 4182
26116  wr_reg16(info, 130U, __cil_tmp43);
26117#line 4201
26118  val = (unsigned short)16384;
26119  }
26120  {
26121#line 4203
26122  __cil_tmp44 = info->params.parity;
26123#line 4203
26124  __cil_tmp45 = (unsigned int )__cil_tmp44;
26125#line 4203
26126  if (__cil_tmp45 != 0U) {
26127#line 4204
26128    __cil_tmp46 = (unsigned int )val;
26129#line 4204
26130    __cil_tmp47 = __cil_tmp46 | 512U;
26131#line 4204
26132    val = (unsigned short )__cil_tmp47;
26133    {
26134#line 4205
26135    __cil_tmp48 = info->params.parity;
26136#line 4205
26137    __cil_tmp49 = (unsigned int )__cil_tmp48;
26138#line 4205
26139    if (__cil_tmp49 == 2U) {
26140#line 4206
26141      __cil_tmp50 = (unsigned int )val;
26142#line 4206
26143      __cil_tmp51 = __cil_tmp50 | 256U;
26144#line 4206
26145      val = (unsigned short )__cil_tmp51;
26146    } else {
26147
26148    }
26149    }
26150  } else {
26151
26152  }
26153  }
26154  {
26155#line 4211
26156  __cil_tmp52 = info->params.data_bits;
26157#line 4211
26158  __cil_tmp53 = (int )__cil_tmp52;
26159#line 4211
26160  if (__cil_tmp53 == 6) {
26161#line 4211
26162    goto case_6___0;
26163  } else {
26164    {
26165#line 4212
26166    __cil_tmp54 = info->params.data_bits;
26167#line 4212
26168    __cil_tmp55 = (int )__cil_tmp54;
26169#line 4212
26170    if (__cil_tmp55 == 7) {
26171#line 4212
26172      goto case_7___0;
26173    } else {
26174      {
26175#line 4213
26176      __cil_tmp56 = info->params.data_bits;
26177#line 4213
26178      __cil_tmp57 = (int )__cil_tmp56;
26179#line 4213
26180      if (__cil_tmp57 == 8) {
26181#line 4213
26182        goto case_8___0;
26183      } else
26184#line 4209
26185      if (0) {
26186        case_6___0: 
26187#line 4211
26188        __cil_tmp58 = (unsigned int )val;
26189#line 4211
26190        __cil_tmp59 = __cil_tmp58 | 16U;
26191#line 4211
26192        val = (unsigned short )__cil_tmp59;
26193#line 4211
26194        goto ldv_37664;
26195        case_7___0: 
26196#line 4212
26197        __cil_tmp60 = (unsigned int )val;
26198#line 4212
26199        __cil_tmp61 = __cil_tmp60 | 32U;
26200#line 4212
26201        val = (unsigned short )__cil_tmp61;
26202#line 4212
26203        goto ldv_37664;
26204        case_8___0: 
26205#line 4213
26206        __cil_tmp62 = (unsigned int )val;
26207#line 4213
26208        __cil_tmp63 = __cil_tmp62 | 48U;
26209#line 4213
26210        val = (unsigned short )__cil_tmp63;
26211#line 4213
26212        goto ldv_37664;
26213      } else {
26214
26215      }
26216      }
26217    }
26218    }
26219  }
26220  }
26221  ldv_37664: ;
26222  {
26223#line 4216
26224  __cil_tmp64 = info->params.flags;
26225#line 4216
26226  __cil_tmp65 = (int )__cil_tmp64;
26227#line 4216
26228  __cil_tmp66 = __cil_tmp65 & 64;
26229#line 4216
26230  if (__cil_tmp66 != 0) {
26231#line 4217
26232    __cil_tmp67 = (unsigned int )val;
26233#line 4217
26234    __cil_tmp68 = __cil_tmp67 | 1U;
26235#line 4217
26236    val = (unsigned short )__cil_tmp68;
26237  } else {
26238
26239  }
26240  }
26241  {
26242#line 4219
26243  __cil_tmp69 = (int )val;
26244#line 4219
26245  __cil_tmp70 = (__u16 )__cil_tmp69;
26246#line 4219
26247  wr_reg16(info, 134U, __cil_tmp70);
26248#line 4230
26249  __cil_tmp71 = (__u8 )105;
26250#line 4230
26251  wr_reg8(info, 137U, __cil_tmp71);
26252#line 4232
26253  msc_set_vcr(info);
26254#line 4253
26255  val = (unsigned short)49153;
26256#line 4255
26257  tmp___0 = rd_reg32(info, 4U);
26258  }
26259  {
26260#line 4255
26261  __cil_tmp72 = tmp___0 & 256U;
26262#line 4255
26263  if (__cil_tmp72 != 0U) {
26264    {
26265#line 4255
26266    __cil_tmp73 = info->params.data_rate;
26267#line 4255
26268    if (__cil_tmp73 != 0UL) {
26269      {
26270#line 4255
26271      __cil_tmp74 = info->params.data_rate;
26272#line 4255
26273      __cil_tmp75 = __cil_tmp74 * 16UL;
26274#line 4255
26275      __cil_tmp76 = info->base_clock;
26276#line 4255
26277      __cil_tmp77 = (unsigned long )__cil_tmp76;
26278#line 4255
26279      if (__cil_tmp77 < __cil_tmp75) {
26280        {
26281#line 4259
26282        __cil_tmp78 = (unsigned int )val;
26283#line 4259
26284        __cil_tmp79 = __cil_tmp78 | 8U;
26285#line 4259
26286        val = (unsigned short )__cil_tmp79;
26287#line 4260
26288        __cil_tmp80 = info->params.data_rate;
26289#line 4260
26290        __cil_tmp81 = (u32 )__cil_tmp80;
26291#line 4260
26292        __cil_tmp82 = __cil_tmp81 * 8U;
26293#line 4260
26294        set_rate(info, __cil_tmp82);
26295        }
26296      } else {
26297        {
26298#line 4255
26299        __cil_tmp83 = info->params.data_rate;
26300#line 4255
26301        __cil_tmp84 = __cil_tmp83 * 16UL;
26302#line 4255
26303        __cil_tmp85 = info->base_clock;
26304#line 4255
26305        __cil_tmp86 = (unsigned long )__cil_tmp85;
26306#line 4255
26307        __cil_tmp87 = __cil_tmp86 % __cil_tmp84;
26308#line 4255
26309        if (__cil_tmp87 != 0UL) {
26310          {
26311#line 4259
26312          __cil_tmp88 = (unsigned int )val;
26313#line 4259
26314          __cil_tmp89 = __cil_tmp88 | 8U;
26315#line 4259
26316          val = (unsigned short )__cil_tmp89;
26317#line 4260
26318          __cil_tmp90 = info->params.data_rate;
26319#line 4260
26320          __cil_tmp91 = (u32 )__cil_tmp90;
26321#line 4260
26322          __cil_tmp92 = __cil_tmp91 * 8U;
26323#line 4260
26324          set_rate(info, __cil_tmp92);
26325          }
26326        } else {
26327          {
26328#line 4263
26329          __cil_tmp93 = info->params.data_rate;
26330#line 4263
26331          __cil_tmp94 = (u32 )__cil_tmp93;
26332#line 4263
26333          __cil_tmp95 = __cil_tmp94 * 16U;
26334#line 4263
26335          set_rate(info, __cil_tmp95);
26336          }
26337        }
26338        }
26339      }
26340      }
26341    } else {
26342      {
26343#line 4263
26344      __cil_tmp96 = info->params.data_rate;
26345#line 4263
26346      __cil_tmp97 = (u32 )__cil_tmp96;
26347#line 4263
26348      __cil_tmp98 = __cil_tmp97 * 16U;
26349#line 4263
26350      set_rate(info, __cil_tmp98);
26351      }
26352    }
26353    }
26354  } else {
26355    {
26356#line 4263
26357    __cil_tmp99 = info->params.data_rate;
26358#line 4263
26359    __cil_tmp100 = (u32 )__cil_tmp99;
26360#line 4263
26361    __cil_tmp101 = __cil_tmp100 * 16U;
26362#line 4263
26363    set_rate(info, __cil_tmp101);
26364    }
26365  }
26366  }
26367  {
26368#line 4265
26369  __cil_tmp102 = (int )val;
26370#line 4265
26371  __cil_tmp103 = (__u16 )__cil_tmp102;
26372#line 4265
26373  wr_reg16(info, 140U, __cil_tmp103);
26374#line 4267
26375  tmp___1 = rd_reg16(info, 140U);
26376#line 4267
26377  __cil_tmp104 = (unsigned int )tmp___1;
26378#line 4267
26379  __cil_tmp105 = __cil_tmp104 | 768U;
26380#line 4267
26381  __cil_tmp106 = (int )__cil_tmp105;
26382#line 4267
26383  __cil_tmp107 = (__u16 )__cil_tmp106;
26384#line 4267
26385  wr_reg16(info, 140U, __cil_tmp107);
26386  }
26387  {
26388#line 4269
26389  __cil_tmp108 = info->params.loopback;
26390#line 4269
26391  __cil_tmp109 = (unsigned int )__cil_tmp108;
26392#line 4269
26393  if (__cil_tmp109 != 0U) {
26394    {
26395#line 4270
26396    enable_loopback(info);
26397    }
26398  } else {
26399
26400  }
26401  }
26402#line 4271
26403  return;
26404}
26405}
26406#line 4273 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
26407static void sync_mode(struct slgt_info *info ) 
26408{ unsigned short val ;
26409  __u16 tmp ;
26410  __u16 tmp___0 ;
26411  int __cil_tmp5 ;
26412  int __cil_tmp6 ;
26413  __u16 __cil_tmp7 ;
26414  unsigned long __cil_tmp8 ;
26415  int __cil_tmp9 ;
26416  unsigned long __cil_tmp10 ;
26417  int __cil_tmp11 ;
26418  unsigned long __cil_tmp12 ;
26419  int __cil_tmp13 ;
26420  unsigned long __cil_tmp14 ;
26421  int __cil_tmp15 ;
26422  unsigned int __cil_tmp16 ;
26423  unsigned int __cil_tmp17 ;
26424  unsigned int __cil_tmp18 ;
26425  unsigned int __cil_tmp19 ;
26426  unsigned int __cil_tmp20 ;
26427  unsigned int __cil_tmp21 ;
26428  unsigned int __cil_tmp22 ;
26429  unsigned int __cil_tmp23 ;
26430  unsigned int __cil_tmp24 ;
26431  unsigned int __cil_tmp25 ;
26432  unsigned int __cil_tmp26 ;
26433  unsigned int __cil_tmp27 ;
26434  unsigned char __cil_tmp28 ;
26435  int __cil_tmp29 ;
26436  unsigned char __cil_tmp30 ;
26437  int __cil_tmp31 ;
26438  unsigned char __cil_tmp32 ;
26439  int __cil_tmp33 ;
26440  unsigned char __cil_tmp34 ;
26441  int __cil_tmp35 ;
26442  unsigned char __cil_tmp36 ;
26443  int __cil_tmp37 ;
26444  unsigned char __cil_tmp38 ;
26445  int __cil_tmp39 ;
26446  unsigned char __cil_tmp40 ;
26447  int __cil_tmp41 ;
26448  unsigned int __cil_tmp42 ;
26449  unsigned int __cil_tmp43 ;
26450  unsigned int __cil_tmp44 ;
26451  unsigned int __cil_tmp45 ;
26452  unsigned int __cil_tmp46 ;
26453  unsigned int __cil_tmp47 ;
26454  unsigned int __cil_tmp48 ;
26455  unsigned int __cil_tmp49 ;
26456  unsigned int __cil_tmp50 ;
26457  unsigned int __cil_tmp51 ;
26458  unsigned int __cil_tmp52 ;
26459  unsigned int __cil_tmp53 ;
26460  unsigned int __cil_tmp54 ;
26461  unsigned int __cil_tmp55 ;
26462  unsigned short __cil_tmp56 ;
26463  int __cil_tmp57 ;
26464  int __cil_tmp58 ;
26465  unsigned short __cil_tmp59 ;
26466  int __cil_tmp60 ;
26467  int __cil_tmp61 ;
26468  unsigned int __cil_tmp62 ;
26469  unsigned int __cil_tmp63 ;
26470  unsigned int __cil_tmp64 ;
26471  unsigned int __cil_tmp65 ;
26472  unsigned char __cil_tmp66 ;
26473  unsigned int __cil_tmp67 ;
26474  unsigned int __cil_tmp68 ;
26475  unsigned int __cil_tmp69 ;
26476  unsigned char __cil_tmp70 ;
26477  int __cil_tmp71 ;
26478  unsigned char __cil_tmp72 ;
26479  int __cil_tmp73 ;
26480  unsigned char __cil_tmp74 ;
26481  int __cil_tmp75 ;
26482  unsigned int __cil_tmp76 ;
26483  unsigned int __cil_tmp77 ;
26484  unsigned int __cil_tmp78 ;
26485  unsigned int __cil_tmp79 ;
26486  unsigned int __cil_tmp80 ;
26487  unsigned int __cil_tmp81 ;
26488  unsigned short __cil_tmp82 ;
26489  int __cil_tmp83 ;
26490  int __cil_tmp84 ;
26491  unsigned int __cil_tmp85 ;
26492  unsigned int __cil_tmp86 ;
26493  int __cil_tmp87 ;
26494  __u16 __cil_tmp88 ;
26495  unsigned char __cil_tmp89 ;
26496  int __cil_tmp90 ;
26497  unsigned char __cil_tmp91 ;
26498  int __cil_tmp92 ;
26499  unsigned char __cil_tmp93 ;
26500  int __cil_tmp94 ;
26501  unsigned char __cil_tmp95 ;
26502  int __cil_tmp96 ;
26503  unsigned char __cil_tmp97 ;
26504  int __cil_tmp98 ;
26505  unsigned char __cil_tmp99 ;
26506  int __cil_tmp100 ;
26507  __u8 __cil_tmp101 ;
26508  unsigned long __cil_tmp102 ;
26509  int __cil_tmp103 ;
26510  unsigned long __cil_tmp104 ;
26511  int __cil_tmp105 ;
26512  unsigned long __cil_tmp106 ;
26513  int __cil_tmp107 ;
26514  unsigned long __cil_tmp108 ;
26515  int __cil_tmp109 ;
26516  unsigned int __cil_tmp110 ;
26517  unsigned int __cil_tmp111 ;
26518  unsigned int __cil_tmp112 ;
26519  unsigned int __cil_tmp113 ;
26520  unsigned int __cil_tmp114 ;
26521  unsigned int __cil_tmp115 ;
26522  unsigned int __cil_tmp116 ;
26523  unsigned int __cil_tmp117 ;
26524  unsigned char __cil_tmp118 ;
26525  int __cil_tmp119 ;
26526  unsigned char __cil_tmp120 ;
26527  int __cil_tmp121 ;
26528  unsigned char __cil_tmp122 ;
26529  int __cil_tmp123 ;
26530  unsigned char __cil_tmp124 ;
26531  int __cil_tmp125 ;
26532  unsigned char __cil_tmp126 ;
26533  int __cil_tmp127 ;
26534  unsigned char __cil_tmp128 ;
26535  int __cil_tmp129 ;
26536  unsigned char __cil_tmp130 ;
26537  int __cil_tmp131 ;
26538  unsigned int __cil_tmp132 ;
26539  unsigned int __cil_tmp133 ;
26540  unsigned int __cil_tmp134 ;
26541  unsigned int __cil_tmp135 ;
26542  unsigned int __cil_tmp136 ;
26543  unsigned int __cil_tmp137 ;
26544  unsigned int __cil_tmp138 ;
26545  unsigned int __cil_tmp139 ;
26546  unsigned int __cil_tmp140 ;
26547  unsigned int __cil_tmp141 ;
26548  unsigned int __cil_tmp142 ;
26549  unsigned int __cil_tmp143 ;
26550  unsigned int __cil_tmp144 ;
26551  unsigned int __cil_tmp145 ;
26552  unsigned short __cil_tmp146 ;
26553  int __cil_tmp147 ;
26554  int __cil_tmp148 ;
26555  unsigned short __cil_tmp149 ;
26556  int __cil_tmp150 ;
26557  int __cil_tmp151 ;
26558  unsigned int __cil_tmp152 ;
26559  unsigned int __cil_tmp153 ;
26560  unsigned int __cil_tmp154 ;
26561  unsigned int __cil_tmp155 ;
26562  unsigned short __cil_tmp156 ;
26563  int __cil_tmp157 ;
26564  int __cil_tmp158 ;
26565  unsigned int __cil_tmp159 ;
26566  unsigned int __cil_tmp160 ;
26567  int __cil_tmp161 ;
26568  __u16 __cil_tmp162 ;
26569  unsigned short __cil_tmp163 ;
26570  int __cil_tmp164 ;
26571  int __cil_tmp165 ;
26572  unsigned short __cil_tmp166 ;
26573  int __cil_tmp167 ;
26574  int __cil_tmp168 ;
26575  unsigned int __cil_tmp169 ;
26576  unsigned int __cil_tmp170 ;
26577  unsigned int __cil_tmp171 ;
26578  unsigned int __cil_tmp172 ;
26579  unsigned short __cil_tmp173 ;
26580  int __cil_tmp174 ;
26581  int __cil_tmp175 ;
26582  unsigned int __cil_tmp176 ;
26583  unsigned int __cil_tmp177 ;
26584  unsigned short __cil_tmp178 ;
26585  int __cil_tmp179 ;
26586  int __cil_tmp180 ;
26587  unsigned int __cil_tmp181 ;
26588  unsigned int __cil_tmp182 ;
26589  unsigned short __cil_tmp183 ;
26590  int __cil_tmp184 ;
26591  int __cil_tmp185 ;
26592  unsigned int __cil_tmp186 ;
26593  unsigned int __cil_tmp187 ;
26594  unsigned short __cil_tmp188 ;
26595  int __cil_tmp189 ;
26596  int __cil_tmp190 ;
26597  unsigned int __cil_tmp191 ;
26598  unsigned int __cil_tmp192 ;
26599  unsigned short __cil_tmp193 ;
26600  short __cil_tmp194 ;
26601  int __cil_tmp195 ;
26602  unsigned int __cil_tmp196 ;
26603  unsigned int __cil_tmp197 ;
26604  unsigned long __cil_tmp198 ;
26605  unsigned int __cil_tmp199 ;
26606  unsigned int __cil_tmp200 ;
26607  unsigned char __cil_tmp201 ;
26608  int __cil_tmp202 ;
26609  __u8 __cil_tmp203 ;
26610  unsigned short __cil_tmp204 ;
26611  int __cil_tmp205 ;
26612  int __cil_tmp206 ;
26613  unsigned char __cil_tmp207 ;
26614  int __cil_tmp208 ;
26615  unsigned char __cil_tmp209 ;
26616  int __cil_tmp210 ;
26617  unsigned char __cil_tmp211 ;
26618  int __cil_tmp212 ;
26619  unsigned char __cil_tmp213 ;
26620  int __cil_tmp214 ;
26621  int __cil_tmp215 ;
26622  int __cil_tmp216 ;
26623  int __cil_tmp217 ;
26624  __u16 __cil_tmp218 ;
26625  unsigned long __cil_tmp219 ;
26626  u32 __cil_tmp220 ;
26627  u32 __cil_tmp221 ;
26628  unsigned long __cil_tmp222 ;
26629  u32 __cil_tmp223 ;
26630  __u16 __cil_tmp224 ;
26631  unsigned char __cil_tmp225 ;
26632  unsigned int __cil_tmp226 ;
26633
26634  {
26635  {
26636#line 4277
26637  tmp = rd_reg16(info, 140U);
26638#line 4277
26639  __cil_tmp5 = (int )tmp;
26640#line 4277
26641  __cil_tmp6 = __cil_tmp5 & 49166;
26642#line 4277
26643  __cil_tmp7 = (__u16 )__cil_tmp6;
26644#line 4277
26645  wr_reg16(info, 140U, __cil_tmp7);
26646#line 4278
26647  tx_stop(info);
26648#line 4279
26649  rx_stop(info);
26650#line 4301
26651  val = (unsigned short)4;
26652  }
26653  {
26654#line 4304
26655  __cil_tmp8 = info->params.mode;
26656#line 4304
26657  __cil_tmp9 = (int )__cil_tmp8;
26658#line 4304
26659  if (__cil_tmp9 == 8) {
26660#line 4304
26661    goto case_8;
26662  } else {
26663    {
26664#line 4307
26665    __cil_tmp10 = info->params.mode;
26666#line 4307
26667    __cil_tmp11 = (int )__cil_tmp10;
26668#line 4307
26669    if (__cil_tmp11 == 3) {
26670#line 4307
26671      goto case_3;
26672    } else {
26673      {
26674#line 4308
26675      __cil_tmp12 = info->params.mode;
26676#line 4308
26677      __cil_tmp13 = (int )__cil_tmp12;
26678#line 4308
26679      if (__cil_tmp13 == 4) {
26680#line 4308
26681        goto case_4;
26682      } else {
26683        {
26684#line 4309
26685        __cil_tmp14 = info->params.mode;
26686#line 4309
26687        __cil_tmp15 = (int )__cil_tmp14;
26688#line 4309
26689        if (__cil_tmp15 == 6) {
26690#line 4309
26691          goto case_6;
26692        } else
26693#line 4303
26694        if (0) {
26695          case_8: 
26696#line 4305
26697          __cil_tmp16 = (unsigned int )val;
26698#line 4305
26699          __cil_tmp17 = __cil_tmp16 | 40960U;
26700#line 4305
26701          val = (unsigned short )__cil_tmp17;
26702#line 4306
26703          goto ldv_37672;
26704          case_3: 
26705#line 4307
26706          __cil_tmp18 = (unsigned int )val;
26707#line 4307
26708          __cil_tmp19 = __cil_tmp18 | 24576U;
26709#line 4307
26710          val = (unsigned short )__cil_tmp19;
26711#line 4307
26712          goto ldv_37672;
26713          case_4: 
26714#line 4308
26715          __cil_tmp20 = (unsigned int )val;
26716#line 4308
26717          __cil_tmp21 = __cil_tmp20 | 32768U;
26718#line 4308
26719          val = (unsigned short )__cil_tmp21;
26720#line 4308
26721          goto ldv_37672;
26722          case_6: 
26723#line 4309
26724          __cil_tmp22 = (unsigned int )val;
26725#line 4309
26726          __cil_tmp23 = __cil_tmp22 | 8192U;
26727#line 4309
26728          val = (unsigned short )__cil_tmp23;
26729#line 4309
26730          goto ldv_37672;
26731        } else {
26732
26733        }
26734        }
26735      }
26736      }
26737    }
26738    }
26739  }
26740  }
26741  ldv_37672: ;
26742  {
26743#line 4311
26744  __cil_tmp24 = info->if_mode;
26745#line 4311
26746  __cil_tmp25 = __cil_tmp24 & 16U;
26747#line 4311
26748  if (__cil_tmp25 != 0U) {
26749#line 4312
26750    __cil_tmp26 = (unsigned int )val;
26751#line 4312
26752    __cil_tmp27 = __cil_tmp26 | 128U;
26753#line 4312
26754    val = (unsigned short )__cil_tmp27;
26755  } else {
26756
26757  }
26758  }
26759  {
26760#line 4316
26761  __cil_tmp28 = info->params.encoding;
26762#line 4316
26763  __cil_tmp29 = (int )__cil_tmp28;
26764#line 4316
26765  if (__cil_tmp29 == 1) {
26766#line 4316
26767    goto case_1;
26768  } else {
26769    {
26770#line 4317
26771    __cil_tmp30 = info->params.encoding;
26772#line 4317
26773    __cil_tmp31 = (int )__cil_tmp30;
26774#line 4317
26775    if (__cil_tmp31 == 2) {
26776#line 4317
26777      goto case_2;
26778    } else {
26779      {
26780#line 4318
26781      __cil_tmp32 = info->params.encoding;
26782#line 4318
26783      __cil_tmp33 = (int )__cil_tmp32;
26784#line 4318
26785      if (__cil_tmp33 == 3) {
26786#line 4318
26787        goto case_3___0;
26788      } else {
26789        {
26790#line 4319
26791        __cil_tmp34 = info->params.encoding;
26792#line 4319
26793        __cil_tmp35 = (int )__cil_tmp34;
26794#line 4319
26795        if (__cil_tmp35 == 4) {
26796#line 4319
26797          goto case_4___0;
26798        } else {
26799          {
26800#line 4320
26801          __cil_tmp36 = info->params.encoding;
26802#line 4320
26803          __cil_tmp37 = (int )__cil_tmp36;
26804#line 4320
26805          if (__cil_tmp37 == 5) {
26806#line 4320
26807            goto case_5;
26808          } else {
26809            {
26810#line 4321
26811            __cil_tmp38 = info->params.encoding;
26812#line 4321
26813            __cil_tmp39 = (int )__cil_tmp38;
26814#line 4321
26815            if (__cil_tmp39 == 6) {
26816#line 4321
26817              goto case_6___0;
26818            } else {
26819              {
26820#line 4322
26821              __cil_tmp40 = info->params.encoding;
26822#line 4322
26823              __cil_tmp41 = (int )__cil_tmp40;
26824#line 4322
26825              if (__cil_tmp41 == 7) {
26826#line 4322
26827                goto case_7;
26828              } else
26829#line 4314
26830              if (0) {
26831                case_1: 
26832#line 4316
26833                __cil_tmp42 = (unsigned int )val;
26834#line 4316
26835                __cil_tmp43 = __cil_tmp42 | 1024U;
26836#line 4316
26837                val = (unsigned short )__cil_tmp43;
26838#line 4316
26839                goto ldv_37677;
26840                case_2: 
26841#line 4317
26842                __cil_tmp44 = (unsigned int )val;
26843#line 4317
26844                __cil_tmp45 = __cil_tmp44 | 2048U;
26845#line 4317
26846                val = (unsigned short )__cil_tmp45;
26847#line 4317
26848                goto ldv_37677;
26849                case_3___0: 
26850#line 4318
26851                __cil_tmp46 = (unsigned int )val;
26852#line 4318
26853                __cil_tmp47 = __cil_tmp46 | 3072U;
26854#line 4318
26855                val = (unsigned short )__cil_tmp47;
26856#line 4318
26857                goto ldv_37677;
26858                case_4___0: 
26859#line 4319
26860                __cil_tmp48 = (unsigned int )val;
26861#line 4319
26862                __cil_tmp49 = __cil_tmp48 | 4096U;
26863#line 4319
26864                val = (unsigned short )__cil_tmp49;
26865#line 4319
26866                goto ldv_37677;
26867                case_5: 
26868#line 4320
26869                __cil_tmp50 = (unsigned int )val;
26870#line 4320
26871                __cil_tmp51 = __cil_tmp50 | 5120U;
26872#line 4320
26873                val = (unsigned short )__cil_tmp51;
26874#line 4320
26875                goto ldv_37677;
26876                case_6___0: 
26877#line 4321
26878                __cil_tmp52 = (unsigned int )val;
26879#line 4321
26880                __cil_tmp53 = __cil_tmp52 | 6144U;
26881#line 4321
26882                val = (unsigned short )__cil_tmp53;
26883#line 4321
26884                goto ldv_37677;
26885                case_7: 
26886#line 4322
26887                __cil_tmp54 = (unsigned int )val;
26888#line 4322
26889                __cil_tmp55 = __cil_tmp54 | 7168U;
26890#line 4322
26891                val = (unsigned short )__cil_tmp55;
26892#line 4322
26893                goto ldv_37677;
26894              } else {
26895
26896              }
26897              }
26898            }
26899            }
26900          }
26901          }
26902        }
26903        }
26904      }
26905      }
26906    }
26907    }
26908  }
26909  }
26910  ldv_37677: ;
26911  {
26912#line 4327
26913  __cil_tmp56 = info->params.crc_type;
26914#line 4327
26915  __cil_tmp57 = (int )__cil_tmp56;
26916#line 4327
26917  __cil_tmp58 = __cil_tmp57 & 255;
26918#line 4327
26919  if (__cil_tmp58 == 1) {
26920#line 4327
26921    goto case_1___0;
26922  } else {
26923    {
26924#line 4328
26925    __cil_tmp59 = info->params.crc_type;
26926#line 4328
26927    __cil_tmp60 = (int )__cil_tmp59;
26928#line 4328
26929    __cil_tmp61 = __cil_tmp60 & 255;
26930#line 4328
26931    if (__cil_tmp61 == 2) {
26932#line 4328
26933      goto case_2___0;
26934    } else
26935#line 4325
26936    if (0) {
26937      case_1___0: 
26938#line 4327
26939      __cil_tmp62 = (unsigned int )val;
26940#line 4327
26941      __cil_tmp63 = __cil_tmp62 | 512U;
26942#line 4327
26943      val = (unsigned short )__cil_tmp63;
26944#line 4327
26945      goto ldv_37685;
26946      case_2___0: 
26947#line 4328
26948      __cil_tmp64 = (unsigned int )val;
26949#line 4328
26950      __cil_tmp65 = __cil_tmp64 | 768U;
26951#line 4328
26952      val = (unsigned short )__cil_tmp65;
26953#line 4328
26954      goto ldv_37685;
26955    } else {
26956
26957    }
26958    }
26959  }
26960  }
26961  ldv_37685: ;
26962  {
26963#line 4331
26964  __cil_tmp66 = info->params.preamble;
26965#line 4331
26966  __cil_tmp67 = (unsigned int )__cil_tmp66;
26967#line 4331
26968  if (__cil_tmp67 != 0U) {
26969#line 4332
26970    __cil_tmp68 = (unsigned int )val;
26971#line 4332
26972    __cil_tmp69 = __cil_tmp68 | 64U;
26973#line 4332
26974    val = (unsigned short )__cil_tmp69;
26975  } else {
26976
26977  }
26978  }
26979  {
26980#line 4336
26981  __cil_tmp70 = info->params.preamble_length;
26982#line 4336
26983  __cil_tmp71 = (int )__cil_tmp70;
26984#line 4336
26985  if (__cil_tmp71 == 1) {
26986#line 4336
26987    goto case_1___1;
26988  } else {
26989    {
26990#line 4337
26991    __cil_tmp72 = info->params.preamble_length;
26992#line 4337
26993    __cil_tmp73 = (int )__cil_tmp72;
26994#line 4337
26995    if (__cil_tmp73 == 2) {
26996#line 4337
26997      goto case_2___1;
26998    } else {
26999      {
27000#line 4338
27001      __cil_tmp74 = info->params.preamble_length;
27002#line 4338
27003      __cil_tmp75 = (int )__cil_tmp74;
27004#line 4338
27005      if (__cil_tmp75 == 3) {
27006#line 4338
27007        goto case_3___1;
27008      } else
27009#line 4334
27010      if (0) {
27011        case_1___1: 
27012#line 4336
27013        __cil_tmp76 = (unsigned int )val;
27014#line 4336
27015        __cil_tmp77 = __cil_tmp76 | 32U;
27016#line 4336
27017        val = (unsigned short )__cil_tmp77;
27018#line 4336
27019        goto ldv_37688;
27020        case_2___1: 
27021#line 4337
27022        __cil_tmp78 = (unsigned int )val;
27023#line 4337
27024        __cil_tmp79 = __cil_tmp78 | 16U;
27025#line 4337
27026        val = (unsigned short )__cil_tmp79;
27027#line 4337
27028        goto ldv_37688;
27029        case_3___1: 
27030#line 4338
27031        __cil_tmp80 = (unsigned int )val;
27032#line 4338
27033        __cil_tmp81 = __cil_tmp80 | 48U;
27034#line 4338
27035        val = (unsigned short )__cil_tmp81;
27036#line 4338
27037        goto ldv_37688;
27038      } else {
27039
27040      }
27041      }
27042    }
27043    }
27044  }
27045  }
27046  ldv_37688: ;
27047  {
27048#line 4341
27049  __cil_tmp82 = info->params.flags;
27050#line 4341
27051  __cil_tmp83 = (int )__cil_tmp82;
27052#line 4341
27053  __cil_tmp84 = __cil_tmp83 & 32;
27054#line 4341
27055  if (__cil_tmp84 != 0) {
27056#line 4342
27057    __cil_tmp85 = (unsigned int )val;
27058#line 4342
27059    __cil_tmp86 = __cil_tmp85 | 1U;
27060#line 4342
27061    val = (unsigned short )__cil_tmp86;
27062  } else {
27063
27064  }
27065  }
27066  {
27067#line 4344
27068  __cil_tmp87 = (int )val;
27069#line 4344
27070  __cil_tmp88 = (__u16 )__cil_tmp87;
27071#line 4344
27072  wr_reg16(info, 130U, __cil_tmp88);
27073  }
27074  {
27075#line 4350
27076  __cil_tmp89 = info->params.preamble;
27077#line 4350
27078  __cil_tmp90 = (int )__cil_tmp89;
27079#line 4350
27080  if (__cil_tmp90 == 2) {
27081#line 4350
27082    goto case_2___2;
27083  } else {
27084    {
27085#line 4351
27086    __cil_tmp91 = info->params.preamble;
27087#line 4351
27088    __cil_tmp92 = (int )__cil_tmp91;
27089#line 4351
27090    if (__cil_tmp92 == 5) {
27091#line 4351
27092      goto case_5___0;
27093    } else {
27094      {
27095#line 4352
27096      __cil_tmp93 = info->params.preamble;
27097#line 4352
27098      __cil_tmp94 = (int )__cil_tmp93;
27099#line 4352
27100      if (__cil_tmp94 == 1) {
27101#line 4352
27102        goto case_1___2;
27103      } else {
27104        {
27105#line 4353
27106        __cil_tmp95 = info->params.preamble;
27107#line 4353
27108        __cil_tmp96 = (int )__cil_tmp95;
27109#line 4353
27110        if (__cil_tmp96 == 3) {
27111#line 4353
27112          goto case_3___2;
27113        } else {
27114          {
27115#line 4354
27116          __cil_tmp97 = info->params.preamble;
27117#line 4354
27118          __cil_tmp98 = (int )__cil_tmp97;
27119#line 4354
27120          if (__cil_tmp98 == 4) {
27121#line 4354
27122            goto case_4___1;
27123          } else {
27124#line 4355
27125            goto switch_default;
27126#line 4348
27127            if (0) {
27128              case_2___2: 
27129#line 4350
27130              val = (unsigned short)126;
27131#line 4350
27132              goto ldv_37692;
27133              case_5___0: 
27134#line 4351
27135              val = (unsigned short)255;
27136#line 4351
27137              goto ldv_37692;
27138              case_1___2: 
27139#line 4352
27140              val = (unsigned short)0;
27141#line 4352
27142              goto ldv_37692;
27143              case_3___2: 
27144#line 4353
27145              val = (unsigned short)85;
27146#line 4353
27147              goto ldv_37692;
27148              case_4___1: 
27149#line 4354
27150              val = (unsigned short)170;
27151#line 4354
27152              goto ldv_37692;
27153              switch_default: 
27154#line 4355
27155              val = (unsigned short)126;
27156#line 4355
27157              goto ldv_37692;
27158            } else {
27159
27160            }
27161          }
27162          }
27163        }
27164        }
27165      }
27166      }
27167    }
27168    }
27169  }
27170  }
27171  ldv_37692: 
27172  {
27173#line 4357
27174  __cil_tmp99 = (unsigned char )val;
27175#line 4357
27176  __cil_tmp100 = (int )__cil_tmp99;
27177#line 4357
27178  __cil_tmp101 = (__u8 )__cil_tmp100;
27179#line 4357
27180  wr_reg8(info, 133U, __cil_tmp101);
27181#line 4376
27182  val = (unsigned short)0;
27183  }
27184  {
27185#line 4379
27186  __cil_tmp102 = info->params.mode;
27187#line 4379
27188  __cil_tmp103 = (int )__cil_tmp102;
27189#line 4379
27190  if (__cil_tmp103 == 8) {
27191#line 4379
27192    goto case_8___0;
27193  } else {
27194    {
27195#line 4382
27196    __cil_tmp104 = info->params.mode;
27197#line 4382
27198    __cil_tmp105 = (int )__cil_tmp104;
27199#line 4382
27200    if (__cil_tmp105 == 3) {
27201#line 4382
27202      goto case_3___3;
27203    } else {
27204      {
27205#line 4383
27206      __cil_tmp106 = info->params.mode;
27207#line 4383
27208      __cil_tmp107 = (int )__cil_tmp106;
27209#line 4383
27210      if (__cil_tmp107 == 4) {
27211#line 4383
27212        goto case_4___2;
27213      } else {
27214        {
27215#line 4384
27216        __cil_tmp108 = info->params.mode;
27217#line 4384
27218        __cil_tmp109 = (int )__cil_tmp108;
27219#line 4384
27220        if (__cil_tmp109 == 6) {
27221#line 4384
27222          goto case_6___1;
27223        } else
27224#line 4378
27225        if (0) {
27226          case_8___0: 
27227#line 4380
27228          __cil_tmp110 = (unsigned int )val;
27229#line 4380
27230          __cil_tmp111 = __cil_tmp110 | 40960U;
27231#line 4380
27232          val = (unsigned short )__cil_tmp111;
27233#line 4381
27234          goto ldv_37699;
27235          case_3___3: 
27236#line 4382
27237          __cil_tmp112 = (unsigned int )val;
27238#line 4382
27239          __cil_tmp113 = __cil_tmp112 | 24576U;
27240#line 4382
27241          val = (unsigned short )__cil_tmp113;
27242#line 4382
27243          goto ldv_37699;
27244          case_4___2: 
27245#line 4383
27246          __cil_tmp114 = (unsigned int )val;
27247#line 4383
27248          __cil_tmp115 = __cil_tmp114 | 32768U;
27249#line 4383
27250          val = (unsigned short )__cil_tmp115;
27251#line 4383
27252          goto ldv_37699;
27253          case_6___1: 
27254#line 4384
27255          __cil_tmp116 = (unsigned int )val;
27256#line 4384
27257          __cil_tmp117 = __cil_tmp116 | 8192U;
27258#line 4384
27259          val = (unsigned short )__cil_tmp117;
27260#line 4384
27261          goto ldv_37699;
27262        } else {
27263
27264        }
27265        }
27266      }
27267      }
27268    }
27269    }
27270  }
27271  }
27272  ldv_37699: ;
27273  {
27274#line 4389
27275  __cil_tmp118 = info->params.encoding;
27276#line 4389
27277  __cil_tmp119 = (int )__cil_tmp118;
27278#line 4389
27279  if (__cil_tmp119 == 1) {
27280#line 4389
27281    goto case_1___3;
27282  } else {
27283    {
27284#line 4390
27285    __cil_tmp120 = info->params.encoding;
27286#line 4390
27287    __cil_tmp121 = (int )__cil_tmp120;
27288#line 4390
27289    if (__cil_tmp121 == 2) {
27290#line 4390
27291      goto case_2___3;
27292    } else {
27293      {
27294#line 4391
27295      __cil_tmp122 = info->params.encoding;
27296#line 4391
27297      __cil_tmp123 = (int )__cil_tmp122;
27298#line 4391
27299      if (__cil_tmp123 == 3) {
27300#line 4391
27301        goto case_3___4;
27302      } else {
27303        {
27304#line 4392
27305        __cil_tmp124 = info->params.encoding;
27306#line 4392
27307        __cil_tmp125 = (int )__cil_tmp124;
27308#line 4392
27309        if (__cil_tmp125 == 4) {
27310#line 4392
27311          goto case_4___3;
27312        } else {
27313          {
27314#line 4393
27315          __cil_tmp126 = info->params.encoding;
27316#line 4393
27317          __cil_tmp127 = (int )__cil_tmp126;
27318#line 4393
27319          if (__cil_tmp127 == 5) {
27320#line 4393
27321            goto case_5___1;
27322          } else {
27323            {
27324#line 4394
27325            __cil_tmp128 = info->params.encoding;
27326#line 4394
27327            __cil_tmp129 = (int )__cil_tmp128;
27328#line 4394
27329            if (__cil_tmp129 == 6) {
27330#line 4394
27331              goto case_6___2;
27332            } else {
27333              {
27334#line 4395
27335              __cil_tmp130 = info->params.encoding;
27336#line 4395
27337              __cil_tmp131 = (int )__cil_tmp130;
27338#line 4395
27339              if (__cil_tmp131 == 7) {
27340#line 4395
27341                goto case_7___0;
27342              } else
27343#line 4387
27344              if (0) {
27345                case_1___3: 
27346#line 4389
27347                __cil_tmp132 = (unsigned int )val;
27348#line 4389
27349                __cil_tmp133 = __cil_tmp132 | 1024U;
27350#line 4389
27351                val = (unsigned short )__cil_tmp133;
27352#line 4389
27353                goto ldv_37704;
27354                case_2___3: 
27355#line 4390
27356                __cil_tmp134 = (unsigned int )val;
27357#line 4390
27358                __cil_tmp135 = __cil_tmp134 | 2048U;
27359#line 4390
27360                val = (unsigned short )__cil_tmp135;
27361#line 4390
27362                goto ldv_37704;
27363                case_3___4: 
27364#line 4391
27365                __cil_tmp136 = (unsigned int )val;
27366#line 4391
27367                __cil_tmp137 = __cil_tmp136 | 3072U;
27368#line 4391
27369                val = (unsigned short )__cil_tmp137;
27370#line 4391
27371                goto ldv_37704;
27372                case_4___3: 
27373#line 4392
27374                __cil_tmp138 = (unsigned int )val;
27375#line 4392
27376                __cil_tmp139 = __cil_tmp138 | 4096U;
27377#line 4392
27378                val = (unsigned short )__cil_tmp139;
27379#line 4392
27380                goto ldv_37704;
27381                case_5___1: 
27382#line 4393
27383                __cil_tmp140 = (unsigned int )val;
27384#line 4393
27385                __cil_tmp141 = __cil_tmp140 | 5120U;
27386#line 4393
27387                val = (unsigned short )__cil_tmp141;
27388#line 4393
27389                goto ldv_37704;
27390                case_6___2: 
27391#line 4394
27392                __cil_tmp142 = (unsigned int )val;
27393#line 4394
27394                __cil_tmp143 = __cil_tmp142 | 6144U;
27395#line 4394
27396                val = (unsigned short )__cil_tmp143;
27397#line 4394
27398                goto ldv_37704;
27399                case_7___0: 
27400#line 4395
27401                __cil_tmp144 = (unsigned int )val;
27402#line 4395
27403                __cil_tmp145 = __cil_tmp144 | 7168U;
27404#line 4395
27405                val = (unsigned short )__cil_tmp145;
27406#line 4395
27407                goto ldv_37704;
27408              } else {
27409
27410              }
27411              }
27412            }
27413            }
27414          }
27415          }
27416        }
27417        }
27418      }
27419      }
27420    }
27421    }
27422  }
27423  }
27424  ldv_37704: ;
27425  {
27426#line 4400
27427  __cil_tmp146 = info->params.crc_type;
27428#line 4400
27429  __cil_tmp147 = (int )__cil_tmp146;
27430#line 4400
27431  __cil_tmp148 = __cil_tmp147 & 255;
27432#line 4400
27433  if (__cil_tmp148 == 1) {
27434#line 4400
27435    goto case_1___4;
27436  } else {
27437    {
27438#line 4401
27439    __cil_tmp149 = info->params.crc_type;
27440#line 4401
27441    __cil_tmp150 = (int )__cil_tmp149;
27442#line 4401
27443    __cil_tmp151 = __cil_tmp150 & 255;
27444#line 4401
27445    if (__cil_tmp151 == 2) {
27446#line 4401
27447      goto case_2___4;
27448    } else
27449#line 4398
27450    if (0) {
27451      case_1___4: 
27452#line 4400
27453      __cil_tmp152 = (unsigned int )val;
27454#line 4400
27455      __cil_tmp153 = __cil_tmp152 | 512U;
27456#line 4400
27457      val = (unsigned short )__cil_tmp153;
27458#line 4400
27459      goto ldv_37712;
27460      case_2___4: 
27461#line 4401
27462      __cil_tmp154 = (unsigned int )val;
27463#line 4401
27464      __cil_tmp155 = __cil_tmp154 | 768U;
27465#line 4401
27466      val = (unsigned short )__cil_tmp155;
27467#line 4401
27468      goto ldv_37712;
27469    } else {
27470
27471    }
27472    }
27473  }
27474  }
27475  ldv_37712: ;
27476  {
27477#line 4404
27478  __cil_tmp156 = info->params.flags;
27479#line 4404
27480  __cil_tmp157 = (int )__cil_tmp156;
27481#line 4404
27482  __cil_tmp158 = __cil_tmp157 & 64;
27483#line 4404
27484  if (__cil_tmp158 != 0) {
27485#line 4405
27486    __cil_tmp159 = (unsigned int )val;
27487#line 4405
27488    __cil_tmp160 = __cil_tmp159 | 1U;
27489#line 4405
27490    val = (unsigned short )__cil_tmp160;
27491  } else {
27492
27493  }
27494  }
27495  {
27496#line 4407
27497  __cil_tmp161 = (int )val;
27498#line 4407
27499  __cil_tmp162 = (__u16 )__cil_tmp161;
27500#line 4407
27501  wr_reg16(info, 134U, __cil_tmp162);
27502#line 4416
27503  val = (unsigned short)0;
27504  }
27505  {
27506#line 4418
27507  __cil_tmp163 = info->params.flags;
27508#line 4418
27509  __cil_tmp164 = (int )__cil_tmp163;
27510#line 4418
27511  __cil_tmp165 = __cil_tmp164 & 2048;
27512#line 4418
27513  if (__cil_tmp165 != 0) {
27514    {
27515#line 4423
27516    __cil_tmp166 = info->params.flags;
27517#line 4423
27518    __cil_tmp167 = (int )__cil_tmp166;
27519#line 4423
27520    __cil_tmp168 = __cil_tmp167 & 256;
27521#line 4423
27522    if (__cil_tmp168 != 0) {
27523#line 4424
27524      __cil_tmp169 = (unsigned int )val;
27525#line 4424
27526      __cil_tmp170 = __cil_tmp169 | 96U;
27527#line 4424
27528      val = (unsigned short )__cil_tmp170;
27529    } else {
27530#line 4426
27531      __cil_tmp171 = (unsigned int )val;
27532#line 4426
27533      __cil_tmp172 = __cil_tmp171 | 64U;
27534#line 4426
27535      val = (unsigned short )__cil_tmp172;
27536    }
27537    }
27538  } else {
27539    {
27540#line 4428
27541    __cil_tmp173 = info->params.flags;
27542#line 4428
27543    __cil_tmp174 = (int )__cil_tmp173;
27544#line 4428
27545    __cil_tmp175 = __cil_tmp174 & 1024;
27546#line 4428
27547    if (__cil_tmp175 != 0) {
27548#line 4429
27549      __cil_tmp176 = (unsigned int )val;
27550#line 4429
27551      __cil_tmp177 = __cil_tmp176 | 128U;
27552#line 4429
27553      val = (unsigned short )__cil_tmp177;
27554    } else {
27555      {
27556#line 4430
27557      __cil_tmp178 = info->params.flags;
27558#line 4430
27559      __cil_tmp179 = (int )__cil_tmp178;
27560#line 4430
27561      __cil_tmp180 = __cil_tmp179 & 8;
27562#line 4430
27563      if (__cil_tmp180 != 0) {
27564#line 4431
27565        __cil_tmp181 = (unsigned int )val;
27566#line 4431
27567        __cil_tmp182 = __cil_tmp181 | 32U;
27568#line 4431
27569        val = (unsigned short )__cil_tmp182;
27570      } else {
27571
27572      }
27573      }
27574    }
27575    }
27576  }
27577  }
27578  {
27579#line 4433
27580  __cil_tmp183 = info->params.flags;
27581#line 4433
27582  __cil_tmp184 = (int )__cil_tmp183;
27583#line 4433
27584  __cil_tmp185 = __cil_tmp184 & 512;
27585#line 4433
27586  if (__cil_tmp185 != 0) {
27587#line 4434
27588    __cil_tmp186 = (unsigned int )val;
27589#line 4434
27590    __cil_tmp187 = __cil_tmp186 | 8U;
27591#line 4434
27592    val = (unsigned short )__cil_tmp187;
27593  } else {
27594    {
27595#line 4435
27596    __cil_tmp188 = info->params.flags;
27597#line 4435
27598    __cil_tmp189 = (int )__cil_tmp188;
27599#line 4435
27600    __cil_tmp190 = __cil_tmp189 & 256;
27601#line 4435
27602    if (__cil_tmp190 != 0) {
27603#line 4436
27604      __cil_tmp191 = (unsigned int )val;
27605#line 4436
27606      __cil_tmp192 = __cil_tmp191 | 16U;
27607#line 4436
27608      val = (unsigned short )__cil_tmp192;
27609    } else {
27610      {
27611#line 4437
27612      __cil_tmp193 = info->params.flags;
27613#line 4437
27614      __cil_tmp194 = (short )__cil_tmp193;
27615#line 4437
27616      __cil_tmp195 = (int )__cil_tmp194;
27617#line 4437
27618      if (__cil_tmp195 < 0) {
27619#line 4438
27620        __cil_tmp196 = (unsigned int )val;
27621#line 4438
27622        __cil_tmp197 = __cil_tmp196 | 4U;
27623#line 4438
27624        val = (unsigned short )__cil_tmp197;
27625      } else {
27626
27627      }
27628      }
27629    }
27630    }
27631  }
27632  }
27633  {
27634#line 4440
27635  __cil_tmp198 = info->params.clock_speed;
27636#line 4440
27637  if (__cil_tmp198 != 0UL) {
27638#line 4441
27639    __cil_tmp199 = (unsigned int )val;
27640#line 4441
27641    __cil_tmp200 = __cil_tmp199 | 3U;
27642#line 4441
27643    val = (unsigned short )__cil_tmp200;
27644  } else {
27645
27646  }
27647  }
27648  {
27649#line 4443
27650  __cil_tmp201 = (unsigned char )val;
27651#line 4443
27652  __cil_tmp202 = (int )__cil_tmp201;
27653#line 4443
27654  __cil_tmp203 = (__u8 )__cil_tmp202;
27655#line 4443
27656  wr_reg8(info, 137U, __cil_tmp203);
27657  }
27658  {
27659#line 4445
27660  __cil_tmp204 = info->params.flags;
27661#line 4445
27662  __cil_tmp205 = (int )__cil_tmp204;
27663#line 4445
27664  __cil_tmp206 = __cil_tmp205 & 1280;
27665#line 4445
27666  if (__cil_tmp206 != 0) {
27667    {
27668#line 4450
27669    __cil_tmp207 = info->params.encoding;
27670#line 4450
27671    __cil_tmp208 = (int )__cil_tmp207;
27672#line 4450
27673    if (__cil_tmp208 == 4) {
27674#line 4450
27675      goto case_4___4;
27676    } else {
27677      {
27678#line 4451
27679      __cil_tmp209 = info->params.encoding;
27680#line 4451
27681      __cil_tmp210 = (int )__cil_tmp209;
27682#line 4451
27683      if (__cil_tmp210 == 5) {
27684#line 4451
27685        goto case_5___2;
27686      } else {
27687        {
27688#line 4453
27689        __cil_tmp211 = info->params.encoding;
27690#line 4453
27691        __cil_tmp212 = (int )__cil_tmp211;
27692#line 4453
27693        if (__cil_tmp212 == 6) {
27694#line 4453
27695          goto case_6___3;
27696        } else {
27697          {
27698#line 4454
27699          __cil_tmp213 = info->params.encoding;
27700#line 4454
27701          __cil_tmp214 = (int )__cil_tmp213;
27702#line 4454
27703          if (__cil_tmp214 == 7) {
27704#line 4454
27705            goto case_7___1;
27706          } else {
27707#line 4456
27708            goto switch_default___0;
27709#line 4448
27710            if (0) {
27711              case_4___4: ;
27712              case_5___2: 
27713#line 4452
27714              val = (unsigned short)128;
27715#line 4452
27716              goto ldv_37716;
27717              case_6___3: ;
27718              case_7___1: 
27719#line 4455
27720              val = (unsigned short)192;
27721#line 4455
27722              goto ldv_37716;
27723              switch_default___0: 
27724#line 4456
27725              val = (unsigned short)64;
27726            } else {
27727
27728            }
27729          }
27730          }
27731        }
27732        }
27733      }
27734      }
27735    }
27736    }
27737    ldv_37716: 
27738    {
27739#line 4458
27740    tmp___0 = rd_reg16(info, 134U);
27741#line 4458
27742    __cil_tmp215 = (int )val;
27743#line 4458
27744    __cil_tmp216 = (int )tmp___0;
27745#line 4458
27746    __cil_tmp217 = __cil_tmp216 | __cil_tmp215;
27747#line 4458
27748    __cil_tmp218 = (__u16 )__cil_tmp217;
27749#line 4458
27750    wr_reg16(info, 134U, __cil_tmp218);
27751#line 4461
27752    __cil_tmp219 = info->params.clock_speed;
27753#line 4461
27754    __cil_tmp220 = (u32 )__cil_tmp219;
27755#line 4461
27756    __cil_tmp221 = __cil_tmp220 * 16U;
27757#line 4461
27758    set_rate(info, __cil_tmp221);
27759    }
27760  } else {
27761    {
27762#line 4464
27763    __cil_tmp222 = info->params.clock_speed;
27764#line 4464
27765    __cil_tmp223 = (u32 )__cil_tmp222;
27766#line 4464
27767    set_rate(info, __cil_tmp223);
27768    }
27769  }
27770  }
27771  {
27772#line 4466
27773  tx_set_idle(info);
27774#line 4468
27775  msc_set_vcr(info);
27776#line 4489
27777  __cil_tmp224 = (__u16 )49153;
27778#line 4489
27779  wr_reg16(info, 140U, __cil_tmp224);
27780  }
27781  {
27782#line 4491
27783  __cil_tmp225 = info->params.loopback;
27784#line 4491
27785  __cil_tmp226 = (unsigned int )__cil_tmp225;
27786#line 4491
27787  if (__cil_tmp226 != 0U) {
27788    {
27789#line 4492
27790    enable_loopback(info);
27791    }
27792  } else {
27793
27794  }
27795  }
27796#line 4493
27797  return;
27798}
27799}
27800#line 4498 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
27801static void tx_set_idle(struct slgt_info *info ) 
27802{ unsigned char val ;
27803  unsigned short tcr ;
27804  u32 __cil_tmp4 ;
27805  unsigned int __cil_tmp5 ;
27806  short __cil_tmp6 ;
27807  int __cil_tmp7 ;
27808  int __cil_tmp8 ;
27809  int __cil_tmp9 ;
27810  u32 __cil_tmp10 ;
27811  u32 __cil_tmp11 ;
27812  unsigned char __cil_tmp12 ;
27813  int __cil_tmp13 ;
27814  __u8 __cil_tmp14 ;
27815  int __cil_tmp15 ;
27816  int __cil_tmp16 ;
27817  unsigned int __cil_tmp17 ;
27818  unsigned int __cil_tmp18 ;
27819  int __cil_tmp19 ;
27820  __u16 __cil_tmp20 ;
27821  u32 __cil_tmp21 ;
27822  unsigned int __cil_tmp22 ;
27823  u32 __cil_tmp23 ;
27824  u32 __cil_tmp24 ;
27825  int __cil_tmp25 ;
27826  u32 __cil_tmp26 ;
27827  int __cil_tmp27 ;
27828  u32 __cil_tmp28 ;
27829  int __cil_tmp29 ;
27830  u32 __cil_tmp30 ;
27831  int __cil_tmp31 ;
27832  u32 __cil_tmp32 ;
27833  int __cil_tmp33 ;
27834  int __cil_tmp34 ;
27835  __u8 __cil_tmp35 ;
27836
27837  {
27838  {
27839#line 4506
27840  tcr = rd_reg16(info, 130U);
27841  }
27842  {
27843#line 4507
27844  __cil_tmp4 = info->idle_mode;
27845#line 4507
27846  __cil_tmp5 = __cil_tmp4 & 536870912U;
27847#line 4507
27848  if (__cil_tmp5 != 0U) {
27849    {
27850#line 4509
27851    __cil_tmp6 = (short )tcr;
27852#line 4509
27853    __cil_tmp7 = (int )__cil_tmp6;
27854#line 4509
27855    __cil_tmp8 = __cil_tmp7 & -113;
27856#line 4509
27857    __cil_tmp9 = __cil_tmp8 | 16;
27858#line 4509
27859    tcr = (unsigned short )__cil_tmp9;
27860#line 4511
27861    __cil_tmp10 = info->idle_mode;
27862#line 4511
27863    __cil_tmp11 = __cil_tmp10 >> 8;
27864#line 4511
27865    __cil_tmp12 = (unsigned char )__cil_tmp11;
27866#line 4511
27867    __cil_tmp13 = (int )__cil_tmp12;
27868#line 4511
27869    __cil_tmp14 = (__u8 )__cil_tmp13;
27870#line 4511
27871    wr_reg8(info, 133U, __cil_tmp14);
27872    }
27873  } else {
27874    {
27875#line 4512
27876    __cil_tmp15 = (int )tcr;
27877#line 4512
27878    __cil_tmp16 = __cil_tmp15 & 64;
27879#line 4512
27880    if (__cil_tmp16 == 0) {
27881#line 4514
27882      __cil_tmp17 = (unsigned int )tcr;
27883#line 4514
27884      __cil_tmp18 = __cil_tmp17 & 65487U;
27885#line 4514
27886      tcr = (unsigned short )__cil_tmp18;
27887    } else {
27888
27889    }
27890    }
27891  }
27892  }
27893  {
27894#line 4516
27895  __cil_tmp19 = (int )tcr;
27896#line 4516
27897  __cil_tmp20 = (__u16 )__cil_tmp19;
27898#line 4516
27899  wr_reg16(info, 130U, __cil_tmp20);
27900  }
27901  {
27902#line 4518
27903  __cil_tmp21 = info->idle_mode;
27904#line 4518
27905  __cil_tmp22 = __cil_tmp21 & 805306368U;
27906#line 4518
27907  if (__cil_tmp22 != 0U) {
27908#line 4520
27909    __cil_tmp23 = info->idle_mode;
27910#line 4520
27911    val = (unsigned char )__cil_tmp23;
27912  } else {
27913    {
27914#line 4525
27915    __cil_tmp24 = info->idle_mode;
27916#line 4525
27917    __cil_tmp25 = (int )__cil_tmp24;
27918#line 4525
27919    if (__cil_tmp25 == 0) {
27920#line 4525
27921      goto case_0;
27922    } else {
27923      {
27924#line 4526
27925      __cil_tmp26 = info->idle_mode;
27926#line 4526
27927      __cil_tmp27 = (int )__cil_tmp26;
27928#line 4526
27929      if (__cil_tmp27 == 1) {
27930#line 4526
27931        goto case_1;
27932      } else {
27933        {
27934#line 4527
27935        __cil_tmp28 = info->idle_mode;
27936#line 4527
27937        __cil_tmp29 = (int )__cil_tmp28;
27938#line 4527
27939        if (__cil_tmp29 == 4) {
27940#line 4527
27941          goto case_4;
27942        } else {
27943          {
27944#line 4528
27945          __cil_tmp30 = info->idle_mode;
27946#line 4528
27947          __cil_tmp31 = (int )__cil_tmp30;
27948#line 4528
27949          if (__cil_tmp31 == 2) {
27950#line 4528
27951            goto case_2;
27952          } else {
27953            {
27954#line 4529
27955            __cil_tmp32 = info->idle_mode;
27956#line 4529
27957            __cil_tmp33 = (int )__cil_tmp32;
27958#line 4529
27959            if (__cil_tmp33 == 5) {
27960#line 4529
27961              goto case_5;
27962            } else {
27963#line 4530
27964              goto switch_default;
27965#line 4523
27966              if (0) {
27967                case_0: 
27968#line 4525
27969                val = (unsigned char)126;
27970#line 4525
27971                goto ldv_37726;
27972                case_1: ;
27973                case_4: 
27974#line 4527
27975                val = (unsigned char)170;
27976#line 4527
27977                goto ldv_37726;
27978                case_2: ;
27979                case_5: 
27980#line 4529
27981                val = (unsigned char)0;
27982#line 4529
27983                goto ldv_37726;
27984                switch_default: 
27985#line 4530
27986                val = (unsigned char)255;
27987              } else {
27988
27989              }
27990            }
27991            }
27992          }
27993          }
27994        }
27995        }
27996      }
27997      }
27998    }
27999    }
28000    ldv_37726: ;
28001  }
28002  }
28003  {
28004#line 4534
28005  __cil_tmp34 = (int )val;
28006#line 4534
28007  __cil_tmp35 = (__u8 )__cil_tmp34;
28008#line 4534
28009  wr_reg8(info, 132U, __cil_tmp35);
28010  }
28011#line 4535
28012  return;
28013}
28014}
28015#line 4540 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
28016static void get_signals(struct slgt_info *info ) 
28017{ unsigned short status ;
28018  __u16 tmp ;
28019  unsigned char __cil_tmp4 ;
28020  unsigned int __cil_tmp5 ;
28021  unsigned int __cil_tmp6 ;
28022  int __cil_tmp7 ;
28023  int __cil_tmp8 ;
28024  unsigned char __cil_tmp9 ;
28025  unsigned int __cil_tmp10 ;
28026  unsigned int __cil_tmp11 ;
28027  int __cil_tmp12 ;
28028  int __cil_tmp13 ;
28029  unsigned char __cil_tmp14 ;
28030  unsigned int __cil_tmp15 ;
28031  unsigned int __cil_tmp16 ;
28032  int __cil_tmp17 ;
28033  int __cil_tmp18 ;
28034  unsigned char __cil_tmp19 ;
28035  unsigned int __cil_tmp20 ;
28036  unsigned int __cil_tmp21 ;
28037  int __cil_tmp22 ;
28038  unsigned char __cil_tmp23 ;
28039  unsigned int __cil_tmp24 ;
28040  unsigned int __cil_tmp25 ;
28041
28042  {
28043  {
28044#line 4542
28045  tmp = rd_reg16(info, 142U);
28046#line 4542
28047  status = tmp;
28048#line 4545
28049  __cil_tmp4 = info->signals;
28050#line 4545
28051  __cil_tmp5 = (unsigned int )__cil_tmp4;
28052#line 4545
28053  __cil_tmp6 = __cil_tmp5 & 160U;
28054#line 4545
28055  info->signals = (unsigned char )__cil_tmp6;
28056  }
28057  {
28058#line 4547
28059  __cil_tmp7 = (int )status;
28060#line 4547
28061  __cil_tmp8 = __cil_tmp7 & 8;
28062#line 4547
28063  if (__cil_tmp8 != 0) {
28064#line 4548
28065    __cil_tmp9 = info->signals;
28066#line 4548
28067    __cil_tmp10 = (unsigned int )__cil_tmp9;
28068#line 4548
28069    __cil_tmp11 = __cil_tmp10 | 64U;
28070#line 4548
28071    info->signals = (unsigned char )__cil_tmp11;
28072  } else {
28073
28074  }
28075  }
28076  {
28077#line 4549
28078  __cil_tmp12 = (int )status;
28079#line 4549
28080  __cil_tmp13 = __cil_tmp12 & 4;
28081#line 4549
28082  if (__cil_tmp13 != 0) {
28083#line 4550
28084    __cil_tmp14 = info->signals;
28085#line 4550
28086    __cil_tmp15 = (unsigned int )__cil_tmp14;
28087#line 4550
28088    __cil_tmp16 = __cil_tmp15 | 16U;
28089#line 4550
28090    info->signals = (unsigned char )__cil_tmp16;
28091  } else {
28092
28093  }
28094  }
28095  {
28096#line 4551
28097  __cil_tmp17 = (int )status;
28098#line 4551
28099  __cil_tmp18 = __cil_tmp17 & 2;
28100#line 4551
28101  if (__cil_tmp18 != 0) {
28102#line 4552
28103    __cil_tmp19 = info->signals;
28104#line 4552
28105    __cil_tmp20 = (unsigned int )__cil_tmp19;
28106#line 4552
28107    __cil_tmp21 = __cil_tmp20 | 1U;
28108#line 4552
28109    info->signals = (unsigned char )__cil_tmp21;
28110  } else {
28111
28112  }
28113  }
28114  {
28115#line 4553
28116  __cil_tmp22 = (int )status;
28117#line 4553
28118  if (__cil_tmp22 & 1) {
28119#line 4554
28120    __cil_tmp23 = info->signals;
28121#line 4554
28122    __cil_tmp24 = (unsigned int )__cil_tmp23;
28123#line 4554
28124    __cil_tmp25 = __cil_tmp24 | 4U;
28125#line 4554
28126    info->signals = (unsigned char )__cil_tmp25;
28127  } else {
28128
28129  }
28130  }
28131#line 4555
28132  return;
28133}
28134}
28135#line 4560 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
28136static void msc_set_vcr(struct slgt_info *info ) 
28137{ unsigned char val ;
28138  unsigned int __cil_tmp3 ;
28139  unsigned int __cil_tmp4 ;
28140  int __cil_tmp5 ;
28141  unsigned int __cil_tmp6 ;
28142  unsigned int __cil_tmp7 ;
28143  int __cil_tmp8 ;
28144  unsigned int __cil_tmp9 ;
28145  unsigned int __cil_tmp10 ;
28146  int __cil_tmp11 ;
28147  unsigned int __cil_tmp12 ;
28148  unsigned int __cil_tmp13 ;
28149  unsigned int __cil_tmp14 ;
28150  unsigned int __cil_tmp15 ;
28151  unsigned int __cil_tmp16 ;
28152  unsigned int __cil_tmp17 ;
28153  unsigned int __cil_tmp18 ;
28154  unsigned int __cil_tmp19 ;
28155  unsigned int __cil_tmp20 ;
28156  unsigned int __cil_tmp21 ;
28157  unsigned char __cil_tmp22 ;
28158  signed char __cil_tmp23 ;
28159  int __cil_tmp24 ;
28160  unsigned int __cil_tmp25 ;
28161  unsigned int __cil_tmp26 ;
28162  unsigned char __cil_tmp27 ;
28163  int __cil_tmp28 ;
28164  int __cil_tmp29 ;
28165  unsigned int __cil_tmp30 ;
28166  unsigned int __cil_tmp31 ;
28167  unsigned int __cil_tmp32 ;
28168  unsigned int __cil_tmp33 ;
28169  unsigned int __cil_tmp34 ;
28170  unsigned int __cil_tmp35 ;
28171  unsigned int __cil_tmp36 ;
28172  unsigned int __cil_tmp37 ;
28173  unsigned int __cil_tmp38 ;
28174  unsigned int __cil_tmp39 ;
28175  int __cil_tmp40 ;
28176  __u8 __cil_tmp41 ;
28177
28178  {
28179#line 4562
28180  val = (unsigned char)0;
28181  {
28182#line 4575
28183  __cil_tmp3 = info->if_mode;
28184#line 4575
28185  __cil_tmp4 = __cil_tmp3 & 15U;
28186#line 4575
28187  __cil_tmp5 = (int )__cil_tmp4;
28188#line 4575
28189  if (__cil_tmp5 == 1) {
28190#line 4575
28191    goto case_1;
28192  } else {
28193    {
28194#line 4578
28195    __cil_tmp6 = info->if_mode;
28196#line 4578
28197    __cil_tmp7 = __cil_tmp6 & 15U;
28198#line 4578
28199    __cil_tmp8 = (int )__cil_tmp7;
28200#line 4578
28201    if (__cil_tmp8 == 2) {
28202#line 4578
28203      goto case_2;
28204    } else {
28205      {
28206#line 4581
28207      __cil_tmp9 = info->if_mode;
28208#line 4581
28209      __cil_tmp10 = __cil_tmp9 & 15U;
28210#line 4581
28211      __cil_tmp11 = (int )__cil_tmp10;
28212#line 4581
28213      if (__cil_tmp11 == 3) {
28214#line 4581
28215        goto case_3;
28216      } else
28217#line 4573
28218      if (0) {
28219        case_1: 
28220#line 4576
28221        __cil_tmp12 = (unsigned int )val;
28222#line 4576
28223        __cil_tmp13 = __cil_tmp12 | 32U;
28224#line 4576
28225        val = (unsigned char )__cil_tmp13;
28226#line 4577
28227        goto ldv_37741;
28228        case_2: 
28229#line 4579
28230        __cil_tmp14 = (unsigned int )val;
28231#line 4579
28232        __cil_tmp15 = __cil_tmp14 | 224U;
28233#line 4579
28234        val = (unsigned char )__cil_tmp15;
28235#line 4580
28236        goto ldv_37741;
28237        case_3: 
28238#line 4582
28239        __cil_tmp16 = (unsigned int )val;
28240#line 4582
28241        __cil_tmp17 = __cil_tmp16 | 64U;
28242#line 4582
28243        val = (unsigned char )__cil_tmp17;
28244#line 4583
28245        goto ldv_37741;
28246      } else {
28247
28248      }
28249      }
28250    }
28251    }
28252  }
28253  }
28254  ldv_37741: ;
28255  {
28256#line 4586
28257  __cil_tmp18 = info->if_mode;
28258#line 4586
28259  __cil_tmp19 = __cil_tmp18 & 128U;
28260#line 4586
28261  if (__cil_tmp19 != 0U) {
28262#line 4587
28263    __cil_tmp20 = (unsigned int )val;
28264#line 4587
28265    __cil_tmp21 = __cil_tmp20 | 16U;
28266#line 4587
28267    val = (unsigned char )__cil_tmp21;
28268  } else {
28269
28270  }
28271  }
28272  {
28273#line 4588
28274  __cil_tmp22 = info->signals;
28275#line 4588
28276  __cil_tmp23 = (signed char )__cil_tmp22;
28277#line 4588
28278  __cil_tmp24 = (int )__cil_tmp23;
28279#line 4588
28280  if (__cil_tmp24 < 0) {
28281#line 4589
28282    __cil_tmp25 = (unsigned int )val;
28283#line 4589
28284    __cil_tmp26 = __cil_tmp25 | 8U;
28285#line 4589
28286    val = (unsigned char )__cil_tmp26;
28287  } else {
28288
28289  }
28290  }
28291  {
28292#line 4590
28293  __cil_tmp27 = info->signals;
28294#line 4590
28295  __cil_tmp28 = (int )__cil_tmp27;
28296#line 4590
28297  __cil_tmp29 = __cil_tmp28 & 32;
28298#line 4590
28299  if (__cil_tmp29 != 0) {
28300#line 4591
28301    __cil_tmp30 = (unsigned int )val;
28302#line 4591
28303    __cil_tmp31 = __cil_tmp30 | 4U;
28304#line 4591
28305    val = (unsigned char )__cil_tmp31;
28306  } else {
28307
28308  }
28309  }
28310  {
28311#line 4592
28312  __cil_tmp32 = info->if_mode;
28313#line 4592
28314  __cil_tmp33 = __cil_tmp32 & 32U;
28315#line 4592
28316  if (__cil_tmp33 != 0U) {
28317#line 4593
28318    __cil_tmp34 = (unsigned int )val;
28319#line 4593
28320    __cil_tmp35 = __cil_tmp34 | 2U;
28321#line 4593
28322    val = (unsigned char )__cil_tmp35;
28323  } else {
28324
28325  }
28326  }
28327  {
28328#line 4594
28329  __cil_tmp36 = info->if_mode;
28330#line 4594
28331  __cil_tmp37 = __cil_tmp36 & 64U;
28332#line 4594
28333  if (__cil_tmp37 != 0U) {
28334#line 4595
28335    __cil_tmp38 = (unsigned int )val;
28336#line 4595
28337    __cil_tmp39 = __cil_tmp38 | 1U;
28338#line 4595
28339    val = (unsigned char )__cil_tmp39;
28340  } else {
28341
28342  }
28343  }
28344  {
28345#line 4596
28346  __cil_tmp40 = (int )val;
28347#line 4596
28348  __cil_tmp41 = (__u8 )__cil_tmp40;
28349#line 4596
28350  wr_reg8(info, 136U, __cil_tmp41);
28351  }
28352#line 4597
28353  return;
28354}
28355}
28356#line 4602 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
28357static void set_signals(struct slgt_info *info ) 
28358{ unsigned char val ;
28359  __u8 tmp ;
28360  unsigned char __cil_tmp4 ;
28361  signed char __cil_tmp5 ;
28362  int __cil_tmp6 ;
28363  unsigned int __cil_tmp7 ;
28364  unsigned int __cil_tmp8 ;
28365  unsigned int __cil_tmp9 ;
28366  unsigned int __cil_tmp10 ;
28367  unsigned char __cil_tmp11 ;
28368  int __cil_tmp12 ;
28369  int __cil_tmp13 ;
28370  unsigned int __cil_tmp14 ;
28371  unsigned int __cil_tmp15 ;
28372  unsigned int __cil_tmp16 ;
28373  unsigned int __cil_tmp17 ;
28374  int __cil_tmp18 ;
28375  __u8 __cil_tmp19 ;
28376
28377  {
28378  {
28379#line 4604
28380  tmp = rd_reg8(info, 136U);
28381#line 4604
28382  val = tmp;
28383  }
28384  {
28385#line 4605
28386  __cil_tmp4 = info->signals;
28387#line 4605
28388  __cil_tmp5 = (signed char )__cil_tmp4;
28389#line 4605
28390  __cil_tmp6 = (int )__cil_tmp5;
28391#line 4605
28392  if (__cil_tmp6 < 0) {
28393#line 4606
28394    __cil_tmp7 = (unsigned int )val;
28395#line 4606
28396    __cil_tmp8 = __cil_tmp7 | 8U;
28397#line 4606
28398    val = (unsigned char )__cil_tmp8;
28399  } else {
28400#line 4608
28401    __cil_tmp9 = (unsigned int )val;
28402#line 4608
28403    __cil_tmp10 = __cil_tmp9 & 247U;
28404#line 4608
28405    val = (unsigned char )__cil_tmp10;
28406  }
28407  }
28408  {
28409#line 4609
28410  __cil_tmp11 = info->signals;
28411#line 4609
28412  __cil_tmp12 = (int )__cil_tmp11;
28413#line 4609
28414  __cil_tmp13 = __cil_tmp12 & 32;
28415#line 4609
28416  if (__cil_tmp13 != 0) {
28417#line 4610
28418    __cil_tmp14 = (unsigned int )val;
28419#line 4610
28420    __cil_tmp15 = __cil_tmp14 | 4U;
28421#line 4610
28422    val = (unsigned char )__cil_tmp15;
28423  } else {
28424#line 4612
28425    __cil_tmp16 = (unsigned int )val;
28426#line 4612
28427    __cil_tmp17 = __cil_tmp16 & 251U;
28428#line 4612
28429    val = (unsigned char )__cil_tmp17;
28430  }
28431  }
28432  {
28433#line 4613
28434  __cil_tmp18 = (int )val;
28435#line 4613
28436  __cil_tmp19 = (__u8 )__cil_tmp18;
28437#line 4613
28438  wr_reg8(info, 136U, __cil_tmp19);
28439  }
28440#line 4614
28441  return;
28442}
28443}
28444#line 4619 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
28445static void free_rbufs(struct slgt_info *info , unsigned int i , unsigned int last ) 
28446{ int done ;
28447  unsigned long __cil_tmp5 ;
28448  struct slgt_desc *__cil_tmp6 ;
28449  struct slgt_desc *__cil_tmp7 ;
28450  unsigned long __cil_tmp8 ;
28451  struct slgt_desc *__cil_tmp9 ;
28452  struct slgt_desc *__cil_tmp10 ;
28453  unsigned int __cil_tmp11 ;
28454  unsigned int __cil_tmp12 ;
28455
28456  {
28457#line 4621
28458  done = 0;
28459#line 4623
28460  goto ldv_37755;
28461  ldv_37754: 
28462#line 4625
28463  __cil_tmp5 = (unsigned long )i;
28464#line 4625
28465  __cil_tmp6 = info->rbufs;
28466#line 4625
28467  __cil_tmp7 = __cil_tmp6 + __cil_tmp5;
28468#line 4625
28469  __cil_tmp7->status = (__le16 )0U;
28470#line 4626
28471  __cil_tmp8 = (unsigned long )i;
28472#line 4626
28473  __cil_tmp9 = info->rbufs;
28474#line 4626
28475  __cil_tmp10 = __cil_tmp9 + __cil_tmp8;
28476#line 4626
28477  __cil_tmp11 = info->rbuf_fill_level;
28478#line 4626
28479  __cil_tmp10->count = (unsigned short )__cil_tmp11;
28480#line 4627
28481  if (i == last) {
28482#line 4628
28483    done = 1;
28484  } else {
28485
28486  }
28487#line 4629
28488  i = i + 1U;
28489  {
28490#line 4629
28491  __cil_tmp12 = info->rbuf_count;
28492#line 4629
28493  if (i == __cil_tmp12) {
28494#line 4630
28495    i = 0U;
28496  } else {
28497
28498  }
28499  }
28500  ldv_37755: ;
28501#line 4623
28502  if (done == 0) {
28503#line 4624
28504    goto ldv_37754;
28505  } else {
28506#line 4626
28507    goto ldv_37756;
28508  }
28509  ldv_37756: 
28510#line 4632
28511  info->rbuf_current = i;
28512#line 4633
28513  return;
28514}
28515}
28516#line 4638 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
28517static void reset_rbufs(struct slgt_info *info ) 
28518{ unsigned int __cil_tmp2 ;
28519  unsigned int __cil_tmp3 ;
28520
28521  {
28522  {
28523#line 4640
28524  __cil_tmp2 = info->rbuf_count;
28525#line 4640
28526  __cil_tmp3 = __cil_tmp2 - 1U;
28527#line 4640
28528  free_rbufs(info, 0U, __cil_tmp3);
28529#line 4641
28530  info->rbuf_fill_index = 0U;
28531#line 4642
28532  info->rbuf_fill_count = (unsigned short)0;
28533  }
28534#line 4643
28535  return;
28536}
28537}
28538#line 4650 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
28539static bool rx_get_frame(struct slgt_info *info ) 
28540{ unsigned int start ;
28541  unsigned int end ;
28542  unsigned short status ;
28543  unsigned int framesize ;
28544  unsigned long flags ;
28545  struct tty_struct *tty ;
28546  unsigned char addr_field ;
28547  unsigned int crc_size ;
28548  raw_spinlock_t *tmp ;
28549  int __min1 ;
28550  int __min2 ;
28551  int tmp___0 ;
28552  int copy_count ;
28553  int i ;
28554  unsigned char *p ;
28555  int partial_count ;
28556  int __min1___0 ;
28557  int __min2___0 ;
28558  int tmp___1 ;
28559  size_t __len ;
28560  void *__ret ;
28561  unsigned short __cil_tmp23 ;
28562  int __cil_tmp24 ;
28563  int __cil_tmp25 ;
28564  unsigned short __cil_tmp26 ;
28565  int __cil_tmp27 ;
28566  int __cil_tmp28 ;
28567  unsigned long __cil_tmp29 ;
28568  struct slgt_desc *__cil_tmp30 ;
28569  struct slgt_desc *__cil_tmp31 ;
28570  __le16 __cil_tmp32 ;
28571  short __cil_tmp33 ;
28572  int __cil_tmp34 ;
28573  unsigned char __cil_tmp35 ;
28574  unsigned int __cil_tmp36 ;
28575  unsigned long __cil_tmp37 ;
28576  struct slgt_desc *__cil_tmp38 ;
28577  struct slgt_desc *__cil_tmp39 ;
28578  char *__cil_tmp40 ;
28579  char __cil_tmp41 ;
28580  unsigned long __cil_tmp42 ;
28581  struct slgt_desc *__cil_tmp43 ;
28582  struct slgt_desc *__cil_tmp44 ;
28583  __le16 __cil_tmp45 ;
28584  unsigned int __cil_tmp46 ;
28585  unsigned long __cil_tmp47 ;
28586  struct slgt_desc *__cil_tmp48 ;
28587  struct slgt_desc *__cil_tmp49 ;
28588  __le16 __cil_tmp50 ;
28589  int __cil_tmp51 ;
28590  int __cil_tmp52 ;
28591  unsigned int __cil_tmp53 ;
28592  unsigned int __cil_tmp54 ;
28593  bool __cil_tmp55 ;
28594  spinlock_t *__cil_tmp56 ;
28595  spinlock_t *__cil_tmp57 ;
28596  unsigned long __cil_tmp58 ;
28597  struct slgt_desc *__cil_tmp59 ;
28598  struct slgt_desc *__cil_tmp60 ;
28599  unsigned short __cil_tmp61 ;
28600  int __cil_tmp62 ;
28601  int __cil_tmp63 ;
28602  unsigned int __cil_tmp64 ;
28603  unsigned int __cil_tmp65 ;
28604  unsigned int __cil_tmp66 ;
28605  int __cil_tmp67 ;
28606  unsigned char __cil_tmp68 ;
28607  int __cil_tmp69 ;
28608  unsigned int __cil_tmp70 ;
28609  __u32 __cil_tmp71 ;
28610  int __cil_tmp72 ;
28611  __u32 __cil_tmp73 ;
28612  int __cil_tmp74 ;
28613  int __cil_tmp75 ;
28614  __u32 __cil_tmp76 ;
28615  unsigned short __cil_tmp77 ;
28616  short __cil_tmp78 ;
28617  int __cil_tmp79 ;
28618  struct net_device *__cil_tmp80 ;
28619  struct net_device *__cil_tmp81 ;
28620  unsigned long __cil_tmp82 ;
28621  struct net_device *__cil_tmp83 ;
28622  struct net_device *__cil_tmp84 ;
28623  unsigned long __cil_tmp85 ;
28624  char (*__cil_tmp86)[25U] ;
28625  char *__cil_tmp87 ;
28626  int __cil_tmp88 ;
28627  unsigned int __cil_tmp89 ;
28628  unsigned long __cil_tmp90 ;
28629  struct slgt_desc *__cil_tmp91 ;
28630  struct slgt_desc *__cil_tmp92 ;
28631  char *__cil_tmp93 ;
28632  char const   *__cil_tmp94 ;
28633  unsigned short __cil_tmp95 ;
28634  short __cil_tmp96 ;
28635  int __cil_tmp97 ;
28636  u32 __cil_tmp98 ;
28637  u32 __cil_tmp99 ;
28638  __u32 __cil_tmp100 ;
28639  __u32 __cil_tmp101 ;
28640  unsigned int __cil_tmp102 ;
28641  void *__cil_tmp103 ;
28642  unsigned long __cil_tmp104 ;
28643  struct slgt_desc *__cil_tmp105 ;
28644  struct slgt_desc *__cil_tmp106 ;
28645  char *__cil_tmp107 ;
28646  void const   *__cil_tmp108 ;
28647  unsigned long __cil_tmp109 ;
28648  unsigned int __cil_tmp110 ;
28649  unsigned int __cil_tmp111 ;
28650  unsigned short __cil_tmp112 ;
28651  short __cil_tmp113 ;
28652  int __cil_tmp114 ;
28653  int __cil_tmp115 ;
28654  int __cil_tmp116 ;
28655  int __cil_tmp117 ;
28656  int __cil_tmp118 ;
28657  unsigned char *__cil_tmp119 ;
28658  char *__cil_tmp120 ;
28659  int __cil_tmp121 ;
28660  unsigned char *__cil_tmp122 ;
28661  __u8 const   *__cil_tmp123 ;
28662  char (*__cil_tmp124)[4096U] ;
28663  char *__cil_tmp125 ;
28664  int __cil_tmp126 ;
28665
28666  {
28667#line 4654
28668  framesize = 0U;
28669#line 4656
28670  tty = info->port.tty;
28671#line 4657
28672  addr_field = (unsigned char)255;
28673#line 4658
28674  crc_size = 0U;
28675  {
28676#line 4661
28677  __cil_tmp23 = info->params.crc_type;
28678#line 4661
28679  __cil_tmp24 = (int )__cil_tmp23;
28680#line 4661
28681  __cil_tmp25 = __cil_tmp24 & 255;
28682#line 4661
28683  if (__cil_tmp25 == 1) {
28684#line 4661
28685    goto case_1;
28686  } else {
28687    {
28688#line 4662
28689    __cil_tmp26 = info->params.crc_type;
28690#line 4662
28691    __cil_tmp27 = (int )__cil_tmp26;
28692#line 4662
28693    __cil_tmp28 = __cil_tmp27 & 255;
28694#line 4662
28695    if (__cil_tmp28 == 2) {
28696#line 4662
28697      goto case_2;
28698    } else
28699#line 4660
28700    if (0) {
28701      case_1: 
28702#line 4661
28703      crc_size = 2U;
28704#line 4661
28705      goto ldv_37772;
28706      case_2: 
28707#line 4662
28708      crc_size = 4U;
28709#line 4662
28710      goto ldv_37772;
28711    } else {
28712
28713    }
28714    }
28715  }
28716  }
28717  ldv_37772: ;
28718  check_again: 
28719#line 4667
28720  framesize = 0U;
28721#line 4668
28722  addr_field = (unsigned char)255;
28723#line 4669
28724  end = info->rbuf_current;
28725#line 4669
28726  start = end;
28727  ldv_37780: ;
28728  {
28729#line 4672
28730  __cil_tmp29 = (unsigned long )end;
28731#line 4672
28732  __cil_tmp30 = info->rbufs;
28733#line 4672
28734  __cil_tmp31 = __cil_tmp30 + __cil_tmp29;
28735#line 4672
28736  __cil_tmp32 = __cil_tmp31->status;
28737#line 4672
28738  __cil_tmp33 = (short )__cil_tmp32;
28739#line 4672
28740  __cil_tmp34 = (int )__cil_tmp33;
28741#line 4672
28742  if (__cil_tmp34 >= 0) {
28743#line 4673
28744    goto cleanup;
28745  } else {
28746
28747  }
28748  }
28749#line 4675
28750  if (framesize == 0U) {
28751    {
28752#line 4675
28753    __cil_tmp35 = info->params.addr_filter;
28754#line 4675
28755    __cil_tmp36 = (unsigned int )__cil_tmp35;
28756#line 4675
28757    if (__cil_tmp36 != 255U) {
28758#line 4676
28759      __cil_tmp37 = (unsigned long )end;
28760#line 4676
28761      __cil_tmp38 = info->rbufs;
28762#line 4676
28763      __cil_tmp39 = __cil_tmp38 + __cil_tmp37;
28764#line 4676
28765      __cil_tmp40 = __cil_tmp39->buf;
28766#line 4676
28767      __cil_tmp41 = *__cil_tmp40;
28768#line 4676
28769      addr_field = (unsigned char )__cil_tmp41;
28770    } else {
28771
28772    }
28773    }
28774  } else {
28775
28776  }
28777#line 4678
28778  __cil_tmp42 = (unsigned long )end;
28779#line 4678
28780  __cil_tmp43 = info->rbufs;
28781#line 4678
28782  __cil_tmp44 = __cil_tmp43 + __cil_tmp42;
28783#line 4678
28784  __cil_tmp45 = __cil_tmp44->count;
28785#line 4678
28786  __cil_tmp46 = (unsigned int )__cil_tmp45;
28787#line 4678
28788  framesize = __cil_tmp46 + framesize;
28789  {
28790#line 4680
28791  __cil_tmp47 = (unsigned long )end;
28792#line 4680
28793  __cil_tmp48 = info->rbufs;
28794#line 4680
28795  __cil_tmp49 = __cil_tmp48 + __cil_tmp47;
28796#line 4680
28797  __cil_tmp50 = __cil_tmp49->status;
28798#line 4680
28799  __cil_tmp51 = (int )__cil_tmp50;
28800#line 4680
28801  __cil_tmp52 = __cil_tmp51 & 4;
28802#line 4680
28803  if (__cil_tmp52 != 0) {
28804#line 4681
28805    goto ldv_37776;
28806  } else {
28807
28808  }
28809  }
28810#line 4683
28811  end = end + 1U;
28812  {
28813#line 4683
28814  __cil_tmp53 = info->rbuf_count;
28815#line 4683
28816  if (end == __cil_tmp53) {
28817#line 4684
28818    end = 0U;
28819  } else {
28820
28821  }
28822  }
28823  {
28824#line 4686
28825  __cil_tmp54 = info->rbuf_current;
28826#line 4686
28827  if (__cil_tmp54 == end) {
28828    {
28829#line 4687
28830    __cil_tmp55 = info->rx_enabled;
28831#line 4687
28832    if ((int )__cil_tmp55) {
28833      {
28834#line 4688
28835      __cil_tmp56 = & info->lock;
28836#line 4688
28837      tmp = spinlock_check(__cil_tmp56);
28838#line 4688
28839      flags = _raw_spin_lock_irqsave(tmp);
28840#line 4689
28841      rx_start(info);
28842#line 4690
28843      __cil_tmp57 = & info->lock;
28844#line 4690
28845      spin_unlock_irqrestore(__cil_tmp57, flags);
28846      }
28847    } else {
28848
28849    }
28850    }
28851#line 4692
28852    goto cleanup;
28853  } else {
28854
28855  }
28856  }
28857#line 4694
28858  goto ldv_37780;
28859  ldv_37776: 
28860#line 4705
28861  __cil_tmp58 = (unsigned long )end;
28862#line 4705
28863  __cil_tmp59 = info->rbufs;
28864#line 4705
28865  __cil_tmp60 = __cil_tmp59 + __cil_tmp58;
28866#line 4705
28867  status = __cil_tmp60->status;
28868  {
28869#line 4708
28870  __cil_tmp61 = info->params.crc_type;
28871#line 4708
28872  __cil_tmp62 = (int )__cil_tmp61;
28873#line 4708
28874  __cil_tmp63 = __cil_tmp62 & 255;
28875#line 4708
28876  if (__cil_tmp63 == 0) {
28877#line 4709
28878    __cil_tmp64 = (unsigned int )status;
28879#line 4709
28880    __cil_tmp65 = __cil_tmp64 & 65533U;
28881#line 4709
28882    status = (unsigned short )__cil_tmp65;
28883  } else {
28884
28885  }
28886  }
28887#line 4711
28888  if (framesize == 0U) {
28889    {
28890#line 4713
28891    free_rbufs(info, start, end);
28892    }
28893#line 4714
28894    goto check_again;
28895  } else {
28896    {
28897#line 4711
28898    __cil_tmp66 = (unsigned int )addr_field;
28899#line 4711
28900    if (__cil_tmp66 != 255U) {
28901      {
28902#line 4711
28903      __cil_tmp67 = (int )addr_field;
28904#line 4711
28905      __cil_tmp68 = info->params.addr_filter;
28906#line 4711
28907      __cil_tmp69 = (int )__cil_tmp68;
28908#line 4711
28909      if (__cil_tmp69 != __cil_tmp67) {
28910        {
28911#line 4713
28912        free_rbufs(info, start, end);
28913        }
28914#line 4714
28915        goto check_again;
28916      } else {
28917
28918      }
28919      }
28920    } else {
28921
28922    }
28923    }
28924  }
28925  {
28926#line 4717
28927  __cil_tmp70 = crc_size + 2U;
28928#line 4717
28929  if (__cil_tmp70 > framesize) {
28930#line 4718
28931    __cil_tmp71 = info->icount.rxshort;
28932#line 4718
28933    info->icount.rxshort = __cil_tmp71 + 1U;
28934#line 4719
28935    framesize = 0U;
28936  } else {
28937    {
28938#line 4717
28939    __cil_tmp72 = (int )status;
28940#line 4717
28941    if (__cil_tmp72 & 1) {
28942#line 4718
28943      __cil_tmp73 = info->icount.rxshort;
28944#line 4718
28945      info->icount.rxshort = __cil_tmp73 + 1U;
28946#line 4719
28947      framesize = 0U;
28948    } else {
28949      {
28950#line 4720
28951      __cil_tmp74 = (int )status;
28952#line 4720
28953      __cil_tmp75 = __cil_tmp74 & 2;
28954#line 4720
28955      if (__cil_tmp75 != 0) {
28956#line 4721
28957        __cil_tmp76 = info->icount.rxcrc;
28958#line 4721
28959        info->icount.rxcrc = __cil_tmp76 + 1U;
28960        {
28961#line 4722
28962        __cil_tmp77 = info->params.crc_type;
28963#line 4722
28964        __cil_tmp78 = (short )__cil_tmp77;
28965#line 4722
28966        __cil_tmp79 = (int )__cil_tmp78;
28967#line 4722
28968        if (__cil_tmp79 >= 0) {
28969#line 4723
28970          framesize = 0U;
28971        } else {
28972
28973        }
28974        }
28975      } else {
28976
28977      }
28978      }
28979    }
28980    }
28981  }
28982  }
28983#line 4727
28984  if (framesize == 0U) {
28985#line 4728
28986    __cil_tmp80 = info->netdev;
28987#line 4728
28988    __cil_tmp81 = info->netdev;
28989#line 4728
28990    __cil_tmp82 = __cil_tmp81->stats.rx_errors;
28991#line 4728
28992    __cil_tmp80->stats.rx_errors = __cil_tmp82 + 1UL;
28993#line 4729
28994    __cil_tmp83 = info->netdev;
28995#line 4729
28996    __cil_tmp84 = info->netdev;
28997#line 4729
28998    __cil_tmp85 = __cil_tmp84->stats.rx_frame_errors;
28999#line 4729
29000    __cil_tmp83->stats.rx_frame_errors = __cil_tmp85 + 1UL;
29001  } else {
29002
29003  }
29004#line 4733
29005  if (debug_level > 3) {
29006    {
29007#line 4733
29008    __cil_tmp86 = & info->device_name;
29009#line 4733
29010    __cil_tmp87 = (char *)__cil_tmp86;
29011#line 4733
29012    __cil_tmp88 = (int )status;
29013#line 4733
29014    printk("%s rx frame status=%04X size=%d\n", __cil_tmp87, __cil_tmp88, framesize);
29015    }
29016  } else {
29017
29018  }
29019#line 4735
29020  if (debug_level > 0) {
29021#line 4735
29022    __min1 = (int )framesize;
29023#line 4735
29024    __cil_tmp89 = info->rbuf_fill_level;
29025#line 4735
29026    __min2 = (int )__cil_tmp89;
29027#line 4735
29028    if (__min1 < __min2) {
29029#line 4735
29030      tmp___0 = __min1;
29031    } else {
29032#line 4735
29033      tmp___0 = __min2;
29034    }
29035    {
29036#line 4735
29037    __cil_tmp90 = (unsigned long )start;
29038#line 4735
29039    __cil_tmp91 = info->rbufs;
29040#line 4735
29041    __cil_tmp92 = __cil_tmp91 + __cil_tmp90;
29042#line 4735
29043    __cil_tmp93 = __cil_tmp92->buf;
29044#line 4735
29045    __cil_tmp94 = (char const   *)__cil_tmp93;
29046#line 4735
29047    trace_block(info, __cil_tmp94, tmp___0, "rx");
29048    }
29049  } else {
29050
29051  }
29052#line 4737
29053  if (framesize != 0U) {
29054    {
29055#line 4738
29056    __cil_tmp95 = info->params.crc_type;
29057#line 4738
29058    __cil_tmp96 = (short )__cil_tmp95;
29059#line 4738
29060    __cil_tmp97 = (int )__cil_tmp96;
29061#line 4738
29062    if (__cil_tmp97 >= 0) {
29063#line 4739
29064      framesize = framesize - crc_size;
29065#line 4740
29066      crc_size = 0U;
29067    } else {
29068
29069    }
29070    }
29071    {
29072#line 4743
29073    __cil_tmp98 = info->max_frame_size;
29074#line 4743
29075    __cil_tmp99 = __cil_tmp98 + crc_size;
29076#line 4743
29077    if (__cil_tmp99 < framesize) {
29078#line 4744
29079      __cil_tmp100 = info->icount.rxlong;
29080#line 4744
29081      info->icount.rxlong = __cil_tmp100 + 1U;
29082    } else {
29083#line 4747
29084      copy_count = (int )framesize;
29085#line 4748
29086      i = (int )start;
29087#line 4749
29088      p = info->tmp_rbuf;
29089#line 4750
29090      info->tmp_rbuf_count = framesize;
29091#line 4752
29092      __cil_tmp101 = info->icount.rxok;
29093#line 4752
29094      info->icount.rxok = __cil_tmp101 + 1U;
29095#line 4754
29096      goto ldv_37795;
29097      ldv_37794: 
29098#line 4755
29099      __min1___0 = copy_count;
29100#line 4755
29101      __cil_tmp102 = info->rbuf_fill_level;
29102#line 4755
29103      __min2___0 = (int )__cil_tmp102;
29104#line 4755
29105      if (__min1___0 < __min2___0) {
29106#line 4755
29107        tmp___1 = __min1___0;
29108      } else {
29109#line 4755
29110        tmp___1 = __min2___0;
29111      }
29112      {
29113#line 4755
29114      partial_count = tmp___1;
29115#line 4756
29116      __len = (size_t )partial_count;
29117#line 4756
29118      __cil_tmp103 = (void *)p;
29119#line 4756
29120      __cil_tmp104 = (unsigned long )i;
29121#line 4756
29122      __cil_tmp105 = info->rbufs;
29123#line 4756
29124      __cil_tmp106 = __cil_tmp105 + __cil_tmp104;
29125#line 4756
29126      __cil_tmp107 = __cil_tmp106->buf;
29127#line 4756
29128      __cil_tmp108 = (void const   *)__cil_tmp107;
29129#line 4756
29130      __ret = __builtin_memcpy(__cil_tmp103, __cil_tmp108, __len);
29131#line 4757
29132      __cil_tmp109 = (unsigned long )partial_count;
29133#line 4757
29134      p = p + __cil_tmp109;
29135#line 4758
29136      copy_count = copy_count - partial_count;
29137#line 4759
29138      i = i + 1;
29139      }
29140      {
29141#line 4759
29142      __cil_tmp110 = info->rbuf_count;
29143#line 4759
29144      __cil_tmp111 = (unsigned int )i;
29145#line 4759
29146      if (__cil_tmp111 == __cil_tmp110) {
29147#line 4760
29148        i = 0;
29149      } else {
29150
29151      }
29152      }
29153      ldv_37795: ;
29154#line 4754
29155      if (copy_count != 0) {
29156#line 4755
29157        goto ldv_37794;
29158      } else {
29159#line 4757
29160        goto ldv_37796;
29161      }
29162      ldv_37796: ;
29163      {
29164#line 4763
29165      __cil_tmp112 = info->params.crc_type;
29166#line 4763
29167      __cil_tmp113 = (short )__cil_tmp112;
29168#line 4763
29169      __cil_tmp114 = (int )__cil_tmp113;
29170#line 4763
29171      if (__cil_tmp114 < 0) {
29172#line 4764
29173        __cil_tmp115 = (int )status;
29174#line 4764
29175        __cil_tmp116 = __cil_tmp115 & 2;
29176#line 4764
29177        __cil_tmp117 = __cil_tmp116 != 0;
29178#line 4764
29179        *p = (unsigned char )__cil_tmp117;
29180#line 4765
29181        framesize = framesize + 1U;
29182      } else {
29183
29184      }
29185      }
29186      {
29187#line 4769
29188      __cil_tmp118 = info->netcount;
29189#line 4769
29190      if (__cil_tmp118 != 0) {
29191        {
29192#line 4770
29193        __cil_tmp119 = info->tmp_rbuf;
29194#line 4770
29195        __cil_tmp120 = (char *)__cil_tmp119;
29196#line 4770
29197        __cil_tmp121 = (int )framesize;
29198#line 4770
29199        hdlcdev_rx(info, __cil_tmp120, __cil_tmp121);
29200        }
29201      } else {
29202        {
29203#line 4773
29204        __cil_tmp122 = info->tmp_rbuf;
29205#line 4773
29206        __cil_tmp123 = (__u8 const   *)__cil_tmp122;
29207#line 4773
29208        __cil_tmp124 = & info->flag_buf;
29209#line 4773
29210        __cil_tmp125 = (char *)__cil_tmp124;
29211#line 4773
29212        __cil_tmp126 = (int )framesize;
29213#line 4773
29214        ldisc_receive_buf(tty, __cil_tmp123, __cil_tmp125, __cil_tmp126);
29215        }
29216      }
29217      }
29218    }
29219    }
29220  } else {
29221
29222  }
29223  {
29224#line 4776
29225  free_rbufs(info, start, end);
29226  }
29227#line 4777
29228  return ((bool )1);
29229  cleanup: ;
29230#line 4780
29231  return ((bool )0);
29232}
29233}
29234#line 4787 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
29235static bool rx_get_buf(struct slgt_info *info ) 
29236{ unsigned int i ;
29237  unsigned int count ;
29238  unsigned long __cil_tmp4 ;
29239  struct slgt_desc *__cil_tmp5 ;
29240  struct slgt_desc *__cil_tmp6 ;
29241  __le16 __cil_tmp7 ;
29242  short __cil_tmp8 ;
29243  int __cil_tmp9 ;
29244  unsigned long __cil_tmp10 ;
29245  struct slgt_desc *__cil_tmp11 ;
29246  struct slgt_desc *__cil_tmp12 ;
29247  __le16 __cil_tmp13 ;
29248  unsigned long __cil_tmp14 ;
29249  int __cil_tmp15 ;
29250  unsigned long __cil_tmp16 ;
29251  int __cil_tmp17 ;
29252  unsigned long __cil_tmp18 ;
29253  int __cil_tmp19 ;
29254  unsigned long __cil_tmp20 ;
29255  struct slgt_desc *__cil_tmp21 ;
29256  struct slgt_desc *__cil_tmp22 ;
29257  __le16 __cil_tmp23 ;
29258  int __cil_tmp24 ;
29259  int __cil_tmp25 ;
29260  int __cil_tmp26 ;
29261  unsigned long __cil_tmp27 ;
29262  struct slgt_desc *__cil_tmp28 ;
29263  struct slgt_desc *__cil_tmp29 ;
29264  char *__cil_tmp30 ;
29265  char const   *__cil_tmp31 ;
29266  int __cil_tmp32 ;
29267  struct tty_struct *__cil_tmp33 ;
29268  unsigned long __cil_tmp34 ;
29269  struct slgt_desc *__cil_tmp35 ;
29270  struct slgt_desc *__cil_tmp36 ;
29271  char *__cil_tmp37 ;
29272  __u8 const   *__cil_tmp38 ;
29273  char (*__cil_tmp39)[4096U] ;
29274  char *__cil_tmp40 ;
29275  int __cil_tmp41 ;
29276
29277  {
29278#line 4789
29279  i = info->rbuf_current;
29280  {
29281#line 4792
29282  __cil_tmp4 = (unsigned long )i;
29283#line 4792
29284  __cil_tmp5 = info->rbufs;
29285#line 4792
29286  __cil_tmp6 = __cil_tmp5 + __cil_tmp4;
29287#line 4792
29288  __cil_tmp7 = __cil_tmp6->status;
29289#line 4792
29290  __cil_tmp8 = (short )__cil_tmp7;
29291#line 4792
29292  __cil_tmp9 = (int )__cil_tmp8;
29293#line 4792
29294  if (__cil_tmp9 >= 0) {
29295#line 4793
29296    return ((bool )0);
29297  } else {
29298
29299  }
29300  }
29301#line 4794
29302  __cil_tmp10 = (unsigned long )i;
29303#line 4794
29304  __cil_tmp11 = info->rbufs;
29305#line 4794
29306  __cil_tmp12 = __cil_tmp11 + __cil_tmp10;
29307#line 4794
29308  __cil_tmp13 = __cil_tmp12->count;
29309#line 4794
29310  count = (unsigned int )__cil_tmp13;
29311  {
29312#line 4796
29313  __cil_tmp14 = info->params.mode;
29314#line 4796
29315  __cil_tmp15 = (int )__cil_tmp14;
29316#line 4796
29317  if (__cil_tmp15 == 3) {
29318#line 4796
29319    goto case_3;
29320  } else {
29321    {
29322#line 4797
29323    __cil_tmp16 = info->params.mode;
29324#line 4797
29325    __cil_tmp17 = (int )__cil_tmp16;
29326#line 4797
29327    if (__cil_tmp17 == 4) {
29328#line 4797
29329      goto case_4;
29330    } else {
29331      {
29332#line 4798
29333      __cil_tmp18 = info->params.mode;
29334#line 4798
29335      __cil_tmp19 = (int )__cil_tmp18;
29336#line 4798
29337      if (__cil_tmp19 == 8) {
29338#line 4798
29339        goto case_8;
29340      } else
29341#line 4795
29342      if (0) {
29343        case_3: ;
29344        case_4: ;
29345        case_8: ;
29346        {
29347#line 4800
29348        __cil_tmp20 = (unsigned long )i;
29349#line 4800
29350        __cil_tmp21 = info->rbufs;
29351#line 4800
29352        __cil_tmp22 = __cil_tmp21 + __cil_tmp20;
29353#line 4800
29354        __cil_tmp23 = __cil_tmp22->status;
29355#line 4800
29356        __cil_tmp24 = (int )__cil_tmp23;
29357#line 4800
29358        __cil_tmp25 = __cil_tmp24 & 56;
29359#line 4800
29360        __cil_tmp26 = __cil_tmp25 >> 3;
29361#line 4800
29362        if (__cil_tmp26 != 0) {
29363#line 4801
29364          count = count - 1U;
29365        } else {
29366
29367        }
29368        }
29369#line 4802
29370        goto ldv_37805;
29371      } else {
29372
29373      }
29374      }
29375    }
29376    }
29377  }
29378  }
29379  ldv_37805: ;
29380#line 4804
29381  if (debug_level > 0) {
29382    {
29383#line 4804
29384    __cil_tmp27 = (unsigned long )i;
29385#line 4804
29386    __cil_tmp28 = info->rbufs;
29387#line 4804
29388    __cil_tmp29 = __cil_tmp28 + __cil_tmp27;
29389#line 4804
29390    __cil_tmp30 = __cil_tmp29->buf;
29391#line 4804
29392    __cil_tmp31 = (char const   *)__cil_tmp30;
29393#line 4804
29394    __cil_tmp32 = (int )count;
29395#line 4804
29396    trace_block(info, __cil_tmp31, __cil_tmp32, "rx");
29397    }
29398  } else {
29399
29400  }
29401#line 4805
29402  if (debug_level > 2) {
29403    {
29404#line 4805
29405    printk("rx_get_buf size=%d\n", count);
29406    }
29407  } else {
29408
29409  }
29410#line 4806
29411  if (count != 0U) {
29412    {
29413#line 4807
29414    __cil_tmp33 = info->port.tty;
29415#line 4807
29416    __cil_tmp34 = (unsigned long )i;
29417#line 4807
29418    __cil_tmp35 = info->rbufs;
29419#line 4807
29420    __cil_tmp36 = __cil_tmp35 + __cil_tmp34;
29421#line 4807
29422    __cil_tmp37 = __cil_tmp36->buf;
29423#line 4807
29424    __cil_tmp38 = (__u8 const   *)__cil_tmp37;
29425#line 4807
29426    __cil_tmp39 = & info->flag_buf;
29427#line 4807
29428    __cil_tmp40 = (char *)__cil_tmp39;
29429#line 4807
29430    __cil_tmp41 = (int )count;
29431#line 4807
29432    ldisc_receive_buf(__cil_tmp33, __cil_tmp38, __cil_tmp40, __cil_tmp41);
29433    }
29434  } else {
29435
29436  }
29437  {
29438#line 4809
29439  free_rbufs(info, i, i);
29440  }
29441#line 4810
29442  return ((bool )1);
29443}
29444}
29445#line 4813 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
29446static void reset_tbufs(struct slgt_info *info ) 
29447{ unsigned int i ;
29448  unsigned long __cil_tmp3 ;
29449  struct slgt_desc *__cil_tmp4 ;
29450  struct slgt_desc *__cil_tmp5 ;
29451  unsigned long __cil_tmp6 ;
29452  struct slgt_desc *__cil_tmp7 ;
29453  struct slgt_desc *__cil_tmp8 ;
29454  unsigned int __cil_tmp9 ;
29455
29456  {
29457#line 4816
29458  info->tbuf_current = 0U;
29459#line 4817
29460  i = 0U;
29461#line 4817
29462  goto ldv_37811;
29463  ldv_37810: 
29464#line 4818
29465  __cil_tmp3 = (unsigned long )i;
29466#line 4818
29467  __cil_tmp4 = info->tbufs;
29468#line 4818
29469  __cil_tmp5 = __cil_tmp4 + __cil_tmp3;
29470#line 4818
29471  __cil_tmp5->status = (__le16 )0U;
29472#line 4819
29473  __cil_tmp6 = (unsigned long )i;
29474#line 4819
29475  __cil_tmp7 = info->tbufs;
29476#line 4819
29477  __cil_tmp8 = __cil_tmp7 + __cil_tmp6;
29478#line 4819
29479  __cil_tmp8->count = (__le16 )0U;
29480#line 4817
29481  i = i + 1U;
29482  ldv_37811: ;
29483  {
29484#line 4817
29485  __cil_tmp9 = info->tbuf_count;
29486#line 4817
29487  if (__cil_tmp9 > i) {
29488#line 4818
29489    goto ldv_37810;
29490  } else {
29491#line 4820
29492    goto ldv_37812;
29493  }
29494  }
29495  ldv_37812: ;
29496#line 4822
29497  return;
29498}
29499}
29500#line 4826 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
29501static unsigned int free_tbuf_count(struct slgt_info *info ) 
29502{ unsigned int count ;
29503  unsigned int i ;
29504  __u32 tmp ;
29505  unsigned long __cil_tmp5 ;
29506  struct slgt_desc *__cil_tmp6 ;
29507  struct slgt_desc *__cil_tmp7 ;
29508  __le16 __cil_tmp8 ;
29509  unsigned int __cil_tmp9 ;
29510  unsigned int __cil_tmp10 ;
29511  unsigned int __cil_tmp11 ;
29512  int __cil_tmp12 ;
29513
29514  {
29515#line 4828
29516  count = 0U;
29517#line 4829
29518  i = info->tbuf_current;
29519  ldv_37819: ;
29520  {
29521#line 4833
29522  __cil_tmp5 = (unsigned long )i;
29523#line 4833
29524  __cil_tmp6 = info->tbufs;
29525#line 4833
29526  __cil_tmp7 = __cil_tmp6 + __cil_tmp5;
29527#line 4833
29528  __cil_tmp8 = __cil_tmp7->count;
29529#line 4833
29530  __cil_tmp9 = (unsigned int )__cil_tmp8;
29531#line 4833
29532  if (__cil_tmp9 != 0U) {
29533#line 4834
29534    goto ldv_37818;
29535  } else {
29536
29537  }
29538  }
29539#line 4835
29540  count = count + 1U;
29541#line 4836
29542  i = i + 1U;
29543  {
29544#line 4836
29545  __cil_tmp10 = info->tbuf_count;
29546#line 4836
29547  if (i == __cil_tmp10) {
29548#line 4837
29549    i = 0U;
29550  } else {
29551
29552  }
29553  }
29554  {
29555#line 4838
29556  __cil_tmp11 = info->tbuf_current;
29557#line 4838
29558  if (__cil_tmp11 != i) {
29559#line 4839
29560    goto ldv_37819;
29561  } else {
29562#line 4841
29563    goto ldv_37818;
29564  }
29565  }
29566  ldv_37818: ;
29567#line 4841
29568  if (count != 0U) {
29569    {
29570#line 4841
29571    tmp = rd_reg32(info, 148U);
29572    }
29573    {
29574#line 4841
29575    __cil_tmp12 = (int )tmp;
29576#line 4841
29577    if (__cil_tmp12 & 1) {
29578#line 4842
29579      count = count - 1U;
29580    } else {
29581
29582    }
29583    }
29584  } else {
29585
29586  }
29587#line 4844
29588  return (count);
29589}
29590}
29591#line 4851 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
29592static unsigned int tbuf_bytes(struct slgt_info *info ) 
29593{ unsigned int total_count ;
29594  unsigned int i ;
29595  unsigned int reg_value ;
29596  unsigned int count ;
29597  unsigned int active_buf_count ;
29598  unsigned long __cil_tmp7 ;
29599  struct slgt_desc *__cil_tmp8 ;
29600  struct slgt_desc *__cil_tmp9 ;
29601  __le16 __cil_tmp10 ;
29602  unsigned long __cil_tmp11 ;
29603  struct slgt_desc *__cil_tmp12 ;
29604  struct slgt_desc *__cil_tmp13 ;
29605  unsigned short __cil_tmp14 ;
29606  unsigned int __cil_tmp15 ;
29607  unsigned int __cil_tmp16 ;
29608  int __cil_tmp17 ;
29609  unsigned int __cil_tmp18 ;
29610  unsigned int __cil_tmp19 ;
29611  bool __cil_tmp20 ;
29612
29613  {
29614#line 4853
29615  total_count = 0U;
29616#line 4854
29617  i = info->tbuf_current;
29618#line 4857
29619  active_buf_count = 0U;
29620  ldv_37828: 
29621#line 4871
29622  __cil_tmp7 = (unsigned long )i;
29623#line 4871
29624  __cil_tmp8 = info->tbufs;
29625#line 4871
29626  __cil_tmp9 = __cil_tmp8 + __cil_tmp7;
29627#line 4871
29628  __cil_tmp10 = __cil_tmp9->count;
29629#line 4871
29630  count = (unsigned int )__cil_tmp10;
29631#line 4872
29632  if (count != 0U) {
29633#line 4873
29634    total_count = total_count + count;
29635  } else
29636#line 4874
29637  if (total_count == 0U) {
29638#line 4875
29639    __cil_tmp11 = (unsigned long )i;
29640#line 4875
29641    __cil_tmp12 = info->tbufs;
29642#line 4875
29643    __cil_tmp13 = __cil_tmp12 + __cil_tmp11;
29644#line 4875
29645    __cil_tmp14 = __cil_tmp13->buf_count;
29646#line 4875
29647    active_buf_count = (unsigned int )__cil_tmp14;
29648  } else {
29649
29650  }
29651#line 4876
29652  i = i + 1U;
29653  {
29654#line 4876
29655  __cil_tmp15 = info->tbuf_count;
29656#line 4876
29657  if (i == __cil_tmp15) {
29658#line 4877
29659    i = 0U;
29660  } else {
29661
29662  }
29663  }
29664  {
29665#line 4878
29666  __cil_tmp16 = info->tbuf_current;
29667#line 4878
29668  if (__cil_tmp16 != i) {
29669#line 4879
29670    goto ldv_37828;
29671  } else {
29672#line 4881
29673    goto ldv_37829;
29674  }
29675  }
29676  ldv_37829: 
29677  {
29678#line 4881
29679  reg_value = rd_reg32(info, 148U);
29680  }
29681  {
29682#line 4884
29683  __cil_tmp17 = (int )reg_value;
29684#line 4884
29685  if (__cil_tmp17 & 1) {
29686#line 4885
29687    total_count = total_count + active_buf_count;
29688  } else {
29689
29690  }
29691  }
29692#line 4888
29693  __cil_tmp18 = reg_value >> 8;
29694#line 4888
29695  __cil_tmp19 = __cil_tmp18 & 255U;
29696#line 4888
29697  total_count = __cil_tmp19 + total_count;
29698  {
29699#line 4891
29700  __cil_tmp20 = info->tx_active;
29701#line 4891
29702  if ((int )__cil_tmp20) {
29703#line 4892
29704    total_count = total_count + 1U;
29705  } else {
29706
29707  }
29708  }
29709#line 4894
29710  return (total_count);
29711}
29712}
29713#line 4901 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
29714static bool tx_load(struct slgt_info *info , char const   *buf , unsigned int size ) 
29715{ unsigned short count ;
29716  unsigned int i ;
29717  struct slgt_desc *d ;
29718  unsigned int tmp ;
29719  size_t __len ;
29720  void *__ret ;
29721  unsigned int __cil_tmp10 ;
29722  unsigned int __cil_tmp11 ;
29723  int __cil_tmp12 ;
29724  unsigned long __cil_tmp13 ;
29725  struct slgt_desc *__cil_tmp14 ;
29726  char *__cil_tmp15 ;
29727  void *__cil_tmp16 ;
29728  void const   *__cil_tmp17 ;
29729  unsigned int __cil_tmp18 ;
29730  unsigned long __cil_tmp19 ;
29731  unsigned long __cil_tmp20 ;
29732  __le16 __cil_tmp21 ;
29733  unsigned int __cil_tmp22 ;
29734  unsigned int __cil_tmp23 ;
29735  unsigned long __cil_tmp24 ;
29736  __le16 __cil_tmp25 ;
29737  unsigned int __cil_tmp26 ;
29738  unsigned int __cil_tmp27 ;
29739  __le16 __cil_tmp28 ;
29740  unsigned int __cil_tmp29 ;
29741  unsigned int __cil_tmp30 ;
29742  unsigned int __cil_tmp31 ;
29743  unsigned int __cil_tmp32 ;
29744  unsigned int __cil_tmp33 ;
29745  unsigned long __cil_tmp34 ;
29746  struct slgt_desc *__cil_tmp35 ;
29747  bool __cil_tmp36 ;
29748
29749  {
29750  {
29751#line 4908
29752  tmp = free_tbuf_count(info);
29753  }
29754  {
29755#line 4908
29756  __cil_tmp10 = size + 255U;
29757#line 4908
29758  __cil_tmp11 = __cil_tmp10 / 256U;
29759#line 4908
29760  if (__cil_tmp11 > tmp) {
29761#line 4909
29762    return ((bool )0);
29763  } else {
29764
29765  }
29766  }
29767#line 4911
29768  if (debug_level > 0) {
29769    {
29770#line 4911
29771    __cil_tmp12 = (int )size;
29772#line 4911
29773    trace_block(info, buf, __cil_tmp12, "tx");
29774    }
29775  } else {
29776
29777  }
29778#line 4924
29779  i = info->tbuf_current;
29780#line 4924
29781  info->tbuf_start = i;
29782#line 4926
29783  goto ldv_37842;
29784  ldv_37841: 
29785#line 4927
29786  __cil_tmp13 = (unsigned long )i;
29787#line 4927
29788  __cil_tmp14 = info->tbufs;
29789#line 4927
29790  d = __cil_tmp14 + __cil_tmp13;
29791#line 4929
29792  if (size <= 256U) {
29793#line 4929
29794    count = (unsigned short )size;
29795  } else {
29796#line 4929
29797    count = (unsigned short)256;
29798  }
29799  {
29800#line 4930
29801  __len = (size_t )count;
29802#line 4930
29803  __cil_tmp15 = d->buf;
29804#line 4930
29805  __cil_tmp16 = (void *)__cil_tmp15;
29806#line 4930
29807  __cil_tmp17 = (void const   *)buf;
29808#line 4930
29809  __ret = __builtin_memcpy(__cil_tmp16, __cil_tmp17, __len);
29810#line 4932
29811  __cil_tmp18 = (unsigned int )count;
29812#line 4932
29813  size = size - __cil_tmp18;
29814#line 4933
29815  __cil_tmp19 = (unsigned long )count;
29816#line 4933
29817  buf = buf + __cil_tmp19;
29818  }
29819#line 4939
29820  if (size == 0U) {
29821    {
29822#line 4939
29823    __cil_tmp20 = info->params.mode;
29824#line 4939
29825    if (__cil_tmp20 == 2UL) {
29826#line 4941
29827      __cil_tmp21 = d->status;
29828#line 4941
29829      __cil_tmp22 = (unsigned int )__cil_tmp21;
29830#line 4941
29831      __cil_tmp23 = __cil_tmp22 | 1U;
29832#line 4941
29833      d->status = (__le16 )__cil_tmp23;
29834    } else {
29835#line 4939
29836      goto _L;
29837    }
29838    }
29839  } else {
29840    _L: 
29841    {
29842#line 4939
29843    __cil_tmp24 = info->params.mode;
29844#line 4939
29845    if (__cil_tmp24 == 6UL) {
29846#line 4941
29847      __cil_tmp25 = d->status;
29848#line 4941
29849      __cil_tmp26 = (unsigned int )__cil_tmp25;
29850#line 4941
29851      __cil_tmp27 = __cil_tmp26 | 1U;
29852#line 4941
29853      d->status = (__le16 )__cil_tmp27;
29854    } else {
29855#line 4943
29856      __cil_tmp28 = d->status;
29857#line 4943
29858      __cil_tmp29 = (unsigned int )__cil_tmp28;
29859#line 4943
29860      __cil_tmp30 = __cil_tmp29 & 65534U;
29861#line 4943
29862      d->status = (__le16 )__cil_tmp30;
29863    }
29864    }
29865  }
29866  {
29867#line 4946
29868  __cil_tmp31 = info->tbuf_start;
29869#line 4946
29870  if (__cil_tmp31 != i) {
29871#line 4947
29872    d->count = count;
29873  } else {
29874
29875  }
29876  }
29877#line 4948
29878  d->buf_count = count;
29879#line 4950
29880  i = i + 1U;
29881  {
29882#line 4950
29883  __cil_tmp32 = info->tbuf_count;
29884#line 4950
29885  if (i == __cil_tmp32) {
29886#line 4951
29887    i = 0U;
29888  } else {
29889
29890  }
29891  }
29892  ldv_37842: ;
29893#line 4926
29894  if (size != 0U) {
29895#line 4927
29896    goto ldv_37841;
29897  } else {
29898#line 4929
29899    goto ldv_37843;
29900  }
29901  ldv_37843: 
29902#line 4954
29903  info->tbuf_current = i;
29904#line 4957
29905  __cil_tmp33 = info->tbuf_start;
29906#line 4957
29907  __cil_tmp34 = (unsigned long )__cil_tmp33;
29908#line 4957
29909  __cil_tmp35 = info->tbufs;
29910#line 4957
29911  d = __cil_tmp35 + __cil_tmp34;
29912#line 4958
29913  d->count = d->buf_count;
29914  {
29915#line 4961
29916  __cil_tmp36 = info->tx_active;
29917#line 4961
29918  if (! __cil_tmp36) {
29919    {
29920#line 4962
29921    tx_start(info);
29922    }
29923  } else {
29924
29925  }
29926  }
29927  {
29928#line 4963
29929  update_tx_timer(info);
29930  }
29931#line 4965
29932  return ((bool )1);
29933}
29934}
29935#line 4968 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
29936static int register_test(struct slgt_info *info ) 
29937{ unsigned short patterns[6U] ;
29938  unsigned int count ;
29939  unsigned int i ;
29940  int rc ;
29941  __u16 tmp ;
29942  __u16 tmp___0 ;
29943  __u32 tmp___1 ;
29944  int __cil_tmp9 ;
29945  __u16 __cil_tmp10 ;
29946  int __cil_tmp11 ;
29947  __u16 __cil_tmp12 ;
29948  int __cil_tmp13 ;
29949  int __cil_tmp14 ;
29950  int __cil_tmp15 ;
29951  int __cil_tmp16 ;
29952  unsigned int __cil_tmp17 ;
29953  int __cil_tmp18 ;
29954
29955  {
29956#line 4970
29957  patterns[0] = (unsigned short)0;
29958#line 4970
29959  patterns[1] = (unsigned short)65535;
29960#line 4970
29961  patterns[2] = (unsigned short)43690;
29962#line 4970
29963  patterns[3] = (unsigned short)21845;
29964#line 4970
29965  patterns[4] = (unsigned short)26985;
29966#line 4970
29967  patterns[5] = (unsigned short)38550;
29968#line 4972
29969  count = 6U;
29970#line 4974
29971  rc = 0;
29972#line 4976
29973  i = 0U;
29974#line 4976
29975  goto ldv_37855;
29976  ldv_37854: 
29977  {
29978#line 4977
29979  __cil_tmp9 = (int )patterns[i];
29980#line 4977
29981  __cil_tmp10 = (__u16 )__cil_tmp9;
29982#line 4977
29983  wr_reg16(info, 132U, __cil_tmp10);
29984#line 4978
29985  __cil_tmp11 = (int )patterns[(i + 1U) % count];
29986#line 4978
29987  __cil_tmp12 = (__u16 )__cil_tmp11;
29988#line 4978
29989  wr_reg16(info, 138U, __cil_tmp12);
29990#line 4979
29991  tmp = rd_reg16(info, 132U);
29992  }
29993  {
29994#line 4979
29995  __cil_tmp13 = (int )patterns[i];
29996#line 4979
29997  __cil_tmp14 = (int )tmp;
29998#line 4979
29999  if (__cil_tmp14 != __cil_tmp13) {
30000#line 4981
30001    rc = -19;
30002#line 4982
30003    goto ldv_37853;
30004  } else {
30005    {
30006#line 4979
30007    tmp___0 = rd_reg16(info, 138U);
30008    }
30009    {
30010#line 4979
30011    __cil_tmp15 = (int )patterns[(i + 1U) % count];
30012#line 4979
30013    __cil_tmp16 = (int )tmp___0;
30014#line 4979
30015    if (__cil_tmp16 != __cil_tmp15) {
30016#line 4981
30017      rc = -19;
30018#line 4982
30019      goto ldv_37853;
30020    } else {
30021
30022    }
30023    }
30024  }
30025  }
30026#line 4976
30027  i = i + 1U;
30028  ldv_37855: ;
30029#line 4976
30030  if (i < count) {
30031#line 4977
30032    goto ldv_37854;
30033  } else {
30034#line 4979
30035    goto ldv_37853;
30036  }
30037  ldv_37853: 
30038  {
30039#line 4985
30040  tmp___1 = rd_reg32(info, 4U);
30041#line 4985
30042  __cil_tmp17 = tmp___1 & 32U;
30043#line 4985
30044  __cil_tmp18 = __cil_tmp17 != 0U;
30045#line 4985
30046  info->gpio_present = (unsigned int )__cil_tmp18;
30047#line 4986
30048  info->init_error = rc == 0;
30049  }
30050#line 4987
30051  return (rc);
30052}
30053}
30054#line 4990 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
30055static int irq_test(struct slgt_info *info ) 
30056{ unsigned long timeout ;
30057  unsigned long flags ;
30058  struct tty_struct *oldtty ;
30059  u32 speed ;
30060  raw_spinlock_t *tmp ;
30061  __u16 tmp___0 ;
30062  __u16 tmp___1 ;
30063  unsigned long tmp___2 ;
30064  raw_spinlock_t *tmp___3 ;
30065  int tmp___4 ;
30066  unsigned long __cil_tmp12 ;
30067  spinlock_t *__cil_tmp13 ;
30068  unsigned int __cil_tmp14 ;
30069  unsigned int __cil_tmp15 ;
30070  int __cil_tmp16 ;
30071  __u16 __cil_tmp17 ;
30072  unsigned int __cil_tmp18 ;
30073  unsigned int __cil_tmp19 ;
30074  int __cil_tmp20 ;
30075  __u16 __cil_tmp21 ;
30076  __u16 __cil_tmp22 ;
30077  spinlock_t *__cil_tmp23 ;
30078  bool __cil_tmp24 ;
30079  spinlock_t *__cil_tmp25 ;
30080  spinlock_t *__cil_tmp26 ;
30081  bool __cil_tmp27 ;
30082  bool __cil_tmp28 ;
30083
30084  {
30085  {
30086#line 4994
30087  oldtty = info->port.tty;
30088#line 4995
30089  __cil_tmp12 = info->params.data_rate;
30090#line 4995
30091  speed = (u32 )__cil_tmp12;
30092#line 4997
30093  info->params.data_rate = 921600UL;
30094#line 4998
30095  info->port.tty = (struct tty_struct *)0;
30096#line 5000
30097  __cil_tmp13 = & info->lock;
30098#line 5000
30099  tmp = spinlock_check(__cil_tmp13);
30100#line 5000
30101  flags = _raw_spin_lock_irqsave(tmp);
30102#line 5001
30103  async_mode(info);
30104#line 5002
30105  tmp___0 = rd_reg16(info, 140U);
30106#line 5002
30107  __cil_tmp14 = (unsigned int )tmp___0;
30108#line 5002
30109  __cil_tmp15 = __cil_tmp14 | 4096U;
30110#line 5002
30111  __cil_tmp16 = (int )__cil_tmp15;
30112#line 5002
30113  __cil_tmp17 = (__u16 )__cil_tmp16;
30114#line 5002
30115  wr_reg16(info, 140U, __cil_tmp17);
30116#line 5005
30117  tmp___1 = rd_reg16(info, 130U);
30118#line 5005
30119  __cil_tmp18 = (unsigned int )tmp___1;
30120#line 5005
30121  __cil_tmp19 = __cil_tmp18 | 2U;
30122#line 5005
30123  __cil_tmp20 = (int )__cil_tmp19;
30124#line 5005
30125  __cil_tmp21 = (__u16 )__cil_tmp20;
30126#line 5005
30127  wr_reg16(info, 130U, __cil_tmp21);
30128#line 5009
30129  __cil_tmp22 = (__u16 )0;
30130#line 5009
30131  wr_reg16(info, 128U, __cil_tmp22);
30132#line 5012
30133  info->init_error = 3;
30134#line 5013
30135  info->irq_occurred = (bool )0;
30136#line 5015
30137  __cil_tmp23 = & info->lock;
30138#line 5015
30139  spin_unlock_irqrestore(__cil_tmp23, flags);
30140#line 5017
30141  timeout = 100UL;
30142  }
30143#line 5018
30144  goto ldv_37867;
30145  ldv_37866: 
30146  {
30147#line 5019
30148  msleep_interruptible(10U);
30149  }
30150  ldv_37867: 
30151#line 5018
30152  tmp___2 = timeout;
30153#line 5018
30154  timeout = timeout - 1UL;
30155#line 5018
30156  if (tmp___2 != 0UL) {
30157    {
30158#line 5018
30159    __cil_tmp24 = info->irq_occurred;
30160#line 5018
30161    if (! __cil_tmp24) {
30162#line 5019
30163      goto ldv_37866;
30164    } else {
30165#line 5021
30166      goto ldv_37868;
30167    }
30168    }
30169  } else {
30170#line 5021
30171    goto ldv_37868;
30172  }
30173  ldv_37868: 
30174  {
30175#line 5021
30176  __cil_tmp25 = & info->lock;
30177#line 5021
30178  tmp___3 = spinlock_check(__cil_tmp25);
30179#line 5021
30180  flags = _raw_spin_lock_irqsave(tmp___3);
30181#line 5022
30182  reset_port(info);
30183#line 5023
30184  __cil_tmp26 = & info->lock;
30185#line 5023
30186  spin_unlock_irqrestore(__cil_tmp26, flags);
30187#line 5025
30188  info->params.data_rate = (unsigned long )speed;
30189#line 5026
30190  info->port.tty = oldtty;
30191  }
30192  {
30193#line 5028
30194  __cil_tmp27 = info->irq_occurred;
30195#line 5028
30196  if ((int )__cil_tmp27) {
30197#line 5028
30198    info->init_error = 0;
30199  } else {
30200#line 5028
30201    info->init_error = 3;
30202  }
30203  }
30204  {
30205#line 5029
30206  __cil_tmp28 = info->irq_occurred;
30207#line 5029
30208  if ((int )__cil_tmp28) {
30209#line 5029
30210    tmp___4 = 0;
30211  } else {
30212#line 5029
30213    tmp___4 = -19;
30214  }
30215  }
30216#line 5029
30217  return (tmp___4);
30218}
30219}
30220#line 5032 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
30221static int loopback_test_rx(struct slgt_info *info ) 
30222{ unsigned char *src ;
30223  unsigned char *dest ;
30224  int count ;
30225  struct slgt_desc *__cil_tmp5 ;
30226  __le16 __cil_tmp6 ;
30227  short __cil_tmp7 ;
30228  int __cil_tmp8 ;
30229  struct slgt_desc *__cil_tmp9 ;
30230  __le16 __cil_tmp10 ;
30231  struct slgt_desc *__cil_tmp11 ;
30232  char *__cil_tmp12 ;
30233  unsigned char *__cil_tmp13 ;
30234  unsigned char __cil_tmp14 ;
30235  int __cil_tmp15 ;
30236  int __cil_tmp16 ;
30237  unsigned int __cil_tmp17 ;
30238  unsigned char *__cil_tmp18 ;
30239  char const   *__cil_tmp19 ;
30240  unsigned int __cil_tmp20 ;
30241  int __cil_tmp21 ;
30242
30243  {
30244  {
30245#line 5037
30246  __cil_tmp5 = info->rbufs;
30247#line 5037
30248  __cil_tmp6 = __cil_tmp5->status;
30249#line 5037
30250  __cil_tmp7 = (short )__cil_tmp6;
30251#line 5037
30252  __cil_tmp8 = (int )__cil_tmp7;
30253#line 5037
30254  if (__cil_tmp8 < 0) {
30255#line 5038
30256    __cil_tmp9 = info->rbufs;
30257#line 5038
30258    __cil_tmp10 = __cil_tmp9->count;
30259#line 5038
30260    count = (int )__cil_tmp10;
30261#line 5039
30262    __cil_tmp11 = info->rbufs;
30263#line 5039
30264    __cil_tmp12 = __cil_tmp11->buf;
30265#line 5039
30266    src = (unsigned char *)__cil_tmp12;
30267#line 5040
30268    dest = info->tmp_rbuf;
30269#line 5042
30270    goto ldv_37879;
30271    ldv_37878: ;
30272    {
30273#line 5044
30274    __cil_tmp13 = src + 1UL;
30275#line 5044
30276    __cil_tmp14 = *__cil_tmp13;
30277#line 5044
30278    __cil_tmp15 = (int )__cil_tmp14;
30279#line 5044
30280    __cil_tmp16 = __cil_tmp15 & 768;
30281#line 5044
30282    if (__cil_tmp16 == 0) {
30283#line 5045
30284      *dest = *src;
30285#line 5046
30286      dest = dest + 1;
30287#line 5047
30288      __cil_tmp17 = info->tmp_rbuf_count;
30289#line 5047
30290      info->tmp_rbuf_count = __cil_tmp17 + 1U;
30291    } else {
30292
30293    }
30294    }
30295#line 5042
30296    count = count + -2;
30297#line 5042
30298    src = src + 2UL;
30299    ldv_37879: ;
30300#line 5042
30301    if (count != 0) {
30302#line 5043
30303      goto ldv_37878;
30304    } else {
30305#line 5045
30306      goto ldv_37880;
30307    }
30308    ldv_37880: ;
30309#line 5050
30310    if (debug_level > 0) {
30311      {
30312#line 5050
30313      __cil_tmp18 = info->tmp_rbuf;
30314#line 5050
30315      __cil_tmp19 = (char const   *)__cil_tmp18;
30316#line 5050
30317      __cil_tmp20 = info->tmp_rbuf_count;
30318#line 5050
30319      __cil_tmp21 = (int )__cil_tmp20;
30320#line 5050
30321      trace_block(info, __cil_tmp19, __cil_tmp21, "rx");
30322      }
30323    } else {
30324
30325    }
30326#line 5051
30327    return (1);
30328  } else {
30329
30330  }
30331  }
30332#line 5053
30333  return (0);
30334}
30335}
30336#line 5056 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
30337static int loopback_test(struct slgt_info *info ) 
30338{ unsigned long timeout ;
30339  u16 count ;
30340  unsigned char buf[20U] ;
30341  int rc ;
30342  unsigned long flags ;
30343  struct tty_struct *oldtty ;
30344  MGSL_PARAMS params ;
30345  size_t __len ;
30346  void *__ret ;
30347  raw_spinlock_t *tmp ;
30348  int tmp___0 ;
30349  int tmp___1 ;
30350  raw_spinlock_t *tmp___2 ;
30351  size_t __len___0 ;
30352  void *__ret___0 ;
30353  void *__cil_tmp17 ;
30354  MGSL_PARAMS *__cil_tmp18 ;
30355  void const   *__cil_tmp19 ;
30356  void *__cil_tmp20 ;
30357  MGSL_PARAMS *__cil_tmp21 ;
30358  void const   *__cil_tmp22 ;
30359  int __cil_tmp23 ;
30360  int __cil_tmp24 ;
30361  unsigned int __cil_tmp25 ;
30362  unsigned char *__cil_tmp26 ;
30363  void *__cil_tmp27 ;
30364  spinlock_t *__cil_tmp28 ;
30365  char const   *__cil_tmp29 ;
30366  unsigned int __cil_tmp30 ;
30367  spinlock_t *__cil_tmp31 ;
30368  unsigned int __cil_tmp32 ;
30369  unsigned int __cil_tmp33 ;
30370  void const   *__cil_tmp34 ;
30371  unsigned char *__cil_tmp35 ;
30372  void const   *__cil_tmp36 ;
30373  size_t __cil_tmp37 ;
30374  spinlock_t *__cil_tmp38 ;
30375  spinlock_t *__cil_tmp39 ;
30376  MGSL_PARAMS *__cil_tmp40 ;
30377  void *__cil_tmp41 ;
30378  void const   *__cil_tmp42 ;
30379  MGSL_PARAMS *__cil_tmp43 ;
30380  void *__cil_tmp44 ;
30381  void const   *__cil_tmp45 ;
30382
30383  {
30384#line 5061
30385  count = (u16 )20U;
30386#line 5063
30387  rc = -19;
30388#line 5066
30389  oldtty = info->port.tty;
30390#line 5069
30391  __len = 48UL;
30392#line 5069
30393  if (__len > 63UL) {
30394    {
30395#line 5069
30396    __cil_tmp17 = (void *)(& params);
30397#line 5069
30398    __cil_tmp18 = & info->params;
30399#line 5069
30400    __cil_tmp19 = (void const   *)__cil_tmp18;
30401#line 5069
30402    __ret = __memcpy(__cil_tmp17, __cil_tmp19, __len);
30403    }
30404  } else {
30405    {
30406#line 5069
30407    __cil_tmp20 = (void *)(& params);
30408#line 5069
30409    __cil_tmp21 = & info->params;
30410#line 5069
30411    __cil_tmp22 = (void const   *)__cil_tmp21;
30412#line 5069
30413    __ret = __builtin_memcpy(__cil_tmp20, __cil_tmp22, __len);
30414    }
30415  }
30416#line 5071
30417  info->params.mode = 1UL;
30418#line 5072
30419  info->params.data_rate = 921600UL;
30420#line 5073
30421  info->params.loopback = (unsigned char)1;
30422#line 5074
30423  info->port.tty = (struct tty_struct *)0;
30424#line 5077
30425  count = (u16 )0U;
30426#line 5077
30427  goto ldv_37895;
30428  ldv_37894: 
30429#line 5078
30430  buf[(int )count] = (unsigned char )count;
30431#line 5077
30432  __cil_tmp23 = (int )count;
30433#line 5077
30434  __cil_tmp24 = __cil_tmp23 + 1;
30435#line 5077
30436  count = (u16 )__cil_tmp24;
30437  ldv_37895: ;
30438  {
30439#line 5077
30440  __cil_tmp25 = (unsigned int )count;
30441#line 5077
30442  if (__cil_tmp25 <= 19U) {
30443#line 5078
30444    goto ldv_37894;
30445  } else {
30446#line 5080
30447    goto ldv_37896;
30448  }
30449  }
30450  ldv_37896: 
30451  {
30452#line 5080
30453  info->tmp_rbuf_count = 0U;
30454#line 5081
30455  __cil_tmp26 = info->tmp_rbuf;
30456#line 5081
30457  __cil_tmp27 = (void *)__cil_tmp26;
30458#line 5081
30459  memset(__cil_tmp27, 0, 20UL);
30460#line 5084
30461  __cil_tmp28 = & info->lock;
30462#line 5084
30463  tmp = spinlock_check(__cil_tmp28);
30464#line 5084
30465  flags = _raw_spin_lock_irqsave(tmp);
30466#line 5085
30467  async_mode(info);
30468#line 5086
30469  rx_start(info);
30470#line 5087
30471  __cil_tmp29 = (char const   *)(& buf);
30472#line 5087
30473  __cil_tmp30 = (unsigned int )count;
30474#line 5087
30475  tx_load(info, __cil_tmp29, __cil_tmp30);
30476#line 5088
30477  __cil_tmp31 = & info->lock;
30478#line 5088
30479  spin_unlock_irqrestore(__cil_tmp31, flags);
30480#line 5091
30481  timeout = 100UL;
30482  }
30483#line 5091
30484  goto ldv_37902;
30485  ldv_37901: 
30486  {
30487#line 5092
30488  msleep_interruptible(10U);
30489#line 5093
30490  tmp___0 = loopback_test_rx(info);
30491  }
30492#line 5093
30493  if (tmp___0 != 0) {
30494#line 5094
30495    rc = 0;
30496#line 5095
30497    goto ldv_37900;
30498  } else {
30499
30500  }
30501#line 5091
30502  timeout = timeout - 1UL;
30503  ldv_37902: ;
30504#line 5091
30505  if (timeout != 0UL) {
30506#line 5092
30507    goto ldv_37901;
30508  } else {
30509#line 5094
30510    goto ldv_37900;
30511  }
30512  ldv_37900: ;
30513#line 5100
30514  if (rc == 0) {
30515    {
30516#line 5100
30517    __cil_tmp32 = (unsigned int )count;
30518#line 5100
30519    __cil_tmp33 = info->tmp_rbuf_count;
30520#line 5100
30521    if (__cil_tmp33 != __cil_tmp32) {
30522#line 5102
30523      rc = -19;
30524    } else {
30525      {
30526#line 5100
30527      __cil_tmp34 = (void const   *)(& buf);
30528#line 5100
30529      __cil_tmp35 = info->tmp_rbuf;
30530#line 5100
30531      __cil_tmp36 = (void const   *)__cil_tmp35;
30532#line 5100
30533      __cil_tmp37 = (size_t )count;
30534#line 5100
30535      tmp___1 = memcmp(__cil_tmp34, __cil_tmp36, __cil_tmp37);
30536      }
30537#line 5100
30538      if (tmp___1 != 0) {
30539#line 5102
30540        rc = -19;
30541      } else {
30542
30543      }
30544    }
30545    }
30546  } else {
30547
30548  }
30549  {
30550#line 5105
30551  __cil_tmp38 = & info->lock;
30552#line 5105
30553  tmp___2 = spinlock_check(__cil_tmp38);
30554#line 5105
30555  flags = _raw_spin_lock_irqsave(tmp___2);
30556#line 5106
30557  reset_adapter(info);
30558#line 5107
30559  __cil_tmp39 = & info->lock;
30560#line 5107
30561  spin_unlock_irqrestore(__cil_tmp39, flags);
30562#line 5109
30563  __len___0 = 48UL;
30564  }
30565#line 5109
30566  if (__len___0 > 63UL) {
30567    {
30568#line 5109
30569    __cil_tmp40 = & info->params;
30570#line 5109
30571    __cil_tmp41 = (void *)__cil_tmp40;
30572#line 5109
30573    __cil_tmp42 = (void const   *)(& params);
30574#line 5109
30575    __ret___0 = __memcpy(__cil_tmp41, __cil_tmp42, __len___0);
30576    }
30577  } else {
30578    {
30579#line 5109
30580    __cil_tmp43 = & info->params;
30581#line 5109
30582    __cil_tmp44 = (void *)__cil_tmp43;
30583#line 5109
30584    __cil_tmp45 = (void const   *)(& params);
30585#line 5109
30586    __ret___0 = __builtin_memcpy(__cil_tmp44, __cil_tmp45, __len___0);
30587    }
30588  }
30589#line 5110
30590  info->port.tty = oldtty;
30591#line 5112
30592  if (rc != 0) {
30593#line 5112
30594    info->init_error = 5;
30595  } else {
30596#line 5112
30597    info->init_error = 0;
30598  }
30599#line 5113
30600  return (rc);
30601}
30602}
30603#line 5116 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
30604static int adapter_test(struct slgt_info *info ) 
30605{ int tmp ;
30606  int tmp___0 ;
30607  int tmp___1 ;
30608  char (*__cil_tmp5)[25U] ;
30609  char *__cil_tmp6 ;
30610  char (*__cil_tmp7)[25U] ;
30611  char *__cil_tmp8 ;
30612  u32 __cil_tmp9 ;
30613  char (*__cil_tmp10)[25U] ;
30614  char *__cil_tmp11 ;
30615  unsigned int __cil_tmp12 ;
30616  char (*__cil_tmp13)[25U] ;
30617  char *__cil_tmp14 ;
30618
30619  {
30620#line 5118
30621  if (debug_level > 2) {
30622    {
30623#line 5118
30624    __cil_tmp5 = & info->device_name;
30625#line 5118
30626    __cil_tmp6 = (char *)__cil_tmp5;
30627#line 5118
30628    printk("testing %s\n", __cil_tmp6);
30629    }
30630  } else {
30631
30632  }
30633  {
30634#line 5119
30635  tmp___1 = register_test(info);
30636  }
30637#line 5119
30638  if (tmp___1 < 0) {
30639    {
30640#line 5120
30641    __cil_tmp7 = & info->device_name;
30642#line 5120
30643    __cil_tmp8 = (char *)__cil_tmp7;
30644#line 5120
30645    __cil_tmp9 = info->phys_reg_addr;
30646#line 5120
30647    printk("register test failure %s addr=%08X\n", __cil_tmp8, __cil_tmp9);
30648    }
30649  } else {
30650    {
30651#line 5122
30652    tmp___0 = irq_test(info);
30653    }
30654#line 5122
30655    if (tmp___0 < 0) {
30656      {
30657#line 5123
30658      __cil_tmp10 = & info->device_name;
30659#line 5123
30660      __cil_tmp11 = (char *)__cil_tmp10;
30661#line 5123
30662      __cil_tmp12 = info->irq_level;
30663#line 5123
30664      printk("IRQ test failure %s IRQ=%d\n", __cil_tmp11, __cil_tmp12);
30665      }
30666    } else {
30667      {
30668#line 5125
30669      tmp = loopback_test(info);
30670      }
30671#line 5125
30672      if (tmp < 0) {
30673        {
30674#line 5126
30675        __cil_tmp13 = & info->device_name;
30676#line 5126
30677        __cil_tmp14 = (char *)__cil_tmp13;
30678#line 5126
30679        printk("loopback test failure %s\n", __cil_tmp14);
30680        }
30681      } else {
30682
30683      }
30684    }
30685  }
30686#line 5128
30687  return (info->init_error);
30688}
30689}
30690#line 5134 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
30691static void tx_timeout(unsigned long context ) 
30692{ struct slgt_info *info ;
30693  unsigned long flags ;
30694  raw_spinlock_t *tmp ;
30695  char (*__cil_tmp5)[25U] ;
30696  char *__cil_tmp6 ;
30697  bool __cil_tmp7 ;
30698  unsigned long __cil_tmp8 ;
30699  __u32 __cil_tmp9 ;
30700  spinlock_t *__cil_tmp10 ;
30701  spinlock_t *__cil_tmp11 ;
30702  int __cil_tmp12 ;
30703
30704  {
30705#line 5136
30706  info = (struct slgt_info *)context;
30707#line 5139
30708  if (debug_level > 2) {
30709    {
30710#line 5139
30711    __cil_tmp5 = & info->device_name;
30712#line 5139
30713    __cil_tmp6 = (char *)__cil_tmp5;
30714#line 5139
30715    printk("%s tx_timeout\n", __cil_tmp6);
30716    }
30717  } else {
30718
30719  }
30720  {
30721#line 5140
30722  __cil_tmp7 = info->tx_active;
30723#line 5140
30724  if ((int )__cil_tmp7) {
30725    {
30726#line 5140
30727    __cil_tmp8 = info->params.mode;
30728#line 5140
30729    if (__cil_tmp8 == 2UL) {
30730#line 5141
30731      __cil_tmp9 = info->icount.txtimeout;
30732#line 5141
30733      info->icount.txtimeout = __cil_tmp9 + 1U;
30734    } else {
30735
30736    }
30737    }
30738  } else {
30739
30740  }
30741  }
30742  {
30743#line 5143
30744  __cil_tmp10 = & info->lock;
30745#line 5143
30746  tmp = spinlock_check(__cil_tmp10);
30747#line 5143
30748  flags = _raw_spin_lock_irqsave(tmp);
30749#line 5144
30750  tx_stop(info);
30751#line 5145
30752  __cil_tmp11 = & info->lock;
30753#line 5145
30754  spin_unlock_irqrestore(__cil_tmp11, flags);
30755  }
30756  {
30757#line 5148
30758  __cil_tmp12 = info->netcount;
30759#line 5148
30760  if (__cil_tmp12 != 0) {
30761    {
30762#line 5149
30763    hdlcdev_tx_done(info);
30764    }
30765  } else {
30766    {
30767#line 5152
30768    bh_transmit(info);
30769    }
30770  }
30771  }
30772#line 5153
30773  return;
30774}
30775}
30776#line 5158 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
30777static void rx_timeout(unsigned long context ) 
30778{ struct slgt_info *info ;
30779  unsigned long flags ;
30780  raw_spinlock_t *tmp ;
30781  char (*__cil_tmp5)[25U] ;
30782  char *__cil_tmp6 ;
30783  spinlock_t *__cil_tmp7 ;
30784  u32 __cil_tmp8 ;
30785  spinlock_t *__cil_tmp9 ;
30786  struct work_struct *__cil_tmp10 ;
30787
30788  {
30789#line 5160
30790  info = (struct slgt_info *)context;
30791#line 5163
30792  if (debug_level > 2) {
30793    {
30794#line 5163
30795    __cil_tmp5 = & info->device_name;
30796#line 5163
30797    __cil_tmp6 = (char *)__cil_tmp5;
30798#line 5163
30799    printk("%s rx_timeout\n", __cil_tmp6);
30800    }
30801  } else {
30802
30803  }
30804  {
30805#line 5164
30806  __cil_tmp7 = & info->lock;
30807#line 5164
30808  tmp = spinlock_check(__cil_tmp7);
30809#line 5164
30810  flags = _raw_spin_lock_irqsave(tmp);
30811#line 5165
30812  __cil_tmp8 = info->pending_bh;
30813#line 5165
30814  info->pending_bh = __cil_tmp8 | 1U;
30815#line 5166
30816  __cil_tmp9 = & info->lock;
30817#line 5166
30818  spin_unlock_irqrestore(__cil_tmp9, flags);
30819#line 5167
30820  __cil_tmp10 = & info->task;
30821#line 5167
30822  bh_handler(__cil_tmp10);
30823  }
30824#line 5168
30825  return;
30826}
30827}
30828#line 5187
30829void ldv_check_final_state(void) ;
30830#line 5190
30831extern void ldv_check_return_value(int  ) ;
30832#line 5193
30833extern void ldv_initialize(void) ;
30834#line 5196
30835extern int nondet_int(void) ;
30836#line 5199 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
30837int LDV_IN_INTERRUPT  ;
30838#line 5202 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
30839void main(void) 
30840{ struct pci_dev *var_group1 ;
30841  struct pci_device_id  const  *var_init_one_102_p1 ;
30842  int res_init_one_102 ;
30843  struct inode *var_group2 ;
30844  struct file *var_group3 ;
30845  int res_synclink_gt_proc_open_26 ;
30846  struct net_device *var_group4 ;
30847  int res_hdlcdev_open_33 ;
30848  int res_hdlcdev_close_34 ;
30849  struct ifreq *var_group5 ;
30850  int var_hdlcdev_ioctl_35_p2 ;
30851  struct tty_port *var_group6 ;
30852  int var_dtr_rts_87_p1 ;
30853  struct tty_struct *var_group7 ;
30854  int res_open_5 ;
30855  unsigned char const   *var_write_10_p1 ;
30856  int var_write_10_p2 ;
30857  unsigned char var_put_char_11_p1 ;
30858  unsigned int var_ioctl_19_p1 ;
30859  unsigned long var_ioctl_19_p2 ;
30860  unsigned int var_slgt_compat_ioctl_23_p1 ;
30861  unsigned long var_slgt_compat_ioctl_23_p2 ;
30862  char var_send_xchar_12_p1 ;
30863  int var_set_break_30_p1 ;
30864  int var_wait_until_sent_13_p1 ;
30865  struct ktermios *var_group8 ;
30866  unsigned int var_tiocmset_85_p1 ;
30867  unsigned int var_tiocmset_85_p2 ;
30868  struct serial_icounter_struct *var_group9 ;
30869  int var_slgt_interrupt_56_p0 ;
30870  void *var_slgt_interrupt_56_p1 ;
30871  int ldv_s_pci_driver_pci_driver ;
30872  int ldv_s_synclink_gt_proc_fops_file_operations ;
30873  int ldv_s_hdlcdev_ops_net_device_ops ;
30874  int ldv_s_ops_tty_operations ;
30875  int tmp ;
30876  int tmp___0 ;
30877  int tmp___1 ;
30878  int __cil_tmp39 ;
30879  unsigned char __cil_tmp40 ;
30880  int __cil_tmp41 ;
30881  char __cil_tmp42 ;
30882
30883  {
30884  {
30885#line 9847
30886  ldv_s_pci_driver_pci_driver = 0;
30887#line 9849
30888  ldv_s_synclink_gt_proc_fops_file_operations = 0;
30889#line 9851
30890  ldv_s_hdlcdev_ops_net_device_ops = 0;
30891#line 9856
30892  ldv_s_ops_tty_operations = 0;
30893#line 9690
30894  LDV_IN_INTERRUPT = 1;
30895#line 9699
30896  ldv_initialize();
30897#line 9830
30898  tmp = slgt_init();
30899  }
30900#line 9830
30901  if (tmp != 0) {
30902#line 9831
30903    goto ldv_final;
30904  } else {
30905
30906  }
30907#line 9862
30908  goto ldv_38011;
30909  ldv_38010: 
30910  {
30911#line 9869
30912  tmp___0 = nondet_int();
30913  }
30914#line 9871
30915  if (tmp___0 == 0) {
30916#line 9871
30917    goto case_0;
30918  } else
30919#line 10030
30920  if (tmp___0 == 1) {
30921#line 10030
30922    goto case_1;
30923  } else
30924#line 10189
30925  if (tmp___0 == 2) {
30926#line 10189
30927    goto case_2;
30928  } else
30929#line 10348
30930  if (tmp___0 == 3) {
30931#line 10348
30932    goto case_3;
30933  } else
30934#line 10507
30935  if (tmp___0 == 4) {
30936#line 10507
30937    goto case_4;
30938  } else
30939#line 10663
30940  if (tmp___0 == 5) {
30941#line 10663
30942    goto case_5;
30943  } else
30944#line 10819
30945  if (tmp___0 == 6) {
30946#line 10819
30947    goto case_6;
30948  } else
30949#line 10975
30950  if (tmp___0 == 7) {
30951#line 10975
30952    goto case_7;
30953  } else
30954#line 11131
30955  if (tmp___0 == 8) {
30956#line 11131
30957    goto case_8;
30958  } else
30959#line 11290
30960  if (tmp___0 == 9) {
30961#line 11290
30962    goto case_9;
30963  } else
30964#line 11446
30965  if (tmp___0 == 10) {
30966#line 11446
30967    goto case_10;
30968  } else
30969#line 11602
30970  if (tmp___0 == 11) {
30971#line 11602
30972    goto case_11;
30973  } else
30974#line 11758
30975  if (tmp___0 == 12) {
30976#line 11758
30977    goto case_12;
30978  } else
30979#line 11914
30980  if (tmp___0 == 13) {
30981#line 11914
30982    goto case_13;
30983  } else
30984#line 12070
30985  if (tmp___0 == 14) {
30986#line 12070
30987    goto case_14;
30988  } else
30989#line 12226
30990  if (tmp___0 == 15) {
30991#line 12226
30992    goto case_15;
30993  } else
30994#line 12382
30995  if (tmp___0 == 16) {
30996#line 12382
30997    goto case_16;
30998  } else
30999#line 12538
31000  if (tmp___0 == 17) {
31001#line 12538
31002    goto case_17;
31003  } else
31004#line 12694
31005  if (tmp___0 == 18) {
31006#line 12694
31007    goto case_18;
31008  } else
31009#line 12850
31010  if (tmp___0 == 19) {
31011#line 12850
31012    goto case_19;
31013  } else
31014#line 13006
31015  if (tmp___0 == 20) {
31016#line 13006
31017    goto case_20;
31018  } else
31019#line 13162
31020  if (tmp___0 == 21) {
31021#line 13162
31022    goto case_21;
31023  } else
31024#line 13318
31025  if (tmp___0 == 22) {
31026#line 13318
31027    goto case_22;
31028  } else
31029#line 13474
31030  if (tmp___0 == 23) {
31031#line 13474
31032    goto case_23;
31033  } else
31034#line 13630
31035  if (tmp___0 == 24) {
31036#line 13630
31037    goto case_24;
31038  } else
31039#line 13786
31040  if (tmp___0 == 25) {
31041#line 13786
31042    goto case_25;
31043  } else
31044#line 13942
31045  if (tmp___0 == 26) {
31046#line 13942
31047    goto case_26;
31048  } else
31049#line 14098
31050  if (tmp___0 == 27) {
31051#line 14098
31052    goto case_27;
31053  } else
31054#line 14254
31055  if (tmp___0 == 28) {
31056#line 14254
31057    goto case_28;
31058  } else
31059#line 14410
31060  if (tmp___0 == 29) {
31061#line 14410
31062    goto case_29;
31063  } else
31064#line 14566
31065  if (tmp___0 == 30) {
31066#line 14566
31067    goto case_30;
31068  } else {
31069#line 14722
31070    goto switch_default;
31071#line 9869
31072    if (0) {
31073      case_0: ;
31074#line 9874
31075      if (ldv_s_pci_driver_pci_driver == 0) {
31076        {
31077#line 10002
31078        res_init_one_102 = init_one(var_group1, var_init_one_102_p1);
31079#line 10003
31080        ldv_check_return_value(res_init_one_102);
31081        }
31082#line 10004
31083        if (res_init_one_102 != 0) {
31084#line 10005
31085          goto ldv_module_exit;
31086        } else {
31087
31088        }
31089#line 10023
31090        ldv_s_pci_driver_pci_driver = 0;
31091      } else {
31092
31093      }
31094#line 10029
31095      goto ldv_37978;
31096      case_1: ;
31097#line 10033
31098      if (ldv_s_synclink_gt_proc_fops_file_operations == 0) {
31099        {
31100#line 10153
31101        res_synclink_gt_proc_open_26 = synclink_gt_proc_open(var_group2, var_group3);
31102#line 10154
31103        ldv_check_return_value(res_synclink_gt_proc_open_26);
31104        }
31105#line 10155
31106        if (res_synclink_gt_proc_open_26 != 0) {
31107#line 10156
31108          goto ldv_module_exit;
31109        } else {
31110
31111        }
31112#line 10182
31113        ldv_s_synclink_gt_proc_fops_file_operations = 0;
31114      } else {
31115
31116      }
31117#line 10188
31118      goto ldv_37978;
31119      case_2: ;
31120#line 10192
31121      if (ldv_s_hdlcdev_ops_net_device_ops == 0) {
31122        {
31123#line 10313
31124        res_hdlcdev_open_33 = hdlcdev_open(var_group4);
31125#line 10314
31126        ldv_check_return_value(res_hdlcdev_open_33);
31127        }
31128#line 10315
31129        if (res_hdlcdev_open_33 < 0) {
31130#line 10316
31131          goto ldv_module_exit;
31132        } else {
31133
31134        }
31135#line 10341
31136        ldv_s_hdlcdev_ops_net_device_ops = ldv_s_hdlcdev_ops_net_device_ops + 1;
31137      } else {
31138
31139      }
31140#line 10347
31141      goto ldv_37978;
31142      case_3: ;
31143#line 10351
31144      if (ldv_s_hdlcdev_ops_net_device_ops == 1) {
31145        {
31146#line 10472
31147        res_hdlcdev_close_34 = hdlcdev_close(var_group4);
31148#line 10473
31149        ldv_check_return_value(res_hdlcdev_close_34);
31150        }
31151#line 10474
31152        if (res_hdlcdev_close_34 != 0) {
31153#line 10475
31154          goto ldv_module_exit;
31155        } else {
31156
31157        }
31158#line 10500
31159        ldv_s_hdlcdev_ops_net_device_ops = 0;
31160      } else {
31161
31162      }
31163#line 10506
31164      goto ldv_37978;
31165      case_4: 
31166      {
31167#line 10631
31168      hdlcdev_ioctl(var_group4, var_group5, var_hdlcdev_ioctl_35_p2);
31169      }
31170#line 10662
31171      goto ldv_37978;
31172      case_5: 
31173      {
31174#line 10787
31175      hdlcdev_tx_timeout(var_group4);
31176      }
31177#line 10818
31178      goto ldv_37978;
31179      case_6: 
31180      {
31181#line 10948
31182      carrier_raised(var_group6);
31183      }
31184#line 10974
31185      goto ldv_37978;
31186      case_7: 
31187      {
31188#line 11104
31189      dtr_rts(var_group6, var_dtr_rts_87_p1);
31190      }
31191#line 11130
31192      goto ldv_37978;
31193      case_8: ;
31194#line 11134
31195      if (ldv_s_ops_tty_operations == 0) {
31196        {
31197#line 11250
31198        res_open_5 = open(var_group7, var_group3);
31199#line 11251
31200        ldv_check_return_value(res_open_5);
31201        }
31202#line 11252
31203        if (res_open_5 != 0) {
31204#line 11253
31205          goto ldv_module_exit;
31206        } else {
31207
31208        }
31209#line 11283
31210        ldv_s_ops_tty_operations = ldv_s_ops_tty_operations + 1;
31211      } else {
31212
31213      }
31214#line 11289
31215      goto ldv_37978;
31216      case_9: ;
31217#line 11293
31218      if (ldv_s_ops_tty_operations == 1) {
31219        {
31220#line 11409
31221        close(var_group7, var_group3);
31222#line 11439
31223        ldv_s_ops_tty_operations = 0;
31224        }
31225      } else {
31226
31227      }
31228#line 11445
31229      goto ldv_37978;
31230      case_10: 
31231      {
31232#line 11565
31233      write(var_group7, var_write_10_p1, var_write_10_p2);
31234      }
31235#line 11601
31236      goto ldv_37978;
31237      case_11: 
31238      {
31239#line 11721
31240      __cil_tmp39 = (int )var_put_char_11_p1;
31241#line 11721
31242      __cil_tmp40 = (unsigned char )__cil_tmp39;
31243#line 11721
31244      put_char(var_group7, __cil_tmp40);
31245      }
31246#line 11757
31247      goto ldv_37978;
31248      case_12: 
31249      {
31250#line 11877
31251      flush_chars(var_group7);
31252      }
31253#line 11913
31254      goto ldv_37978;
31255      case_13: 
31256      {
31257#line 12033
31258      write_room(var_group7);
31259      }
31260#line 12069
31261      goto ldv_37978;
31262      case_14: 
31263      {
31264#line 12193
31265      chars_in_buffer(var_group7);
31266      }
31267#line 12225
31268      goto ldv_37978;
31269      case_15: 
31270      {
31271#line 12345
31272      flush_buffer(var_group7);
31273      }
31274#line 12381
31275      goto ldv_37978;
31276      case_16: 
31277      {
31278#line 12501
31279      ioctl(var_group7, var_ioctl_19_p1, var_ioctl_19_p2);
31280      }
31281#line 12537
31282      goto ldv_37978;
31283      case_17: 
31284      {
31285#line 12658
31286      slgt_compat_ioctl(var_group7, var_slgt_compat_ioctl_23_p1, var_slgt_compat_ioctl_23_p2);
31287      }
31288#line 12693
31289      goto ldv_37978;
31290      case_18: 
31291      {
31292#line 12817
31293      throttle(var_group7);
31294      }
31295#line 12849
31296      goto ldv_37978;
31297      case_19: 
31298      {
31299#line 12973
31300      unthrottle(var_group7);
31301      }
31302#line 13005
31303      goto ldv_37978;
31304      case_20: 
31305      {
31306#line 13125
31307      __cil_tmp41 = (int )var_send_xchar_12_p1;
31308#line 13125
31309      __cil_tmp42 = (char )__cil_tmp41;
31310#line 13125
31311      send_xchar(var_group7, __cil_tmp42);
31312      }
31313#line 13161
31314      goto ldv_37978;
31315      case_21: 
31316      {
31317#line 13285
31318      set_break(var_group7, var_set_break_30_p1);
31319      }
31320#line 13317
31321      goto ldv_37978;
31322      case_22: 
31323      {
31324#line 13437
31325      wait_until_sent(var_group7, var_wait_until_sent_13_p1);
31326      }
31327#line 13473
31328      goto ldv_37978;
31329      case_23: 
31330      {
31331#line 13593
31332      set_termios(var_group7, var_group8);
31333      }
31334#line 13629
31335      goto ldv_37978;
31336      case_24: 
31337      {
31338#line 13749
31339      tx_hold(var_group7);
31340      }
31341#line 13785
31342      goto ldv_37978;
31343      case_25: 
31344      {
31345#line 13905
31346      tx_release(var_group7);
31347      }
31348#line 13941
31349      goto ldv_37978;
31350      case_26: 
31351      {
31352#line 14061
31353      hangup(var_group7);
31354      }
31355#line 14097
31356      goto ldv_37978;
31357      case_27: 
31358      {
31359#line 14227
31360      tiocmget(var_group7);
31361      }
31362#line 14253
31363      goto ldv_37978;
31364      case_28: 
31365      {
31366#line 14383
31367      tiocmset(var_group7, var_tiocmset_85_p1, var_tiocmset_85_p2);
31368      }
31369#line 14409
31370      goto ldv_37978;
31371      case_29: 
31372      {
31373#line 14529
31374      get_icount(var_group7, var_group9);
31375      }
31376#line 14565
31377      goto ldv_37978;
31378      case_30: 
31379      {
31380#line 14569
31381      LDV_IN_INTERRUPT = 2;
31382#line 14695
31383      slgt_interrupt(var_slgt_interrupt_56_p0, var_slgt_interrupt_56_p1);
31384#line 14715
31385      LDV_IN_INTERRUPT = 1;
31386      }
31387#line 14721
31388      goto ldv_37978;
31389      switch_default: ;
31390#line 14722
31391      goto ldv_37978;
31392    } else {
31393
31394    }
31395  }
31396  ldv_37978: ;
31397  ldv_38011: 
31398  {
31399#line 9862
31400  tmp___1 = nondet_int();
31401  }
31402#line 9862
31403  if (tmp___1 != 0) {
31404#line 9867
31405    goto ldv_38010;
31406  } else
31407#line 9862
31408  if (ldv_s_pci_driver_pci_driver != 0) {
31409#line 9867
31410    goto ldv_38010;
31411  } else
31412#line 9862
31413  if (ldv_s_synclink_gt_proc_fops_file_operations != 0) {
31414#line 9867
31415    goto ldv_38010;
31416  } else
31417#line 9862
31418  if (ldv_s_hdlcdev_ops_net_device_ops != 0) {
31419#line 9867
31420    goto ldv_38010;
31421  } else
31422#line 9862
31423  if (ldv_s_ops_tty_operations != 0) {
31424#line 9867
31425    goto ldv_38010;
31426  } else {
31427#line 9869
31428    goto ldv_38012;
31429  }
31430  ldv_38012: ;
31431  ldv_module_exit: 
31432  {
31433#line 14859
31434  slgt_exit();
31435  }
31436  ldv_final: 
31437  {
31438#line 14877
31439  ldv_check_final_state();
31440  }
31441#line 14880
31442  return;
31443}
31444}
31445#line 5 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/kernel-rules/files/engine-blast-assert.h"
31446void ldv_blast_assert(void) 
31447{ 
31448
31449  {
31450  ERROR: ;
31451#line 6
31452  goto ERROR;
31453}
31454}
31455#line 6 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/kernel-rules/files/engine-blast.h"
31456extern int ldv_undefined_int(void) ;
31457#line 14897 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
31458int ldv_module_refcounter  =    1;
31459#line 14900 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
31460void ldv_module_get(struct module *module ) 
31461{ struct module *__cil_tmp2 ;
31462  unsigned long __cil_tmp3 ;
31463  unsigned long __cil_tmp4 ;
31464
31465  {
31466  {
31467#line 14903
31468  __cil_tmp2 = (struct module *)0;
31469#line 14903
31470  __cil_tmp3 = (unsigned long )__cil_tmp2;
31471#line 14903
31472  __cil_tmp4 = (unsigned long )module;
31473#line 14903
31474  if (__cil_tmp4 != __cil_tmp3) {
31475#line 14905
31476    ldv_module_refcounter = ldv_module_refcounter + 1;
31477  } else {
31478
31479  }
31480  }
31481#line 14906
31482  return;
31483}
31484}
31485#line 14910 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
31486int ldv_try_module_get(struct module *module ) 
31487{ int module_get_succeeded ;
31488  struct module *__cil_tmp3 ;
31489  unsigned long __cil_tmp4 ;
31490  unsigned long __cil_tmp5 ;
31491
31492  {
31493  {
31494#line 14915
31495  __cil_tmp3 = (struct module *)0;
31496#line 14915
31497  __cil_tmp4 = (unsigned long )__cil_tmp3;
31498#line 14915
31499  __cil_tmp5 = (unsigned long )module;
31500#line 14915
31501  if (__cil_tmp5 != __cil_tmp4) {
31502    {
31503#line 14918
31504    module_get_succeeded = ldv_undefined_int();
31505    }
31506#line 14920
31507    if (module_get_succeeded == 1) {
31508#line 14922
31509      ldv_module_refcounter = ldv_module_refcounter + 1;
31510#line 14924
31511      return (1);
31512    } else {
31513#line 14929
31514      return (0);
31515    }
31516  } else {
31517
31518  }
31519  }
31520#line 14931
31521  return (0);
31522}
31523}
31524#line 14935 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
31525void ldv_module_put(struct module *module ) 
31526{ struct module *__cil_tmp2 ;
31527  unsigned long __cil_tmp3 ;
31528  unsigned long __cil_tmp4 ;
31529
31530  {
31531  {
31532#line 14938
31533  __cil_tmp2 = (struct module *)0;
31534#line 14938
31535  __cil_tmp3 = (unsigned long )__cil_tmp2;
31536#line 14938
31537  __cil_tmp4 = (unsigned long )module;
31538#line 14938
31539  if (__cil_tmp4 != __cil_tmp3) {
31540#line 14940
31541    if (ldv_module_refcounter <= 1) {
31542      {
31543#line 14940
31544      ldv_blast_assert();
31545      }
31546    } else {
31547
31548    }
31549#line 14942
31550    ldv_module_refcounter = ldv_module_refcounter - 1;
31551  } else {
31552
31553  }
31554  }
31555#line 14944
31556  return;
31557}
31558}
31559#line 14947 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
31560void ldv_module_put_and_exit(void) 
31561{ struct module *__cil_tmp1 ;
31562
31563  {
31564  {
31565#line 14949
31566  __cil_tmp1 = (struct module *)1;
31567#line 14949
31568  ldv_module_put(__cil_tmp1);
31569  }
31570  LDV_STOP: ;
31571#line 14951
31572  goto LDV_STOP;
31573}
31574}
31575#line 14955 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
31576unsigned int ldv_module_refcount(void) 
31577{ int __cil_tmp1 ;
31578
31579  {
31580  {
31581#line 14958
31582  __cil_tmp1 = ldv_module_refcounter + -1;
31583#line 14958
31584  return ((unsigned int )__cil_tmp1);
31585  }
31586}
31587}
31588#line 14962 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
31589void ldv_check_final_state(void) 
31590{ 
31591
31592  {
31593#line 14965
31594  if (ldv_module_refcounter != 1) {
31595    {
31596#line 14965
31597    ldv_blast_assert();
31598    }
31599  } else {
31600
31601  }
31602#line 14968
31603  return;
31604}
31605}
31606#line 14968 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
31607__inline static int ldv_try_module_get_1(struct module *module ) 
31608{ int tmp ;
31609
31610  {
31611  {
31612#line 14973
31613  tmp = ldv_try_module_get(module);
31614  }
31615#line 14973
31616  return (tmp);
31617}
31618}
31619#line 14976 "/anthill/stuff/tacas-comp/work/current--X--drivers/tty/synclink_gt.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/tty/synclink_gt.c.p"
31620void ldv_module_put_2(struct module *ldv_func_arg1 ) 
31621{ 
31622
31623  {
31624  {
31625#line 14981
31626  ldv_module_put(ldv_func_arg1);
31627  }
31628#line 14982
31629  return;
31630}
31631}