Commit Graph

63738 Commits

Author SHA1 Message Date
Kazu Hirata
a448068177 * jump.c (condjump_p): Remove unreachable code.
From-SVN: r90820
2004-11-17 21:57:30 +00:00
Kazu Hirata
26cae194f7 cfgrtl.c (rtl_verify_flow_info): Don't use INSN_P when checking if an unconditional return is followed by a barrier.
* cfgrtl.c (rtl_verify_flow_info): Don't use INSN_P when
	checking if an unconditional return is followed by a barrier.

From-SVN: r90819
2004-11-17 21:55:07 +00:00
Jeff Law
d6be0d7f2d tree-cfg.c (edge_to_cases): Renamed from edge_to_case_leader.
* tree-cfg.c (edge_to_cases): Renamed from edge_to_case_leader.
	(edge_to_cases_elt): Renamed from edge_to_case_leader.
	(edge_to_cases_hash): Renamed from edge_to_case_leader_hash.
	(edge_to_cases_eq): Renamed from edge_to_case_leader_eq.
	(edge_to_cases_cleanup, recording_case_labels_p): New functions.
	(get_cases_for_edge): New function.
	(start_recording_case_labels, end_recording_case_labels): Similarly.
	(record_switch_edge): Don't muck with the CASE_LABEL.  Instead
	chain equivalent CASE_LABEL_EXPRs together.
	(get_case_leader_for_edge, get_case_leader_for_edge_hash): Kill.
	(make_switch_expr_edges): Do not record edge/cases here.
	(cleanup_tree_cfg): Record cases around the call to thread_jumps.
	(split_critical_edges): Record cases around the edge splitting code.
	(cleanup_dead_labels): Use CASE_LABEL again.
	(tree_redirect_edge_and_branch): If we have a mapping from edge
	to cases, use it to handle redirections.  Else do it the slow way.
	* tree.h (CASE_LEADER_OR_LABEL): Kill.
	(CASE_LABEL): Revert to just looking at the tree's second operand.
	* tree.c (get_case_label): Kill.

From-SVN: r90817
2004-11-17 14:10:00 -07:00
Diego Novillo
730bddf26c re PR tree-optimization/18307 (merge_pointed_to_info called incorrectly)
PR tree-optimization/18307
	* tree-ssa-alias.c (merge_pointed_to_info): ICE if 'dest' and
	'orig' are the same node.
	(collect_points_to_info_r): Do not call merge_pointed_to_info
	when the PHI argument is identical to the LHS.

From-SVN: r90816
2004-11-17 16:07:03 -05:00
Janis Johnson
7c278f7987 gcc-dg.exp (dg-skip-if): New function.
* lib/gcc-dg.exp (dg-skip-if): New function.
	(dg-forbid-option): Remove.
	* g++.dg/abi/bitfield3.C: Use dg-skip-if i?86 -m64.
	* g++.dg/abi/bitfield8.C: Likewise.
	* g++.dg/abi/dtor1.C: Likewise.
	* g++.dg/abi/empty10.C: Likewise.
	* g++.dg/abi/empty7.C: Likewise.
	* g++.dg/abi/empty9.C: Likewise.
	* g++.dg/abi/layout3.C: Likewise.
	* g++.dg/abi/layout4.C: Likewise.
	* g++.dg/abi/thunk1.C: Likewise.
	* g++.dg/abi/thunk2.C: Likewise.
	* g++.dg/abi/vbase11.C: Likewise.
	* g++.dg/abi/vthunk2.C: Likewise.
	* g++.dg/abi/vthunk3.C: Likewise.
	* g++.dg/ext/attrib8.C: Likewise.
	* g++.dg/opt/longbranch2.C: Likewise.
	* g++.dg/opt/reg-stack4.C: Likewise.
	* g++.old-deja/g++.ext/attrib1.C: Likewise.
	* g++.old-deja/g++.ext/attrib2.C: Likewise.
	* g++.old-deja/g++.ext/attrib3.C: Likewise.
	* g++.old-deja/g++.other/store-expr1.C: Likewise.
	* g++.old-deja/g++.other/store-expr2.C: Likewise.
	* gcc.dg/20000609-1.c: Likewise.
	* gcc.dg/20000720-1.c: Likewise.
	* gcc.dg/20011107-1.c: Likewise.
	* gcc.dg/20011119-1.c: Likewise.
	* gcc.dg/20020108-1.c: Likewise.
	* gcc.dg/20020122-2.c: Likewise.
	* gcc.dg/20020122-3.c: Likewise.
	* gcc.dg/20020201-3.c: Likewise.
	* gcc.dg/20020206-1.c: Likewise.
	* gcc.dg/20020218-1.c: Likewise.
	* gcc.dg/20020310-1.c: Likewise.
	* gcc.dg/20020411-1.c: Likewise.
	* gcc.dg/20020418-2.c: Likewise.
	* gcc.dg/20020426-1.c: Likewise.
	* gcc.dg/20020426-2.c: Likewise.
	* gcc.dg/20020517-1.c: Likewise.
	* gcc.dg/20020523-1.c: Likewise.
	* gcc.dg/20020523-2.c: Likewise.
	* gcc.dg/20020729-1.c: Likewise.
	* gcc.dg/20030204-1.c: Likewise.
	* gcc.dg/20030826-2.c: Likewise.
	* gcc.dg/20030926-1.c: Likewise.
	* gcc.dg/20031202-1.c: Likewise.
	* gcc.dg/980312-1.c: Likewise.
	* gcc.dg/980313-1.c: Likewise.
	* gcc.dg/990117-1.c: Likewise.
	* gcc.dg/990424-1.c: Likewise.
	* gcc.dg/990524-1.c: Likewise.
	* gcc.dg/991230-1.c: Likewise.
	* gcc.dg/i386-387-1.c: Likewise.
	* gcc.dg/i386-387-2.c: Likewise.
	* gcc.dg/i386-387-3.c: Likewise.
	* gcc.dg/i386-387-4.c: Likewise.
	* gcc.dg/i386-387-5.c: Likewise.
	* gcc.dg/i386-387-6.c: Likewise.
	* gcc.dg/i386-asm-1.c: Likewise.
	* gcc.dg/i386-bitfield1.c: Likewise.
	* gcc.dg/i386-bitfield2.c: Likewise.
	* gcc.dg/i386-loop-1.c: Likewise.
	* gcc.dg/i386-loop-2.c: Likewise.
	* gcc.dg/i386-loop-3.c: Likewise.
	* gcc.dg/i386-pentium4-not-mull.c: Likewise.
	* gcc.dg/i386-pic-1.c: Likewise.
	* gcc.dg/i386-regparm.c: Likewise.
	* gcc.dg/i386-signbit-1.c: Likewise.
	* gcc.dg/i386-signbit-2.c: Likewise.
	* gcc.dg/i386-signbit-3.c: Likewise.
	* gcc.dg/i386-sse-5.c: Likewise.
	* gcc.dg/i386-sse-8.c: Likewise.
	* gcc.dg/i386-unroll-1.c: Likewise.
	* gcc.dg/tls/opt-1.c: Likewise.
	* gcc.dg/tls/opt-2.c: Likewise.
	* gcc.dg/unroll-1.c: Likewise.
	* gcc.misc-tests/i386-pf-3dnow-1.c: Likewise.
	* gcc.misc-tests/i386-pf-athlon-1.c: Likewise.
	* gcc.misc-tests/i386-pf-none-1.c: Likewise.
	* gcc.misc-tests/i386-pf-sse-1.c: Likewise.

From-SVN: r90810
2004-11-17 17:21:46 +00:00
Michael Koch
ff6e1bc0aa Socket.java (getPort): Return 0 in error case.
2004-11-17  Michael Koch  <konqueror@gmx.de>

	* java/net/Socket.java (getPort): Return 0 in error case.

From-SVN: r90805
2004-11-17 12:08:31 +00:00
Michael Koch
4dbbd945e0 2004-11-17 Michael Koch <konqueror@gmx.de>
*  java/nio/DirectByteBufferImpl.java
	(owner): Updated comment.
	(allocate): New method.

From-SVN: r90804
2004-11-17 11:57:55 +00:00
Steven Bosscher
39850c0b2e * tree-ssa-propagate.c (cfg_blocks_add) Assert we're not trying
to insert the exit or entry block.
	(ssa_prop_init): Use add_control_edge to seed the algorithm.

From-SVN: r90802
2004-11-17 10:47:07 +00:00
Paolo Carlini
e9fb72e85f istream.tcc (getline(basic_istream<>&, basic_string<>&, _CharT)): Remove temporary kludge for libstdc++/15002.
2004-11-17  Paolo Carlini  <pcarlini@suse.de>

	* include/bits/istream.tcc (getline(basic_istream<>&, basic_string<>&,
	_CharT)): Remove temporary kludge for libstdc++/15002.
	* include/std/std_streambuf.h (class basic_streambuf): Declare
	getline(basic_istream<>&, basic_string<>&, _CharT) as friend.
	* include/bits/basic_string.h (getline(basic_istream<>&,
	basic_string<>&, _CharT)): Declare optimized specializations for
	char and wchar_t, using protected members of basic_streambuf.
	* src/istream.cc: Define the latter.

From-SVN: r90801
2004-11-17 09:04:14 +00:00
Michael Koch
f6bf324df0 URL.java (URL): Handle case when argument is null.
2004-11-17  Michael Koch  <konqueror@gmx.de>

	* java/net/URL.java (URL): Handle case when argument is null.

From-SVN: r90800
2004-11-17 08:40:53 +00:00
Michael Koch
866212e722 Beans.java, [...]: Fixed javadocs.
2004-11-17  Michael Koch  <konqueror@gmx.de>

	* java/beans/Beans.java,
	java/beans/PropertyChangeEvent.java,
	java/beans/PropertyEditorSupport.java:
	Fixed javadocs.

From-SVN: r90799
2004-11-17 08:17:20 +00:00
Michael Koch
2cc07ffcf1 Timer.java (DEFAULT_SIZE): Made static.
2004-11-17  Michael Koch  <konqueror@gmx.de>

	* java/util/Timer.java (DEFAULT_SIZE): Made static.

From-SVN: r90798
2004-11-17 08:11:22 +00:00
Michael Koch
879245b6b2 InetAddress.java (getCanonicalHostName): Support IPv6 addresses.
2004-11-17  Michael Koch  <konqueror@gmx.de>

	* java/net/InetAddress.java (getCanonicalHostName):
	Support IPv6 addresses.

From-SVN: r90793
2004-11-17 07:09:57 +00:00
Zack Weinberg
7c8347536f mkmap-flat.awk, [...]: If the last version assigned to a symbol was '%exclude', do not emit it anywhere.
* mkmap-flat.awk, mkmap-symver.awk: If the last version
	assigned to a symbol was '%exclude', do not emit it anywhere.
	If leading_underscore is true, prefix all symbols from the
	version scripts with a leading underscore before comparing
	them with nm output or emitting them.  Remove support for dot
	symbols.
	* config/t-slibgcc-darwin (SHLIB_LINK): Use mkmap-flat.awk.
	(SHLIB_MAPFILES): Use libgcc-std.ver.
	(SHLIB_MKMAP_OPTS): Enable leading-underscore mode.
	(SHLIB_LINK): Add -Wl,-exported_symbols_list,$(SHLIB_MAP).
	* config/sh/t-linux: Use the normal libgcc-std.ver, plus
	libgcc-excl.ver and libgcc-glibc.ver.

	* config/sh/libgcc-excl.ver: New file.
	* config/sh/libgcc-std.ver, libgcc-darwin.ver: Delete.

From-SVN: r90792
2004-11-17 05:39:02 +00:00
David Edelsohn
ace6d09bfa Add missing entry in last aix52.h ChangeLog.
From-SVN: r90791
2004-11-17 00:21:46 -05:00
Bruce Korb
ecb0d20e5d remove confusing and unnecessary backslashes
From-SVN: r90790
2004-11-17 05:06:41 +00:00
Bruce Korb
43c1b5d299 correct misuse of variables
From-SVN: r90789
2004-11-17 04:20:36 +00:00
Daniel Berlin
13cf683781 lambda-code.c (lambda_loopnest_to_gcc_loopnest): Swap the test when the edge has the opposite meaning...
2004-11-16  Daniel Berlin  <dberlin@dberlin.org>

	* lambda-code.c (lambda_loopnest_to_gcc_loopnest): Swap
	the test when the edge has the opposite meaning, not when
	the first argument is invariant.

From-SVN: r90788
2004-11-17 02:51:55 +00:00
Aldy Hernandez
354ed18fbd rs6000.c (rs6000_override_options): Split e500v2 doubles.
* config/rs6000/rs6000.c (rs6000_override_options): Split e500v2
        doubles.
        (rs6000_complex_function_value): Handle e500 v2 variant.

From-SVN: r90784
2004-11-17 02:19:17 +00:00
Daniel Berlin
88a40e67ad re PR tree-optimization/18519 (ICE: Segmentation fault with optimization)
2004-11-16  Daniel Berlin  <dberlin@dberlin.org>

	Fix PR tree-optimization/18519

	* tree-optimize (execute_todo): Add case for TODO_cleanup_cfg.
	* tree-pass.h: Add TODO_cleanup_cfg.
	* tree-ssa-ccp.c (pass_ccp): Use TODO_cleanup_cfg.
	(ccp_finalize): Remove call to cleanup_cfg.
	* tree-ssa-dce.c (pass_dce): Use TODO_cleanup_cfg and TODO_dump_func.
	(pass_cd_dce): Ditto.
	(perform_tree_ssa_dce): Remove call to cleanup_cfg,
	dump_function_to_file.
	* tree-ssa-loop-ch.c (copy_loop_headers): Remove call
	to cleanup_cfg.
	(pass_ch): Add TODO_cleanup_cfg.
	* tree-ssa-loop.c (tree_ssa_loop_done): Remove call to
	cleanup_cfg.
	(pass_loop_done): Add TODO_cleanup_cfg.
	* tree-ssa-phiopt.c (pass_phiopt): Ditto.
	(tree_ssa_phiopt): Remove call to cleanup_cfg.

From-SVN: r90783
2004-11-17 02:01:35 +00:00
Devang Patel
8a45d44821 * optabs.c (vector_compare_rtx): Fix COMPARISON_CLASS_P use.
From-SVN: r90781
2004-11-16 16:56:57 -08:00
Giovanni Bajo
c938791573 decl.c (start_preparsed_function): Call check_function_type even in templates.
* decl.c (start_preparsed_function): Call check_function_type even
	in templates.
	(require_complete_types_for_parms): Skip dependent types.
	(check_function_type): Likewise.

	* g++.dg/template/incomplete1.C: New test.

From-SVN: r90779
2004-11-17 00:17:00 +00:00
GCC Administrator
f4e649d2d2 Daily bump.
[[Split portion of a mixed commit.]]

From-SVN: r90777.2
2004-11-17 00:16:34 +00:00
GCC Administrator
5db9a8745d Daily bump.
[[Split portion of a mixed commit.]]

From-SVN: r90775.2
2004-11-17 00:16:27 +00:00
Kazu Hirata
5b4ef0b17a * doc/tm.texi: Fix typos.
From-SVN: r90772
2004-11-16 23:33:58 +00:00
Kazu Hirata
a37739c10e * expmed.c, ra-colorize.c: Fix comment typos.
From-SVN: r90771
2004-11-16 23:26:21 +00:00
Daniel Jacobowitz
d3f2f8aec2 re PR target/6123 (__pic__/__PIC__ not defined when -fpic/-fPIC is specified)
2004-11-16  Daniel Jacobowitz  <dan@codesourcery.com>
            Mark Mitchell  <mark@codesourcery.com>

	PR target/6123
	* config/sol2.h (TARGET_OS_CPP_BUILTINS): Define __PIC__ and
	__pic__ if PIC.

Co-Authored-By: Mark Mitchell <mark@codesourcery.com>

From-SVN: r90770
2004-11-16 22:42:21 +00:00
Michael Koch
0b43493272 Object.java: Added javadocs all over (merged from GNU classpath).
2004-11-16  Michael Koch  <konqueror@gmx.de>

	* java/lang/Object.java: Added javadocs all over (merged from GNU
	classpath).

From-SVN: r90766
2004-11-16 21:37:29 +00:00
Andreas Tobler
fd9065b2ef Security.java (Security): Silence the warning about no providers found in the no debug case.
2004-11-16  Andreas Tobler  <a.tobler@schweiz.ch>

	* java/security/Security.java (Security): Silence the warning about no
	providers found in the no debug case.

From-SVN: r90765
2004-11-16 22:31:55 +01:00
Ulrich Weigand
d281a1f1bd regmove.c (regmove_optimize): Use lowpart_subreg instead of gen_rtx_SUBREG with incorrect offset to compute...
* regmove.c (regmove_optimize): Use lowpart_subreg instead of
	gen_rtx_SUBREG with incorrect offset to compute SRC_SUBREG.

From-SVN: r90762
2004-11-16 21:11:33 +00:00
Devang Patel
a3fcfe27d8 Somehow, I missed to checkin this test when I fixed pr17635 (with
appropriate ChangeLog entry).

From-SVN: r90757
2004-11-16 12:04:08 -08:00
Devang Patel
57e4228616 * tree-if-conv.c (clean_predicate_lists): Update gcc_assert check.
From-SVN: r90756
2004-11-16 12:02:48 -08:00
Eric Christopher
66083422fd mips.c: Use rtl _P predicates.
2004-11-16  Eric Christopher  <echristo@redhat.com>

	* config/mips/mips.c: Use rtl _P predicates.
	* config/mips/mips.h: Ditto.
	* config/mips/mips.md: Ditto.

From-SVN: r90752
2004-11-16 19:24:17 +00:00
Fariborz Jahanian
96e1fc281c altivec.md (altivec_vandc): Canonicalize the pattern.
* config/rs6000/altivec.md (altivec_vandc): Canonicalize the pattern.
OKed by Aldy Hernandez.

From-SVN: r90747
2004-11-16 18:52:36 +00:00
Andreas Krebbel
a628ab6d26 s390.c (s390_cc_modes_compatible): New function.
2004-11-16  Andreas Krebbel  <krebbel1@de.ibm.com>

	* config/s390/s390.c (s390_cc_modes_compatible): New function.
	(TARGET_CC_MODES_COMPATIBLE): Target macro defined.

From-SVN: r90745
2004-11-16 17:37:31 +00:00
Michael Koch
0a56af0b24 2004-11-16 Michael Koch <konqueror@gmx.de>
* java/net/InetAddress.java
	(toString): Merged from GNU classpath.

From-SVN: r90743
2004-11-16 15:33:49 +00:00
Michael Koch
c1d36a8934 Area-1.png, [...]: New files.
2004-11-16  Michael Koch  <konqueror@gmx.de>

	* java/awt/geom/doc-files/Area-1.png,
	java/awt/geom/doc-files/Ellipse-1.png,
	java/awt/geom/doc-files/GeneralPath-1.png:
	New files.

From-SVN: r90742
2004-11-16 15:28:57 +00:00
Michael Koch
83e620bbe2 Currency.java (cache): Fix modifier order.
2004-11-16  Michael Koch  <konqueror@gmx.de>

	* java/util/Currency.java (cache): Fix modifier order.

From-SVN: r90741
2004-11-16 15:24:55 +00:00
Nick Clifton
a1e98266e3 Revert bogus changes to these files
From-SVN: r90736
2004-11-16 13:26:38 +00:00
Kaz Kojima
b92c32643d re PR target/18447 (Variable with the initial-exec tls-model attribute causes spill failure)
PR target/18447
	* config/sh/sh.c (prepare_move_operands): Emit blockage insns
	before and after the insns for getting GOT address in non-PIC
	TLS_MODEL_INITIAL_EXEC tls sequence when the first scheduling
	is enabled.

From-SVN: r90732
2004-11-16 12:16:52 +00:00
Jonathan Wakely
db566c7e81 howto.html: Document change from _GLIBCPP_CONCEPT_CHECKS to _GLIBCXX_CONCEPT_CHECKS in 3.4.
2004-11-16  Jonathan Wakely  <redi@gcc.gnu.org>

	* docs/html/19_diagnostics/howto.html: Document change from
	_GLIBCPP_CONCEPT_CHECKS to _GLIBCXX_CONCEPT_CHECKS in 3.4.

From-SVN: r90729
2004-11-16 11:48:55 +00:00
Andreas Krebbel
fc188d37b3 cse.c (struct change_cc_mode_args): New structure.
2004-11-16  Andreas Krebbel  <krebbel1@de.ibm.com>

	* gcc/cse.c (struct change_cc_mode_args): New structure.
	(cse_change_cc_mode_insn): New function.
	(cse_change_cc_mode): Use validate_change to perfom changes.
	(cse_change_cc_mode_insns, cse_condition_code_reg):
	Call cse_change_cc_mode_insn.

From-SVN: r90728
2004-11-16 11:38:11 +00:00
Michael Koch
be06f47bc1 BufferedReader.java, [...]: Fixed javadocs all over.
2004-11-16  Michael Koch  <konqueror@gmx.de>

	* java/io/BufferedReader.java,
	java/io/FileInputStream.java,
	java/io/FileOutputStream.java,
	java/io/FileWriter.java,
	java/io/OutputStreamWriter.java,
	java/io/PipedInputStream.java,
	java/io/PipedOutputStream.java,
	java/io/PipedReader.java,
	java/io/PipedWriter.java,
	java/io/PrintStream.java,
	java/io/PushbackInputStream.java,
	java/io/RandomAccessFile.java,
	java/io/Reader.java,
	java/io/StreamTokenizer.java,
	java/io/StringReader.java,
	java/net/NetworkInterface.java,
	java/net/URLClassLoader.java,
	java/nio/ByteOrder.java,
	java/nio/channels/Channel.java:
	Fixed javadocs all over.

From-SVN: r90727
2004-11-16 11:30:14 +00:00
Steven Bosscher
d39289db5a stack.h: Remove.
* stack.h: Remove.

cp/
	* Make-lang.in (cp/decl.o, cp/search.o): Don't depend on stack.h.
	* search.c: Don't include it.

From-SVN: r90724
2004-11-16 10:00:11 +00:00
Steven Bosscher
03e00d30aa * config/i386/i386.c (x86_schedule): Fix typo, m_K6 intead of m_K8.
From-SVN: r90722
2004-11-16 09:09:26 +00:00
Matthias Klose
ff7237d644 user.cfg.in: Set HAVE_DOT to NO.
2004-11-16  Matthias Klose  <doko@debian.org>

        * docs/doxygen/user.cfg.in: Set HAVE_DOT to NO.

From-SVN: r90720
2004-11-16 09:09:01 +00:00
Matthias Klose
7e7432e255 Makefile.am (doxygen, [...]): Use host_alias instead of build_alias.
2004-11-16  Matthias Klose  <doko@debian.org>

        * Makefile.am (doxygen, doxygen-maint, doxygen-man): Use host_alias
        instead of build_alias.
        * docs/doxygen/run_doxygen: Likewise.
        * docs/doxygen/user.cfg.in: Likewise.
        * Makefile.in: Regenerate.

From-SVN: r90719
2004-11-16 08:03:19 +00:00
Andreas Tobler
6917e65713 [multiple changes]
2004-11-16  Andreas Tobler  <a.tobler@schweiz.ch>

	* Makefile.am: Add imported files.
	* Makefile.in: Regenerate.

	2004-10-24  Casey Marshall  <csm@gnu.org>

	* javax/security/auth/login/LoginContext.java: Implemented.
	* javax/security/auth/login/Configuration.java (getConfig): New method.
	* javax/security/auth/spi/LoginModule.java,
	* gnu/java/security/action/GetSecurityPropertyAction.java: New files.

From-SVN: r90718
2004-11-16 08:42:43 +01:00
Paul Brook
40b026d890 re PR fortran/13010 (seg fault on valid code)
PR fortran/13010
	* trans-array.c (gfc_trans_allocate_temp_array): Use gfc_get_dtype.
	(gfc_array_init_size, gfc_conv_expr_descriptor): Ditto.
	* trans-types.c (gfc_get_dtype): Accept array type rather than element
	type.
	(gfc_get_nodesc_array_type): Don't set GFC_TYPE_ARRAY_DTYPE.
	(gfc_get_array_type_bounds): Ditto.
	(gfc_get_derived_type): Recurse into derived type pointers.
	* trans-types.h (gfc_get_dtype): Add prototype.
	* trans.h (GFC_TYPE_ARRAY_DTYPE): Add comment.
testsuite/
	* gfortran.dg/der_pointer_1.f90: New test.

From-SVN: r90714
2004-11-16 02:02:37 +00:00
Dale Johannesen
e61ec2dd12 tree-flow.h (add_referenced_temp_var): Remove name from prototype.
2004-11-15  Dale Johannesen  <dalej@apple.com>

        * tree-flow.h (add_referenced_temp_var):  Remove name from prototype.

From-SVN: r90712
2004-11-16 01:49:08 +00:00