blob: d847d7bef2f15ce69da488438edb372237dcdb5e [file] [log] [blame]
Ahmed Bougacha1fe3f1c2016-05-25 20:22:45 +00001; RUN: opt < %s -mtriple=x86_64-apple-macosx10.8.0 -inferattrs -S | FileCheck %s
2
3; Check that we don't modify libc functions with invalid prototypes.
4
5; CHECK: declare void @__cospi(...)
6declare void @__cospi(...)
7
8; CHECK: declare void @__cospif(...)
9declare void @__cospif(...)
10
11; CHECK: declare void @__sinpi(...)
12declare void @__sinpi(...)
13
14; CHECK: declare void @__sinpif(...)
15declare void @__sinpif(...)
16
17; CHECK: declare void @abs(...)
18declare void @abs(...)
19
20; CHECK: declare void @access(...)
21declare void @access(...)
22
23; CHECK: declare void @acos(...)
24declare void @acos(...)
25
26; CHECK: declare void @acosf(...)
27declare void @acosf(...)
28
29; CHECK: declare void @acosh(...)
30declare void @acosh(...)
31
32; CHECK: declare void @acoshf(...)
33declare void @acoshf(...)
34
35; CHECK: declare void @acoshl(...)
36declare void @acoshl(...)
37
38; CHECK: declare void @acosl(...)
39declare void @acosl(...)
40
41; CHECK: declare void @asin(...)
42declare void @asin(...)
43
44; CHECK: declare void @asinf(...)
45declare void @asinf(...)
46
47; CHECK: declare void @asinh(...)
48declare void @asinh(...)
49
50; CHECK: declare void @asinhf(...)
51declare void @asinhf(...)
52
53; CHECK: declare void @asinhl(...)
54declare void @asinhl(...)
55
56; CHECK: declare void @asinl(...)
57declare void @asinl(...)
58
59; CHECK: declare void @atan(...)
60declare void @atan(...)
61
62; CHECK: declare void @atan2(...)
63declare void @atan2(...)
64
65; CHECK: declare void @atan2f(...)
66declare void @atan2f(...)
67
68; CHECK: declare void @atan2l(...)
69declare void @atan2l(...)
70
71; CHECK: declare void @atanf(...)
72declare void @atanf(...)
73
74; CHECK: declare void @atanh(...)
75declare void @atanh(...)
76
77; CHECK: declare void @atanhf(...)
78declare void @atanhf(...)
79
80; CHECK: declare void @atanhl(...)
81declare void @atanhl(...)
82
83; CHECK: declare void @atanl(...)
84declare void @atanl(...)
85
86; CHECK: declare void @atof(...)
87declare void @atof(...)
88
89; CHECK: declare void @atoi(...)
90declare void @atoi(...)
91
92; CHECK: declare void @atol(...)
93declare void @atol(...)
94
95; CHECK: declare void @atoll(...)
96declare void @atoll(...)
97
98; CHECK: declare void @bcmp(...)
99declare void @bcmp(...)
100
101; CHECK: declare void @bcopy(...)
102declare void @bcopy(...)
103
104; CHECK: declare void @bzero(...)
105declare void @bzero(...)
106
107; CHECK: declare void @calloc(...)
108declare void @calloc(...)
109
110; CHECK: declare void @cbrt(...)
111declare void @cbrt(...)
112
113; CHECK: declare void @cbrtf(...)
114declare void @cbrtf(...)
115
116; CHECK: declare void @cbrtl(...)
117declare void @cbrtl(...)
118
119; CHECK: declare void @ceil(...)
120declare void @ceil(...)
121
122; CHECK: declare void @ceilf(...)
123declare void @ceilf(...)
124
125; CHECK: declare void @ceill(...)
126declare void @ceill(...)
127
128; CHECK: declare void @chmod(...)
129declare void @chmod(...)
130
131; CHECK: declare void @chown(...)
132declare void @chown(...)
133
134; CHECK: declare void @clearerr(...)
135declare void @clearerr(...)
136
137; CHECK: declare void @closedir(...)
138declare void @closedir(...)
139
140; CHECK: declare void @copysign(...)
141declare void @copysign(...)
142
143; CHECK: declare void @copysignf(...)
144declare void @copysignf(...)
145
146; CHECK: declare void @copysignl(...)
147declare void @copysignl(...)
148
149; CHECK: declare void @cos(...)
150declare void @cos(...)
151
152; CHECK: declare void @cosf(...)
153declare void @cosf(...)
154
155; CHECK: declare void @cosh(...)
156declare void @cosh(...)
157
158; CHECK: declare void @coshf(...)
159declare void @coshf(...)
160
161; CHECK: declare void @coshl(...)
162declare void @coshl(...)
163
164; CHECK: declare void @cosl(...)
165declare void @cosl(...)
166
167; CHECK: declare void @ctermid(...)
168declare void @ctermid(...)
169
170; CHECK: declare void @exp(...)
171declare void @exp(...)
172
173; CHECK: declare void @exp2(...)
174declare void @exp2(...)
175
176; CHECK: declare void @exp2f(...)
177declare void @exp2f(...)
178
179; CHECK: declare void @exp2l(...)
180declare void @exp2l(...)
181
182; CHECK: declare void @expf(...)
183declare void @expf(...)
184
185; CHECK: declare void @expl(...)
186declare void @expl(...)
187
188; CHECK: declare void @expm1(...)
189declare void @expm1(...)
190
191; CHECK: declare void @expm1f(...)
192declare void @expm1f(...)
193
194; CHECK: declare void @expm1l(...)
195declare void @expm1l(...)
196
197; CHECK: declare void @fabs(...)
198declare void @fabs(...)
199
200; CHECK: declare void @fabsf(...)
201declare void @fabsf(...)
202
203; CHECK: declare void @fabsl(...)
204declare void @fabsl(...)
205
206; CHECK: declare void @fclose(...)
207declare void @fclose(...)
208
209; CHECK: declare void @fdopen(...)
210declare void @fdopen(...)
211
212; CHECK: declare void @feof(...)
213declare void @feof(...)
214
215; CHECK: declare void @ferror(...)
216declare void @ferror(...)
217
218; CHECK: declare void @fflush(...)
219declare void @fflush(...)
220
221; CHECK: declare void @ffs(...)
222declare void @ffs(...)
223
224; CHECK: declare void @ffsl(...)
225declare void @ffsl(...)
226
227; CHECK: declare void @ffsll(...)
228declare void @ffsll(...)
229
230; CHECK: declare void @fgetc(...)
231declare void @fgetc(...)
232
233; CHECK: declare void @fgetpos(...)
234declare void @fgetpos(...)
235
236; CHECK: declare void @fgets(...)
237declare void @fgets(...)
238
239; CHECK: declare void @fileno(...)
240declare void @fileno(...)
241
242; CHECK: declare void @flockfile(...)
243declare void @flockfile(...)
244
245; CHECK: declare void @floor(...)
246declare void @floor(...)
247
248; CHECK: declare void @floorf(...)
249declare void @floorf(...)
250
251; CHECK: declare void @floorl(...)
252declare void @floorl(...)
253
254; CHECK: declare void @fls(...)
255declare void @fls(...)
256
257; CHECK: declare void @flsl(...)
258declare void @flsl(...)
259
260; CHECK: declare void @flsll(...)
261declare void @flsll(...)
262
263; CHECK: declare void @fmax(...)
264declare void @fmax(...)
265
266; CHECK: declare void @fmaxf(...)
267declare void @fmaxf(...)
268
269; CHECK: declare void @fmaxl(...)
270declare void @fmaxl(...)
271
272; CHECK: declare void @fmin(...)
273declare void @fmin(...)
274
275; CHECK: declare void @fminf(...)
276declare void @fminf(...)
277
278; CHECK: declare void @fminl(...)
279declare void @fminl(...)
280
281; CHECK: declare void @fmod(...)
282declare void @fmod(...)
283
284; CHECK: declare void @fmodf(...)
285declare void @fmodf(...)
286
287; CHECK: declare void @fmodl(...)
288declare void @fmodl(...)
289
290; CHECK: declare void @fopen(...)
291declare void @fopen(...)
292
293; CHECK: declare void @fprintf(...)
294declare void @fprintf(...)
295
296; CHECK: declare void @fputc(...)
297declare void @fputc(...)
298
299; CHECK: declare void @fputs(...)
300declare void @fputs(...)
301
302; CHECK: declare void @fread(...)
303declare void @fread(...)
304
305; CHECK: declare void @free(...)
306declare void @free(...)
307
308; CHECK: declare void @frexp(...)
309declare void @frexp(...)
310
311; CHECK: declare void @frexpf(...)
312declare void @frexpf(...)
313
314; CHECK: declare void @frexpl(...)
315declare void @frexpl(...)
316
317; CHECK: declare void @fscanf(...)
318declare void @fscanf(...)
319
320; CHECK: declare void @fseek(...)
321declare void @fseek(...)
322
323; CHECK: declare void @fseeko(...)
324declare void @fseeko(...)
325
326; CHECK: declare void @fsetpos(...)
327declare void @fsetpos(...)
328
329; CHECK: declare void @fstat(...)
330declare void @fstat(...)
331
332; CHECK: declare void @fstatvfs(...)
333declare void @fstatvfs(...)
334
335; CHECK: declare void @ftell(...)
336declare void @ftell(...)
337
338; CHECK: declare void @ftello(...)
339declare void @ftello(...)
340
341; CHECK: declare void @ftrylockfile(...)
342declare void @ftrylockfile(...)
343
344; CHECK: declare void @funlockfile(...)
345declare void @funlockfile(...)
346
347; CHECK: declare void @fwrite(...)
348declare void @fwrite(...)
349
350; CHECK: declare void @getc(...)
351declare void @getc(...)
352
353; CHECK: declare void @getc_unlocked(...)
354declare void @getc_unlocked(...)
355
356; CHECK: declare void @getchar(...)
357declare void @getchar(...)
358
359; CHECK: declare void @getenv(...)
360declare void @getenv(...)
361
362; CHECK: declare void @getitimer(...)
363declare void @getitimer(...)
364
365; CHECK: declare void @getlogin_r(...)
366declare void @getlogin_r(...)
367
368; CHECK: declare void @getpwnam(...)
369declare void @getpwnam(...)
370
371; CHECK: declare void @gets(...)
372declare void @gets(...)
373
374; CHECK: declare void @gettimeofday(...)
375declare void @gettimeofday(...)
376
377; CHECK: declare void @isascii(...)
378declare void @isascii(...)
379
380; CHECK: declare void @isdigit(...)
381declare void @isdigit(...)
382
383; CHECK: declare void @labs(...)
384declare void @labs(...)
385
386; CHECK: declare void @lchown(...)
387declare void @lchown(...)
388
389; CHECK: declare void @ldexp(...)
390declare void @ldexp(...)
391
392; CHECK: declare void @ldexpf(...)
393declare void @ldexpf(...)
394
395; CHECK: declare void @ldexpl(...)
396declare void @ldexpl(...)
397
398; CHECK: declare void @llabs(...)
399declare void @llabs(...)
400
401; CHECK: declare void @log(...)
402declare void @log(...)
403
404; CHECK: declare void @log10(...)
405declare void @log10(...)
406
407; CHECK: declare void @log10f(...)
408declare void @log10f(...)
409
410; CHECK: declare void @log10l(...)
411declare void @log10l(...)
412
413; CHECK: declare void @log1p(...)
414declare void @log1p(...)
415
416; CHECK: declare void @log1pf(...)
417declare void @log1pf(...)
418
419; CHECK: declare void @log1pl(...)
420declare void @log1pl(...)
421
422; CHECK: declare void @log2(...)
423declare void @log2(...)
424
425; CHECK: declare void @log2f(...)
426declare void @log2f(...)
427
428; CHECK: declare void @log2l(...)
429declare void @log2l(...)
430
431; CHECK: declare void @logb(...)
432declare void @logb(...)
433
434; CHECK: declare void @logbf(...)
435declare void @logbf(...)
436
437; CHECK: declare void @logbl(...)
438declare void @logbl(...)
439
440; CHECK: declare void @logf(...)
441declare void @logf(...)
442
443; CHECK: declare void @logl(...)
444declare void @logl(...)
445
446; CHECK: declare void @lstat(...)
447declare void @lstat(...)
448
449; CHECK: declare void @malloc(...)
450declare void @malloc(...)
451
452; CHECK: declare void @memccpy(...)
453declare void @memccpy(...)
454
455; CHECK: declare void @memchr(...)
456declare void @memchr(...)
457
458; CHECK: declare void @memcmp(...)
459declare void @memcmp(...)
460
461; CHECK: declare void @memcpy(...)
462declare void @memcpy(...)
463
464; CHECK: declare void @memmove(...)
465declare void @memmove(...)
466
467; CHECK: declare void @memset(...)
468declare void @memset(...)
469
470; CHECK: declare void @memset_pattern16(...)
471declare void @memset_pattern16(...)
472
473; CHECK: declare void @mkdir(...)
474declare void @mkdir(...)
475
476; CHECK: declare void @mktime(...)
477declare void @mktime(...)
478
479; CHECK: declare void @modf(...)
480declare void @modf(...)
481
482; CHECK: declare void @modff(...)
483declare void @modff(...)
484
485; CHECK: declare void @modfl(...)
486declare void @modfl(...)
487
488; CHECK: declare void @nearbyint(...)
489declare void @nearbyint(...)
490
491; CHECK: declare void @nearbyintf(...)
492declare void @nearbyintf(...)
493
494; CHECK: declare void @nearbyintl(...)
495declare void @nearbyintl(...)
496
497; CHECK: declare void @open(...)
498declare void @open(...)
499
500; CHECK: declare void @opendir(...)
501declare void @opendir(...)
502
503; CHECK: declare void @pclose(...)
504declare void @pclose(...)
505
506; CHECK: declare void @perror(...)
507declare void @perror(...)
508
509; CHECK: declare void @popen(...)
510declare void @popen(...)
511
512; CHECK: declare void @posix_memalign(...)
513declare void @posix_memalign(...)
514
515; CHECK: declare void @pow(...)
516declare void @pow(...)
517
518; CHECK: declare void @powf(...)
519declare void @powf(...)
520
521; CHECK: declare void @powl(...)
522declare void @powl(...)
523
524; CHECK: declare void @pread(...)
525declare void @pread(...)
526
527; CHECK: declare void @printf(...)
528declare void @printf(...)
529
530; CHECK: declare void @putc(...)
531declare void @putc(...)
532
533; CHECK: declare void @putchar(...)
534declare void @putchar(...)
535
536; CHECK: declare void @puts(...)
537declare void @puts(...)
538
539; CHECK: declare void @pwrite(...)
540declare void @pwrite(...)
541
542; CHECK: declare void @qsort(...)
543declare void @qsort(...)
544
545; CHECK: declare void @read(...)
546declare void @read(...)
547
548; CHECK: declare void @readlink(...)
549declare void @readlink(...)
550
551; CHECK: declare void @realloc(...)
552declare void @realloc(...)
553
554; CHECK: declare void @reallocf(...)
555declare void @reallocf(...)
556
557; CHECK: declare void @realpath(...)
558declare void @realpath(...)
559
560; CHECK: declare void @remove(...)
561declare void @remove(...)
562
563; CHECK: declare void @rename(...)
564declare void @rename(...)
565
566; CHECK: declare void @rewind(...)
567declare void @rewind(...)
568
569; CHECK: declare void @rint(...)
570declare void @rint(...)
571
572; CHECK: declare void @rintf(...)
573declare void @rintf(...)
574
575; CHECK: declare void @rintl(...)
576declare void @rintl(...)
577
578; CHECK: declare void @rmdir(...)
579declare void @rmdir(...)
580
581; CHECK: declare void @round(...)
582declare void @round(...)
583
584; CHECK: declare void @roundf(...)
585declare void @roundf(...)
586
587; CHECK: declare void @roundl(...)
588declare void @roundl(...)
589
590; CHECK: declare void @scanf(...)
591declare void @scanf(...)
592
593; CHECK: declare void @setbuf(...)
594declare void @setbuf(...)
595
596; CHECK: declare void @setitimer(...)
597declare void @setitimer(...)
598
599; CHECK: declare void @setvbuf(...)
600declare void @setvbuf(...)
601
602; CHECK: declare void @sin(...)
603declare void @sin(...)
604
605; CHECK: declare void @sinf(...)
606declare void @sinf(...)
607
608; CHECK: declare void @sinh(...)
609declare void @sinh(...)
610
611; CHECK: declare void @sinhf(...)
612declare void @sinhf(...)
613
614; CHECK: declare void @sinhl(...)
615declare void @sinhl(...)
616
617; CHECK: declare void @sinl(...)
618declare void @sinl(...)
619
620; CHECK: declare void @snprintf(...)
621declare void @snprintf(...)
622
623; CHECK: declare void @sprintf(...)
624declare void @sprintf(...)
625
626; CHECK: declare void @sqrt(...)
627declare void @sqrt(...)
628
629; CHECK: declare void @sqrtf(...)
630declare void @sqrtf(...)
631
632; CHECK: declare void @sqrtl(...)
633declare void @sqrtl(...)
634
635; CHECK: declare void @sscanf(...)
636declare void @sscanf(...)
637
638; CHECK: declare void @stat(...)
639declare void @stat(...)
640
641; CHECK: declare void @statvfs(...)
642declare void @statvfs(...)
643
644; CHECK: declare void @stpcpy(...)
645declare void @stpcpy(...)
646
647; CHECK: declare void @stpncpy(...)
648declare void @stpncpy(...)
649
650; CHECK: declare void @strcasecmp(...)
651declare void @strcasecmp(...)
652
653; CHECK: declare void @strcat(...)
654declare void @strcat(...)
655
656; CHECK: declare void @strchr(...)
657declare void @strchr(...)
658
659; CHECK: declare void @strcmp(...)
660declare void @strcmp(...)
661
662; CHECK: declare void @strcoll(...)
663declare void @strcoll(...)
664
665; CHECK: declare void @strcpy(...)
666declare void @strcpy(...)
667
668; CHECK: declare void @strcspn(...)
669declare void @strcspn(...)
670
671; CHECK: declare void @strdup(...)
672declare void @strdup(...)
673
674; CHECK: declare void @strlen(...)
675declare void @strlen(...)
676
677; CHECK: declare void @strncasecmp(...)
678declare void @strncasecmp(...)
679
680; CHECK: declare void @strncat(...)
681declare void @strncat(...)
682
683; CHECK: declare void @strncmp(...)
684declare void @strncmp(...)
685
686; CHECK: declare void @strncpy(...)
687declare void @strncpy(...)
688
689; CHECK: declare void @strndup(...)
690declare void @strndup(...)
691
692; CHECK: declare void @strnlen(...)
693declare void @strnlen(...)
694
695; CHECK: declare void @strpbrk(...)
696declare void @strpbrk(...)
697
698; CHECK: declare void @strrchr(...)
699declare void @strrchr(...)
700
701; CHECK: declare void @strspn(...)
702declare void @strspn(...)
703
704; CHECK: declare void @strstr(...)
705declare void @strstr(...)
706
707; CHECK: declare void @strtod(...)
708declare void @strtod(...)
709
710; CHECK: declare void @strtof(...)
711declare void @strtof(...)
712
713; CHECK: declare void @strtok(...)
714declare void @strtok(...)
715
716; CHECK: declare void @strtok_r(...)
717declare void @strtok_r(...)
718
719; CHECK: declare void @strtol(...)
720declare void @strtol(...)
721
722; CHECK: declare void @strtold(...)
723declare void @strtold(...)
724
725; CHECK: declare void @strtoll(...)
726declare void @strtoll(...)
727
728; CHECK: declare void @strtoul(...)
729declare void @strtoul(...)
730
731; CHECK: declare void @strtoull(...)
732declare void @strtoull(...)
733
734; CHECK: declare void @strxfrm(...)
735declare void @strxfrm(...)
736
737; CHECK: declare void @system(...)
738declare void @system(...)
739
740; CHECK: declare void @tan(...)
741declare void @tan(...)
742
743; CHECK: declare void @tanf(...)
744declare void @tanf(...)
745
746; CHECK: declare void @tanh(...)
747declare void @tanh(...)
748
749; CHECK: declare void @tanhf(...)
750declare void @tanhf(...)
751
752; CHECK: declare void @tanhl(...)
753declare void @tanhl(...)
754
755; CHECK: declare void @tanl(...)
756declare void @tanl(...)
757
758; CHECK: declare void @times(...)
759declare void @times(...)
760
761; CHECK: declare void @tmpfile(...)
762declare void @tmpfile(...)
763
764; CHECK: declare void @toascii(...)
765declare void @toascii(...)
766
767; CHECK: declare void @trunc(...)
768declare void @trunc(...)
769
770; CHECK: declare void @truncf(...)
771declare void @truncf(...)
772
773; CHECK: declare void @truncl(...)
774declare void @truncl(...)
775
776; CHECK: declare void @uname(...)
777declare void @uname(...)
778
779; CHECK: declare void @ungetc(...)
780declare void @ungetc(...)
781
782; CHECK: declare void @unlink(...)
783declare void @unlink(...)
784
785; CHECK: declare void @unsetenv(...)
786declare void @unsetenv(...)
787
788; CHECK: declare void @utime(...)
789declare void @utime(...)
790
791; CHECK: declare void @utimes(...)
792declare void @utimes(...)
793
794; CHECK: declare void @valloc(...)
795declare void @valloc(...)
796
797; CHECK: declare void @vfprintf(...)
798declare void @vfprintf(...)
799
800; CHECK: declare void @vfscanf(...)
801declare void @vfscanf(...)
802
803; CHECK: declare void @vprintf(...)
804declare void @vprintf(...)
805
806; CHECK: declare void @vscanf(...)
807declare void @vscanf(...)
808
809; CHECK: declare void @vsnprintf(...)
810declare void @vsnprintf(...)
811
812; CHECK: declare void @vsprintf(...)
813declare void @vsprintf(...)
814
815; CHECK: declare void @vsscanf(...)
816declare void @vsscanf(...)
817
818; CHECK: declare void @write(...)
819declare void @write(...)