summaryrefslogtreecommitdiff
path: root/README.sgi
blob: 3174e9c963274cb40c24b6f8d141e437791888db (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
Performance of the incremental collector can be greatly enhanced with
-DNO_EXECUTE_PERMISSION.

The collector should run with all of the -32, -n32 and -64 ABIs.  Remember to
define the AS macro in the Makefile to be "as -64", or "as -n32".

If you use -DREDIRECT_MALLOC=GC_malloc with C++ code, your code should make
at least one explicit call to malloc instead of new to ensure that the proper
version of malloc is linked in.

Sproc threads are not supported in this version, though there may exist other
ports.

Pthreads are somewhat supported without incremental collection.  This
requires that:

1) You compile the collector with -DIRIX_THREADS specified in the Makefile.

2) You have the latest pthreads patches installed.  

(Though the collector makes only documented pthread calls,
it relies on signal/threads interactions working just right in ways
that are not required by the standard.  It is unlikely that this code
will run on other pthreads platforms.  But please tell me if it does.)

3) Every file that makes thread calls should define IRIX_THREADS and then
include gc.h.  Gc.h redefines some of the pthread primitives as macros which
also provide the collector with information it requires.

4) For the time being, you should not use dlopen.