Mercurial > cpython-lru_cache-weakref
annotate Modules/python.c @ 68239:ceec209b26d4 2.4
Close 2.4 branch.
| author | Georg Brandl <georg@python.org> |
|---|---|
| date | Sat, 05 Mar 2011 14:56:41 +0100 |
| parents | 8eccfae04bb4 |
| children | 22a74eaf6b22 |
| rev | line source |
|---|---|
|
5853
92bcf4cc9421
This is now the "real" main program -- it calls Py_Main(argc, argv)
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
1 /* Minimal main program -- everything is loaded from the library */ |
|
92bcf4cc9421
This is now the "real" main program -- it calls Py_Main(argc, argv)
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
2 |
| 8894 | 3 #include "Python.h" |
| 4 | |
|
26815
8eccfae04bb4
Apparently FreeBSD enables some HW floating-point exceptions by default.
Tim Peters <tim.peters@gmail.com>
parents:
24471
diff
changeset
|
5 #ifdef __FreeBSD__ |
|
8eccfae04bb4
Apparently FreeBSD enables some HW floating-point exceptions by default.
Tim Peters <tim.peters@gmail.com>
parents:
24471
diff
changeset
|
6 #include <floatingpoint.h> |
|
8eccfae04bb4
Apparently FreeBSD enables some HW floating-point exceptions by default.
Tim Peters <tim.peters@gmail.com>
parents:
24471
diff
changeset
|
7 #endif |
|
8eccfae04bb4
Apparently FreeBSD enables some HW floating-point exceptions by default.
Tim Peters <tim.peters@gmail.com>
parents:
24471
diff
changeset
|
8 |
| 6055 | 9 int |
| 13481 | 10 main(int argc, char **argv) |
|
5853
92bcf4cc9421
This is now the "real" main program -- it calls Py_Main(argc, argv)
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
11 { |
|
26815
8eccfae04bb4
Apparently FreeBSD enables some HW floating-point exceptions by default.
Tim Peters <tim.peters@gmail.com>
parents:
24471
diff
changeset
|
12 /* 754 requires that FP exceptions run in "no stop" mode by default, |
|
8eccfae04bb4
Apparently FreeBSD enables some HW floating-point exceptions by default.
Tim Peters <tim.peters@gmail.com>
parents:
24471
diff
changeset
|
13 * and until C vendors implement C99's ways to control FP exceptions, |
|
8eccfae04bb4
Apparently FreeBSD enables some HW floating-point exceptions by default.
Tim Peters <tim.peters@gmail.com>
parents:
24471
diff
changeset
|
14 * Python requires non-stop mode. Alas, some platforms enable FP |
|
8eccfae04bb4
Apparently FreeBSD enables some HW floating-point exceptions by default.
Tim Peters <tim.peters@gmail.com>
parents:
24471
diff
changeset
|
15 * exceptions by default. Here we disable them. |
|
8eccfae04bb4
Apparently FreeBSD enables some HW floating-point exceptions by default.
Tim Peters <tim.peters@gmail.com>
parents:
24471
diff
changeset
|
16 */ |
|
8eccfae04bb4
Apparently FreeBSD enables some HW floating-point exceptions by default.
Tim Peters <tim.peters@gmail.com>
parents:
24471
diff
changeset
|
17 #ifdef __FreeBSD__ |
|
8eccfae04bb4
Apparently FreeBSD enables some HW floating-point exceptions by default.
Tim Peters <tim.peters@gmail.com>
parents:
24471
diff
changeset
|
18 fp_except_t m; |
|
8eccfae04bb4
Apparently FreeBSD enables some HW floating-point exceptions by default.
Tim Peters <tim.peters@gmail.com>
parents:
24471
diff
changeset
|
19 |
|
8eccfae04bb4
Apparently FreeBSD enables some HW floating-point exceptions by default.
Tim Peters <tim.peters@gmail.com>
parents:
24471
diff
changeset
|
20 m = fpgetmask(); |
|
8eccfae04bb4
Apparently FreeBSD enables some HW floating-point exceptions by default.
Tim Peters <tim.peters@gmail.com>
parents:
24471
diff
changeset
|
21 fpsetmask(m & ~FP_X_OFL); |
|
8eccfae04bb4
Apparently FreeBSD enables some HW floating-point exceptions by default.
Tim Peters <tim.peters@gmail.com>
parents:
24471
diff
changeset
|
22 #endif |
|
5853
92bcf4cc9421
This is now the "real" main program -- it calls Py_Main(argc, argv)
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
23 return Py_Main(argc, argv); |
|
92bcf4cc9421
This is now the "real" main program -- it calls Py_Main(argc, argv)
Guido van Rossum <guido@python.org>
parents:
diff
changeset
|
24 } |
