Lines Matching refs:self
94 def __init__(self, name, suffix=None, mant_dig=None, condition='1', argument
98 self.name = name
99 self.suffix = suffix
100 self.mant_dig = mant_dig
101 self.condition = condition
102 self.order = order
103 self.integer = integer
104 self.complex = complex
106 self.complex_type = self
107 self.real_type = real_type
110 self.complex_type = None
111 self.real_type = self
113 def register_type(self, internal): argument
115 Type.all_types_list.append(self)
117 Type.argument_types_list.append(self)
118 if not self.complex:
119 Type.real_argument_types_list.append(self)
120 if not self.name.startswith('_Float'):
121 Type.standard_real_argument_types_list.append(self)
122 if self.name not in ('float', 'double', 'long double'):
123 Type.non_standard_real_argument_types_list.append(self)
124 if self.order is not None:
125 Type.real_types_order[self.order] = self
126 if self.name == 'double':
127 Type.double_type = self
128 if self.name == 'long double':
129 Type.long_double_type = self
130 if self.name == '_Complex double':
131 Type.complex_double_type = self
132 if self.name == '_Float64':
133 Type.float64_type = self
134 if self.name == '_Complex _Float64':
135 Type.complex_float64_type = self
136 if self.name == '_Float64x':
137 Type.float64x_type = self
138 if self.name == 'Float32x_ext':
139 Type.float32x_ext_type = self
163 def floating_type(self, floatn): argument
165 if self.integer:
168 if self.complex
172 if self.complex
175 return self
177 def real_floating_type(self, floatn): argument
179 return self.real_type.floating_type(floatn)
181 def __str__(self): argument
183 return self.name
332 def __init__(self): argument
334 self.header_list = ['#define __STDC_WANT_IEC_60559_TYPES_EXT__\n'
387 self.header_list.append(float64_text)
388 self.header_list.append(float64x_text)
389 self.header_list.append(float32x_ext_text)
390 self.types_seen = set()
392 self.add_type_var(t.name, t.condition)
393 self.test_text_list = []
394 self.test_array_list = []
395 self.macros_seen = set()
397 def add_type_var(self, name, cond): argument
399 if name in self.types_seen:
402 self.header_list.append(if_cond_text([cond], t_vars))
403 self.types_seen.add(name)
405 def add_tests(self, macro, ret, args, complex_func=None): argument
415 self.macros_seen.add(macro)
416 if macro != self.macro:
478 self.add_type_var(t, '1')
527 self.test_text_list.append(dummy_func)
587 self.test_array_list.append(test_text)
617 self.test_text_list.append(test_func_text)
619 def add_all_tests(self, macro): argument
622 self.macro = macro
624 self.add_tests('atan2', 'r', ['r', 'r'])
625 self.add_tests('cbrt', 'r', ['r'])
626 self.add_tests('ceil', 'r', ['r'])
627 self.add_tests('copysign', 'r', ['r', 'r'])
628 self.add_tests('erf', 'r', ['r'])
629 self.add_tests('erfc', 'r', ['r'])
630 self.add_tests('exp2', 'r', ['r'])
631 self.add_tests('expm1', 'r', ['r'])
632 self.add_tests('fdim', 'r', ['r', 'r'])
633 self.add_tests('floor', 'r', ['r'])
634 self.add_tests('fma', 'r', ['r', 'r', 'r'])
635 self.add_tests('fmax', 'r', ['r', 'r'])
636 self.add_tests('fmin', 'r', ['r', 'r'])
637 self.add_tests('fmod', 'r', ['r', 'r'])
638 self.add_tests('frexp', 'r', ['r', 'int *'])
639 self.add_tests('hypot', 'r', ['r', 'r'])
640 self.add_tests('ilogb', 'int', ['r'])
641 self.add_tests('ldexp', 'r', ['r', 'int'])
642 self.add_tests('lgamma', 'r', ['r'])
643 self.add_tests('llrint', 'long long int', ['r'])
644 self.add_tests('llround', 'long long int', ['r'])
647 self.add_tests('log10', 'g', ['g'])
648 self.add_tests('log1p', 'r', ['r'])
649 self.add_tests('log2', 'r', ['r'])
650 self.add_tests('logb', 'r', ['r'])
651 self.add_tests('lrint', 'long int', ['r'])
652 self.add_tests('lround', 'long int', ['r'])
653 self.add_tests('nearbyint', 'r', ['r'])
654 self.add_tests('nextafter', 'r', ['r', 'r'])
655 self.add_tests('nexttoward', 's', ['s', 'long double'])
656 self.add_tests('remainder', 'r', ['r', 'r'])
657 self.add_tests('remquo', 'r', ['r', 'r', 'int *'])
658 self.add_tests('rint', 'r', ['r'])
659 self.add_tests('round', 'r', ['r'])
660 self.add_tests('scalbn', 'r', ['r', 'int'])
661 self.add_tests('scalbln', 'r', ['r', 'long int'])
662 self.add_tests('tgamma', 'r', ['r'])
663 self.add_tests('trunc', 'r', ['r'])
665 self.add_tests('acos', 'g', ['g'])
666 self.add_tests('asin', 'g', ['g'])
667 self.add_tests('atan', 'g', ['g'])
668 self.add_tests('acosh', 'g', ['g'])
669 self.add_tests('asinh', 'g', ['g'])
670 self.add_tests('atanh', 'g', ['g'])
671 self.add_tests('cos', 'g', ['g'])
672 self.add_tests('sin', 'g', ['g'])
673 self.add_tests('tan', 'g', ['g'])
674 self.add_tests('cosh', 'g', ['g'])
675 self.add_tests('sinh', 'g', ['g'])
676 self.add_tests('tanh', 'g', ['g'])
677 self.add_tests('exp', 'g', ['g'])
678 self.add_tests('log', 'g', ['g'])
679 self.add_tests('pow', 'g', ['g', 'g'])
680 self.add_tests('sqrt', 'g', ['g'])
681 self.add_tests('fabs', 'r', ['g'], 'cabs')
683 self.add_tests('carg', 'r', ['c'])
684 self.add_tests('cimag', 'r', ['c'])
685 self.add_tests('conj', 'c', ['c'])
686 self.add_tests('cproj', 'c', ['c'])
687 self.add_tests('creal', 'r', ['c'])
689 self.add_tests('roundeven', 'r', ['r'])
690 self.add_tests('nextup', 'r', ['r'])
691 self.add_tests('nextdown', 'r', ['r'])
692 self.add_tests('fminmag', 'r', ['r', 'r'])
693 self.add_tests('fmaxmag', 'r', ['r', 'r'])
694 self.add_tests('llogb', 'long int', ['r'])
695 self.add_tests('fromfp', 'intmax_t', ['r', 'int', 'unsigned int'])
696 self.add_tests('fromfpx', 'intmax_t', ['r', 'int', 'unsigned int'])
697 self.add_tests('ufromfp', 'uintmax_t', ['r', 'int', 'unsigned int'])
698 self.add_tests('ufromfpx', 'uintmax_t', ['r', 'int', 'unsigned int'])
709 self.add_tests(prefix + fn, ret, ['r'] * args)
711 self.add_tests('exp10', 'r', ['r'])
713 self.add_tests('fmaximum', 'r', ['r', 'r'])
714 self.add_tests('fmaximum_mag', 'r', ['r', 'r'])
715 self.add_tests('fmaximum_num', 'r', ['r', 'r'])
716 self.add_tests('fmaximum_mag_num', 'r', ['r', 'r'])
717 self.add_tests('fminimum', 'r', ['r', 'r'])
718 self.add_tests('fminimum_mag', 'r', ['r', 'r'])
719 self.add_tests('fminimum_num', 'r', ['r', 'r'])
720 self.add_tests('fminimum_mag_num', 'r', ['r', 'r'])
722 self.add_tests('scalb', 's', ['s', 's'])
724 def tests_text(self): argument
726 test_list = [''.join(self.test_text_list),
729 ''.join(self.test_array_list),
780 return ''.join(self.header_list + test_list + footer_list)
782 def check_macro_list(self, macro_list): argument
784 if self.macros_seen != set(macro_list):