VariablePackage: compilerToCDocOverviewCGDocRelNotesFAQIndexPermutedIndex
Allegro CL version 8.0
This page is new in 8.0.

trust-table-case-argument-switch

the initial value of this switch is a function that returns true when speed is 3 and safety is 0.

This switch modifies the behavior of a case macro form which would be compiled in a table-driven fashion. Normally all values are checked, including ranges and types, and although the method of testing is very efficient, it contributes to the overhead of the case form. When trust-table-case-argument-switch returns true, and when the type of the test value is limited to what is acceptable by a table-driven case statement (see ;Itab labels in compiler-explanations.htm), then the overhead of testing for this type and range is removed, and the case form gets more efficient.

This optimization is not implemented in all architectures (the value is ignored on architectures where it is not implemented). It is implemented at least on x86 and amd64 based versions of Allegro CL, and may be implemented on others as needed.

This declaration may cause erros when variables are not of the type declared and these errors may cause incorrect results rather than actual errors. Like all speed 3/safety 0 switches, this one whould be used with care.

See compiling.htm for information on the compiler.


Copyright (c) 1998-2008, Franz Inc. Oakland, CA., USA. All rights reserved.
Documentation for Allegro CL version 8.0. This page is new in the 8.0 release.
Created 2007.4.30.

ToCDocOverviewCGDocRelNotesFAQIndexPermutedIndex
Allegro CL version 8.0
This page is new in 8.0.