diff options
author | Bryce McKinlay <bryce@gcc.gnu.org> | 2002-02-28 11:40:29 +0000 |
---|---|---|
committer | Bryce McKinlay <bryce@gcc.gnu.org> | 2002-02-28 11:40:29 +0000 |
commit | 022dcc46051ffd0114ac3382cc7e50928f17d995 (patch) | |
tree | 6daf1252f43021f81274da35d2f5f16541eaedb2 /gcc/java/lang.c | |
parent | 70da1d030dfa76bd605100e3969df62b6aaa2512 (diff) | |
download | gcc-022dcc46051ffd0114ac3382cc7e50928f17d995.zip gcc-022dcc46051ffd0114ac3382cc7e50928f17d995.tar.gz gcc-022dcc46051ffd0114ac3382cc7e50928f17d995.tar.bz2 |
expr.c (java_array_data_offset): Removed function.
* expr.c (java_array_data_offset): Removed function.
(JAVA_ARRAY_LENGTH_OFFSET): Removed macro.
(build_java_array_length_access): Obtain "length" value using a
COMPONENT_REF, instead of INDIRECT_REF and arithmetic.
(build_java_arrayaccess): Correct comment. Access "data" using a
COMPONENT_REF, and return an ARRAY_REF instead of an INDIRECT_REF.
(build_java_arraystore_check): New function.
(expand_java_arraystore): Use build_java_arraystore_check.
* parse.y (patch_assignment): Simplify code to insert a store check
when lvalue is an ARRAY_REF. Use build_java_arraystore_check.
* check-init.c (check_init): Update to reflect that an array length
access is now a COMPONENT_REF.
* gcj.texi (Code Generation): Improve documentation of
-fno-bounds-check. Add documentation for -fno-store-check.
* java-tree.h (flag_store_check): Declare.
(build_java_arraystore_check): Declare.
* lang.c (flag_store_check): Initialize to 1.
(lang_f_options): Add store-check option.
* jvspec.c: Don't pass store-check option to jvgenmain.
* lang-options.h: Add help string for -fno-store-check.
From-SVN: r50129
Diffstat (limited to 'gcc/java/lang.c')
-rw-r--r-- | gcc/java/lang.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/gcc/java/lang.c b/gcc/java/lang.c index 6be8f2b..9732f1a 100644 --- a/gcc/java/lang.c +++ b/gcc/java/lang.c @@ -157,6 +157,9 @@ int flag_optimize_sci = 1; in order to improve binary compatibility. */ int flag_indirect_dispatch = 0; +/* When zero, don't generate runtime array store checks. */ +int flag_store_check = 1; + /* When non zero, print extra version information. */ static int version_flag = 0; @@ -179,7 +182,8 @@ lang_f_options[] = {"check-references", &flag_check_references, 1}, {"force-classes-archive-check", &flag_force_classes_archive_check, 1}, {"optimize-static-class-initialization", &flag_optimize_sci, 1 }, - {"indirect-dispatch", &flag_indirect_dispatch, 1} + {"indirect-dispatch", &flag_indirect_dispatch, 1}, + {"store-check", &flag_store_check, 1} }; static const struct string_option |