1
2
3
4#line 19 "include/asm-generic/int-ll64.h"
5typedef signed char __s8;
6#line 22 "include/asm-generic/int-ll64.h"
7typedef short __s16;
8#line 23 "include/asm-generic/int-ll64.h"
9typedef unsigned short __u16;
10#line 25 "include/asm-generic/int-ll64.h"
11typedef int __s32;
12#line 26 "include/asm-generic/int-ll64.h"
13typedef unsigned int __u32;
14#line 29 "include/asm-generic/int-ll64.h"
15typedef long long __s64;
16#line 30 "include/asm-generic/int-ll64.h"
17typedef unsigned long long __u64;
18#line 42 "include/asm-generic/int-ll64.h"
19typedef signed char s8;
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 49 "include/asm-generic/int-ll64.h"
25typedef unsigned int u32;
26#line 51 "include/asm-generic/int-ll64.h"
27typedef long long s64;
28#line 52 "include/asm-generic/int-ll64.h"
29typedef unsigned long long u64;
30#line 11 "include/asm-generic/types.h"
31typedef unsigned short umode_t;
32#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"
33typedef unsigned int __kernel_mode_t;
34#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"
35typedef int __kernel_pid_t;
36#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"
37typedef unsigned int __kernel_uid_t;
38#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"
39typedef unsigned int __kernel_gid_t;
40#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"
41typedef unsigned long __kernel_size_t;
42#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"
43typedef long __kernel_ssize_t;
44#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"
45typedef long __kernel_time_t;
46#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"
47typedef long __kernel_clock_t;
48#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"
49typedef int __kernel_timer_t;
50#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"
51typedef int __kernel_clockid_t;
52#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"
53typedef long long __kernel_loff_t;
54#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"
55typedef __kernel_uid_t __kernel_uid32_t;
56#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"
57typedef __kernel_gid_t __kernel_gid32_t;
58#line 21 "include/linux/types.h"
59typedef __u32 __kernel_dev_t;
60#line 24 "include/linux/types.h"
61typedef __kernel_dev_t dev_t;
62#line 26 "include/linux/types.h"
63typedef __kernel_mode_t mode_t;
64#line 29 "include/linux/types.h"
65typedef __kernel_pid_t pid_t;
66#line 34 "include/linux/types.h"
67typedef __kernel_clockid_t clockid_t;
68#line 37 "include/linux/types.h"
69typedef _Bool bool;
70#line 39 "include/linux/types.h"
71typedef __kernel_uid32_t uid_t;
72#line 40 "include/linux/types.h"
73typedef __kernel_gid32_t gid_t;
74#line 53 "include/linux/types.h"
75typedef __kernel_loff_t loff_t;
76#line 62 "include/linux/types.h"
77typedef __kernel_size_t size_t;
78#line 67 "include/linux/types.h"
79typedef __kernel_ssize_t ssize_t;
80#line 77 "include/linux/types.h"
81typedef __kernel_time_t time_t;
82#line 110 "include/linux/types.h"
83typedef __s32 int32_t;
84#line 116 "include/linux/types.h"
85typedef __u32 uint32_t;
86#line 141 "include/linux/types.h"
87typedef unsigned long sector_t;
88#line 142 "include/linux/types.h"
89typedef unsigned long blkcnt_t;
90#line 201 "include/linux/types.h"
91typedef unsigned int gfp_t;
92#line 202 "include/linux/types.h"
93typedef unsigned int fmode_t;
94#line 205 "include/linux/types.h"
95typedef u64 phys_addr_t;
96#line 210 "include/linux/types.h"
97typedef phys_addr_t resource_size_t;
98#line 214 "include/linux/types.h"
99struct __anonstruct_atomic_t_6 {
100 int counter ;
101};
102#line 214 "include/linux/types.h"
103typedef struct __anonstruct_atomic_t_6 atomic_t;
104#line 219 "include/linux/types.h"
105struct __anonstruct_atomic64_t_7 {
106 long counter ;
107};
108#line 219 "include/linux/types.h"
109typedef struct __anonstruct_atomic64_t_7 atomic64_t;
110#line 220 "include/linux/types.h"
111struct list_head {
112 struct list_head *next ;
113 struct list_head *prev ;
114};
115#line 225
116struct hlist_node;
117#line 225
118struct hlist_node;
119#line 225
120struct hlist_node;
121#line 225 "include/linux/types.h"
122struct hlist_head {
123 struct hlist_node *first ;
124};
125#line 229 "include/linux/types.h"
126struct hlist_node {
127 struct hlist_node *next ;
128 struct hlist_node **pprev ;
129};
130#line 58 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/alternative.h"
131struct module;
132#line 58
133struct module;
134#line 58
135struct module;
136#line 58
137struct module;
138#line 145 "include/linux/init.h"
139typedef void (*ctor_fn_t)(void);
140#line 48 "include/linux/dynamic_debug.h"
141struct bug_entry {
142 int bug_addr_disp ;
143 int file_disp ;
144 unsigned short line ;
145 unsigned short flags ;
146};
147#line 70 "include/asm-generic/bug.h"
148struct completion;
149#line 70
150struct completion;
151#line 70
152struct completion;
153#line 70
154struct completion;
155#line 71
156struct pt_regs;
157#line 71
158struct pt_regs;
159#line 71
160struct pt_regs;
161#line 71
162struct pt_regs;
163#line 321 "include/linux/kernel.h"
164struct pid;
165#line 321
166struct pid;
167#line 321
168struct pid;
169#line 321
170struct pid;
171#line 671
172struct timespec;
173#line 671
174struct timespec;
175#line 671
176struct timespec;
177#line 671
178struct timespec;
179#line 59 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/page_types.h"
180struct page;
181#line 59
182struct page;
183#line 59
184struct page;
185#line 59
186struct page;
187#line 21 "include/asm-generic/getorder.h"
188struct task_struct;
189#line 21
190struct task_struct;
191#line 21
192struct task_struct;
193#line 21
194struct task_struct;
195#line 23
196struct mm_struct;
197#line 23
198struct mm_struct;
199#line 23
200struct mm_struct;
201#line 23
202struct mm_struct;
203#line 215 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/segment.h"
204struct pt_regs {
205 unsigned long r15 ;
206 unsigned long r14 ;
207 unsigned long r13 ;
208 unsigned long r12 ;
209 unsigned long bp ;
210 unsigned long bx ;
211 unsigned long r11 ;
212 unsigned long r10 ;
213 unsigned long r9 ;
214 unsigned long r8 ;
215 unsigned long ax ;
216 unsigned long cx ;
217 unsigned long dx ;
218 unsigned long si ;
219 unsigned long di ;
220 unsigned long orig_ax ;
221 unsigned long ip ;
222 unsigned long cs ;
223 unsigned long flags ;
224 unsigned long sp ;
225 unsigned long ss ;
226};
227#line 282 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/ptrace.h"
228struct kernel_vm86_regs {
229 struct pt_regs pt ;
230 unsigned short es ;
231 unsigned short __esh ;
232 unsigned short ds ;
233 unsigned short __dsh ;
234 unsigned short fs ;
235 unsigned short __fsh ;
236 unsigned short gs ;
237 unsigned short __gsh ;
238};
239#line 203 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/vm86.h"
240union __anonunion_ldv_2292_12 {
241 struct pt_regs *regs ;
242 struct kernel_vm86_regs *vm86 ;
243};
244#line 203 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/vm86.h"
245struct math_emu_info {
246 long ___orig_eip ;
247 union __anonunion_ldv_2292_12 ldv_2292 ;
248};
249#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"
250typedef unsigned long pgdval_t;
251#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"
252typedef unsigned long pgprotval_t;
253#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"
254struct pgprot {
255 pgprotval_t pgprot ;
256};
257#line 190 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/pgtable_types.h"
258typedef struct pgprot pgprot_t;
259#line 192 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/pgtable_types.h"
260struct __anonstruct_pgd_t_15 {
261 pgdval_t pgd ;
262};
263#line 192 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/pgtable_types.h"
264typedef struct __anonstruct_pgd_t_15 pgd_t;
265#line 280 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/pgtable_types.h"
266typedef struct page *pgtable_t;
267#line 288
268struct file;
269#line 288
270struct file;
271#line 288
272struct file;
273#line 288
274struct file;
275#line 303
276struct seq_file;
277#line 303
278struct seq_file;
279#line 303
280struct seq_file;
281#line 303
282struct seq_file;
283#line 335 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/pgtable_types.h"
284struct __anonstruct_ldv_2526_19 {
285 unsigned int a ;
286 unsigned int b ;
287};
288#line 335 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/pgtable_types.h"
289struct __anonstruct_ldv_2541_20 {
290 u16 limit0 ;
291 u16 base0 ;
292 unsigned char base1 ;
293 unsigned char type : 4 ;
294 unsigned char s : 1 ;
295 unsigned char dpl : 2 ;
296 unsigned char p : 1 ;
297 unsigned char limit : 4 ;
298 unsigned char avl : 1 ;
299 unsigned char l : 1 ;
300 unsigned char d : 1 ;
301 unsigned char g : 1 ;
302 unsigned char base2 ;
303};
304#line 335 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/pgtable_types.h"
305union __anonunion_ldv_2542_18 {
306 struct __anonstruct_ldv_2526_19 ldv_2526 ;
307 struct __anonstruct_ldv_2541_20 ldv_2541 ;
308};
309#line 335 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/pgtable_types.h"
310struct desc_struct {
311 union __anonunion_ldv_2542_18 ldv_2542 ;
312};
313#line 43 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/desc_defs.h"
314struct gate_struct64 {
315 u16 offset_low ;
316 u16 segment ;
317 unsigned char ist : 3 ;
318 unsigned char zero0 : 5 ;
319 unsigned char type : 5 ;
320 unsigned char dpl : 2 ;
321 unsigned char p : 1 ;
322 u16 offset_middle ;
323 u32 offset_high ;
324 u32 zero1 ;
325};
326#line 81 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/desc_defs.h"
327typedef struct gate_struct64 gate_desc;
328#line 84 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/desc_defs.h"
329struct desc_ptr {
330 unsigned short size ;
331 unsigned long address ;
332};
333#line 122
334struct thread_struct;
335#line 122
336struct thread_struct;
337#line 122
338struct thread_struct;
339#line 122
340struct thread_struct;
341#line 123
342struct tss_struct;
343#line 123
344struct tss_struct;
345#line 123
346struct tss_struct;
347#line 123
348struct tss_struct;
349#line 124
350struct cpumask;
351#line 124
352struct cpumask;
353#line 124
354struct cpumask;
355#line 124
356struct cpumask;
357#line 94 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/paravirt_types.h"
358struct pv_cpu_ops {
359 unsigned long (*get_debugreg)(int ) ;
360 void (*set_debugreg)(int , unsigned long ) ;
361 void (*clts)(void) ;
362 unsigned long (*read_cr0)(void) ;
363 void (*write_cr0)(unsigned long ) ;
364 unsigned long (*read_cr4_safe)(void) ;
365 unsigned long (*read_cr4)(void) ;
366 void (*write_cr4)(unsigned long ) ;
367 unsigned long (*read_cr8)(void) ;
368 void (*write_cr8)(unsigned long ) ;
369 void (*load_tr_desc)(void) ;
370 void (*load_gdt)(struct desc_ptr const * ) ;
371 void (*load_idt)(struct desc_ptr const * ) ;
372 void (*store_gdt)(struct desc_ptr * ) ;
373 void (*store_idt)(struct desc_ptr * ) ;
374 void (*set_ldt)(void const * , unsigned int ) ;
375 unsigned long (*store_tr)(void) ;
376 void (*load_tls)(struct thread_struct * , unsigned int ) ;
377 void (*load_gs_index)(unsigned int ) ;
378 void (*write_ldt_entry)(struct desc_struct * , int , void const * ) ;
379 void (*write_gdt_entry)(struct desc_struct * , int , void const * , int ) ;
380 void (*write_idt_entry)(gate_desc * , int , gate_desc const * ) ;
381 void (*alloc_ldt)(struct desc_struct * , unsigned int ) ;
382 void (*free_ldt)(struct desc_struct * , unsigned int ) ;
383 void (*load_sp0)(struct tss_struct * , struct thread_struct * ) ;
384 void (*set_iopl_mask)(unsigned int ) ;
385 void (*wbinvd)(void) ;
386 void (*io_delay)(void) ;
387 void (*cpuid)(unsigned int * , unsigned int * , unsigned int * , unsigned int * ) ;
388 u64 (*read_msr)(unsigned int , int * ) ;
389 int (*rdmsr_regs)(u32 * ) ;
390 int (*write_msr)(unsigned int , unsigned int , unsigned int ) ;
391 int (*wrmsr_regs)(u32 * ) ;
392 u64 (*read_tsc)(void) ;
393 u64 (*read_pmc)(int ) ;
394 unsigned long long (*read_tscp)(unsigned int * ) ;
395 void (*irq_enable_sysexit)(void) ;
396 void (*usergs_sysret64)(void) ;
397 void (*usergs_sysret32)(void) ;
398 void (*iret)(void) ;
399 void (*swapgs)(void) ;
400 void (*start_context_switch)(struct task_struct * ) ;
401 void (*end_context_switch)(struct task_struct * ) ;
402};
403#line 320
404struct arch_spinlock;
405#line 320
406struct arch_spinlock;
407#line 320
408struct arch_spinlock;
409#line 320
410struct arch_spinlock;
411#line 304 "include/linux/bitmap.h"
412struct cpumask {
413 unsigned long bits[64U] ;
414};
415#line 13 "include/linux/cpumask.h"
416typedef struct cpumask cpumask_t;
417#line 622 "include/linux/cpumask.h"
418typedef struct cpumask *cpumask_var_t;
419#line 189 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
420struct x86_hw_tss {
421 u32 reserved1 ;
422 u64 sp0 ;
423 u64 sp1 ;
424 u64 sp2 ;
425 u64 reserved2 ;
426 u64 ist[7U] ;
427 u32 reserved3 ;
428 u32 reserved4 ;
429 u16 reserved5 ;
430 u16 io_bitmap_base ;
431};
432#line 236 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
433struct tss_struct {
434 struct x86_hw_tss x86_tss ;
435 unsigned long io_bitmap[1025U] ;
436 unsigned long stack[64U] ;
437};
438#line 277 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
439struct i387_fsave_struct {
440 u32 cwd ;
441 u32 swd ;
442 u32 twd ;
443 u32 fip ;
444 u32 fcs ;
445 u32 foo ;
446 u32 fos ;
447 u32 st_space[20U] ;
448 u32 status ;
449};
450#line 295 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
451struct __anonstruct_ldv_5171_24 {
452 u64 rip ;
453 u64 rdp ;
454};
455#line 295 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
456struct __anonstruct_ldv_5177_25 {
457 u32 fip ;
458 u32 fcs ;
459 u32 foo ;
460 u32 fos ;
461};
462#line 295 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
463union __anonunion_ldv_5178_23 {
464 struct __anonstruct_ldv_5171_24 ldv_5171 ;
465 struct __anonstruct_ldv_5177_25 ldv_5177 ;
466};
467#line 295 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
468union __anonunion_ldv_5187_26 {
469 u32 padding1[12U] ;
470 u32 sw_reserved[12U] ;
471};
472#line 295 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
473struct i387_fxsave_struct {
474 u16 cwd ;
475 u16 swd ;
476 u16 twd ;
477 u16 fop ;
478 union __anonunion_ldv_5178_23 ldv_5178 ;
479 u32 mxcsr ;
480 u32 mxcsr_mask ;
481 u32 st_space[32U] ;
482 u32 xmm_space[64U] ;
483 u32 padding[12U] ;
484 union __anonunion_ldv_5187_26 ldv_5187 ;
485};
486#line 329 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
487struct i387_soft_struct {
488 u32 cwd ;
489 u32 swd ;
490 u32 twd ;
491 u32 fip ;
492 u32 fcs ;
493 u32 foo ;
494 u32 fos ;
495 u32 st_space[20U] ;
496 u8 ftop ;
497 u8 changed ;
498 u8 lookahead ;
499 u8 no_update ;
500 u8 rm ;
501 u8 alimit ;
502 struct math_emu_info *info ;
503 u32 entry_eip ;
504};
505#line 350 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
506struct ymmh_struct {
507 u32 ymmh_space[64U] ;
508};
509#line 355 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
510struct xsave_hdr_struct {
511 u64 xstate_bv ;
512 u64 reserved1[2U] ;
513 u64 reserved2[5U] ;
514};
515#line 361 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
516struct xsave_struct {
517 struct i387_fxsave_struct i387 ;
518 struct xsave_hdr_struct xsave_hdr ;
519 struct ymmh_struct ymmh ;
520};
521#line 367 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
522union thread_xstate {
523 struct i387_fsave_struct fsave ;
524 struct i387_fxsave_struct fxsave ;
525 struct i387_soft_struct soft ;
526 struct xsave_struct xsave ;
527};
528#line 375 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
529struct fpu {
530 union thread_xstate *state ;
531};
532#line 421
533struct kmem_cache;
534#line 421
535struct kmem_cache;
536#line 421
537struct kmem_cache;
538#line 422
539struct perf_event;
540#line 422
541struct perf_event;
542#line 422
543struct perf_event;
544#line 422
545struct perf_event;
546#line 423 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/processor.h"
547struct thread_struct {
548 struct desc_struct tls_array[3U] ;
549 unsigned long sp0 ;
550 unsigned long sp ;
551 unsigned long usersp ;
552 unsigned short es ;
553 unsigned short ds ;
554 unsigned short fsindex ;
555 unsigned short gsindex ;
556 unsigned long fs ;
557 unsigned long gs ;
558 struct perf_event *ptrace_bps[4U] ;
559 unsigned long debugreg6 ;
560 unsigned long ptrace_dr7 ;
561 unsigned long cr2 ;
562 unsigned long trap_no ;
563 unsigned long error_code ;
564 struct fpu fpu ;
565 unsigned long *io_bitmap_ptr ;
566 unsigned long iopl ;
567 unsigned int io_bitmap_max ;
568};
569#line 23 "include/asm-generic/atomic-long.h"
570typedef atomic64_t atomic_long_t;
571#line 8 "include/linux/bottom_half.h"
572struct arch_spinlock {
573 unsigned int slock ;
574};
575#line 10 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/spinlock_types.h"
576typedef struct arch_spinlock arch_spinlock_t;
577#line 16 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/spinlock_types.h"
578struct __anonstruct_arch_rwlock_t_29 {
579 unsigned int lock ;
580};
581#line 16 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/spinlock_types.h"
582typedef struct __anonstruct_arch_rwlock_t_29 arch_rwlock_t;
583#line 17
584struct lockdep_map;
585#line 17
586struct lockdep_map;
587#line 17
588struct lockdep_map;
589#line 17
590struct lockdep_map;
591#line 55 "include/linux/debug_locks.h"
592struct stack_trace {
593 unsigned int nr_entries ;
594 unsigned int max_entries ;
595 unsigned long *entries ;
596 int skip ;
597};
598#line 26 "include/linux/stacktrace.h"
599struct lockdep_subclass_key {
600 char __one_byte ;
601};
602#line 53 "include/linux/lockdep.h"
603struct lock_class_key {
604 struct lockdep_subclass_key subkeys[8U] ;
605};
606#line 59 "include/linux/lockdep.h"
607struct lock_class {
608 struct list_head hash_entry ;
609 struct list_head lock_entry ;
610 struct lockdep_subclass_key *key ;
611 unsigned int subclass ;
612 unsigned int dep_gen_id ;
613 unsigned long usage_mask ;
614 struct stack_trace usage_traces[13U] ;
615 struct list_head locks_after ;
616 struct list_head locks_before ;
617 unsigned int version ;
618 unsigned long ops ;
619 char const *name ;
620 int name_version ;
621 unsigned long contention_point[4U] ;
622 unsigned long contending_point[4U] ;
623};
624#line 144 "include/linux/lockdep.h"
625struct lockdep_map {
626 struct lock_class_key *key ;
627 struct lock_class *class_cache[2U] ;
628 char const *name ;
629 int cpu ;
630 unsigned long ip ;
631};
632#line 187 "include/linux/lockdep.h"
633struct held_lock {
634 u64 prev_chain_key ;
635 unsigned long acquire_ip ;
636 struct lockdep_map *instance ;
637 struct lockdep_map *nest_lock ;
638 u64 waittime_stamp ;
639 u64 holdtime_stamp ;
640 unsigned short class_idx : 13 ;
641 unsigned char irq_context : 2 ;
642 unsigned char trylock : 1 ;
643 unsigned char read : 2 ;
644 unsigned char check : 2 ;
645 unsigned char hardirqs_off : 1 ;
646 unsigned short references : 11 ;
647};
648#line 552 "include/linux/lockdep.h"
649struct raw_spinlock {
650 arch_spinlock_t raw_lock ;
651 unsigned int magic ;
652 unsigned int owner_cpu ;
653 void *owner ;
654 struct lockdep_map dep_map ;
655};
656#line 32 "include/linux/spinlock_types.h"
657typedef struct raw_spinlock raw_spinlock_t;
658#line 33 "include/linux/spinlock_types.h"
659struct __anonstruct_ldv_6059_31 {
660 u8 __padding[24U] ;
661 struct lockdep_map dep_map ;
662};
663#line 33 "include/linux/spinlock_types.h"
664union __anonunion_ldv_6060_30 {
665 struct raw_spinlock rlock ;
666 struct __anonstruct_ldv_6059_31 ldv_6059 ;
667};
668#line 33 "include/linux/spinlock_types.h"
669struct spinlock {
670 union __anonunion_ldv_6060_30 ldv_6060 ;
671};
672#line 76 "include/linux/spinlock_types.h"
673typedef struct spinlock spinlock_t;
674#line 23 "include/linux/rwlock_types.h"
675struct __anonstruct_rwlock_t_32 {
676 arch_rwlock_t raw_lock ;
677 unsigned int magic ;
678 unsigned int owner_cpu ;
679 void *owner ;
680 struct lockdep_map dep_map ;
681};
682#line 23 "include/linux/rwlock_types.h"
683typedef struct __anonstruct_rwlock_t_32 rwlock_t;
684#line 110 "include/linux/seqlock.h"
685struct seqcount {
686 unsigned int sequence ;
687};
688#line 121 "include/linux/seqlock.h"
689typedef struct seqcount seqcount_t;
690#line 233 "include/linux/seqlock.h"
691struct timespec {
692 __kernel_time_t tv_sec ;
693 long tv_nsec ;
694};
695#line 286 "include/linux/time.h"
696struct kstat {
697 u64 ino ;
698 dev_t dev ;
699 umode_t mode ;
700 unsigned int nlink ;
701 uid_t uid ;
702 gid_t gid ;
703 dev_t rdev ;
704 loff_t size ;
705 struct timespec atime ;
706 struct timespec mtime ;
707 struct timespec ctime ;
708 unsigned long blksize ;
709 unsigned long long blocks ;
710};
711#line 49 "include/linux/wait.h"
712struct __wait_queue_head {
713 spinlock_t lock ;
714 struct list_head task_list ;
715};
716#line 54 "include/linux/wait.h"
717typedef struct __wait_queue_head wait_queue_head_t;
718#line 96 "include/linux/nodemask.h"
719struct __anonstruct_nodemask_t_34 {
720 unsigned long bits[16U] ;
721};
722#line 96 "include/linux/nodemask.h"
723typedef struct __anonstruct_nodemask_t_34 nodemask_t;
724#line 640 "include/linux/mmzone.h"
725struct mutex {
726 atomic_t count ;
727 spinlock_t wait_lock ;
728 struct list_head wait_list ;
729 struct task_struct *owner ;
730 char const *name ;
731 void *magic ;
732 struct lockdep_map dep_map ;
733};
734#line 63 "include/linux/mutex.h"
735struct mutex_waiter {
736 struct list_head list ;
737 struct task_struct *task ;
738 void *magic ;
739};
740#line 171
741struct rw_semaphore;
742#line 171
743struct rw_semaphore;
744#line 171
745struct rw_semaphore;
746#line 171
747struct rw_semaphore;
748#line 172 "include/linux/mutex.h"
749struct rw_semaphore {
750 long count ;
751 spinlock_t wait_lock ;
752 struct list_head wait_list ;
753 struct lockdep_map dep_map ;
754};
755#line 139 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/e820.h"
756struct resource {
757 resource_size_t start ;
758 resource_size_t end ;
759 char const *name ;
760 unsigned long flags ;
761 struct resource *parent ;
762 struct resource *sibling ;
763 struct resource *child ;
764};
765#line 175 "include/linux/ioport.h"
766struct device;
767#line 175
768struct device;
769#line 175
770struct device;
771#line 175
772struct device;
773#line 312 "include/linux/jiffies.h"
774union ktime {
775 s64 tv64 ;
776};
777#line 59 "include/linux/ktime.h"
778typedef union ktime ktime_t;
779#line 99 "include/linux/debugobjects.h"
780struct tvec_base;
781#line 99
782struct tvec_base;
783#line 99
784struct tvec_base;
785#line 99
786struct tvec_base;
787#line 100 "include/linux/debugobjects.h"
788struct timer_list {
789 struct list_head entry ;
790 unsigned long expires ;
791 struct tvec_base *base ;
792 void (*function)(unsigned long ) ;
793 unsigned long data ;
794 int slack ;
795 int start_pid ;
796 void *start_site ;
797 char start_comm[16U] ;
798 struct lockdep_map lockdep_map ;
799};
800#line 289 "include/linux/timer.h"
801struct hrtimer;
802#line 289
803struct hrtimer;
804#line 289
805struct hrtimer;
806#line 289
807struct hrtimer;
808#line 290
809enum hrtimer_restart;
810#line 290
811enum hrtimer_restart;
812#line 290
813enum hrtimer_restart;
814#line 302
815struct work_struct;
816#line 302
817struct work_struct;
818#line 302
819struct work_struct;
820#line 302
821struct work_struct;
822#line 45 "include/linux/workqueue.h"
823struct work_struct {
824 atomic_long_t data ;
825 struct list_head entry ;
826 void (*func)(struct work_struct * ) ;
827 struct lockdep_map lockdep_map ;
828};
829#line 86 "include/linux/workqueue.h"
830struct delayed_work {
831 struct work_struct work ;
832 struct timer_list timer ;
833};
834#line 443 "include/linux/workqueue.h"
835struct completion {
836 unsigned int done ;
837 wait_queue_head_t wait ;
838};
839#line 46 "include/linux/pm.h"
840struct pm_message {
841 int event ;
842};
843#line 52 "include/linux/pm.h"
844typedef struct pm_message pm_message_t;
845#line 53 "include/linux/pm.h"
846struct dev_pm_ops {
847 int (*prepare)(struct device * ) ;
848 void (*complete)(struct device * ) ;
849 int (*suspend)(struct device * ) ;
850 int (*resume)(struct device * ) ;
851 int (*freeze)(struct device * ) ;
852 int (*thaw)(struct device * ) ;
853 int (*poweroff)(struct device * ) ;
854 int (*restore)(struct device * ) ;
855 int (*suspend_noirq)(struct device * ) ;
856 int (*resume_noirq)(struct device * ) ;
857 int (*freeze_noirq)(struct device * ) ;
858 int (*thaw_noirq)(struct device * ) ;
859 int (*poweroff_noirq)(struct device * ) ;
860 int (*restore_noirq)(struct device * ) ;
861 int (*runtime_suspend)(struct device * ) ;
862 int (*runtime_resume)(struct device * ) ;
863 int (*runtime_idle)(struct device * ) ;
864};
865#line 272
866enum rpm_status {
867 RPM_ACTIVE = 0,
868 RPM_RESUMING = 1,
869 RPM_SUSPENDED = 2,
870 RPM_SUSPENDING = 3
871} ;
872#line 279
873enum rpm_request {
874 RPM_REQ_NONE = 0,
875 RPM_REQ_IDLE = 1,
876 RPM_REQ_SUSPEND = 2,
877 RPM_REQ_AUTOSUSPEND = 3,
878 RPM_REQ_RESUME = 4
879} ;
880#line 287
881struct wakeup_source;
882#line 287
883struct wakeup_source;
884#line 287
885struct wakeup_source;
886#line 287
887struct wakeup_source;
888#line 288 "include/linux/pm.h"
889struct dev_pm_info {
890 pm_message_t power_state ;
891 unsigned char can_wakeup : 1 ;
892 unsigned char async_suspend : 1 ;
893 bool is_prepared ;
894 bool is_suspended ;
895 spinlock_t lock ;
896 struct list_head entry ;
897 struct completion completion ;
898 struct wakeup_source *wakeup ;
899 struct timer_list suspend_timer ;
900 unsigned long timer_expires ;
901 struct work_struct work ;
902 wait_queue_head_t wait_queue ;
903 atomic_t usage_count ;
904 atomic_t child_count ;
905 unsigned char disable_depth : 3 ;
906 unsigned char ignore_children : 1 ;
907 unsigned char idle_notification : 1 ;
908 unsigned char request_pending : 1 ;
909 unsigned char deferred_resume : 1 ;
910 unsigned char run_wake : 1 ;
911 unsigned char runtime_auto : 1 ;
912 unsigned char no_callbacks : 1 ;
913 unsigned char irq_safe : 1 ;
914 unsigned char use_autosuspend : 1 ;
915 unsigned char timer_autosuspends : 1 ;
916 enum rpm_request request ;
917 enum rpm_status runtime_status ;
918 int runtime_error ;
919 int autosuspend_delay ;
920 unsigned long last_busy ;
921 unsigned long active_jiffies ;
922 unsigned long suspended_jiffies ;
923 unsigned long accounting_timestamp ;
924 void *subsys_data ;
925};
926#line 469 "include/linux/pm.h"
927struct dev_power_domain {
928 struct dev_pm_ops ops ;
929};
930#line 22 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/mmu.h"
931struct __anonstruct_mm_context_t_99 {
932 void *ldt ;
933 int size ;
934 unsigned short ia32_compat ;
935 struct mutex lock ;
936 void *vdso ;
937};
938#line 22 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/mmu.h"
939typedef struct __anonstruct_mm_context_t_99 mm_context_t;
940#line 71 "include/asm-generic/iomap.h"
941struct vm_area_struct;
942#line 71
943struct vm_area_struct;
944#line 71
945struct vm_area_struct;
946#line 71
947struct vm_area_struct;
948#line 53 "include/linux/rcupdate.h"
949struct rcu_head {
950 struct rcu_head *next ;
951 void (*func)(struct rcu_head * ) ;
952};
953#line 841
954struct nsproxy;
955#line 841
956struct nsproxy;
957#line 841
958struct nsproxy;
959#line 841
960struct nsproxy;
961#line 36 "include/linux/kmod.h"
962struct cred;
963#line 36
964struct cred;
965#line 36
966struct cred;
967#line 36
968struct cred;
969#line 27 "include/linux/elf.h"
970typedef __u64 Elf64_Addr;
971#line 28 "include/linux/elf.h"
972typedef __u16 Elf64_Half;
973#line 32 "include/linux/elf.h"
974typedef __u32 Elf64_Word;
975#line 33 "include/linux/elf.h"
976typedef __u64 Elf64_Xword;
977#line 202 "include/linux/elf.h"
978struct elf64_sym {
979 Elf64_Word st_name ;
980 unsigned char st_info ;
981 unsigned char st_other ;
982 Elf64_Half st_shndx ;
983 Elf64_Addr st_value ;
984 Elf64_Xword st_size ;
985};
986#line 210 "include/linux/elf.h"
987typedef struct elf64_sym Elf64_Sym;
988#line 444
989struct sock;
990#line 444
991struct sock;
992#line 444
993struct sock;
994#line 444
995struct sock;
996#line 445
997struct kobject;
998#line 445
999struct kobject;
1000#line 445
1001struct kobject;
1002#line 445
1003struct kobject;
1004#line 446
1005enum kobj_ns_type {
1006 KOBJ_NS_TYPE_NONE = 0,
1007 KOBJ_NS_TYPE_NET = 1,
1008 KOBJ_NS_TYPES = 2
1009} ;
1010#line 452 "include/linux/elf.h"
1011struct kobj_ns_type_operations {
1012 enum kobj_ns_type type ;
1013 void *(*grab_current_ns)(void) ;
1014 void const *(*netlink_ns)(struct sock * ) ;
1015 void const *(*initial_ns)(void) ;
1016 void (*drop_ns)(void * ) ;
1017};
1018#line 57 "include/linux/kobject_ns.h"
1019struct attribute {
1020 char const *name ;
1021 mode_t mode ;
1022 struct lock_class_key *key ;
1023 struct lock_class_key skey ;
1024};
1025#line 33 "include/linux/sysfs.h"
1026struct attribute_group {
1027 char const *name ;
1028 mode_t (*is_visible)(struct kobject * , struct attribute * , int ) ;
1029 struct attribute **attrs ;
1030};
1031#line 62 "include/linux/sysfs.h"
1032struct bin_attribute {
1033 struct attribute attr ;
1034 size_t size ;
1035 void *private ;
1036 ssize_t (*read)(struct file * , struct kobject * , struct bin_attribute * , char * ,
1037 loff_t , size_t ) ;
1038 ssize_t (*write)(struct file * , struct kobject * , struct bin_attribute * , char * ,
1039 loff_t , size_t ) ;
1040 int (*mmap)(struct file * , struct kobject * , struct bin_attribute * , struct vm_area_struct * ) ;
1041};
1042#line 98 "include/linux/sysfs.h"
1043struct sysfs_ops {
1044 ssize_t (*show)(struct kobject * , struct attribute * , char * ) ;
1045 ssize_t (*store)(struct kobject * , struct attribute * , char const * , size_t ) ;
1046};
1047#line 116
1048struct sysfs_dirent;
1049#line 116
1050struct sysfs_dirent;
1051#line 116
1052struct sysfs_dirent;
1053#line 116
1054struct sysfs_dirent;
1055#line 181 "include/linux/sysfs.h"
1056struct kref {
1057 atomic_t refcount ;
1058};
1059#line 49 "include/linux/kobject.h"
1060struct kset;
1061#line 49
1062struct kset;
1063#line 49
1064struct kset;
1065#line 49
1066struct kobj_type;
1067#line 49
1068struct kobj_type;
1069#line 49
1070struct kobj_type;
1071#line 49 "include/linux/kobject.h"
1072struct kobject {
1073 char const *name ;
1074 struct list_head entry ;
1075 struct kobject *parent ;
1076 struct kset *kset ;
1077 struct kobj_type *ktype ;
1078 struct sysfs_dirent *sd ;
1079 struct kref kref ;
1080 unsigned char state_initialized : 1 ;
1081 unsigned char state_in_sysfs : 1 ;
1082 unsigned char state_add_uevent_sent : 1 ;
1083 unsigned char state_remove_uevent_sent : 1 ;
1084 unsigned char uevent_suppress : 1 ;
1085};
1086#line 109 "include/linux/kobject.h"
1087struct kobj_type {
1088 void (*release)(struct kobject * ) ;
1089 struct sysfs_ops const *sysfs_ops ;
1090 struct attribute **default_attrs ;
1091 struct kobj_ns_type_operations const *(*child_ns_type)(struct kobject * ) ;
1092 void const *(*namespace)(struct kobject * ) ;
1093};
1094#line 117 "include/linux/kobject.h"
1095struct kobj_uevent_env {
1096 char *envp[32U] ;
1097 int envp_idx ;
1098 char buf[2048U] ;
1099 int buflen ;
1100};
1101#line 124 "include/linux/kobject.h"
1102struct kset_uevent_ops {
1103 int (* const filter)(struct kset * , struct kobject * ) ;
1104 char const *(* const name)(struct kset * , struct kobject * ) ;
1105 int (* const uevent)(struct kset * , struct kobject * , struct kobj_uevent_env * ) ;
1106};
1107#line 141 "include/linux/kobject.h"
1108struct kset {
1109 struct list_head list ;
1110 spinlock_t list_lock ;
1111 struct kobject kobj ;
1112 struct kset_uevent_ops const *uevent_ops ;
1113};
1114#line 219
1115struct kernel_param;
1116#line 219
1117struct kernel_param;
1118#line 219
1119struct kernel_param;
1120#line 219
1121struct kernel_param;
1122#line 220 "include/linux/kobject.h"
1123struct kernel_param_ops {
1124 int (*set)(char const * , struct kernel_param const * ) ;
1125 int (*get)(char * , struct kernel_param const * ) ;
1126 void (*free)(void * ) ;
1127};
1128#line 44 "include/linux/moduleparam.h"
1129struct kparam_string;
1130#line 44
1131struct kparam_string;
1132#line 44
1133struct kparam_string;
1134#line 44
1135struct kparam_array;
1136#line 44
1137struct kparam_array;
1138#line 44
1139struct kparam_array;
1140#line 44 "include/linux/moduleparam.h"
1141union __anonunion_ldv_12924_129 {
1142 void *arg ;
1143 struct kparam_string const *str ;
1144 struct kparam_array const *arr ;
1145};
1146#line 44 "include/linux/moduleparam.h"
1147struct kernel_param {
1148 char const *name ;
1149 struct kernel_param_ops const *ops ;
1150 u16 perm ;
1151 u16 flags ;
1152 union __anonunion_ldv_12924_129 ldv_12924 ;
1153};
1154#line 59 "include/linux/moduleparam.h"
1155struct kparam_string {
1156 unsigned int maxlen ;
1157 char *string ;
1158};
1159#line 65 "include/linux/moduleparam.h"
1160struct kparam_array {
1161 unsigned int max ;
1162 unsigned int elemsize ;
1163 unsigned int *num ;
1164 struct kernel_param_ops const *ops ;
1165 void *elem ;
1166};
1167#line 404 "include/linux/moduleparam.h"
1168struct jump_label_key {
1169 atomic_t enabled ;
1170};
1171#line 99 "include/linux/jump_label.h"
1172struct tracepoint;
1173#line 99
1174struct tracepoint;
1175#line 99
1176struct tracepoint;
1177#line 99
1178struct tracepoint;
1179#line 100 "include/linux/jump_label.h"
1180struct tracepoint_func {
1181 void *func ;
1182 void *data ;
1183};
1184#line 29 "include/linux/tracepoint.h"
1185struct tracepoint {
1186 char const *name ;
1187 struct jump_label_key key ;
1188 void (*regfunc)(void) ;
1189 void (*unregfunc)(void) ;
1190 struct tracepoint_func *funcs ;
1191};
1192#line 84 "include/linux/tracepoint.h"
1193struct mod_arch_specific {
1194
1195};
1196#line 127 "include/trace/events/module.h"
1197struct kernel_symbol {
1198 unsigned long value ;
1199 char const *name ;
1200};
1201#line 48 "include/linux/module.h"
1202struct module_attribute {
1203 struct attribute attr ;
1204 ssize_t (*show)(struct module_attribute * , struct module * , char * ) ;
1205 ssize_t (*store)(struct module_attribute * , struct module * , char const * ,
1206 size_t ) ;
1207 void (*setup)(struct module * , char const * ) ;
1208 int (*test)(struct module * ) ;
1209 void (*free)(struct module * ) ;
1210};
1211#line 68
1212struct module_param_attrs;
1213#line 68
1214struct module_param_attrs;
1215#line 68
1216struct module_param_attrs;
1217#line 68 "include/linux/module.h"
1218struct module_kobject {
1219 struct kobject kobj ;
1220 struct module *mod ;
1221 struct kobject *drivers_dir ;
1222 struct module_param_attrs *mp ;
1223};
1224#line 81
1225struct exception_table_entry;
1226#line 81
1227struct exception_table_entry;
1228#line 81
1229struct exception_table_entry;
1230#line 81
1231struct exception_table_entry;
1232#line 218
1233enum module_state {
1234 MODULE_STATE_LIVE = 0,
1235 MODULE_STATE_COMING = 1,
1236 MODULE_STATE_GOING = 2
1237} ;
1238#line 224 "include/linux/module.h"
1239struct module_ref {
1240 unsigned int incs ;
1241 unsigned int decs ;
1242};
1243#line 418
1244struct module_sect_attrs;
1245#line 418
1246struct module_sect_attrs;
1247#line 418
1248struct module_sect_attrs;
1249#line 418
1250struct module_notes_attrs;
1251#line 418
1252struct module_notes_attrs;
1253#line 418
1254struct module_notes_attrs;
1255#line 418
1256struct ftrace_event_call;
1257#line 418
1258struct ftrace_event_call;
1259#line 418
1260struct ftrace_event_call;
1261#line 418 "include/linux/module.h"
1262struct module {
1263 enum module_state state ;
1264 struct list_head list ;
1265 char name[56U] ;
1266 struct module_kobject mkobj ;
1267 struct module_attribute *modinfo_attrs ;
1268 char const *version ;
1269 char const *srcversion ;
1270 struct kobject *holders_dir ;
1271 struct kernel_symbol const *syms ;
1272 unsigned long const *crcs ;
1273 unsigned int num_syms ;
1274 struct kernel_param *kp ;
1275 unsigned int num_kp ;
1276 unsigned int num_gpl_syms ;
1277 struct kernel_symbol const *gpl_syms ;
1278 unsigned long const *gpl_crcs ;
1279 struct kernel_symbol const *unused_syms ;
1280 unsigned long const *unused_crcs ;
1281 unsigned int num_unused_syms ;
1282 unsigned int num_unused_gpl_syms ;
1283 struct kernel_symbol const *unused_gpl_syms ;
1284 unsigned long const *unused_gpl_crcs ;
1285 struct kernel_symbol const *gpl_future_syms ;
1286 unsigned long const *gpl_future_crcs ;
1287 unsigned int num_gpl_future_syms ;
1288 unsigned int num_exentries ;
1289 struct exception_table_entry *extable ;
1290 int (*init)(void) ;
1291 void *module_init ;
1292 void *module_core ;
1293 unsigned int init_size ;
1294 unsigned int core_size ;
1295 unsigned int init_text_size ;
1296 unsigned int core_text_size ;
1297 unsigned int init_ro_size ;
1298 unsigned int core_ro_size ;
1299 struct mod_arch_specific arch ;
1300 unsigned int taints ;
1301 unsigned int num_bugs ;
1302 struct list_head bug_list ;
1303 struct bug_entry *bug_table ;
1304 Elf64_Sym *symtab ;
1305 Elf64_Sym *core_symtab ;
1306 unsigned int num_symtab ;
1307 unsigned int core_num_syms ;
1308 char *strtab ;
1309 char *core_strtab ;
1310 struct module_sect_attrs *sect_attrs ;
1311 struct module_notes_attrs *notes_attrs ;
1312 char *args ;
1313 void *percpu ;
1314 unsigned int percpu_size ;
1315 unsigned int num_tracepoints ;
1316 struct tracepoint * const *tracepoints_ptrs ;
1317 unsigned int num_trace_bprintk_fmt ;
1318 char const **trace_bprintk_fmt_start ;
1319 struct ftrace_event_call **trace_events ;
1320 unsigned int num_trace_events ;
1321 unsigned int num_ftrace_callsites ;
1322 unsigned long *ftrace_callsites ;
1323 struct list_head source_list ;
1324 struct list_head target_list ;
1325 struct task_struct *waiter ;
1326 void (*exit)(void) ;
1327 struct module_ref *refptr ;
1328 ctor_fn_t (**ctors)(void) ;
1329 unsigned int num_ctors ;
1330};
1331#line 118 "include/linux/kmemleak.h"
1332struct kmem_cache_cpu {
1333 void **freelist ;
1334 unsigned long tid ;
1335 struct page *page ;
1336 int node ;
1337 unsigned int stat[19U] ;
1338};
1339#line 46 "include/linux/slub_def.h"
1340struct kmem_cache_node {
1341 spinlock_t list_lock ;
1342 unsigned long nr_partial ;
1343 struct list_head partial ;
1344 atomic_long_t nr_slabs ;
1345 atomic_long_t total_objects ;
1346 struct list_head full ;
1347};
1348#line 57 "include/linux/slub_def.h"
1349struct kmem_cache_order_objects {
1350 unsigned long x ;
1351};
1352#line 67 "include/linux/slub_def.h"
1353struct kmem_cache {
1354 struct kmem_cache_cpu *cpu_slab ;
1355 unsigned long flags ;
1356 unsigned long min_partial ;
1357 int size ;
1358 int objsize ;
1359 int offset ;
1360 struct kmem_cache_order_objects oo ;
1361 struct kmem_cache_order_objects max ;
1362 struct kmem_cache_order_objects min ;
1363 gfp_t allocflags ;
1364 int refcount ;
1365 void (*ctor)(void * ) ;
1366 int inuse ;
1367 int align ;
1368 int reserved ;
1369 char const *name ;
1370 struct list_head list ;
1371 struct kobject kobj ;
1372 int remote_node_defrag_ratio ;
1373 struct kmem_cache_node *node[1024U] ;
1374};
1375#line 335 "include/linux/slab.h"
1376struct klist_node;
1377#line 335
1378struct klist_node;
1379#line 335
1380struct klist_node;
1381#line 335
1382struct klist_node;
1383#line 37 "include/linux/klist.h"
1384struct klist_node {
1385 void *n_klist ;
1386 struct list_head n_node ;
1387 struct kref n_ref ;
1388};
1389#line 67
1390struct dma_map_ops;
1391#line 67
1392struct dma_map_ops;
1393#line 67
1394struct dma_map_ops;
1395#line 67 "include/linux/klist.h"
1396struct dev_archdata {
1397 void *acpi_handle ;
1398 struct dma_map_ops *dma_ops ;
1399 void *iommu ;
1400};
1401#line 14 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/device.h"
1402struct pdev_archdata {
1403
1404};
1405#line 17
1406struct device_private;
1407#line 17
1408struct device_private;
1409#line 17
1410struct device_private;
1411#line 17
1412struct device_private;
1413#line 18
1414struct device_driver;
1415#line 18
1416struct device_driver;
1417#line 18
1418struct device_driver;
1419#line 18
1420struct device_driver;
1421#line 19
1422struct driver_private;
1423#line 19
1424struct driver_private;
1425#line 19
1426struct driver_private;
1427#line 19
1428struct driver_private;
1429#line 20
1430struct class;
1431#line 20
1432struct class;
1433#line 20
1434struct class;
1435#line 20
1436struct class;
1437#line 21
1438struct subsys_private;
1439#line 21
1440struct subsys_private;
1441#line 21
1442struct subsys_private;
1443#line 21
1444struct subsys_private;
1445#line 22
1446struct bus_type;
1447#line 22
1448struct bus_type;
1449#line 22
1450struct bus_type;
1451#line 22
1452struct bus_type;
1453#line 23
1454struct device_node;
1455#line 23
1456struct device_node;
1457#line 23
1458struct device_node;
1459#line 23
1460struct device_node;
1461#line 24 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/device.h"
1462struct bus_attribute {
1463 struct attribute attr ;
1464 ssize_t (*show)(struct bus_type * , char * ) ;
1465 ssize_t (*store)(struct bus_type * , char const * , size_t ) ;
1466};
1467#line 49 "include/linux/device.h"
1468struct device_attribute;
1469#line 49
1470struct device_attribute;
1471#line 49
1472struct device_attribute;
1473#line 49
1474struct driver_attribute;
1475#line 49
1476struct driver_attribute;
1477#line 49
1478struct driver_attribute;
1479#line 49 "include/linux/device.h"
1480struct bus_type {
1481 char const *name ;
1482 struct bus_attribute *bus_attrs ;
1483 struct device_attribute *dev_attrs ;
1484 struct driver_attribute *drv_attrs ;
1485 int (*match)(struct device * , struct device_driver * ) ;
1486 int (*uevent)(struct device * , struct kobj_uevent_env * ) ;
1487 int (*probe)(struct device * ) ;
1488 int (*remove)(struct device * ) ;
1489 void (*shutdown)(struct device * ) ;
1490 int (*suspend)(struct device * , pm_message_t ) ;
1491 int (*resume)(struct device * ) ;
1492 struct dev_pm_ops const *pm ;
1493 struct subsys_private *p ;
1494};
1495#line 153
1496struct of_device_id;
1497#line 153
1498struct of_device_id;
1499#line 153
1500struct of_device_id;
1501#line 153 "include/linux/device.h"
1502struct device_driver {
1503 char const *name ;
1504 struct bus_type *bus ;
1505 struct module *owner ;
1506 char const *mod_name ;
1507 bool suppress_bind_attrs ;
1508 struct of_device_id const *of_match_table ;
1509 int (*probe)(struct device * ) ;
1510 int (*remove)(struct device * ) ;
1511 void (*shutdown)(struct device * ) ;
1512 int (*suspend)(struct device * , pm_message_t ) ;
1513 int (*resume)(struct device * ) ;
1514 struct attribute_group const **groups ;
1515 struct dev_pm_ops const *pm ;
1516 struct driver_private *p ;
1517};
1518#line 218 "include/linux/device.h"
1519struct driver_attribute {
1520 struct attribute attr ;
1521 ssize_t (*show)(struct device_driver * , char * ) ;
1522 ssize_t (*store)(struct device_driver * , char const * , size_t ) ;
1523};
1524#line 248
1525struct class_attribute;
1526#line 248
1527struct class_attribute;
1528#line 248
1529struct class_attribute;
1530#line 248 "include/linux/device.h"
1531struct class {
1532 char const *name ;
1533 struct module *owner ;
1534 struct class_attribute *class_attrs ;
1535 struct device_attribute *dev_attrs ;
1536 struct bin_attribute *dev_bin_attrs ;
1537 struct kobject *dev_kobj ;
1538 int (*dev_uevent)(struct device * , struct kobj_uevent_env * ) ;
1539 char *(*devnode)(struct device * , mode_t * ) ;
1540 void (*class_release)(struct class * ) ;
1541 void (*dev_release)(struct device * ) ;
1542 int (*suspend)(struct device * , pm_message_t ) ;
1543 int (*resume)(struct device * ) ;
1544 struct kobj_ns_type_operations const *ns_type ;
1545 void const *(*namespace)(struct device * ) ;
1546 struct dev_pm_ops const *pm ;
1547 struct subsys_private *p ;
1548};
1549#line 305
1550struct device_type;
1551#line 305
1552struct device_type;
1553#line 305
1554struct device_type;
1555#line 344 "include/linux/device.h"
1556struct class_attribute {
1557 struct attribute attr ;
1558 ssize_t (*show)(struct class * , struct class_attribute * , char * ) ;
1559 ssize_t (*store)(struct class * , struct class_attribute * , char const * , size_t ) ;
1560};
1561#line 395 "include/linux/device.h"
1562struct device_type {
1563 char const *name ;
1564 struct attribute_group const **groups ;
1565 int (*uevent)(struct device * , struct kobj_uevent_env * ) ;
1566 char *(*devnode)(struct device * , mode_t * ) ;
1567 void (*release)(struct device * ) ;
1568 struct dev_pm_ops const *pm ;
1569};
1570#line 422 "include/linux/device.h"
1571struct device_attribute {
1572 struct attribute attr ;
1573 ssize_t (*show)(struct device * , struct device_attribute * , char * ) ;
1574 ssize_t (*store)(struct device * , struct device_attribute * , char const * ,
1575 size_t ) ;
1576};
1577#line 483 "include/linux/device.h"
1578struct device_dma_parameters {
1579 unsigned int max_segment_size ;
1580 unsigned long segment_boundary_mask ;
1581};
1582#line 492
1583struct dma_coherent_mem;
1584#line 492
1585struct dma_coherent_mem;
1586#line 492
1587struct dma_coherent_mem;
1588#line 492 "include/linux/device.h"
1589struct device {
1590 struct device *parent ;
1591 struct device_private *p ;
1592 struct kobject kobj ;
1593 char const *init_name ;
1594 struct device_type const *type ;
1595 struct mutex mutex ;
1596 struct bus_type *bus ;
1597 struct device_driver *driver ;
1598 void *platform_data ;
1599 struct dev_pm_info power ;
1600 struct dev_power_domain *pwr_domain ;
1601 int numa_node ;
1602 u64 *dma_mask ;
1603 u64 coherent_dma_mask ;
1604 struct device_dma_parameters *dma_parms ;
1605 struct list_head dma_pools ;
1606 struct dma_coherent_mem *dma_mem ;
1607 struct dev_archdata archdata ;
1608 struct device_node *of_node ;
1609 dev_t devt ;
1610 spinlock_t devres_lock ;
1611 struct list_head devres_head ;
1612 struct klist_node knode_class ;
1613 struct class *class ;
1614 struct attribute_group const **groups ;
1615 void (*release)(struct device * ) ;
1616};
1617#line 604 "include/linux/device.h"
1618struct wakeup_source {
1619 char *name ;
1620 struct list_head entry ;
1621 spinlock_t lock ;
1622 struct timer_list timer ;
1623 unsigned long timer_expires ;
1624 ktime_t total_time ;
1625 ktime_t max_time ;
1626 ktime_t last_time ;
1627 unsigned long event_count ;
1628 unsigned long active_count ;
1629 unsigned long relax_count ;
1630 unsigned long hit_count ;
1631 unsigned char active : 1 ;
1632};
1633#line 12 "include/linux/mod_devicetable.h"
1634typedef unsigned long kernel_ulong_t;
1635#line 215 "include/linux/mod_devicetable.h"
1636struct of_device_id {
1637 char name[32U] ;
1638 char type[32U] ;
1639 char compatible[128U] ;
1640 void *data ;
1641};
1642#line 474 "include/linux/mod_devicetable.h"
1643struct platform_device_id {
1644 char name[20U] ;
1645 kernel_ulong_t driver_data ;
1646};
1647#line 535
1648struct mfd_cell;
1649#line 535
1650struct mfd_cell;
1651#line 535
1652struct mfd_cell;
1653#line 535
1654struct mfd_cell;
1655#line 536 "include/linux/mod_devicetable.h"
1656struct platform_device {
1657 char const *name ;
1658 int id ;
1659 struct device dev ;
1660 u32 num_resources ;
1661 struct resource *resource ;
1662 struct platform_device_id const *id_entry ;
1663 struct mfd_cell *mfd_cell ;
1664 struct pdev_archdata archdata ;
1665};
1666#line 118 "include/linux/platform_device.h"
1667struct platform_driver {
1668 int (*probe)(struct platform_device * ) ;
1669 int (*remove)(struct platform_device * ) ;
1670 void (*shutdown)(struct platform_device * ) ;
1671 int (*suspend)(struct platform_device * , pm_message_t ) ;
1672 int (*resume)(struct platform_device * ) ;
1673 struct device_driver driver ;
1674 struct platform_device_id const *id_table ;
1675};
1676#line 33 "include/linux/hwmon.h"
1677struct sensor_device_attribute {
1678 struct device_attribute dev_attr ;
1679 int index ;
1680};
1681#line 27 "include/linux/hwmon-sysfs.h"
1682struct sensor_device_attribute_2 {
1683 struct device_attribute dev_attr ;
1684 u8 index ;
1685 u8 nr ;
1686};
1687#line 93 "include/linux/capability.h"
1688struct kernel_cap_struct {
1689 __u32 cap[2U] ;
1690};
1691#line 96 "include/linux/capability.h"
1692typedef struct kernel_cap_struct kernel_cap_t;
1693#line 104
1694struct dentry;
1695#line 104
1696struct dentry;
1697#line 104
1698struct dentry;
1699#line 104
1700struct dentry;
1701#line 105
1702struct user_namespace;
1703#line 105
1704struct user_namespace;
1705#line 105
1706struct user_namespace;
1707#line 105
1708struct user_namespace;
1709#line 553 "include/linux/capability.h"
1710struct rb_node {
1711 unsigned long rb_parent_color ;
1712 struct rb_node *rb_right ;
1713 struct rb_node *rb_left ;
1714};
1715#line 108 "include/linux/rbtree.h"
1716struct rb_root {
1717 struct rb_node *rb_node ;
1718};
1719#line 176
1720struct prio_tree_node;
1721#line 176
1722struct prio_tree_node;
1723#line 176
1724struct prio_tree_node;
1725#line 176 "include/linux/rbtree.h"
1726struct raw_prio_tree_node {
1727 struct prio_tree_node *left ;
1728 struct prio_tree_node *right ;
1729 struct prio_tree_node *parent ;
1730};
1731#line 19 "include/linux/prio_tree.h"
1732struct prio_tree_node {
1733 struct prio_tree_node *left ;
1734 struct prio_tree_node *right ;
1735 struct prio_tree_node *parent ;
1736 unsigned long start ;
1737 unsigned long last ;
1738};
1739#line 27 "include/linux/prio_tree.h"
1740struct prio_tree_root {
1741 struct prio_tree_node *prio_tree_node ;
1742 unsigned short index_bits ;
1743 unsigned short raw ;
1744};
1745#line 115
1746struct address_space;
1747#line 115
1748struct address_space;
1749#line 115
1750struct address_space;
1751#line 115
1752struct address_space;
1753#line 116 "include/linux/prio_tree.h"
1754struct __anonstruct_ldv_15287_133 {
1755 u16 inuse ;
1756 u16 objects ;
1757};
1758#line 116 "include/linux/prio_tree.h"
1759union __anonunion_ldv_15288_132 {
1760 atomic_t _mapcount ;
1761 struct __anonstruct_ldv_15287_133 ldv_15287 ;
1762};
1763#line 116 "include/linux/prio_tree.h"
1764struct __anonstruct_ldv_15293_135 {
1765 unsigned long private ;
1766 struct address_space *mapping ;
1767};
1768#line 116 "include/linux/prio_tree.h"
1769union __anonunion_ldv_15296_134 {
1770 struct __anonstruct_ldv_15293_135 ldv_15293 ;
1771 struct kmem_cache *slab ;
1772 struct page *first_page ;
1773};
1774#line 116 "include/linux/prio_tree.h"
1775union __anonunion_ldv_15300_136 {
1776 unsigned long index ;
1777 void *freelist ;
1778};
1779#line 116 "include/linux/prio_tree.h"
1780struct page {
1781 unsigned long flags ;
1782 atomic_t _count ;
1783 union __anonunion_ldv_15288_132 ldv_15288 ;
1784 union __anonunion_ldv_15296_134 ldv_15296 ;
1785 union __anonunion_ldv_15300_136 ldv_15300 ;
1786 struct list_head lru ;
1787};
1788#line 124 "include/linux/mm_types.h"
1789struct __anonstruct_vm_set_138 {
1790 struct list_head list ;
1791 void *parent ;
1792 struct vm_area_struct *head ;
1793};
1794#line 124 "include/linux/mm_types.h"
1795union __anonunion_shared_137 {
1796 struct __anonstruct_vm_set_138 vm_set ;
1797 struct raw_prio_tree_node prio_tree_node ;
1798};
1799#line 124
1800struct anon_vma;
1801#line 124
1802struct anon_vma;
1803#line 124
1804struct anon_vma;
1805#line 124
1806struct vm_operations_struct;
1807#line 124
1808struct vm_operations_struct;
1809#line 124
1810struct vm_operations_struct;
1811#line 124
1812struct mempolicy;
1813#line 124
1814struct mempolicy;
1815#line 124
1816struct mempolicy;
1817#line 124 "include/linux/mm_types.h"
1818struct vm_area_struct {
1819 struct mm_struct *vm_mm ;
1820 unsigned long vm_start ;
1821 unsigned long vm_end ;
1822 struct vm_area_struct *vm_next ;
1823 struct vm_area_struct *vm_prev ;
1824 pgprot_t vm_page_prot ;
1825 unsigned long vm_flags ;
1826 struct rb_node vm_rb ;
1827 union __anonunion_shared_137 shared ;
1828 struct list_head anon_vma_chain ;
1829 struct anon_vma *anon_vma ;
1830 struct vm_operations_struct const *vm_ops ;
1831 unsigned long vm_pgoff ;
1832 struct file *vm_file ;
1833 void *vm_private_data ;
1834 struct mempolicy *vm_policy ;
1835};
1836#line 187 "include/linux/mm_types.h"
1837struct core_thread {
1838 struct task_struct *task ;
1839 struct core_thread *next ;
1840};
1841#line 193 "include/linux/mm_types.h"
1842struct core_state {
1843 atomic_t nr_threads ;
1844 struct core_thread dumper ;
1845 struct completion startup ;
1846};
1847#line 206 "include/linux/mm_types.h"
1848struct mm_rss_stat {
1849 atomic_long_t count[3U] ;
1850};
1851#line 219
1852struct linux_binfmt;
1853#line 219
1854struct linux_binfmt;
1855#line 219
1856struct linux_binfmt;
1857#line 219
1858struct mmu_notifier_mm;
1859#line 219
1860struct mmu_notifier_mm;
1861#line 219
1862struct mmu_notifier_mm;
1863#line 219 "include/linux/mm_types.h"
1864struct mm_struct {
1865 struct vm_area_struct *mmap ;
1866 struct rb_root mm_rb ;
1867 struct vm_area_struct *mmap_cache ;
1868 unsigned long (*get_unmapped_area)(struct file * , unsigned long , unsigned long ,
1869 unsigned long , unsigned long ) ;
1870 void (*unmap_area)(struct mm_struct * , unsigned long ) ;
1871 unsigned long mmap_base ;
1872 unsigned long task_size ;
1873 unsigned long cached_hole_size ;
1874 unsigned long free_area_cache ;
1875 pgd_t *pgd ;
1876 atomic_t mm_users ;
1877 atomic_t mm_count ;
1878 int map_count ;
1879 spinlock_t page_table_lock ;
1880 struct rw_semaphore mmap_sem ;
1881 struct list_head mmlist ;
1882 unsigned long hiwater_rss ;
1883 unsigned long hiwater_vm ;
1884 unsigned long total_vm ;
1885 unsigned long locked_vm ;
1886 unsigned long shared_vm ;
1887 unsigned long exec_vm ;
1888 unsigned long stack_vm ;
1889 unsigned long reserved_vm ;
1890 unsigned long def_flags ;
1891 unsigned long nr_ptes ;
1892 unsigned long start_code ;
1893 unsigned long end_code ;
1894 unsigned long start_data ;
1895 unsigned long end_data ;
1896 unsigned long start_brk ;
1897 unsigned long brk ;
1898 unsigned long start_stack ;
1899 unsigned long arg_start ;
1900 unsigned long arg_end ;
1901 unsigned long env_start ;
1902 unsigned long env_end ;
1903 unsigned long saved_auxv[44U] ;
1904 struct mm_rss_stat rss_stat ;
1905 struct linux_binfmt *binfmt ;
1906 cpumask_var_t cpu_vm_mask_var ;
1907 mm_context_t context ;
1908 unsigned int faultstamp ;
1909 unsigned int token_priority ;
1910 unsigned int last_interval ;
1911 atomic_t oom_disable_count ;
1912 unsigned long flags ;
1913 struct core_state *core_state ;
1914 spinlock_t ioctx_lock ;
1915 struct hlist_head ioctx_list ;
1916 struct task_struct *owner ;
1917 struct file *exe_file ;
1918 unsigned long num_exe_file_vmas ;
1919 struct mmu_notifier_mm *mmu_notifier_mm ;
1920 pgtable_t pmd_huge_pte ;
1921 struct cpumask cpumask_allocation ;
1922};
1923#line 7 "include/asm-generic/cputime.h"
1924typedef unsigned long cputime_t;
1925#line 118 "include/linux/sem.h"
1926struct sem_undo_list;
1927#line 118
1928struct sem_undo_list;
1929#line 118
1930struct sem_undo_list;
1931#line 131 "include/linux/sem.h"
1932struct sem_undo_list {
1933 atomic_t refcnt ;
1934 spinlock_t lock ;
1935 struct list_head list_proc ;
1936};
1937#line 140 "include/linux/sem.h"
1938struct sysv_sem {
1939 struct sem_undo_list *undo_list ;
1940};
1941#line 149
1942struct siginfo;
1943#line 149
1944struct siginfo;
1945#line 149
1946struct siginfo;
1947#line 149
1948struct siginfo;
1949#line 32 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/signal.h"
1950struct __anonstruct_sigset_t_139 {
1951 unsigned long sig[1U] ;
1952};
1953#line 32 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/signal.h"
1954typedef struct __anonstruct_sigset_t_139 sigset_t;
1955#line 17 "include/asm-generic/signal-defs.h"
1956typedef void __signalfn_t(int );
1957#line 18 "include/asm-generic/signal-defs.h"
1958typedef __signalfn_t *__sighandler_t;
1959#line 20 "include/asm-generic/signal-defs.h"
1960typedef void __restorefn_t(void);
1961#line 21 "include/asm-generic/signal-defs.h"
1962typedef __restorefn_t *__sigrestore_t;
1963#line 126 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/signal.h"
1964struct sigaction {
1965 __sighandler_t sa_handler ;
1966 unsigned long sa_flags ;
1967 __sigrestore_t sa_restorer ;
1968 sigset_t sa_mask ;
1969};
1970#line 173 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/signal.h"
1971struct k_sigaction {
1972 struct sigaction sa ;
1973};
1974#line 185 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/signal.h"
1975union sigval {
1976 int sival_int ;
1977 void *sival_ptr ;
1978};
1979#line 10 "include/asm-generic/siginfo.h"
1980typedef union sigval sigval_t;
1981#line 11 "include/asm-generic/siginfo.h"
1982struct __anonstruct__kill_141 {
1983 __kernel_pid_t _pid ;
1984 __kernel_uid32_t _uid ;
1985};
1986#line 11 "include/asm-generic/siginfo.h"
1987struct __anonstruct__timer_142 {
1988 __kernel_timer_t _tid ;
1989 int _overrun ;
1990 char _pad[0U] ;
1991 sigval_t _sigval ;
1992 int _sys_private ;
1993};
1994#line 11 "include/asm-generic/siginfo.h"
1995struct __anonstruct__rt_143 {
1996 __kernel_pid_t _pid ;
1997 __kernel_uid32_t _uid ;
1998 sigval_t _sigval ;
1999};
2000#line 11 "include/asm-generic/siginfo.h"
2001struct __anonstruct__sigchld_144 {
2002 __kernel_pid_t _pid ;
2003 __kernel_uid32_t _uid ;
2004 int _status ;
2005 __kernel_clock_t _utime ;
2006 __kernel_clock_t _stime ;
2007};
2008#line 11 "include/asm-generic/siginfo.h"
2009struct __anonstruct__sigfault_145 {
2010 void *_addr ;
2011 short _addr_lsb ;
2012};
2013#line 11 "include/asm-generic/siginfo.h"
2014struct __anonstruct__sigpoll_146 {
2015 long _band ;
2016 int _fd ;
2017};
2018#line 11 "include/asm-generic/siginfo.h"
2019union __anonunion__sifields_140 {
2020 int _pad[28U] ;
2021 struct __anonstruct__kill_141 _kill ;
2022 struct __anonstruct__timer_142 _timer ;
2023 struct __anonstruct__rt_143 _rt ;
2024 struct __anonstruct__sigchld_144 _sigchld ;
2025 struct __anonstruct__sigfault_145 _sigfault ;
2026 struct __anonstruct__sigpoll_146 _sigpoll ;
2027};
2028#line 11 "include/asm-generic/siginfo.h"
2029struct siginfo {
2030 int si_signo ;
2031 int si_errno ;
2032 int si_code ;
2033 union __anonunion__sifields_140 _sifields ;
2034};
2035#line 94 "include/asm-generic/siginfo.h"
2036typedef struct siginfo siginfo_t;
2037#line 14 "include/linux/signal.h"
2038struct user_struct;
2039#line 14
2040struct user_struct;
2041#line 14
2042struct user_struct;
2043#line 24 "include/linux/signal.h"
2044struct sigpending {
2045 struct list_head list ;
2046 sigset_t signal ;
2047};
2048#line 387
2049enum pid_type {
2050 PIDTYPE_PID = 0,
2051 PIDTYPE_PGID = 1,
2052 PIDTYPE_SID = 2,
2053 PIDTYPE_MAX = 3
2054} ;
2055#line 394
2056struct pid_namespace;
2057#line 394
2058struct pid_namespace;
2059#line 394
2060struct pid_namespace;
2061#line 394 "include/linux/signal.h"
2062struct upid {
2063 int nr ;
2064 struct pid_namespace *ns ;
2065 struct hlist_node pid_chain ;
2066};
2067#line 56 "include/linux/pid.h"
2068struct pid {
2069 atomic_t count ;
2070 unsigned int level ;
2071 struct hlist_head tasks[3U] ;
2072 struct rcu_head rcu ;
2073 struct upid numbers[1U] ;
2074};
2075#line 68 "include/linux/pid.h"
2076struct pid_link {
2077 struct hlist_node node ;
2078 struct pid *pid ;
2079};
2080#line 90 "include/linux/proportions.h"
2081struct prop_local_single {
2082 unsigned long events ;
2083 unsigned long period ;
2084 int shift ;
2085 spinlock_t lock ;
2086};
2087#line 10 "include/linux/seccomp.h"
2088struct __anonstruct_seccomp_t_149 {
2089 int mode ;
2090};
2091#line 10 "include/linux/seccomp.h"
2092typedef struct __anonstruct_seccomp_t_149 seccomp_t;
2093#line 427 "include/linux/rculist.h"
2094struct plist_head {
2095 struct list_head node_list ;
2096 raw_spinlock_t *rawlock ;
2097 spinlock_t *spinlock ;
2098};
2099#line 88 "include/linux/plist.h"
2100struct plist_node {
2101 int prio ;
2102 struct list_head prio_list ;
2103 struct list_head node_list ;
2104};
2105#line 38 "include/linux/rtmutex.h"
2106struct rt_mutex_waiter;
2107#line 38
2108struct rt_mutex_waiter;
2109#line 38
2110struct rt_mutex_waiter;
2111#line 38
2112struct rt_mutex_waiter;
2113#line 41 "include/linux/resource.h"
2114struct rlimit {
2115 unsigned long rlim_cur ;
2116 unsigned long rlim_max ;
2117};
2118#line 85 "include/linux/resource.h"
2119struct timerqueue_node {
2120 struct rb_node node ;
2121 ktime_t expires ;
2122};
2123#line 12 "include/linux/timerqueue.h"
2124struct timerqueue_head {
2125 struct rb_root head ;
2126 struct timerqueue_node *next ;
2127};
2128#line 50
2129struct hrtimer_clock_base;
2130#line 50
2131struct hrtimer_clock_base;
2132#line 50
2133struct hrtimer_clock_base;
2134#line 50
2135struct hrtimer_clock_base;
2136#line 51
2137struct hrtimer_cpu_base;
2138#line 51
2139struct hrtimer_cpu_base;
2140#line 51
2141struct hrtimer_cpu_base;
2142#line 51
2143struct hrtimer_cpu_base;
2144#line 60
2145enum hrtimer_restart {
2146 HRTIMER_NORESTART = 0,
2147 HRTIMER_RESTART = 1
2148} ;
2149#line 65 "include/linux/timerqueue.h"
2150struct hrtimer {
2151 struct timerqueue_node node ;
2152 ktime_t _softexpires ;
2153 enum hrtimer_restart (*function)(struct hrtimer * ) ;
2154 struct hrtimer_clock_base *base ;
2155 unsigned long state ;
2156 int start_pid ;
2157 void *start_site ;
2158 char start_comm[16U] ;
2159};
2160#line 132 "include/linux/hrtimer.h"
2161struct hrtimer_clock_base {
2162 struct hrtimer_cpu_base *cpu_base ;
2163 int index ;
2164 clockid_t clockid ;
2165 struct timerqueue_head active ;
2166 ktime_t resolution ;
2167 ktime_t (*get_time)(void) ;
2168 ktime_t softirq_time ;
2169 ktime_t offset ;
2170};
2171#line 162 "include/linux/hrtimer.h"
2172struct hrtimer_cpu_base {
2173 raw_spinlock_t lock ;
2174 unsigned long active_bases ;
2175 ktime_t expires_next ;
2176 int hres_active ;
2177 int hang_detected ;
2178 unsigned long nr_events ;
2179 unsigned long nr_retries ;
2180 unsigned long nr_hangs ;
2181 ktime_t max_hang_time ;
2182 struct hrtimer_clock_base clock_base[3U] ;
2183};
2184#line 452 "include/linux/hrtimer.h"
2185struct task_io_accounting {
2186 u64 rchar ;
2187 u64 wchar ;
2188 u64 syscr ;
2189 u64 syscw ;
2190 u64 read_bytes ;
2191 u64 write_bytes ;
2192 u64 cancelled_write_bytes ;
2193};
2194#line 45 "include/linux/task_io_accounting.h"
2195struct latency_record {
2196 unsigned long backtrace[12U] ;
2197 unsigned int count ;
2198 unsigned long time ;
2199 unsigned long max ;
2200};
2201#line 29 "include/linux/key.h"
2202typedef int32_t key_serial_t;
2203#line 32 "include/linux/key.h"
2204typedef uint32_t key_perm_t;
2205#line 33
2206struct key;
2207#line 33
2208struct key;
2209#line 33
2210struct key;
2211#line 33
2212struct key;
2213#line 34
2214struct signal_struct;
2215#line 34
2216struct signal_struct;
2217#line 34
2218struct signal_struct;
2219#line 34
2220struct signal_struct;
2221#line 35
2222struct key_type;
2223#line 35
2224struct key_type;
2225#line 35
2226struct key_type;
2227#line 35
2228struct key_type;
2229#line 37
2230struct keyring_list;
2231#line 37
2232struct keyring_list;
2233#line 37
2234struct keyring_list;
2235#line 37
2236struct keyring_list;
2237#line 115
2238struct key_user;
2239#line 115
2240struct key_user;
2241#line 115
2242struct key_user;
2243#line 115 "include/linux/key.h"
2244union __anonunion_ldv_16554_150 {
2245 time_t expiry ;
2246 time_t revoked_at ;
2247};
2248#line 115 "include/linux/key.h"
2249union __anonunion_type_data_151 {
2250 struct list_head link ;
2251 unsigned long x[2U] ;
2252 void *p[2U] ;
2253 int reject_error ;
2254};
2255#line 115 "include/linux/key.h"
2256union __anonunion_payload_152 {
2257 unsigned long value ;
2258 void *rcudata ;
2259 void *data ;
2260 struct keyring_list *subscriptions ;
2261};
2262#line 115 "include/linux/key.h"
2263struct key {
2264 atomic_t usage ;
2265 key_serial_t serial ;
2266 struct rb_node serial_node ;
2267 struct key_type *type ;
2268 struct rw_semaphore sem ;
2269 struct key_user *user ;
2270 void *security ;
2271 union __anonunion_ldv_16554_150 ldv_16554 ;
2272 uid_t uid ;
2273 gid_t gid ;
2274 key_perm_t perm ;
2275 unsigned short quotalen ;
2276 unsigned short datalen ;
2277 unsigned long flags ;
2278 char *description ;
2279 union __anonunion_type_data_151 type_data ;
2280 union __anonunion_payload_152 payload ;
2281};
2282#line 310
2283struct audit_context;
2284#line 310
2285struct audit_context;
2286#line 310
2287struct audit_context;
2288#line 310
2289struct audit_context;
2290#line 27 "include/linux/selinux.h"
2291struct inode;
2292#line 27
2293struct inode;
2294#line 27
2295struct inode;
2296#line 27
2297struct inode;
2298#line 28 "include/linux/selinux.h"
2299struct group_info {
2300 atomic_t usage ;
2301 int ngroups ;
2302 int nblocks ;
2303 gid_t small_block[32U] ;
2304 gid_t *blocks[0U] ;
2305};
2306#line 77 "include/linux/cred.h"
2307struct thread_group_cred {
2308 atomic_t usage ;
2309 pid_t tgid ;
2310 spinlock_t lock ;
2311 struct key *session_keyring ;
2312 struct key *process_keyring ;
2313 struct rcu_head rcu ;
2314};
2315#line 91 "include/linux/cred.h"
2316struct cred {
2317 atomic_t usage ;
2318 atomic_t subscribers ;
2319 void *put_addr ;
2320 unsigned int magic ;
2321 uid_t uid ;
2322 gid_t gid ;
2323 uid_t suid ;
2324 gid_t sgid ;
2325 uid_t euid ;
2326 gid_t egid ;
2327 uid_t fsuid ;
2328 gid_t fsgid ;
2329 unsigned int securebits ;
2330 kernel_cap_t cap_inheritable ;
2331 kernel_cap_t cap_permitted ;
2332 kernel_cap_t cap_effective ;
2333 kernel_cap_t cap_bset ;
2334 unsigned char jit_keyring ;
2335 struct key *thread_keyring ;
2336 struct key *request_key_auth ;
2337 struct thread_group_cred *tgcred ;
2338 void *security ;
2339 struct user_struct *user ;
2340 struct user_namespace *user_ns ;
2341 struct group_info *group_info ;
2342 struct rcu_head rcu ;
2343};
2344#line 264
2345struct futex_pi_state;
2346#line 264
2347struct futex_pi_state;
2348#line 264
2349struct futex_pi_state;
2350#line 264
2351struct futex_pi_state;
2352#line 265
2353struct robust_list_head;
2354#line 265
2355struct robust_list_head;
2356#line 265
2357struct robust_list_head;
2358#line 265
2359struct robust_list_head;
2360#line 266
2361struct bio_list;
2362#line 266
2363struct bio_list;
2364#line 266
2365struct bio_list;
2366#line 266
2367struct bio_list;
2368#line 267
2369struct fs_struct;
2370#line 267
2371struct fs_struct;
2372#line 267
2373struct fs_struct;
2374#line 267
2375struct fs_struct;
2376#line 268
2377struct perf_event_context;
2378#line 268
2379struct perf_event_context;
2380#line 268
2381struct perf_event_context;
2382#line 268
2383struct perf_event_context;
2384#line 269
2385struct blk_plug;
2386#line 269
2387struct blk_plug;
2388#line 269
2389struct blk_plug;
2390#line 269
2391struct blk_plug;
2392#line 149 "include/linux/sched.h"
2393struct cfs_rq;
2394#line 149
2395struct cfs_rq;
2396#line 149
2397struct cfs_rq;
2398#line 149
2399struct cfs_rq;
2400#line 44 "include/linux/aio_abi.h"
2401struct io_event {
2402 __u64 data ;
2403 __u64 obj ;
2404 __s64 res ;
2405 __s64 res2 ;
2406};
2407#line 106 "include/linux/aio_abi.h"
2408struct iovec {
2409 void *iov_base ;
2410 __kernel_size_t iov_len ;
2411};
2412#line 54 "include/linux/uio.h"
2413struct kioctx;
2414#line 54
2415struct kioctx;
2416#line 54
2417struct kioctx;
2418#line 54
2419struct kioctx;
2420#line 55 "include/linux/uio.h"
2421union __anonunion_ki_obj_153 {
2422 void *user ;
2423 struct task_struct *tsk ;
2424};
2425#line 55
2426struct eventfd_ctx;
2427#line 55
2428struct eventfd_ctx;
2429#line 55
2430struct eventfd_ctx;
2431#line 55 "include/linux/uio.h"
2432struct kiocb {
2433 struct list_head ki_run_list ;
2434 unsigned long ki_flags ;
2435 int ki_users ;
2436 unsigned int ki_key ;
2437 struct file *ki_filp ;
2438 struct kioctx *ki_ctx ;
2439 int (*ki_cancel)(struct kiocb * , struct io_event * ) ;
2440 ssize_t (*ki_retry)(struct kiocb * ) ;
2441 void (*ki_dtor)(struct kiocb * ) ;
2442 union __anonunion_ki_obj_153 ki_obj ;
2443 __u64 ki_user_data ;
2444 loff_t ki_pos ;
2445 void *private ;
2446 unsigned short ki_opcode ;
2447 size_t ki_nbytes ;
2448 char *ki_buf ;
2449 size_t ki_left ;
2450 struct iovec ki_inline_vec ;
2451 struct iovec *ki_iovec ;
2452 unsigned long ki_nr_segs ;
2453 unsigned long ki_cur_seg ;
2454 struct list_head ki_list ;
2455 struct eventfd_ctx *ki_eventfd ;
2456};
2457#line 161 "include/linux/aio.h"
2458struct aio_ring_info {
2459 unsigned long mmap_base ;
2460 unsigned long mmap_size ;
2461 struct page **ring_pages ;
2462 spinlock_t ring_lock ;
2463 long nr_pages ;
2464 unsigned int nr ;
2465 unsigned int tail ;
2466 struct page *internal_pages[8U] ;
2467};
2468#line 177 "include/linux/aio.h"
2469struct kioctx {
2470 atomic_t users ;
2471 int dead ;
2472 struct mm_struct *mm ;
2473 unsigned long user_id ;
2474 struct hlist_node list ;
2475 wait_queue_head_t wait ;
2476 spinlock_t ctx_lock ;
2477 int reqs_active ;
2478 struct list_head active_reqs ;
2479 struct list_head run_list ;
2480 unsigned int max_reqs ;
2481 struct aio_ring_info ring_info ;
2482 struct delayed_work wq ;
2483 struct rcu_head rcu_head ;
2484};
2485#line 404 "include/linux/sched.h"
2486struct sighand_struct {
2487 atomic_t count ;
2488 struct k_sigaction action[64U] ;
2489 spinlock_t siglock ;
2490 wait_queue_head_t signalfd_wqh ;
2491};
2492#line 447 "include/linux/sched.h"
2493struct pacct_struct {
2494 int ac_flag ;
2495 long ac_exitcode ;
2496 unsigned long ac_mem ;
2497 cputime_t ac_utime ;
2498 cputime_t ac_stime ;
2499 unsigned long ac_minflt ;
2500 unsigned long ac_majflt ;
2501};
2502#line 455 "include/linux/sched.h"
2503struct cpu_itimer {
2504 cputime_t expires ;
2505 cputime_t incr ;
2506 u32 error ;
2507 u32 incr_error ;
2508};
2509#line 462 "include/linux/sched.h"
2510struct task_cputime {
2511 cputime_t utime ;
2512 cputime_t stime ;
2513 unsigned long long sum_exec_runtime ;
2514};
2515#line 479 "include/linux/sched.h"
2516struct thread_group_cputimer {
2517 struct task_cputime cputime ;
2518 int running ;
2519 spinlock_t lock ;
2520};
2521#line 515
2522struct autogroup;
2523#line 515
2524struct autogroup;
2525#line 515
2526struct autogroup;
2527#line 515
2528struct autogroup;
2529#line 516
2530struct tty_struct;
2531#line 516
2532struct tty_struct;
2533#line 516
2534struct tty_struct;
2535#line 516
2536struct taskstats;
2537#line 516
2538struct taskstats;
2539#line 516
2540struct taskstats;
2541#line 516
2542struct tty_audit_buf;
2543#line 516
2544struct tty_audit_buf;
2545#line 516
2546struct tty_audit_buf;
2547#line 516 "include/linux/sched.h"
2548struct signal_struct {
2549 atomic_t sigcnt ;
2550 atomic_t live ;
2551 int nr_threads ;
2552 wait_queue_head_t wait_chldexit ;
2553 struct task_struct *curr_target ;
2554 struct sigpending shared_pending ;
2555 int group_exit_code ;
2556 int notify_count ;
2557 struct task_struct *group_exit_task ;
2558 int group_stop_count ;
2559 unsigned int flags ;
2560 struct list_head posix_timers ;
2561 struct hrtimer real_timer ;
2562 struct pid *leader_pid ;
2563 ktime_t it_real_incr ;
2564 struct cpu_itimer it[2U] ;
2565 struct thread_group_cputimer cputimer ;
2566 struct task_cputime cputime_expires ;
2567 struct list_head cpu_timers[3U] ;
2568 struct pid *tty_old_pgrp ;
2569 int leader ;
2570 struct tty_struct *tty ;
2571 struct autogroup *autogroup ;
2572 cputime_t utime ;
2573 cputime_t stime ;
2574 cputime_t cutime ;
2575 cputime_t cstime ;
2576 cputime_t gtime ;
2577 cputime_t cgtime ;
2578 cputime_t prev_utime ;
2579 cputime_t prev_stime ;
2580 unsigned long nvcsw ;
2581 unsigned long nivcsw ;
2582 unsigned long cnvcsw ;
2583 unsigned long cnivcsw ;
2584 unsigned long min_flt ;
2585 unsigned long maj_flt ;
2586 unsigned long cmin_flt ;
2587 unsigned long cmaj_flt ;
2588 unsigned long inblock ;
2589 unsigned long oublock ;
2590 unsigned long cinblock ;
2591 unsigned long coublock ;
2592 unsigned long maxrss ;
2593 unsigned long cmaxrss ;
2594 struct task_io_accounting ioac ;
2595 unsigned long long sum_sched_runtime ;
2596 struct rlimit rlim[16U] ;
2597 struct pacct_struct pacct ;
2598 struct taskstats *stats ;
2599 unsigned int audit_tty ;
2600 struct tty_audit_buf *tty_audit_buf ;
2601 struct rw_semaphore threadgroup_fork_lock ;
2602 int oom_adj ;
2603 int oom_score_adj ;
2604 int oom_score_adj_min ;
2605 struct mutex cred_guard_mutex ;
2606};
2607#line 683 "include/linux/sched.h"
2608struct user_struct {
2609 atomic_t __count ;
2610 atomic_t processes ;
2611 atomic_t files ;
2612 atomic_t sigpending ;
2613 atomic_t inotify_watches ;
2614 atomic_t inotify_devs ;
2615 atomic_t fanotify_listeners ;
2616 atomic_long_t epoll_watches ;
2617 unsigned long mq_bytes ;
2618 unsigned long locked_shm ;
2619 struct key *uid_keyring ;
2620 struct key *session_keyring ;
2621 struct hlist_node uidhash_node ;
2622 uid_t uid ;
2623 struct user_namespace *user_ns ;
2624 atomic_long_t locked_vm ;
2625};
2626#line 728
2627struct backing_dev_info;
2628#line 728
2629struct backing_dev_info;
2630#line 728
2631struct backing_dev_info;
2632#line 728
2633struct backing_dev_info;
2634#line 729
2635struct reclaim_state;
2636#line 729
2637struct reclaim_state;
2638#line 729
2639struct reclaim_state;
2640#line 729
2641struct reclaim_state;
2642#line 730 "include/linux/sched.h"
2643struct sched_info {
2644 unsigned long pcount ;
2645 unsigned long long run_delay ;
2646 unsigned long long last_arrival ;
2647 unsigned long long last_queued ;
2648};
2649#line 744 "include/linux/sched.h"
2650struct task_delay_info {
2651 spinlock_t lock ;
2652 unsigned int flags ;
2653 struct timespec blkio_start ;
2654 struct timespec blkio_end ;
2655 u64 blkio_delay ;
2656 u64 swapin_delay ;
2657 u32 blkio_count ;
2658 u32 swapin_count ;
2659 struct timespec freepages_start ;
2660 struct timespec freepages_end ;
2661 u64 freepages_delay ;
2662 u32 freepages_count ;
2663};
2664#line 1037
2665struct io_context;
2666#line 1037
2667struct io_context;
2668#line 1037
2669struct io_context;
2670#line 1037
2671struct io_context;
2672#line 1059
2673struct pipe_inode_info;
2674#line 1059
2675struct pipe_inode_info;
2676#line 1059
2677struct pipe_inode_info;
2678#line 1059
2679struct pipe_inode_info;
2680#line 1061
2681struct rq;
2682#line 1061
2683struct rq;
2684#line 1061
2685struct rq;
2686#line 1061
2687struct rq;
2688#line 1062 "include/linux/sched.h"
2689struct sched_class {
2690 struct sched_class const *next ;
2691 void (*enqueue_task)(struct rq * , struct task_struct * , int ) ;
2692 void (*dequeue_task)(struct rq * , struct task_struct * , int ) ;
2693 void (*yield_task)(struct rq * ) ;
2694 bool (*yield_to_task)(struct rq * , struct task_struct * , bool ) ;
2695 void (*check_preempt_curr)(struct rq * , struct task_struct * , int ) ;
2696 struct task_struct *(*pick_next_task)(struct rq * ) ;
2697 void (*put_prev_task)(struct rq * , struct task_struct * ) ;
2698 int (*select_task_rq)(struct task_struct * , int , int ) ;
2699 void (*pre_schedule)(struct rq * , struct task_struct * ) ;
2700 void (*post_schedule)(struct rq * ) ;
2701 void (*task_waking)(struct task_struct * ) ;
2702 void (*task_woken)(struct rq * , struct task_struct * ) ;
2703 void (*set_cpus_allowed)(struct task_struct * , struct cpumask const * ) ;
2704 void (*rq_online)(struct rq * ) ;
2705 void (*rq_offline)(struct rq * ) ;
2706 void (*set_curr_task)(struct rq * ) ;
2707 void (*task_tick)(struct rq * , struct task_struct * , int ) ;
2708 void (*task_fork)(struct task_struct * ) ;
2709 void (*switched_from)(struct rq * , struct task_struct * ) ;
2710 void (*switched_to)(struct rq * , struct task_struct * ) ;
2711 void (*prio_changed)(struct rq * , struct task_struct * , int ) ;
2712 unsigned int (*get_rr_interval)(struct rq * , struct task_struct * ) ;
2713 void (*task_move_group)(struct task_struct * , int ) ;
2714};
2715#line 1127 "include/linux/sched.h"
2716struct load_weight {
2717 unsigned long weight ;
2718 unsigned long inv_weight ;
2719};
2720#line 1132 "include/linux/sched.h"
2721struct sched_statistics {
2722 u64 wait_start ;
2723 u64 wait_max ;
2724 u64 wait_count ;
2725 u64 wait_sum ;
2726 u64 iowait_count ;
2727 u64 iowait_sum ;
2728 u64 sleep_start ;
2729 u64 sleep_max ;
2730 s64 sum_sleep_runtime ;
2731 u64 block_start ;
2732 u64 block_max ;
2733 u64 exec_max ;
2734 u64 slice_max ;
2735 u64 nr_migrations_cold ;
2736 u64 nr_failed_migrations_affine ;
2737 u64 nr_failed_migrations_running ;
2738 u64 nr_failed_migrations_hot ;
2739 u64 nr_forced_migrations ;
2740 u64 nr_wakeups ;
2741 u64 nr_wakeups_sync ;
2742 u64 nr_wakeups_migrate ;
2743 u64 nr_wakeups_local ;
2744 u64 nr_wakeups_remote ;
2745 u64 nr_wakeups_affine ;
2746 u64 nr_wakeups_affine_attempts ;
2747 u64 nr_wakeups_passive ;
2748 u64 nr_wakeups_idle ;
2749};
2750#line 1167 "include/linux/sched.h"
2751struct sched_entity {
2752 struct load_weight load ;
2753 struct rb_node run_node ;
2754 struct list_head group_node ;
2755 unsigned int on_rq ;
2756 u64 exec_start ;
2757 u64 sum_exec_runtime ;
2758 u64 vruntime ;
2759 u64 prev_sum_exec_runtime ;
2760 u64 nr_migrations ;
2761 struct sched_statistics statistics ;
2762 struct sched_entity *parent ;
2763 struct cfs_rq *cfs_rq ;
2764 struct cfs_rq *my_q ;
2765};
2766#line 1193
2767struct rt_rq;
2768#line 1193
2769struct rt_rq;
2770#line 1193
2771struct rt_rq;
2772#line 1193 "include/linux/sched.h"
2773struct sched_rt_entity {
2774 struct list_head run_list ;
2775 unsigned long timeout ;
2776 unsigned int time_slice ;
2777 int nr_cpus_allowed ;
2778 struct sched_rt_entity *back ;
2779 struct sched_rt_entity *parent ;
2780 struct rt_rq *rt_rq ;
2781 struct rt_rq *my_q ;
2782};
2783#line 1217
2784struct mem_cgroup;
2785#line 1217
2786struct mem_cgroup;
2787#line 1217
2788struct mem_cgroup;
2789#line 1217 "include/linux/sched.h"
2790struct memcg_batch_info {
2791 int do_batch ;
2792 struct mem_cgroup *memcg ;
2793 unsigned long nr_pages ;
2794 unsigned long memsw_nr_pages ;
2795};
2796#line 1569
2797struct files_struct;
2798#line 1569
2799struct files_struct;
2800#line 1569
2801struct files_struct;
2802#line 1569
2803struct irqaction;
2804#line 1569
2805struct irqaction;
2806#line 1569
2807struct irqaction;
2808#line 1569
2809struct css_set;
2810#line 1569
2811struct css_set;
2812#line 1569
2813struct css_set;
2814#line 1569
2815struct compat_robust_list_head;
2816#line 1569
2817struct compat_robust_list_head;
2818#line 1569
2819struct compat_robust_list_head;
2820#line 1569
2821struct ftrace_ret_stack;
2822#line 1569
2823struct ftrace_ret_stack;
2824#line 1569
2825struct ftrace_ret_stack;
2826#line 1569 "include/linux/sched.h"
2827struct task_struct {
2828 long volatile state ;
2829 void *stack ;
2830 atomic_t usage ;
2831 unsigned int flags ;
2832 unsigned int ptrace ;
2833 struct task_struct *wake_entry ;
2834 int on_cpu ;
2835 int on_rq ;
2836 int prio ;
2837 int static_prio ;
2838 int normal_prio ;
2839 unsigned int rt_priority ;
2840 struct sched_class const *sched_class ;
2841 struct sched_entity se ;
2842 struct sched_rt_entity rt ;
2843 struct hlist_head preempt_notifiers ;
2844 unsigned char fpu_counter ;
2845 unsigned int btrace_seq ;
2846 unsigned int policy ;
2847 cpumask_t cpus_allowed ;
2848 struct sched_info sched_info ;
2849 struct list_head tasks ;
2850 struct plist_node pushable_tasks ;
2851 struct mm_struct *mm ;
2852 struct mm_struct *active_mm ;
2853 unsigned char brk_randomized : 1 ;
2854 int exit_state ;
2855 int exit_code ;
2856 int exit_signal ;
2857 int pdeath_signal ;
2858 unsigned int group_stop ;
2859 unsigned int personality ;
2860 unsigned char did_exec : 1 ;
2861 unsigned char in_execve : 1 ;
2862 unsigned char in_iowait : 1 ;
2863 unsigned char sched_reset_on_fork : 1 ;
2864 unsigned char sched_contributes_to_load : 1 ;
2865 pid_t pid ;
2866 pid_t tgid ;
2867 unsigned long stack_canary ;
2868 struct task_struct *real_parent ;
2869 struct task_struct *parent ;
2870 struct list_head children ;
2871 struct list_head sibling ;
2872 struct task_struct *group_leader ;
2873 struct list_head ptraced ;
2874 struct list_head ptrace_entry ;
2875 struct pid_link pids[3U] ;
2876 struct list_head thread_group ;
2877 struct completion *vfork_done ;
2878 int *set_child_tid ;
2879 int *clear_child_tid ;
2880 cputime_t utime ;
2881 cputime_t stime ;
2882 cputime_t utimescaled ;
2883 cputime_t stimescaled ;
2884 cputime_t gtime ;
2885 cputime_t prev_utime ;
2886 cputime_t prev_stime ;
2887 unsigned long nvcsw ;
2888 unsigned long nivcsw ;
2889 struct timespec start_time ;
2890 struct timespec real_start_time ;
2891 unsigned long min_flt ;
2892 unsigned long maj_flt ;
2893 struct task_cputime cputime_expires ;
2894 struct list_head cpu_timers[3U] ;
2895 struct cred const *real_cred ;
2896 struct cred const *cred ;
2897 struct cred *replacement_session_keyring ;
2898 char comm[16U] ;
2899 int link_count ;
2900 int total_link_count ;
2901 struct sysv_sem sysvsem ;
2902 unsigned long last_switch_count ;
2903 struct thread_struct thread ;
2904 struct fs_struct *fs ;
2905 struct files_struct *files ;
2906 struct nsproxy *nsproxy ;
2907 struct signal_struct *signal ;
2908 struct sighand_struct *sighand ;
2909 sigset_t blocked ;
2910 sigset_t real_blocked ;
2911 sigset_t saved_sigmask ;
2912 struct sigpending pending ;
2913 unsigned long sas_ss_sp ;
2914 size_t sas_ss_size ;
2915 int (*notifier)(void * ) ;
2916 void *notifier_data ;
2917 sigset_t *notifier_mask ;
2918 struct audit_context *audit_context ;
2919 uid_t loginuid ;
2920 unsigned int sessionid ;
2921 seccomp_t seccomp ;
2922 u32 parent_exec_id ;
2923 u32 self_exec_id ;
2924 spinlock_t alloc_lock ;
2925 struct irqaction *irqaction ;
2926 raw_spinlock_t pi_lock ;
2927 struct plist_head pi_waiters ;
2928 struct rt_mutex_waiter *pi_blocked_on ;
2929 struct mutex_waiter *blocked_on ;
2930 unsigned int irq_events ;
2931 unsigned long hardirq_enable_ip ;
2932 unsigned long hardirq_disable_ip ;
2933 unsigned int hardirq_enable_event ;
2934 unsigned int hardirq_disable_event ;
2935 int hardirqs_enabled ;
2936 int hardirq_context ;
2937 unsigned long softirq_disable_ip ;
2938 unsigned long softirq_enable_ip ;
2939 unsigned int softirq_disable_event ;
2940 unsigned int softirq_enable_event ;
2941 int softirqs_enabled ;
2942 int softirq_context ;
2943 u64 curr_chain_key ;
2944 int lockdep_depth ;
2945 unsigned int lockdep_recursion ;
2946 struct held_lock held_locks[48U] ;
2947 gfp_t lockdep_reclaim_gfp ;
2948 void *journal_info ;
2949 struct bio_list *bio_list ;
2950 struct blk_plug *plug ;
2951 struct reclaim_state *reclaim_state ;
2952 struct backing_dev_info *backing_dev_info ;
2953 struct io_context *io_context ;
2954 unsigned long ptrace_message ;
2955 siginfo_t *last_siginfo ;
2956 struct task_io_accounting ioac ;
2957 u64 acct_rss_mem1 ;
2958 u64 acct_vm_mem1 ;
2959 cputime_t acct_timexpd ;
2960 nodemask_t mems_allowed ;
2961 int mems_allowed_change_disable ;
2962 int cpuset_mem_spread_rotor ;
2963 int cpuset_slab_spread_rotor ;
2964 struct css_set *cgroups ;
2965 struct list_head cg_list ;
2966 struct robust_list_head *robust_list ;
2967 struct compat_robust_list_head *compat_robust_list ;
2968 struct list_head pi_state_list ;
2969 struct futex_pi_state *pi_state_cache ;
2970 struct perf_event_context *perf_event_ctxp[2U] ;
2971 struct mutex perf_event_mutex ;
2972 struct list_head perf_event_list ;
2973 struct mempolicy *mempolicy ;
2974 short il_next ;
2975 short pref_node_fork ;
2976 atomic_t fs_excl ;
2977 struct rcu_head rcu ;
2978 struct pipe_inode_info *splice_pipe ;
2979 struct task_delay_info *delays ;
2980 int make_it_fail ;
2981 struct prop_local_single dirties ;
2982 int latency_record_count ;
2983 struct latency_record latency_record[32U] ;
2984 unsigned long timer_slack_ns ;
2985 unsigned long default_timer_slack_ns ;
2986 struct list_head *scm_work_list ;
2987 int curr_ret_stack ;
2988 struct ftrace_ret_stack *ret_stack ;
2989 unsigned long long ftrace_timestamp ;
2990 atomic_t trace_overrun ;
2991 atomic_t tracing_graph_pause ;
2992 unsigned long trace ;
2993 unsigned long trace_recursion ;
2994 struct memcg_batch_info memcg_batch ;
2995 atomic_t ptrace_bp_refcnt ;
2996};
2997#line 53 "include/acpi/acpi_bus.h"
2998struct block_device;
2999#line 53
3000struct block_device;
3001#line 53
3002struct block_device;
3003#line 53
3004struct block_device;
3005#line 92 "include/linux/bit_spinlock.h"
3006struct hlist_bl_node;
3007#line 92
3008struct hlist_bl_node;
3009#line 92
3010struct hlist_bl_node;
3011#line 92 "include/linux/bit_spinlock.h"
3012struct hlist_bl_head {
3013 struct hlist_bl_node *first ;
3014};
3015#line 36 "include/linux/list_bl.h"
3016struct hlist_bl_node {
3017 struct hlist_bl_node *next ;
3018 struct hlist_bl_node **pprev ;
3019};
3020#line 114 "include/linux/rculist_bl.h"
3021struct nameidata;
3022#line 114
3023struct nameidata;
3024#line 114
3025struct nameidata;
3026#line 114
3027struct nameidata;
3028#line 115
3029struct path;
3030#line 115
3031struct path;
3032#line 115
3033struct path;
3034#line 115
3035struct path;
3036#line 116
3037struct vfsmount;
3038#line 116
3039struct vfsmount;
3040#line 116
3041struct vfsmount;
3042#line 116
3043struct vfsmount;
3044#line 117 "include/linux/rculist_bl.h"
3045struct qstr {
3046 unsigned int hash ;
3047 unsigned int len ;
3048 unsigned char const *name ;
3049};
3050#line 100 "include/linux/dcache.h"
3051struct dentry_operations;
3052#line 100
3053struct dentry_operations;
3054#line 100
3055struct dentry_operations;
3056#line 100
3057struct super_block;
3058#line 100
3059struct super_block;
3060#line 100
3061struct super_block;
3062#line 100 "include/linux/dcache.h"
3063union __anonunion_d_u_162 {
3064 struct list_head d_child ;
3065 struct rcu_head d_rcu ;
3066};
3067#line 100 "include/linux/dcache.h"
3068struct dentry {
3069 unsigned int d_flags ;
3070 seqcount_t d_seq ;
3071 struct hlist_bl_node d_hash ;
3072 struct dentry *d_parent ;
3073 struct qstr d_name ;
3074 struct inode *d_inode ;
3075 unsigned char d_iname[32U] ;
3076 unsigned int d_count ;
3077 spinlock_t d_lock ;
3078 struct dentry_operations const *d_op ;
3079 struct super_block *d_sb ;
3080 unsigned long d_time ;
3081 void *d_fsdata ;
3082 struct list_head d_lru ;
3083 union __anonunion_d_u_162 d_u ;
3084 struct list_head d_subdirs ;
3085 struct list_head d_alias ;
3086};
3087#line 151 "include/linux/dcache.h"
3088struct dentry_operations {
3089 int (*d_revalidate)(struct dentry * , struct nameidata * ) ;
3090 int (*d_hash)(struct dentry const * , struct inode const * , struct qstr * ) ;
3091 int (*d_compare)(struct dentry const * , struct inode const * , struct dentry const * ,
3092 struct inode const * , unsigned int , char const * , struct qstr const * ) ;
3093 int (*d_delete)(struct dentry const * ) ;
3094 void (*d_release)(struct dentry * ) ;
3095 void (*d_iput)(struct dentry * , struct inode * ) ;
3096 char *(*d_dname)(struct dentry * , char * , int ) ;
3097 struct vfsmount *(*d_automount)(struct path * ) ;
3098 int (*d_manage)(struct dentry * , bool ) ;
3099};
3100#line 422 "include/linux/dcache.h"
3101struct path {
3102 struct vfsmount *mnt ;
3103 struct dentry *dentry ;
3104};
3105#line 51 "include/linux/radix-tree.h"
3106struct radix_tree_node;
3107#line 51
3108struct radix_tree_node;
3109#line 51
3110struct radix_tree_node;
3111#line 51 "include/linux/radix-tree.h"
3112struct radix_tree_root {
3113 unsigned int height ;
3114 gfp_t gfp_mask ;
3115 struct radix_tree_node *rnode ;
3116};
3117#line 45 "include/linux/semaphore.h"
3118struct fiemap_extent {
3119 __u64 fe_logical ;
3120 __u64 fe_physical ;
3121 __u64 fe_length ;
3122 __u64 fe_reserved64[2U] ;
3123 __u32 fe_flags ;
3124 __u32 fe_reserved[3U] ;
3125};
3126#line 38 "include/linux/fiemap.h"
3127struct export_operations;
3128#line 38
3129struct export_operations;
3130#line 38
3131struct export_operations;
3132#line 38
3133struct export_operations;
3134#line 40
3135struct poll_table_struct;
3136#line 40
3137struct poll_table_struct;
3138#line 40
3139struct poll_table_struct;
3140#line 40
3141struct poll_table_struct;
3142#line 41
3143struct kstatfs;
3144#line 41
3145struct kstatfs;
3146#line 41
3147struct kstatfs;
3148#line 41
3149struct kstatfs;
3150#line 426 "include/linux/fs.h"
3151struct iattr {
3152 unsigned int ia_valid ;
3153 umode_t ia_mode ;
3154 uid_t ia_uid ;
3155 gid_t ia_gid ;
3156 loff_t ia_size ;
3157 struct timespec ia_atime ;
3158 struct timespec ia_mtime ;
3159 struct timespec ia_ctime ;
3160 struct file *ia_file ;
3161};
3162#line 119 "include/linux/quota.h"
3163struct if_dqinfo {
3164 __u64 dqi_bgrace ;
3165 __u64 dqi_igrace ;
3166 __u32 dqi_flags ;
3167 __u32 dqi_valid ;
3168};
3169#line 152 "include/linux/quota.h"
3170struct fs_disk_quota {
3171 __s8 d_version ;
3172 __s8 d_flags ;
3173 __u16 d_fieldmask ;
3174 __u32 d_id ;
3175 __u64 d_blk_hardlimit ;
3176 __u64 d_blk_softlimit ;
3177 __u64 d_ino_hardlimit ;
3178 __u64 d_ino_softlimit ;
3179 __u64 d_bcount ;
3180 __u64 d_icount ;
3181 __s32 d_itimer ;
3182 __s32 d_btimer ;
3183 __u16 d_iwarns ;
3184 __u16 d_bwarns ;
3185 __s32 d_padding2 ;
3186 __u64 d_rtb_hardlimit ;
3187 __u64 d_rtb_softlimit ;
3188 __u64 d_rtbcount ;
3189 __s32 d_rtbtimer ;
3190 __u16 d_rtbwarns ;
3191 __s16 d_padding3 ;
3192 char d_padding4[8U] ;
3193};
3194#line 75 "include/linux/dqblk_xfs.h"
3195struct fs_qfilestat {
3196 __u64 qfs_ino ;
3197 __u64 qfs_nblks ;
3198 __u32 qfs_nextents ;
3199};
3200#line 150 "include/linux/dqblk_xfs.h"
3201typedef struct fs_qfilestat fs_qfilestat_t;
3202#line 151 "include/linux/dqblk_xfs.h"
3203struct fs_quota_stat {
3204 __s8 qs_version ;
3205 __u16 qs_flags ;
3206 __s8 qs_pad ;
3207 fs_qfilestat_t qs_uquota ;
3208 fs_qfilestat_t qs_gquota ;
3209 __u32 qs_incoredqs ;
3210 __s32 qs_btimelimit ;
3211 __s32 qs_itimelimit ;
3212 __s32 qs_rtbtimelimit ;
3213 __u16 qs_bwarnlimit ;
3214 __u16 qs_iwarnlimit ;
3215};
3216#line 165
3217struct dquot;
3218#line 165
3219struct dquot;
3220#line 165
3221struct dquot;
3222#line 165
3223struct dquot;
3224#line 185 "include/linux/quota.h"
3225typedef __kernel_uid32_t qid_t;
3226#line 186 "include/linux/quota.h"
3227typedef long long qsize_t;
3228#line 189 "include/linux/quota.h"
3229struct mem_dqblk {
3230 qsize_t dqb_bhardlimit ;
3231 qsize_t dqb_bsoftlimit ;
3232 qsize_t dqb_curspace ;
3233 qsize_t dqb_rsvspace ;
3234 qsize_t dqb_ihardlimit ;
3235 qsize_t dqb_isoftlimit ;
3236 qsize_t dqb_curinodes ;
3237 time_t dqb_btime ;
3238 time_t dqb_itime ;
3239};
3240#line 211
3241struct quota_format_type;
3242#line 211
3243struct quota_format_type;
3244#line 211
3245struct quota_format_type;
3246#line 211
3247struct quota_format_type;
3248#line 212 "include/linux/quota.h"
3249struct mem_dqinfo {
3250 struct quota_format_type *dqi_format ;
3251 int dqi_fmt_id ;
3252 struct list_head dqi_dirty_list ;
3253 unsigned long dqi_flags ;
3254 unsigned int dqi_bgrace ;
3255 unsigned int dqi_igrace ;
3256 qsize_t dqi_maxblimit ;
3257 qsize_t dqi_maxilimit ;
3258 void *dqi_priv ;
3259};
3260#line 271 "include/linux/quota.h"
3261struct dquot {
3262 struct hlist_node dq_hash ;
3263 struct list_head dq_inuse ;
3264 struct list_head dq_free ;
3265 struct list_head dq_dirty ;
3266 struct mutex dq_lock ;
3267 atomic_t dq_count ;
3268 wait_queue_head_t dq_wait_unused ;
3269 struct super_block *dq_sb ;
3270 unsigned int dq_id ;
3271 loff_t dq_off ;
3272 unsigned long dq_flags ;
3273 short dq_type ;
3274 struct mem_dqblk dq_dqb ;
3275};
3276#line 299 "include/linux/quota.h"
3277struct quota_format_ops {
3278 int (*check_quota_file)(struct super_block * , int ) ;
3279 int (*read_file_info)(struct super_block * , int ) ;
3280 int (*write_file_info)(struct super_block * , int ) ;
3281 int (*free_file_info)(struct super_block * , int ) ;
3282 int (*read_dqblk)(struct dquot * ) ;
3283 int (*commit_dqblk)(struct dquot * ) ;
3284 int (*release_dqblk)(struct dquot * ) ;
3285};
3286#line 310 "include/linux/quota.h"
3287struct dquot_operations {
3288 int (*write_dquot)(struct dquot * ) ;
3289 struct dquot *(*alloc_dquot)(struct super_block * , int ) ;
3290 void (*destroy_dquot)(struct dquot * ) ;
3291 int (*acquire_dquot)(struct dquot * ) ;
3292 int (*release_dquot)(struct dquot * ) ;
3293 int (*mark_dirty)(struct dquot * ) ;
3294 int (*write_info)(struct super_block * , int ) ;
3295 qsize_t *(*get_reserved_space)(struct inode * ) ;
3296};
3297#line 324 "include/linux/quota.h"
3298struct quotactl_ops {
3299 int (*quota_on)(struct super_block * , int , int , struct path * ) ;
3300 int (*quota_on_meta)(struct super_block * , int , int ) ;
3301 int (*quota_off)(struct super_block * , int ) ;
3302 int (*quota_sync)(struct super_block * , int , int ) ;
3303 int (*get_info)(struct super_block * , int , struct if_dqinfo * ) ;
3304 int (*set_info)(struct super_block * , int , struct if_dqinfo * ) ;
3305 int (*get_dqblk)(struct super_block * , int , qid_t , struct fs_disk_quota * ) ;
3306 int (*set_dqblk)(struct super_block * , int , qid_t , struct fs_disk_quota * ) ;
3307 int (*get_xstate)(struct super_block * , struct fs_quota_stat * ) ;
3308 int (*set_xstate)(struct super_block * , unsigned int , int ) ;
3309};
3310#line 340 "include/linux/quota.h"
3311struct quota_format_type {
3312 int qf_fmt_id ;
3313 struct quota_format_ops const *qf_ops ;
3314 struct module *qf_owner ;
3315 struct quota_format_type *qf_next ;
3316};
3317#line 386 "include/linux/quota.h"
3318struct quota_info {
3319 unsigned int flags ;
3320 struct mutex dqio_mutex ;
3321 struct mutex dqonoff_mutex ;
3322 struct rw_semaphore dqptr_sem ;
3323 struct inode *files[2U] ;
3324 struct mem_dqinfo info[2U] ;
3325 struct quota_format_ops const *ops[2U] ;
3326};
3327#line 417
3328struct writeback_control;
3329#line 417
3330struct writeback_control;
3331#line 417
3332struct writeback_control;
3333#line 417
3334struct writeback_control;
3335#line 576 "include/linux/fs.h"
3336union __anonunion_arg_164 {
3337 char *buf ;
3338 void *data ;
3339};
3340#line 576 "include/linux/fs.h"
3341struct __anonstruct_read_descriptor_t_163 {
3342 size_t written ;
3343 size_t count ;
3344 union __anonunion_arg_164 arg ;
3345 int error ;
3346};
3347#line 576 "include/linux/fs.h"
3348typedef struct __anonstruct_read_descriptor_t_163 read_descriptor_t;
3349#line 579 "include/linux/fs.h"
3350struct address_space_operations {
3351 int (*writepage)(struct page * , struct writeback_control * ) ;
3352 int (*readpage)(struct file * , struct page * ) ;
3353 int (*writepages)(struct address_space * , struct writeback_control * ) ;
3354 int (*set_page_dirty)(struct page * ) ;
3355 int (*readpages)(struct file * , struct address_space * , struct list_head * ,
3356 unsigned int ) ;
3357 int (*write_begin)(struct file * , struct address_space * , loff_t , unsigned int ,
3358 unsigned int , struct page ** , void ** ) ;
3359 int (*write_end)(struct file * , struct address_space * , loff_t , unsigned int ,
3360 unsigned int , struct page * , void * ) ;
3361 sector_t (*bmap)(struct address_space * , sector_t ) ;
3362 void (*invalidatepage)(struct page * , unsigned long ) ;
3363 int (*releasepage)(struct page * , gfp_t ) ;
3364 void (*freepage)(struct page * ) ;
3365 ssize_t (*direct_IO)(int , struct kiocb * , struct iovec const * , loff_t ,
3366 unsigned long ) ;
3367 int (*get_xip_mem)(struct address_space * , unsigned long , int , void ** , unsigned long * ) ;
3368 int (*migratepage)(struct address_space * , struct page * , struct page * ) ;
3369 int (*launder_page)(struct page * ) ;
3370 int (*is_partially_uptodate)(struct page * , read_descriptor_t * , unsigned long ) ;
3371 int (*error_remove_page)(struct address_space * , struct page * ) ;
3372};
3373#line 630 "include/linux/fs.h"
3374struct address_space {
3375 struct inode *host ;
3376 struct radix_tree_root page_tree ;
3377 spinlock_t tree_lock ;
3378 unsigned int i_mmap_writable ;
3379 struct prio_tree_root i_mmap ;
3380 struct list_head i_mmap_nonlinear ;
3381 struct mutex i_mmap_mutex ;
3382 unsigned long nrpages ;
3383 unsigned long writeback_index ;
3384 struct address_space_operations const *a_ops ;
3385 unsigned long flags ;
3386 struct backing_dev_info *backing_dev_info ;
3387 spinlock_t private_lock ;
3388 struct list_head private_list ;
3389 struct address_space *assoc_mapping ;
3390};
3391#line 652
3392struct hd_struct;
3393#line 652
3394struct hd_struct;
3395#line 652
3396struct hd_struct;
3397#line 652
3398struct gendisk;
3399#line 652
3400struct gendisk;
3401#line 652
3402struct gendisk;
3403#line 652 "include/linux/fs.h"
3404struct block_device {
3405 dev_t bd_dev ;
3406 int bd_openers ;
3407 struct inode *bd_inode ;
3408 struct super_block *bd_super ;
3409 struct mutex bd_mutex ;
3410 struct list_head bd_inodes ;
3411 void *bd_claiming ;
3412 void *bd_holder ;
3413 int bd_holders ;
3414 bool bd_write_holder ;
3415 struct list_head bd_holder_disks ;
3416 struct block_device *bd_contains ;
3417 unsigned int bd_block_size ;
3418 struct hd_struct *bd_part ;
3419 unsigned int bd_part_count ;
3420 int bd_invalidated ;
3421 struct gendisk *bd_disk ;
3422 struct list_head bd_list ;
3423 unsigned long bd_private ;
3424 int bd_fsfreeze_count ;
3425 struct mutex bd_fsfreeze_mutex ;
3426};
3427#line 723
3428struct posix_acl;
3429#line 723
3430struct posix_acl;
3431#line 723
3432struct posix_acl;
3433#line 723
3434struct posix_acl;
3435#line 724
3436struct inode_operations;
3437#line 724
3438struct inode_operations;
3439#line 724
3440struct inode_operations;
3441#line 724 "include/linux/fs.h"
3442union __anonunion_ldv_21299_165 {
3443 struct list_head i_dentry ;
3444 struct rcu_head i_rcu ;
3445};
3446#line 724
3447struct file_operations;
3448#line 724
3449struct file_operations;
3450#line 724
3451struct file_operations;
3452#line 724
3453struct file_lock;
3454#line 724
3455struct file_lock;
3456#line 724
3457struct file_lock;
3458#line 724
3459struct cdev;
3460#line 724
3461struct cdev;
3462#line 724
3463struct cdev;
3464#line 724 "include/linux/fs.h"
3465union __anonunion_ldv_21326_166 {
3466 struct pipe_inode_info *i_pipe ;
3467 struct block_device *i_bdev ;
3468 struct cdev *i_cdev ;
3469};
3470#line 724 "include/linux/fs.h"
3471struct inode {
3472 umode_t i_mode ;
3473 uid_t i_uid ;
3474 gid_t i_gid ;
3475 struct inode_operations const *i_op ;
3476 struct super_block *i_sb ;
3477 spinlock_t i_lock ;
3478 unsigned int i_flags ;
3479 unsigned long i_state ;
3480 void *i_security ;
3481 struct mutex i_mutex ;
3482 unsigned long dirtied_when ;
3483 struct hlist_node i_hash ;
3484 struct list_head i_wb_list ;
3485 struct list_head i_lru ;
3486 struct list_head i_sb_list ;
3487 union __anonunion_ldv_21299_165 ldv_21299 ;
3488 unsigned long i_ino ;
3489 atomic_t i_count ;
3490 unsigned int i_nlink ;
3491 dev_t i_rdev ;
3492 unsigned int i_blkbits ;
3493 u64 i_version ;
3494 loff_t i_size ;
3495 struct timespec i_atime ;
3496 struct timespec i_mtime ;
3497 struct timespec i_ctime ;
3498 blkcnt_t i_blocks ;
3499 unsigned short i_bytes ;
3500 struct rw_semaphore i_alloc_sem ;
3501 struct file_operations const *i_fop ;
3502 struct file_lock *i_flock ;
3503 struct address_space *i_mapping ;
3504 struct address_space i_data ;
3505 struct dquot *i_dquot[2U] ;
3506 struct list_head i_devices ;
3507 union __anonunion_ldv_21326_166 ldv_21326 ;
3508 __u32 i_generation ;
3509 __u32 i_fsnotify_mask ;
3510 struct hlist_head i_fsnotify_marks ;
3511 atomic_t i_readcount ;
3512 atomic_t i_writecount ;
3513 struct posix_acl *i_acl ;
3514 struct posix_acl *i_default_acl ;
3515 void *i_private ;
3516};
3517#line 902 "include/linux/fs.h"
3518struct fown_struct {
3519 rwlock_t lock ;
3520 struct pid *pid ;
3521 enum pid_type pid_type ;
3522 uid_t uid ;
3523 uid_t euid ;
3524 int signum ;
3525};
3526#line 910 "include/linux/fs.h"
3527struct file_ra_state {
3528 unsigned long start ;
3529 unsigned int size ;
3530 unsigned int async_size ;
3531 unsigned int ra_pages ;
3532 unsigned int mmap_miss ;
3533 loff_t prev_pos ;
3534};
3535#line 933 "include/linux/fs.h"
3536union __anonunion_f_u_167 {
3537 struct list_head fu_list ;
3538 struct rcu_head fu_rcuhead ;
3539};
3540#line 933 "include/linux/fs.h"
3541struct file {
3542 union __anonunion_f_u_167 f_u ;
3543 struct path f_path ;
3544 struct file_operations const *f_op ;
3545 spinlock_t f_lock ;
3546 int f_sb_list_cpu ;
3547 atomic_long_t f_count ;
3548 unsigned int f_flags ;
3549 fmode_t f_mode ;
3550 loff_t f_pos ;
3551 struct fown_struct f_owner ;
3552 struct cred const *f_cred ;
3553 struct file_ra_state f_ra ;
3554 u64 f_version ;
3555 void *f_security ;
3556 void *private_data ;
3557 struct list_head f_ep_links ;
3558 struct address_space *f_mapping ;
3559 unsigned long f_mnt_write_state ;
3560};
3561#line 1064 "include/linux/fs.h"
3562typedef struct files_struct *fl_owner_t;
3563#line 1065 "include/linux/fs.h"
3564struct file_lock_operations {
3565 void (*fl_copy_lock)(struct file_lock * , struct file_lock * ) ;
3566 void (*fl_release_private)(struct file_lock * ) ;
3567};
3568#line 1070 "include/linux/fs.h"
3569struct lock_manager_operations {
3570 int (*fl_compare_owner)(struct file_lock * , struct file_lock * ) ;
3571 void (*fl_notify)(struct file_lock * ) ;
3572 int (*fl_grant)(struct file_lock * , struct file_lock * , int ) ;
3573 void (*fl_release_private)(struct file_lock * ) ;
3574 void (*fl_break)(struct file_lock * ) ;
3575 int (*fl_change)(struct file_lock ** , int ) ;
3576};
3577#line 163 "include/linux/nfs.h"
3578struct nlm_lockowner;
3579#line 163
3580struct nlm_lockowner;
3581#line 163
3582struct nlm_lockowner;
3583#line 163
3584struct nlm_lockowner;
3585#line 164 "include/linux/nfs.h"
3586struct nfs_lock_info {
3587 u32 state ;
3588 struct nlm_lockowner *owner ;
3589 struct list_head list ;
3590};
3591#line 18 "include/linux/nfs_fs_i.h"
3592struct nfs4_lock_state;
3593#line 18
3594struct nfs4_lock_state;
3595#line 18
3596struct nfs4_lock_state;
3597#line 18
3598struct nfs4_lock_state;
3599#line 19 "include/linux/nfs_fs_i.h"
3600struct nfs4_lock_info {
3601 struct nfs4_lock_state *owner ;
3602};
3603#line 23
3604struct fasync_struct;
3605#line 23
3606struct fasync_struct;
3607#line 23
3608struct fasync_struct;
3609#line 23 "include/linux/nfs_fs_i.h"
3610struct __anonstruct_afs_169 {
3611 struct list_head link ;
3612 int state ;
3613};
3614#line 23 "include/linux/nfs_fs_i.h"
3615union __anonunion_fl_u_168 {
3616 struct nfs_lock_info nfs_fl ;
3617 struct nfs4_lock_info nfs4_fl ;
3618 struct __anonstruct_afs_169 afs ;
3619};
3620#line 23 "include/linux/nfs_fs_i.h"
3621struct file_lock {
3622 struct file_lock *fl_next ;
3623 struct list_head fl_link ;
3624 struct list_head fl_block ;
3625 fl_owner_t fl_owner ;
3626 unsigned char fl_flags ;
3627 unsigned char fl_type ;
3628 unsigned int fl_pid ;
3629 struct pid *fl_nspid ;
3630 wait_queue_head_t fl_wait ;
3631 struct file *fl_file ;
3632 loff_t fl_start ;
3633 loff_t fl_end ;
3634 struct fasync_struct *fl_fasync ;
3635 unsigned long fl_break_time ;
3636 struct file_lock_operations const *fl_ops ;
3637 struct lock_manager_operations const *fl_lmops ;
3638 union __anonunion_fl_u_168 fl_u ;
3639};
3640#line 1171 "include/linux/fs.h"
3641struct fasync_struct {
3642 spinlock_t fa_lock ;
3643 int magic ;
3644 int fa_fd ;
3645 struct fasync_struct *fa_next ;
3646 struct file *fa_file ;
3647 struct rcu_head fa_rcu ;
3648};
3649#line 1363
3650struct file_system_type;
3651#line 1363
3652struct file_system_type;
3653#line 1363
3654struct file_system_type;
3655#line 1363
3656struct super_operations;
3657#line 1363
3658struct super_operations;
3659#line 1363
3660struct super_operations;
3661#line 1363
3662struct xattr_handler;
3663#line 1363
3664struct xattr_handler;
3665#line 1363
3666struct xattr_handler;
3667#line 1363
3668struct mtd_info;
3669#line 1363
3670struct mtd_info;
3671#line 1363
3672struct mtd_info;
3673#line 1363 "include/linux/fs.h"
3674struct super_block {
3675 struct list_head s_list ;
3676 dev_t s_dev ;
3677 unsigned char s_dirt ;
3678 unsigned char s_blocksize_bits ;
3679 unsigned long s_blocksize ;
3680 loff_t s_maxbytes ;
3681 struct file_system_type *s_type ;
3682 struct super_operations const *s_op ;
3683 struct dquot_operations const *dq_op ;
3684 struct quotactl_ops const *s_qcop ;
3685 struct export_operations const *s_export_op ;
3686 unsigned long s_flags ;
3687 unsigned long s_magic ;
3688 struct dentry *s_root ;
3689 struct rw_semaphore s_umount ;
3690 struct mutex s_lock ;
3691 int s_count ;
3692 atomic_t s_active ;
3693 void *s_security ;
3694 struct xattr_handler const **s_xattr ;
3695 struct list_head s_inodes ;
3696 struct hlist_bl_head s_anon ;
3697 struct list_head *s_files ;
3698 struct list_head s_dentry_lru ;
3699 int s_nr_dentry_unused ;
3700 struct block_device *s_bdev ;
3701 struct backing_dev_info *s_bdi ;
3702 struct mtd_info *s_mtd ;
3703 struct list_head s_instances ;
3704 struct quota_info s_dquot ;
3705 int s_frozen ;
3706 wait_queue_head_t s_wait_unfrozen ;
3707 char s_id[32U] ;
3708 u8 s_uuid[16U] ;
3709 void *s_fs_info ;
3710 fmode_t s_mode ;
3711 u32 s_time_gran ;
3712 struct mutex s_vfs_rename_mutex ;
3713 char *s_subtype ;
3714 char *s_options ;
3715 struct dentry_operations const *s_d_op ;
3716 int cleancache_poolid ;
3717};
3718#line 1495 "include/linux/fs.h"
3719struct fiemap_extent_info {
3720 unsigned int fi_flags ;
3721 unsigned int fi_extents_mapped ;
3722 unsigned int fi_extents_max ;
3723 struct fiemap_extent *fi_extents_start ;
3724};
3725#line 1534 "include/linux/fs.h"
3726struct file_operations {
3727 struct module *owner ;
3728 loff_t (*llseek)(struct file * , loff_t , int ) ;
3729 ssize_t (*read)(struct file * , char * , size_t , loff_t * ) ;
3730 ssize_t (*write)(struct file * , char const * , size_t , loff_t * ) ;
3731 ssize_t (*aio_read)(struct kiocb * , struct iovec const * , unsigned long ,
3732 loff_t ) ;
3733 ssize_t (*aio_write)(struct kiocb * , struct iovec const * , unsigned long ,
3734 loff_t ) ;
3735 int (*readdir)(struct file * , void * , int (*)(void * , char const * , int ,
3736 loff_t , u64 , unsigned int ) ) ;
3737 unsigned int (*poll)(struct file * , struct poll_table_struct * ) ;
3738 long (*unlocked_ioctl)(struct file * , unsigned int , unsigned long ) ;
3739 long (*compat_ioctl)(struct file * , unsigned int , unsigned long ) ;
3740 int (*mmap)(struct file * , struct vm_area_struct * ) ;
3741 int (*open)(struct inode * , struct file * ) ;
3742 int (*flush)(struct file * , fl_owner_t ) ;
3743 int (*release)(struct inode * , struct file * ) ;
3744 int (*fsync)(struct file * , int ) ;
3745 int (*aio_fsync)(struct kiocb * , int ) ;
3746 int (*fasync)(int , struct file * , int ) ;
3747 int (*lock)(struct file * , int , struct file_lock * ) ;
3748 ssize_t (*sendpage)(struct file * , struct page * , int , size_t , loff_t * ,
3749 int ) ;
3750 unsigned long (*get_unmapped_area)(struct file * , unsigned long , unsigned long ,
3751 unsigned long , unsigned long ) ;
3752 int (*check_flags)(int ) ;
3753 int (*flock)(struct file * , int , struct file_lock * ) ;
3754 ssize_t (*splice_write)(struct pipe_inode_info * , struct file * , loff_t * , size_t ,
3755 unsigned int ) ;
3756 ssize_t (*splice_read)(struct file * , loff_t * , struct pipe_inode_info * , size_t ,
3757 unsigned int ) ;
3758 int (*setlease)(struct file * , long , struct file_lock ** ) ;
3759 long (*fallocate)(struct file * , int , loff_t , loff_t ) ;
3760};
3761#line 1574 "include/linux/fs.h"
3762struct inode_operations {
3763 struct dentry *(*lookup)(struct inode * , struct dentry * , struct nameidata * ) ;
3764 void *(*follow_link)(struct dentry * , struct nameidata * ) ;
3765 int (*permission)(struct inode * , int , unsigned int ) ;
3766 int (*check_acl)(struct inode * , int , unsigned int ) ;
3767 int (*readlink)(struct dentry * , char * , int ) ;
3768 void (*put_link)(struct dentry * , struct nameidata * , void * ) ;
3769 int (*create)(struct inode * , struct dentry * , int , struct nameidata * ) ;
3770 int (*link)(struct dentry * , struct inode * , struct dentry * ) ;
3771 int (*unlink)(struct inode * , struct dentry * ) ;
3772 int (*symlink)(struct inode * , struct dentry * , char const * ) ;
3773 int (*mkdir)(struct inode * , struct dentry * , int ) ;
3774 int (*rmdir)(struct inode * , struct dentry * ) ;
3775 int (*mknod)(struct inode * , struct dentry * , int , dev_t ) ;
3776 int (*rename)(struct inode * , struct dentry * , struct inode * , struct dentry * ) ;
3777 void (*truncate)(struct inode * ) ;
3778 int (*setattr)(struct dentry * , struct iattr * ) ;
3779 int (*getattr)(struct vfsmount * , struct dentry * , struct kstat * ) ;
3780 int (*setxattr)(struct dentry * , char const * , void const * , size_t , int ) ;
3781 ssize_t (*getxattr)(struct dentry * , char const * , void * , size_t ) ;
3782 ssize_t (*listxattr)(struct dentry * , char * , size_t ) ;
3783 int (*removexattr)(struct dentry * , char const * ) ;
3784 void (*truncate_range)(struct inode * , loff_t , loff_t ) ;
3785 int (*fiemap)(struct inode * , struct fiemap_extent_info * , u64 , u64 ) ;
3786};
3787#line 1620 "include/linux/fs.h"
3788struct super_operations {
3789 struct inode *(*alloc_inode)(struct super_block * ) ;
3790 void (*destroy_inode)(struct inode * ) ;
3791 void (*dirty_inode)(struct inode * , int ) ;
3792 int (*write_inode)(struct inode * , struct writeback_control * ) ;
3793 int (*drop_inode)(struct inode * ) ;
3794 void (*evict_inode)(struct inode * ) ;
3795 void (*put_super)(struct super_block * ) ;
3796 void (*write_super)(struct super_block * ) ;
3797 int (*sync_fs)(struct super_block * , int ) ;
3798 int (*freeze_fs)(struct super_block * ) ;
3799 int (*unfreeze_fs)(struct super_block * ) ;
3800 int (*statfs)(struct dentry * , struct kstatfs * ) ;
3801 int (*remount_fs)(struct super_block * , int * , char * ) ;
3802 void (*umount_begin)(struct super_block * ) ;
3803 int (*show_options)(struct seq_file * , struct vfsmount * ) ;
3804 int (*show_devname)(struct seq_file * , struct vfsmount * ) ;
3805 int (*show_path)(struct seq_file * , struct vfsmount * ) ;
3806 int (*show_stats)(struct seq_file * , struct vfsmount * ) ;
3807 ssize_t (*quota_read)(struct super_block * , int , char * , size_t , loff_t ) ;
3808 ssize_t (*quota_write)(struct super_block * , int , char const * , size_t ,
3809 loff_t ) ;
3810 int (*bdev_try_to_free_page)(struct super_block * , struct page * , gfp_t ) ;
3811};
3812#line 1801 "include/linux/fs.h"
3813struct file_system_type {
3814 char const *name ;
3815 int fs_flags ;
3816 struct dentry *(*mount)(struct file_system_type * , int , char const * , void * ) ;
3817 void (*kill_sb)(struct super_block * ) ;
3818 struct module *owner ;
3819 struct file_system_type *next ;
3820 struct list_head fs_supers ;
3821 struct lock_class_key s_lock_key ;
3822 struct lock_class_key s_umount_key ;
3823 struct lock_class_key s_vfs_rename_key ;
3824 struct lock_class_key i_lock_key ;
3825 struct lock_class_key i_mutex_key ;
3826 struct lock_class_key i_mutex_dir_key ;
3827 struct lock_class_key i_alloc_sem_key ;
3828};
3829#line 69 "include/linux/io.h"
3830enum chips {
3831 it87 = 0,
3832 it8712 = 1,
3833 it8716 = 2,
3834 it8718 = 3,
3835 it8720 = 4,
3836 it8721 = 5
3837} ;
3838#line 200 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
3839struct it87_sio_data {
3840 enum chips type ;
3841 u8 revision ;
3842 u8 vid_value ;
3843 u8 beep_pin ;
3844 u8 internal ;
3845 u8 skip_vid ;
3846 u8 skip_fan ;
3847 u8 skip_pwm ;
3848};
3849#line 235 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
3850struct it87_data {
3851 struct device *hwmon_dev ;
3852 enum chips type ;
3853 u8 revision ;
3854 unsigned short addr ;
3855 char const *name ;
3856 struct mutex update_lock ;
3857 char valid ;
3858 unsigned long last_updated ;
3859 u16 in_scaled ;
3860 u8 in[9U] ;
3861 u8 in_max[8U] ;
3862 u8 in_min[8U] ;
3863 u8 has_fan ;
3864 u16 fan[5U] ;
3865 u16 fan_min[5U] ;
3866 s8 temp[3U] ;
3867 s8 temp_high[3U] ;
3868 s8 temp_low[3U] ;
3869 u8 sensor ;
3870 u8 fan_div[3U] ;
3871 u8 vid ;
3872 u8 vrm ;
3873 u32 alarms ;
3874 u8 beeps ;
3875 u8 fan_main_ctrl ;
3876 u8 fan_ctl ;
3877 u8 pwm_ctrl[3U] ;
3878 u8 pwm_duty[3U] ;
3879 u8 pwm_temp_map[3U] ;
3880 u8 auto_pwm[3U][4U] ;
3881 s8 auto_temp[3U][5U] ;
3882};
3883#line 1 "<compiler builtins>"
3884long __builtin_expect(long , long ) ;
3885#line 101 "include/linux/printk.h"
3886extern int printk(char const * , ...) ;
3887#line 195 "include/linux/kernel.h"
3888extern int kstrtoull(char const * , unsigned int , unsigned long long * ) ;
3889#line 196
3890extern int kstrtoll(char const * , unsigned int , long long * ) ;
3891#line 197 "include/linux/kernel.h"
3892__inline static int kstrtoul(char const *s , unsigned int base , unsigned long *res )
3893{ int tmp ;
3894 unsigned long long *__cil_tmp5 ;
3895
3896 {
3897 {
3898#line 205
3899 __cil_tmp5 = (unsigned long long *)res;
3900#line 205
3901 tmp = kstrtoull(s, base, __cil_tmp5);
3902 }
3903#line 205
3904 return (tmp);
3905}
3906}
3907#line 210 "include/linux/kernel.h"
3908__inline static int kstrtol(char const *s , unsigned int base , long *res )
3909{ int tmp ;
3910 long long *__cil_tmp5 ;
3911
3912 {
3913 {
3914#line 218
3915 __cil_tmp5 = (long long *)res;
3916#line 218
3917 tmp = kstrtoll(s, base, __cil_tmp5);
3918 }
3919#line 218
3920 return (tmp);
3921}
3922}
3923#line 291
3924extern int sprintf(char * , char const * , ...) ;
3925#line 348 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/paravirt_types.h"
3926extern struct pv_cpu_ops pv_cpu_ops ;
3927#line 55 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/string_64.h"
3928extern void *memset(void * , int , size_t ) ;
3929#line 64
3930extern int strcmp(char const * , char const * ) ;
3931#line 339 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/paravirt.h"
3932__inline static void slow_down_io(void)
3933{
3934
3935 {
3936 {
3937#line 341
3938 (*(pv_cpu_ops.io_delay))();
3939 }
3940#line 342
3941 return;
3942}
3943}
3944#line 27 "include/linux/err.h"
3945__inline static long PTR_ERR(void const *ptr )
3946{
3947
3948 {
3949#line 29
3950 return ((long )ptr);
3951}
3952}
3953#line 32 "include/linux/err.h"
3954__inline static long IS_ERR(void const *ptr )
3955{ long tmp ;
3956 unsigned long __cil_tmp3 ;
3957 int __cil_tmp4 ;
3958 long __cil_tmp5 ;
3959
3960 {
3961 {
3962#line 34
3963 __cil_tmp3 = (unsigned long )ptr;
3964#line 34
3965 __cil_tmp4 = __cil_tmp3 > 1152921504606842880UL;
3966#line 34
3967 __cil_tmp5 = (long )__cil_tmp4;
3968#line 34
3969 tmp = __builtin_expect(__cil_tmp5, 0L);
3970 }
3971#line 34
3972 return (tmp);
3973}
3974}
3975#line 115 "include/linux/mutex.h"
3976extern void __mutex_init(struct mutex * , char const * , struct lock_class_key * ) ;
3977#line 134
3978extern void mutex_lock_nested(struct mutex * , unsigned int ) ;
3979#line 169
3980extern void mutex_unlock(struct mutex * ) ;
3981#line 113 "include/linux/ioport.h"
3982extern struct resource ioport_resource ;
3983#line 156
3984extern struct resource *__request_region(struct resource * , resource_size_t , resource_size_t ,
3985 char const * , int ) ;
3986#line 167
3987extern void __release_region(struct resource * , resource_size_t , resource_size_t ) ;
3988#line 82 "include/linux/jiffies.h"
3989extern unsigned long volatile jiffies ;
3990#line 310 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/io.h"
3991__inline static void outb(unsigned char value , int port )
3992{
3993
3994 {
3995#line 310
3996 __asm__ volatile ("outb %b0, %w1": : "a" (value), "Nd" (port));
3997#line 311
3998 return;
3999}
4000}
4001#line 310 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/io.h"
4002__inline static unsigned char inb(int port )
4003{ unsigned char value ;
4004
4005 {
4006#line 310
4007 __asm__ volatile ("inb %w1, %b0": "=a" (value): "Nd" (port));
4008#line 310
4009 return (value);
4010}
4011}
4012#line 310 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/io.h"
4013__inline static void outb_p(unsigned char value , int port )
4014{ int __cil_tmp3 ;
4015 unsigned char __cil_tmp4 ;
4016
4017 {
4018 {
4019#line 310
4020 __cil_tmp3 = (int )value;
4021#line 310
4022 __cil_tmp4 = (unsigned char )__cil_tmp3;
4023#line 310
4024 outb(__cil_tmp4, port);
4025#line 310
4026 slow_down_io();
4027 }
4028#line 311
4029 return;
4030}
4031}
4032#line 310 "/anthill/stuff/tacas-comp/inst/current/envs/linux-3.0.1/linux-3.0.1/arch/x86/include/asm/io.h"
4033__inline static unsigned char inb_p(int port )
4034{ unsigned char value ;
4035 unsigned char tmp ;
4036
4037 {
4038 {
4039#line 310
4040 tmp = inb(port);
4041#line 310
4042 value = tmp;
4043#line 310
4044 slow_down_io();
4045 }
4046#line 310
4047 return (value);
4048}
4049}
4050#line 830 "include/linux/rcupdate.h"
4051extern void kfree(void const * ) ;
4052#line 130 "include/linux/sysfs.h"
4053extern int sysfs_create_file(struct kobject * , struct attribute const * ) ;
4054#line 134
4055extern int sysfs_chmod_file(struct kobject * , struct attribute const * , mode_t ) ;
4056#line 136
4057extern void sysfs_remove_file(struct kobject * , struct attribute const * ) ;
4058#line 157
4059extern int sysfs_create_group(struct kobject * , struct attribute_group const * ) ;
4060#line 161
4061extern void sysfs_remove_group(struct kobject * , struct attribute_group const * ) ;
4062#line 99 "include/linux/module.h"
4063extern struct module __this_module ;
4064#line 3 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
4065int ldv_try_module_get(struct module *module ) ;
4066#line 4
4067void ldv_module_get(struct module *module ) ;
4068#line 5
4069void ldv_module_put(struct module *module ) ;
4070#line 6
4071unsigned int ldv_module_refcount(void) ;
4072#line 7
4073void ldv_module_put_and_exit(void) ;
4074#line 221 "include/linux/slub_def.h"
4075extern void *__kmalloc(size_t , gfp_t ) ;
4076#line 255 "include/linux/slub_def.h"
4077__inline static void *kmalloc(size_t size , gfp_t flags )
4078{ void *tmp___2 ;
4079
4080 {
4081 {
4082#line 270
4083 tmp___2 = __kmalloc(size, flags);
4084 }
4085#line 270
4086 return (tmp___2);
4087}
4088}
4089#line 318 "include/linux/slab.h"
4090__inline static void *kzalloc(size_t size , gfp_t flags )
4091{ void *tmp ;
4092 unsigned int __cil_tmp4 ;
4093
4094 {
4095 {
4096#line 320
4097 __cil_tmp4 = flags | 32768U;
4098#line 320
4099 tmp = kmalloc(size, __cil_tmp4);
4100 }
4101#line 320
4102 return (tmp);
4103}
4104}
4105#line 705 "include/linux/device.h"
4106extern void *dev_get_drvdata(struct device const * ) ;
4107#line 706
4108extern int dev_set_drvdata(struct device * , void * ) ;
4109#line 788
4110extern int dev_printk(char const * , struct device const * , char const * , ...) ;
4111#line 797
4112extern int dev_err(struct device const * , char const * , ...) ;
4113#line 799
4114extern int dev_warn(struct device const * , char const * , ...) ;
4115#line 801
4116extern int dev_notice(struct device const * , char const * , ...) ;
4117#line 803
4118extern int _dev_info(struct device const * , char const * , ...) ;
4119#line 40 "include/linux/platform_device.h"
4120extern void platform_device_unregister(struct platform_device * ) ;
4121#line 45
4122extern struct resource *platform_get_resource(struct platform_device * , unsigned int ,
4123 unsigned int ) ;
4124#line 110
4125extern struct platform_device *platform_device_alloc(char const * , int ) ;
4126#line 111
4127extern int platform_device_add_resources(struct platform_device * , struct resource const * ,
4128 unsigned int ) ;
4129#line 114
4130extern int platform_device_add_data(struct platform_device * , void const * , size_t ) ;
4131#line 115
4132extern int platform_device_add(struct platform_device * ) ;
4133#line 117
4134extern void platform_device_put(struct platform_device * ) ;
4135#line 129
4136extern int platform_driver_register(struct platform_driver * ) ;
4137#line 130
4138extern void platform_driver_unregister(struct platform_driver * ) ;
4139#line 138 "include/linux/platform_device.h"
4140__inline static void *platform_get_drvdata(struct platform_device const *pdev )
4141{ void *tmp ;
4142 struct device const *__cil_tmp3 ;
4143
4144 {
4145 {
4146#line 140
4147 __cil_tmp3 = & pdev->dev;
4148#line 140
4149 tmp = dev_get_drvdata(__cil_tmp3);
4150 }
4151#line 140
4152 return (tmp);
4153}
4154}
4155#line 143 "include/linux/platform_device.h"
4156__inline static void platform_set_drvdata(struct platform_device *pdev , void *data )
4157{ struct device *__cil_tmp3 ;
4158
4159 {
4160 {
4161#line 145
4162 __cil_tmp3 = & pdev->dev;
4163#line 145
4164 dev_set_drvdata(__cil_tmp3, data);
4165 }
4166#line 146
4167 return;
4168}
4169}
4170#line 19 "include/linux/hwmon.h"
4171extern struct device *hwmon_device_register(struct device * ) ;
4172#line 21
4173extern void hwmon_device_unregister(struct device * ) ;
4174#line 24 "include/linux/hwmon.h"
4175__inline static int SENSORS_LIMIT(long value , long low , long high )
4176{
4177
4178 {
4179#line 26
4180 if (value < low) {
4181#line 27
4182 return ((int )low);
4183 } else
4184#line 28
4185 if (value > high) {
4186#line 29
4187 return ((int )high);
4188 } else {
4189#line 31
4190 return ((int )value);
4191 }
4192}
4193}
4194#line 26 "include/linux/hwmon-vid.h"
4195extern int vid_from_reg(int , u8 ) ;
4196#line 27
4197extern u8 vid_which_vrm(void) ;
4198#line 98 "include/linux/dmi.h"
4199extern char const *dmi_get_system_info(int ) ;
4200#line 243 "include/linux/acpi.h"
4201extern int acpi_check_resource_conflict(struct resource const * ) ;
4202#line 71 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
4203static unsigned short force_id ;
4204#line 75 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
4205static struct platform_device *pdev ;
4206#line 88 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
4207__inline static int superio_inb(int reg )
4208{ unsigned char tmp ;
4209 unsigned char __cil_tmp3 ;
4210 int __cil_tmp4 ;
4211 unsigned char __cil_tmp5 ;
4212
4213 {
4214 {
4215#line 90
4216 __cil_tmp3 = (unsigned char )reg;
4217#line 90
4218 __cil_tmp4 = (int )__cil_tmp3;
4219#line 90
4220 __cil_tmp5 = (unsigned char )__cil_tmp4;
4221#line 90
4222 outb(__cil_tmp5, 46);
4223#line 91
4224 tmp = inb(47);
4225 }
4226#line 91
4227 return ((int )tmp);
4228}
4229}
4230#line 94 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
4231__inline static void superio_outb(int reg , int val )
4232{ unsigned char __cil_tmp3 ;
4233 int __cil_tmp4 ;
4234 unsigned char __cil_tmp5 ;
4235 unsigned char __cil_tmp6 ;
4236 int __cil_tmp7 ;
4237 unsigned char __cil_tmp8 ;
4238
4239 {
4240 {
4241#line 96
4242 __cil_tmp3 = (unsigned char )reg;
4243#line 96
4244 __cil_tmp4 = (int )__cil_tmp3;
4245#line 96
4246 __cil_tmp5 = (unsigned char )__cil_tmp4;
4247#line 96
4248 outb(__cil_tmp5, 46);
4249#line 97
4250 __cil_tmp6 = (unsigned char )val;
4251#line 97
4252 __cil_tmp7 = (int )__cil_tmp6;
4253#line 97
4254 __cil_tmp8 = (unsigned char )__cil_tmp7;
4255#line 97
4256 outb(__cil_tmp8, 47);
4257 }
4258#line 98
4259 return;
4260}
4261}
4262#line 100 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
4263static int superio_inw(int reg )
4264{ int val ;
4265 int tmp ;
4266 unsigned char tmp___0 ;
4267 unsigned char tmp___1 ;
4268 unsigned char __cil_tmp6 ;
4269 int __cil_tmp7 ;
4270 unsigned char __cil_tmp8 ;
4271 int __cil_tmp9 ;
4272 unsigned char __cil_tmp10 ;
4273 int __cil_tmp11 ;
4274 unsigned char __cil_tmp12 ;
4275 int __cil_tmp13 ;
4276
4277 {
4278 {
4279#line 103
4280 tmp = reg;
4281#line 103
4282 reg = reg + 1;
4283#line 103
4284 __cil_tmp6 = (unsigned char )tmp;
4285#line 103
4286 __cil_tmp7 = (int )__cil_tmp6;
4287#line 103
4288 __cil_tmp8 = (unsigned char )__cil_tmp7;
4289#line 103
4290 outb(__cil_tmp8, 46);
4291#line 104
4292 tmp___0 = inb(47);
4293#line 104
4294 __cil_tmp9 = (int )tmp___0;
4295#line 104
4296 val = __cil_tmp9 << 8;
4297#line 105
4298 __cil_tmp10 = (unsigned char )reg;
4299#line 105
4300 __cil_tmp11 = (int )__cil_tmp10;
4301#line 105
4302 __cil_tmp12 = (unsigned char )__cil_tmp11;
4303#line 105
4304 outb(__cil_tmp12, 46);
4305#line 106
4306 tmp___1 = inb(47);
4307#line 106
4308 __cil_tmp13 = (int )tmp___1;
4309#line 106
4310 val = __cil_tmp13 | val;
4311 }
4312#line 107
4313 return (val);
4314}
4315}
4316#line 110 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
4317__inline static void superio_select(int ldn )
4318{ unsigned char __cil_tmp2 ;
4319 int __cil_tmp3 ;
4320 unsigned char __cil_tmp4 ;
4321
4322 {
4323 {
4324#line 112
4325 outb((unsigned char)7, 46);
4326#line 113
4327 __cil_tmp2 = (unsigned char )ldn;
4328#line 113
4329 __cil_tmp3 = (int )__cil_tmp2;
4330#line 113
4331 __cil_tmp4 = (unsigned char )__cil_tmp3;
4332#line 113
4333 outb(__cil_tmp4, 47);
4334 }
4335#line 114
4336 return;
4337}
4338}
4339#line 116 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
4340__inline static int superio_enter(void)
4341{ struct resource *tmp ;
4342 struct resource *__cil_tmp2 ;
4343 unsigned long __cil_tmp3 ;
4344 unsigned long __cil_tmp4 ;
4345
4346 {
4347 {
4348#line 121
4349 tmp = __request_region(& ioport_resource, 46ULL, 2ULL, "it87", 4194304);
4350 }
4351 {
4352#line 121
4353 __cil_tmp2 = (struct resource *)0;
4354#line 121
4355 __cil_tmp3 = (unsigned long )__cil_tmp2;
4356#line 121
4357 __cil_tmp4 = (unsigned long )tmp;
4358#line 121
4359 if (__cil_tmp4 == __cil_tmp3) {
4360#line 122
4361 return (-16);
4362 } else {
4363
4364 }
4365 }
4366 {
4367#line 124
4368 outb((unsigned char)135, 46);
4369#line 125
4370 outb((unsigned char)1, 46);
4371#line 126
4372 outb((unsigned char)85, 46);
4373#line 127
4374 outb((unsigned char)85, 46);
4375 }
4376#line 128
4377 return (0);
4378}
4379}
4380#line 131 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
4381__inline static void superio_exit(void)
4382{
4383
4384 {
4385 {
4386#line 133
4387 outb((unsigned char)2, 46);
4388#line 134
4389 outb((unsigned char)2, 47);
4390#line 135
4391 __release_region(& ioport_resource, 46ULL, 2ULL);
4392 }
4393#line 136
4394 return;
4395}
4396}
4397#line 157 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
4398static int update_vbat ;
4399#line 160 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
4400static int fix_pwm_polarity ;
4401#line 196 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
4402static u8 const IT87_REG_FAN[5U] = { (u8 const )13U, (u8 const )14U, (u8 const )15U, (u8 const )128U,
4403 (u8 const )130U};
4404#line 197 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
4405static u8 const IT87_REG_FAN_MIN[5U] = { (u8 const )16U, (u8 const )17U, (u8 const )18U, (u8 const )132U,
4406 (u8 const )134U};
4407#line 198 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
4408static u8 const IT87_REG_FANX[5U] = { (u8 const )24U, (u8 const )25U, (u8 const )26U, (u8 const )129U,
4409 (u8 const )131U};
4410#line 199 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
4411static u8 const IT87_REG_FANX_MIN[5U] = { (u8 const )27U, (u8 const )28U, (u8 const )29U, (u8 const )133U,
4412 (u8 const )135U};
4413#line 285 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
4414static u8 in_to_reg(struct it87_data const *data , int nr , long val )
4415{ long lsb ;
4416 long __divisor ;
4417 int tmp ;
4418 enum chips __cil_tmp7 ;
4419 unsigned int __cil_tmp8 ;
4420 u16 __cil_tmp9 ;
4421 int __cil_tmp10 ;
4422 int __cil_tmp11 ;
4423 long __cil_tmp12 ;
4424 long __cil_tmp13 ;
4425
4426 {
4427 {
4428#line 289
4429 __cil_tmp7 = data->type;
4430#line 289
4431 __cil_tmp8 = (unsigned int )__cil_tmp7;
4432#line 289
4433 if (__cil_tmp8 == 5U) {
4434 {
4435#line 290
4436 __cil_tmp9 = data->in_scaled;
4437#line 290
4438 __cil_tmp10 = (int )__cil_tmp9;
4439#line 290
4440 __cil_tmp11 = __cil_tmp10 >> nr;
4441#line 290
4442 if (__cil_tmp11 & 1) {
4443#line 291
4444 lsb = 24L;
4445 } else {
4446#line 293
4447 lsb = 12L;
4448 }
4449 }
4450 } else {
4451#line 295
4452 lsb = 16L;
4453 }
4454 }
4455 {
4456#line 297
4457 __divisor = lsb;
4458#line 297
4459 __cil_tmp12 = __divisor / 2L;
4460#line 297
4461 __cil_tmp13 = __cil_tmp12 + val;
4462#line 297
4463 val = __cil_tmp13 / __divisor;
4464#line 298
4465 tmp = SENSORS_LIMIT(val, 0L, 255L);
4466 }
4467#line 298
4468 return ((u8 )tmp);
4469}
4470}
4471#line 301 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
4472static int in_from_reg(struct it87_data const *data , int nr , int val )
4473{ enum chips __cil_tmp4 ;
4474 unsigned int __cil_tmp5 ;
4475 u16 __cil_tmp6 ;
4476 int __cil_tmp7 ;
4477 int __cil_tmp8 ;
4478
4479 {
4480 {
4481#line 303
4482 __cil_tmp4 = data->type;
4483#line 303
4484 __cil_tmp5 = (unsigned int )__cil_tmp4;
4485#line 303
4486 if (__cil_tmp5 == 5U) {
4487 {
4488#line 304
4489 __cil_tmp6 = data->in_scaled;
4490#line 304
4491 __cil_tmp7 = (int )__cil_tmp6;
4492#line 304
4493 __cil_tmp8 = __cil_tmp7 >> nr;
4494#line 304
4495 if (__cil_tmp8 & 1) {
4496#line 305
4497 return (val * 24);
4498 } else {
4499#line 307
4500 return (val * 12);
4501 }
4502 }
4503 } else {
4504#line 309
4505 return (val * 16);
4506 }
4507 }
4508}
4509}
4510#line 312 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
4511__inline static u8 FAN_TO_REG(long rpm , int div )
4512{ int tmp ;
4513 int tmp___0 ;
4514 long __cil_tmp5 ;
4515 long __cil_tmp6 ;
4516 long __cil_tmp7 ;
4517 long __cil_tmp8 ;
4518 long __cil_tmp9 ;
4519 long __cil_tmp10 ;
4520 long __cil_tmp11 ;
4521
4522 {
4523#line 314
4524 if (rpm == 0L) {
4525#line 315
4526 return ((u8 )255U);
4527 } else {
4528
4529 }
4530 {
4531#line 316
4532 tmp = SENSORS_LIMIT(rpm, 1L, 1000000L);
4533#line 316
4534 rpm = (long )tmp;
4535#line 317
4536 __cil_tmp5 = (long )div;
4537#line 317
4538 __cil_tmp6 = __cil_tmp5 * rpm;
4539#line 317
4540 __cil_tmp7 = (long )div;
4541#line 317
4542 __cil_tmp8 = __cil_tmp7 * rpm;
4543#line 317
4544 __cil_tmp9 = __cil_tmp8 / 2L;
4545#line 317
4546 __cil_tmp10 = __cil_tmp9 + 1350000L;
4547#line 317
4548 __cil_tmp11 = __cil_tmp10 / __cil_tmp6;
4549#line 317
4550 tmp___0 = SENSORS_LIMIT(__cil_tmp11, 1L, 254L);
4551 }
4552#line 317
4553 return ((u8 )tmp___0);
4554}
4555}
4556#line 321 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
4557__inline static u16 FAN16_TO_REG(long rpm )
4558{ int tmp ;
4559 long __cil_tmp3 ;
4560 long __cil_tmp4 ;
4561 long __cil_tmp5 ;
4562
4563 {
4564#line 323
4565 if (rpm == 0L) {
4566#line 324
4567 return ((u16 )65535U);
4568 } else {
4569
4570 }
4571 {
4572#line 325
4573 __cil_tmp3 = rpm * 2L;
4574#line 325
4575 __cil_tmp4 = rpm + 1350000L;
4576#line 325
4577 __cil_tmp5 = __cil_tmp4 / __cil_tmp3;
4578#line 325
4579 tmp = SENSORS_LIMIT(__cil_tmp5, 1L, 65534L);
4580 }
4581#line 325
4582 return ((u16 )tmp);
4583}
4584}
4585#line 338 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
4586static u8 pwm_to_reg(struct it87_data const *data , long val )
4587{ enum chips __cil_tmp3 ;
4588 unsigned int __cil_tmp4 ;
4589 long __cil_tmp5 ;
4590
4591 {
4592 {
4593#line 340
4594 __cil_tmp3 = data->type;
4595#line 340
4596 __cil_tmp4 = (unsigned int )__cil_tmp3;
4597#line 340
4598 if (__cil_tmp4 == 5U) {
4599#line 341
4600 return ((u8 )val);
4601 } else {
4602 {
4603#line 343
4604 __cil_tmp5 = val >> 1;
4605#line 343
4606 return ((u8 )__cil_tmp5);
4607 }
4608 }
4609 }
4610}
4611}
4612#line 346 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
4613static int pwm_from_reg(struct it87_data const *data , u8 reg )
4614{ enum chips __cil_tmp3 ;
4615 unsigned int __cil_tmp4 ;
4616 int __cil_tmp5 ;
4617 int __cil_tmp6 ;
4618
4619 {
4620 {
4621#line 348
4622 __cil_tmp3 = data->type;
4623#line 348
4624 __cil_tmp4 = (unsigned int )__cil_tmp3;
4625#line 348
4626 if (__cil_tmp4 == 5U) {
4627#line 349
4628 return ((int )reg);
4629 } else {
4630 {
4631#line 351
4632 __cil_tmp5 = (int )reg;
4633#line 351
4634 __cil_tmp6 = __cil_tmp5 << 1;
4635#line 351
4636 return (__cil_tmp6 & 255);
4637 }
4638 }
4639 }
4640}
4641}
4642#line 355 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
4643static int DIV_TO_REG(int val )
4644{ int answer ;
4645
4646 {
4647#line 357
4648 answer = 0;
4649#line 358
4650 goto ldv_24205;
4651 ldv_24204:
4652#line 359
4653 answer = answer + 1;
4654 ldv_24205: ;
4655#line 358
4656 if (answer <= 6) {
4657#line 358
4658 val = val >> 1;
4659#line 358
4660 if (val != 0) {
4661#line 359
4662 goto ldv_24204;
4663 } else {
4664#line 361
4665 goto ldv_24206;
4666 }
4667 } else {
4668#line 361
4669 goto ldv_24206;
4670 }
4671 ldv_24206: ;
4672#line 360
4673 return (answer);
4674}
4675}
4676#line 364 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
4677static unsigned int const pwm_freq[8U] =
4678#line 364
4679 { (unsigned int const )375000U, (unsigned int const )187500U, (unsigned int const )93750U, (unsigned int const )62500U,
4680 (unsigned int const )46875U, (unsigned int const )23437U, (unsigned int const )11718U, (unsigned int const )5859U};
4681#line 375 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
4682__inline static int has_16bit_fans(struct it87_data const *data )
4683{ int tmp ;
4684 enum chips __cil_tmp3 ;
4685 unsigned int __cil_tmp4 ;
4686 u8 __cil_tmp5 ;
4687 unsigned char __cil_tmp6 ;
4688 unsigned int __cil_tmp7 ;
4689 enum chips __cil_tmp8 ;
4690 unsigned int __cil_tmp9 ;
4691 u8 __cil_tmp10 ;
4692 unsigned char __cil_tmp11 ;
4693 unsigned int __cil_tmp12 ;
4694 enum chips __cil_tmp13 ;
4695 unsigned int __cil_tmp14 ;
4696 enum chips __cil_tmp15 ;
4697 unsigned int __cil_tmp16 ;
4698 enum chips __cil_tmp17 ;
4699 unsigned int __cil_tmp18 ;
4700 enum chips __cil_tmp19 ;
4701 unsigned int __cil_tmp20 ;
4702
4703 {
4704 {
4705#line 380
4706 __cil_tmp3 = data->type;
4707#line 380
4708 __cil_tmp4 = (unsigned int )__cil_tmp3;
4709#line 380
4710 if (__cil_tmp4 == 0U) {
4711 {
4712#line 380
4713 __cil_tmp5 = data->revision;
4714#line 380
4715 __cil_tmp6 = (unsigned char )__cil_tmp5;
4716#line 380
4717 __cil_tmp7 = (unsigned int )__cil_tmp6;
4718#line 380
4719 if (__cil_tmp7 > 2U) {
4720#line 380
4721 tmp = 1;
4722 } else {
4723#line 380
4724 goto _L___0;
4725 }
4726 }
4727 } else {
4728 _L___0:
4729 {
4730#line 380
4731 __cil_tmp8 = data->type;
4732#line 380
4733 __cil_tmp9 = (unsigned int )__cil_tmp8;
4734#line 380
4735 if (__cil_tmp9 == 1U) {
4736 {
4737#line 380
4738 __cil_tmp10 = data->revision;
4739#line 380
4740 __cil_tmp11 = (unsigned char )__cil_tmp10;
4741#line 380
4742 __cil_tmp12 = (unsigned int )__cil_tmp11;
4743#line 380
4744 if (__cil_tmp12 > 7U) {
4745#line 380
4746 tmp = 1;
4747 } else {
4748#line 380
4749 goto _L;
4750 }
4751 }
4752 } else {
4753 _L:
4754 {
4755#line 380
4756 __cil_tmp13 = data->type;
4757#line 380
4758 __cil_tmp14 = (unsigned int )__cil_tmp13;
4759#line 380
4760 if (__cil_tmp14 == 2U) {
4761#line 380
4762 tmp = 1;
4763 } else {
4764 {
4765#line 380
4766 __cil_tmp15 = data->type;
4767#line 380
4768 __cil_tmp16 = (unsigned int )__cil_tmp15;
4769#line 380
4770 if (__cil_tmp16 == 3U) {
4771#line 380
4772 tmp = 1;
4773 } else {
4774 {
4775#line 380
4776 __cil_tmp17 = data->type;
4777#line 380
4778 __cil_tmp18 = (unsigned int )__cil_tmp17;
4779#line 380
4780 if (__cil_tmp18 == 4U) {
4781#line 380
4782 tmp = 1;
4783 } else {
4784 {
4785#line 380
4786 __cil_tmp19 = data->type;
4787#line 380
4788 __cil_tmp20 = (unsigned int )__cil_tmp19;
4789#line 380
4790 if (__cil_tmp20 == 5U) {
4791#line 380
4792 tmp = 1;
4793 } else {
4794#line 380
4795 tmp = 0;
4796 }
4797 }
4798 }
4799 }
4800 }
4801 }
4802 }
4803 }
4804 }
4805 }
4806 }
4807 }
4808#line 380
4809 return (tmp);
4810}
4811}
4812#line 388 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
4813__inline static int has_old_autopwm(struct it87_data const *data )
4814{ int tmp ;
4815 enum chips __cil_tmp3 ;
4816 unsigned int __cil_tmp4 ;
4817 u8 __cil_tmp5 ;
4818 unsigned char __cil_tmp6 ;
4819 unsigned int __cil_tmp7 ;
4820 enum chips __cil_tmp8 ;
4821 unsigned int __cil_tmp9 ;
4822 u8 __cil_tmp10 ;
4823 unsigned char __cil_tmp11 ;
4824 unsigned int __cil_tmp12 ;
4825
4826 {
4827 {
4828#line 393
4829 __cil_tmp3 = data->type;
4830#line 393
4831 __cil_tmp4 = (unsigned int )__cil_tmp3;
4832#line 393
4833 if (__cil_tmp4 == 0U) {
4834 {
4835#line 393
4836 __cil_tmp5 = data->revision;
4837#line 393
4838 __cil_tmp6 = (unsigned char )__cil_tmp5;
4839#line 393
4840 __cil_tmp7 = (unsigned int )__cil_tmp6;
4841#line 393
4842 if (__cil_tmp7 <= 2U) {
4843#line 393
4844 tmp = 1;
4845 } else {
4846#line 393
4847 goto _L;
4848 }
4849 }
4850 } else {
4851 _L:
4852 {
4853#line 393
4854 __cil_tmp8 = data->type;
4855#line 393
4856 __cil_tmp9 = (unsigned int )__cil_tmp8;
4857#line 393
4858 if (__cil_tmp9 == 1U) {
4859 {
4860#line 393
4861 __cil_tmp10 = data->revision;
4862#line 393
4863 __cil_tmp11 = (unsigned char )__cil_tmp10;
4864#line 393
4865 __cil_tmp12 = (unsigned int )__cil_tmp11;
4866#line 393
4867 if (__cil_tmp12 <= 7U) {
4868#line 393
4869 tmp = 1;
4870 } else {
4871#line 393
4872 tmp = 0;
4873 }
4874 }
4875 } else {
4876#line 393
4877 tmp = 0;
4878 }
4879 }
4880 }
4881 }
4882#line 393
4883 return (tmp);
4884}
4885}
4886#line 397
4887static int it87_probe(struct platform_device *pdev___0 ) ;
4888#line 398
4889static int it87_remove(struct platform_device *pdev___0 ) ;
4890#line 400
4891static int it87_read_value(struct it87_data *data , u8 reg ) ;
4892#line 401
4893static void it87_write_value(struct it87_data *data , u8 reg , u8 value ) ;
4894#line 402
4895static struct it87_data *it87_update_device(struct device *dev ) ;
4896#line 403
4897static int it87_check_pwm(struct device *dev ) ;
4898#line 404
4899static void it87_init_device(struct platform_device *pdev___0 ) ;
4900#line 407 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
4901static struct platform_driver it87_driver = {& it87_probe, & it87_remove, (void (*)(struct platform_device * ))0, (int (*)(struct platform_device * ,
4902 pm_message_t ))0,
4903 (int (*)(struct platform_device * ))0, {"it87", (struct bus_type *)0, & __this_module,
4904 (char const *)0, (_Bool)0, (struct of_device_id const *)0,
4905 (int (*)(struct device * ))0, (int (*)(struct device * ))0,
4906 (void (*)(struct device * ))0, (int (*)(struct device * ,
4907 pm_message_t ))0,
4908 (int (*)(struct device * ))0, (struct attribute_group const **)0,
4909 (struct dev_pm_ops const *)0, (struct driver_private *)0},
4910 (struct platform_device_id const *)0};
4911#line 416 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
4912static ssize_t show_in(struct device *dev , struct device_attribute *attr , char *buf )
4913{ struct sensor_device_attribute *sensor_attr ;
4914 struct device_attribute const *__mptr ;
4915 int nr ;
4916 struct it87_data *data ;
4917 struct it87_data *tmp ;
4918 int tmp___0 ;
4919 int tmp___1 ;
4920 struct it87_data const *__cil_tmp11 ;
4921 u8 __cil_tmp12 ;
4922 int __cil_tmp13 ;
4923
4924 {
4925 {
4926#line 419
4927 __mptr = (struct device_attribute const *)attr;
4928#line 419
4929 sensor_attr = (struct sensor_device_attribute *)__mptr;
4930#line 420
4931 nr = sensor_attr->index;
4932#line 422
4933 tmp = it87_update_device(dev);
4934#line 422
4935 data = tmp;
4936#line 423
4937 __cil_tmp11 = (struct it87_data const *)data;
4938#line 423
4939 __cil_tmp12 = data->in[nr];
4940#line 423
4941 __cil_tmp13 = (int )__cil_tmp12;
4942#line 423
4943 tmp___0 = in_from_reg(__cil_tmp11, nr, __cil_tmp13);
4944#line 423
4945 tmp___1 = sprintf(buf, "%d\n", tmp___0);
4946 }
4947#line 423
4948 return ((ssize_t )tmp___1);
4949}
4950}
4951#line 426 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
4952static ssize_t show_in_min(struct device *dev , struct device_attribute *attr , char *buf )
4953{ struct sensor_device_attribute *sensor_attr ;
4954 struct device_attribute const *__mptr ;
4955 int nr ;
4956 struct it87_data *data ;
4957 struct it87_data *tmp ;
4958 int tmp___0 ;
4959 int tmp___1 ;
4960 struct it87_data const *__cil_tmp11 ;
4961 u8 __cil_tmp12 ;
4962 int __cil_tmp13 ;
4963
4964 {
4965 {
4966#line 429
4967 __mptr = (struct device_attribute const *)attr;
4968#line 429
4969 sensor_attr = (struct sensor_device_attribute *)__mptr;
4970#line 430
4971 nr = sensor_attr->index;
4972#line 432
4973 tmp = it87_update_device(dev);
4974#line 432
4975 data = tmp;
4976#line 433
4977 __cil_tmp11 = (struct it87_data const *)data;
4978#line 433
4979 __cil_tmp12 = data->in_min[nr];
4980#line 433
4981 __cil_tmp13 = (int )__cil_tmp12;
4982#line 433
4983 tmp___0 = in_from_reg(__cil_tmp11, nr, __cil_tmp13);
4984#line 433
4985 tmp___1 = sprintf(buf, "%d\n", tmp___0);
4986 }
4987#line 433
4988 return ((ssize_t )tmp___1);
4989}
4990}
4991#line 436 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
4992static ssize_t show_in_max(struct device *dev , struct device_attribute *attr , char *buf )
4993{ struct sensor_device_attribute *sensor_attr ;
4994 struct device_attribute const *__mptr ;
4995 int nr ;
4996 struct it87_data *data ;
4997 struct it87_data *tmp ;
4998 int tmp___0 ;
4999 int tmp___1 ;
5000 struct it87_data const *__cil_tmp11 ;
5001 u8 __cil_tmp12 ;
5002 int __cil_tmp13 ;
5003
5004 {
5005 {
5006#line 439
5007 __mptr = (struct device_attribute const *)attr;
5008#line 439
5009 sensor_attr = (struct sensor_device_attribute *)__mptr;
5010#line 440
5011 nr = sensor_attr->index;
5012#line 442
5013 tmp = it87_update_device(dev);
5014#line 442
5015 data = tmp;
5016#line 443
5017 __cil_tmp11 = (struct it87_data const *)data;
5018#line 443
5019 __cil_tmp12 = data->in_max[nr];
5020#line 443
5021 __cil_tmp13 = (int )__cil_tmp12;
5022#line 443
5023 tmp___0 = in_from_reg(__cil_tmp11, nr, __cil_tmp13);
5024#line 443
5025 tmp___1 = sprintf(buf, "%d\n", tmp___0);
5026 }
5027#line 443
5028 return ((ssize_t )tmp___1);
5029}
5030}
5031#line 446 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
5032static ssize_t set_in_min(struct device *dev , struct device_attribute *attr , char const *buf ,
5033 size_t count )
5034{ struct sensor_device_attribute *sensor_attr ;
5035 struct device_attribute const *__mptr ;
5036 int nr ;
5037 struct it87_data *data ;
5038 void *tmp ;
5039 unsigned long val ;
5040 int tmp___0 ;
5041 struct device const *__cil_tmp12 ;
5042 struct mutex *__cil_tmp13 ;
5043 struct it87_data const *__cil_tmp14 ;
5044 long __cil_tmp15 ;
5045 u8 __cil_tmp16 ;
5046 unsigned int __cil_tmp17 ;
5047 unsigned int __cil_tmp18 ;
5048 unsigned int __cil_tmp19 ;
5049 int __cil_tmp20 ;
5050 u8 __cil_tmp21 ;
5051 u8 __cil_tmp22 ;
5052 int __cil_tmp23 ;
5053 u8 __cil_tmp24 ;
5054 struct mutex *__cil_tmp25 ;
5055
5056 {
5057 {
5058#line 449
5059 __mptr = (struct device_attribute const *)attr;
5060#line 449
5061 sensor_attr = (struct sensor_device_attribute *)__mptr;
5062#line 450
5063 nr = sensor_attr->index;
5064#line 452
5065 __cil_tmp12 = (struct device const *)dev;
5066#line 452
5067 tmp = dev_get_drvdata(__cil_tmp12);
5068#line 452
5069 data = (struct it87_data *)tmp;
5070#line 455
5071 tmp___0 = kstrtoul(buf, 10U, & val);
5072 }
5073#line 455
5074 if (tmp___0 < 0) {
5075#line 456
5076 return (-22L);
5077 } else {
5078
5079 }
5080 {
5081#line 458
5082 __cil_tmp13 = & data->update_lock;
5083#line 458
5084 mutex_lock_nested(__cil_tmp13, 0U);
5085#line 459
5086 __cil_tmp14 = (struct it87_data const *)data;
5087#line 459
5088 __cil_tmp15 = (long )val;
5089#line 459
5090 data->in_min[nr] = in_to_reg(__cil_tmp14, nr, __cil_tmp15);
5091#line 460
5092 __cil_tmp16 = (u8 )nr;
5093#line 460
5094 __cil_tmp17 = (unsigned int )__cil_tmp16;
5095#line 460
5096 __cil_tmp18 = __cil_tmp17 * 2U;
5097#line 460
5098 __cil_tmp19 = __cil_tmp18 + 49U;
5099#line 460
5100 __cil_tmp20 = (int )__cil_tmp19;
5101#line 460
5102 __cil_tmp21 = (u8 )__cil_tmp20;
5103#line 460
5104 __cil_tmp22 = data->in_min[nr];
5105#line 460
5106 __cil_tmp23 = (int )__cil_tmp22;
5107#line 460
5108 __cil_tmp24 = (u8 )__cil_tmp23;
5109#line 460
5110 it87_write_value(data, __cil_tmp21, __cil_tmp24);
5111#line 462
5112 __cil_tmp25 = & data->update_lock;
5113#line 462
5114 mutex_unlock(__cil_tmp25);
5115 }
5116#line 463
5117 return ((ssize_t )count);
5118}
5119}
5120#line 465 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
5121static ssize_t set_in_max(struct device *dev , struct device_attribute *attr , char const *buf ,
5122 size_t count )
5123{ struct sensor_device_attribute *sensor_attr ;
5124 struct device_attribute const *__mptr ;
5125 int nr ;
5126 struct it87_data *data ;
5127 void *tmp ;
5128 unsigned long val ;
5129 int tmp___0 ;
5130 struct device const *__cil_tmp12 ;
5131 struct mutex *__cil_tmp13 ;
5132 struct it87_data const *__cil_tmp14 ;
5133 long __cil_tmp15 ;
5134 int __cil_tmp16 ;
5135 u8 __cil_tmp17 ;
5136 unsigned int __cil_tmp18 ;
5137 unsigned int __cil_tmp19 ;
5138 int __cil_tmp20 ;
5139 u8 __cil_tmp21 ;
5140 u8 __cil_tmp22 ;
5141 int __cil_tmp23 ;
5142 u8 __cil_tmp24 ;
5143 struct mutex *__cil_tmp25 ;
5144
5145 {
5146 {
5147#line 468
5148 __mptr = (struct device_attribute const *)attr;
5149#line 468
5150 sensor_attr = (struct sensor_device_attribute *)__mptr;
5151#line 469
5152 nr = sensor_attr->index;
5153#line 471
5154 __cil_tmp12 = (struct device const *)dev;
5155#line 471
5156 tmp = dev_get_drvdata(__cil_tmp12);
5157#line 471
5158 data = (struct it87_data *)tmp;
5159#line 474
5160 tmp___0 = kstrtoul(buf, 10U, & val);
5161 }
5162#line 474
5163 if (tmp___0 < 0) {
5164#line 475
5165 return (-22L);
5166 } else {
5167
5168 }
5169 {
5170#line 477
5171 __cil_tmp13 = & data->update_lock;
5172#line 477
5173 mutex_lock_nested(__cil_tmp13, 0U);
5174#line 478
5175 __cil_tmp14 = (struct it87_data const *)data;
5176#line 478
5177 __cil_tmp15 = (long )val;
5178#line 478
5179 data->in_max[nr] = in_to_reg(__cil_tmp14, nr, __cil_tmp15);
5180#line 479
5181 __cil_tmp16 = nr + 24;
5182#line 479
5183 __cil_tmp17 = (u8 )__cil_tmp16;
5184#line 479
5185 __cil_tmp18 = (unsigned int )__cil_tmp17;
5186#line 479
5187 __cil_tmp19 = __cil_tmp18 * 2U;
5188#line 479
5189 __cil_tmp20 = (int )__cil_tmp19;
5190#line 479
5191 __cil_tmp21 = (u8 )__cil_tmp20;
5192#line 479
5193 __cil_tmp22 = data->in_max[nr];
5194#line 479
5195 __cil_tmp23 = (int )__cil_tmp22;
5196#line 479
5197 __cil_tmp24 = (u8 )__cil_tmp23;
5198#line 479
5199 it87_write_value(data, __cil_tmp21, __cil_tmp24);
5200#line 481
5201 __cil_tmp25 = & data->update_lock;
5202#line 481
5203 mutex_unlock(__cil_tmp25);
5204 }
5205#line 482
5206 return ((ssize_t )count);
5207}
5208}
5209#line 495 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
5210static struct sensor_device_attribute sensor_dev_attr_in0_input = {{{"in0_input", 292U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
5211 {(char)0}, {(char)0}, {(char)0},
5212 {(char)0}, {(char)0}}}}, & show_in,
5213 (ssize_t (*)(struct device * , struct device_attribute * , char const * , size_t ))0},
5214 0};
5215#line 496 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
5216static struct sensor_device_attribute sensor_dev_attr_in0_min = {{{"in0_min", 420U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
5217 {(char)0}, {(char)0}, {(char)0},
5218 {(char)0}, {(char)0}}}}, & show_in_min,
5219 & set_in_min}, 0};
5220#line 496 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
5221static struct sensor_device_attribute sensor_dev_attr_in0_max = {{{"in0_max", 420U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
5222 {(char)0}, {(char)0}, {(char)0},
5223 {(char)0}, {(char)0}}}}, & show_in_max,
5224 & set_in_max}, 0};
5225#line 497 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
5226static struct sensor_device_attribute sensor_dev_attr_in1_input = {{{"in1_input", 292U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
5227 {(char)0}, {(char)0}, {(char)0},
5228 {(char)0}, {(char)0}}}}, & show_in,
5229 (ssize_t (*)(struct device * , struct device_attribute * , char const * , size_t ))0},
5230 1};
5231#line 498 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
5232static struct sensor_device_attribute sensor_dev_attr_in1_min = {{{"in1_min", 420U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
5233 {(char)0}, {(char)0}, {(char)0},
5234 {(char)0}, {(char)0}}}}, & show_in_min,
5235 & set_in_min}, 1};
5236#line 498 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
5237static struct sensor_device_attribute sensor_dev_attr_in1_max = {{{"in1_max", 420U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
5238 {(char)0}, {(char)0}, {(char)0},
5239 {(char)0}, {(char)0}}}}, & show_in_max,
5240 & set_in_max}, 1};
5241#line 499 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
5242static struct sensor_device_attribute sensor_dev_attr_in2_input = {{{"in2_input", 292U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
5243 {(char)0}, {(char)0}, {(char)0},
5244 {(char)0}, {(char)0}}}}, & show_in,
5245 (ssize_t (*)(struct device * , struct device_attribute * , char const * , size_t ))0},
5246 2};
5247#line 500 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
5248static struct sensor_device_attribute sensor_dev_attr_in2_min = {{{"in2_min", 420U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
5249 {(char)0}, {(char)0}, {(char)0},
5250 {(char)0}, {(char)0}}}}, & show_in_min,
5251 & set_in_min}, 2};
5252#line 500 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
5253static struct sensor_device_attribute sensor_dev_attr_in2_max = {{{"in2_max", 420U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
5254 {(char)0}, {(char)0}, {(char)0},
5255 {(char)0}, {(char)0}}}}, & show_in_max,
5256 & set_in_max}, 2};
5257#line 501 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
5258static struct sensor_device_attribute sensor_dev_attr_in3_input = {{{"in3_input", 292U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
5259 {(char)0}, {(char)0}, {(char)0},
5260 {(char)0}, {(char)0}}}}, & show_in,
5261 (ssize_t (*)(struct device * , struct device_attribute * , char const * , size_t ))0},
5262 3};
5263#line 502 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
5264static struct sensor_device_attribute sensor_dev_attr_in3_min = {{{"in3_min", 420U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
5265 {(char)0}, {(char)0}, {(char)0},
5266 {(char)0}, {(char)0}}}}, & show_in_min,
5267 & set_in_min}, 3};
5268#line 502 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
5269static struct sensor_device_attribute sensor_dev_attr_in3_max = {{{"in3_max", 420U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
5270 {(char)0}, {(char)0}, {(char)0},
5271 {(char)0}, {(char)0}}}}, & show_in_max,
5272 & set_in_max}, 3};
5273#line 503 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
5274static struct sensor_device_attribute sensor_dev_attr_in4_input = {{{"in4_input", 292U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
5275 {(char)0}, {(char)0}, {(char)0},
5276 {(char)0}, {(char)0}}}}, & show_in,
5277 (ssize_t (*)(struct device * , struct device_attribute * , char const * , size_t ))0},
5278 4};
5279#line 504 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
5280static struct sensor_device_attribute sensor_dev_attr_in4_min = {{{"in4_min", 420U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
5281 {(char)0}, {(char)0}, {(char)0},
5282 {(char)0}, {(char)0}}}}, & show_in_min,
5283 & set_in_min}, 4};
5284#line 504 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
5285static struct sensor_device_attribute sensor_dev_attr_in4_max = {{{"in4_max", 420U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
5286 {(char)0}, {(char)0}, {(char)0},
5287 {(char)0}, {(char)0}}}}, & show_in_max,
5288 & set_in_max}, 4};
5289#line 505 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
5290static struct sensor_device_attribute sensor_dev_attr_in5_input = {{{"in5_input", 292U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
5291 {(char)0}, {(char)0}, {(char)0},
5292 {(char)0}, {(char)0}}}}, & show_in,
5293 (ssize_t (*)(struct device * , struct device_attribute * , char const * , size_t ))0},
5294 5};
5295#line 506 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
5296static struct sensor_device_attribute sensor_dev_attr_in5_min = {{{"in5_min", 420U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
5297 {(char)0}, {(char)0}, {(char)0},
5298 {(char)0}, {(char)0}}}}, & show_in_min,
5299 & set_in_min}, 5};
5300#line 506 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
5301static struct sensor_device_attribute sensor_dev_attr_in5_max = {{{"in5_max", 420U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
5302 {(char)0}, {(char)0}, {(char)0},
5303 {(char)0}, {(char)0}}}}, & show_in_max,
5304 & set_in_max}, 5};
5305#line 507 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
5306static struct sensor_device_attribute sensor_dev_attr_in6_input = {{{"in6_input", 292U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
5307 {(char)0}, {(char)0}, {(char)0},
5308 {(char)0}, {(char)0}}}}, & show_in,
5309 (ssize_t (*)(struct device * , struct device_attribute * , char const * , size_t ))0},
5310 6};
5311#line 508 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
5312static struct sensor_device_attribute sensor_dev_attr_in6_min = {{{"in6_min", 420U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
5313 {(char)0}, {(char)0}, {(char)0},
5314 {(char)0}, {(char)0}}}}, & show_in_min,
5315 & set_in_min}, 6};
5316#line 508 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
5317static struct sensor_device_attribute sensor_dev_attr_in6_max = {{{"in6_max", 420U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
5318 {(char)0}, {(char)0}, {(char)0},
5319 {(char)0}, {(char)0}}}}, & show_in_max,
5320 & set_in_max}, 6};
5321#line 509 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
5322static struct sensor_device_attribute sensor_dev_attr_in7_input = {{{"in7_input", 292U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
5323 {(char)0}, {(char)0}, {(char)0},
5324 {(char)0}, {(char)0}}}}, & show_in,
5325 (ssize_t (*)(struct device * , struct device_attribute * , char const * , size_t ))0},
5326 7};
5327#line 510 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
5328static struct sensor_device_attribute sensor_dev_attr_in7_min = {{{"in7_min", 420U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
5329 {(char)0}, {(char)0}, {(char)0},
5330 {(char)0}, {(char)0}}}}, & show_in_min,
5331 & set_in_min}, 7};
5332#line 510 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
5333static struct sensor_device_attribute sensor_dev_attr_in7_max = {{{"in7_max", 420U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
5334 {(char)0}, {(char)0}, {(char)0},
5335 {(char)0}, {(char)0}}}}, & show_in_max,
5336 & set_in_max}, 7};
5337#line 511 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
5338static struct sensor_device_attribute sensor_dev_attr_in8_input = {{{"in8_input", 292U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
5339 {(char)0}, {(char)0}, {(char)0},
5340 {(char)0}, {(char)0}}}}, & show_in,
5341 (ssize_t (*)(struct device * , struct device_attribute * , char const * , size_t ))0},
5342 8};
5343#line 514 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
5344static ssize_t show_temp(struct device *dev , struct device_attribute *attr , char *buf )
5345{ struct sensor_device_attribute *sensor_attr ;
5346 struct device_attribute const *__mptr ;
5347 int nr ;
5348 struct it87_data *data ;
5349 struct it87_data *tmp ;
5350 int tmp___0 ;
5351 s8 __cil_tmp10 ;
5352 int __cil_tmp11 ;
5353 int __cil_tmp12 ;
5354
5355 {
5356 {
5357#line 517
5358 __mptr = (struct device_attribute const *)attr;
5359#line 517
5360 sensor_attr = (struct sensor_device_attribute *)__mptr;
5361#line 518
5362 nr = sensor_attr->index;
5363#line 520
5364 tmp = it87_update_device(dev);
5365#line 520
5366 data = tmp;
5367#line 521
5368 __cil_tmp10 = data->temp[nr];
5369#line 521
5370 __cil_tmp11 = (int )__cil_tmp10;
5371#line 521
5372 __cil_tmp12 = __cil_tmp11 * 1000;
5373#line 521
5374 tmp___0 = sprintf(buf, "%d\n", __cil_tmp12);
5375 }
5376#line 521
5377 return ((ssize_t )tmp___0);
5378}
5379}
5380#line 523 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
5381static ssize_t show_temp_max(struct device *dev , struct device_attribute *attr ,
5382 char *buf )
5383{ struct sensor_device_attribute *sensor_attr ;
5384 struct device_attribute const *__mptr ;
5385 int nr ;
5386 struct it87_data *data ;
5387 struct it87_data *tmp ;
5388 int tmp___0 ;
5389 s8 __cil_tmp10 ;
5390 int __cil_tmp11 ;
5391 int __cil_tmp12 ;
5392
5393 {
5394 {
5395#line 526
5396 __mptr = (struct device_attribute const *)attr;
5397#line 526
5398 sensor_attr = (struct sensor_device_attribute *)__mptr;
5399#line 527
5400 nr = sensor_attr->index;
5401#line 529
5402 tmp = it87_update_device(dev);
5403#line 529
5404 data = tmp;
5405#line 530
5406 __cil_tmp10 = data->temp_high[nr];
5407#line 530
5408 __cil_tmp11 = (int )__cil_tmp10;
5409#line 530
5410 __cil_tmp12 = __cil_tmp11 * 1000;
5411#line 530
5412 tmp___0 = sprintf(buf, "%d\n", __cil_tmp12);
5413 }
5414#line 530
5415 return ((ssize_t )tmp___0);
5416}
5417}
5418#line 532 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
5419static ssize_t show_temp_min(struct device *dev , struct device_attribute *attr ,
5420 char *buf )
5421{ struct sensor_device_attribute *sensor_attr ;
5422 struct device_attribute const *__mptr ;
5423 int nr ;
5424 struct it87_data *data ;
5425 struct it87_data *tmp ;
5426 int tmp___0 ;
5427 s8 __cil_tmp10 ;
5428 int __cil_tmp11 ;
5429 int __cil_tmp12 ;
5430
5431 {
5432 {
5433#line 535
5434 __mptr = (struct device_attribute const *)attr;
5435#line 535
5436 sensor_attr = (struct sensor_device_attribute *)__mptr;
5437#line 536
5438 nr = sensor_attr->index;
5439#line 538
5440 tmp = it87_update_device(dev);
5441#line 538
5442 data = tmp;
5443#line 539
5444 __cil_tmp10 = data->temp_low[nr];
5445#line 539
5446 __cil_tmp11 = (int )__cil_tmp10;
5447#line 539
5448 __cil_tmp12 = __cil_tmp11 * 1000;
5449#line 539
5450 tmp___0 = sprintf(buf, "%d\n", __cil_tmp12);
5451 }
5452#line 539
5453 return ((ssize_t )tmp___0);
5454}
5455}
5456#line 541 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
5457static ssize_t set_temp_max(struct device *dev , struct device_attribute *attr , char const *buf ,
5458 size_t count )
5459{ struct sensor_device_attribute *sensor_attr ;
5460 struct device_attribute const *__mptr ;
5461 int nr ;
5462 struct it87_data *data ;
5463 void *tmp ;
5464 long val ;
5465 int tmp___0 ;
5466 long tmp___1 ;
5467 int tmp___2 ;
5468 struct device const *__cil_tmp14 ;
5469 struct mutex *__cil_tmp15 ;
5470 long __cil_tmp16 ;
5471 long __cil_tmp17 ;
5472 int __cil_tmp18 ;
5473 u8 __cil_tmp19 ;
5474 unsigned int __cil_tmp20 ;
5475 unsigned int __cil_tmp21 ;
5476 int __cil_tmp22 ;
5477 u8 __cil_tmp23 ;
5478 s8 __cil_tmp24 ;
5479 u8 __cil_tmp25 ;
5480 int __cil_tmp26 ;
5481 u8 __cil_tmp27 ;
5482 struct mutex *__cil_tmp28 ;
5483
5484 {
5485 {
5486#line 544
5487 __mptr = (struct device_attribute const *)attr;
5488#line 544
5489 sensor_attr = (struct sensor_device_attribute *)__mptr;
5490#line 545
5491 nr = sensor_attr->index;
5492#line 547
5493 __cil_tmp14 = (struct device const *)dev;
5494#line 547
5495 tmp = dev_get_drvdata(__cil_tmp14);
5496#line 547
5497 data = (struct it87_data *)tmp;
5498#line 550
5499 tmp___0 = kstrtol(buf, 10U, & val);
5500 }
5501#line 550
5502 if (tmp___0 < 0) {
5503#line 551
5504 return (-22L);
5505 } else {
5506
5507 }
5508 {
5509#line 553
5510 __cil_tmp15 = & data->update_lock;
5511#line 553
5512 mutex_lock_nested(__cil_tmp15, 0U);
5513 }
5514#line 554
5515 if (val < 0L) {
5516#line 554
5517 __cil_tmp16 = val + -500L;
5518#line 554
5519 tmp___1 = __cil_tmp16 / 1000L;
5520 } else {
5521#line 554
5522 __cil_tmp17 = val + 500L;
5523#line 554
5524 tmp___1 = __cil_tmp17 / 1000L;
5525 }
5526 {
5527#line 554
5528 tmp___2 = SENSORS_LIMIT(tmp___1, -128L, 127L);
5529#line 554
5530 data->temp_high[nr] = (s8 )tmp___2;
5531#line 555
5532 __cil_tmp18 = nr + 32;
5533#line 555
5534 __cil_tmp19 = (u8 )__cil_tmp18;
5535#line 555
5536 __cil_tmp20 = (unsigned int )__cil_tmp19;
5537#line 555
5538 __cil_tmp21 = __cil_tmp20 * 2U;
5539#line 555
5540 __cil_tmp22 = (int )__cil_tmp21;
5541#line 555
5542 __cil_tmp23 = (u8 )__cil_tmp22;
5543#line 555
5544 __cil_tmp24 = data->temp_high[nr];
5545#line 555
5546 __cil_tmp25 = (u8 )__cil_tmp24;
5547#line 555
5548 __cil_tmp26 = (int )__cil_tmp25;
5549#line 555
5550 __cil_tmp27 = (u8 )__cil_tmp26;
5551#line 555
5552 it87_write_value(data, __cil_tmp23, __cil_tmp27);
5553#line 556
5554 __cil_tmp28 = & data->update_lock;
5555#line 556
5556 mutex_unlock(__cil_tmp28);
5557 }
5558#line 557
5559 return ((ssize_t )count);
5560}
5561}
5562#line 559 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
5563static ssize_t set_temp_min(struct device *dev , struct device_attribute *attr , char const *buf ,
5564 size_t count )
5565{ struct sensor_device_attribute *sensor_attr ;
5566 struct device_attribute const *__mptr ;
5567 int nr ;
5568 struct it87_data *data ;
5569 void *tmp ;
5570 long val ;
5571 int tmp___0 ;
5572 long tmp___1 ;
5573 int tmp___2 ;
5574 struct device const *__cil_tmp14 ;
5575 struct mutex *__cil_tmp15 ;
5576 long __cil_tmp16 ;
5577 long __cil_tmp17 ;
5578 u8 __cil_tmp18 ;
5579 unsigned int __cil_tmp19 ;
5580 unsigned int __cil_tmp20 ;
5581 unsigned int __cil_tmp21 ;
5582 int __cil_tmp22 ;
5583 u8 __cil_tmp23 ;
5584 s8 __cil_tmp24 ;
5585 u8 __cil_tmp25 ;
5586 int __cil_tmp26 ;
5587 u8 __cil_tmp27 ;
5588 struct mutex *__cil_tmp28 ;
5589
5590 {
5591 {
5592#line 562
5593 __mptr = (struct device_attribute const *)attr;
5594#line 562
5595 sensor_attr = (struct sensor_device_attribute *)__mptr;
5596#line 563
5597 nr = sensor_attr->index;
5598#line 565
5599 __cil_tmp14 = (struct device const *)dev;
5600#line 565
5601 tmp = dev_get_drvdata(__cil_tmp14);
5602#line 565
5603 data = (struct it87_data *)tmp;
5604#line 568
5605 tmp___0 = kstrtol(buf, 10U, & val);
5606 }
5607#line 568
5608 if (tmp___0 < 0) {
5609#line 569
5610 return (-22L);
5611 } else {
5612
5613 }
5614 {
5615#line 571
5616 __cil_tmp15 = & data->update_lock;
5617#line 571
5618 mutex_lock_nested(__cil_tmp15, 0U);
5619 }
5620#line 572
5621 if (val < 0L) {
5622#line 572
5623 __cil_tmp16 = val + -500L;
5624#line 572
5625 tmp___1 = __cil_tmp16 / 1000L;
5626 } else {
5627#line 572
5628 __cil_tmp17 = val + 500L;
5629#line 572
5630 tmp___1 = __cil_tmp17 / 1000L;
5631 }
5632 {
5633#line 572
5634 tmp___2 = SENSORS_LIMIT(tmp___1, -128L, 127L);
5635#line 572
5636 data->temp_low[nr] = (s8 )tmp___2;
5637#line 573
5638 __cil_tmp18 = (u8 )nr;
5639#line 573
5640 __cil_tmp19 = (unsigned int )__cil_tmp18;
5641#line 573
5642 __cil_tmp20 = __cil_tmp19 * 2U;
5643#line 573
5644 __cil_tmp21 = __cil_tmp20 + 65U;
5645#line 573
5646 __cil_tmp22 = (int )__cil_tmp21;
5647#line 573
5648 __cil_tmp23 = (u8 )__cil_tmp22;
5649#line 573
5650 __cil_tmp24 = data->temp_low[nr];
5651#line 573
5652 __cil_tmp25 = (u8 )__cil_tmp24;
5653#line 573
5654 __cil_tmp26 = (int )__cil_tmp25;
5655#line 573
5656 __cil_tmp27 = (u8 )__cil_tmp26;
5657#line 573
5658 it87_write_value(data, __cil_tmp23, __cil_tmp27);
5659#line 574
5660 __cil_tmp28 = & data->update_lock;
5661#line 574
5662 mutex_unlock(__cil_tmp28);
5663 }
5664#line 575
5665 return ((ssize_t )count);
5666}
5667}
5668#line 585 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
5669static struct sensor_device_attribute sensor_dev_attr_temp1_input = {{{"temp1_input", 292U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
5670 {(char)0}, {(char)0}, {(char)0},
5671 {(char)0}, {(char)0}}}},
5672 & show_temp, (ssize_t (*)(struct device * , struct device_attribute * , char const * ,
5673 size_t ))0}, 0};
5674#line 585 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
5675static struct sensor_device_attribute sensor_dev_attr_temp1_max = {{{"temp1_max", 420U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
5676 {(char)0}, {(char)0}, {(char)0},
5677 {(char)0}, {(char)0}}}}, & show_temp_max,
5678 & set_temp_max}, 0};
5679#line 585 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
5680static struct sensor_device_attribute sensor_dev_attr_temp1_min = {{{"temp1_min", 420U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
5681 {(char)0}, {(char)0}, {(char)0},
5682 {(char)0}, {(char)0}}}}, & show_temp_min,
5683 & set_temp_min}, 0};
5684#line 586 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
5685static struct sensor_device_attribute sensor_dev_attr_temp2_input = {{{"temp2_input", 292U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
5686 {(char)0}, {(char)0}, {(char)0},
5687 {(char)0}, {(char)0}}}},
5688 & show_temp, (ssize_t (*)(struct device * , struct device_attribute * , char const * ,
5689 size_t ))0}, 1};
5690#line 586 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
5691static struct sensor_device_attribute sensor_dev_attr_temp2_max = {{{"temp2_max", 420U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
5692 {(char)0}, {(char)0}, {(char)0},
5693 {(char)0}, {(char)0}}}}, & show_temp_max,
5694 & set_temp_max}, 1};
5695#line 586 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
5696static struct sensor_device_attribute sensor_dev_attr_temp2_min = {{{"temp2_min", 420U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
5697 {(char)0}, {(char)0}, {(char)0},
5698 {(char)0}, {(char)0}}}}, & show_temp_min,
5699 & set_temp_min}, 1};
5700#line 587 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
5701static struct sensor_device_attribute sensor_dev_attr_temp3_input = {{{"temp3_input", 292U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
5702 {(char)0}, {(char)0}, {(char)0},
5703 {(char)0}, {(char)0}}}},
5704 & show_temp, (ssize_t (*)(struct device * , struct device_attribute * , char const * ,
5705 size_t ))0}, 2};
5706#line 587 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
5707static struct sensor_device_attribute sensor_dev_attr_temp3_max = {{{"temp3_max", 420U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
5708 {(char)0}, {(char)0}, {(char)0},
5709 {(char)0}, {(char)0}}}}, & show_temp_max,
5710 & set_temp_max}, 2};
5711#line 587 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
5712static struct sensor_device_attribute sensor_dev_attr_temp3_min = {{{"temp3_min", 420U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
5713 {(char)0}, {(char)0}, {(char)0},
5714 {(char)0}, {(char)0}}}}, & show_temp_min,
5715 & set_temp_min}, 2};
5716#line 589 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
5717static ssize_t show_sensor(struct device *dev , struct device_attribute *attr , char *buf )
5718{ struct sensor_device_attribute *sensor_attr ;
5719 struct device_attribute const *__mptr ;
5720 int nr ;
5721 struct it87_data *data ;
5722 struct it87_data *tmp ;
5723 u8 reg ;
5724 int tmp___0 ;
5725 int tmp___1 ;
5726 int tmp___2 ;
5727 int __cil_tmp13 ;
5728 int __cil_tmp14 ;
5729 int __cil_tmp15 ;
5730 int __cil_tmp16 ;
5731 int __cil_tmp17 ;
5732
5733 {
5734 {
5735#line 592
5736 __mptr = (struct device_attribute const *)attr;
5737#line 592
5738 sensor_attr = (struct sensor_device_attribute *)__mptr;
5739#line 593
5740 nr = sensor_attr->index;
5741#line 595
5742 tmp = it87_update_device(dev);
5743#line 595
5744 data = tmp;
5745#line 596
5746 reg = data->sensor;
5747 }
5748 {
5749#line 599
5750 __cil_tmp13 = (int )reg;
5751#line 599
5752 __cil_tmp14 = __cil_tmp13 >> nr;
5753#line 599
5754 if (__cil_tmp14 & 1) {
5755 {
5756#line 600
5757 tmp___0 = sprintf(buf, "3\n");
5758 }
5759#line 600
5760 return ((ssize_t )tmp___0);
5761 } else {
5762
5763 }
5764 }
5765 {
5766#line 601
5767 __cil_tmp15 = 8 << nr;
5768#line 601
5769 __cil_tmp16 = (int )reg;
5770#line 601
5771 __cil_tmp17 = __cil_tmp16 & __cil_tmp15;
5772#line 601
5773 if (__cil_tmp17 != 0) {
5774 {
5775#line 602
5776 tmp___1 = sprintf(buf, "4\n");
5777 }
5778#line 602
5779 return ((ssize_t )tmp___1);
5780 } else {
5781
5782 }
5783 }
5784 {
5785#line 603
5786 tmp___2 = sprintf(buf, "0\n");
5787 }
5788#line 603
5789 return ((ssize_t )tmp___2);
5790}
5791}
5792#line 605 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
5793static ssize_t set_sensor(struct device *dev , struct device_attribute *attr , char const *buf ,
5794 size_t count )
5795{ struct sensor_device_attribute *sensor_attr ;
5796 struct device_attribute const *__mptr ;
5797 int nr ;
5798 struct it87_data *data ;
5799 void *tmp ;
5800 long val ;
5801 u8 reg ;
5802 int tmp___0 ;
5803 int tmp___1 ;
5804 struct device const *__cil_tmp14 ;
5805 u8 __cil_tmp15 ;
5806 signed char __cil_tmp16 ;
5807 int __cil_tmp17 ;
5808 int __cil_tmp18 ;
5809 signed char __cil_tmp19 ;
5810 int __cil_tmp20 ;
5811 int __cil_tmp21 ;
5812 int __cil_tmp22 ;
5813 signed char __cil_tmp23 ;
5814 int __cil_tmp24 ;
5815 int __cil_tmp25 ;
5816 signed char __cil_tmp26 ;
5817 int __cil_tmp27 ;
5818 int __cil_tmp28 ;
5819 int __cil_tmp29 ;
5820 struct device const *__cil_tmp30 ;
5821 signed char __cil_tmp31 ;
5822 int __cil_tmp32 ;
5823 int __cil_tmp33 ;
5824 signed char __cil_tmp34 ;
5825 int __cil_tmp35 ;
5826 int __cil_tmp36 ;
5827 signed char __cil_tmp37 ;
5828 int __cil_tmp38 ;
5829 int __cil_tmp39 ;
5830 signed char __cil_tmp40 ;
5831 int __cil_tmp41 ;
5832 int __cil_tmp42 ;
5833 struct mutex *__cil_tmp43 ;
5834 u8 __cil_tmp44 ;
5835 u8 __cil_tmp45 ;
5836 int __cil_tmp46 ;
5837 u8 __cil_tmp47 ;
5838 struct mutex *__cil_tmp48 ;
5839
5840 {
5841 {
5842#line 608
5843 __mptr = (struct device_attribute const *)attr;
5844#line 608
5845 sensor_attr = (struct sensor_device_attribute *)__mptr;
5846#line 609
5847 nr = sensor_attr->index;
5848#line 611
5849 __cil_tmp14 = (struct device const *)dev;
5850#line 611
5851 tmp = dev_get_drvdata(__cil_tmp14);
5852#line 611
5853 data = (struct it87_data *)tmp;
5854#line 615
5855 tmp___0 = kstrtol(buf, 10U, & val);
5856 }
5857#line 615
5858 if (tmp___0 < 0) {
5859#line 616
5860 return (-22L);
5861 } else {
5862
5863 }
5864 {
5865#line 618
5866 __cil_tmp15 = (u8 )81;
5867#line 618
5868 tmp___1 = it87_read_value(data, __cil_tmp15);
5869#line 618
5870 reg = (u8 )tmp___1;
5871#line 619
5872 __cil_tmp16 = (signed char )reg;
5873#line 619
5874 __cil_tmp17 = (int )__cil_tmp16;
5875#line 619
5876 __cil_tmp18 = 1 << nr;
5877#line 619
5878 __cil_tmp19 = (signed char )__cil_tmp18;
5879#line 619
5880 __cil_tmp20 = (int )__cil_tmp19;
5881#line 619
5882 __cil_tmp21 = ~ __cil_tmp20;
5883#line 619
5884 __cil_tmp22 = __cil_tmp21 & __cil_tmp17;
5885#line 619
5886 reg = (u8 )__cil_tmp22;
5887#line 620
5888 __cil_tmp23 = (signed char )reg;
5889#line 620
5890 __cil_tmp24 = (int )__cil_tmp23;
5891#line 620
5892 __cil_tmp25 = 8 << nr;
5893#line 620
5894 __cil_tmp26 = (signed char )__cil_tmp25;
5895#line 620
5896 __cil_tmp27 = (int )__cil_tmp26;
5897#line 620
5898 __cil_tmp28 = ~ __cil_tmp27;
5899#line 620
5900 __cil_tmp29 = __cil_tmp28 & __cil_tmp24;
5901#line 620
5902 reg = (u8 )__cil_tmp29;
5903 }
5904#line 621
5905 if (val == 2L) {
5906 {
5907#line 622
5908 __cil_tmp30 = (struct device const *)dev;
5909#line 622
5910 dev_warn(__cil_tmp30, "Sensor type 2 is deprecated, please use 4 instead\n");
5911#line 624
5912 val = 4L;
5913 }
5914 } else {
5915
5916 }
5917#line 627
5918 if (val == 3L) {
5919#line 628
5920 __cil_tmp31 = (signed char )reg;
5921#line 628
5922 __cil_tmp32 = (int )__cil_tmp31;
5923#line 628
5924 __cil_tmp33 = 1 << nr;
5925#line 628
5926 __cil_tmp34 = (signed char )__cil_tmp33;
5927#line 628
5928 __cil_tmp35 = (int )__cil_tmp34;
5929#line 628
5930 __cil_tmp36 = __cil_tmp35 | __cil_tmp32;
5931#line 628
5932 reg = (u8 )__cil_tmp36;
5933 } else
5934#line 629
5935 if (val == 4L) {
5936#line 630
5937 __cil_tmp37 = (signed char )reg;
5938#line 630
5939 __cil_tmp38 = (int )__cil_tmp37;
5940#line 630
5941 __cil_tmp39 = 8 << nr;
5942#line 630
5943 __cil_tmp40 = (signed char )__cil_tmp39;
5944#line 630
5945 __cil_tmp41 = (int )__cil_tmp40;
5946#line 630
5947 __cil_tmp42 = __cil_tmp41 | __cil_tmp38;
5948#line 630
5949 reg = (u8 )__cil_tmp42;
5950 } else
5951#line 631
5952 if (val != 0L) {
5953#line 632
5954 return (-22L);
5955 } else {
5956
5957 }
5958 {
5959#line 634
5960 __cil_tmp43 = & data->update_lock;
5961#line 634
5962 mutex_lock_nested(__cil_tmp43, 0U);
5963#line 635
5964 data->sensor = reg;
5965#line 636
5966 __cil_tmp44 = (u8 )81;
5967#line 636
5968 __cil_tmp45 = data->sensor;
5969#line 636
5970 __cil_tmp46 = (int )__cil_tmp45;
5971#line 636
5972 __cil_tmp47 = (u8 )__cil_tmp46;
5973#line 636
5974 it87_write_value(data, __cil_tmp44, __cil_tmp47);
5975#line 637
5976 data->valid = (char)0;
5977#line 638
5978 __cil_tmp48 = & data->update_lock;
5979#line 638
5980 mutex_unlock(__cil_tmp48);
5981 }
5982#line 639
5983 return ((ssize_t )count);
5984}
5985}
5986#line 645 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
5987static struct sensor_device_attribute sensor_dev_attr_temp1_type = {{{"temp1_type", 420U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
5988 {(char)0}, {(char)0}, {(char)0},
5989 {(char)0}, {(char)0}}}}, & show_sensor,
5990 & set_sensor}, 0};
5991#line 646 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
5992static struct sensor_device_attribute sensor_dev_attr_temp2_type = {{{"temp2_type", 420U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
5993 {(char)0}, {(char)0}, {(char)0},
5994 {(char)0}, {(char)0}}}}, & show_sensor,
5995 & set_sensor}, 1};
5996#line 647 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
5997static struct sensor_device_attribute sensor_dev_attr_temp3_type = {{{"temp3_type", 420U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
5998 {(char)0}, {(char)0}, {(char)0},
5999 {(char)0}, {(char)0}}}}, & show_sensor,
6000 & set_sensor}, 2};
6001#line 651 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
6002static int pwm_mode(struct it87_data const *data , int nr )
6003{ int ctrl ;
6004 int __cil_tmp4 ;
6005 u8 __cil_tmp5 ;
6006 int __cil_tmp6 ;
6007 u8 __cil_tmp7 ;
6008 signed char __cil_tmp8 ;
6009 int __cil_tmp9 ;
6010
6011 {
6012#line 653
6013 __cil_tmp4 = 1 << nr;
6014#line 653
6015 __cil_tmp5 = data->fan_main_ctrl;
6016#line 653
6017 __cil_tmp6 = (int )__cil_tmp5;
6018#line 653
6019 ctrl = __cil_tmp6 & __cil_tmp4;
6020#line 655
6021 if (ctrl == 0) {
6022#line 656
6023 return (0);
6024 } else {
6025
6026 }
6027 {
6028#line 657
6029 __cil_tmp7 = data->pwm_ctrl[nr];
6030#line 657
6031 __cil_tmp8 = (signed char )__cil_tmp7;
6032#line 657
6033 __cil_tmp9 = (int )__cil_tmp8;
6034#line 657
6035 if (__cil_tmp9 < 0) {
6036#line 658
6037 return (2);
6038 } else {
6039#line 660
6040 return (1);
6041 }
6042 }
6043}
6044}
6045#line 663 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
6046static ssize_t show_fan(struct device *dev , struct device_attribute *attr , char *buf )
6047{ struct sensor_device_attribute *sensor_attr ;
6048 struct device_attribute const *__mptr ;
6049 int nr ;
6050 struct it87_data *data ;
6051 struct it87_data *tmp ;
6052 int tmp___0 ;
6053 int tmp___1 ;
6054 int tmp___2 ;
6055 u16 __cil_tmp12 ;
6056 unsigned int __cil_tmp13 ;
6057 u16 __cil_tmp14 ;
6058 unsigned int __cil_tmp15 ;
6059 u8 __cil_tmp16 ;
6060 int __cil_tmp17 ;
6061 u16 __cil_tmp18 ;
6062 int __cil_tmp19 ;
6063 int __cil_tmp20 ;
6064
6065 {
6066 {
6067#line 666
6068 __mptr = (struct device_attribute const *)attr;
6069#line 666
6070 sensor_attr = (struct sensor_device_attribute *)__mptr;
6071#line 667
6072 nr = sensor_attr->index;
6073#line 669
6074 tmp = it87_update_device(dev);
6075#line 669
6076 data = tmp;
6077 }
6078 {
6079#line 670
6080 __cil_tmp12 = data->fan[nr];
6081#line 670
6082 __cil_tmp13 = (unsigned int )__cil_tmp12;
6083#line 670
6084 if (__cil_tmp13 != 0U) {
6085 {
6086#line 670
6087 __cil_tmp14 = data->fan[nr];
6088#line 670
6089 __cil_tmp15 = (unsigned int )__cil_tmp14;
6090#line 670
6091 if (__cil_tmp15 != 255U) {
6092#line 670
6093 __cil_tmp16 = data->fan_div[nr];
6094#line 670
6095 __cil_tmp17 = (int )__cil_tmp16;
6096#line 670
6097 __cil_tmp18 = data->fan[nr];
6098#line 670
6099 __cil_tmp19 = (int )__cil_tmp18;
6100#line 670
6101 __cil_tmp20 = __cil_tmp19 << __cil_tmp17;
6102#line 670
6103 tmp___0 = 1350000 / __cil_tmp20;
6104 } else {
6105#line 670
6106 tmp___0 = 0;
6107 }
6108 }
6109#line 670
6110 tmp___1 = tmp___0;
6111 } else {
6112#line 670
6113 tmp___1 = -1;
6114 }
6115 }
6116 {
6117#line 670
6118 tmp___2 = sprintf(buf, "%d\n", tmp___1);
6119 }
6120#line 670
6121 return ((ssize_t )tmp___2);
6122}
6123}
6124#line 673 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
6125static ssize_t show_fan_min(struct device *dev , struct device_attribute *attr , char *buf )
6126{ struct sensor_device_attribute *sensor_attr ;
6127 struct device_attribute const *__mptr ;
6128 int nr ;
6129 struct it87_data *data ;
6130 struct it87_data *tmp ;
6131 int tmp___0 ;
6132 int tmp___1 ;
6133 int tmp___2 ;
6134 u16 __cil_tmp12 ;
6135 unsigned int __cil_tmp13 ;
6136 u16 __cil_tmp14 ;
6137 unsigned int __cil_tmp15 ;
6138 u8 __cil_tmp16 ;
6139 int __cil_tmp17 ;
6140 u16 __cil_tmp18 ;
6141 int __cil_tmp19 ;
6142 int __cil_tmp20 ;
6143
6144 {
6145 {
6146#line 676
6147 __mptr = (struct device_attribute const *)attr;
6148#line 676
6149 sensor_attr = (struct sensor_device_attribute *)__mptr;
6150#line 677
6151 nr = sensor_attr->index;
6152#line 679
6153 tmp = it87_update_device(dev);
6154#line 679
6155 data = tmp;
6156 }
6157 {
6158#line 680
6159 __cil_tmp12 = data->fan_min[nr];
6160#line 680
6161 __cil_tmp13 = (unsigned int )__cil_tmp12;
6162#line 680
6163 if (__cil_tmp13 != 0U) {
6164 {
6165#line 680
6166 __cil_tmp14 = data->fan_min[nr];
6167#line 680
6168 __cil_tmp15 = (unsigned int )__cil_tmp14;
6169#line 680
6170 if (__cil_tmp15 != 255U) {
6171#line 680
6172 __cil_tmp16 = data->fan_div[nr];
6173#line 680
6174 __cil_tmp17 = (int )__cil_tmp16;
6175#line 680
6176 __cil_tmp18 = data->fan_min[nr];
6177#line 680
6178 __cil_tmp19 = (int )__cil_tmp18;
6179#line 680
6180 __cil_tmp20 = __cil_tmp19 << __cil_tmp17;
6181#line 680
6182 tmp___0 = 1350000 / __cil_tmp20;
6183 } else {
6184#line 680
6185 tmp___0 = 0;
6186 }
6187 }
6188#line 680
6189 tmp___1 = tmp___0;
6190 } else {
6191#line 680
6192 tmp___1 = -1;
6193 }
6194 }
6195 {
6196#line 680
6197 tmp___2 = sprintf(buf, "%d\n", tmp___1);
6198 }
6199#line 680
6200 return ((ssize_t )tmp___2);
6201}
6202}
6203#line 683 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
6204static ssize_t show_fan_div(struct device *dev , struct device_attribute *attr , char *buf )
6205{ struct sensor_device_attribute *sensor_attr ;
6206 struct device_attribute const *__mptr ;
6207 int nr ;
6208 struct it87_data *data ;
6209 struct it87_data *tmp ;
6210 int tmp___0 ;
6211 u8 __cil_tmp10 ;
6212 int __cil_tmp11 ;
6213 int __cil_tmp12 ;
6214
6215 {
6216 {
6217#line 686
6218 __mptr = (struct device_attribute const *)attr;
6219#line 686
6220 sensor_attr = (struct sensor_device_attribute *)__mptr;
6221#line 687
6222 nr = sensor_attr->index;
6223#line 689
6224 tmp = it87_update_device(dev);
6225#line 689
6226 data = tmp;
6227#line 690
6228 __cil_tmp10 = data->fan_div[nr];
6229#line 690
6230 __cil_tmp11 = (int )__cil_tmp10;
6231#line 690
6232 __cil_tmp12 = 1 << __cil_tmp11;
6233#line 690
6234 tmp___0 = sprintf(buf, "%d\n", __cil_tmp12);
6235 }
6236#line 690
6237 return ((ssize_t )tmp___0);
6238}
6239}
6240#line 692 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
6241static ssize_t show_pwm_enable(struct device *dev , struct device_attribute *attr ,
6242 char *buf )
6243{ struct sensor_device_attribute *sensor_attr ;
6244 struct device_attribute const *__mptr ;
6245 int nr ;
6246 struct it87_data *data ;
6247 struct it87_data *tmp ;
6248 int tmp___0 ;
6249 int tmp___1 ;
6250 struct it87_data const *__cil_tmp11 ;
6251
6252 {
6253 {
6254#line 695
6255 __mptr = (struct device_attribute const *)attr;
6256#line 695
6257 sensor_attr = (struct sensor_device_attribute *)__mptr;
6258#line 696
6259 nr = sensor_attr->index;
6260#line 698
6261 tmp = it87_update_device(dev);
6262#line 698
6263 data = tmp;
6264#line 699
6265 __cil_tmp11 = (struct it87_data const *)data;
6266#line 699
6267 tmp___0 = pwm_mode(__cil_tmp11, nr);
6268#line 699
6269 tmp___1 = sprintf(buf, "%d\n", tmp___0);
6270 }
6271#line 699
6272 return ((ssize_t )tmp___1);
6273}
6274}
6275#line 701 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
6276static ssize_t show_pwm(struct device *dev , struct device_attribute *attr , char *buf )
6277{ struct sensor_device_attribute *sensor_attr ;
6278 struct device_attribute const *__mptr ;
6279 int nr ;
6280 struct it87_data *data ;
6281 struct it87_data *tmp ;
6282 int tmp___0 ;
6283 int tmp___1 ;
6284 struct it87_data const *__cil_tmp11 ;
6285 u8 __cil_tmp12 ;
6286 int __cil_tmp13 ;
6287 u8 __cil_tmp14 ;
6288
6289 {
6290 {
6291#line 704
6292 __mptr = (struct device_attribute const *)attr;
6293#line 704
6294 sensor_attr = (struct sensor_device_attribute *)__mptr;
6295#line 705
6296 nr = sensor_attr->index;
6297#line 707
6298 tmp = it87_update_device(dev);
6299#line 707
6300 data = tmp;
6301#line 708
6302 __cil_tmp11 = (struct it87_data const *)data;
6303#line 708
6304 __cil_tmp12 = data->pwm_duty[nr];
6305#line 708
6306 __cil_tmp13 = (int )__cil_tmp12;
6307#line 708
6308 __cil_tmp14 = (u8 )__cil_tmp13;
6309#line 708
6310 tmp___0 = pwm_from_reg(__cil_tmp11, __cil_tmp14);
6311#line 708
6312 tmp___1 = sprintf(buf, "%d\n", tmp___0);
6313 }
6314#line 708
6315 return ((ssize_t )tmp___1);
6316}
6317}
6318#line 711 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
6319static ssize_t show_pwm_freq(struct device *dev , struct device_attribute *attr ,
6320 char *buf )
6321{ struct it87_data *data ;
6322 struct it87_data *tmp ;
6323 int index ;
6324 int tmp___0 ;
6325 u8 __cil_tmp8 ;
6326 int __cil_tmp9 ;
6327 int __cil_tmp10 ;
6328
6329 {
6330 {
6331#line 714
6332 tmp = it87_update_device(dev);
6333#line 714
6334 data = tmp;
6335#line 715
6336 __cil_tmp8 = data->fan_ctl;
6337#line 715
6338 __cil_tmp9 = (int )__cil_tmp8;
6339#line 715
6340 __cil_tmp10 = __cil_tmp9 >> 4;
6341#line 715
6342 index = __cil_tmp10 & 7;
6343#line 717
6344 tmp___0 = sprintf(buf, "%u\n", pwm_freq[index]);
6345 }
6346#line 717
6347 return ((ssize_t )tmp___0);
6348}
6349}
6350#line 719 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
6351static ssize_t set_fan_min(struct device *dev , struct device_attribute *attr , char const *buf ,
6352 size_t count )
6353{ struct sensor_device_attribute *sensor_attr ;
6354 struct device_attribute const *__mptr ;
6355 int nr ;
6356 struct it87_data *data ;
6357 void *tmp ;
6358 long val ;
6359 u8 reg ;
6360 int tmp___0 ;
6361 int tmp___1 ;
6362 u8 tmp___2 ;
6363 struct device const *__cil_tmp15 ;
6364 struct mutex *__cil_tmp16 ;
6365 u8 __cil_tmp17 ;
6366 unsigned int __cil_tmp18 ;
6367 unsigned int __cil_tmp19 ;
6368 int __cil_tmp20 ;
6369 int __cil_tmp21 ;
6370 u8 __cil_tmp22 ;
6371 unsigned int __cil_tmp23 ;
6372 unsigned int __cil_tmp24 ;
6373 int __cil_tmp25 ;
6374 int __cil_tmp26 ;
6375 u8 __cil_tmp27 ;
6376 int __cil_tmp28 ;
6377 int __cil_tmp29 ;
6378 int __cil_tmp30 ;
6379 u8 __cil_tmp31 ;
6380 u16 __cil_tmp32 ;
6381 u8 __cil_tmp33 ;
6382 int __cil_tmp34 ;
6383 u8 __cil_tmp35 ;
6384 struct mutex *__cil_tmp36 ;
6385
6386 {
6387 {
6388#line 722
6389 __mptr = (struct device_attribute const *)attr;
6390#line 722
6391 sensor_attr = (struct sensor_device_attribute *)__mptr;
6392#line 723
6393 nr = sensor_attr->index;
6394#line 725
6395 __cil_tmp15 = (struct device const *)dev;
6396#line 725
6397 tmp = dev_get_drvdata(__cil_tmp15);
6398#line 725
6399 data = (struct it87_data *)tmp;
6400#line 729
6401 tmp___0 = kstrtol(buf, 10U, & val);
6402 }
6403#line 729
6404 if (tmp___0 < 0) {
6405#line 730
6406 return (-22L);
6407 } else {
6408
6409 }
6410 {
6411#line 732
6412 __cil_tmp16 = & data->update_lock;
6413#line 732
6414 mutex_lock_nested(__cil_tmp16, 0U);
6415#line 733
6416 __cil_tmp17 = (u8 )11;
6417#line 733
6418 tmp___1 = it87_read_value(data, __cil_tmp17);
6419#line 733
6420 reg = (u8 )tmp___1;
6421 }
6422#line 735
6423 if (nr == 0) {
6424#line 735
6425 goto case_0;
6426 } else
6427#line 738
6428 if (nr == 1) {
6429#line 738
6430 goto case_1;
6431 } else
6432#line 741
6433 if (nr == 2) {
6434#line 741
6435 goto case_2;
6436 } else
6437#line 734
6438 if (0) {
6439 case_0:
6440#line 736
6441 __cil_tmp18 = (unsigned int )reg;
6442#line 736
6443 __cil_tmp19 = __cil_tmp18 & 7U;
6444#line 736
6445 data->fan_div[nr] = (u8 )__cil_tmp19;
6446#line 737
6447 goto ldv_24477;
6448 case_1:
6449#line 739
6450 __cil_tmp20 = (int )reg;
6451#line 739
6452 __cil_tmp21 = __cil_tmp20 >> 3;
6453#line 739
6454 __cil_tmp22 = (u8 )__cil_tmp21;
6455#line 739
6456 __cil_tmp23 = (unsigned int )__cil_tmp22;
6457#line 739
6458 __cil_tmp24 = __cil_tmp23 & 7U;
6459#line 739
6460 data->fan_div[nr] = (u8 )__cil_tmp24;
6461#line 740
6462 goto ldv_24477;
6463 case_2: ;
6464 {
6465#line 742
6466 __cil_tmp25 = (int )reg;
6467#line 742
6468 __cil_tmp26 = __cil_tmp25 & 64;
6469#line 742
6470 if (__cil_tmp26 != 0) {
6471#line 742
6472 data->fan_div[nr] = (u8 )3U;
6473 } else {
6474#line 742
6475 data->fan_div[nr] = (u8 )1U;
6476 }
6477 }
6478#line 743
6479 goto ldv_24477;
6480 } else {
6481
6482 }
6483 ldv_24477:
6484 {
6485#line 746
6486 __cil_tmp27 = data->fan_div[nr];
6487#line 746
6488 __cil_tmp28 = (int )__cil_tmp27;
6489#line 746
6490 __cil_tmp29 = 1 << __cil_tmp28;
6491#line 746
6492 tmp___2 = FAN_TO_REG(val, __cil_tmp29);
6493#line 746
6494 data->fan_min[nr] = (u16 )tmp___2;
6495#line 747
6496 __cil_tmp30 = (int )IT87_REG_FAN_MIN[nr];
6497#line 747
6498 __cil_tmp31 = (u8 )__cil_tmp30;
6499#line 747
6500 __cil_tmp32 = data->fan_min[nr];
6501#line 747
6502 __cil_tmp33 = (u8 )__cil_tmp32;
6503#line 747
6504 __cil_tmp34 = (int )__cil_tmp33;
6505#line 747
6506 __cil_tmp35 = (u8 )__cil_tmp34;
6507#line 747
6508 it87_write_value(data, __cil_tmp31, __cil_tmp35);
6509#line 748
6510 __cil_tmp36 = & data->update_lock;
6511#line 748
6512 mutex_unlock(__cil_tmp36);
6513 }
6514#line 749
6515 return ((ssize_t )count);
6516}
6517}
6518#line 751 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
6519static ssize_t set_fan_div(struct device *dev , struct device_attribute *attr , char const *buf ,
6520 size_t count )
6521{ struct sensor_device_attribute *sensor_attr ;
6522 struct device_attribute const *__mptr ;
6523 int nr ;
6524 struct it87_data *data ;
6525 void *tmp ;
6526 unsigned long val ;
6527 int min ;
6528 u8 old ;
6529 int tmp___0 ;
6530 int tmp___1 ;
6531 int tmp___2 ;
6532 int tmp___3 ;
6533 u8 tmp___4 ;
6534 struct device const *__cil_tmp18 ;
6535 struct mutex *__cil_tmp19 ;
6536 u8 __cil_tmp20 ;
6537 u16 __cil_tmp21 ;
6538 unsigned int __cil_tmp22 ;
6539 u16 __cil_tmp23 ;
6540 unsigned int __cil_tmp24 ;
6541 u8 __cil_tmp25 ;
6542 int __cil_tmp26 ;
6543 u16 __cil_tmp27 ;
6544 int __cil_tmp28 ;
6545 int __cil_tmp29 ;
6546 int __cil_tmp30 ;
6547 unsigned long __cil_tmp31 ;
6548 u8 __cil_tmp32 ;
6549 unsigned long __cil_tmp33 ;
6550 unsigned long __cil_tmp34 ;
6551 u8 __cil_tmp35 ;
6552 int __cil_tmp36 ;
6553 int __cil_tmp37 ;
6554 int __cil_tmp38 ;
6555 unsigned long __cil_tmp39 ;
6556 u8 __cil_tmp40 ;
6557 unsigned int __cil_tmp41 ;
6558 u8 __cil_tmp42 ;
6559 u8 __cil_tmp43 ;
6560 int __cil_tmp44 ;
6561 u8 __cil_tmp45 ;
6562 long __cil_tmp46 ;
6563 u8 __cil_tmp47 ;
6564 int __cil_tmp48 ;
6565 int __cil_tmp49 ;
6566 int __cil_tmp50 ;
6567 u8 __cil_tmp51 ;
6568 u16 __cil_tmp52 ;
6569 u8 __cil_tmp53 ;
6570 int __cil_tmp54 ;
6571 u8 __cil_tmp55 ;
6572 struct mutex *__cil_tmp56 ;
6573
6574 {
6575 {
6576#line 754
6577 __mptr = (struct device_attribute const *)attr;
6578#line 754
6579 sensor_attr = (struct sensor_device_attribute *)__mptr;
6580#line 755
6581 nr = sensor_attr->index;
6582#line 757
6583 __cil_tmp18 = (struct device const *)dev;
6584#line 757
6585 tmp = dev_get_drvdata(__cil_tmp18);
6586#line 757
6587 data = (struct it87_data *)tmp;
6588#line 762
6589 tmp___0 = kstrtoul(buf, 10U, & val);
6590 }
6591#line 762
6592 if (tmp___0 < 0) {
6593#line 763
6594 return (-22L);
6595 } else {
6596
6597 }
6598 {
6599#line 765
6600 __cil_tmp19 = & data->update_lock;
6601#line 765
6602 mutex_lock_nested(__cil_tmp19, 0U);
6603#line 766
6604 __cil_tmp20 = (u8 )11;
6605#line 766
6606 tmp___1 = it87_read_value(data, __cil_tmp20);
6607#line 766
6608 old = (u8 )tmp___1;
6609 }
6610 {
6611#line 769
6612 __cil_tmp21 = data->fan_min[nr];
6613#line 769
6614 __cil_tmp22 = (unsigned int )__cil_tmp21;
6615#line 769
6616 if (__cil_tmp22 != 0U) {
6617 {
6618#line 769
6619 __cil_tmp23 = data->fan_min[nr];
6620#line 769
6621 __cil_tmp24 = (unsigned int )__cil_tmp23;
6622#line 769
6623 if (__cil_tmp24 != 255U) {
6624#line 769
6625 __cil_tmp25 = data->fan_div[nr];
6626#line 769
6627 __cil_tmp26 = (int )__cil_tmp25;
6628#line 769
6629 __cil_tmp27 = data->fan_min[nr];
6630#line 769
6631 __cil_tmp28 = (int )__cil_tmp27;
6632#line 769
6633 __cil_tmp29 = __cil_tmp28 << __cil_tmp26;
6634#line 769
6635 tmp___2 = 1350000 / __cil_tmp29;
6636 } else {
6637#line 769
6638 tmp___2 = 0;
6639 }
6640 }
6641#line 769
6642 min = tmp___2;
6643 } else {
6644#line 769
6645 min = -1;
6646 }
6647 }
6648#line 772
6649 if (nr == 0) {
6650#line 772
6651 goto case_0;
6652 } else
6653#line 773
6654 if (nr == 1) {
6655#line 773
6656 goto case_1;
6657 } else
6658#line 776
6659 if (nr == 2) {
6660#line 776
6661 goto case_2;
6662 } else
6663#line 771
6664 if (0) {
6665 case_0: ;
6666 case_1:
6667 {
6668#line 774
6669 __cil_tmp30 = (int )val;
6670#line 774
6671 tmp___3 = DIV_TO_REG(__cil_tmp30);
6672#line 774
6673 data->fan_div[nr] = (u8 )tmp___3;
6674 }
6675#line 775
6676 goto ldv_24496;
6677 case_2: ;
6678#line 777
6679 if (val <= 7UL) {
6680#line 778
6681 data->fan_div[nr] = (u8 )1U;
6682 } else {
6683#line 780
6684 data->fan_div[nr] = (u8 )3U;
6685 }
6686 } else {
6687
6688 }
6689 ldv_24496:
6690#line 782
6691 __cil_tmp31 = (unsigned long )old;
6692#line 782
6693 val = __cil_tmp31 & 128UL;
6694#line 783
6695 __cil_tmp32 = data->fan_div[0];
6696#line 783
6697 __cil_tmp33 = (unsigned long )__cil_tmp32;
6698#line 783
6699 __cil_tmp34 = __cil_tmp33 & 7UL;
6700#line 783
6701 val = __cil_tmp34 | val;
6702#line 784
6703 __cil_tmp35 = data->fan_div[1];
6704#line 784
6705 __cil_tmp36 = (int )__cil_tmp35;
6706#line 784
6707 __cil_tmp37 = __cil_tmp36 & 7;
6708#line 784
6709 __cil_tmp38 = __cil_tmp37 << 3;
6710#line 784
6711 __cil_tmp39 = (unsigned long )__cil_tmp38;
6712#line 784
6713 val = __cil_tmp39 | val;
6714 {
6715#line 785
6716 __cil_tmp40 = data->fan_div[2];
6717#line 785
6718 __cil_tmp41 = (unsigned int )__cil_tmp40;
6719#line 785
6720 if (__cil_tmp41 == 3U) {
6721#line 786
6722 val = val | 64UL;
6723 } else {
6724
6725 }
6726 }
6727 {
6728#line 787
6729 __cil_tmp42 = (u8 )11;
6730#line 787
6731 __cil_tmp43 = (u8 )val;
6732#line 787
6733 __cil_tmp44 = (int )__cil_tmp43;
6734#line 787
6735 __cil_tmp45 = (u8 )__cil_tmp44;
6736#line 787
6737 it87_write_value(data, __cil_tmp42, __cil_tmp45);
6738#line 790
6739 __cil_tmp46 = (long )min;
6740#line 790
6741 __cil_tmp47 = data->fan_div[nr];
6742#line 790
6743 __cil_tmp48 = (int )__cil_tmp47;
6744#line 790
6745 __cil_tmp49 = 1 << __cil_tmp48;
6746#line 790
6747 tmp___4 = FAN_TO_REG(__cil_tmp46, __cil_tmp49);
6748#line 790
6749 data->fan_min[nr] = (u16 )tmp___4;
6750#line 791
6751 __cil_tmp50 = (int )IT87_REG_FAN_MIN[nr];
6752#line 791
6753 __cil_tmp51 = (u8 )__cil_tmp50;
6754#line 791
6755 __cil_tmp52 = data->fan_min[nr];
6756#line 791
6757 __cil_tmp53 = (u8 )__cil_tmp52;
6758#line 791
6759 __cil_tmp54 = (int )__cil_tmp53;
6760#line 791
6761 __cil_tmp55 = (u8 )__cil_tmp54;
6762#line 791
6763 it87_write_value(data, __cil_tmp51, __cil_tmp55);
6764#line 793
6765 __cil_tmp56 = & data->update_lock;
6766#line 793
6767 mutex_unlock(__cil_tmp56);
6768 }
6769#line 794
6770 return ((ssize_t )count);
6771}
6772}
6773#line 798 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
6774static int check_trip_points(struct device *dev , int nr )
6775{ struct it87_data const *data ;
6776 void *tmp ;
6777 int i ;
6778 int err ;
6779 int tmp___0 ;
6780 struct device const *__cil_tmp8 ;
6781 s8 __cil_tmp9 ;
6782 int __cil_tmp10 ;
6783 s8 __cil_tmp11 ;
6784 int __cil_tmp12 ;
6785 u8 __cil_tmp13 ;
6786 int __cil_tmp14 ;
6787 u8 __cil_tmp15 ;
6788 int __cil_tmp16 ;
6789 struct device const *__cil_tmp17 ;
6790 struct device const *__cil_tmp18 ;
6791
6792 {
6793 {
6794#line 800
6795 __cil_tmp8 = (struct device const *)dev;
6796#line 800
6797 tmp = dev_get_drvdata(__cil_tmp8);
6798#line 800
6799 data = (struct it87_data const *)tmp;
6800#line 801
6801 err = 0;
6802#line 803
6803 tmp___0 = has_old_autopwm(data);
6804 }
6805#line 803
6806 if (tmp___0 != 0) {
6807#line 804
6808 i = 0;
6809#line 804
6810 goto ldv_24506;
6811 ldv_24505: ;
6812 {
6813#line 805
6814 __cil_tmp9 = data->auto_temp[nr][i + 1];
6815#line 805
6816 __cil_tmp10 = (int )__cil_tmp9;
6817#line 805
6818 __cil_tmp11 = data->auto_temp[nr][i];
6819#line 805
6820 __cil_tmp12 = (int )__cil_tmp11;
6821#line 805
6822 if (__cil_tmp12 > __cil_tmp10) {
6823#line 806
6824 err = -22;
6825 } else {
6826
6827 }
6828 }
6829#line 804
6830 i = i + 1;
6831 ldv_24506: ;
6832#line 804
6833 if (i <= 2) {
6834#line 805
6835 goto ldv_24505;
6836 } else {
6837#line 807
6838 goto ldv_24507;
6839 }
6840 ldv_24507:
6841#line 808
6842 i = 0;
6843#line 808
6844 goto ldv_24509;
6845 ldv_24508: ;
6846 {
6847#line 809
6848 __cil_tmp13 = data->auto_pwm[nr][i + 1];
6849#line 809
6850 __cil_tmp14 = (int )__cil_tmp13;
6851#line 809
6852 __cil_tmp15 = data->auto_pwm[nr][i];
6853#line 809
6854 __cil_tmp16 = (int )__cil_tmp15;
6855#line 809
6856 if (__cil_tmp16 > __cil_tmp14) {
6857#line 810
6858 err = -22;
6859 } else {
6860
6861 }
6862 }
6863#line 808
6864 i = i + 1;
6865 ldv_24509: ;
6866#line 808
6867 if (i <= 1) {
6868#line 809
6869 goto ldv_24508;
6870 } else {
6871#line 811
6872 goto ldv_24510;
6873 }
6874 ldv_24510: ;
6875 } else {
6876
6877 }
6878#line 814
6879 if (err != 0) {
6880 {
6881#line 815
6882 __cil_tmp17 = (struct device const *)dev;
6883#line 815
6884 dev_err(__cil_tmp17, "Inconsistent trip points, not switching to automatic mode\n");
6885#line 817
6886 __cil_tmp18 = (struct device const *)dev;
6887#line 817
6888 dev_err(__cil_tmp18, "Adjust the trip points and try again\n");
6889 }
6890 } else {
6891
6892 }
6893#line 819
6894 return (err);
6895}
6896}
6897#line 822 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
6898static ssize_t set_pwm_enable(struct device *dev , struct device_attribute *attr ,
6899 char const *buf , size_t count )
6900{ struct sensor_device_attribute *sensor_attr ;
6901 struct device_attribute const *__mptr ;
6902 int nr ;
6903 struct it87_data *data ;
6904 void *tmp ;
6905 long val ;
6906 int tmp___0 ;
6907 int tmp___1 ;
6908 int tmp___2 ;
6909 struct device const *__cil_tmp14 ;
6910 struct mutex *__cil_tmp15 ;
6911 u8 __cil_tmp16 ;
6912 u8 __cil_tmp17 ;
6913 signed char __cil_tmp18 ;
6914 int __cil_tmp19 ;
6915 int __cil_tmp20 ;
6916 signed char __cil_tmp21 ;
6917 int __cil_tmp22 ;
6918 int __cil_tmp23 ;
6919 u8 __cil_tmp24 ;
6920 int __cil_tmp25 ;
6921 u8 __cil_tmp26 ;
6922 int __cil_tmp27 ;
6923 signed char __cil_tmp28 ;
6924 int __cil_tmp29 ;
6925 int __cil_tmp30 ;
6926 u8 __cil_tmp31 ;
6927 signed char __cil_tmp32 ;
6928 int __cil_tmp33 ;
6929 int __cil_tmp34 ;
6930 u8 __cil_tmp35 ;
6931 u8 __cil_tmp36 ;
6932 int __cil_tmp37 ;
6933 u8 __cil_tmp38 ;
6934 enum chips __cil_tmp39 ;
6935 unsigned int __cil_tmp40 ;
6936 u8 __cil_tmp41 ;
6937 unsigned int __cil_tmp42 ;
6938 unsigned int __cil_tmp43 ;
6939 u8 __cil_tmp44 ;
6940 unsigned int __cil_tmp45 ;
6941 unsigned int __cil_tmp46 ;
6942 int __cil_tmp47 ;
6943 u8 __cil_tmp48 ;
6944 u8 __cil_tmp49 ;
6945 int __cil_tmp50 ;
6946 u8 __cil_tmp51 ;
6947 int __cil_tmp52 ;
6948 signed char __cil_tmp53 ;
6949 int __cil_tmp54 ;
6950 u8 __cil_tmp55 ;
6951 signed char __cil_tmp56 ;
6952 int __cil_tmp57 ;
6953 int __cil_tmp58 ;
6954 u8 __cil_tmp59 ;
6955 u8 __cil_tmp60 ;
6956 int __cil_tmp61 ;
6957 u8 __cil_tmp62 ;
6958 struct mutex *__cil_tmp63 ;
6959
6960 {
6961 {
6962#line 825
6963 __mptr = (struct device_attribute const *)attr;
6964#line 825
6965 sensor_attr = (struct sensor_device_attribute *)__mptr;
6966#line 826
6967 nr = sensor_attr->index;
6968#line 828
6969 __cil_tmp14 = (struct device const *)dev;
6970#line 828
6971 tmp = dev_get_drvdata(__cil_tmp14);
6972#line 828
6973 data = (struct it87_data *)tmp;
6974#line 831
6975 tmp___0 = kstrtol(buf, 10U, & val);
6976 }
6977#line 831
6978 if (tmp___0 < 0) {
6979#line 832
6980 return (-22L);
6981 } else
6982#line 831
6983 if (val < 0L) {
6984#line 832
6985 return (-22L);
6986 } else
6987#line 831
6988 if (val > 2L) {
6989#line 832
6990 return (-22L);
6991 } else {
6992
6993 }
6994#line 835
6995 if (val == 2L) {
6996 {
6997#line 836
6998 tmp___1 = check_trip_points(dev, nr);
6999 }
7000#line 836
7001 if (tmp___1 < 0) {
7002#line 837
7003 return (-22L);
7004 } else {
7005
7006 }
7007 } else {
7008
7009 }
7010 {
7011#line 840
7012 __cil_tmp15 = & data->update_lock;
7013#line 840
7014 mutex_lock_nested(__cil_tmp15, 0U);
7015 }
7016#line 842
7017 if (val == 0L) {
7018 {
7019#line 845
7020 __cil_tmp16 = (u8 )20;
7021#line 845
7022 tmp___2 = it87_read_value(data, __cil_tmp16);
7023#line 846
7024 __cil_tmp17 = (u8 )20;
7025#line 846
7026 __cil_tmp18 = (signed char )tmp___2;
7027#line 846
7028 __cil_tmp19 = (int )__cil_tmp18;
7029#line 846
7030 __cil_tmp20 = 1 << nr;
7031#line 846
7032 __cil_tmp21 = (signed char )__cil_tmp20;
7033#line 846
7034 __cil_tmp22 = (int )__cil_tmp21;
7035#line 846
7036 __cil_tmp23 = __cil_tmp22 | __cil_tmp19;
7037#line 846
7038 __cil_tmp24 = (u8 )__cil_tmp23;
7039#line 846
7040 __cil_tmp25 = (int )__cil_tmp24;
7041#line 846
7042 __cil_tmp26 = (u8 )__cil_tmp25;
7043#line 846
7044 it87_write_value(data, __cil_tmp17, __cil_tmp26);
7045#line 848
7046 __cil_tmp27 = 1 << nr;
7047#line 848
7048 __cil_tmp28 = (signed char )__cil_tmp27;
7049#line 848
7050 __cil_tmp29 = (int )__cil_tmp28;
7051#line 848
7052 __cil_tmp30 = ~ __cil_tmp29;
7053#line 848
7054 __cil_tmp31 = data->fan_main_ctrl;
7055#line 848
7056 __cil_tmp32 = (signed char )__cil_tmp31;
7057#line 848
7058 __cil_tmp33 = (int )__cil_tmp32;
7059#line 848
7060 __cil_tmp34 = __cil_tmp33 & __cil_tmp30;
7061#line 848
7062 data->fan_main_ctrl = (u8 )__cil_tmp34;
7063#line 849
7064 __cil_tmp35 = (u8 )19;
7065#line 849
7066 __cil_tmp36 = data->fan_main_ctrl;
7067#line 849
7068 __cil_tmp37 = (int )__cil_tmp36;
7069#line 849
7070 __cil_tmp38 = (u8 )__cil_tmp37;
7071#line 849
7072 it87_write_value(data, __cil_tmp35, __cil_tmp38);
7073 }
7074 } else {
7075#line 852
7076 if (val == 1L) {
7077 {
7078#line 853
7079 __cil_tmp39 = data->type;
7080#line 853
7081 __cil_tmp40 = (unsigned int )__cil_tmp39;
7082#line 853
7083 if (__cil_tmp40 == 5U) {
7084#line 853
7085 data->pwm_ctrl[nr] = data->pwm_temp_map[nr];
7086 } else {
7087#line 853
7088 data->pwm_ctrl[nr] = data->pwm_duty[nr];
7089 }
7090 }
7091 } else {
7092#line 857
7093 __cil_tmp41 = data->pwm_temp_map[nr];
7094#line 857
7095 __cil_tmp42 = (unsigned int )__cil_tmp41;
7096#line 857
7097 __cil_tmp43 = __cil_tmp42 | 128U;
7098#line 857
7099 data->pwm_ctrl[nr] = (u8 )__cil_tmp43;
7100 }
7101 {
7102#line 858
7103 __cil_tmp44 = (u8 )nr;
7104#line 858
7105 __cil_tmp45 = (unsigned int )__cil_tmp44;
7106#line 858
7107 __cil_tmp46 = __cil_tmp45 + 21U;
7108#line 858
7109 __cil_tmp47 = (int )__cil_tmp46;
7110#line 858
7111 __cil_tmp48 = (u8 )__cil_tmp47;
7112#line 858
7113 __cil_tmp49 = data->pwm_ctrl[nr];
7114#line 858
7115 __cil_tmp50 = (int )__cil_tmp49;
7116#line 858
7117 __cil_tmp51 = (u8 )__cil_tmp50;
7118#line 858
7119 it87_write_value(data, __cil_tmp48, __cil_tmp51);
7120#line 860
7121 __cil_tmp52 = 1 << nr;
7122#line 860
7123 __cil_tmp53 = (signed char )__cil_tmp52;
7124#line 860
7125 __cil_tmp54 = (int )__cil_tmp53;
7126#line 860
7127 __cil_tmp55 = data->fan_main_ctrl;
7128#line 860
7129 __cil_tmp56 = (signed char )__cil_tmp55;
7130#line 860
7131 __cil_tmp57 = (int )__cil_tmp56;
7132#line 860
7133 __cil_tmp58 = __cil_tmp57 | __cil_tmp54;
7134#line 860
7135 data->fan_main_ctrl = (u8 )__cil_tmp58;
7136#line 861
7137 __cil_tmp59 = (u8 )19;
7138#line 861
7139 __cil_tmp60 = data->fan_main_ctrl;
7140#line 861
7141 __cil_tmp61 = (int )__cil_tmp60;
7142#line 861
7143 __cil_tmp62 = (u8 )__cil_tmp61;
7144#line 861
7145 it87_write_value(data, __cil_tmp59, __cil_tmp62);
7146 }
7147 }
7148 {
7149#line 865
7150 __cil_tmp63 = & data->update_lock;
7151#line 865
7152 mutex_unlock(__cil_tmp63);
7153 }
7154#line 866
7155 return ((ssize_t )count);
7156}
7157}
7158#line 868 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
7159static ssize_t set_pwm(struct device *dev , struct device_attribute *attr , char const *buf ,
7160 size_t count )
7161{ struct sensor_device_attribute *sensor_attr ;
7162 struct device_attribute const *__mptr ;
7163 int nr ;
7164 struct it87_data *data ;
7165 void *tmp ;
7166 long val ;
7167 int tmp___0 ;
7168 struct device const *__cil_tmp12 ;
7169 struct mutex *__cil_tmp13 ;
7170 enum chips __cil_tmp14 ;
7171 unsigned int __cil_tmp15 ;
7172 u8 __cil_tmp16 ;
7173 signed char __cil_tmp17 ;
7174 int __cil_tmp18 ;
7175 struct mutex *__cil_tmp19 ;
7176 struct it87_data const *__cil_tmp20 ;
7177 u8 __cil_tmp21 ;
7178 unsigned int __cil_tmp22 ;
7179 unsigned int __cil_tmp23 ;
7180 unsigned int __cil_tmp24 ;
7181 int __cil_tmp25 ;
7182 u8 __cil_tmp26 ;
7183 u8 __cil_tmp27 ;
7184 int __cil_tmp28 ;
7185 u8 __cil_tmp29 ;
7186 struct it87_data const *__cil_tmp30 ;
7187 u8 __cil_tmp31 ;
7188 signed char __cil_tmp32 ;
7189 int __cil_tmp33 ;
7190 u8 __cil_tmp34 ;
7191 unsigned int __cil_tmp35 ;
7192 unsigned int __cil_tmp36 ;
7193 int __cil_tmp37 ;
7194 u8 __cil_tmp38 ;
7195 u8 __cil_tmp39 ;
7196 int __cil_tmp40 ;
7197 u8 __cil_tmp41 ;
7198 struct mutex *__cil_tmp42 ;
7199
7200 {
7201 {
7202#line 871
7203 __mptr = (struct device_attribute const *)attr;
7204#line 871
7205 sensor_attr = (struct sensor_device_attribute *)__mptr;
7206#line 872
7207 nr = sensor_attr->index;
7208#line 874
7209 __cil_tmp12 = (struct device const *)dev;
7210#line 874
7211 tmp = dev_get_drvdata(__cil_tmp12);
7212#line 874
7213 data = (struct it87_data *)tmp;
7214#line 877
7215 tmp___0 = kstrtol(buf, 10U, & val);
7216 }
7217#line 877
7218 if (tmp___0 < 0) {
7219#line 878
7220 return (-22L);
7221 } else
7222#line 877
7223 if (val < 0L) {
7224#line 878
7225 return (-22L);
7226 } else
7227#line 877
7228 if (val > 255L) {
7229#line 878
7230 return (-22L);
7231 } else {
7232
7233 }
7234 {
7235#line 880
7236 __cil_tmp13 = & data->update_lock;
7237#line 880
7238 mutex_lock_nested(__cil_tmp13, 0U);
7239 }
7240 {
7241#line 881
7242 __cil_tmp14 = data->type;
7243#line 881
7244 __cil_tmp15 = (unsigned int )__cil_tmp14;
7245#line 881
7246 if (__cil_tmp15 == 5U) {
7247 {
7248#line 884
7249 __cil_tmp16 = data->pwm_ctrl[nr];
7250#line 884
7251 __cil_tmp17 = (signed char )__cil_tmp16;
7252#line 884
7253 __cil_tmp18 = (int )__cil_tmp17;
7254#line 884
7255 if (__cil_tmp18 < 0) {
7256 {
7257#line 885
7258 __cil_tmp19 = & data->update_lock;
7259#line 885
7260 mutex_unlock(__cil_tmp19);
7261 }
7262#line 886
7263 return (-16L);
7264 } else {
7265
7266 }
7267 }
7268 {
7269#line 888
7270 __cil_tmp20 = (struct it87_data const *)data;
7271#line 888
7272 data->pwm_duty[nr] = pwm_to_reg(__cil_tmp20, val);
7273#line 889
7274 __cil_tmp21 = (u8 )nr;
7275#line 889
7276 __cil_tmp22 = (unsigned int )__cil_tmp21;
7277#line 889
7278 __cil_tmp23 = __cil_tmp22 * 8U;
7279#line 889
7280 __cil_tmp24 = __cil_tmp23 + 99U;
7281#line 889
7282 __cil_tmp25 = (int )__cil_tmp24;
7283#line 889
7284 __cil_tmp26 = (u8 )__cil_tmp25;
7285#line 889
7286 __cil_tmp27 = data->pwm_duty[nr];
7287#line 889
7288 __cil_tmp28 = (int )__cil_tmp27;
7289#line 889
7290 __cil_tmp29 = (u8 )__cil_tmp28;
7291#line 889
7292 it87_write_value(data, __cil_tmp26, __cil_tmp29);
7293 }
7294 } else {
7295 {
7296#line 892
7297 __cil_tmp30 = (struct it87_data const *)data;
7298#line 892
7299 data->pwm_duty[nr] = pwm_to_reg(__cil_tmp30, val);
7300 }
7301 {
7302#line 895
7303 __cil_tmp31 = data->pwm_ctrl[nr];
7304#line 895
7305 __cil_tmp32 = (signed char )__cil_tmp31;
7306#line 895
7307 __cil_tmp33 = (int )__cil_tmp32;
7308#line 895
7309 if (__cil_tmp33 >= 0) {
7310 {
7311#line 896
7312 data->pwm_ctrl[nr] = data->pwm_duty[nr];
7313#line 897
7314 __cil_tmp34 = (u8 )nr;
7315#line 897
7316 __cil_tmp35 = (unsigned int )__cil_tmp34;
7317#line 897
7318 __cil_tmp36 = __cil_tmp35 + 21U;
7319#line 897
7320 __cil_tmp37 = (int )__cil_tmp36;
7321#line 897
7322 __cil_tmp38 = (u8 )__cil_tmp37;
7323#line 897
7324 __cil_tmp39 = data->pwm_ctrl[nr];
7325#line 897
7326 __cil_tmp40 = (int )__cil_tmp39;
7327#line 897
7328 __cil_tmp41 = (u8 )__cil_tmp40;
7329#line 897
7330 it87_write_value(data, __cil_tmp38, __cil_tmp41);
7331 }
7332 } else {
7333
7334 }
7335 }
7336 }
7337 }
7338 {
7339#line 901
7340 __cil_tmp42 = & data->update_lock;
7341#line 901
7342 mutex_unlock(__cil_tmp42);
7343 }
7344#line 902
7345 return ((ssize_t )count);
7346}
7347}
7348#line 904 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
7349static ssize_t set_pwm_freq(struct device *dev , struct device_attribute *attr , char const *buf ,
7350 size_t count )
7351{ struct it87_data *data ;
7352 void *tmp ;
7353 unsigned long val ;
7354 int i ;
7355 int tmp___0 ;
7356 int tmp___1 ;
7357 struct device const *__cil_tmp11 ;
7358 unsigned int __cil_tmp12 ;
7359 unsigned int __cil_tmp13 ;
7360 unsigned int __cil_tmp14 ;
7361 unsigned int __cil_tmp15 ;
7362 unsigned long __cil_tmp16 ;
7363 struct mutex *__cil_tmp17 ;
7364 u8 __cil_tmp18 ;
7365 u8 __cil_tmp19 ;
7366 unsigned int __cil_tmp20 ;
7367 unsigned int __cil_tmp21 ;
7368 int __cil_tmp22 ;
7369 signed char __cil_tmp23 ;
7370 int __cil_tmp24 ;
7371 u8 __cil_tmp25 ;
7372 signed char __cil_tmp26 ;
7373 int __cil_tmp27 ;
7374 int __cil_tmp28 ;
7375 u8 __cil_tmp29 ;
7376 u8 __cil_tmp30 ;
7377 int __cil_tmp31 ;
7378 u8 __cil_tmp32 ;
7379 struct mutex *__cil_tmp33 ;
7380
7381 {
7382 {
7383#line 907
7384 __cil_tmp11 = (struct device const *)dev;
7385#line 907
7386 tmp = dev_get_drvdata(__cil_tmp11);
7387#line 907
7388 data = (struct it87_data *)tmp;
7389#line 911
7390 tmp___0 = kstrtoul(buf, 10U, & val);
7391 }
7392#line 911
7393 if (tmp___0 < 0) {
7394#line 912
7395 return (-22L);
7396 } else {
7397
7398 }
7399#line 915
7400 i = 0;
7401#line 915
7402 goto ldv_24547;
7403 ldv_24546: ;
7404 {
7405#line 916
7406 __cil_tmp12 = (unsigned int )pwm_freq[i + 1];
7407#line 916
7408 __cil_tmp13 = (unsigned int )pwm_freq[i];
7409#line 916
7410 __cil_tmp14 = __cil_tmp13 + __cil_tmp12;
7411#line 916
7412 __cil_tmp15 = __cil_tmp14 / 2U;
7413#line 916
7414 __cil_tmp16 = (unsigned long )__cil_tmp15;
7415#line 916
7416 if (__cil_tmp16 < val) {
7417#line 917
7418 goto ldv_24545;
7419 } else {
7420
7421 }
7422 }
7423#line 915
7424 i = i + 1;
7425 ldv_24547: ;
7426#line 915
7427 if (i <= 6) {
7428#line 916
7429 goto ldv_24546;
7430 } else {
7431#line 918
7432 goto ldv_24545;
7433 }
7434 ldv_24545:
7435 {
7436#line 920
7437 __cil_tmp17 = & data->update_lock;
7438#line 920
7439 mutex_lock_nested(__cil_tmp17, 0U);
7440#line 921
7441 __cil_tmp18 = (u8 )20;
7442#line 921
7443 tmp___1 = it87_read_value(data, __cil_tmp18);
7444#line 921
7445 __cil_tmp19 = (u8 )tmp___1;
7446#line 921
7447 __cil_tmp20 = (unsigned int )__cil_tmp19;
7448#line 921
7449 __cil_tmp21 = __cil_tmp20 & 143U;
7450#line 921
7451 data->fan_ctl = (u8 )__cil_tmp21;
7452#line 922
7453 __cil_tmp22 = i << 4;
7454#line 922
7455 __cil_tmp23 = (signed char )__cil_tmp22;
7456#line 922
7457 __cil_tmp24 = (int )__cil_tmp23;
7458#line 922
7459 __cil_tmp25 = data->fan_ctl;
7460#line 922
7461 __cil_tmp26 = (signed char )__cil_tmp25;
7462#line 922
7463 __cil_tmp27 = (int )__cil_tmp26;
7464#line 922
7465 __cil_tmp28 = __cil_tmp27 | __cil_tmp24;
7466#line 922
7467 data->fan_ctl = (u8 )__cil_tmp28;
7468#line 923
7469 __cil_tmp29 = (u8 )20;
7470#line 923
7471 __cil_tmp30 = data->fan_ctl;
7472#line 923
7473 __cil_tmp31 = (int )__cil_tmp30;
7474#line 923
7475 __cil_tmp32 = (u8 )__cil_tmp31;
7476#line 923
7477 it87_write_value(data, __cil_tmp29, __cil_tmp32);
7478#line 924
7479 __cil_tmp33 = & data->update_lock;
7480#line 924
7481 mutex_unlock(__cil_tmp33);
7482 }
7483#line 926
7484 return ((ssize_t )count);
7485}
7486}
7487#line 928 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
7488static ssize_t show_pwm_temp_map(struct device *dev , struct device_attribute *attr ,
7489 char *buf )
7490{ struct sensor_device_attribute *sensor_attr ;
7491 struct device_attribute const *__mptr ;
7492 int nr ;
7493 struct it87_data *data ;
7494 struct it87_data *tmp ;
7495 int map ;
7496 int tmp___0 ;
7497 u8 __cil_tmp11 ;
7498 unsigned int __cil_tmp12 ;
7499 u8 __cil_tmp13 ;
7500 int __cil_tmp14 ;
7501
7502 {
7503 {
7504#line 931
7505 __mptr = (struct device_attribute const *)attr;
7506#line 931
7507 sensor_attr = (struct sensor_device_attribute *)__mptr;
7508#line 932
7509 nr = sensor_attr->index;
7510#line 934
7511 tmp = it87_update_device(dev);
7512#line 934
7513 data = tmp;
7514 }
7515 {
7516#line 937
7517 __cil_tmp11 = data->pwm_temp_map[nr];
7518#line 937
7519 __cil_tmp12 = (unsigned int )__cil_tmp11;
7520#line 937
7521 if (__cil_tmp12 <= 2U) {
7522#line 938
7523 __cil_tmp13 = data->pwm_temp_map[nr];
7524#line 938
7525 __cil_tmp14 = (int )__cil_tmp13;
7526#line 938
7527 map = 1 << __cil_tmp14;
7528 } else {
7529#line 940
7530 map = 0;
7531 }
7532 }
7533 {
7534#line 941
7535 tmp___0 = sprintf(buf, "%d\n", map);
7536 }
7537#line 941
7538 return ((ssize_t )tmp___0);
7539}
7540}
7541#line 943 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
7542static ssize_t set_pwm_temp_map(struct device *dev , struct device_attribute *attr ,
7543 char const *buf , size_t count )
7544{ struct sensor_device_attribute *sensor_attr ;
7545 struct device_attribute const *__mptr ;
7546 int nr ;
7547 struct it87_data *data ;
7548 void *tmp ;
7549 long val ;
7550 u8 reg ;
7551 int tmp___0 ;
7552 int tmp___1 ;
7553 struct device const *__cil_tmp14 ;
7554 struct it87_data const *__cil_tmp15 ;
7555 struct device const *__cil_tmp16 ;
7556 int __cil_tmp17 ;
7557 int __cil_tmp18 ;
7558 int __cil_tmp19 ;
7559 struct mutex *__cil_tmp20 ;
7560 u8 __cil_tmp21 ;
7561 signed char __cil_tmp22 ;
7562 int __cil_tmp23 ;
7563 u8 __cil_tmp24 ;
7564 unsigned int __cil_tmp25 ;
7565 unsigned int __cil_tmp26 ;
7566 u8 __cil_tmp27 ;
7567 unsigned int __cil_tmp28 ;
7568 unsigned int __cil_tmp29 ;
7569 int __cil_tmp30 ;
7570 u8 __cil_tmp31 ;
7571 u8 __cil_tmp32 ;
7572 int __cil_tmp33 ;
7573 u8 __cil_tmp34 ;
7574 struct mutex *__cil_tmp35 ;
7575
7576 {
7577 {
7578#line 946
7579 __mptr = (struct device_attribute const *)attr;
7580#line 946
7581 sensor_attr = (struct sensor_device_attribute *)__mptr;
7582#line 947
7583 nr = sensor_attr->index;
7584#line 949
7585 __cil_tmp14 = (struct device const *)dev;
7586#line 949
7587 tmp = dev_get_drvdata(__cil_tmp14);
7588#line 949
7589 data = (struct it87_data *)tmp;
7590#line 955
7591 __cil_tmp15 = (struct it87_data const *)data;
7592#line 955
7593 tmp___0 = has_old_autopwm(__cil_tmp15);
7594 }
7595#line 955
7596 if (tmp___0 == 0) {
7597 {
7598#line 956
7599 __cil_tmp16 = (struct device const *)dev;
7600#line 956
7601 dev_notice(__cil_tmp16, "Mapping change disabled for safety reasons\n");
7602 }
7603#line 957
7604 return (-22L);
7605 } else {
7606
7607 }
7608 {
7609#line 960
7610 tmp___1 = kstrtol(buf, 10U, & val);
7611 }
7612#line 960
7613 if (tmp___1 < 0) {
7614#line 961
7615 return (-22L);
7616 } else {
7617
7618 }
7619 {
7620#line 964
7621 __cil_tmp17 = (int )val;
7622#line 964
7623 if (__cil_tmp17 == 1) {
7624#line 964
7625 goto case_1;
7626 } else {
7627 {
7628#line 967
7629 __cil_tmp18 = (int )val;
7630#line 967
7631 if (__cil_tmp18 == 2) {
7632#line 967
7633 goto case_2;
7634 } else {
7635 {
7636#line 970
7637 __cil_tmp19 = (int )val;
7638#line 970
7639 if (__cil_tmp19 == 4) {
7640#line 970
7641 goto case_4;
7642 } else {
7643#line 973
7644 goto switch_default;
7645#line 963
7646 if (0) {
7647 case_1:
7648#line 965
7649 reg = (u8 )0U;
7650#line 966
7651 goto ldv_24573;
7652 case_2:
7653#line 968
7654 reg = (u8 )1U;
7655#line 969
7656 goto ldv_24573;
7657 case_4:
7658#line 971
7659 reg = (u8 )2U;
7660#line 972
7661 goto ldv_24573;
7662 switch_default: ;
7663#line 974
7664 return (-22L);
7665 } else {
7666
7667 }
7668 }
7669 }
7670 }
7671 }
7672 }
7673 }
7674 ldv_24573:
7675 {
7676#line 977
7677 __cil_tmp20 = & data->update_lock;
7678#line 977
7679 mutex_lock_nested(__cil_tmp20, 0U);
7680#line 978
7681 data->pwm_temp_map[nr] = reg;
7682 }
7683 {
7684#line 981
7685 __cil_tmp21 = data->pwm_ctrl[nr];
7686#line 981
7687 __cil_tmp22 = (signed char )__cil_tmp21;
7688#line 981
7689 __cil_tmp23 = (int )__cil_tmp22;
7690#line 981
7691 if (__cil_tmp23 < 0) {
7692 {
7693#line 982
7694 __cil_tmp24 = data->pwm_temp_map[nr];
7695#line 982
7696 __cil_tmp25 = (unsigned int )__cil_tmp24;
7697#line 982
7698 __cil_tmp26 = __cil_tmp25 | 128U;
7699#line 982
7700 data->pwm_ctrl[nr] = (u8 )__cil_tmp26;
7701#line 983
7702 __cil_tmp27 = (u8 )nr;
7703#line 983
7704 __cil_tmp28 = (unsigned int )__cil_tmp27;
7705#line 983
7706 __cil_tmp29 = __cil_tmp28 + 21U;
7707#line 983
7708 __cil_tmp30 = (int )__cil_tmp29;
7709#line 983
7710 __cil_tmp31 = (u8 )__cil_tmp30;
7711#line 983
7712 __cil_tmp32 = data->pwm_ctrl[nr];
7713#line 983
7714 __cil_tmp33 = (int )__cil_tmp32;
7715#line 983
7716 __cil_tmp34 = (u8 )__cil_tmp33;
7717#line 983
7718 it87_write_value(data, __cil_tmp31, __cil_tmp34);
7719 }
7720 } else {
7721
7722 }
7723 }
7724 {
7725#line 985
7726 __cil_tmp35 = & data->update_lock;
7727#line 985
7728 mutex_unlock(__cil_tmp35);
7729 }
7730#line 986
7731 return ((ssize_t )count);
7732}
7733}
7734#line 989 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
7735static ssize_t show_auto_pwm(struct device *dev , struct device_attribute *attr ,
7736 char *buf )
7737{ struct it87_data *data ;
7738 struct it87_data *tmp ;
7739 struct sensor_device_attribute_2 *sensor_attr ;
7740 struct device_attribute const *__mptr ;
7741 int nr ;
7742 int point ;
7743 int tmp___0 ;
7744 int tmp___1 ;
7745 u8 __cil_tmp12 ;
7746 u8 __cil_tmp13 ;
7747 struct it87_data const *__cil_tmp14 ;
7748 u8 __cil_tmp15 ;
7749 int __cil_tmp16 ;
7750 u8 __cil_tmp17 ;
7751
7752 {
7753 {
7754#line 992
7755 tmp = it87_update_device(dev);
7756#line 992
7757 data = tmp;
7758#line 994
7759 __mptr = (struct device_attribute const *)attr;
7760#line 994
7761 sensor_attr = (struct sensor_device_attribute_2 *)__mptr;
7762#line 995
7763 __cil_tmp12 = sensor_attr->nr;
7764#line 995
7765 nr = (int )__cil_tmp12;
7766#line 996
7767 __cil_tmp13 = sensor_attr->index;
7768#line 996
7769 point = (int )__cil_tmp13;
7770#line 998
7771 __cil_tmp14 = (struct it87_data const *)data;
7772#line 998
7773 __cil_tmp15 = data->auto_pwm[nr][point];
7774#line 998
7775 __cil_tmp16 = (int )__cil_tmp15;
7776#line 998
7777 __cil_tmp17 = (u8 )__cil_tmp16;
7778#line 998
7779 tmp___0 = pwm_from_reg(__cil_tmp14, __cil_tmp17);
7780#line 998
7781 tmp___1 = sprintf(buf, "%d\n", tmp___0);
7782 }
7783#line 998
7784 return ((ssize_t )tmp___1);
7785}
7786}
7787#line 1002 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
7788static ssize_t set_auto_pwm(struct device *dev , struct device_attribute *attr , char const *buf ,
7789 size_t count )
7790{ struct it87_data *data ;
7791 void *tmp ;
7792 struct sensor_device_attribute_2 *sensor_attr ;
7793 struct device_attribute const *__mptr ;
7794 int nr ;
7795 int point ;
7796 long val ;
7797 int tmp___0 ;
7798 struct device const *__cil_tmp13 ;
7799 u8 __cil_tmp14 ;
7800 u8 __cil_tmp15 ;
7801 struct mutex *__cil_tmp16 ;
7802 struct it87_data const *__cil_tmp17 ;
7803 u8 __cil_tmp18 ;
7804 unsigned int __cil_tmp19 ;
7805 u8 __cil_tmp20 ;
7806 unsigned int __cil_tmp21 ;
7807 unsigned int __cil_tmp22 ;
7808 unsigned int __cil_tmp23 ;
7809 unsigned int __cil_tmp24 ;
7810 int __cil_tmp25 ;
7811 u8 __cil_tmp26 ;
7812 u8 __cil_tmp27 ;
7813 int __cil_tmp28 ;
7814 u8 __cil_tmp29 ;
7815 struct mutex *__cil_tmp30 ;
7816
7817 {
7818 {
7819#line 1005
7820 __cil_tmp13 = (struct device const *)dev;
7821#line 1005
7822 tmp = dev_get_drvdata(__cil_tmp13);
7823#line 1005
7824 data = (struct it87_data *)tmp;
7825#line 1007
7826 __mptr = (struct device_attribute const *)attr;
7827#line 1007
7828 sensor_attr = (struct sensor_device_attribute_2 *)__mptr;
7829#line 1008
7830 __cil_tmp14 = sensor_attr->nr;
7831#line 1008
7832 nr = (int )__cil_tmp14;
7833#line 1009
7834 __cil_tmp15 = sensor_attr->index;
7835#line 1009
7836 point = (int )__cil_tmp15;
7837#line 1012
7838 tmp___0 = kstrtol(buf, 10U, & val);
7839 }
7840#line 1012
7841 if (tmp___0 < 0) {
7842#line 1013
7843 return (-22L);
7844 } else
7845#line 1012
7846 if (val < 0L) {
7847#line 1013
7848 return (-22L);
7849 } else
7850#line 1012
7851 if (val > 255L) {
7852#line 1013
7853 return (-22L);
7854 } else {
7855
7856 }
7857 {
7858#line 1015
7859 __cil_tmp16 = & data->update_lock;
7860#line 1015
7861 mutex_lock_nested(__cil_tmp16, 0U);
7862#line 1016
7863 __cil_tmp17 = (struct it87_data const *)data;
7864#line 1016
7865 data->auto_pwm[nr][point] = pwm_to_reg(__cil_tmp17, val);
7866#line 1017
7867 __cil_tmp18 = (u8 )point;
7868#line 1017
7869 __cil_tmp19 = (unsigned int )__cil_tmp18;
7870#line 1017
7871 __cil_tmp20 = (u8 )nr;
7872#line 1017
7873 __cil_tmp21 = (unsigned int )__cil_tmp20;
7874#line 1017
7875 __cil_tmp22 = __cil_tmp21 * 8U;
7876#line 1017
7877 __cil_tmp23 = __cil_tmp22 + __cil_tmp19;
7878#line 1017
7879 __cil_tmp24 = __cil_tmp23 + 101U;
7880#line 1017
7881 __cil_tmp25 = (int )__cil_tmp24;
7882#line 1017
7883 __cil_tmp26 = (u8 )__cil_tmp25;
7884#line 1017
7885 __cil_tmp27 = data->auto_pwm[nr][point];
7886#line 1017
7887 __cil_tmp28 = (int )__cil_tmp27;
7888#line 1017
7889 __cil_tmp29 = (u8 )__cil_tmp28;
7890#line 1017
7891 it87_write_value(data, __cil_tmp26, __cil_tmp29);
7892#line 1019
7893 __cil_tmp30 = & data->update_lock;
7894#line 1019
7895 mutex_unlock(__cil_tmp30);
7896 }
7897#line 1020
7898 return ((ssize_t )count);
7899}
7900}
7901#line 1023 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
7902static ssize_t show_auto_temp(struct device *dev , struct device_attribute *attr ,
7903 char *buf )
7904{ struct it87_data *data ;
7905 struct it87_data *tmp ;
7906 struct sensor_device_attribute_2 *sensor_attr ;
7907 struct device_attribute const *__mptr ;
7908 int nr ;
7909 int point ;
7910 int tmp___0 ;
7911 u8 __cil_tmp11 ;
7912 u8 __cil_tmp12 ;
7913 s8 __cil_tmp13 ;
7914 int __cil_tmp14 ;
7915 int __cil_tmp15 ;
7916
7917 {
7918 {
7919#line 1026
7920 tmp = it87_update_device(dev);
7921#line 1026
7922 data = tmp;
7923#line 1028
7924 __mptr = (struct device_attribute const *)attr;
7925#line 1028
7926 sensor_attr = (struct sensor_device_attribute_2 *)__mptr;
7927#line 1029
7928 __cil_tmp11 = sensor_attr->nr;
7929#line 1029
7930 nr = (int )__cil_tmp11;
7931#line 1030
7932 __cil_tmp12 = sensor_attr->index;
7933#line 1030
7934 point = (int )__cil_tmp12;
7935#line 1032
7936 __cil_tmp13 = data->auto_temp[nr][point];
7937#line 1032
7938 __cil_tmp14 = (int )__cil_tmp13;
7939#line 1032
7940 __cil_tmp15 = __cil_tmp14 * 1000;
7941#line 1032
7942 tmp___0 = sprintf(buf, "%d\n", __cil_tmp15);
7943 }
7944#line 1032
7945 return ((ssize_t )tmp___0);
7946}
7947}
7948#line 1035 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
7949static ssize_t set_auto_temp(struct device *dev , struct device_attribute *attr ,
7950 char const *buf , size_t count )
7951{ struct it87_data *data ;
7952 void *tmp ;
7953 struct sensor_device_attribute_2 *sensor_attr ;
7954 struct device_attribute const *__mptr ;
7955 int nr ;
7956 int point ;
7957 long val ;
7958 int tmp___0 ;
7959 long tmp___1 ;
7960 int tmp___2 ;
7961 struct device const *__cil_tmp15 ;
7962 u8 __cil_tmp16 ;
7963 u8 __cil_tmp17 ;
7964 struct mutex *__cil_tmp18 ;
7965 long __cil_tmp19 ;
7966 long __cil_tmp20 ;
7967 u8 __cil_tmp21 ;
7968 unsigned int __cil_tmp22 ;
7969 int __cil_tmp23 ;
7970 u8 __cil_tmp24 ;
7971 unsigned int __cil_tmp25 ;
7972 unsigned int __cil_tmp26 ;
7973 unsigned int __cil_tmp27 ;
7974 int __cil_tmp28 ;
7975 u8 __cil_tmp29 ;
7976 s8 __cil_tmp30 ;
7977 u8 __cil_tmp31 ;
7978 int __cil_tmp32 ;
7979 u8 __cil_tmp33 ;
7980 struct mutex *__cil_tmp34 ;
7981
7982 {
7983 {
7984#line 1038
7985 __cil_tmp15 = (struct device const *)dev;
7986#line 1038
7987 tmp = dev_get_drvdata(__cil_tmp15);
7988#line 1038
7989 data = (struct it87_data *)tmp;
7990#line 1040
7991 __mptr = (struct device_attribute const *)attr;
7992#line 1040
7993 sensor_attr = (struct sensor_device_attribute_2 *)__mptr;
7994#line 1041
7995 __cil_tmp16 = sensor_attr->nr;
7996#line 1041
7997 nr = (int )__cil_tmp16;
7998#line 1042
7999 __cil_tmp17 = sensor_attr->index;
8000#line 1042
8001 point = (int )__cil_tmp17;
8002#line 1045
8003 tmp___0 = kstrtol(buf, 10U, & val);
8004 }
8005#line 1045
8006 if (tmp___0 < 0) {
8007#line 1046
8008 return (-22L);
8009 } else
8010#line 1045
8011 if (val < -128000L) {
8012#line 1046
8013 return (-22L);
8014 } else
8015#line 1045
8016 if (val > 127000L) {
8017#line 1046
8018 return (-22L);
8019 } else {
8020
8021 }
8022 {
8023#line 1048
8024 __cil_tmp18 = & data->update_lock;
8025#line 1048
8026 mutex_lock_nested(__cil_tmp18, 0U);
8027 }
8028#line 1049
8029 if (val < 0L) {
8030#line 1049
8031 __cil_tmp19 = val + -500L;
8032#line 1049
8033 tmp___1 = __cil_tmp19 / 1000L;
8034 } else {
8035#line 1049
8036 __cil_tmp20 = val + 500L;
8037#line 1049
8038 tmp___1 = __cil_tmp20 / 1000L;
8039 }
8040 {
8041#line 1049
8042 tmp___2 = SENSORS_LIMIT(tmp___1, -128L, 127L);
8043#line 1049
8044 data->auto_temp[nr][point] = (s8 )tmp___2;
8045#line 1050
8046 __cil_tmp21 = (u8 )point;
8047#line 1050
8048 __cil_tmp22 = (unsigned int )__cil_tmp21;
8049#line 1050
8050 __cil_tmp23 = nr + 12;
8051#line 1050
8052 __cil_tmp24 = (u8 )__cil_tmp23;
8053#line 1050
8054 __cil_tmp25 = (unsigned int )__cil_tmp24;
8055#line 1050
8056 __cil_tmp26 = __cil_tmp25 * 8U;
8057#line 1050
8058 __cil_tmp27 = __cil_tmp26 + __cil_tmp22;
8059#line 1050
8060 __cil_tmp28 = (int )__cil_tmp27;
8061#line 1050
8062 __cil_tmp29 = (u8 )__cil_tmp28;
8063#line 1050
8064 __cil_tmp30 = data->auto_temp[nr][point];
8065#line 1050
8066 __cil_tmp31 = (u8 )__cil_tmp30;
8067#line 1050
8068 __cil_tmp32 = (int )__cil_tmp31;
8069#line 1050
8070 __cil_tmp33 = (u8 )__cil_tmp32;
8071#line 1050
8072 it87_write_value(data, __cil_tmp29, __cil_tmp33);
8073#line 1052
8074 __cil_tmp34 = & data->update_lock;
8075#line 1052
8076 mutex_unlock(__cil_tmp34);
8077 }
8078#line 1053
8079 return ((ssize_t )count);
8080}
8081}
8082#line 1064 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
8083static struct sensor_device_attribute sensor_dev_attr_fan1_input = {{{"fan1_input", 292U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
8084 {(char)0}, {(char)0}, {(char)0},
8085 {(char)0}, {(char)0}}}}, & show_fan,
8086 (ssize_t (*)(struct device * , struct device_attribute * , char const * , size_t ))0},
8087 0};
8088#line 1064 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
8089static struct sensor_device_attribute sensor_dev_attr_fan1_min = {{{"fan1_min", 420U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
8090 {(char)0}, {(char)0}, {(char)0},
8091 {(char)0}, {(char)0}}}}, & show_fan_min,
8092 & set_fan_min}, 0};
8093#line 1064 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
8094static struct sensor_device_attribute sensor_dev_attr_fan1_div = {{{"fan1_div", 420U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
8095 {(char)0}, {(char)0}, {(char)0},
8096 {(char)0}, {(char)0}}}}, & show_fan_div,
8097 & set_fan_div}, 0};
8098#line 1065 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
8099static struct sensor_device_attribute sensor_dev_attr_fan2_input = {{{"fan2_input", 292U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
8100 {(char)0}, {(char)0}, {(char)0},
8101 {(char)0}, {(char)0}}}}, & show_fan,
8102 (ssize_t (*)(struct device * , struct device_attribute * , char const * , size_t ))0},
8103 1};
8104#line 1065 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
8105static struct sensor_device_attribute sensor_dev_attr_fan2_min = {{{"fan2_min", 420U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
8106 {(char)0}, {(char)0}, {(char)0},
8107 {(char)0}, {(char)0}}}}, & show_fan_min,
8108 & set_fan_min}, 1};
8109#line 1065 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
8110static struct sensor_device_attribute sensor_dev_attr_fan2_div = {{{"fan2_div", 420U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
8111 {(char)0}, {(char)0}, {(char)0},
8112 {(char)0}, {(char)0}}}}, & show_fan_div,
8113 & set_fan_div}, 1};
8114#line 1066 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
8115static struct sensor_device_attribute sensor_dev_attr_fan3_input = {{{"fan3_input", 292U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
8116 {(char)0}, {(char)0}, {(char)0},
8117 {(char)0}, {(char)0}}}}, & show_fan,
8118 (ssize_t (*)(struct device * , struct device_attribute * , char const * , size_t ))0},
8119 2};
8120#line 1066 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
8121static struct sensor_device_attribute sensor_dev_attr_fan3_min = {{{"fan3_min", 420U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
8122 {(char)0}, {(char)0}, {(char)0},
8123 {(char)0}, {(char)0}}}}, & show_fan_min,
8124 & set_fan_min}, 2};
8125#line 1066 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
8126static struct sensor_device_attribute sensor_dev_attr_fan3_div = {{{"fan3_div", 420U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
8127 {(char)0}, {(char)0}, {(char)0},
8128 {(char)0}, {(char)0}}}}, & show_fan_div,
8129 & set_fan_div}, 2};
8130#line 1106 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
8131static struct sensor_device_attribute sensor_dev_attr_pwm1_enable = {{{"pwm1_enable", 420U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
8132 {(char)0}, {(char)0}, {(char)0},
8133 {(char)0}, {(char)0}}}},
8134 & show_pwm_enable, & set_pwm_enable}, 0};
8135#line 1106 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
8136static struct sensor_device_attribute sensor_dev_attr_pwm1 = {{{"pwm1", 420U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
8137 {(char)0}, {(char)0}, {(char)0},
8138 {(char)0}, {(char)0}}}}, & show_pwm,
8139 & set_pwm}, 0};
8140#line 1106 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
8141static struct device_attribute dev_attr_pwm1_freq = {{"pwm1_freq", 420U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
8142 {(char)0}, {(char)0}, {(char)0},
8143 {(char)0}, {(char)0}}}}, & show_pwm_freq,
8144 & set_pwm_freq};
8145#line 1106 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
8146static struct sensor_device_attribute sensor_dev_attr_pwm1_auto_channels_temp = {{{"pwm1_auto_channels_temp",
8147 420U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0}, {(char)0},
8148 {(char)0}, {(char)0}, {(char)0}, {(char)0}}}},
8149 & show_pwm_temp_map, & set_pwm_temp_map}, 0};
8150#line 1106 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
8151static struct sensor_device_attribute_2 sensor_dev_attr_pwm1_auto_point1_pwm = {{{"pwm1_auto_point1_pwm", 420U, (struct lock_class_key *)0, {{{(char)0}, {(char)0},
8152 {(char)0}, {(char)0},
8153 {(char)0}, {(char)0},
8154 {(char)0}, {(char)0}}}},
8155 & show_auto_pwm, & set_auto_pwm}, (u8 )0U, (u8 )0U};
8156#line 1106 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
8157static struct sensor_device_attribute_2 sensor_dev_attr_pwm1_auto_point2_pwm = {{{"pwm1_auto_point2_pwm", 420U, (struct lock_class_key *)0, {{{(char)0}, {(char)0},
8158 {(char)0}, {(char)0},
8159 {(char)0}, {(char)0},
8160 {(char)0}, {(char)0}}}},
8161 & show_auto_pwm, & set_auto_pwm}, (u8 )1U, (u8 )0U};
8162#line 1106 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
8163static struct sensor_device_attribute_2 sensor_dev_attr_pwm1_auto_point3_pwm = {{{"pwm1_auto_point3_pwm", 420U, (struct lock_class_key *)0, {{{(char)0}, {(char)0},
8164 {(char)0}, {(char)0},
8165 {(char)0}, {(char)0},
8166 {(char)0}, {(char)0}}}},
8167 & show_auto_pwm, & set_auto_pwm}, (u8 )2U, (u8 )0U};
8168#line 1106 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
8169static struct sensor_device_attribute_2 sensor_dev_attr_pwm1_auto_point4_pwm = {{{"pwm1_auto_point4_pwm", 292U, (struct lock_class_key *)0, {{{(char)0}, {(char)0},
8170 {(char)0}, {(char)0},
8171 {(char)0}, {(char)0},
8172 {(char)0}, {(char)0}}}},
8173 & show_auto_pwm, (ssize_t (*)(struct device * , struct device_attribute * , char const * ,
8174 size_t ))0}, (u8 )3U, (u8 )0U};
8175#line 1106 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
8176static struct sensor_device_attribute_2 sensor_dev_attr_pwm1_auto_point1_temp = {{{"pwm1_auto_point1_temp",
8177 420U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0}, {(char)0},
8178 {(char)0}, {(char)0}, {(char)0}, {(char)0}}}},
8179 & show_auto_temp, & set_auto_temp}, (u8 )1U, (u8 )0U};
8180#line 1106 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
8181static struct sensor_device_attribute_2 sensor_dev_attr_pwm1_auto_point1_temp_hyst = {{{"pwm1_auto_point1_temp_hyst",
8182 420U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0}, {(char)0},
8183 {(char)0}, {(char)0}, {(char)0}, {(char)0}}}},
8184 & show_auto_temp, & set_auto_temp}, (u8 )0U, (u8 )0U};
8185#line 1106 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
8186static struct sensor_device_attribute_2 sensor_dev_attr_pwm1_auto_point2_temp = {{{"pwm1_auto_point2_temp",
8187 420U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0}, {(char)0},
8188 {(char)0}, {(char)0}, {(char)0}, {(char)0}}}},
8189 & show_auto_temp, & set_auto_temp}, (u8 )2U, (u8 )0U};
8190#line 1106 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
8191static struct sensor_device_attribute_2 sensor_dev_attr_pwm1_auto_point3_temp = {{{"pwm1_auto_point3_temp",
8192 420U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0}, {(char)0},
8193 {(char)0}, {(char)0}, {(char)0}, {(char)0}}}},
8194 & show_auto_temp, & set_auto_temp}, (u8 )3U, (u8 )0U};
8195#line 1106 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
8196static struct sensor_device_attribute_2 sensor_dev_attr_pwm1_auto_point4_temp = {{{"pwm1_auto_point4_temp",
8197 420U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0}, {(char)0},
8198 {(char)0}, {(char)0}, {(char)0}, {(char)0}}}},
8199 & show_auto_temp, & set_auto_temp}, (u8 )4U, (u8 )0U};
8200#line 1107 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
8201static struct sensor_device_attribute sensor_dev_attr_pwm2_enable = {{{"pwm2_enable", 420U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
8202 {(char)0}, {(char)0}, {(char)0},
8203 {(char)0}, {(char)0}}}},
8204 & show_pwm_enable, & set_pwm_enable}, 1};
8205#line 1107 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
8206static struct sensor_device_attribute sensor_dev_attr_pwm2 = {{{"pwm2", 420U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
8207 {(char)0}, {(char)0}, {(char)0},
8208 {(char)0}, {(char)0}}}}, & show_pwm,
8209 & set_pwm}, 1};
8210#line 1107 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
8211static struct device_attribute dev_attr_pwm2_freq = {{"pwm2_freq", 292U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
8212 {(char)0}, {(char)0}, {(char)0},
8213 {(char)0}, {(char)0}}}}, & show_pwm_freq,
8214 (ssize_t (*)(struct device * , struct device_attribute * , char const * , size_t ))0};
8215#line 1107 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
8216static struct sensor_device_attribute sensor_dev_attr_pwm2_auto_channels_temp = {{{"pwm2_auto_channels_temp",
8217 420U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0}, {(char)0},
8218 {(char)0}, {(char)0}, {(char)0}, {(char)0}}}},
8219 & show_pwm_temp_map, & set_pwm_temp_map}, 1};
8220#line 1107 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
8221static struct sensor_device_attribute_2 sensor_dev_attr_pwm2_auto_point1_pwm = {{{"pwm2_auto_point1_pwm", 420U, (struct lock_class_key *)0, {{{(char)0}, {(char)0},
8222 {(char)0}, {(char)0},
8223 {(char)0}, {(char)0},
8224 {(char)0}, {(char)0}}}},
8225 & show_auto_pwm, & set_auto_pwm}, (u8 )0U, (u8 )1U};
8226#line 1107 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
8227static struct sensor_device_attribute_2 sensor_dev_attr_pwm2_auto_point2_pwm = {{{"pwm2_auto_point2_pwm", 420U, (struct lock_class_key *)0, {{{(char)0}, {(char)0},
8228 {(char)0}, {(char)0},
8229 {(char)0}, {(char)0},
8230 {(char)0}, {(char)0}}}},
8231 & show_auto_pwm, & set_auto_pwm}, (u8 )1U, (u8 )1U};
8232#line 1107 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
8233static struct sensor_device_attribute_2 sensor_dev_attr_pwm2_auto_point3_pwm = {{{"pwm2_auto_point3_pwm", 420U, (struct lock_class_key *)0, {{{(char)0}, {(char)0},
8234 {(char)0}, {(char)0},
8235 {(char)0}, {(char)0},
8236 {(char)0}, {(char)0}}}},
8237 & show_auto_pwm, & set_auto_pwm}, (u8 )2U, (u8 )1U};
8238#line 1107 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
8239static struct sensor_device_attribute_2 sensor_dev_attr_pwm2_auto_point4_pwm = {{{"pwm2_auto_point4_pwm", 292U, (struct lock_class_key *)0, {{{(char)0}, {(char)0},
8240 {(char)0}, {(char)0},
8241 {(char)0}, {(char)0},
8242 {(char)0}, {(char)0}}}},
8243 & show_auto_pwm, (ssize_t (*)(struct device * , struct device_attribute * , char const * ,
8244 size_t ))0}, (u8 )3U, (u8 )1U};
8245#line 1107 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
8246static struct sensor_device_attribute_2 sensor_dev_attr_pwm2_auto_point1_temp = {{{"pwm2_auto_point1_temp",
8247 420U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0}, {(char)0},
8248 {(char)0}, {(char)0}, {(char)0}, {(char)0}}}},
8249 & show_auto_temp, & set_auto_temp}, (u8 )1U, (u8 )1U};
8250#line 1107 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
8251static struct sensor_device_attribute_2 sensor_dev_attr_pwm2_auto_point1_temp_hyst = {{{"pwm2_auto_point1_temp_hyst",
8252 420U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0}, {(char)0},
8253 {(char)0}, {(char)0}, {(char)0}, {(char)0}}}},
8254 & show_auto_temp, & set_auto_temp}, (u8 )0U, (u8 )1U};
8255#line 1107 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
8256static struct sensor_device_attribute_2 sensor_dev_attr_pwm2_auto_point2_temp = {{{"pwm2_auto_point2_temp",
8257 420U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0}, {(char)0},
8258 {(char)0}, {(char)0}, {(char)0}, {(char)0}}}},
8259 & show_auto_temp, & set_auto_temp}, (u8 )2U, (u8 )1U};
8260#line 1107 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
8261static struct sensor_device_attribute_2 sensor_dev_attr_pwm2_auto_point3_temp = {{{"pwm2_auto_point3_temp",
8262 420U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0}, {(char)0},
8263 {(char)0}, {(char)0}, {(char)0}, {(char)0}}}},
8264 & show_auto_temp, & set_auto_temp}, (u8 )3U, (u8 )1U};
8265#line 1107 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
8266static struct sensor_device_attribute_2 sensor_dev_attr_pwm2_auto_point4_temp = {{{"pwm2_auto_point4_temp",
8267 420U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0}, {(char)0},
8268 {(char)0}, {(char)0}, {(char)0}, {(char)0}}}},
8269 & show_auto_temp, & set_auto_temp}, (u8 )4U, (u8 )1U};
8270#line 1108 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
8271static struct sensor_device_attribute sensor_dev_attr_pwm3_enable = {{{"pwm3_enable", 420U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
8272 {(char)0}, {(char)0}, {(char)0},
8273 {(char)0}, {(char)0}}}},
8274 & show_pwm_enable, & set_pwm_enable}, 2};
8275#line 1108 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
8276static struct sensor_device_attribute sensor_dev_attr_pwm3 = {{{"pwm3", 420U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
8277 {(char)0}, {(char)0}, {(char)0},
8278 {(char)0}, {(char)0}}}}, & show_pwm,
8279 & set_pwm}, 2};
8280#line 1108 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
8281static struct device_attribute dev_attr_pwm3_freq = {{"pwm3_freq", 292U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
8282 {(char)0}, {(char)0}, {(char)0},
8283 {(char)0}, {(char)0}}}}, & show_pwm_freq,
8284 (ssize_t (*)(struct device * , struct device_attribute * , char const * , size_t ))0};
8285#line 1108 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
8286static struct sensor_device_attribute sensor_dev_attr_pwm3_auto_channels_temp = {{{"pwm3_auto_channels_temp",
8287 420U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0}, {(char)0},
8288 {(char)0}, {(char)0}, {(char)0}, {(char)0}}}},
8289 & show_pwm_temp_map, & set_pwm_temp_map}, 2};
8290#line 1108 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
8291static struct sensor_device_attribute_2 sensor_dev_attr_pwm3_auto_point1_pwm = {{{"pwm3_auto_point1_pwm", 420U, (struct lock_class_key *)0, {{{(char)0}, {(char)0},
8292 {(char)0}, {(char)0},
8293 {(char)0}, {(char)0},
8294 {(char)0}, {(char)0}}}},
8295 & show_auto_pwm, & set_auto_pwm}, (u8 )0U, (u8 )2U};
8296#line 1108 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
8297static struct sensor_device_attribute_2 sensor_dev_attr_pwm3_auto_point2_pwm = {{{"pwm3_auto_point2_pwm", 420U, (struct lock_class_key *)0, {{{(char)0}, {(char)0},
8298 {(char)0}, {(char)0},
8299 {(char)0}, {(char)0},
8300 {(char)0}, {(char)0}}}},
8301 & show_auto_pwm, & set_auto_pwm}, (u8 )1U, (u8 )2U};
8302#line 1108 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
8303static struct sensor_device_attribute_2 sensor_dev_attr_pwm3_auto_point3_pwm = {{{"pwm3_auto_point3_pwm", 420U, (struct lock_class_key *)0, {{{(char)0}, {(char)0},
8304 {(char)0}, {(char)0},
8305 {(char)0}, {(char)0},
8306 {(char)0}, {(char)0}}}},
8307 & show_auto_pwm, & set_auto_pwm}, (u8 )2U, (u8 )2U};
8308#line 1108 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
8309static struct sensor_device_attribute_2 sensor_dev_attr_pwm3_auto_point4_pwm = {{{"pwm3_auto_point4_pwm", 292U, (struct lock_class_key *)0, {{{(char)0}, {(char)0},
8310 {(char)0}, {(char)0},
8311 {(char)0}, {(char)0},
8312 {(char)0}, {(char)0}}}},
8313 & show_auto_pwm, (ssize_t (*)(struct device * , struct device_attribute * , char const * ,
8314 size_t ))0}, (u8 )3U, (u8 )2U};
8315#line 1108 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
8316static struct sensor_device_attribute_2 sensor_dev_attr_pwm3_auto_point1_temp = {{{"pwm3_auto_point1_temp",
8317 420U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0}, {(char)0},
8318 {(char)0}, {(char)0}, {(char)0}, {(char)0}}}},
8319 & show_auto_temp, & set_auto_temp}, (u8 )1U, (u8 )2U};
8320#line 1108 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
8321static struct sensor_device_attribute_2 sensor_dev_attr_pwm3_auto_point1_temp_hyst = {{{"pwm3_auto_point1_temp_hyst",
8322 420U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0}, {(char)0},
8323 {(char)0}, {(char)0}, {(char)0}, {(char)0}}}},
8324 & show_auto_temp, & set_auto_temp}, (u8 )0U, (u8 )2U};
8325#line 1108 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
8326static struct sensor_device_attribute_2 sensor_dev_attr_pwm3_auto_point2_temp = {{{"pwm3_auto_point2_temp",
8327 420U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0}, {(char)0},
8328 {(char)0}, {(char)0}, {(char)0}, {(char)0}}}},
8329 & show_auto_temp, & set_auto_temp}, (u8 )2U, (u8 )2U};
8330#line 1108 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
8331static struct sensor_device_attribute_2 sensor_dev_attr_pwm3_auto_point3_temp = {{{"pwm3_auto_point3_temp",
8332 420U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0}, {(char)0},
8333 {(char)0}, {(char)0}, {(char)0}, {(char)0}}}},
8334 & show_auto_temp, & set_auto_temp}, (u8 )3U, (u8 )2U};
8335#line 1108 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
8336static struct sensor_device_attribute_2 sensor_dev_attr_pwm3_auto_point4_temp = {{{"pwm3_auto_point4_temp",
8337 420U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0}, {(char)0},
8338 {(char)0}, {(char)0}, {(char)0}, {(char)0}}}},
8339 & show_auto_temp, & set_auto_temp}, (u8 )4U, (u8 )2U};
8340#line 1111 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
8341static ssize_t show_fan16(struct device *dev , struct device_attribute *attr , char *buf )
8342{ struct sensor_device_attribute *sensor_attr ;
8343 struct device_attribute const *__mptr ;
8344 int nr ;
8345 struct it87_data *data ;
8346 struct it87_data *tmp ;
8347 int tmp___0 ;
8348 int tmp___1 ;
8349 int tmp___2 ;
8350 u16 __cil_tmp12 ;
8351 unsigned int __cil_tmp13 ;
8352 u16 __cil_tmp14 ;
8353 unsigned int __cil_tmp15 ;
8354 u16 __cil_tmp16 ;
8355 int __cil_tmp17 ;
8356 int __cil_tmp18 ;
8357
8358 {
8359 {
8360#line 1114
8361 __mptr = (struct device_attribute const *)attr;
8362#line 1114
8363 sensor_attr = (struct sensor_device_attribute *)__mptr;
8364#line 1115
8365 nr = sensor_attr->index;
8366#line 1116
8367 tmp = it87_update_device(dev);
8368#line 1116
8369 data = tmp;
8370 }
8371 {
8372#line 1117
8373 __cil_tmp12 = data->fan[nr];
8374#line 1117
8375 __cil_tmp13 = (unsigned int )__cil_tmp12;
8376#line 1117
8377 if (__cil_tmp13 != 0U) {
8378 {
8379#line 1117
8380 __cil_tmp14 = data->fan[nr];
8381#line 1117
8382 __cil_tmp15 = (unsigned int )__cil_tmp14;
8383#line 1117
8384 if (__cil_tmp15 != 65535U) {
8385#line 1117
8386 __cil_tmp16 = data->fan[nr];
8387#line 1117
8388 __cil_tmp17 = (int )__cil_tmp16;
8389#line 1117
8390 __cil_tmp18 = __cil_tmp17 * 2;
8391#line 1117
8392 tmp___0 = 1350000 / __cil_tmp18;
8393 } else {
8394#line 1117
8395 tmp___0 = 0;
8396 }
8397 }
8398#line 1117
8399 tmp___1 = tmp___0;
8400 } else {
8401#line 1117
8402 tmp___1 = -1;
8403 }
8404 }
8405 {
8406#line 1117
8407 tmp___2 = sprintf(buf, "%d\n", tmp___1);
8408 }
8409#line 1117
8410 return ((ssize_t )tmp___2);
8411}
8412}
8413#line 1120 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
8414static ssize_t show_fan16_min(struct device *dev , struct device_attribute *attr ,
8415 char *buf )
8416{ struct sensor_device_attribute *sensor_attr ;
8417 struct device_attribute const *__mptr ;
8418 int nr ;
8419 struct it87_data *data ;
8420 struct it87_data *tmp ;
8421 int tmp___0 ;
8422 int tmp___1 ;
8423 int tmp___2 ;
8424 u16 __cil_tmp12 ;
8425 unsigned int __cil_tmp13 ;
8426 u16 __cil_tmp14 ;
8427 unsigned int __cil_tmp15 ;
8428 u16 __cil_tmp16 ;
8429 int __cil_tmp17 ;
8430 int __cil_tmp18 ;
8431
8432 {
8433 {
8434#line 1123
8435 __mptr = (struct device_attribute const *)attr;
8436#line 1123
8437 sensor_attr = (struct sensor_device_attribute *)__mptr;
8438#line 1124
8439 nr = sensor_attr->index;
8440#line 1125
8441 tmp = it87_update_device(dev);
8442#line 1125
8443 data = tmp;
8444 }
8445 {
8446#line 1126
8447 __cil_tmp12 = data->fan_min[nr];
8448#line 1126
8449 __cil_tmp13 = (unsigned int )__cil_tmp12;
8450#line 1126
8451 if (__cil_tmp13 != 0U) {
8452 {
8453#line 1126
8454 __cil_tmp14 = data->fan_min[nr];
8455#line 1126
8456 __cil_tmp15 = (unsigned int )__cil_tmp14;
8457#line 1126
8458 if (__cil_tmp15 != 65535U) {
8459#line 1126
8460 __cil_tmp16 = data->fan_min[nr];
8461#line 1126
8462 __cil_tmp17 = (int )__cil_tmp16;
8463#line 1126
8464 __cil_tmp18 = __cil_tmp17 * 2;
8465#line 1126
8466 tmp___0 = 1350000 / __cil_tmp18;
8467 } else {
8468#line 1126
8469 tmp___0 = 0;
8470 }
8471 }
8472#line 1126
8473 tmp___1 = tmp___0;
8474 } else {
8475#line 1126
8476 tmp___1 = -1;
8477 }
8478 }
8479 {
8480#line 1126
8481 tmp___2 = sprintf(buf, "%d\n", tmp___1);
8482 }
8483#line 1126
8484 return ((ssize_t )tmp___2);
8485}
8486}
8487#line 1129 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
8488static ssize_t set_fan16_min(struct device *dev , struct device_attribute *attr ,
8489 char const *buf , size_t count )
8490{ struct sensor_device_attribute *sensor_attr ;
8491 struct device_attribute const *__mptr ;
8492 int nr ;
8493 struct it87_data *data ;
8494 void *tmp ;
8495 long val ;
8496 int tmp___0 ;
8497 struct device const *__cil_tmp12 ;
8498 struct mutex *__cil_tmp13 ;
8499 int __cil_tmp14 ;
8500 u8 __cil_tmp15 ;
8501 u16 __cil_tmp16 ;
8502 u8 __cil_tmp17 ;
8503 int __cil_tmp18 ;
8504 u8 __cil_tmp19 ;
8505 int __cil_tmp20 ;
8506 u8 __cil_tmp21 ;
8507 u16 __cil_tmp22 ;
8508 int __cil_tmp23 ;
8509 int __cil_tmp24 ;
8510 u8 __cil_tmp25 ;
8511 int __cil_tmp26 ;
8512 u8 __cil_tmp27 ;
8513 struct mutex *__cil_tmp28 ;
8514
8515 {
8516 {
8517#line 1132
8518 __mptr = (struct device_attribute const *)attr;
8519#line 1132
8520 sensor_attr = (struct sensor_device_attribute *)__mptr;
8521#line 1133
8522 nr = sensor_attr->index;
8523#line 1134
8524 __cil_tmp12 = (struct device const *)dev;
8525#line 1134
8526 tmp = dev_get_drvdata(__cil_tmp12);
8527#line 1134
8528 data = (struct it87_data *)tmp;
8529#line 1137
8530 tmp___0 = kstrtol(buf, 10U, & val);
8531 }
8532#line 1137
8533 if (tmp___0 < 0) {
8534#line 1138
8535 return (-22L);
8536 } else {
8537
8538 }
8539 {
8540#line 1140
8541 __cil_tmp13 = & data->update_lock;
8542#line 1140
8543 mutex_lock_nested(__cil_tmp13, 0U);
8544#line 1141
8545 data->fan_min[nr] = FAN16_TO_REG(val);
8546#line 1142
8547 __cil_tmp14 = (int )IT87_REG_FAN_MIN[nr];
8548#line 1142
8549 __cil_tmp15 = (u8 )__cil_tmp14;
8550#line 1142
8551 __cil_tmp16 = data->fan_min[nr];
8552#line 1142
8553 __cil_tmp17 = (u8 )__cil_tmp16;
8554#line 1142
8555 __cil_tmp18 = (int )__cil_tmp17;
8556#line 1142
8557 __cil_tmp19 = (u8 )__cil_tmp18;
8558#line 1142
8559 it87_write_value(data, __cil_tmp15, __cil_tmp19);
8560#line 1144
8561 __cil_tmp20 = (int )IT87_REG_FANX_MIN[nr];
8562#line 1144
8563 __cil_tmp21 = (u8 )__cil_tmp20;
8564#line 1144
8565 __cil_tmp22 = data->fan_min[nr];
8566#line 1144
8567 __cil_tmp23 = (int )__cil_tmp22;
8568#line 1144
8569 __cil_tmp24 = __cil_tmp23 >> 8;
8570#line 1144
8571 __cil_tmp25 = (u8 )__cil_tmp24;
8572#line 1144
8573 __cil_tmp26 = (int )__cil_tmp25;
8574#line 1144
8575 __cil_tmp27 = (u8 )__cil_tmp26;
8576#line 1144
8577 it87_write_value(data, __cil_tmp21, __cil_tmp27);
8578#line 1146
8579 __cil_tmp28 = & data->update_lock;
8580#line 1146
8581 mutex_unlock(__cil_tmp28);
8582 }
8583#line 1147
8584 return ((ssize_t )count);
8585}
8586}
8587#line 1161 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
8588static struct sensor_device_attribute sensor_dev_attr_fan1_input16 = {{{"fan1_input", 292U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
8589 {(char)0}, {(char)0}, {(char)0},
8590 {(char)0}, {(char)0}}}}, & show_fan16,
8591 (ssize_t (*)(struct device * , struct device_attribute * , char const * , size_t ))0},
8592 0};
8593#line 1161 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
8594static struct sensor_device_attribute sensor_dev_attr_fan1_min16 = {{{"fan1_min", 420U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
8595 {(char)0}, {(char)0}, {(char)0},
8596 {(char)0}, {(char)0}}}}, & show_fan16_min,
8597 & set_fan16_min}, 0};
8598#line 1162 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
8599static struct sensor_device_attribute sensor_dev_attr_fan2_input16 = {{{"fan2_input", 292U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
8600 {(char)0}, {(char)0}, {(char)0},
8601 {(char)0}, {(char)0}}}}, & show_fan16,
8602 (ssize_t (*)(struct device * , struct device_attribute * , char const * , size_t ))0},
8603 1};
8604#line 1162 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
8605static struct sensor_device_attribute sensor_dev_attr_fan2_min16 = {{{"fan2_min", 420U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
8606 {(char)0}, {(char)0}, {(char)0},
8607 {(char)0}, {(char)0}}}}, & show_fan16_min,
8608 & set_fan16_min}, 1};
8609#line 1163 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
8610static struct sensor_device_attribute sensor_dev_attr_fan3_input16 = {{{"fan3_input", 292U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
8611 {(char)0}, {(char)0}, {(char)0},
8612 {(char)0}, {(char)0}}}}, & show_fan16,
8613 (ssize_t (*)(struct device * , struct device_attribute * , char const * , size_t ))0},
8614 2};
8615#line 1163 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
8616static struct sensor_device_attribute sensor_dev_attr_fan3_min16 = {{{"fan3_min", 420U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
8617 {(char)0}, {(char)0}, {(char)0},
8618 {(char)0}, {(char)0}}}}, & show_fan16_min,
8619 & set_fan16_min}, 2};
8620#line 1164 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
8621static struct sensor_device_attribute sensor_dev_attr_fan4_input16 = {{{"fan4_input", 292U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
8622 {(char)0}, {(char)0}, {(char)0},
8623 {(char)0}, {(char)0}}}}, & show_fan16,
8624 (ssize_t (*)(struct device * , struct device_attribute * , char const * , size_t ))0},
8625 3};
8626#line 1164 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
8627static struct sensor_device_attribute sensor_dev_attr_fan4_min16 = {{{"fan4_min", 420U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
8628 {(char)0}, {(char)0}, {(char)0},
8629 {(char)0}, {(char)0}}}}, & show_fan16_min,
8630 & set_fan16_min}, 3};
8631#line 1165 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
8632static struct sensor_device_attribute sensor_dev_attr_fan5_input16 = {{{"fan5_input", 292U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
8633 {(char)0}, {(char)0}, {(char)0},
8634 {(char)0}, {(char)0}}}}, & show_fan16,
8635 (ssize_t (*)(struct device * , struct device_attribute * , char const * , size_t ))0},
8636 4};
8637#line 1165 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
8638static struct sensor_device_attribute sensor_dev_attr_fan5_min16 = {{{"fan5_min", 420U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
8639 {(char)0}, {(char)0}, {(char)0},
8640 {(char)0}, {(char)0}}}}, & show_fan16_min,
8641 & set_fan16_min}, 4};
8642#line 1168 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
8643static ssize_t show_alarms(struct device *dev , struct device_attribute *attr , char *buf )
8644{ struct it87_data *data ;
8645 struct it87_data *tmp ;
8646 int tmp___0 ;
8647 u32 __cil_tmp7 ;
8648
8649 {
8650 {
8651#line 1171
8652 tmp = it87_update_device(dev);
8653#line 1171
8654 data = tmp;
8655#line 1172
8656 __cil_tmp7 = data->alarms;
8657#line 1172
8658 tmp___0 = sprintf(buf, "%u\n", __cil_tmp7);
8659 }
8660#line 1172
8661 return ((ssize_t )tmp___0);
8662}
8663}
8664#line 1174 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
8665static struct device_attribute dev_attr_alarms = {{"alarms", 292U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
8666 {(char)0}, {(char)0}, {(char)0},
8667 {(char)0}, {(char)0}}}}, & show_alarms,
8668 (ssize_t (*)(struct device * , struct device_attribute * , char const * , size_t ))0};
8669#line 1176 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
8670static ssize_t show_alarm(struct device *dev , struct device_attribute *attr , char *buf )
8671{ int bitnr ;
8672 struct device_attribute const *__mptr ;
8673 struct it87_data *data ;
8674 struct it87_data *tmp ;
8675 int tmp___0 ;
8676 struct sensor_device_attribute *__cil_tmp9 ;
8677 u32 __cil_tmp10 ;
8678 u32 __cil_tmp11 ;
8679 unsigned int __cil_tmp12 ;
8680
8681 {
8682 {
8683#line 1179
8684 __mptr = (struct device_attribute const *)attr;
8685#line 1179
8686 __cil_tmp9 = (struct sensor_device_attribute *)__mptr;
8687#line 1179
8688 bitnr = __cil_tmp9->index;
8689#line 1180
8690 tmp = it87_update_device(dev);
8691#line 1180
8692 data = tmp;
8693#line 1181
8694 __cil_tmp10 = data->alarms;
8695#line 1181
8696 __cil_tmp11 = __cil_tmp10 >> bitnr;
8697#line 1181
8698 __cil_tmp12 = __cil_tmp11 & 1U;
8699#line 1181
8700 tmp___0 = sprintf(buf, "%u\n", __cil_tmp12);
8701 }
8702#line 1181
8703 return ((ssize_t )tmp___0);
8704}
8705}
8706#line 1183 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
8707static struct sensor_device_attribute sensor_dev_attr_in0_alarm = {{{"in0_alarm", 292U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
8708 {(char)0}, {(char)0}, {(char)0},
8709 {(char)0}, {(char)0}}}}, & show_alarm,
8710 (ssize_t (*)(struct device * , struct device_attribute * , char const * , size_t ))0},
8711 8};
8712#line 1184 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
8713static struct sensor_device_attribute sensor_dev_attr_in1_alarm = {{{"in1_alarm", 292U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
8714 {(char)0}, {(char)0}, {(char)0},
8715 {(char)0}, {(char)0}}}}, & show_alarm,
8716 (ssize_t (*)(struct device * , struct device_attribute * , char const * , size_t ))0},
8717 9};
8718#line 1185 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
8719static struct sensor_device_attribute sensor_dev_attr_in2_alarm = {{{"in2_alarm", 292U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
8720 {(char)0}, {(char)0}, {(char)0},
8721 {(char)0}, {(char)0}}}}, & show_alarm,
8722 (ssize_t (*)(struct device * , struct device_attribute * , char const * , size_t ))0},
8723 10};
8724#line 1186 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
8725static struct sensor_device_attribute sensor_dev_attr_in3_alarm = {{{"in3_alarm", 292U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
8726 {(char)0}, {(char)0}, {(char)0},
8727 {(char)0}, {(char)0}}}}, & show_alarm,
8728 (ssize_t (*)(struct device * , struct device_attribute * , char const * , size_t ))0},
8729 11};
8730#line 1187 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
8731static struct sensor_device_attribute sensor_dev_attr_in4_alarm = {{{"in4_alarm", 292U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
8732 {(char)0}, {(char)0}, {(char)0},
8733 {(char)0}, {(char)0}}}}, & show_alarm,
8734 (ssize_t (*)(struct device * , struct device_attribute * , char const * , size_t ))0},
8735 12};
8736#line 1188 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
8737static struct sensor_device_attribute sensor_dev_attr_in5_alarm = {{{"in5_alarm", 292U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
8738 {(char)0}, {(char)0}, {(char)0},
8739 {(char)0}, {(char)0}}}}, & show_alarm,
8740 (ssize_t (*)(struct device * , struct device_attribute * , char const * , size_t ))0},
8741 13};
8742#line 1189 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
8743static struct sensor_device_attribute sensor_dev_attr_in6_alarm = {{{"in6_alarm", 292U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
8744 {(char)0}, {(char)0}, {(char)0},
8745 {(char)0}, {(char)0}}}}, & show_alarm,
8746 (ssize_t (*)(struct device * , struct device_attribute * , char const * , size_t ))0},
8747 14};
8748#line 1190 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
8749static struct sensor_device_attribute sensor_dev_attr_in7_alarm = {{{"in7_alarm", 292U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
8750 {(char)0}, {(char)0}, {(char)0},
8751 {(char)0}, {(char)0}}}}, & show_alarm,
8752 (ssize_t (*)(struct device * , struct device_attribute * , char const * , size_t ))0},
8753 15};
8754#line 1191 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
8755static struct sensor_device_attribute sensor_dev_attr_fan1_alarm = {{{"fan1_alarm", 292U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
8756 {(char)0}, {(char)0}, {(char)0},
8757 {(char)0}, {(char)0}}}}, & show_alarm,
8758 (ssize_t (*)(struct device * , struct device_attribute * , char const * , size_t ))0},
8759 0};
8760#line 1192 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
8761static struct sensor_device_attribute sensor_dev_attr_fan2_alarm = {{{"fan2_alarm", 292U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
8762 {(char)0}, {(char)0}, {(char)0},
8763 {(char)0}, {(char)0}}}}, & show_alarm,
8764 (ssize_t (*)(struct device * , struct device_attribute * , char const * , size_t ))0},
8765 1};
8766#line 1193 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
8767static struct sensor_device_attribute sensor_dev_attr_fan3_alarm = {{{"fan3_alarm", 292U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
8768 {(char)0}, {(char)0}, {(char)0},
8769 {(char)0}, {(char)0}}}}, & show_alarm,
8770 (ssize_t (*)(struct device * , struct device_attribute * , char const * , size_t ))0},
8771 2};
8772#line 1194 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
8773static struct sensor_device_attribute sensor_dev_attr_fan4_alarm = {{{"fan4_alarm", 292U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
8774 {(char)0}, {(char)0}, {(char)0},
8775 {(char)0}, {(char)0}}}}, & show_alarm,
8776 (ssize_t (*)(struct device * , struct device_attribute * , char const * , size_t ))0},
8777 3};
8778#line 1195 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
8779static struct sensor_device_attribute sensor_dev_attr_fan5_alarm = {{{"fan5_alarm", 292U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
8780 {(char)0}, {(char)0}, {(char)0},
8781 {(char)0}, {(char)0}}}}, & show_alarm,
8782 (ssize_t (*)(struct device * , struct device_attribute * , char const * , size_t ))0},
8783 6};
8784#line 1196 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
8785static struct sensor_device_attribute sensor_dev_attr_temp1_alarm = {{{"temp1_alarm", 292U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
8786 {(char)0}, {(char)0}, {(char)0},
8787 {(char)0}, {(char)0}}}},
8788 & show_alarm, (ssize_t (*)(struct device * , struct device_attribute * , char const * ,
8789 size_t ))0}, 16};
8790#line 1197 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
8791static struct sensor_device_attribute sensor_dev_attr_temp2_alarm = {{{"temp2_alarm", 292U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
8792 {(char)0}, {(char)0}, {(char)0},
8793 {(char)0}, {(char)0}}}},
8794 & show_alarm, (ssize_t (*)(struct device * , struct device_attribute * , char const * ,
8795 size_t ))0}, 17};
8796#line 1198 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
8797static struct sensor_device_attribute sensor_dev_attr_temp3_alarm = {{{"temp3_alarm", 292U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
8798 {(char)0}, {(char)0}, {(char)0},
8799 {(char)0}, {(char)0}}}},
8800 & show_alarm, (ssize_t (*)(struct device * , struct device_attribute * , char const * ,
8801 size_t ))0}, 18};
8802#line 1200 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
8803static ssize_t show_beep(struct device *dev , struct device_attribute *attr , char *buf )
8804{ int bitnr ;
8805 struct device_attribute const *__mptr ;
8806 struct it87_data *data ;
8807 struct it87_data *tmp ;
8808 int tmp___0 ;
8809 struct sensor_device_attribute *__cil_tmp9 ;
8810 u8 __cil_tmp10 ;
8811 int __cil_tmp11 ;
8812 int __cil_tmp12 ;
8813 int __cil_tmp13 ;
8814
8815 {
8816 {
8817#line 1203
8818 __mptr = (struct device_attribute const *)attr;
8819#line 1203
8820 __cil_tmp9 = (struct sensor_device_attribute *)__mptr;
8821#line 1203
8822 bitnr = __cil_tmp9->index;
8823#line 1204
8824 tmp = it87_update_device(dev);
8825#line 1204
8826 data = tmp;
8827#line 1205
8828 __cil_tmp10 = data->beeps;
8829#line 1205
8830 __cil_tmp11 = (int )__cil_tmp10;
8831#line 1205
8832 __cil_tmp12 = __cil_tmp11 >> bitnr;
8833#line 1205
8834 __cil_tmp13 = __cil_tmp12 & 1;
8835#line 1205
8836 tmp___0 = sprintf(buf, "%u\n", __cil_tmp13);
8837 }
8838#line 1205
8839 return ((ssize_t )tmp___0);
8840}
8841}
8842#line 1207 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
8843static ssize_t set_beep(struct device *dev , struct device_attribute *attr , char const *buf ,
8844 size_t count )
8845{ int bitnr ;
8846 struct device_attribute const *__mptr ;
8847 struct it87_data *data ;
8848 void *tmp ;
8849 long val ;
8850 int tmp___0 ;
8851 int tmp___1 ;
8852 struct sensor_device_attribute *__cil_tmp12 ;
8853 struct device const *__cil_tmp13 ;
8854 struct mutex *__cil_tmp14 ;
8855 u8 __cil_tmp15 ;
8856 int __cil_tmp16 ;
8857 signed char __cil_tmp17 ;
8858 int __cil_tmp18 ;
8859 u8 __cil_tmp19 ;
8860 signed char __cil_tmp20 ;
8861 int __cil_tmp21 ;
8862 int __cil_tmp22 ;
8863 int __cil_tmp23 ;
8864 signed char __cil_tmp24 ;
8865 int __cil_tmp25 ;
8866 int __cil_tmp26 ;
8867 u8 __cil_tmp27 ;
8868 signed char __cil_tmp28 ;
8869 int __cil_tmp29 ;
8870 int __cil_tmp30 ;
8871 u8 __cil_tmp31 ;
8872 u8 __cil_tmp32 ;
8873 int __cil_tmp33 ;
8874 u8 __cil_tmp34 ;
8875 struct mutex *__cil_tmp35 ;
8876
8877 {
8878 {
8879#line 1210
8880 __mptr = (struct device_attribute const *)attr;
8881#line 1210
8882 __cil_tmp12 = (struct sensor_device_attribute *)__mptr;
8883#line 1210
8884 bitnr = __cil_tmp12->index;
8885#line 1211
8886 __cil_tmp13 = (struct device const *)dev;
8887#line 1211
8888 tmp = dev_get_drvdata(__cil_tmp13);
8889#line 1211
8890 data = (struct it87_data *)tmp;
8891#line 1214
8892 tmp___0 = kstrtol(buf, 10U, & val);
8893 }
8894#line 1214
8895 if (tmp___0 < 0) {
8896#line 1216
8897 return (-22L);
8898 } else
8899#line 1214
8900 if (val != 0L) {
8901#line 1214
8902 if (val != 1L) {
8903#line 1216
8904 return (-22L);
8905 } else {
8906
8907 }
8908 } else {
8909
8910 }
8911 {
8912#line 1218
8913 __cil_tmp14 = & data->update_lock;
8914#line 1218
8915 mutex_lock_nested(__cil_tmp14, 0U);
8916#line 1219
8917 __cil_tmp15 = (u8 )92;
8918#line 1219
8919 tmp___1 = it87_read_value(data, __cil_tmp15);
8920#line 1219
8921 data->beeps = (u8 )tmp___1;
8922 }
8923#line 1220
8924 if (val != 0L) {
8925#line 1221
8926 __cil_tmp16 = 1 << bitnr;
8927#line 1221
8928 __cil_tmp17 = (signed char )__cil_tmp16;
8929#line 1221
8930 __cil_tmp18 = (int )__cil_tmp17;
8931#line 1221
8932 __cil_tmp19 = data->beeps;
8933#line 1221
8934 __cil_tmp20 = (signed char )__cil_tmp19;
8935#line 1221
8936 __cil_tmp21 = (int )__cil_tmp20;
8937#line 1221
8938 __cil_tmp22 = __cil_tmp21 | __cil_tmp18;
8939#line 1221
8940 data->beeps = (u8 )__cil_tmp22;
8941 } else {
8942#line 1223
8943 __cil_tmp23 = 1 << bitnr;
8944#line 1223
8945 __cil_tmp24 = (signed char )__cil_tmp23;
8946#line 1223
8947 __cil_tmp25 = (int )__cil_tmp24;
8948#line 1223
8949 __cil_tmp26 = ~ __cil_tmp25;
8950#line 1223
8951 __cil_tmp27 = data->beeps;
8952#line 1223
8953 __cil_tmp28 = (signed char )__cil_tmp27;
8954#line 1223
8955 __cil_tmp29 = (int )__cil_tmp28;
8956#line 1223
8957 __cil_tmp30 = __cil_tmp29 & __cil_tmp26;
8958#line 1223
8959 data->beeps = (u8 )__cil_tmp30;
8960 }
8961 {
8962#line 1224
8963 __cil_tmp31 = (u8 )92;
8964#line 1224
8965 __cil_tmp32 = data->beeps;
8966#line 1224
8967 __cil_tmp33 = (int )__cil_tmp32;
8968#line 1224
8969 __cil_tmp34 = (u8 )__cil_tmp33;
8970#line 1224
8971 it87_write_value(data, __cil_tmp31, __cil_tmp34);
8972#line 1225
8973 __cil_tmp35 = & data->update_lock;
8974#line 1225
8975 mutex_unlock(__cil_tmp35);
8976 }
8977#line 1226
8978 return ((ssize_t )count);
8979}
8980}
8981#line 1230 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
8982static struct sensor_device_attribute sensor_dev_attr_in0_beep = {{{"in0_beep", 420U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
8983 {(char)0}, {(char)0}, {(char)0},
8984 {(char)0}, {(char)0}}}}, & show_beep,
8985 & set_beep}, 1};
8986#line 1231 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
8987static struct sensor_device_attribute sensor_dev_attr_in1_beep = {{{"in1_beep", 292U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
8988 {(char)0}, {(char)0}, {(char)0},
8989 {(char)0}, {(char)0}}}}, & show_beep,
8990 (ssize_t (*)(struct device * , struct device_attribute * , char const * , size_t ))0},
8991 1};
8992#line 1232 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
8993static struct sensor_device_attribute sensor_dev_attr_in2_beep = {{{"in2_beep", 292U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
8994 {(char)0}, {(char)0}, {(char)0},
8995 {(char)0}, {(char)0}}}}, & show_beep,
8996 (ssize_t (*)(struct device * , struct device_attribute * , char const * , size_t ))0},
8997 1};
8998#line 1233 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
8999static struct sensor_device_attribute sensor_dev_attr_in3_beep = {{{"in3_beep", 292U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
9000 {(char)0}, {(char)0}, {(char)0},
9001 {(char)0}, {(char)0}}}}, & show_beep,
9002 (ssize_t (*)(struct device * , struct device_attribute * , char const * , size_t ))0},
9003 1};
9004#line 1234 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
9005static struct sensor_device_attribute sensor_dev_attr_in4_beep = {{{"in4_beep", 292U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
9006 {(char)0}, {(char)0}, {(char)0},
9007 {(char)0}, {(char)0}}}}, & show_beep,
9008 (ssize_t (*)(struct device * , struct device_attribute * , char const * , size_t ))0},
9009 1};
9010#line 1235 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
9011static struct sensor_device_attribute sensor_dev_attr_in5_beep = {{{"in5_beep", 292U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
9012 {(char)0}, {(char)0}, {(char)0},
9013 {(char)0}, {(char)0}}}}, & show_beep,
9014 (ssize_t (*)(struct device * , struct device_attribute * , char const * , size_t ))0},
9015 1};
9016#line 1236 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
9017static struct sensor_device_attribute sensor_dev_attr_in6_beep = {{{"in6_beep", 292U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
9018 {(char)0}, {(char)0}, {(char)0},
9019 {(char)0}, {(char)0}}}}, & show_beep,
9020 (ssize_t (*)(struct device * , struct device_attribute * , char const * , size_t ))0},
9021 1};
9022#line 1237 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
9023static struct sensor_device_attribute sensor_dev_attr_in7_beep = {{{"in7_beep", 292U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
9024 {(char)0}, {(char)0}, {(char)0},
9025 {(char)0}, {(char)0}}}}, & show_beep,
9026 (ssize_t (*)(struct device * , struct device_attribute * , char const * , size_t ))0},
9027 1};
9028#line 1239 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
9029static struct sensor_device_attribute sensor_dev_attr_fan1_beep = {{{"fan1_beep", 292U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
9030 {(char)0}, {(char)0}, {(char)0},
9031 {(char)0}, {(char)0}}}}, & show_beep,
9032 & set_beep}, 0};
9033#line 1240 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
9034static struct sensor_device_attribute sensor_dev_attr_fan2_beep = {{{"fan2_beep", 292U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
9035 {(char)0}, {(char)0}, {(char)0},
9036 {(char)0}, {(char)0}}}}, & show_beep,
9037 & set_beep}, 0};
9038#line 1241 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
9039static struct sensor_device_attribute sensor_dev_attr_fan3_beep = {{{"fan3_beep", 292U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
9040 {(char)0}, {(char)0}, {(char)0},
9041 {(char)0}, {(char)0}}}}, & show_beep,
9042 & set_beep}, 0};
9043#line 1242 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
9044static struct sensor_device_attribute sensor_dev_attr_fan4_beep = {{{"fan4_beep", 292U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
9045 {(char)0}, {(char)0}, {(char)0},
9046 {(char)0}, {(char)0}}}}, & show_beep,
9047 & set_beep}, 0};
9048#line 1243 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
9049static struct sensor_device_attribute sensor_dev_attr_fan5_beep = {{{"fan5_beep", 292U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
9050 {(char)0}, {(char)0}, {(char)0},
9051 {(char)0}, {(char)0}}}}, & show_beep,
9052 & set_beep}, 0};
9053#line 1245 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
9054static struct sensor_device_attribute sensor_dev_attr_temp1_beep = {{{"temp1_beep", 420U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
9055 {(char)0}, {(char)0}, {(char)0},
9056 {(char)0}, {(char)0}}}}, & show_beep,
9057 & set_beep}, 2};
9058#line 1246 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
9059static struct sensor_device_attribute sensor_dev_attr_temp2_beep = {{{"temp2_beep", 292U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
9060 {(char)0}, {(char)0}, {(char)0},
9061 {(char)0}, {(char)0}}}}, & show_beep,
9062 (ssize_t (*)(struct device * , struct device_attribute * , char const * , size_t ))0},
9063 2};
9064#line 1247 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
9065static struct sensor_device_attribute sensor_dev_attr_temp3_beep = {{{"temp3_beep", 292U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
9066 {(char)0}, {(char)0}, {(char)0},
9067 {(char)0}, {(char)0}}}}, & show_beep,
9068 (ssize_t (*)(struct device * , struct device_attribute * , char const * , size_t ))0},
9069 2};
9070#line 1249 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
9071static ssize_t show_vrm_reg(struct device *dev , struct device_attribute *attr , char *buf )
9072{ struct it87_data *data ;
9073 void *tmp ;
9074 int tmp___0 ;
9075 struct device const *__cil_tmp7 ;
9076 u8 __cil_tmp8 ;
9077 int __cil_tmp9 ;
9078
9079 {
9080 {
9081#line 1252
9082 __cil_tmp7 = (struct device const *)dev;
9083#line 1252
9084 tmp = dev_get_drvdata(__cil_tmp7);
9085#line 1252
9086 data = (struct it87_data *)tmp;
9087#line 1253
9088 __cil_tmp8 = data->vrm;
9089#line 1253
9090 __cil_tmp9 = (int )__cil_tmp8;
9091#line 1253
9092 tmp___0 = sprintf(buf, "%u\n", __cil_tmp9);
9093 }
9094#line 1253
9095 return ((ssize_t )tmp___0);
9096}
9097}
9098#line 1255 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
9099static ssize_t store_vrm_reg(struct device *dev , struct device_attribute *attr ,
9100 char const *buf , size_t count )
9101{ struct it87_data *data ;
9102 void *tmp ;
9103 unsigned long val ;
9104 int tmp___0 ;
9105 struct device const *__cil_tmp9 ;
9106
9107 {
9108 {
9109#line 1258
9110 __cil_tmp9 = (struct device const *)dev;
9111#line 1258
9112 tmp = dev_get_drvdata(__cil_tmp9);
9113#line 1258
9114 data = (struct it87_data *)tmp;
9115#line 1261
9116 tmp___0 = kstrtoul(buf, 10U, & val);
9117 }
9118#line 1261
9119 if (tmp___0 < 0) {
9120#line 1262
9121 return (-22L);
9122 } else {
9123
9124 }
9125#line 1264
9126 data->vrm = (u8 )val;
9127#line 1266
9128 return ((ssize_t )count);
9129}
9130}
9131#line 1268 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
9132static struct device_attribute dev_attr_vrm = {{"vrm", 420U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0}, {(char)0},
9133 {(char)0}, {(char)0}, {(char)0}, {(char)0}}}},
9134 & show_vrm_reg, & store_vrm_reg};
9135#line 1270 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
9136static ssize_t show_vid_reg(struct device *dev , struct device_attribute *attr , char *buf )
9137{ struct it87_data *data ;
9138 struct it87_data *tmp ;
9139 int tmp___0 ;
9140 int tmp___1 ;
9141 u8 __cil_tmp8 ;
9142 int __cil_tmp9 ;
9143 u8 __cil_tmp10 ;
9144 int __cil_tmp11 ;
9145 u8 __cil_tmp12 ;
9146 long __cil_tmp13 ;
9147
9148 {
9149 {
9150#line 1273
9151 tmp = it87_update_device(dev);
9152#line 1273
9153 data = tmp;
9154#line 1274
9155 __cil_tmp8 = data->vid;
9156#line 1274
9157 __cil_tmp9 = (int )__cil_tmp8;
9158#line 1274
9159 __cil_tmp10 = data->vrm;
9160#line 1274
9161 __cil_tmp11 = (int )__cil_tmp10;
9162#line 1274
9163 __cil_tmp12 = (u8 )__cil_tmp11;
9164#line 1274
9165 tmp___0 = vid_from_reg(__cil_tmp9, __cil_tmp12);
9166#line 1274
9167 __cil_tmp13 = (long )tmp___0;
9168#line 1274
9169 tmp___1 = sprintf(buf, "%ld\n", __cil_tmp13);
9170 }
9171#line 1274
9172 return ((ssize_t )tmp___1);
9173}
9174}
9175#line 1276 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
9176static struct device_attribute dev_attr_cpu0_vid = {{"cpu0_vid", 292U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
9177 {(char)0}, {(char)0}, {(char)0},
9178 {(char)0}, {(char)0}}}}, & show_vid_reg,
9179 (ssize_t (*)(struct device * , struct device_attribute * , char const * , size_t ))0};
9180#line 1278 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
9181static ssize_t show_label(struct device *dev , struct device_attribute *attr , char *buf )
9182{ char const *labels[3U] ;
9183 char const *labels_it8721[3U] ;
9184 struct it87_data *data ;
9185 void *tmp ;
9186 int nr ;
9187 struct device_attribute const *__mptr ;
9188 char const *tmp___0 ;
9189 int tmp___1 ;
9190 struct device const *__cil_tmp12 ;
9191 struct sensor_device_attribute *__cil_tmp13 ;
9192 enum chips __cil_tmp14 ;
9193 unsigned int __cil_tmp15 ;
9194
9195 {
9196 {
9197#line 1281
9198 labels[0] = "+5V";
9199#line 1281
9200 labels[1] = "5VSB";
9201#line 1281
9202 labels[2] = "Vbat";
9203#line 1286
9204 labels_it8721[0] = "+3.3V";
9205#line 1286
9206 labels_it8721[1] = "3VSB";
9207#line 1286
9208 labels_it8721[2] = "Vbat";
9209#line 1291
9210 __cil_tmp12 = (struct device const *)dev;
9211#line 1291
9212 tmp = dev_get_drvdata(__cil_tmp12);
9213#line 1291
9214 data = (struct it87_data *)tmp;
9215#line 1292
9216 __mptr = (struct device_attribute const *)attr;
9217#line 1292
9218 __cil_tmp13 = (struct sensor_device_attribute *)__mptr;
9219#line 1292
9220 nr = __cil_tmp13->index;
9221 }
9222 {
9223#line 1294
9224 __cil_tmp14 = data->type;
9225#line 1294
9226 __cil_tmp15 = (unsigned int )__cil_tmp14;
9227#line 1294
9228 if (__cil_tmp15 == 5U) {
9229#line 1294
9230 tmp___0 = labels_it8721[nr];
9231 } else {
9232#line 1294
9233 tmp___0 = labels[nr];
9234 }
9235 }
9236 {
9237#line 1294
9238 tmp___1 = sprintf(buf, "%s\n", tmp___0);
9239 }
9240#line 1294
9241 return ((ssize_t )tmp___1);
9242}
9243}
9244#line 1297 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
9245static struct sensor_device_attribute sensor_dev_attr_in3_label = {{{"in3_label", 292U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
9246 {(char)0}, {(char)0}, {(char)0},
9247 {(char)0}, {(char)0}}}}, & show_label,
9248 (ssize_t (*)(struct device * , struct device_attribute * , char const * , size_t ))0},
9249 0};
9250#line 1298 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
9251static struct sensor_device_attribute sensor_dev_attr_in7_label = {{{"in7_label", 292U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
9252 {(char)0}, {(char)0}, {(char)0},
9253 {(char)0}, {(char)0}}}}, & show_label,
9254 (ssize_t (*)(struct device * , struct device_attribute * , char const * , size_t ))0},
9255 1};
9256#line 1299 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
9257static struct sensor_device_attribute sensor_dev_attr_in8_label = {{{"in8_label", 292U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
9258 {(char)0}, {(char)0}, {(char)0},
9259 {(char)0}, {(char)0}}}}, & show_label,
9260 (ssize_t (*)(struct device * , struct device_attribute * , char const * , size_t ))0},
9261 2};
9262#line 1301 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
9263static ssize_t show_name(struct device *dev , struct device_attribute *devattr , char *buf )
9264{ struct it87_data *data ;
9265 void *tmp ;
9266 int tmp___0 ;
9267 struct device const *__cil_tmp7 ;
9268 char const *__cil_tmp8 ;
9269
9270 {
9271 {
9272#line 1304
9273 __cil_tmp7 = (struct device const *)dev;
9274#line 1304
9275 tmp = dev_get_drvdata(__cil_tmp7);
9276#line 1304
9277 data = (struct it87_data *)tmp;
9278#line 1305
9279 __cil_tmp8 = data->name;
9280#line 1305
9281 tmp___0 = sprintf(buf, "%s\n", __cil_tmp8);
9282 }
9283#line 1305
9284 return ((ssize_t )tmp___0);
9285}
9286}
9287#line 1307 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
9288static struct device_attribute dev_attr_name = {{"name", 292U, (struct lock_class_key *)0, {{{(char)0}, {(char)0}, {(char)0},
9289 {(char)0}, {(char)0}, {(char)0},
9290 {(char)0}, {(char)0}}}}, & show_name,
9291 (ssize_t (*)(struct device * , struct device_attribute * , char const * , size_t ))0};
9292#line 1309 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
9293static struct attribute *it87_attributes[51U] =
9294#line 1309
9295 { & sensor_dev_attr_in0_input.dev_attr.attr, & sensor_dev_attr_in1_input.dev_attr.attr, & sensor_dev_attr_in2_input.dev_attr.attr, & sensor_dev_attr_in3_input.dev_attr.attr,
9296 & sensor_dev_attr_in4_input.dev_attr.attr, & sensor_dev_attr_in5_input.dev_attr.attr, & sensor_dev_attr_in6_input.dev_attr.attr, & sensor_dev_attr_in7_input.dev_attr.attr,
9297 & sensor_dev_attr_in8_input.dev_attr.attr, & sensor_dev_attr_in0_min.dev_attr.attr, & sensor_dev_attr_in1_min.dev_attr.attr, & sensor_dev_attr_in2_min.dev_attr.attr,
9298 & sensor_dev_attr_in3_min.dev_attr.attr, & sensor_dev_attr_in4_min.dev_attr.attr, & sensor_dev_attr_in5_min.dev_attr.attr, & sensor_dev_attr_in6_min.dev_attr.attr,
9299 & sensor_dev_attr_in7_min.dev_attr.attr, & sensor_dev_attr_in0_max.dev_attr.attr, & sensor_dev_attr_in1_max.dev_attr.attr, & sensor_dev_attr_in2_max.dev_attr.attr,
9300 & sensor_dev_attr_in3_max.dev_attr.attr, & sensor_dev_attr_in4_max.dev_attr.attr, & sensor_dev_attr_in5_max.dev_attr.attr, & sensor_dev_attr_in6_max.dev_attr.attr,
9301 & sensor_dev_attr_in7_max.dev_attr.attr, & sensor_dev_attr_in0_alarm.dev_attr.attr, & sensor_dev_attr_in1_alarm.dev_attr.attr, & sensor_dev_attr_in2_alarm.dev_attr.attr,
9302 & sensor_dev_attr_in3_alarm.dev_attr.attr, & sensor_dev_attr_in4_alarm.dev_attr.attr, & sensor_dev_attr_in5_alarm.dev_attr.attr, & sensor_dev_attr_in6_alarm.dev_attr.attr,
9303 & sensor_dev_attr_in7_alarm.dev_attr.attr, & sensor_dev_attr_temp1_input.dev_attr.attr, & sensor_dev_attr_temp2_input.dev_attr.attr, & sensor_dev_attr_temp3_input.dev_attr.attr,
9304 & sensor_dev_attr_temp1_max.dev_attr.attr, & sensor_dev_attr_temp2_max.dev_attr.attr, & sensor_dev_attr_temp3_max.dev_attr.attr, & sensor_dev_attr_temp1_min.dev_attr.attr,
9305 & sensor_dev_attr_temp2_min.dev_attr.attr, & sensor_dev_attr_temp3_min.dev_attr.attr, & sensor_dev_attr_temp1_type.dev_attr.attr, & sensor_dev_attr_temp2_type.dev_attr.attr,
9306 & sensor_dev_attr_temp3_type.dev_attr.attr, & sensor_dev_attr_temp1_alarm.dev_attr.attr, & sensor_dev_attr_temp2_alarm.dev_attr.attr, & sensor_dev_attr_temp3_alarm.dev_attr.attr,
9307 & dev_attr_alarms.attr, & dev_attr_name.attr, (struct attribute *)0};
9308#line 1365 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
9309static struct attribute_group const it87_group = {(char const *)0, (mode_t (*)(struct kobject * , struct attribute * , int ))0,
9310 (struct attribute **)(& it87_attributes)};
9311#line 1369 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
9312static struct attribute *it87_attributes_beep[12U] =
9313#line 1369
9314 { & sensor_dev_attr_in0_beep.dev_attr.attr, & sensor_dev_attr_in1_beep.dev_attr.attr, & sensor_dev_attr_in2_beep.dev_attr.attr, & sensor_dev_attr_in3_beep.dev_attr.attr,
9315 & sensor_dev_attr_in4_beep.dev_attr.attr, & sensor_dev_attr_in5_beep.dev_attr.attr, & sensor_dev_attr_in6_beep.dev_attr.attr, & sensor_dev_attr_in7_beep.dev_attr.attr,
9316 & sensor_dev_attr_temp1_beep.dev_attr.attr, & sensor_dev_attr_temp2_beep.dev_attr.attr, & sensor_dev_attr_temp3_beep.dev_attr.attr, (struct attribute *)0};
9317#line 1385 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
9318static struct attribute_group const it87_group_beep = {(char const *)0, (mode_t (*)(struct kobject * , struct attribute * , int ))0,
9319 (struct attribute **)(& it87_attributes_beep)};
9320#line 1389 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
9321static struct attribute *it87_attributes_fan16[5U][4U] = { { & sensor_dev_attr_fan1_input16.dev_attr.attr, & sensor_dev_attr_fan1_min16.dev_attr.attr, & sensor_dev_attr_fan1_alarm.dev_attr.attr, (struct attribute *)0},
9322 { & sensor_dev_attr_fan2_input16.dev_attr.attr, & sensor_dev_attr_fan2_min16.dev_attr.attr, & sensor_dev_attr_fan2_alarm.dev_attr.attr, (struct attribute *)0},
9323 { & sensor_dev_attr_fan3_input16.dev_attr.attr, & sensor_dev_attr_fan3_min16.dev_attr.attr, & sensor_dev_attr_fan3_alarm.dev_attr.attr, (struct attribute *)0},
9324 { & sensor_dev_attr_fan4_input16.dev_attr.attr, & sensor_dev_attr_fan4_min16.dev_attr.attr, & sensor_dev_attr_fan4_alarm.dev_attr.attr, (struct attribute *)0},
9325 { & sensor_dev_attr_fan5_input16.dev_attr.attr, & sensor_dev_attr_fan5_min16.dev_attr.attr, & sensor_dev_attr_fan5_alarm.dev_attr.attr, (struct attribute *)0}};
9326#line 1416 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
9327static struct attribute_group const it87_group_fan16[5U] = { {(char const *)0, (mode_t (*)(struct kobject * , struct attribute * , int ))0,
9328 (struct attribute **)(& it87_attributes_fan16)},
9329 {(char const *)0, (mode_t (*)(struct kobject * , struct attribute * , int ))0,
9330 (struct attribute **)(& it87_attributes_fan16) + 1U},
9331 {(char const *)0, (mode_t (*)(struct kobject * , struct attribute * , int ))0,
9332 (struct attribute **)(& it87_attributes_fan16) + 2U},
9333 {(char const *)0, (mode_t (*)(struct kobject * , struct attribute * , int ))0,
9334 (struct attribute **)(& it87_attributes_fan16) + 3U},
9335 {(char const *)0, (mode_t (*)(struct kobject * , struct attribute * , int ))0,
9336 (struct attribute **)(& it87_attributes_fan16) + 4U}};
9337#line 1424 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
9338static struct attribute *it87_attributes_fan[3U][5U] = { { & sensor_dev_attr_fan1_input.dev_attr.attr, & sensor_dev_attr_fan1_min.dev_attr.attr, & sensor_dev_attr_fan1_div.dev_attr.attr, & sensor_dev_attr_fan1_alarm.dev_attr.attr,
9339 (struct attribute *)0},
9340 { & sensor_dev_attr_fan2_input.dev_attr.attr, & sensor_dev_attr_fan2_min.dev_attr.attr, & sensor_dev_attr_fan2_div.dev_attr.attr, & sensor_dev_attr_fan2_alarm.dev_attr.attr,
9341 (struct attribute *)0},
9342 { & sensor_dev_attr_fan3_input.dev_attr.attr, & sensor_dev_attr_fan3_min.dev_attr.attr, & sensor_dev_attr_fan3_div.dev_attr.attr, & sensor_dev_attr_fan3_alarm.dev_attr.attr,
9343 (struct attribute *)0}};
9344#line 1444 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
9345static struct attribute_group const it87_group_fan[3U] = { {(char const *)0, (mode_t (*)(struct kobject * , struct attribute * , int ))0,
9346 (struct attribute **)(& it87_attributes_fan)},
9347 {(char const *)0, (mode_t (*)(struct kobject * , struct attribute * , int ))0,
9348 (struct attribute **)(& it87_attributes_fan) + 1U},
9349 {(char const *)0, (mode_t (*)(struct kobject * , struct attribute * , int ))0,
9350 (struct attribute **)(& it87_attributes_fan) + 2U}};
9351#line 1451 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
9352static struct attribute_group const *it87_get_fan_group(struct it87_data const *data )
9353{ struct attribute_group const *tmp___0 ;
9354 int tmp___1 ;
9355
9356 {
9357 {
9358#line 1453
9359 tmp___1 = has_16bit_fans(data);
9360 }
9361#line 1453
9362 if (tmp___1 != 0) {
9363#line 1453
9364 tmp___0 = (struct attribute_group const *)(& it87_group_fan16);
9365 } else {
9366#line 1453
9367 tmp___0 = (struct attribute_group const *)(& it87_group_fan);
9368 }
9369#line 1453
9370 return (tmp___0);
9371}
9372}
9373#line 1456 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
9374static struct attribute *it87_attributes_pwm[3U][5U] = { { & sensor_dev_attr_pwm1_enable.dev_attr.attr, & sensor_dev_attr_pwm1.dev_attr.attr, & dev_attr_pwm1_freq.attr, & sensor_dev_attr_pwm1_auto_channels_temp.dev_attr.attr,
9375 (struct attribute *)0},
9376 { & sensor_dev_attr_pwm2_enable.dev_attr.attr, & sensor_dev_attr_pwm2.dev_attr.attr, & dev_attr_pwm2_freq.attr, & sensor_dev_attr_pwm2_auto_channels_temp.dev_attr.attr,
9377 (struct attribute *)0},
9378 { & sensor_dev_attr_pwm3_enable.dev_attr.attr, & sensor_dev_attr_pwm3.dev_attr.attr, & dev_attr_pwm3_freq.attr, & sensor_dev_attr_pwm3_auto_channels_temp.dev_attr.attr,
9379 (struct attribute *)0}};
9380#line 1476 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
9381static struct attribute_group const it87_group_pwm[3U] = { {(char const *)0, (mode_t (*)(struct kobject * , struct attribute * , int ))0,
9382 (struct attribute **)(& it87_attributes_pwm)},
9383 {(char const *)0, (mode_t (*)(struct kobject * , struct attribute * , int ))0,
9384 (struct attribute **)(& it87_attributes_pwm) + 1U},
9385 {(char const *)0, (mode_t (*)(struct kobject * , struct attribute * , int ))0,
9386 (struct attribute **)(& it87_attributes_pwm) + 2U}};
9387#line 1482 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
9388static struct attribute *it87_attributes_autopwm[3U][10U] = { { & sensor_dev_attr_pwm1_auto_point1_pwm.dev_attr.attr, & sensor_dev_attr_pwm1_auto_point2_pwm.dev_attr.attr, & sensor_dev_attr_pwm1_auto_point3_pwm.dev_attr.attr, & sensor_dev_attr_pwm1_auto_point4_pwm.dev_attr.attr,
9389 & sensor_dev_attr_pwm1_auto_point1_temp.dev_attr.attr, & sensor_dev_attr_pwm1_auto_point1_temp_hyst.dev_attr.attr, & sensor_dev_attr_pwm1_auto_point2_temp.dev_attr.attr, & sensor_dev_attr_pwm1_auto_point3_temp.dev_attr.attr,
9390 & sensor_dev_attr_pwm1_auto_point4_temp.dev_attr.attr, (struct attribute *)0},
9391 { & sensor_dev_attr_pwm2_auto_point1_pwm.dev_attr.attr, & sensor_dev_attr_pwm2_auto_point2_pwm.dev_attr.attr, & sensor_dev_attr_pwm2_auto_point3_pwm.dev_attr.attr, & sensor_dev_attr_pwm2_auto_point4_pwm.dev_attr.attr,
9392 & sensor_dev_attr_pwm2_auto_point1_temp.dev_attr.attr, & sensor_dev_attr_pwm2_auto_point1_temp_hyst.dev_attr.attr, & sensor_dev_attr_pwm2_auto_point2_temp.dev_attr.attr, & sensor_dev_attr_pwm2_auto_point3_temp.dev_attr.attr,
9393 & sensor_dev_attr_pwm2_auto_point4_temp.dev_attr.attr, (struct attribute *)0},
9394 { & sensor_dev_attr_pwm3_auto_point1_pwm.dev_attr.attr, & sensor_dev_attr_pwm3_auto_point2_pwm.dev_attr.attr, & sensor_dev_attr_pwm3_auto_point3_pwm.dev_attr.attr, & sensor_dev_attr_pwm3_auto_point4_pwm.dev_attr.attr,
9395 & sensor_dev_attr_pwm3_auto_point1_temp.dev_attr.attr, & sensor_dev_attr_pwm3_auto_point1_temp_hyst.dev_attr.attr, & sensor_dev_attr_pwm3_auto_point2_temp.dev_attr.attr, & sensor_dev_attr_pwm3_auto_point3_temp.dev_attr.attr,
9396 & sensor_dev_attr_pwm3_auto_point4_temp.dev_attr.attr, (struct attribute *)0}};
9397#line 1517 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
9398static struct attribute_group const it87_group_autopwm[3U] = { {(char const *)0, (mode_t (*)(struct kobject * , struct attribute * , int ))0,
9399 (struct attribute **)(& it87_attributes_autopwm)},
9400 {(char const *)0, (mode_t (*)(struct kobject * , struct attribute * , int ))0,
9401 (struct attribute **)(& it87_attributes_autopwm) + 1U},
9402 {(char const *)0, (mode_t (*)(struct kobject * , struct attribute * , int ))0,
9403 (struct attribute **)(& it87_attributes_autopwm) + 2U}};
9404#line 1523 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
9405static struct attribute *it87_attributes_fan_beep[5U] = { & sensor_dev_attr_fan1_beep.dev_attr.attr, & sensor_dev_attr_fan2_beep.dev_attr.attr, & sensor_dev_attr_fan3_beep.dev_attr.attr, & sensor_dev_attr_fan4_beep.dev_attr.attr,
9406 & sensor_dev_attr_fan5_beep.dev_attr.attr};
9407#line 1531 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
9408static struct attribute *it87_attributes_vid[3U] = { & dev_attr_vrm.attr, & dev_attr_cpu0_vid.attr, (struct attribute *)0};
9409#line 1537 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
9410static struct attribute_group const it87_group_vid = {(char const *)0, (mode_t (*)(struct kobject * , struct attribute * , int ))0,
9411 (struct attribute **)(& it87_attributes_vid)};
9412#line 1541 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
9413static struct attribute *it87_attributes_label[4U] = { & sensor_dev_attr_in3_label.dev_attr.attr, & sensor_dev_attr_in7_label.dev_attr.attr, & sensor_dev_attr_in8_label.dev_attr.attr, (struct attribute *)0};
9414#line 1548 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
9415static struct attribute_group const it87_group_label = {(char const *)0, (mode_t (*)(struct kobject * , struct attribute * , int ))0,
9416 (struct attribute **)(& it87_attributes_label)};
9417#line 1553 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
9418static int it87_find(unsigned short *address , struct it87_sio_data *sio_data )
9419{ int err ;
9420 u16 chip_type ;
9421 char const *board_vendor ;
9422 char const *board_name ;
9423 int tmp ;
9424 int tmp___0 ;
9425 int tmp___1 ;
9426 int tmp___2 ;
9427 int tmp___3 ;
9428 int reg ;
9429 int tmp___4 ;
9430 int tmp___5 ;
9431 int tmp___6 ;
9432 int tmp___7 ;
9433 unsigned int __cil_tmp17 ;
9434 int __cil_tmp18 ;
9435 int __cil_tmp19 ;
9436 int __cil_tmp20 ;
9437 int __cil_tmp21 ;
9438 int __cil_tmp22 ;
9439 int __cil_tmp23 ;
9440 int __cil_tmp24 ;
9441 int __cil_tmp25 ;
9442 int __cil_tmp26 ;
9443 int __cil_tmp27 ;
9444 unsigned short __cil_tmp28 ;
9445 unsigned int __cil_tmp29 ;
9446 unsigned int __cil_tmp30 ;
9447 unsigned short __cil_tmp31 ;
9448 unsigned int __cil_tmp32 ;
9449 u8 __cil_tmp33 ;
9450 unsigned int __cil_tmp34 ;
9451 unsigned int __cil_tmp35 ;
9452 int __cil_tmp36 ;
9453 unsigned short __cil_tmp37 ;
9454 int __cil_tmp38 ;
9455 u8 __cil_tmp39 ;
9456 int __cil_tmp40 ;
9457 enum chips __cil_tmp41 ;
9458 unsigned int __cil_tmp42 ;
9459 u8 __cil_tmp43 ;
9460 unsigned int __cil_tmp44 ;
9461 unsigned int __cil_tmp45 ;
9462 enum chips __cil_tmp46 ;
9463 unsigned int __cil_tmp47 ;
9464 int __cil_tmp48 ;
9465 int __cil_tmp49 ;
9466 u8 __cil_tmp50 ;
9467 unsigned int __cil_tmp51 ;
9468 unsigned int __cil_tmp52 ;
9469 int __cil_tmp53 ;
9470 u8 __cil_tmp54 ;
9471 unsigned int __cil_tmp55 ;
9472 unsigned int __cil_tmp56 ;
9473 int __cil_tmp57 ;
9474 u8 __cil_tmp58 ;
9475 unsigned int __cil_tmp59 ;
9476 unsigned int __cil_tmp60 ;
9477 int __cil_tmp61 ;
9478 u8 __cil_tmp62 ;
9479 unsigned int __cil_tmp63 ;
9480 unsigned int __cil_tmp64 ;
9481 enum chips __cil_tmp65 ;
9482 unsigned int __cil_tmp66 ;
9483 enum chips __cil_tmp67 ;
9484 unsigned int __cil_tmp68 ;
9485 u8 __cil_tmp69 ;
9486 unsigned int __cil_tmp70 ;
9487 enum chips __cil_tmp71 ;
9488 unsigned int __cil_tmp72 ;
9489 int __cil_tmp73 ;
9490 u8 __cil_tmp74 ;
9491 unsigned int __cil_tmp75 ;
9492 unsigned int __cil_tmp76 ;
9493 int __cil_tmp77 ;
9494 u8 __cil_tmp78 ;
9495 unsigned int __cil_tmp79 ;
9496 unsigned int __cil_tmp80 ;
9497 enum chips __cil_tmp81 ;
9498 unsigned int __cil_tmp82 ;
9499 u8 __cil_tmp83 ;
9500 unsigned int __cil_tmp84 ;
9501 unsigned int __cil_tmp85 ;
9502 u8 __cil_tmp86 ;
9503 unsigned int __cil_tmp87 ;
9504 unsigned int __cil_tmp88 ;
9505 u8 __cil_tmp89 ;
9506 unsigned int __cil_tmp90 ;
9507 char const *__cil_tmp91 ;
9508 unsigned long __cil_tmp92 ;
9509 unsigned long __cil_tmp93 ;
9510 char const *__cil_tmp94 ;
9511 unsigned long __cil_tmp95 ;
9512 unsigned long __cil_tmp96 ;
9513
9514 {
9515 {
9516#line 1560
9517 err = superio_enter();
9518 }
9519#line 1561
9520 if (err != 0) {
9521#line 1562
9522 return (err);
9523 } else {
9524
9525 }
9526#line 1564
9527 err = -19;
9528 {
9529#line 1565
9530 __cil_tmp17 = (unsigned int )force_id;
9531#line 1565
9532 if (__cil_tmp17 == 0U) {
9533 {
9534#line 1565
9535 tmp = superio_inw(32);
9536#line 1565
9537 chip_type = (u16 )tmp;
9538 }
9539 } else {
9540#line 1565
9541 chip_type = force_id;
9542 }
9543 }
9544 {
9545#line 1568
9546 __cil_tmp18 = (int )chip_type;
9547#line 1568
9548 if (__cil_tmp18 == 34565) {
9549#line 1568
9550 goto case_34565;
9551 } else {
9552 {
9553#line 1571
9554 __cil_tmp19 = (int )chip_type;
9555#line 1571
9556 if (__cil_tmp19 == 34578) {
9557#line 1571
9558 goto case_34578;
9559 } else {
9560 {
9561#line 1574
9562 __cil_tmp20 = (int )chip_type;
9563#line 1574
9564 if (__cil_tmp20 == 34582) {
9565#line 1574
9566 goto case_34582;
9567 } else {
9568 {
9569#line 1575
9570 __cil_tmp21 = (int )chip_type;
9571#line 1575
9572 if (__cil_tmp21 == 34598) {
9573#line 1575
9574 goto case_34598;
9575 } else {
9576 {
9577#line 1578
9578 __cil_tmp22 = (int )chip_type;
9579#line 1578
9580 if (__cil_tmp22 == 34584) {
9581#line 1578
9582 goto case_34584;
9583 } else {
9584 {
9585#line 1581
9586 __cil_tmp23 = (int )chip_type;
9587#line 1581
9588 if (__cil_tmp23 == 34592) {
9589#line 1581
9590 goto case_34592;
9591 } else {
9592 {
9593#line 1584
9594 __cil_tmp24 = (int )chip_type;
9595#line 1584
9596 if (__cil_tmp24 == 34593) {
9597#line 1584
9598 goto case_34593;
9599 } else {
9600 {
9601#line 1587
9602 __cil_tmp25 = (int )chip_type;
9603#line 1587
9604 if (__cil_tmp25 == 65535) {
9605#line 1587
9606 goto case_65535;
9607 } else {
9608#line 1589
9609 goto switch_default;
9610#line 1567
9611 if (0) {
9612 case_34565:
9613#line 1569
9614 sio_data->type = (enum chips )0;
9615#line 1570
9616 goto ldv_24855;
9617 case_34578:
9618#line 1572
9619 sio_data->type = (enum chips )1;
9620#line 1573
9621 goto ldv_24855;
9622 case_34582: ;
9623 case_34598:
9624#line 1576
9625 sio_data->type = (enum chips )2;
9626#line 1577
9627 goto ldv_24855;
9628 case_34584:
9629#line 1579
9630 sio_data->type = (enum chips )3;
9631#line 1580
9632 goto ldv_24855;
9633 case_34592:
9634#line 1582
9635 sio_data->type = (enum chips )4;
9636#line 1583
9637 goto ldv_24855;
9638 case_34593:
9639#line 1585
9640 sio_data->type = (enum chips )5;
9641#line 1586
9642 goto ldv_24855;
9643 case_65535: ;
9644#line 1588
9645 goto exit;
9646 switch_default:
9647 {
9648#line 1590
9649 __cil_tmp26 = (int )chip_type;
9650#line 1590
9651 printk("<7>it87: Unsupported chip (DEVID=0x%x)\n", __cil_tmp26);
9652 }
9653#line 1591
9654 goto exit;
9655 } else {
9656
9657 }
9658 }
9659 }
9660 }
9661 }
9662 }
9663 }
9664 }
9665 }
9666 }
9667 }
9668 }
9669 }
9670 }
9671 }
9672 }
9673 }
9674 ldv_24855:
9675 {
9676#line 1594
9677 superio_select(4);
9678#line 1595
9679 tmp___0 = superio_inb(48);
9680 }
9681 {
9682#line 1595
9683 __cil_tmp27 = tmp___0 & 1;
9684#line 1595
9685 if (__cil_tmp27 == 0) {
9686 {
9687#line 1596
9688 printk("<6>it87: Device not activated, skipping\n");
9689 }
9690#line 1597
9691 goto exit;
9692 } else {
9693
9694 }
9695 }
9696 {
9697#line 1600
9698 tmp___1 = superio_inw(96);
9699#line 1600
9700 __cil_tmp28 = (unsigned short )tmp___1;
9701#line 1600
9702 __cil_tmp29 = (unsigned int )__cil_tmp28;
9703#line 1600
9704 __cil_tmp30 = __cil_tmp29 & 65528U;
9705#line 1600
9706 *address = (unsigned short )__cil_tmp30;
9707 }
9708 {
9709#line 1601
9710 __cil_tmp31 = *address;
9711#line 1601
9712 __cil_tmp32 = (unsigned int )__cil_tmp31;
9713#line 1601
9714 if (__cil_tmp32 == 0U) {
9715 {
9716#line 1602
9717 printk("<6>it87: Base address not set, skipping\n");
9718 }
9719#line 1603
9720 goto exit;
9721 } else {
9722
9723 }
9724 }
9725 {
9726#line 1606
9727 err = 0;
9728#line 1607
9729 tmp___2 = superio_inb(34);
9730#line 1607
9731 __cil_tmp33 = (u8 )tmp___2;
9732#line 1607
9733 __cil_tmp34 = (unsigned int )__cil_tmp33;
9734#line 1607
9735 __cil_tmp35 = __cil_tmp34 & 15U;
9736#line 1607
9737 sio_data->revision = (u8 )__cil_tmp35;
9738#line 1608
9739 __cil_tmp36 = (int )chip_type;
9740#line 1608
9741 __cil_tmp37 = *address;
9742#line 1608
9743 __cil_tmp38 = (int )__cil_tmp37;
9744#line 1608
9745 __cil_tmp39 = sio_data->revision;
9746#line 1608
9747 __cil_tmp40 = (int )__cil_tmp39;
9748#line 1608
9749 printk("<6>it87: Found IT%04xF chip at 0x%x, revision %d\n", __cil_tmp36, __cil_tmp38,
9750 __cil_tmp40);
9751#line 1612
9752 sio_data->internal = (u8 )4U;
9753 }
9754 {
9755#line 1615
9756 __cil_tmp41 = sio_data->type;
9757#line 1615
9758 __cil_tmp42 = (unsigned int )__cil_tmp41;
9759#line 1615
9760 if (__cil_tmp42 == 0U) {
9761 {
9762#line 1617
9763 sio_data->skip_vid = (u8 )1U;
9764#line 1620
9765 superio_select(5);
9766#line 1621
9767 tmp___3 = superio_inb(246);
9768#line 1621
9769 __cil_tmp43 = (u8 )tmp___3;
9770#line 1621
9771 __cil_tmp44 = (unsigned int )__cil_tmp43;
9772#line 1621
9773 __cil_tmp45 = __cil_tmp44 & 63U;
9774#line 1621
9775 sio_data->beep_pin = (u8 )__cil_tmp45;
9776 }
9777 } else {
9778 {
9779#line 1625
9780 superio_select(7);
9781#line 1627
9782 reg = superio_inb(39);
9783 }
9784 {
9785#line 1628
9786 __cil_tmp46 = sio_data->type;
9787#line 1628
9788 __cil_tmp47 = (unsigned int )__cil_tmp46;
9789#line 1628
9790 if (__cil_tmp47 == 5U) {
9791#line 1630
9792 sio_data->skip_vid = (u8 )1U;
9793 } else {
9794 {
9795#line 1633
9796 __cil_tmp48 = reg & 15;
9797#line 1633
9798 if (__cil_tmp48 != 0) {
9799 {
9800#line 1634
9801 printk("<6>it87: VID is disabled (pins used for GPIO)\n");
9802#line 1635
9803 sio_data->skip_vid = (u8 )1U;
9804 }
9805 } else {
9806
9807 }
9808 }
9809 }
9810 }
9811 {
9812#line 1640
9813 __cil_tmp49 = reg & 64;
9814#line 1640
9815 if (__cil_tmp49 != 0) {
9816#line 1641
9817 __cil_tmp50 = sio_data->skip_pwm;
9818#line 1641
9819 __cil_tmp51 = (unsigned int )__cil_tmp50;
9820#line 1641
9821 __cil_tmp52 = __cil_tmp51 | 4U;
9822#line 1641
9823 sio_data->skip_pwm = (u8 )__cil_tmp52;
9824 } else {
9825
9826 }
9827 }
9828 {
9829#line 1642
9830 __cil_tmp53 = reg & 128;
9831#line 1642
9832 if (__cil_tmp53 != 0) {
9833#line 1643
9834 __cil_tmp54 = sio_data->skip_fan;
9835#line 1643
9836 __cil_tmp55 = (unsigned int )__cil_tmp54;
9837#line 1643
9838 __cil_tmp56 = __cil_tmp55 | 4U;
9839#line 1643
9840 sio_data->skip_fan = (u8 )__cil_tmp56;
9841 } else {
9842
9843 }
9844 }
9845 {
9846#line 1646
9847 reg = superio_inb(41);
9848 }
9849 {
9850#line 1647
9851 __cil_tmp57 = reg & 2;
9852#line 1647
9853 if (__cil_tmp57 != 0) {
9854#line 1648
9855 __cil_tmp58 = sio_data->skip_pwm;
9856#line 1648
9857 __cil_tmp59 = (unsigned int )__cil_tmp58;
9858#line 1648
9859 __cil_tmp60 = __cil_tmp59 | 2U;
9860#line 1648
9861 sio_data->skip_pwm = (u8 )__cil_tmp60;
9862 } else {
9863
9864 }
9865 }
9866 {
9867#line 1649
9868 __cil_tmp61 = reg & 4;
9869#line 1649
9870 if (__cil_tmp61 != 0) {
9871#line 1650
9872 __cil_tmp62 = sio_data->skip_fan;
9873#line 1650
9874 __cil_tmp63 = (unsigned int )__cil_tmp62;
9875#line 1650
9876 __cil_tmp64 = __cil_tmp63 | 2U;
9877#line 1650
9878 sio_data->skip_fan = (u8 )__cil_tmp64;
9879 } else {
9880
9881 }
9882 }
9883 {
9884#line 1652
9885 __cil_tmp65 = sio_data->type;
9886#line 1652
9887 __cil_tmp66 = (unsigned int )__cil_tmp65;
9888#line 1652
9889 if (__cil_tmp66 == 3U) {
9890#line 1652
9891 goto _L;
9892 } else {
9893 {
9894#line 1652
9895 __cil_tmp67 = sio_data->type;
9896#line 1652
9897 __cil_tmp68 = (unsigned int )__cil_tmp67;
9898#line 1652
9899 if (__cil_tmp68 == 4U) {
9900 _L:
9901 {
9902#line 1652
9903 __cil_tmp69 = sio_data->skip_vid;
9904#line 1652
9905 __cil_tmp70 = (unsigned int )__cil_tmp69;
9906#line 1652
9907 if (__cil_tmp70 == 0U) {
9908 {
9909#line 1654
9910 tmp___4 = superio_inb(252);
9911#line 1654
9912 sio_data->vid_value = (u8 )tmp___4;
9913 }
9914 } else {
9915
9916 }
9917 }
9918 } else {
9919
9920 }
9921 }
9922 }
9923 }
9924 {
9925#line 1656
9926 reg = superio_inb(44);
9927 }
9928 {
9929#line 1667
9930 __cil_tmp71 = sio_data->type;
9931#line 1667
9932 __cil_tmp72 = (unsigned int )__cil_tmp71;
9933#line 1667
9934 if (__cil_tmp72 == 4U) {
9935 {
9936#line 1667
9937 __cil_tmp73 = reg & 2;
9938#line 1667
9939 if (__cil_tmp73 == 0) {
9940 {
9941#line 1668
9942 reg = reg | 2;
9943#line 1669
9944 superio_outb(44, reg);
9945#line 1670
9946 printk("<5>it87: Routing internal VCCH to in7\n");
9947 }
9948 } else {
9949
9950 }
9951 }
9952 } else {
9953
9954 }
9955 }
9956#line 1672
9957 if (reg & 1) {
9958#line 1673
9959 __cil_tmp74 = sio_data->internal;
9960#line 1673
9961 __cil_tmp75 = (unsigned int )__cil_tmp74;
9962#line 1673
9963 __cil_tmp76 = __cil_tmp75 | 1U;
9964#line 1673
9965 sio_data->internal = (u8 )__cil_tmp76;
9966 } else {
9967
9968 }
9969 {
9970#line 1674
9971 __cil_tmp77 = reg & 2;
9972#line 1674
9973 if (__cil_tmp77 != 0) {
9974#line 1675
9975 __cil_tmp78 = sio_data->internal;
9976#line 1675
9977 __cil_tmp79 = (unsigned int )__cil_tmp78;
9978#line 1675
9979 __cil_tmp80 = __cil_tmp79 | 2U;
9980#line 1675
9981 sio_data->internal = (u8 )__cil_tmp80;
9982 } else {
9983 {
9984#line 1674
9985 __cil_tmp81 = sio_data->type;
9986#line 1674
9987 __cil_tmp82 = (unsigned int )__cil_tmp81;
9988#line 1674
9989 if (__cil_tmp82 == 5U) {
9990#line 1675
9991 __cil_tmp83 = sio_data->internal;
9992#line 1675
9993 __cil_tmp84 = (unsigned int )__cil_tmp83;
9994#line 1675
9995 __cil_tmp85 = __cil_tmp84 | 2U;
9996#line 1675
9997 sio_data->internal = (u8 )__cil_tmp85;
9998 } else {
9999
10000 }
10001 }
10002 }
10003 }
10004 {
10005#line 1677
10006 tmp___5 = superio_inb(246);
10007#line 1677
10008 __cil_tmp86 = (u8 )tmp___5;
10009#line 1677
10010 __cil_tmp87 = (unsigned int )__cil_tmp86;
10011#line 1677
10012 __cil_tmp88 = __cil_tmp87 & 63U;
10013#line 1677
10014 sio_data->beep_pin = (u8 )__cil_tmp88;
10015 }
10016 }
10017 }
10018 {
10019#line 1679
10020 __cil_tmp89 = sio_data->beep_pin;
10021#line 1679
10022 __cil_tmp90 = (unsigned int )__cil_tmp89;
10023#line 1679
10024 if (__cil_tmp90 != 0U) {
10025 {
10026#line 1680
10027 printk("<6>it87: Beeping is supported\n");
10028 }
10029 } else {
10030
10031 }
10032 }
10033 {
10034#line 1683
10035 board_vendor = dmi_get_system_info(9);
10036#line 1684
10037 board_name = dmi_get_system_info(10);
10038 }
10039 {
10040#line 1685
10041 __cil_tmp91 = (char const *)0;
10042#line 1685
10043 __cil_tmp92 = (unsigned long )__cil_tmp91;
10044#line 1685
10045 __cil_tmp93 = (unsigned long )board_vendor;
10046#line 1685
10047 if (__cil_tmp93 != __cil_tmp92) {
10048 {
10049#line 1685
10050 __cil_tmp94 = (char const *)0;
10051#line 1685
10052 __cil_tmp95 = (unsigned long )__cil_tmp94;
10053#line 1685
10054 __cil_tmp96 = (unsigned long )board_name;
10055#line 1685
10056 if (__cil_tmp96 != __cil_tmp95) {
10057 {
10058#line 1686
10059 tmp___6 = strcmp(board_vendor, "nVIDIA");
10060 }
10061#line 1686
10062 if (tmp___6 == 0) {
10063 {
10064#line 1686
10065 tmp___7 = strcmp(board_name, "FN68PT");
10066 }
10067#line 1686
10068 if (tmp___7 == 0) {
10069 {
10070#line 1694
10071 printk("<6>it87: Disabling pwm2 due to hardware constraints\n");
10072#line 1695
10073 sio_data->skip_pwm = (u8 )2U;
10074 }
10075 } else {
10076
10077 }
10078 } else {
10079
10080 }
10081 } else {
10082
10083 }
10084 }
10085 } else {
10086
10087 }
10088 }
10089 exit:
10090 {
10091#line 1700
10092 superio_exit();
10093 }
10094#line 1701
10095 return (err);
10096}
10097}
10098#line 1704 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
10099static void it87_remove_files(struct device *dev )
10100{ struct it87_data *data ;
10101 void *tmp ;
10102 struct it87_sio_data *sio_data ;
10103 struct attribute_group const *fan_group ;
10104 struct attribute_group const *tmp___0 ;
10105 int i ;
10106 int tmp___1 ;
10107 struct platform_device const *__cil_tmp9 ;
10108 void *__cil_tmp10 ;
10109 struct it87_data const *__cil_tmp11 ;
10110 struct kobject *__cil_tmp12 ;
10111 u8 __cil_tmp13 ;
10112 unsigned int __cil_tmp14 ;
10113 struct kobject *__cil_tmp15 ;
10114 u8 __cil_tmp16 ;
10115 int __cil_tmp17 ;
10116 int __cil_tmp18 ;
10117 int __cil_tmp19 ;
10118 struct kobject *__cil_tmp20 ;
10119 unsigned long __cil_tmp21 ;
10120 struct attribute_group const *__cil_tmp22 ;
10121 u8 __cil_tmp23 ;
10122 unsigned int __cil_tmp24 ;
10123 struct kobject *__cil_tmp25 ;
10124 struct attribute const *__cil_tmp26 ;
10125 u8 __cil_tmp27 ;
10126 int __cil_tmp28 ;
10127 struct kobject *__cil_tmp29 ;
10128 unsigned long __cil_tmp30 ;
10129 struct attribute_group const *__cil_tmp31 ;
10130 struct attribute_group const *__cil_tmp32 ;
10131 struct it87_data const *__cil_tmp33 ;
10132 struct kobject *__cil_tmp34 ;
10133 unsigned long __cil_tmp35 ;
10134 struct attribute_group const *__cil_tmp36 ;
10135 struct attribute_group const *__cil_tmp37 ;
10136 u8 __cil_tmp38 ;
10137 unsigned int __cil_tmp39 ;
10138 struct kobject *__cil_tmp40 ;
10139 struct kobject *__cil_tmp41 ;
10140
10141 {
10142 {
10143#line 1706
10144 __cil_tmp9 = (struct platform_device const *)pdev;
10145#line 1706
10146 tmp = platform_get_drvdata(__cil_tmp9);
10147#line 1706
10148 data = (struct it87_data *)tmp;
10149#line 1707
10150 __cil_tmp10 = dev->platform_data;
10151#line 1707
10152 sio_data = (struct it87_sio_data *)__cil_tmp10;
10153#line 1708
10154 __cil_tmp11 = (struct it87_data const *)data;
10155#line 1708
10156 tmp___0 = it87_get_fan_group(__cil_tmp11);
10157#line 1708
10158 fan_group = tmp___0;
10159#line 1711
10160 __cil_tmp12 = & dev->kobj;
10161#line 1711
10162 sysfs_remove_group(__cil_tmp12, & it87_group);
10163 }
10164 {
10165#line 1712
10166 __cil_tmp13 = sio_data->beep_pin;
10167#line 1712
10168 __cil_tmp14 = (unsigned int )__cil_tmp13;
10169#line 1712
10170 if (__cil_tmp14 != 0U) {
10171 {
10172#line 1713
10173 __cil_tmp15 = & dev->kobj;
10174#line 1713
10175 sysfs_remove_group(__cil_tmp15, & it87_group_beep);
10176 }
10177 } else {
10178
10179 }
10180 }
10181#line 1714
10182 i = 0;
10183#line 1714
10184 goto ldv_24875;
10185 ldv_24874: ;
10186 {
10187#line 1715
10188 __cil_tmp16 = data->has_fan;
10189#line 1715
10190 __cil_tmp17 = (int )__cil_tmp16;
10191#line 1715
10192 __cil_tmp18 = __cil_tmp17 >> i;
10193#line 1715
10194 __cil_tmp19 = __cil_tmp18 & 1;
10195#line 1715
10196 if (__cil_tmp19 == 0) {
10197#line 1716
10198 goto ldv_24873;
10199 } else {
10200
10201 }
10202 }
10203 {
10204#line 1717
10205 __cil_tmp20 = & dev->kobj;
10206#line 1717
10207 __cil_tmp21 = (unsigned long )i;
10208#line 1717
10209 __cil_tmp22 = fan_group + __cil_tmp21;
10210#line 1717
10211 sysfs_remove_group(__cil_tmp20, __cil_tmp22);
10212 }
10213 {
10214#line 1718
10215 __cil_tmp23 = sio_data->beep_pin;
10216#line 1718
10217 __cil_tmp24 = (unsigned int )__cil_tmp23;
10218#line 1718
10219 if (__cil_tmp24 != 0U) {
10220 {
10221#line 1719
10222 __cil_tmp25 = & dev->kobj;
10223#line 1719
10224 __cil_tmp26 = (struct attribute const *)it87_attributes_fan_beep[i];
10225#line 1719
10226 sysfs_remove_file(__cil_tmp25, __cil_tmp26);
10227 }
10228 } else {
10229
10230 }
10231 }
10232 ldv_24873:
10233#line 1714
10234 i = i + 1;
10235 ldv_24875: ;
10236#line 1714
10237 if (i <= 4) {
10238#line 1715
10239 goto ldv_24874;
10240 } else {
10241#line 1717
10242 goto ldv_24876;
10243 }
10244 ldv_24876:
10245#line 1722
10246 i = 0;
10247#line 1722
10248 goto ldv_24879;
10249 ldv_24878: ;
10250 {
10251#line 1723
10252 __cil_tmp27 = sio_data->skip_pwm;
10253#line 1723
10254 __cil_tmp28 = (int )__cil_tmp27;
10255#line 1723
10256 if (__cil_tmp28 & 1) {
10257#line 1724
10258 goto ldv_24877;
10259 } else {
10260
10261 }
10262 }
10263 {
10264#line 1725
10265 __cil_tmp29 = & dev->kobj;
10266#line 1725
10267 __cil_tmp30 = (unsigned long )i;
10268#line 1725
10269 __cil_tmp31 = (struct attribute_group const *)(& it87_group_pwm);
10270#line 1725
10271 __cil_tmp32 = __cil_tmp31 + __cil_tmp30;
10272#line 1725
10273 sysfs_remove_group(__cil_tmp29, __cil_tmp32);
10274#line 1726
10275 __cil_tmp33 = (struct it87_data const *)data;
10276#line 1726
10277 tmp___1 = has_old_autopwm(__cil_tmp33);
10278 }
10279#line 1726
10280 if (tmp___1 != 0) {
10281 {
10282#line 1727
10283 __cil_tmp34 = & dev->kobj;
10284#line 1727
10285 __cil_tmp35 = (unsigned long )i;
10286#line 1727
10287 __cil_tmp36 = (struct attribute_group const *)(& it87_group_autopwm);
10288#line 1727
10289 __cil_tmp37 = __cil_tmp36 + __cil_tmp35;
10290#line 1727
10291 sysfs_remove_group(__cil_tmp34, __cil_tmp37);
10292 }
10293 } else {
10294
10295 }
10296 ldv_24877:
10297#line 1722
10298 i = i + 1;
10299 ldv_24879: ;
10300#line 1722
10301 if (i <= 2) {
10302#line 1723
10303 goto ldv_24878;
10304 } else {
10305#line 1725
10306 goto ldv_24880;
10307 }
10308 ldv_24880: ;
10309 {
10310#line 1730
10311 __cil_tmp38 = sio_data->skip_vid;
10312#line 1730
10313 __cil_tmp39 = (unsigned int )__cil_tmp38;
10314#line 1730
10315 if (__cil_tmp39 == 0U) {
10316 {
10317#line 1731
10318 __cil_tmp40 = & dev->kobj;
10319#line 1731
10320 sysfs_remove_group(__cil_tmp40, & it87_group_vid);
10321 }
10322 } else {
10323
10324 }
10325 }
10326 {
10327#line 1732
10328 __cil_tmp41 = & dev->kobj;
10329#line 1732
10330 sysfs_remove_group(__cil_tmp41, & it87_group_label);
10331 }
10332#line 1733
10333 return;
10334}
10335}
10336#line 1735 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
10337static int it87_probe(struct platform_device *pdev___0 )
10338{ struct it87_data *data ;
10339 struct resource *res ;
10340 struct device *dev ;
10341 struct it87_sio_data *sio_data ;
10342 struct attribute_group const *fan_group ;
10343 int err ;
10344 int i ;
10345 int enable_pwm_interface ;
10346 int fan_beep_need_rw ;
10347 char const *names[6U] ;
10348 struct resource *tmp ;
10349 void *tmp___0 ;
10350 int tmp___1 ;
10351 int tmp___2 ;
10352 struct lock_class_key __key ;
10353 int tmp___3 ;
10354 int tmp___4 ;
10355 long tmp___5 ;
10356 long tmp___6 ;
10357 void *__cil_tmp21 ;
10358 resource_size_t __cil_tmp22 ;
10359 struct resource *__cil_tmp23 ;
10360 unsigned long __cil_tmp24 ;
10361 unsigned long __cil_tmp25 ;
10362 struct device const *__cil_tmp26 ;
10363 resource_size_t __cil_tmp27 ;
10364 unsigned long __cil_tmp28 ;
10365 resource_size_t __cil_tmp29 ;
10366 resource_size_t __cil_tmp30 ;
10367 unsigned long __cil_tmp31 ;
10368 struct it87_data *__cil_tmp32 ;
10369 unsigned long __cil_tmp33 ;
10370 unsigned long __cil_tmp34 ;
10371 resource_size_t __cil_tmp35 ;
10372 u8 __cil_tmp36 ;
10373 int __cil_tmp37 ;
10374 u8 __cil_tmp38 ;
10375 void *__cil_tmp39 ;
10376 struct mutex *__cil_tmp40 ;
10377 enum chips __cil_tmp41 ;
10378 unsigned int __cil_tmp42 ;
10379 u8 __cil_tmp43 ;
10380 int __cil_tmp44 ;
10381 u16 __cil_tmp45 ;
10382 unsigned int __cil_tmp46 ;
10383 unsigned int __cil_tmp47 ;
10384 u8 __cil_tmp48 ;
10385 int __cil_tmp49 ;
10386 int __cil_tmp50 ;
10387 u16 __cil_tmp51 ;
10388 unsigned int __cil_tmp52 ;
10389 unsigned int __cil_tmp53 ;
10390 u8 __cil_tmp54 ;
10391 int __cil_tmp55 ;
10392 int __cil_tmp56 ;
10393 u16 __cil_tmp57 ;
10394 unsigned int __cil_tmp58 ;
10395 unsigned int __cil_tmp59 ;
10396 struct kobject *__cil_tmp60 ;
10397 u8 __cil_tmp61 ;
10398 unsigned int __cil_tmp62 ;
10399 struct kobject *__cil_tmp63 ;
10400 struct it87_data const *__cil_tmp64 ;
10401 u8 __cil_tmp65 ;
10402 int __cil_tmp66 ;
10403 int __cil_tmp67 ;
10404 int __cil_tmp68 ;
10405 struct kobject *__cil_tmp69 ;
10406 unsigned long __cil_tmp70 ;
10407 struct attribute_group const *__cil_tmp71 ;
10408 u8 __cil_tmp72 ;
10409 unsigned int __cil_tmp73 ;
10410 struct kobject *__cil_tmp74 ;
10411 struct attribute const *__cil_tmp75 ;
10412 struct kobject *__cil_tmp76 ;
10413 struct attribute const *__cil_tmp77 ;
10414 struct device const *__cil_tmp78 ;
10415 int __cil_tmp79 ;
10416 u8 __cil_tmp80 ;
10417 int __cil_tmp81 ;
10418 int __cil_tmp82 ;
10419 struct kobject *__cil_tmp83 ;
10420 unsigned long __cil_tmp84 ;
10421 struct attribute_group const *__cil_tmp85 ;
10422 struct attribute_group const *__cil_tmp86 ;
10423 struct it87_data const *__cil_tmp87 ;
10424 struct kobject *__cil_tmp88 ;
10425 unsigned long __cil_tmp89 ;
10426 struct attribute_group const *__cil_tmp90 ;
10427 struct attribute_group const *__cil_tmp91 ;
10428 u8 __cil_tmp92 ;
10429 unsigned int __cil_tmp93 ;
10430 struct kobject *__cil_tmp94 ;
10431 u8 __cil_tmp95 ;
10432 int __cil_tmp96 ;
10433 int __cil_tmp97 ;
10434 int __cil_tmp98 ;
10435 struct kobject *__cil_tmp99 ;
10436 struct attribute const *__cil_tmp100 ;
10437 struct device *__cil_tmp101 ;
10438 void const *__cil_tmp102 ;
10439 struct device *__cil_tmp103 ;
10440 void const *__cil_tmp104 ;
10441 void *__cil_tmp105 ;
10442 void const *__cil_tmp106 ;
10443 resource_size_t __cil_tmp107 ;
10444
10445 {
10446 {
10447#line 1739
10448 dev = & pdev___0->dev;
10449#line 1740
10450 __cil_tmp21 = dev->platform_data;
10451#line 1740
10452 sio_data = (struct it87_sio_data *)__cil_tmp21;
10453#line 1742
10454 err = 0;
10455#line 1745
10456 names[0] = "it87";
10457#line 1745
10458 names[1] = "it8712";
10459#line 1745
10460 names[2] = "it8716";
10461#line 1745
10462 names[3] = "it8718";
10463#line 1745
10464 names[4] = "it8720";
10465#line 1745
10466 names[5] = "it8721";
10467#line 1754
10468 res = platform_get_resource(pdev___0, 256U, 0U);
10469#line 1755
10470 __cil_tmp22 = res->start;
10471#line 1755
10472 tmp = __request_region(& ioport_resource, __cil_tmp22, 2ULL, "it87", 0);
10473 }
10474 {
10475#line 1755
10476 __cil_tmp23 = (struct resource *)0;
10477#line 1755
10478 __cil_tmp24 = (unsigned long )__cil_tmp23;
10479#line 1755
10480 __cil_tmp25 = (unsigned long )tmp;
10481#line 1755
10482 if (__cil_tmp25 == __cil_tmp24) {
10483 {
10484#line 1756
10485 __cil_tmp26 = (struct device const *)dev;
10486#line 1756
10487 __cil_tmp27 = res->start;
10488#line 1756
10489 __cil_tmp28 = (unsigned long )__cil_tmp27;
10490#line 1756
10491 __cil_tmp29 = res->start;
10492#line 1756
10493 __cil_tmp30 = __cil_tmp29 + 1ULL;
10494#line 1756
10495 __cil_tmp31 = (unsigned long )__cil_tmp30;
10496#line 1756
10497 dev_err(__cil_tmp26, "Failed to request region 0x%lx-0x%lx\n", __cil_tmp28, __cil_tmp31);
10498#line 1759
10499 err = -16;
10500 }
10501#line 1760
10502 goto ERROR0;
10503 } else {
10504
10505 }
10506 }
10507 {
10508#line 1763
10509 tmp___0 = kzalloc(320UL, 208U);
10510#line 1763
10511 data = (struct it87_data *)tmp___0;
10512 }
10513 {
10514#line 1764
10515 __cil_tmp32 = (struct it87_data *)0;
10516#line 1764
10517 __cil_tmp33 = (unsigned long )__cil_tmp32;
10518#line 1764
10519 __cil_tmp34 = (unsigned long )data;
10520#line 1764
10521 if (__cil_tmp34 == __cil_tmp33) {
10522#line 1765
10523 err = -12;
10524#line 1766
10525 goto ERROR1;
10526 } else {
10527
10528 }
10529 }
10530 {
10531#line 1769
10532 __cil_tmp35 = res->start;
10533#line 1769
10534 data->addr = (unsigned short )__cil_tmp35;
10535#line 1770
10536 data->type = sio_data->type;
10537#line 1771
10538 data->revision = sio_data->revision;
10539#line 1772
10540 data->name = names[(unsigned int )sio_data->type];
10541#line 1775
10542 __cil_tmp36 = (u8 )0;
10543#line 1775
10544 tmp___1 = it87_read_value(data, __cil_tmp36);
10545 }
10546 {
10547#line 1775
10548 __cil_tmp37 = tmp___1 & 128;
10549#line 1775
10550 if (__cil_tmp37 != 0) {
10551#line 1777
10552 err = -19;
10553#line 1778
10554 goto ERROR2;
10555 } else {
10556 {
10557#line 1775
10558 __cil_tmp38 = (u8 )88;
10559#line 1775
10560 tmp___2 = it87_read_value(data, __cil_tmp38);
10561 }
10562#line 1775
10563 if (tmp___2 != 144) {
10564#line 1777
10565 err = -19;
10566#line 1778
10567 goto ERROR2;
10568 } else {
10569
10570 }
10571 }
10572 }
10573 {
10574#line 1781
10575 __cil_tmp39 = (void *)data;
10576#line 1781
10577 platform_set_drvdata(pdev___0, __cil_tmp39);
10578#line 1783
10579 __cil_tmp40 = & data->update_lock;
10580#line 1783
10581 __mutex_init(__cil_tmp40, "&data->update_lock", & __key);
10582#line 1786
10583 enable_pwm_interface = it87_check_pwm(dev);
10584 }
10585 {
10586#line 1789
10587 __cil_tmp41 = data->type;
10588#line 1789
10589 __cil_tmp42 = (unsigned int )__cil_tmp41;
10590#line 1789
10591 if (__cil_tmp42 == 5U) {
10592 {
10593#line 1790
10594 __cil_tmp43 = sio_data->internal;
10595#line 1790
10596 __cil_tmp44 = (int )__cil_tmp43;
10597#line 1790
10598 if (__cil_tmp44 & 1) {
10599#line 1791
10600 __cil_tmp45 = data->in_scaled;
10601#line 1791
10602 __cil_tmp46 = (unsigned int )__cil_tmp45;
10603#line 1791
10604 __cil_tmp47 = __cil_tmp46 | 8U;
10605#line 1791
10606 data->in_scaled = (u16 )__cil_tmp47;
10607 } else {
10608
10609 }
10610 }
10611 {
10612#line 1792
10613 __cil_tmp48 = sio_data->internal;
10614#line 1792
10615 __cil_tmp49 = (int )__cil_tmp48;
10616#line 1792
10617 __cil_tmp50 = __cil_tmp49 & 2;
10618#line 1792
10619 if (__cil_tmp50 != 0) {
10620#line 1793
10621 __cil_tmp51 = data->in_scaled;
10622#line 1793
10623 __cil_tmp52 = (unsigned int )__cil_tmp51;
10624#line 1793
10625 __cil_tmp53 = __cil_tmp52 | 128U;
10626#line 1793
10627 data->in_scaled = (u16 )__cil_tmp53;
10628 } else {
10629
10630 }
10631 }
10632 {
10633#line 1794
10634 __cil_tmp54 = sio_data->internal;
10635#line 1794
10636 __cil_tmp55 = (int )__cil_tmp54;
10637#line 1794
10638 __cil_tmp56 = __cil_tmp55 & 4;
10639#line 1794
10640 if (__cil_tmp56 != 0) {
10641#line 1795
10642 __cil_tmp57 = data->in_scaled;
10643#line 1795
10644 __cil_tmp58 = (unsigned int )__cil_tmp57;
10645#line 1795
10646 __cil_tmp59 = __cil_tmp58 | 256U;
10647#line 1795
10648 data->in_scaled = (u16 )__cil_tmp59;
10649 } else {
10650
10651 }
10652 }
10653 } else {
10654
10655 }
10656 }
10657 {
10658#line 1799
10659 it87_init_device(pdev___0);
10660#line 1802
10661 __cil_tmp60 = & dev->kobj;
10662#line 1802
10663 err = sysfs_create_group(__cil_tmp60, & it87_group);
10664 }
10665#line 1803
10666 if (err != 0) {
10667#line 1804
10668 goto ERROR2;
10669 } else {
10670
10671 }
10672 {
10673#line 1806
10674 __cil_tmp61 = sio_data->beep_pin;
10675#line 1806
10676 __cil_tmp62 = (unsigned int )__cil_tmp61;
10677#line 1806
10678 if (__cil_tmp62 != 0U) {
10679 {
10680#line 1807
10681 __cil_tmp63 = & dev->kobj;
10682#line 1807
10683 err = sysfs_create_group(__cil_tmp63, & it87_group_beep);
10684 }
10685#line 1808
10686 if (err != 0) {
10687#line 1809
10688 goto ERROR4;
10689 } else {
10690
10691 }
10692 } else {
10693
10694 }
10695 }
10696 {
10697#line 1813
10698 __cil_tmp64 = (struct it87_data const *)data;
10699#line 1813
10700 fan_group = it87_get_fan_group(__cil_tmp64);
10701#line 1814
10702 fan_beep_need_rw = 1;
10703#line 1815
10704 i = 0;
10705 }
10706#line 1815
10707 goto ldv_24901;
10708 ldv_24900: ;
10709 {
10710#line 1816
10711 __cil_tmp65 = data->has_fan;
10712#line 1816
10713 __cil_tmp66 = (int )__cil_tmp65;
10714#line 1816
10715 __cil_tmp67 = __cil_tmp66 >> i;
10716#line 1816
10717 __cil_tmp68 = __cil_tmp67 & 1;
10718#line 1816
10719 if (__cil_tmp68 == 0) {
10720#line 1817
10721 goto ldv_24899;
10722 } else {
10723
10724 }
10725 }
10726 {
10727#line 1818
10728 __cil_tmp69 = & dev->kobj;
10729#line 1818
10730 __cil_tmp70 = (unsigned long )i;
10731#line 1818
10732 __cil_tmp71 = fan_group + __cil_tmp70;
10733#line 1818
10734 err = sysfs_create_group(__cil_tmp69, __cil_tmp71);
10735 }
10736#line 1819
10737 if (err != 0) {
10738#line 1820
10739 goto ERROR4;
10740 } else {
10741
10742 }
10743 {
10744#line 1822
10745 __cil_tmp72 = sio_data->beep_pin;
10746#line 1822
10747 __cil_tmp73 = (unsigned int )__cil_tmp72;
10748#line 1822
10749 if (__cil_tmp73 != 0U) {
10750 {
10751#line 1823
10752 __cil_tmp74 = & dev->kobj;
10753#line 1823
10754 __cil_tmp75 = (struct attribute const *)it87_attributes_fan_beep[i];
10755#line 1823
10756 err = sysfs_create_file(__cil_tmp74, __cil_tmp75);
10757 }
10758#line 1825
10759 if (err != 0) {
10760#line 1826
10761 goto ERROR4;
10762 } else {
10763
10764 }
10765#line 1827
10766 if (fan_beep_need_rw == 0) {
10767#line 1828
10768 goto ldv_24899;
10769 } else {
10770
10771 }
10772 {
10773#line 1833
10774 __cil_tmp76 = & dev->kobj;
10775#line 1833
10776 __cil_tmp77 = (struct attribute const *)it87_attributes_fan_beep[i];
10777#line 1833
10778 tmp___3 = sysfs_chmod_file(__cil_tmp76, __cil_tmp77, 420U);
10779 }
10780#line 1833
10781 if (tmp___3 != 0) {
10782 {
10783#line 1836
10784 __cil_tmp78 = (struct device const *)dev;
10785#line 1836
10786 __cil_tmp79 = i + 1;
10787#line 1836
10788 dev_printk("<7>", __cil_tmp78, "chmod +w fan%d_beep failed\n", __cil_tmp79);
10789 }
10790 } else {
10791
10792 }
10793#line 1838
10794 fan_beep_need_rw = 0;
10795 } else {
10796
10797 }
10798 }
10799 ldv_24899:
10800#line 1815
10801 i = i + 1;
10802 ldv_24901: ;
10803#line 1815
10804 if (i <= 4) {
10805#line 1816
10806 goto ldv_24900;
10807 } else {
10808#line 1818
10809 goto ldv_24902;
10810 }
10811 ldv_24902: ;
10812#line 1842
10813 if (enable_pwm_interface != 0) {
10814#line 1843
10815 i = 0;
10816#line 1843
10817 goto ldv_24905;
10818 ldv_24904: ;
10819 {
10820#line 1844
10821 __cil_tmp80 = sio_data->skip_pwm;
10822#line 1844
10823 __cil_tmp81 = (int )__cil_tmp80;
10824#line 1844
10825 __cil_tmp82 = __cil_tmp81 >> i;
10826#line 1844
10827 if (__cil_tmp82 & 1) {
10828#line 1845
10829 goto ldv_24903;
10830 } else {
10831
10832 }
10833 }
10834 {
10835#line 1846
10836 __cil_tmp83 = & dev->kobj;
10837#line 1846
10838 __cil_tmp84 = (unsigned long )i;
10839#line 1846
10840 __cil_tmp85 = (struct attribute_group const *)(& it87_group_pwm);
10841#line 1846
10842 __cil_tmp86 = __cil_tmp85 + __cil_tmp84;
10843#line 1846
10844 err = sysfs_create_group(__cil_tmp83, __cil_tmp86);
10845 }
10846#line 1848
10847 if (err != 0) {
10848#line 1849
10849 goto ERROR4;
10850 } else {
10851
10852 }
10853 {
10854#line 1851
10855 __cil_tmp87 = (struct it87_data const *)data;
10856#line 1851
10857 tmp___4 = has_old_autopwm(__cil_tmp87);
10858 }
10859#line 1851
10860 if (tmp___4 == 0) {
10861#line 1852
10862 goto ldv_24903;
10863 } else {
10864
10865 }
10866 {
10867#line 1853
10868 __cil_tmp88 = & dev->kobj;
10869#line 1853
10870 __cil_tmp89 = (unsigned long )i;
10871#line 1853
10872 __cil_tmp90 = (struct attribute_group const *)(& it87_group_autopwm);
10873#line 1853
10874 __cil_tmp91 = __cil_tmp90 + __cil_tmp89;
10875#line 1853
10876 err = sysfs_create_group(__cil_tmp88, __cil_tmp91);
10877 }
10878#line 1855
10879 if (err != 0) {
10880#line 1856
10881 goto ERROR4;
10882 } else {
10883
10884 }
10885 ldv_24903:
10886#line 1843
10887 i = i + 1;
10888 ldv_24905: ;
10889#line 1843
10890 if (i <= 2) {
10891#line 1844
10892 goto ldv_24904;
10893 } else {
10894#line 1846
10895 goto ldv_24906;
10896 }
10897 ldv_24906: ;
10898 } else {
10899
10900 }
10901 {
10902#line 1860
10903 __cil_tmp92 = sio_data->skip_vid;
10904#line 1860
10905 __cil_tmp93 = (unsigned int )__cil_tmp92;
10906#line 1860
10907 if (__cil_tmp93 == 0U) {
10908 {
10909#line 1861
10910 data->vrm = vid_which_vrm();
10911#line 1863
10912 data->vid = sio_data->vid_value;
10913#line 1864
10914 __cil_tmp94 = & dev->kobj;
10915#line 1864
10916 err = sysfs_create_group(__cil_tmp94, & it87_group_vid);
10917 }
10918#line 1865
10919 if (err != 0) {
10920#line 1866
10921 goto ERROR4;
10922 } else {
10923
10924 }
10925 } else {
10926
10927 }
10928 }
10929#line 1870
10930 i = 0;
10931#line 1870
10932 goto ldv_24909;
10933 ldv_24908: ;
10934 {
10935#line 1871
10936 __cil_tmp95 = sio_data->internal;
10937#line 1871
10938 __cil_tmp96 = (int )__cil_tmp95;
10939#line 1871
10940 __cil_tmp97 = __cil_tmp96 >> i;
10941#line 1871
10942 __cil_tmp98 = __cil_tmp97 & 1;
10943#line 1871
10944 if (__cil_tmp98 == 0) {
10945#line 1872
10946 goto ldv_24907;
10947 } else {
10948
10949 }
10950 }
10951 {
10952#line 1873
10953 __cil_tmp99 = & dev->kobj;
10954#line 1873
10955 __cil_tmp100 = (struct attribute const *)it87_attributes_label[i];
10956#line 1873
10957 err = sysfs_create_file(__cil_tmp99, __cil_tmp100);
10958 }
10959#line 1875
10960 if (err != 0) {
10961#line 1876
10962 goto ERROR4;
10963 } else {
10964
10965 }
10966 ldv_24907:
10967#line 1870
10968 i = i + 1;
10969 ldv_24909: ;
10970#line 1870
10971 if (i <= 2) {
10972#line 1871
10973 goto ldv_24908;
10974 } else {
10975#line 1873
10976 goto ldv_24910;
10977 }
10978 ldv_24910:
10979 {
10980#line 1879
10981 data->hwmon_dev = hwmon_device_register(dev);
10982#line 1880
10983 __cil_tmp101 = data->hwmon_dev;
10984#line 1880
10985 __cil_tmp102 = (void const *)__cil_tmp101;
10986#line 1880
10987 tmp___6 = IS_ERR(__cil_tmp102);
10988 }
10989#line 1880
10990 if (tmp___6 != 0L) {
10991 {
10992#line 1881
10993 __cil_tmp103 = data->hwmon_dev;
10994#line 1881
10995 __cil_tmp104 = (void const *)__cil_tmp103;
10996#line 1881
10997 tmp___5 = PTR_ERR(__cil_tmp104);
10998#line 1881
10999 err = (int )tmp___5;
11000 }
11001#line 1882
11002 goto ERROR4;
11003 } else {
11004
11005 }
11006#line 1885
11007 return (0);
11008 ERROR4:
11009 {
11010#line 1888
11011 it87_remove_files(dev);
11012 }
11013 ERROR2:
11014 {
11015#line 1890
11016 __cil_tmp105 = (void *)0;
11017#line 1890
11018 platform_set_drvdata(pdev___0, __cil_tmp105);
11019#line 1891
11020 __cil_tmp106 = (void const *)data;
11021#line 1891
11022 kfree(__cil_tmp106);
11023 }
11024 ERROR1:
11025 {
11026#line 1893
11027 __cil_tmp107 = res->start;
11028#line 1893
11029 __release_region(& ioport_resource, __cil_tmp107, 2ULL);
11030 }
11031 ERROR0: ;
11032#line 1895
11033 return (err);
11034}
11035}
11036#line 1898 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
11037static int it87_remove(struct platform_device *pdev___0 )
11038{ struct it87_data *data ;
11039 void *tmp ;
11040 struct platform_device const *__cil_tmp4 ;
11041 struct device *__cil_tmp5 ;
11042 struct device *__cil_tmp6 ;
11043 unsigned short __cil_tmp7 ;
11044 resource_size_t __cil_tmp8 ;
11045 void *__cil_tmp9 ;
11046 void const *__cil_tmp10 ;
11047
11048 {
11049 {
11050#line 1900
11051 __cil_tmp4 = (struct platform_device const *)pdev___0;
11052#line 1900
11053 tmp = platform_get_drvdata(__cil_tmp4);
11054#line 1900
11055 data = (struct it87_data *)tmp;
11056#line 1902
11057 __cil_tmp5 = data->hwmon_dev;
11058#line 1902
11059 hwmon_device_unregister(__cil_tmp5);
11060#line 1903
11061 __cil_tmp6 = & pdev___0->dev;
11062#line 1903
11063 it87_remove_files(__cil_tmp6);
11064#line 1905
11065 __cil_tmp7 = data->addr;
11066#line 1905
11067 __cil_tmp8 = (resource_size_t )__cil_tmp7;
11068#line 1905
11069 __release_region(& ioport_resource, __cil_tmp8, 2ULL);
11070#line 1906
11071 __cil_tmp9 = (void *)0;
11072#line 1906
11073 platform_set_drvdata(pdev___0, __cil_tmp9);
11074#line 1907
11075 __cil_tmp10 = (void const *)data;
11076#line 1907
11077 kfree(__cil_tmp10);
11078 }
11079#line 1909
11080 return (0);
11081}
11082}
11083#line 1915 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
11084static int it87_read_value(struct it87_data *data , u8 reg )
11085{ unsigned char tmp ;
11086 int __cil_tmp4 ;
11087 unsigned char __cil_tmp5 ;
11088 unsigned short __cil_tmp6 ;
11089 int __cil_tmp7 ;
11090 unsigned short __cil_tmp8 ;
11091 int __cil_tmp9 ;
11092 int __cil_tmp10 ;
11093
11094 {
11095 {
11096#line 1917
11097 __cil_tmp4 = (int )reg;
11098#line 1917
11099 __cil_tmp5 = (unsigned char )__cil_tmp4;
11100#line 1917
11101 __cil_tmp6 = data->addr;
11102#line 1917
11103 __cil_tmp7 = (int )__cil_tmp6;
11104#line 1917
11105 outb_p(__cil_tmp5, __cil_tmp7);
11106#line 1918
11107 __cil_tmp8 = data->addr;
11108#line 1918
11109 __cil_tmp9 = (int )__cil_tmp8;
11110#line 1918
11111 __cil_tmp10 = __cil_tmp9 + 1;
11112#line 1918
11113 tmp = inb_p(__cil_tmp10);
11114 }
11115#line 1918
11116 return ((int )tmp);
11117}
11118}
11119#line 1924 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
11120static void it87_write_value(struct it87_data *data , u8 reg , u8 value )
11121{ int __cil_tmp4 ;
11122 unsigned char __cil_tmp5 ;
11123 unsigned short __cil_tmp6 ;
11124 int __cil_tmp7 ;
11125 int __cil_tmp8 ;
11126 unsigned char __cil_tmp9 ;
11127 unsigned short __cil_tmp10 ;
11128 int __cil_tmp11 ;
11129 int __cil_tmp12 ;
11130
11131 {
11132 {
11133#line 1926
11134 __cil_tmp4 = (int )reg;
11135#line 1926
11136 __cil_tmp5 = (unsigned char )__cil_tmp4;
11137#line 1926
11138 __cil_tmp6 = data->addr;
11139#line 1926
11140 __cil_tmp7 = (int )__cil_tmp6;
11141#line 1926
11142 outb_p(__cil_tmp5, __cil_tmp7);
11143#line 1927
11144 __cil_tmp8 = (int )value;
11145#line 1927
11146 __cil_tmp9 = (unsigned char )__cil_tmp8;
11147#line 1927
11148 __cil_tmp10 = data->addr;
11149#line 1927
11150 __cil_tmp11 = (int )__cil_tmp10;
11151#line 1927
11152 __cil_tmp12 = __cil_tmp11 + 1;
11153#line 1927
11154 outb_p(__cil_tmp9, __cil_tmp12);
11155 }
11156#line 1928
11157 return;
11158}
11159}
11160#line 1931 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
11161static int it87_check_pwm(struct device *dev )
11162{ struct it87_data *data ;
11163 void *tmp ;
11164 int tmp___0 ;
11165 int tmp___1 ;
11166 int i ;
11167 u8 pwm[3U] ;
11168 int tmp___2 ;
11169 struct device const *__cil_tmp9 ;
11170 u8 __cil_tmp10 ;
11171 int __cil_tmp11 ;
11172 u8 __cil_tmp12 ;
11173 unsigned int __cil_tmp13 ;
11174 unsigned int __cil_tmp14 ;
11175 int __cil_tmp15 ;
11176 u8 __cil_tmp16 ;
11177 int __cil_tmp17 ;
11178 int __cil_tmp18 ;
11179 int __cil_tmp19 ;
11180 int __cil_tmp20 ;
11181 int __cil_tmp21 ;
11182 signed char __cil_tmp22 ;
11183 int __cil_tmp23 ;
11184 struct device const *__cil_tmp24 ;
11185 u8 __cil_tmp25 ;
11186 signed char __cil_tmp26 ;
11187 int __cil_tmp27 ;
11188 int __cil_tmp28 ;
11189 u8 __cil_tmp29 ;
11190 int __cil_tmp30 ;
11191 u8 __cil_tmp31 ;
11192 u8 __cil_tmp32 ;
11193 unsigned int __cil_tmp33 ;
11194 unsigned int __cil_tmp34 ;
11195 int __cil_tmp35 ;
11196 u8 __cil_tmp36 ;
11197 int __cil_tmp37 ;
11198 int __cil_tmp38 ;
11199 int __cil_tmp39 ;
11200 u8 __cil_tmp40 ;
11201 struct device const *__cil_tmp41 ;
11202 struct device const *__cil_tmp42 ;
11203 struct device const *__cil_tmp43 ;
11204
11205 {
11206 {
11207#line 1933
11208 __cil_tmp9 = (struct device const *)dev;
11209#line 1933
11210 tmp = dev_get_drvdata(__cil_tmp9);
11211#line 1933
11212 data = (struct it87_data *)tmp;
11213#line 1937
11214 __cil_tmp10 = (u8 )20;
11215#line 1937
11216 tmp___1 = it87_read_value(data, __cil_tmp10);
11217#line 1937
11218 tmp___0 = tmp___1;
11219 }
11220 {
11221#line 1938
11222 __cil_tmp11 = tmp___0 & 135;
11223#line 1938
11224 if (__cil_tmp11 == 0) {
11225#line 1939
11226 if (fix_pwm_polarity != 0) {
11227#line 1946
11228 i = 0;
11229#line 1946
11230 goto ldv_24932;
11231 ldv_24931:
11232 {
11233#line 1947
11234 __cil_tmp12 = (u8 )i;
11235#line 1947
11236 __cil_tmp13 = (unsigned int )__cil_tmp12;
11237#line 1947
11238 __cil_tmp14 = __cil_tmp13 + 21U;
11239#line 1947
11240 __cil_tmp15 = (int )__cil_tmp14;
11241#line 1947
11242 __cil_tmp16 = (u8 )__cil_tmp15;
11243#line 1947
11244 tmp___2 = it87_read_value(data, __cil_tmp16);
11245#line 1947
11246 pwm[i] = (u8 )tmp___2;
11247#line 1946
11248 i = i + 1;
11249 }
11250 ldv_24932: ;
11251#line 1946
11252 if (i <= 2) {
11253#line 1947
11254 goto ldv_24931;
11255 } else {
11256#line 1949
11257 goto ldv_24933;
11258 }
11259 ldv_24933: ;
11260 {
11261#line 1954
11262 __cil_tmp17 = (int )pwm[2];
11263#line 1954
11264 __cil_tmp18 = (int )pwm[1];
11265#line 1954
11266 __cil_tmp19 = (int )pwm[0];
11267#line 1954
11268 __cil_tmp20 = __cil_tmp19 | __cil_tmp18;
11269#line 1954
11270 __cil_tmp21 = __cil_tmp20 | __cil_tmp17;
11271#line 1954
11272 __cil_tmp22 = (signed char )__cil_tmp21;
11273#line 1954
11274 __cil_tmp23 = (int )__cil_tmp22;
11275#line 1954
11276 if (__cil_tmp23 >= 0) {
11277 {
11278#line 1955
11279 __cil_tmp24 = (struct device const *)dev;
11280#line 1955
11281 _dev_info(__cil_tmp24, "Reconfiguring PWM to active high polarity\n");
11282#line 1957
11283 __cil_tmp25 = (u8 )20;
11284#line 1957
11285 __cil_tmp26 = (signed char )tmp___0;
11286#line 1957
11287 __cil_tmp27 = (int )__cil_tmp26;
11288#line 1957
11289 __cil_tmp28 = __cil_tmp27 | -121;
11290#line 1957
11291 __cil_tmp29 = (u8 )__cil_tmp28;
11292#line 1957
11293 __cil_tmp30 = (int )__cil_tmp29;
11294#line 1957
11295 __cil_tmp31 = (u8 )__cil_tmp30;
11296#line 1957
11297 it87_write_value(data, __cil_tmp25, __cil_tmp31);
11298#line 1959
11299 i = 0;
11300 }
11301#line 1959
11302 goto ldv_24935;
11303 ldv_24934:
11304 {
11305#line 1960
11306 __cil_tmp32 = (u8 )i;
11307#line 1960
11308 __cil_tmp33 = (unsigned int )__cil_tmp32;
11309#line 1960
11310 __cil_tmp34 = __cil_tmp33 + 21U;
11311#line 1960
11312 __cil_tmp35 = (int )__cil_tmp34;
11313#line 1960
11314 __cil_tmp36 = (u8 )__cil_tmp35;
11315#line 1960
11316 __cil_tmp37 = (int )pwm[i];
11317#line 1960
11318 __cil_tmp38 = ~ __cil_tmp37;
11319#line 1960
11320 __cil_tmp39 = __cil_tmp38 & 127;
11321#line 1960
11322 __cil_tmp40 = (u8 )__cil_tmp39;
11323#line 1960
11324 it87_write_value(data, __cil_tmp36, __cil_tmp40);
11325#line 1959
11326 i = i + 1;
11327 }
11328 ldv_24935: ;
11329#line 1959
11330 if (i <= 2) {
11331#line 1960
11332 goto ldv_24934;
11333 } else {
11334#line 1962
11335 goto ldv_24936;
11336 }
11337 ldv_24936: ;
11338#line 1963
11339 return (1);
11340 } else {
11341
11342 }
11343 }
11344 {
11345#line 1966
11346 __cil_tmp41 = (struct device const *)dev;
11347#line 1966
11348 _dev_info(__cil_tmp41, "PWM configuration is too broken to be fixed\n");
11349 }
11350 } else {
11351
11352 }
11353 {
11354#line 1970
11355 __cil_tmp42 = (struct device const *)dev;
11356#line 1970
11357 _dev_info(__cil_tmp42, "Detected broken BIOS defaults, disabling PWM interface\n");
11358 }
11359#line 1972
11360 return (0);
11361 } else
11362#line 1973
11363 if (fix_pwm_polarity != 0) {
11364 {
11365#line 1974
11366 __cil_tmp43 = (struct device const *)dev;
11367#line 1974
11368 _dev_info(__cil_tmp43, "PWM configuration looks sane, won\'t touch\n");
11369 }
11370 } else {
11371
11372 }
11373 }
11374#line 1978
11375 return (1);
11376}
11377}
11378#line 1982 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
11379static void it87_init_device(struct platform_device *pdev___0 )
11380{ struct it87_sio_data *sio_data ;
11381 struct it87_data *data ;
11382 void *tmp ;
11383 int tmp___0 ;
11384 int i ;
11385 u8 mask ;
11386 int tmp___1 ;
11387 int tmp___2 ;
11388 int tmp___3 ;
11389 int tmp___4 ;
11390 void *__cil_tmp12 ;
11391 struct platform_device const *__cil_tmp13 ;
11392 u8 __cil_tmp14 ;
11393 unsigned int __cil_tmp15 ;
11394 unsigned int __cil_tmp16 ;
11395 unsigned int __cil_tmp17 ;
11396 int __cil_tmp18 ;
11397 u8 __cil_tmp19 ;
11398 u8 __cil_tmp20 ;
11399 unsigned int __cil_tmp21 ;
11400 unsigned int __cil_tmp22 ;
11401 unsigned int __cil_tmp23 ;
11402 int __cil_tmp24 ;
11403 u8 __cil_tmp25 ;
11404 u8 __cil_tmp26 ;
11405 int __cil_tmp27 ;
11406 u8 __cil_tmp28 ;
11407 unsigned int __cil_tmp29 ;
11408 unsigned int __cil_tmp30 ;
11409 int __cil_tmp31 ;
11410 u8 __cil_tmp32 ;
11411 int __cil_tmp33 ;
11412 u8 __cil_tmp34 ;
11413 unsigned int __cil_tmp35 ;
11414 unsigned int __cil_tmp36 ;
11415 int __cil_tmp37 ;
11416 u8 __cil_tmp38 ;
11417 u8 __cil_tmp39 ;
11418 u8 __cil_tmp40 ;
11419 int __cil_tmp41 ;
11420 u8 __cil_tmp42 ;
11421 u8 __cil_tmp43 ;
11422 u8 __cil_tmp44 ;
11423 int __cil_tmp45 ;
11424 int __cil_tmp46 ;
11425 int __cil_tmp47 ;
11426 u8 __cil_tmp48 ;
11427 unsigned int __cil_tmp49 ;
11428 unsigned int __cil_tmp50 ;
11429 u8 __cil_tmp51 ;
11430 int __cil_tmp52 ;
11431 u8 __cil_tmp53 ;
11432 int __cil_tmp54 ;
11433 int __cil_tmp55 ;
11434 unsigned int __cil_tmp56 ;
11435 int __cil_tmp57 ;
11436 u8 __cil_tmp58 ;
11437 int __cil_tmp59 ;
11438 int __cil_tmp60 ;
11439 u8 __cil_tmp61 ;
11440 u8 __cil_tmp62 ;
11441 int __cil_tmp63 ;
11442 u8 __cil_tmp64 ;
11443 u8 __cil_tmp65 ;
11444 int __cil_tmp66 ;
11445 int __cil_tmp67 ;
11446 u8 __cil_tmp68 ;
11447 unsigned int __cil_tmp69 ;
11448 unsigned int __cil_tmp70 ;
11449 struct it87_data const *__cil_tmp71 ;
11450 u8 __cil_tmp72 ;
11451 u8 __cil_tmp73 ;
11452 int __cil_tmp74 ;
11453 int __cil_tmp75 ;
11454 int __cil_tmp76 ;
11455 int __cil_tmp77 ;
11456 struct device *__cil_tmp78 ;
11457 struct device const *__cil_tmp79 ;
11458 u8 __cil_tmp80 ;
11459 signed char __cil_tmp81 ;
11460 int __cil_tmp82 ;
11461 int __cil_tmp83 ;
11462 u8 __cil_tmp84 ;
11463 int __cil_tmp85 ;
11464 u8 __cil_tmp86 ;
11465 enum chips __cil_tmp87 ;
11466 unsigned int __cil_tmp88 ;
11467 int __cil_tmp89 ;
11468 u8 __cil_tmp90 ;
11469 unsigned int __cil_tmp91 ;
11470 unsigned int __cil_tmp92 ;
11471 int __cil_tmp93 ;
11472 u8 __cil_tmp94 ;
11473 unsigned int __cil_tmp95 ;
11474 unsigned int __cil_tmp96 ;
11475 u8 __cil_tmp97 ;
11476 signed char __cil_tmp98 ;
11477 int __cil_tmp99 ;
11478 int __cil_tmp100 ;
11479 u8 __cil_tmp101 ;
11480 signed char __cil_tmp102 ;
11481 int __cil_tmp103 ;
11482 int __cil_tmp104 ;
11483 u8 __cil_tmp105 ;
11484 u8 __cil_tmp106 ;
11485 signed char __cil_tmp107 ;
11486 int __cil_tmp108 ;
11487 int __cil_tmp109 ;
11488 int __cil_tmp110 ;
11489 u8 __cil_tmp111 ;
11490 int __cil_tmp112 ;
11491 u8 __cil_tmp113 ;
11492
11493 {
11494 {
11495#line 1984
11496 __cil_tmp12 = pdev___0->dev.platform_data;
11497#line 1984
11498 sio_data = (struct it87_sio_data *)__cil_tmp12;
11499#line 1985
11500 __cil_tmp13 = (struct platform_device const *)pdev___0;
11501#line 1985
11502 tmp = platform_get_drvdata(__cil_tmp13);
11503#line 1985
11504 data = (struct it87_data *)tmp;
11505#line 2000
11506 i = 0;
11507 }
11508#line 2000
11509 goto ldv_24946;
11510 ldv_24945:
11511#line 2001
11512 data->pwm_temp_map[i] = (u8 )i;
11513#line 2002
11514 data->pwm_duty[i] = (u8 )127U;
11515#line 2003
11516 data->auto_pwm[i][3] = (u8 )127U;
11517#line 2000
11518 i = i + 1;
11519 ldv_24946: ;
11520#line 2000
11521 if (i <= 2) {
11522#line 2001
11523 goto ldv_24945;
11524 } else {
11525#line 2003
11526 goto ldv_24947;
11527 }
11528 ldv_24947:
11529#line 2011
11530 i = 0;
11531#line 2011
11532 goto ldv_24949;
11533 ldv_24948:
11534 {
11535#line 2012
11536 __cil_tmp14 = (u8 )i;
11537#line 2012
11538 __cil_tmp15 = (unsigned int )__cil_tmp14;
11539#line 2012
11540 __cil_tmp16 = __cil_tmp15 * 2U;
11541#line 2012
11542 __cil_tmp17 = __cil_tmp16 + 49U;
11543#line 2012
11544 __cil_tmp18 = (int )__cil_tmp17;
11545#line 2012
11546 __cil_tmp19 = (u8 )__cil_tmp18;
11547#line 2012
11548 tmp___0 = it87_read_value(data, __cil_tmp19);
11549 }
11550#line 2013
11551 if (tmp___0 == 255) {
11552 {
11553#line 2014
11554 __cil_tmp20 = (u8 )i;
11555#line 2014
11556 __cil_tmp21 = (unsigned int )__cil_tmp20;
11557#line 2014
11558 __cil_tmp22 = __cil_tmp21 * 2U;
11559#line 2014
11560 __cil_tmp23 = __cil_tmp22 + 49U;
11561#line 2014
11562 __cil_tmp24 = (int )__cil_tmp23;
11563#line 2014
11564 __cil_tmp25 = (u8 )__cil_tmp24;
11565#line 2014
11566 __cil_tmp26 = (u8 )0;
11567#line 2014
11568 it87_write_value(data, __cil_tmp25, __cil_tmp26);
11569 }
11570 } else {
11571
11572 }
11573#line 2011
11574 i = i + 1;
11575 ldv_24949: ;
11576#line 2011
11577 if (i <= 7) {
11578#line 2012
11579 goto ldv_24948;
11580 } else {
11581#line 2014
11582 goto ldv_24950;
11583 }
11584 ldv_24950:
11585#line 2016
11586 i = 0;
11587#line 2016
11588 goto ldv_24952;
11589 ldv_24951:
11590 {
11591#line 2017
11592 __cil_tmp27 = i + 32;
11593#line 2017
11594 __cil_tmp28 = (u8 )__cil_tmp27;
11595#line 2017
11596 __cil_tmp29 = (unsigned int )__cil_tmp28;
11597#line 2017
11598 __cil_tmp30 = __cil_tmp29 * 2U;
11599#line 2017
11600 __cil_tmp31 = (int )__cil_tmp30;
11601#line 2017
11602 __cil_tmp32 = (u8 )__cil_tmp31;
11603#line 2017
11604 tmp___0 = it87_read_value(data, __cil_tmp32);
11605 }
11606#line 2018
11607 if (tmp___0 == 255) {
11608 {
11609#line 2019
11610 __cil_tmp33 = i + 32;
11611#line 2019
11612 __cil_tmp34 = (u8 )__cil_tmp33;
11613#line 2019
11614 __cil_tmp35 = (unsigned int )__cil_tmp34;
11615#line 2019
11616 __cil_tmp36 = __cil_tmp35 * 2U;
11617#line 2019
11618 __cil_tmp37 = (int )__cil_tmp36;
11619#line 2019
11620 __cil_tmp38 = (u8 )__cil_tmp37;
11621#line 2019
11622 __cil_tmp39 = (u8 )127;
11623#line 2019
11624 it87_write_value(data, __cil_tmp38, __cil_tmp39);
11625 }
11626 } else {
11627
11628 }
11629#line 2016
11630 i = i + 1;
11631 ldv_24952: ;
11632#line 2016
11633 if (i <= 2) {
11634#line 2017
11635 goto ldv_24951;
11636 } else {
11637#line 2019
11638 goto ldv_24953;
11639 }
11640 ldv_24953:
11641 {
11642#line 2028
11643 __cil_tmp40 = (u8 )80;
11644#line 2028
11645 tmp___0 = it87_read_value(data, __cil_tmp40);
11646 }
11647 {
11648#line 2029
11649 __cil_tmp41 = tmp___0 & 255;
11650#line 2029
11651 if (__cil_tmp41 == 0) {
11652 {
11653#line 2031
11654 __cil_tmp42 = (u8 )80;
11655#line 2031
11656 __cil_tmp43 = (u8 )255;
11657#line 2031
11658 it87_write_value(data, __cil_tmp42, __cil_tmp43);
11659 }
11660 } else {
11661
11662 }
11663 }
11664 {
11665#line 2035
11666 __cil_tmp44 = sio_data->skip_fan;
11667#line 2035
11668 __cil_tmp45 = (int )__cil_tmp44;
11669#line 2035
11670 __cil_tmp46 = __cil_tmp45 << 4U;
11671#line 2035
11672 __cil_tmp47 = ~ __cil_tmp46;
11673#line 2035
11674 __cil_tmp48 = (u8 )__cil_tmp47;
11675#line 2035
11676 __cil_tmp49 = (unsigned int )__cil_tmp48;
11677#line 2035
11678 __cil_tmp50 = __cil_tmp49 & 112U;
11679#line 2035
11680 mask = (u8 )__cil_tmp50;
11681#line 2036
11682 __cil_tmp51 = (u8 )19;
11683#line 2036
11684 tmp___1 = it87_read_value(data, __cil_tmp51);
11685#line 2036
11686 data->fan_main_ctrl = (u8 )tmp___1;
11687 }
11688 {
11689#line 2037
11690 __cil_tmp52 = (int )mask;
11691#line 2037
11692 __cil_tmp53 = data->fan_main_ctrl;
11693#line 2037
11694 __cil_tmp54 = (int )__cil_tmp53;
11695#line 2037
11696 __cil_tmp55 = __cil_tmp54 & __cil_tmp52;
11697#line 2037
11698 __cil_tmp56 = (unsigned int )__cil_tmp55;
11699#line 2037
11700 if (__cil_tmp56 == 0U) {
11701 {
11702#line 2039
11703 __cil_tmp57 = (int )mask;
11704#line 2039
11705 __cil_tmp58 = data->fan_main_ctrl;
11706#line 2039
11707 __cil_tmp59 = (int )__cil_tmp58;
11708#line 2039
11709 __cil_tmp60 = __cil_tmp59 | __cil_tmp57;
11710#line 2039
11711 data->fan_main_ctrl = (u8 )__cil_tmp60;
11712#line 2040
11713 __cil_tmp61 = (u8 )19;
11714#line 2040
11715 __cil_tmp62 = data->fan_main_ctrl;
11716#line 2040
11717 __cil_tmp63 = (int )__cil_tmp62;
11718#line 2040
11719 __cil_tmp64 = (u8 )__cil_tmp63;
11720#line 2040
11721 it87_write_value(data, __cil_tmp61, __cil_tmp64);
11722 }
11723 } else {
11724
11725 }
11726 }
11727 {
11728#line 2043
11729 __cil_tmp65 = data->fan_main_ctrl;
11730#line 2043
11731 __cil_tmp66 = (int )__cil_tmp65;
11732#line 2043
11733 __cil_tmp67 = __cil_tmp66 >> 4;
11734#line 2043
11735 __cil_tmp68 = (u8 )__cil_tmp67;
11736#line 2043
11737 __cil_tmp69 = (unsigned int )__cil_tmp68;
11738#line 2043
11739 __cil_tmp70 = __cil_tmp69 & 7U;
11740#line 2043
11741 data->has_fan = (u8 )__cil_tmp70;
11742#line 2046
11743 __cil_tmp71 = (struct it87_data const *)data;
11744#line 2046
11745 tmp___2 = has_16bit_fans(__cil_tmp71);
11746 }
11747#line 2046
11748 if (tmp___2 != 0) {
11749 {
11750#line 2047
11751 __cil_tmp72 = (u8 )12;
11752#line 2047
11753 tmp___0 = it87_read_value(data, __cil_tmp72);
11754 }
11755 {
11756#line 2048
11757 __cil_tmp73 = data->has_fan;
11758#line 2048
11759 __cil_tmp74 = (int )__cil_tmp73;
11760#line 2048
11761 __cil_tmp75 = ~ tmp___0;
11762#line 2048
11763 __cil_tmp76 = __cil_tmp75 & 7;
11764#line 2048
11765 __cil_tmp77 = __cil_tmp76 & __cil_tmp74;
11766#line 2048
11767 if (__cil_tmp77 != 0) {
11768 {
11769#line 2049
11770 __cil_tmp78 = & pdev___0->dev;
11771#line 2049
11772 __cil_tmp79 = (struct device const *)__cil_tmp78;
11773#line 2049
11774 dev_printk("<7>", __cil_tmp79, "Setting fan1-3 to 16-bit mode\n");
11775#line 2051
11776 __cil_tmp80 = (u8 )12;
11777#line 2051
11778 __cil_tmp81 = (signed char )tmp___0;
11779#line 2051
11780 __cil_tmp82 = (int )__cil_tmp81;
11781#line 2051
11782 __cil_tmp83 = __cil_tmp82 | 7;
11783#line 2051
11784 __cil_tmp84 = (u8 )__cil_tmp83;
11785#line 2051
11786 __cil_tmp85 = (int )__cil_tmp84;
11787#line 2051
11788 __cil_tmp86 = (u8 )__cil_tmp85;
11789#line 2051
11790 it87_write_value(data, __cil_tmp80, __cil_tmp86);
11791 }
11792 } else {
11793
11794 }
11795 }
11796 {
11797#line 2055
11798 __cil_tmp87 = data->type;
11799#line 2055
11800 __cil_tmp88 = (unsigned int )__cil_tmp87;
11801#line 2055
11802 if (__cil_tmp88 != 0U) {
11803 {
11804#line 2056
11805 __cil_tmp89 = tmp___0 & 16;
11806#line 2056
11807 if (__cil_tmp89 != 0) {
11808#line 2057
11809 __cil_tmp90 = data->has_fan;
11810#line 2057
11811 __cil_tmp91 = (unsigned int )__cil_tmp90;
11812#line 2057
11813 __cil_tmp92 = __cil_tmp91 | 8U;
11814#line 2057
11815 data->has_fan = (u8 )__cil_tmp92;
11816 } else {
11817
11818 }
11819 }
11820 {
11821#line 2058
11822 __cil_tmp93 = tmp___0 & 32;
11823#line 2058
11824 if (__cil_tmp93 != 0) {
11825#line 2059
11826 __cil_tmp94 = data->has_fan;
11827#line 2059
11828 __cil_tmp95 = (unsigned int )__cil_tmp94;
11829#line 2059
11830 __cil_tmp96 = __cil_tmp95 | 16U;
11831#line 2059
11832 data->has_fan = (u8 )__cil_tmp96;
11833 } else {
11834
11835 }
11836 }
11837 } else {
11838
11839 }
11840 }
11841 } else {
11842
11843 }
11844 {
11845#line 2064
11846 __cil_tmp97 = sio_data->skip_fan;
11847#line 2064
11848 __cil_tmp98 = (signed char )__cil_tmp97;
11849#line 2064
11850 __cil_tmp99 = (int )__cil_tmp98;
11851#line 2064
11852 __cil_tmp100 = ~ __cil_tmp99;
11853#line 2064
11854 __cil_tmp101 = data->has_fan;
11855#line 2064
11856 __cil_tmp102 = (signed char )__cil_tmp101;
11857#line 2064
11858 __cil_tmp103 = (int )__cil_tmp102;
11859#line 2064
11860 __cil_tmp104 = __cil_tmp103 & __cil_tmp100;
11861#line 2064
11862 data->has_fan = (u8 )__cil_tmp104;
11863#line 2067
11864 __cil_tmp105 = (u8 )0;
11865#line 2067
11866 tmp___3 = it87_read_value(data, __cil_tmp105);
11867 }
11868#line 2067
11869 if (update_vbat != 0) {
11870#line 2067
11871 tmp___4 = 65;
11872 } else {
11873#line 2067
11874 tmp___4 = 1;
11875 }
11876 {
11877#line 2067
11878 __cil_tmp106 = (u8 )0;
11879#line 2067
11880 __cil_tmp107 = (signed char )tmp___3;
11881#line 2067
11882 __cil_tmp108 = (int )__cil_tmp107;
11883#line 2067
11884 __cil_tmp109 = __cil_tmp108 & 54;
11885#line 2067
11886 __cil_tmp110 = __cil_tmp109 | tmp___4;
11887#line 2067
11888 __cil_tmp111 = (u8 )__cil_tmp110;
11889#line 2067
11890 __cil_tmp112 = (int )__cil_tmp111;
11891#line 2067
11892 __cil_tmp113 = (u8 )__cil_tmp112;
11893#line 2067
11894 it87_write_value(data, __cil_tmp106, __cil_tmp113);
11895 }
11896#line 2070
11897 return;
11898}
11899}
11900#line 2072 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
11901static void it87_update_pwm_ctrl(struct it87_data *data , int nr )
11902{ int tmp ;
11903 int tmp___0 ;
11904 int i ;
11905 int tmp___1 ;
11906 int tmp___2 ;
11907 int tmp___3 ;
11908 u8 __cil_tmp9 ;
11909 unsigned int __cil_tmp10 ;
11910 unsigned int __cil_tmp11 ;
11911 int __cil_tmp12 ;
11912 u8 __cil_tmp13 ;
11913 enum chips __cil_tmp14 ;
11914 unsigned int __cil_tmp15 ;
11915 u8 __cil_tmp16 ;
11916 unsigned int __cil_tmp17 ;
11917 unsigned int __cil_tmp18 ;
11918 u8 __cil_tmp19 ;
11919 unsigned int __cil_tmp20 ;
11920 unsigned int __cil_tmp21 ;
11921 unsigned int __cil_tmp22 ;
11922 int __cil_tmp23 ;
11923 u8 __cil_tmp24 ;
11924 u8 __cil_tmp25 ;
11925 signed char __cil_tmp26 ;
11926 int __cil_tmp27 ;
11927 u8 __cil_tmp28 ;
11928 unsigned int __cil_tmp29 ;
11929 unsigned int __cil_tmp30 ;
11930 u8 __cil_tmp31 ;
11931 unsigned int __cil_tmp32 ;
11932 unsigned int __cil_tmp33 ;
11933 struct it87_data const *__cil_tmp34 ;
11934 u8 __cil_tmp35 ;
11935 unsigned int __cil_tmp36 ;
11936 int __cil_tmp37 ;
11937 u8 __cil_tmp38 ;
11938 unsigned int __cil_tmp39 ;
11939 unsigned int __cil_tmp40 ;
11940 unsigned int __cil_tmp41 ;
11941 int __cil_tmp42 ;
11942 u8 __cil_tmp43 ;
11943 u8 __cil_tmp44 ;
11944 unsigned int __cil_tmp45 ;
11945 u8 __cil_tmp46 ;
11946 unsigned int __cil_tmp47 ;
11947 unsigned int __cil_tmp48 ;
11948 unsigned int __cil_tmp49 ;
11949 unsigned int __cil_tmp50 ;
11950 int __cil_tmp51 ;
11951 u8 __cil_tmp52 ;
11952
11953 {
11954 {
11955#line 2074
11956 __cil_tmp9 = (u8 )nr;
11957#line 2074
11958 __cil_tmp10 = (unsigned int )__cil_tmp9;
11959#line 2074
11960 __cil_tmp11 = __cil_tmp10 + 21U;
11961#line 2074
11962 __cil_tmp12 = (int )__cil_tmp11;
11963#line 2074
11964 __cil_tmp13 = (u8 )__cil_tmp12;
11965#line 2074
11966 tmp = it87_read_value(data, __cil_tmp13);
11967#line 2074
11968 data->pwm_ctrl[nr] = (u8 )tmp;
11969 }
11970 {
11971#line 2075
11972 __cil_tmp14 = data->type;
11973#line 2075
11974 __cil_tmp15 = (unsigned int )__cil_tmp14;
11975#line 2075
11976 if (__cil_tmp15 == 5U) {
11977 {
11978#line 2076
11979 __cil_tmp16 = data->pwm_ctrl[nr];
11980#line 2076
11981 __cil_tmp17 = (unsigned int )__cil_tmp16;
11982#line 2076
11983 __cil_tmp18 = __cil_tmp17 & 3U;
11984#line 2076
11985 data->pwm_temp_map[nr] = (u8 )__cil_tmp18;
11986#line 2077
11987 __cil_tmp19 = (u8 )nr;
11988#line 2077
11989 __cil_tmp20 = (unsigned int )__cil_tmp19;
11990#line 2077
11991 __cil_tmp21 = __cil_tmp20 * 8U;
11992#line 2077
11993 __cil_tmp22 = __cil_tmp21 + 99U;
11994#line 2077
11995 __cil_tmp23 = (int )__cil_tmp22;
11996#line 2077
11997 __cil_tmp24 = (u8 )__cil_tmp23;
11998#line 2077
11999 tmp___0 = it87_read_value(data, __cil_tmp24);
12000#line 2077
12001 data->pwm_duty[nr] = (u8 )tmp___0;
12002 }
12003 } else {
12004 {
12005#line 2080
12006 __cil_tmp25 = data->pwm_ctrl[nr];
12007#line 2080
12008 __cil_tmp26 = (signed char )__cil_tmp25;
12009#line 2080
12010 __cil_tmp27 = (int )__cil_tmp26;
12011#line 2080
12012 if (__cil_tmp27 < 0) {
12013#line 2081
12014 __cil_tmp28 = data->pwm_ctrl[nr];
12015#line 2081
12016 __cil_tmp29 = (unsigned int )__cil_tmp28;
12017#line 2081
12018 __cil_tmp30 = __cil_tmp29 & 3U;
12019#line 2081
12020 data->pwm_temp_map[nr] = (u8 )__cil_tmp30;
12021 } else {
12022#line 2083
12023 __cil_tmp31 = data->pwm_ctrl[nr];
12024#line 2083
12025 __cil_tmp32 = (unsigned int )__cil_tmp31;
12026#line 2083
12027 __cil_tmp33 = __cil_tmp32 & 127U;
12028#line 2083
12029 data->pwm_duty[nr] = (u8 )__cil_tmp33;
12030 }
12031 }
12032 }
12033 }
12034 {
12035#line 2086
12036 __cil_tmp34 = (struct it87_data const *)data;
12037#line 2086
12038 tmp___3 = has_old_autopwm(__cil_tmp34);
12039 }
12040#line 2086
12041 if (tmp___3 != 0) {
12042#line 2089
12043 i = 0;
12044#line 2089
12045 goto ldv_24960;
12046 ldv_24959:
12047 {
12048#line 2090
12049 __cil_tmp35 = (u8 )i;
12050#line 2090
12051 __cil_tmp36 = (unsigned int )__cil_tmp35;
12052#line 2090
12053 __cil_tmp37 = nr + 12;
12054#line 2090
12055 __cil_tmp38 = (u8 )__cil_tmp37;
12056#line 2090
12057 __cil_tmp39 = (unsigned int )__cil_tmp38;
12058#line 2090
12059 __cil_tmp40 = __cil_tmp39 * 8U;
12060#line 2090
12061 __cil_tmp41 = __cil_tmp40 + __cil_tmp36;
12062#line 2090
12063 __cil_tmp42 = (int )__cil_tmp41;
12064#line 2090
12065 __cil_tmp43 = (u8 )__cil_tmp42;
12066#line 2090
12067 tmp___1 = it87_read_value(data, __cil_tmp43);
12068#line 2090
12069 data->auto_temp[nr][i] = (s8 )tmp___1;
12070#line 2089
12071 i = i + 1;
12072 }
12073 ldv_24960: ;
12074#line 2089
12075 if (i <= 4) {
12076#line 2090
12077 goto ldv_24959;
12078 } else {
12079#line 2092
12080 goto ldv_24961;
12081 }
12082 ldv_24961:
12083#line 2092
12084 i = 0;
12085#line 2092
12086 goto ldv_24963;
12087 ldv_24962:
12088 {
12089#line 2093
12090 __cil_tmp44 = (u8 )i;
12091#line 2093
12092 __cil_tmp45 = (unsigned int )__cil_tmp44;
12093#line 2093
12094 __cil_tmp46 = (u8 )nr;
12095#line 2093
12096 __cil_tmp47 = (unsigned int )__cil_tmp46;
12097#line 2093
12098 __cil_tmp48 = __cil_tmp47 * 8U;
12099#line 2093
12100 __cil_tmp49 = __cil_tmp48 + __cil_tmp45;
12101#line 2093
12102 __cil_tmp50 = __cil_tmp49 + 101U;
12103#line 2093
12104 __cil_tmp51 = (int )__cil_tmp50;
12105#line 2093
12106 __cil_tmp52 = (u8 )__cil_tmp51;
12107#line 2093
12108 tmp___2 = it87_read_value(data, __cil_tmp52);
12109#line 2093
12110 data->auto_pwm[nr][i] = (u8 )tmp___2;
12111#line 2092
12112 i = i + 1;
12113 }
12114 ldv_24963: ;
12115#line 2092
12116 if (i <= 2) {
12117#line 2093
12118 goto ldv_24962;
12119 } else {
12120#line 2095
12121 goto ldv_24964;
12122 }
12123 ldv_24964: ;
12124 } else {
12125
12126 }
12127#line 2098
12128 return;
12129}
12130}
12131#line 2098 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
12132static struct it87_data *it87_update_device(struct device *dev )
12133{ struct it87_data *data ;
12134 void *tmp ;
12135 int i ;
12136 int tmp___0 ;
12137 int tmp___1 ;
12138 int tmp___2 ;
12139 int tmp___3 ;
12140 int tmp___4 ;
12141 int tmp___5 ;
12142 int tmp___6 ;
12143 int tmp___7 ;
12144 int tmp___8 ;
12145 int tmp___9 ;
12146 int tmp___10 ;
12147 int tmp___11 ;
12148 int tmp___12 ;
12149 int tmp___13 ;
12150 int tmp___14 ;
12151 int tmp___15 ;
12152 int tmp___16 ;
12153 int tmp___17 ;
12154 int tmp___18 ;
12155 int tmp___19 ;
12156 int tmp___20 ;
12157 int tmp___21 ;
12158 struct device const *__cil_tmp27 ;
12159 struct mutex *__cil_tmp28 ;
12160 long __cil_tmp29 ;
12161 unsigned long __cil_tmp30 ;
12162 unsigned long __cil_tmp31 ;
12163 long __cil_tmp32 ;
12164 long __cil_tmp33 ;
12165 char __cil_tmp34 ;
12166 signed char __cil_tmp35 ;
12167 int __cil_tmp36 ;
12168 u8 __cil_tmp37 ;
12169 u8 __cil_tmp38 ;
12170 signed char __cil_tmp39 ;
12171 int __cil_tmp40 ;
12172 int __cil_tmp41 ;
12173 u8 __cil_tmp42 ;
12174 int __cil_tmp43 ;
12175 u8 __cil_tmp44 ;
12176 u8 __cil_tmp45 ;
12177 unsigned int __cil_tmp46 ;
12178 unsigned int __cil_tmp47 ;
12179 int __cil_tmp48 ;
12180 u8 __cil_tmp49 ;
12181 u8 __cil_tmp50 ;
12182 unsigned int __cil_tmp51 ;
12183 unsigned int __cil_tmp52 ;
12184 unsigned int __cil_tmp53 ;
12185 int __cil_tmp54 ;
12186 u8 __cil_tmp55 ;
12187 int __cil_tmp56 ;
12188 u8 __cil_tmp57 ;
12189 unsigned int __cil_tmp58 ;
12190 unsigned int __cil_tmp59 ;
12191 int __cil_tmp60 ;
12192 u8 __cil_tmp61 ;
12193 u8 __cil_tmp62 ;
12194 u8 __cil_tmp63 ;
12195 int __cil_tmp64 ;
12196 int __cil_tmp65 ;
12197 int __cil_tmp66 ;
12198 int __cil_tmp67 ;
12199 u8 __cil_tmp68 ;
12200 int __cil_tmp69 ;
12201 u8 __cil_tmp70 ;
12202 struct it87_data const *__cil_tmp71 ;
12203 int __cil_tmp72 ;
12204 u8 __cil_tmp73 ;
12205 int __cil_tmp74 ;
12206 short __cil_tmp75 ;
12207 int __cil_tmp76 ;
12208 u16 __cil_tmp77 ;
12209 short __cil_tmp78 ;
12210 int __cil_tmp79 ;
12211 int __cil_tmp80 ;
12212 int __cil_tmp81 ;
12213 u8 __cil_tmp82 ;
12214 int __cil_tmp83 ;
12215 short __cil_tmp84 ;
12216 int __cil_tmp85 ;
12217 u16 __cil_tmp86 ;
12218 short __cil_tmp87 ;
12219 int __cil_tmp88 ;
12220 int __cil_tmp89 ;
12221 u8 __cil_tmp90 ;
12222 unsigned int __cil_tmp91 ;
12223 unsigned int __cil_tmp92 ;
12224 int __cil_tmp93 ;
12225 u8 __cil_tmp94 ;
12226 int __cil_tmp95 ;
12227 u8 __cil_tmp96 ;
12228 unsigned int __cil_tmp97 ;
12229 unsigned int __cil_tmp98 ;
12230 int __cil_tmp99 ;
12231 u8 __cil_tmp100 ;
12232 u8 __cil_tmp101 ;
12233 unsigned int __cil_tmp102 ;
12234 unsigned int __cil_tmp103 ;
12235 unsigned int __cil_tmp104 ;
12236 int __cil_tmp105 ;
12237 u8 __cil_tmp106 ;
12238 u8 __cil_tmp107 ;
12239 int __cil_tmp108 ;
12240 int __cil_tmp109 ;
12241 struct it87_data const *__cil_tmp110 ;
12242 u8 __cil_tmp111 ;
12243 u8 __cil_tmp112 ;
12244 unsigned int __cil_tmp113 ;
12245 unsigned int __cil_tmp114 ;
12246 int __cil_tmp115 ;
12247 u8 __cil_tmp116 ;
12248 unsigned int __cil_tmp117 ;
12249 unsigned int __cil_tmp118 ;
12250 int __cil_tmp119 ;
12251 u8 __cil_tmp120 ;
12252 u8 __cil_tmp121 ;
12253 u8 __cil_tmp122 ;
12254 int __cil_tmp123 ;
12255 int __cil_tmp124 ;
12256 int __cil_tmp125 ;
12257 int __cil_tmp126 ;
12258 u8 __cil_tmp127 ;
12259 u8 __cil_tmp128 ;
12260 u8 __cil_tmp129 ;
12261 u8 __cil_tmp130 ;
12262 enum chips __cil_tmp131 ;
12263 unsigned int __cil_tmp132 ;
12264 u8 __cil_tmp133 ;
12265 u8 __cil_tmp134 ;
12266 unsigned int __cil_tmp135 ;
12267 unsigned int __cil_tmp136 ;
12268 enum chips __cil_tmp137 ;
12269 unsigned int __cil_tmp138 ;
12270 u8 __cil_tmp139 ;
12271 u8 __cil_tmp140 ;
12272 unsigned int __cil_tmp141 ;
12273 unsigned int __cil_tmp142 ;
12274 struct mutex *__cil_tmp143 ;
12275
12276 {
12277 {
12278#line 2100
12279 __cil_tmp27 = (struct device const *)dev;
12280#line 2100
12281 tmp = dev_get_drvdata(__cil_tmp27);
12282#line 2100
12283 data = (struct it87_data *)tmp;
12284#line 2103
12285 __cil_tmp28 = & data->update_lock;
12286#line 2103
12287 mutex_lock_nested(__cil_tmp28, 0U);
12288 }
12289 {
12290#line 2105
12291 __cil_tmp29 = (long )jiffies;
12292#line 2105
12293 __cil_tmp30 = data->last_updated;
12294#line 2105
12295 __cil_tmp31 = __cil_tmp30 + 375UL;
12296#line 2105
12297 __cil_tmp32 = (long )__cil_tmp31;
12298#line 2105
12299 __cil_tmp33 = __cil_tmp32 - __cil_tmp29;
12300#line 2105
12301 if (__cil_tmp33 < 0L) {
12302#line 2105
12303 goto _L;
12304 } else {
12305 {
12306#line 2105
12307 __cil_tmp34 = data->valid;
12308#line 2105
12309 __cil_tmp35 = (signed char )__cil_tmp34;
12310#line 2105
12311 __cil_tmp36 = (int )__cil_tmp35;
12312#line 2105
12313 if (__cil_tmp36 == 0) {
12314 _L:
12315#line 2107
12316 if (update_vbat != 0) {
12317 {
12318#line 2110
12319 __cil_tmp37 = (u8 )0;
12320#line 2110
12321 tmp___0 = it87_read_value(data, __cil_tmp37);
12322#line 2110
12323 __cil_tmp38 = (u8 )0;
12324#line 2110
12325 __cil_tmp39 = (signed char )tmp___0;
12326#line 2110
12327 __cil_tmp40 = (int )__cil_tmp39;
12328#line 2110
12329 __cil_tmp41 = __cil_tmp40 | 64;
12330#line 2110
12331 __cil_tmp42 = (u8 )__cil_tmp41;
12332#line 2110
12333 __cil_tmp43 = (int )__cil_tmp42;
12334#line 2110
12335 __cil_tmp44 = (u8 )__cil_tmp43;
12336#line 2110
12337 it87_write_value(data, __cil_tmp38, __cil_tmp44);
12338 }
12339 } else {
12340
12341 }
12342#line 2113
12343 i = 0;
12344#line 2113
12345 goto ldv_24977;
12346 ldv_24976:
12347 {
12348#line 2114
12349 __cil_tmp45 = (u8 )i;
12350#line 2114
12351 __cil_tmp46 = (unsigned int )__cil_tmp45;
12352#line 2114
12353 __cil_tmp47 = __cil_tmp46 + 32U;
12354#line 2114
12355 __cil_tmp48 = (int )__cil_tmp47;
12356#line 2114
12357 __cil_tmp49 = (u8 )__cil_tmp48;
12358#line 2114
12359 tmp___1 = it87_read_value(data, __cil_tmp49);
12360#line 2114
12361 data->in[i] = (u8 )tmp___1;
12362#line 2116
12363 __cil_tmp50 = (u8 )i;
12364#line 2116
12365 __cil_tmp51 = (unsigned int )__cil_tmp50;
12366#line 2116
12367 __cil_tmp52 = __cil_tmp51 * 2U;
12368#line 2116
12369 __cil_tmp53 = __cil_tmp52 + 49U;
12370#line 2116
12371 __cil_tmp54 = (int )__cil_tmp53;
12372#line 2116
12373 __cil_tmp55 = (u8 )__cil_tmp54;
12374#line 2116
12375 tmp___2 = it87_read_value(data, __cil_tmp55);
12376#line 2116
12377 data->in_min[i] = (u8 )tmp___2;
12378#line 2118
12379 __cil_tmp56 = i + 24;
12380#line 2118
12381 __cil_tmp57 = (u8 )__cil_tmp56;
12382#line 2118
12383 __cil_tmp58 = (unsigned int )__cil_tmp57;
12384#line 2118
12385 __cil_tmp59 = __cil_tmp58 * 2U;
12386#line 2118
12387 __cil_tmp60 = (int )__cil_tmp59;
12388#line 2118
12389 __cil_tmp61 = (u8 )__cil_tmp60;
12390#line 2118
12391 tmp___3 = it87_read_value(data, __cil_tmp61);
12392#line 2118
12393 data->in_max[i] = (u8 )tmp___3;
12394#line 2113
12395 i = i + 1;
12396 }
12397 ldv_24977: ;
12398#line 2113
12399 if (i <= 7) {
12400#line 2114
12401 goto ldv_24976;
12402 } else {
12403#line 2116
12404 goto ldv_24978;
12405 }
12406 ldv_24978:
12407 {
12408#line 2122
12409 __cil_tmp62 = (u8 )40;
12410#line 2122
12411 tmp___4 = it87_read_value(data, __cil_tmp62);
12412#line 2122
12413 data->in[8] = (u8 )tmp___4;
12414#line 2124
12415 i = 0;
12416 }
12417#line 2124
12418 goto ldv_24981;
12419 ldv_24980: ;
12420 {
12421#line 2126
12422 __cil_tmp63 = data->has_fan;
12423#line 2126
12424 __cil_tmp64 = (int )__cil_tmp63;
12425#line 2126
12426 __cil_tmp65 = __cil_tmp64 >> i;
12427#line 2126
12428 __cil_tmp66 = __cil_tmp65 & 1;
12429#line 2126
12430 if (__cil_tmp66 == 0) {
12431#line 2127
12432 goto ldv_24979;
12433 } else {
12434
12435 }
12436 }
12437 {
12438#line 2129
12439 __cil_tmp67 = (int )IT87_REG_FAN_MIN[i];
12440#line 2129
12441 __cil_tmp68 = (u8 )__cil_tmp67;
12442#line 2129
12443 tmp___5 = it87_read_value(data, __cil_tmp68);
12444#line 2129
12445 data->fan_min[i] = (u16 )tmp___5;
12446#line 2131
12447 __cil_tmp69 = (int )IT87_REG_FAN[i];
12448#line 2131
12449 __cil_tmp70 = (u8 )__cil_tmp69;
12450#line 2131
12451 tmp___6 = it87_read_value(data, __cil_tmp70);
12452#line 2131
12453 data->fan[i] = (u16 )tmp___6;
12454#line 2134
12455 __cil_tmp71 = (struct it87_data const *)data;
12456#line 2134
12457 tmp___9 = has_16bit_fans(__cil_tmp71);
12458 }
12459#line 2134
12460 if (tmp___9 != 0) {
12461 {
12462#line 2135
12463 __cil_tmp72 = (int )IT87_REG_FANX[i];
12464#line 2135
12465 __cil_tmp73 = (u8 )__cil_tmp72;
12466#line 2135
12467 tmp___7 = it87_read_value(data, __cil_tmp73);
12468#line 2135
12469 __cil_tmp74 = tmp___7 << 8;
12470#line 2135
12471 __cil_tmp75 = (short )__cil_tmp74;
12472#line 2135
12473 __cil_tmp76 = (int )__cil_tmp75;
12474#line 2135
12475 __cil_tmp77 = data->fan[i];
12476#line 2135
12477 __cil_tmp78 = (short )__cil_tmp77;
12478#line 2135
12479 __cil_tmp79 = (int )__cil_tmp78;
12480#line 2135
12481 __cil_tmp80 = __cil_tmp79 | __cil_tmp76;
12482#line 2135
12483 data->fan[i] = (u16 )__cil_tmp80;
12484#line 2137
12485 __cil_tmp81 = (int )IT87_REG_FANX_MIN[i];
12486#line 2137
12487 __cil_tmp82 = (u8 )__cil_tmp81;
12488#line 2137
12489 tmp___8 = it87_read_value(data, __cil_tmp82);
12490#line 2137
12491 __cil_tmp83 = tmp___8 << 8;
12492#line 2137
12493 __cil_tmp84 = (short )__cil_tmp83;
12494#line 2137
12495 __cil_tmp85 = (int )__cil_tmp84;
12496#line 2137
12497 __cil_tmp86 = data->fan_min[i];
12498#line 2137
12499 __cil_tmp87 = (short )__cil_tmp86;
12500#line 2137
12501 __cil_tmp88 = (int )__cil_tmp87;
12502#line 2137
12503 __cil_tmp89 = __cil_tmp88 | __cil_tmp85;
12504#line 2137
12505 data->fan_min[i] = (u16 )__cil_tmp89;
12506 }
12507 } else {
12508
12509 }
12510 ldv_24979:
12511#line 2124
12512 i = i + 1;
12513 ldv_24981: ;
12514#line 2124
12515 if (i <= 4) {
12516#line 2125
12517 goto ldv_24980;
12518 } else {
12519#line 2127
12520 goto ldv_24982;
12521 }
12522 ldv_24982:
12523#line 2141
12524 i = 0;
12525#line 2141
12526 goto ldv_24984;
12527 ldv_24983:
12528 {
12529#line 2142
12530 __cil_tmp90 = (u8 )i;
12531#line 2142
12532 __cil_tmp91 = (unsigned int )__cil_tmp90;
12533#line 2142
12534 __cil_tmp92 = __cil_tmp91 + 41U;
12535#line 2142
12536 __cil_tmp93 = (int )__cil_tmp92;
12537#line 2142
12538 __cil_tmp94 = (u8 )__cil_tmp93;
12539#line 2142
12540 tmp___10 = it87_read_value(data, __cil_tmp94);
12541#line 2142
12542 data->temp[i] = (s8 )tmp___10;
12543#line 2144
12544 __cil_tmp95 = i + 32;
12545#line 2144
12546 __cil_tmp96 = (u8 )__cil_tmp95;
12547#line 2144
12548 __cil_tmp97 = (unsigned int )__cil_tmp96;
12549#line 2144
12550 __cil_tmp98 = __cil_tmp97 * 2U;
12551#line 2144
12552 __cil_tmp99 = (int )__cil_tmp98;
12553#line 2144
12554 __cil_tmp100 = (u8 )__cil_tmp99;
12555#line 2144
12556 tmp___11 = it87_read_value(data, __cil_tmp100);
12557#line 2144
12558 data->temp_high[i] = (s8 )tmp___11;
12559#line 2146
12560 __cil_tmp101 = (u8 )i;
12561#line 2146
12562 __cil_tmp102 = (unsigned int )__cil_tmp101;
12563#line 2146
12564 __cil_tmp103 = __cil_tmp102 * 2U;
12565#line 2146
12566 __cil_tmp104 = __cil_tmp103 + 65U;
12567#line 2146
12568 __cil_tmp105 = (int )__cil_tmp104;
12569#line 2146
12570 __cil_tmp106 = (u8 )__cil_tmp105;
12571#line 2146
12572 tmp___12 = it87_read_value(data, __cil_tmp106);
12573#line 2146
12574 data->temp_low[i] = (s8 )tmp___12;
12575#line 2141
12576 i = i + 1;
12577 }
12578 ldv_24984: ;
12579#line 2141
12580 if (i <= 2) {
12581#line 2142
12582 goto ldv_24983;
12583 } else {
12584#line 2144
12585 goto ldv_24985;
12586 }
12587 ldv_24985: ;
12588 {
12589#line 2151
12590 __cil_tmp107 = data->has_fan;
12591#line 2151
12592 __cil_tmp108 = (int )__cil_tmp107;
12593#line 2151
12594 __cil_tmp109 = __cil_tmp108 & 7;
12595#line 2151
12596 if (__cil_tmp109 != 0) {
12597 {
12598#line 2151
12599 __cil_tmp110 = (struct it87_data const *)data;
12600#line 2151
12601 tmp___13 = has_16bit_fans(__cil_tmp110);
12602 }
12603#line 2151
12604 if (tmp___13 == 0) {
12605 {
12606#line 2152
12607 __cil_tmp111 = (u8 )11;
12608#line 2152
12609 i = it87_read_value(data, __cil_tmp111);
12610#line 2153
12611 __cil_tmp112 = (u8 )i;
12612#line 2153
12613 __cil_tmp113 = (unsigned int )__cil_tmp112;
12614#line 2153
12615 __cil_tmp114 = __cil_tmp113 & 7U;
12616#line 2153
12617 data->fan_div[0] = (u8 )__cil_tmp114;
12618#line 2154
12619 __cil_tmp115 = i >> 3;
12620#line 2154
12621 __cil_tmp116 = (u8 )__cil_tmp115;
12622#line 2154
12623 __cil_tmp117 = (unsigned int )__cil_tmp116;
12624#line 2154
12625 __cil_tmp118 = __cil_tmp117 & 7U;
12626#line 2154
12627 data->fan_div[1] = (u8 )__cil_tmp118;
12628 }
12629 {
12630#line 2155
12631 __cil_tmp119 = i & 64;
12632#line 2155
12633 if (__cil_tmp119 != 0) {
12634#line 2155
12635 data->fan_div[2] = (u8 )3U;
12636 } else {
12637#line 2155
12638 data->fan_div[2] = (u8 )1U;
12639 }
12640 }
12641 } else {
12642
12643 }
12644 } else {
12645
12646 }
12647 }
12648 {
12649#line 2158
12650 __cil_tmp120 = (u8 )1;
12651#line 2158
12652 tmp___14 = it87_read_value(data, __cil_tmp120);
12653#line 2158
12654 __cil_tmp121 = (u8 )2;
12655#line 2158
12656 tmp___15 = it87_read_value(data, __cil_tmp121);
12657#line 2158
12658 __cil_tmp122 = (u8 )3;
12659#line 2158
12660 tmp___16 = it87_read_value(data, __cil_tmp122);
12661#line 2158
12662 __cil_tmp123 = tmp___16 << 16;
12663#line 2158
12664 __cil_tmp124 = tmp___15 << 8;
12665#line 2158
12666 __cil_tmp125 = tmp___14 | __cil_tmp124;
12667#line 2158
12668 __cil_tmp126 = __cil_tmp125 | __cil_tmp123;
12669#line 2158
12670 data->alarms = (u32 )__cil_tmp126;
12671#line 2162
12672 __cil_tmp127 = (u8 )92;
12673#line 2162
12674 tmp___17 = it87_read_value(data, __cil_tmp127);
12675#line 2162
12676 data->beeps = (u8 )tmp___17;
12677#line 2164
12678 __cil_tmp128 = (u8 )19;
12679#line 2164
12680 tmp___18 = it87_read_value(data, __cil_tmp128);
12681#line 2164
12682 data->fan_main_ctrl = (u8 )tmp___18;
12683#line 2166
12684 __cil_tmp129 = (u8 )20;
12685#line 2166
12686 tmp___19 = it87_read_value(data, __cil_tmp129);
12687#line 2166
12688 data->fan_ctl = (u8 )tmp___19;
12689#line 2167
12690 i = 0;
12691 }
12692#line 2167
12693 goto ldv_24987;
12694 ldv_24986:
12695 {
12696#line 2168
12697 it87_update_pwm_ctrl(data, i);
12698#line 2167
12699 i = i + 1;
12700 }
12701 ldv_24987: ;
12702#line 2167
12703 if (i <= 2) {
12704#line 2168
12705 goto ldv_24986;
12706 } else {
12707#line 2170
12708 goto ldv_24988;
12709 }
12710 ldv_24988:
12711 {
12712#line 2170
12713 __cil_tmp130 = (u8 )81;
12714#line 2170
12715 tmp___20 = it87_read_value(data, __cil_tmp130);
12716#line 2170
12717 data->sensor = (u8 )tmp___20;
12718 }
12719 {
12720#line 2174
12721 __cil_tmp131 = data->type;
12722#line 2174
12723 __cil_tmp132 = (unsigned int )__cil_tmp131;
12724#line 2174
12725 if (__cil_tmp132 == 1U) {
12726 {
12727#line 2175
12728 __cil_tmp133 = (u8 )10;
12729#line 2175
12730 tmp___21 = it87_read_value(data, __cil_tmp133);
12731#line 2175
12732 data->vid = (u8 )tmp___21;
12733#line 2178
12734 __cil_tmp134 = data->vid;
12735#line 2178
12736 __cil_tmp135 = (unsigned int )__cil_tmp134;
12737#line 2178
12738 __cil_tmp136 = __cil_tmp135 & 63U;
12739#line 2178
12740 data->vid = (u8 )__cil_tmp136;
12741 }
12742 } else {
12743 {
12744#line 2174
12745 __cil_tmp137 = data->type;
12746#line 2174
12747 __cil_tmp138 = (unsigned int )__cil_tmp137;
12748#line 2174
12749 if (__cil_tmp138 == 2U) {
12750 {
12751#line 2175
12752 __cil_tmp139 = (u8 )10;
12753#line 2175
12754 tmp___21 = it87_read_value(data, __cil_tmp139);
12755#line 2175
12756 data->vid = (u8 )tmp___21;
12757#line 2178
12758 __cil_tmp140 = data->vid;
12759#line 2178
12760 __cil_tmp141 = (unsigned int )__cil_tmp140;
12761#line 2178
12762 __cil_tmp142 = __cil_tmp141 & 63U;
12763#line 2178
12764 data->vid = (u8 )__cil_tmp142;
12765 }
12766 } else {
12767
12768 }
12769 }
12770 }
12771 }
12772#line 2180
12773 data->last_updated = (unsigned long )jiffies;
12774#line 2181
12775 data->valid = (char)1;
12776 } else {
12777
12778 }
12779 }
12780 }
12781 }
12782 {
12783#line 2184
12784 __cil_tmp143 = & data->update_lock;
12785#line 2184
12786 mutex_unlock(__cil_tmp143);
12787 }
12788#line 2186
12789 return (data);
12790}
12791}
12792#line 2189 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
12793static int it87_device_add(unsigned short address , struct it87_sio_data const *sio_data )
12794{ struct resource res ;
12795 int err ;
12796 int __cil_tmp5 ;
12797 int __cil_tmp6 ;
12798 int __cil_tmp7 ;
12799 int __cil_tmp8 ;
12800 struct resource const *__cil_tmp9 ;
12801 int __cil_tmp10 ;
12802 struct platform_device *__cil_tmp11 ;
12803 unsigned long __cil_tmp12 ;
12804 unsigned long __cil_tmp13 ;
12805 struct resource const *__cil_tmp14 ;
12806 void const *__cil_tmp15 ;
12807
12808 {
12809 {
12810#line 2192
12811 __cil_tmp5 = (int )address;
12812#line 2192
12813 __cil_tmp6 = __cil_tmp5 + 5;
12814#line 2192
12815 res.start = (unsigned long long )__cil_tmp6;
12816#line 2192
12817 __cil_tmp7 = (int )address;
12818#line 2192
12819 __cil_tmp8 = __cil_tmp7 + 6;
12820#line 2192
12821 res.end = (unsigned long long )__cil_tmp8;
12822#line 2192
12823 res.name = "it87";
12824#line 2192
12825 res.flags = 256UL;
12826#line 2192
12827 res.parent = (struct resource *)0;
12828#line 2192
12829 res.sibling = (struct resource *)0;
12830#line 2192
12831 res.child = (struct resource *)0;
12832#line 2200
12833 __cil_tmp9 = (struct resource const *)(& res);
12834#line 2200
12835 err = acpi_check_resource_conflict(__cil_tmp9);
12836 }
12837#line 2201
12838 if (err != 0) {
12839#line 2202
12840 goto exit;
12841 } else {
12842
12843 }
12844 {
12845#line 2204
12846 __cil_tmp10 = (int )address;
12847#line 2204
12848 pdev = platform_device_alloc("it87", __cil_tmp10);
12849 }
12850 {
12851#line 2205
12852 __cil_tmp11 = (struct platform_device *)0;
12853#line 2205
12854 __cil_tmp12 = (unsigned long )__cil_tmp11;
12855#line 2205
12856 __cil_tmp13 = (unsigned long )pdev;
12857#line 2205
12858 if (__cil_tmp13 == __cil_tmp12) {
12859 {
12860#line 2206
12861 err = -12;
12862#line 2207
12863 printk("<3>it87: Device allocation failed\n");
12864 }
12865#line 2208
12866 goto exit;
12867 } else {
12868
12869 }
12870 }
12871 {
12872#line 2211
12873 __cil_tmp14 = (struct resource const *)(& res);
12874#line 2211
12875 err = platform_device_add_resources(pdev, __cil_tmp14, 1U);
12876 }
12877#line 2212
12878 if (err != 0) {
12879 {
12880#line 2213
12881 printk("<3>it87: Device resource addition failed (%d)\n", err);
12882 }
12883#line 2214
12884 goto exit_device_put;
12885 } else {
12886
12887 }
12888 {
12889#line 2217
12890 __cil_tmp15 = (void const *)sio_data;
12891#line 2217
12892 err = platform_device_add_data(pdev, __cil_tmp15, 12UL);
12893 }
12894#line 2219
12895 if (err != 0) {
12896 {
12897#line 2220
12898 printk("<3>it87: Platform data allocation failed\n");
12899 }
12900#line 2221
12901 goto exit_device_put;
12902 } else {
12903
12904 }
12905 {
12906#line 2224
12907 err = platform_device_add(pdev);
12908 }
12909#line 2225
12910 if (err != 0) {
12911 {
12912#line 2226
12913 printk("<3>it87: Device addition failed (%d)\n", err);
12914 }
12915#line 2227
12916 goto exit_device_put;
12917 } else {
12918
12919 }
12920#line 2230
12921 return (0);
12922 exit_device_put:
12923 {
12924#line 2233
12925 platform_device_put(pdev);
12926 }
12927 exit: ;
12928#line 2235
12929 return (err);
12930}
12931}
12932#line 2238 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
12933static int sm_it87_init(void)
12934{ int err ;
12935 unsigned short isa_address ;
12936 struct it87_sio_data sio_data ;
12937 void *__cil_tmp4 ;
12938 int __cil_tmp5 ;
12939 unsigned short __cil_tmp6 ;
12940 struct it87_sio_data const *__cil_tmp7 ;
12941
12942 {
12943 {
12944#line 2241
12945 isa_address = (unsigned short)0;
12946#line 2244
12947 __cil_tmp4 = (void *)(& sio_data);
12948#line 2244
12949 memset(__cil_tmp4, 0, 12UL);
12950#line 2245
12951 err = it87_find(& isa_address, & sio_data);
12952 }
12953#line 2246
12954 if (err != 0) {
12955#line 2247
12956 return (err);
12957 } else {
12958
12959 }
12960 {
12961#line 2248
12962 err = platform_driver_register(& it87_driver);
12963 }
12964#line 2249
12965 if (err != 0) {
12966#line 2250
12967 return (err);
12968 } else {
12969
12970 }
12971 {
12972#line 2252
12973 __cil_tmp5 = (int )isa_address;
12974#line 2252
12975 __cil_tmp6 = (unsigned short )__cil_tmp5;
12976#line 2252
12977 __cil_tmp7 = (struct it87_sio_data const *)(& sio_data);
12978#line 2252
12979 err = it87_device_add(__cil_tmp6, __cil_tmp7);
12980 }
12981#line 2253
12982 if (err != 0) {
12983 {
12984#line 2254
12985 platform_driver_unregister(& it87_driver);
12986 }
12987#line 2255
12988 return (err);
12989 } else {
12990
12991 }
12992#line 2258
12993 return (0);
12994}
12995}
12996#line 2261 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
12997static void sm_it87_exit(void)
12998{
12999
13000 {
13001 {
13002#line 2263
13003 platform_device_unregister(pdev);
13004#line 2264
13005 platform_driver_unregister(& it87_driver);
13006 }
13007#line 2265
13008 return;
13009}
13010}
13011#line 2297
13012void ldv_check_final_state(void) ;
13013#line 2300
13014extern void ldv_check_return_value(int ) ;
13015#line 2303
13016extern void ldv_initialize(void) ;
13017#line 2306
13018extern int nondet_int(void) ;
13019#line 2309 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
13020int LDV_IN_INTERRUPT ;
13021#line 2312 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
13022void main(void)
13023{ struct platform_device *var_group1 ;
13024 int res_it87_probe_61 ;
13025 int ldv_s_it87_driver_platform_driver ;
13026 int tmp ;
13027 int tmp___0 ;
13028 int tmp___1 ;
13029
13030 {
13031 {
13032#line 2607
13033 ldv_s_it87_driver_platform_driver = 0;
13034#line 2461
13035 LDV_IN_INTERRUPT = 1;
13036#line 2470
13037 ldv_initialize();
13038#line 2605
13039 tmp = sm_it87_init();
13040 }
13041#line 2605
13042 if (tmp != 0) {
13043#line 2606
13044 goto ldv_final;
13045 } else {
13046
13047 }
13048#line 2610
13049 goto ldv_25064;
13050 ldv_25063:
13051 {
13052#line 2614
13053 tmp___0 = nondet_int();
13054 }
13055#line 2616
13056 if (tmp___0 == 0) {
13057#line 2616
13058 goto case_0;
13059 } else {
13060#line 2764
13061 goto switch_default;
13062#line 2614
13063 if (0) {
13064 case_0: ;
13065#line 2619
13066 if (ldv_s_it87_driver_platform_driver == 0) {
13067 {
13068#line 2753
13069 res_it87_probe_61 = it87_probe(var_group1);
13070#line 2754
13071 ldv_check_return_value(res_it87_probe_61);
13072 }
13073#line 2755
13074 if (res_it87_probe_61 != 0) {
13075#line 2756
13076 goto ldv_module_exit;
13077 } else {
13078
13079 }
13080#line 2757
13081 ldv_s_it87_driver_platform_driver = 0;
13082 } else {
13083
13084 }
13085#line 2763
13086 goto ldv_25061;
13087 switch_default: ;
13088#line 2764
13089 goto ldv_25061;
13090 } else {
13091
13092 }
13093 }
13094 ldv_25061: ;
13095 ldv_25064:
13096 {
13097#line 2610
13098 tmp___1 = nondet_int();
13099 }
13100#line 2610
13101 if (tmp___1 != 0) {
13102#line 2612
13103 goto ldv_25063;
13104 } else
13105#line 2610
13106 if (ldv_s_it87_driver_platform_driver != 0) {
13107#line 2612
13108 goto ldv_25063;
13109 } else {
13110#line 2614
13111 goto ldv_25065;
13112 }
13113 ldv_25065: ;
13114 ldv_module_exit:
13115 {
13116#line 2905
13117 sm_it87_exit();
13118 }
13119 ldv_final:
13120 {
13121#line 2908
13122 ldv_check_final_state();
13123 }
13124#line 2911
13125 return;
13126}
13127}
13128#line 5 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.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"
13129void ldv_blast_assert(void)
13130{
13131
13132 {
13133 ERROR: ;
13134#line 6
13135 goto ERROR;
13136}
13137}
13138#line 6 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.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"
13139extern int ldv_undefined_int(void) ;
13140#line 2928 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
13141int ldv_module_refcounter = 1;
13142#line 2931 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
13143void ldv_module_get(struct module *module )
13144{ struct module *__cil_tmp2 ;
13145 unsigned long __cil_tmp3 ;
13146 unsigned long __cil_tmp4 ;
13147
13148 {
13149 {
13150#line 2934
13151 __cil_tmp2 = (struct module *)0;
13152#line 2934
13153 __cil_tmp3 = (unsigned long )__cil_tmp2;
13154#line 2934
13155 __cil_tmp4 = (unsigned long )module;
13156#line 2934
13157 if (__cil_tmp4 != __cil_tmp3) {
13158#line 2936
13159 ldv_module_refcounter = ldv_module_refcounter + 1;
13160 } else {
13161
13162 }
13163 }
13164#line 2937
13165 return;
13166}
13167}
13168#line 2941 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
13169int ldv_try_module_get(struct module *module )
13170{ int module_get_succeeded ;
13171 struct module *__cil_tmp3 ;
13172 unsigned long __cil_tmp4 ;
13173 unsigned long __cil_tmp5 ;
13174
13175 {
13176 {
13177#line 2946
13178 __cil_tmp3 = (struct module *)0;
13179#line 2946
13180 __cil_tmp4 = (unsigned long )__cil_tmp3;
13181#line 2946
13182 __cil_tmp5 = (unsigned long )module;
13183#line 2946
13184 if (__cil_tmp5 != __cil_tmp4) {
13185 {
13186#line 2949
13187 module_get_succeeded = ldv_undefined_int();
13188 }
13189#line 2951
13190 if (module_get_succeeded == 1) {
13191#line 2953
13192 ldv_module_refcounter = ldv_module_refcounter + 1;
13193#line 2955
13194 return (1);
13195 } else {
13196#line 2960
13197 return (0);
13198 }
13199 } else {
13200
13201 }
13202 }
13203#line 2962
13204 return (0);
13205}
13206}
13207#line 2966 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
13208void ldv_module_put(struct module *module )
13209{ struct module *__cil_tmp2 ;
13210 unsigned long __cil_tmp3 ;
13211 unsigned long __cil_tmp4 ;
13212
13213 {
13214 {
13215#line 2969
13216 __cil_tmp2 = (struct module *)0;
13217#line 2969
13218 __cil_tmp3 = (unsigned long )__cil_tmp2;
13219#line 2969
13220 __cil_tmp4 = (unsigned long )module;
13221#line 2969
13222 if (__cil_tmp4 != __cil_tmp3) {
13223#line 2971
13224 if (ldv_module_refcounter <= 1) {
13225 {
13226#line 2971
13227 ldv_blast_assert();
13228 }
13229 } else {
13230
13231 }
13232#line 2973
13233 ldv_module_refcounter = ldv_module_refcounter - 1;
13234 } else {
13235
13236 }
13237 }
13238#line 2975
13239 return;
13240}
13241}
13242#line 2978 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
13243void ldv_module_put_and_exit(void)
13244{ struct module *__cil_tmp1 ;
13245
13246 {
13247 {
13248#line 2980
13249 __cil_tmp1 = (struct module *)1;
13250#line 2980
13251 ldv_module_put(__cil_tmp1);
13252 }
13253 LDV_STOP: ;
13254#line 2982
13255 goto LDV_STOP;
13256}
13257}
13258#line 2986 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
13259unsigned int ldv_module_refcount(void)
13260{ int __cil_tmp1 ;
13261
13262 {
13263 {
13264#line 2989
13265 __cil_tmp1 = ldv_module_refcounter + -1;
13266#line 2989
13267 return ((unsigned int )__cil_tmp1);
13268 }
13269}
13270}
13271#line 2993 "/anthill/stuff/tacas-comp/work/current--X--drivers/hwmon/it87.ko--X--bulklinux-3.0.1--X--08_1/linux-3.0.1/csd_deg_dscv/11/dscv_tempdir/dscv/ri/08_1/drivers/hwmon/it87.c.p"
13272void ldv_check_final_state(void)
13273{
13274
13275 {
13276#line 2996
13277 if (ldv_module_refcounter != 1) {
13278 {
13279#line 2996
13280 ldv_blast_assert();
13281 }
13282 } else {
13283
13284 }
13285#line 2999
13286 return;
13287}
13288}