Next: , Previous: , Up: Grade options   [Contents][Index]


9.5.7 Optional feature grade options


--garbage-collection {none, boehm, automatic}
--gc {none, boehm, automatic}

Specify which method of garbage collection to use. When targeting Java or C#, the only possible choice is ‘automatic’, which means the garbage collector built into the target language. When targeting C, the usual choice is ‘boehm’, which is Hans Boehm et al’s conservative collector. The use of the Boehm collector is indicated by the ‘.gc’ grade component. The other alternative when targeting C is ‘none’, meaning there is no garbage collector. This works only for programs with very short runtimes.


--stack-segments (grade modifier: ‘.stseg’)

Specify the use of dynamically sized stacks that are composed of small segments. This can help to avoid stack exhaustion at the cost of increased execution time. This option is supported only when targeting C with ‘--no-high-level-code’.


--use-trail (grade modifier: ‘.tr’)

Enable use of a trail. This is necessary for interfacing with constraint solvers, or for backtrackable destructive update. This option is supported only when targeting C.


--single-precision-float (grade modifier: ‘.spf’)
--single-prec-float

Use single precision floats so that, on 32-bit machines, floating point values don’t need to be boxed. The default is to use double precision floats. This option is supported only when targeting C.


--parallel (grade modifier: ‘.par’)

Enable parallel execution support for the low-level C grades. Enable concurrency (via pthreads) for the high-level C grades.


--maybe-thread-safe {yes, no}

Specify how the compiler should treat the maybe_thread_safe foreign code attribute. ‘yes’ means that a foreign procedure with the maybe_thread_safe attribute is treated as if it has a thread_safe attribute. ‘no’ means that the foreign procedure is treated as if it has a not_thread_safe attribute. The default is ‘no’.


Next: , Previous: , Up: Grade options   [Contents][Index]