* config/c4x/c4x.md (*andqi3_255_clobber,*andqi3_65535_clobber):
New logical and patterns using C40 bit-field insert instructions.
(*lshrqi3_24_clobber,*ashrqi3_24_clobber,*lshrqi3_16_clobber,
*ashrqi3_16_clobber): New shift patterns using C40 bit-field insert
instructions.
From-SVN: r26513
�
* java/io/InputStreamReader.java (<init>): Set super.in correctly.
* java/io/OutputStreamWriter.java (<init>): Set super.in correctly.
(writeChars): Don't be quite so eager to flush.
* java/io/PrintStream.java: Rewrite. Now more similar to
OutputStreamWriter, using explicit UnicodeToBytes converter.
Also, autoflush does not need to flush so often.
* java/lang/natString.cc (getBytes): More efficient algorithm.
(init(jbyteArray,jint,jint,jstring)): More efficient.
From-SVN: r26509
�
* java/io/InputStreamReader.java (<init>): Set super.in correctly.
* java/io/OutputStreamWriter.java (<init>): Set super.in correctly.
(writeChars): Don't be quite so eager to flush.
* java/io/PrintStream.java: Rewrite. Now more similar to
OutputStreamWriter, using explicit UnicodeToBytes converter.
Also, autoflush does not need to flush so often.
* java/lang/natString.cc (getBytes): More efficient algorithm.
(init(jbyteArray,jint,jint,jstring)): More efficient.
From-SVN: r26508
* gnu/gcj/convert/JIS0201.h: New file, generated from Unicode table.
* gnu/gcj/convert/Input_JavaSrc.java: New BytesToUnicode class.
* gnu/gcj/convert/Input_SJIS.java: New BytesToUnicode class.
* gnu/gcj/convert/Output_EUCJIS.java: New UnicodeToBytes class.
* gnu/gcj/convert/Output_SJIS.java: New UnicodeToBytes class.
* gnu/gcj/convert/natInput_EUCJIS.cc: New file.
* gnu/gcj/convert/natInput_SJIS.cc: New file.
* gnu/gcj/convert/natOutput_EUCJIS.cc: New file.
* gnu/gcj/convert/natOutput_SJIS.cc: New file.
* gnu/gcj/convert/make-trie.c: New file: functions to make a trie.
* gnu/gcj/convert/gen-from-JIS.c: Invoke make-trie for output.
* gnu/gcj/convert/Unicode_to_JIS.cc: New generated trie table.
From-SVN: r26503
�
* gnu/gcj/convert/JIS0201.h: New file, generated from Unicode table.
* gnu/gcj/convert/Input_JavaSrc.java: New BytesToUnicode class.
* gnu/gcj/convert/Input_SJIS.java: New BytesToUnicode class.
* gnu/gcj/convert/Output_EUCJIS.java: New UnicodeToBytes class.
* gnu/gcj/convert/Output_SJIS.java: New UnicodeToBytes class.
* gnu/gcj/convert/natInput_EUCJIS.cc: New file.
* gnu/gcj/convert/natInput_SJIS.cc: New file.
* gnu/gcj/convert/natOutput_EUCJIS.cc: New file.
* gnu/gcj/convert/natOutput_SJIS.cc: New file.
* gnu/gcj/convert/make-trie.c: New file: functions to make a trie.
* gnu/gcj/convert/gen-from-JIS.c: Invoke make-trie for output.
* gnu/gcj/convert/Unicode_to_JIS.cc: New generated trie table.
From-SVN: r26502
�
* gnu/gcj/convert/JIS0201.h: New file, generated from Unicode table.
* gnu/gcj/convert/Input_JavaSrc.java: New BytesToUnicode class.
* gnu/gcj/convert/Input_SJIS.java: New BytesToUnicode class.
* gnu/gcj/convert/Output_EUCJIS.java: New UnicodeToBytes class.
* gnu/gcj/convert/Output_SJIS.java: New UnicodeToBytes class.
* gnu/gcj/convert/natInput_EUCJIS.cc: New file.
* gnu/gcj/convert/natInput_SJIS.cc: New file.
* gnu/gcj/convert/natOutput_EUCJIS.cc: New file.
* gnu/gcj/convert/natOutput_SJIS.cc: New file.
* gnu/gcj/convert/make-trie.c: New file: functions to make a trie.
* gnu/gcj/convert/gen-from-JIS.c: Invoke make-trie for output.
* gnu/gcj/convert/Unicode_to_JIS.cc: New generated trie table.
From-SVN: r26501
h
* gnu/gcj/convert/JIS0201.h: New file, generated from Unicode table.
* gnu/gcj/convert/Input_JavaSrc.java: New BytesToUnicode class.
* gnu/gcj/convert/Input_SJIS.java: New BytesToUnicode class.
* gnu/gcj/convert/Output_EUCJIS.java: New UnicodeToBytes class.
* gnu/gcj/convert/Output_SJIS.java: New UnicodeToBytes class.
* gnu/gcj/convert/natInput_EUCJIS.cc: New file.
* gnu/gcj/convert/natInput_SJIS.cc: New file.
* gnu/gcj/convert/natOutput_EUCJIS.cc: New file.
* gnu/gcj/convert/natOutput_SJIS.cc: New file.
* gnu/gcj/convert/make-trie.c: New file: functions to make a trie.
* gnu/gcj/convert/gen-from-JIS.c: Invoke make-trie for output.
* gnu/gcj/convert/Unicode_to_JIS.cc: New generated trie table.
From-SVN: r26500
8
* gnu/gcj/convert/JIS0201.h: New file, generated from Unicode table.
* gnu/gcj/convert/Input_JavaSrc.java: New BytesToUnicode class.
* gnu/gcj/convert/Input_SJIS.java: New BytesToUnicode class.
* gnu/gcj/convert/Output_EUCJIS.java: New UnicodeToBytes class.
* gnu/gcj/convert/Output_SJIS.java: New UnicodeToBytes class.
* gnu/gcj/convert/natInput_EUCJIS.cc: New file.
* gnu/gcj/convert/natInput_SJIS.cc: New file.
* gnu/gcj/convert/natOutput_EUCJIS.cc: New file.
* gnu/gcj/convert/natOutput_SJIS.cc: New file.
* gnu/gcj/convert/make-trie.c: New file: functions to make a trie.
* gnu/gcj/convert/gen-from-JIS.c: Invoke make-trie for output.
* gnu/gcj/convert/Unicode_to_JIS.cc: New generated trie table.
From-SVN: r26499
`
* gnu/gcj/convert/JIS0201.h: New file, generated from Unicode table.
* gnu/gcj/convert/Input_JavaSrc.java: New BytesToUnicode class.
* gnu/gcj/convert/Input_SJIS.java: New BytesToUnicode class.
* gnu/gcj/convert/Output_EUCJIS.java: New UnicodeToBytes class.
* gnu/gcj/convert/Output_SJIS.java: New UnicodeToBytes class.
* gnu/gcj/convert/natInput_EUCJIS.cc: New file.
* gnu/gcj/convert/natInput_SJIS.cc: New file.
* gnu/gcj/convert/natOutput_EUCJIS.cc: New file.
* gnu/gcj/convert/natOutput_SJIS.cc: New file.
* gnu/gcj/convert/make-trie.c: New file: functions to make a trie.
* gnu/gcj/convert/gen-from-JIS.c: Invoke make-trie for output.
* gnu/gcj/convert/Unicode_to_JIS.cc: New generated trie table.
From-SVN: r26498
�
* gnu/gcj/convert/JIS0201.h: New file, generated from Unicode table.
* gnu/gcj/convert/Input_JavaSrc.java: New BytesToUnicode class.
* gnu/gcj/convert/Input_SJIS.java: New BytesToUnicode class.
* gnu/gcj/convert/Output_EUCJIS.java: New UnicodeToBytes class.
* gnu/gcj/convert/Output_SJIS.java: New UnicodeToBytes class.
* gnu/gcj/convert/natInput_EUCJIS.cc: New file.
* gnu/gcj/convert/natInput_SJIS.cc: New file.
* gnu/gcj/convert/natOutput_EUCJIS.cc: New file.
* gnu/gcj/convert/natOutput_SJIS.cc: New file.
* gnu/gcj/convert/make-trie.c: New file: functions to make a trie.
* gnu/gcj/convert/gen-from-JIS.c: Invoke make-trie for output.
* gnu/gcj/convert/Unicode_to_JIS.cc: New generated trie table.
From-SVN: r26497
�
* gnu/gcj/convert/JIS0201.h: New file, generated from Unicode table.
* gnu/gcj/convert/Input_JavaSrc.java: New BytesToUnicode class.
* gnu/gcj/convert/Input_SJIS.java: New BytesToUnicode class.
* gnu/gcj/convert/Output_EUCJIS.java: New UnicodeToBytes class.
* gnu/gcj/convert/Output_SJIS.java: New UnicodeToBytes class.
* gnu/gcj/convert/natInput_EUCJIS.cc: New file.
* gnu/gcj/convert/natInput_SJIS.cc: New file.
* gnu/gcj/convert/natOutput_EUCJIS.cc: New file.
* gnu/gcj/convert/natOutput_SJIS.cc: New file.
* gnu/gcj/convert/make-trie.c: New file: functions to make a trie.
* gnu/gcj/convert/gen-from-JIS.c: Invoke make-trie for output.
* gnu/gcj/convert/Unicode_to_JIS.cc: New generated trie table.
From-SVN: r26496
* cp-tree.h (TREE_NONLOCAL_FLAG): Remove.
(storetags): Declare.
* class.c (finish_struct): Don't use TREE_NONLOCAL_FLAG.
(pushclass): Likewise. Use storetags to install tag declarations,
not pushtag.
(invalidate_class_lookup_cache): Don't use TREE_NONLOCAL_FLAG.
* decl.c (storetags): Make it global.
(push_class_binding): Set INHERITED_VALUE_BINDING_P for an
implicit typename declaration.
(pushtag): Tidy. Don't use TREE_NONLOCAL_FLAG.
* method.c (hack_identifier): Likewise.
* search.c (lookup_member): Likewise.
From-SVN: r26491
* tree.c (valid_machine_attribute): If we're modifying the
FUNCTION_TYPE within a POINTER_TYPE and we don't get a decl,
update the POINTER_TYPE.
From-SVN: r26489
* decl.c (warn_about_implicit_typename_lookup): New function.
(lookup_name_real): Use it. Rework handling of implicit typename
extension.
From-SVN: r26487
* configure.in (checkfuncs): Check for sbrk.
* config.in: Rebuilt.
* configure: Likewise.
* xmalloc.c: Use HAVE_SBRK instead of the host specific definitions.
From-SVN: r26480
* cp-tree.h (lang_type): Add documentation.
* decl2.c (handle_class_head): Create template declarations here,
as appropriate.
* parse.y (class_head): Return whether or not we entered a new
scope, as well as the type named.
(named_class_head): Likewise.
(named_complex_class_head_sans_basetype): Likewise.
(structsp): Adjust accordingly. Pop scope when required.
* parse.c: Regenerated.
* pt.c (check_default_tmpl_args): Robustify.
(redeclare_class_template): Likewise.
(instantiate_class_template): An instantiation of an
anonymous union is itself an anonymous union.
* semantics.c (begin_class_definition): Don't create template
declarations here.
From-SVN: r26475
* parse.y (after_type_declarator_intern): New nonterminal.
(after_type_declarator): Use it.
(direct_after_type_declarator): Likewise. Move above
nonnested_type to fix reduce/reduce conflict resolution.
(declmods): Reducing from just 'attributes' has EMPTY precedence.
* Makefile.in (CONFLICTS): Update.
* decl.c (define_label): Downgrade error for jumping over a
non-POD decl to pedwarn.
From-SVN: r26472
* i386.md (ashlsi patterns): Call output_ashl instead of output_ashlsi3.
(ashlqi): Use expander, separate LEA and SAL / ADD patterns; call
output_ashl.
(ashlhi): Likewise.
* i386.h (output_ashl): Renamed from output_ashlsi3.
* i386.c (output_ashl): Likewise; support HImode and QImode operands
as well.
Co-Authored-By: Jeffrey A Law <law@cygnus.com>
From-SVN: r26467
* i386.md (notsi, nothi, xorsi, xorhi, and xorqi patterns): Call
memory_address_displacement_length instead of memory_address_length.
* i386.c (memory_address_info): Renamed from memory_address_length.
Accept new argument DISP_LENGTH. All callers changed. If DISP_LENGTH,
then return the displacement length. Else return length of the
entire memory address. Handle MULT case correctly.
* i386.h (memory_address_info): Update declaration.
* i386.md (memory_bit_test): Fix paren error.
Co-Authored-By: Jeffrey A Law <law@cygnus.com>
From-SVN: r26465