1
2
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>"
6330
6331#line 1
6332
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}