Commit Graph

5975 Commits

Author SHA1 Message Date
Fred Fish
ee9897be1c * config/nm-m3.h (ATTACH_NO_WAIT): Define. 1996-04-12 06:15:16 +00:00
Fred Fish
d8efbc6679 From: Miles Bader <miles@gnu.ai.mit.edu>
* configure.in (AC_CHECK_HEADERS): check for endian.h.
	Use AC_CHECK_TOOL to find AR & RANLIB.  Add AC_PROG_AWK.
	Add host & target cases for i[345]86-*-gnu*.
	* config.in: Regenerate with autoheader.
	* configure: Regenerate with autoconf.
	* Makefile.in (AR, AWK): Set from corresponding autoconf substs.
	(init.c): Don't scan mig-generated files.
	* defs.h (endian.h): Include if HAVE_ENDIAN_H defined.
	* config/nm-m3.h (ATTACH_NO_WAIT): Define.
	* infcmd.c (attach_command): Use "#ifndef ATTACH_NO_WAIT"
 	rather than "#ifndef MACH".
1996-04-12 06:14:46 +00:00
Stan Shebs
4eaf7c0a94 * remote.c (remotewritesize): New GDB variable, controls size
of memory packets sent to the target.
1996-04-12 01:58:39 +00:00
Stu Grossman
a243a22f43 * dcache.c: Add prototypes. Make many functions static.
* (dcache_peek dcache_fetch dcache_poke):  Make dcache_fetch and
	dcache_poke call dcache_xfer_memory directly in order to fix
	problems with turning off dcache.  dcache_peek is now unnecessary,
	so it goes away.

	* defs.h:  Define new macros HOST_{FLOAT DOUBLE	LONG_DOUBLE}_FORMAT
	and TARGET_{FLOAT DOUBLE LONG_DOUBLE}_FORMAT to specify a pointer
	to a struct floatformat.  This allows for better handling of
	targets whose floating point formats differ from the host by more
	than just byte order.
	* (floatformat_to_long_double floatformat_from_long_double):
	Prototypes for new functions in utils.c.
	* (floatformat_to_doublest floatformat_from_doublest):  Prototypes
	for pointers to floating point conversion functions.  The actual
	function uses either double or long double if the host supports it.
	* findvar.c (floatformat_to_doublest floatformat_from_doublest):
	Initialize to point at correct function depending on HAVE_LONG_DOUBLE.
	* (extract_floating store_floating):  Rewrite.  Now, if host fp
	format is the same as the target, we just do a copy.  Otherwise,
	we call floatformat_{to from}_doublest.
	* remote-nindy.c (nindy_xfer_inferior_memory):  Change param
	`write' to `should_write'.
	* utils.c (floatformat_to_long_double
	floatformat_from_long_double):  New routines that implement long
	double versions of functions in libiberty/floatformat.c.
	* config/i960/tm-i960.h (TARGET_LONG_DOUBLE_FORMAT):  Define this for
	i960 extended real (80 bit) numbers.
	* nindy-share/nindy.c (ninMemGet ninMemPut):  Return number of bytes
	actually read or written.
1996-04-11 21:17:45 +00:00
Wilfried Moser
f046f4c87a * ch-valprint.c (chill_val_print): Remove call to calculate_array_length.
(calculate_array_length): Move function from here ...

        * ch-exp.c (calculate_array_length): ... to here.
        (parse_primval): If we have a symbol with an array type
        and the length is 0, call calculate_array_length.
1996-04-10 10:01:30 +00:00
Wilfried Moser
a539f6d8b9 * eval.c (evaluate_subexp_standard): In case of TYPE_CODE_SET:
Add some checks for powerset compatibility.

        * valops.c (value_slice): Use lowbound instead of lowerbound for
        call to slice_range_type to get correct bounds.
1996-04-09 08:28:50 +00:00
Wilfried Moser
cc1583dac2 * gch981.{ch,exp}, gch1041.{ch,exp}: New test cases. 1996-04-09 08:19:58 +00:00
Fred Fish
5579919f7d * Makefile.in (scm-exp.o, scm-lang.o, scm-valprint.o): Add targets and
dependencies.
	* scm-lang.c (gdb_string.h): Include.
	* objfiles.c (add_to_objfile_sections): Cast second arg of obstack_grow
	call to correct type (char *).
	* cp-valprint.c (cp_print_static_field): Ditto.
	* somsolib.c (som_solib_create_inferior_hook): Add a declaration
	for external find_unwind_entry function (from hppa-tdep.c).
	* remote-pa.c (remote_write_bytes, remote_read_bytes): Change
	type of second arg to "char *" to be type compatible with
	dcache.
	(remote_wait): Cast second arg to strtol to correct type.
	* hppa-tdep.c (compare_unwind_entries): Change argument types to
	"const void *" to be type compatible with qsort, and then
	assign to local args prior to use.
1996-04-09 06:09:33 +00:00
Jeff Law
75eb523103 * infptrace.c (kill_inferior): Remove call to "kill"; update
comments.
The "kill" call was declared bogus years ago and is causing problems
on hpux10 (PR 9410).
1996-04-08 21:34:12 +00:00
Geoffrey Noer
7782ee45c4 Modified remote-e7000.c so that :23 isn't appended to the target port
if __WIN32__ is defined.  This is necessary to make e7000 support work
for WinGDB.
1996-04-08 21:08:38 +00:00
Fred Fish
ce0787ef68 From: Miles Bader <miles@gnu.ai.mit.edu>
* gnu-nat.c, gnu-nat.h, msg.defs, exc_request.defs, i386gnu-nat.c,
	msg_reply.defs, notify.defs, process_reply.defs, reply_mig_hack.awk,
	config/nm-gnu.h, config/i386/{i386gnu.mh, i386gnu.mt, nm-gnu.h,
	m-i386gnu.h, xm-i386gnu.h}: New files for GNU hurd.
1996-04-08 05:50:30 +00:00
Fred Fish
125c17af91 * configure.in (case host): Add i386sco5 host.
* configure: Regenerate.

	From: Robert Lipe <robertl@dgii.com>
	Add support for SCO OpenServer 5 (a.k.a. 3.2v5*)  This
	target is an SVR3.2 with COFF, ELF, and shared libes, but
	no /proc.
	* config/i386/i386sco5.mh:  New file.
	* config/i386/nm-i386sco5.h:  New file.
1996-04-07 21:04:21 +00:00
Fred Fish
a6b65627d4 * bcache.c (bcache): When size of chunk to cache is exactly equal to
BCACHE_MAXLENGTH, stash chunk as unique copy.
1996-04-06 17:40:03 +00:00
Fred Fish
eae8aa302e * symfile.c (INLINE_ADD_PSYMBOL): Remove ifdef.
(add_psymbol_to_list): Add an arg for passing CORE_ADDR values and
	use it, rather than calling add_psymbol_addr_to_list.
	(add_psymbol_addr_to_list): Delete.
	(add_psymbol_to_list): Make psymbol static to avoid random data in
	gaps due to alignment of structure members.
	* symfile.h (INLINE_ADD_PSYMBOL, ADD_PSYMBOL_TO_LIST,
 	ADD_PSYMBOL_ADDR_TO_LIST): Remove.  Real world tests show no
	performance improvements by inlining via complicated macros and
	they just make gdb larger and harder to maintain.
	* dwarfread.c (add_enum_psymbol): Replace ADD_PSYMBOL_TO_LIST
	and/or ADD_PSYMBOL_ADDR_TO_LIST macro(s) with call to
	add_psymbol_to_list with appropriate long or CORE_ADDR args.
	(add_partial_symbol): Ditto.
	* partial-stab.h: Ditto.
	* os9kread.c (read_os9k_psymtab): Ditto
	* mdebugread.c (parse_partial_symbols): Ditto.
	(handle_psymbol_enumerators): Ditto.
	(demangle.h): Include.
	* hpread.c (hpread_build_psymtabs): Ditto.
	(hpread_build_psymtabs): Ditto.
	(demangle.h): Include
1996-04-06 10:19:19 +00:00
Stan Shebs
fda6fadc0d * gdbtk.c (running_now): New global variable.
(gdb_cmd): Test it before executing any command.
	(gdbtk_call_command): Set it when inferior is running.
	* gdbtk.tcl (gdbtk_tcl_busy, gdbtk_tcl_idle): Enable and
	disable interaction with command window's text appropriately.
1996-04-05 21:52:38 +00:00
Michael Meissner
51bea8cf37 Add sanitize-gdbtk markers 1996-04-05 18:27:45 +00:00
Michael Meissner
8b3f9ed645 Undef SIOCSPGRP if on Linux 1996-04-05 18:27:08 +00:00
Stan Shebs
516f2d2e76 * arm-xdep.c: Move native-specific code to here from arm-tdep.c.
* arm-tdep.c (arm_apcs_32): New global.
	(arm_addr_bits_remove, arm_saved_pc_after_call,
 	arm_push_dummy_frame, arm_pop_frame): New functions.
	(arm_skip_prologue): Updated version from Richard Earnshaw.
	(_initialize_arm_tdep): Add set/show "apcs32".
	* config/arm/tm-arm.h (ADDR_BITS_REMOVE): Call
	arm_addr_bits_remove.
	(SAVED_PC_AFTER_CALL): Call arm_saved_pc_after_call.
	(frame_find_saved_regs): Declare properly.
	(PUSH_DUMMY_FRAME): Call arm_push_dummy_frame.
	(POP_FRAME): Call arm_pop_frame, use ADDR_BITS_REMOVE instead of
	explicit mask.
	* config/arm/nm-arm.h: New file.
	* config/arm/xm-arm.h (KERNEL_U_ADDR, FETCH_INFERIOR_REGISTERS):
	Move definitions to nm-arm.h.
	* config/arm/arm.mh (NAT_FILE): Define.
1996-04-05 04:32:27 +00:00
Stan Shebs
56864e2cbe Always keep nm-arm.h 1996-04-05 04:31:19 +00:00
Fred Fish
72ae15f6b0 * configure.in: Check for setpgid function.
* config.in: Regenerate with autoheader.
	* configure: Regenerate with autoconf.
	* inflow.c (_initialize_inflow): Only try to use _SC_JOB_CONTROL
	if it is actually defined.
	(gdb_setpgid): Use HAVE_SETPGID.
	* ch-exp.c: Change include of <string.h> to "gdb_string.h".
	* c-exp.y: Ditto.
	* f-exp.y: Ditto.
	* m2-exp.y: Ditto.
	* c-exp.y: Include <ctype.h>.
	* serial.c: Ditto.
	* config/m68k/nm-news.h: Add typedef for pid_t which is
	apparently missing from <sys/types.h>.  Enclose entire
	file in NM_NEWS_H ifndef and define when included.
	* config/mips/nm-news-mips.h: Ditto.
	* config/m68k/tm-m68k.h (REGISTER_CONVERT_TO_VIRTUAL,
	REGISTER_CONVERT_TO_RAW): Change name of temporary variable.
1996-04-05 04:22:08 +00:00
Stan Shebs
72c9954b87 * arm-xdep.c: Move native-specific code to here from arm-tdep.c.
* arm-tdep.c (arm_apcs_32): New global.
	(arm_addr_bits_remove, arm_saved_pc_after_call,
 	arm_push_dummy_frame, arm_pop_frame): New functions.
	(arm_skip_prologue): Updated version from Richard Earnshaw.
	(_initialize_arm_tdep): Add set/show "apcs32".
	* config/arm/tm-arm.h (ADDR_BITS_REMOVE): Call
	arm_addr_bits_remove.
	(SAVED_PC_AFTER_CALL): Call arm_saved_pc_after_call.
	(frame_find_saved_regs): Declare properly.
	(PUSH_DUMMY_FRAME): Call arm_push_dummy_frame.
	(POP_FRAME): Call arm_pop_frame, use ADDR_BITS_REMOVE instead of
	explicit mask.
	* config/arm/nm-arm.h: New file.
	* config/arm/xm-arm.h (KERNEL_U_ADDR, FETCH_INFERIOR_REGISTERS):
	Move definitions to nm-arm.h.
	* config/arm/arm.mh (NAT_FILE): Define.
PR 8941
1996-04-05 04:14:11 +00:00
Stan Shebs
67c1413d7f * symfile.c (generic_load): Initialize data_count properly. 1996-04-05 03:07:54 +00:00
Fred Fish
3e3ee48f73 * symmisc.c (print_objfile_statistics): Print memory used by
psymbol cache obstack.
1996-04-05 01:39:40 +00:00
Stan Shebs
72158e714e * symfile.c (report_transfer_performance): New function.
(generic_load): Call it to report transfer rate.
	* remote-e7000.c (e7000_load): Ditto.
PR 9353
1996-04-04 23:57:02 +00:00
Stan Shebs
761e98aa6e * mpw-make.sed: Change references to config.h to be in objdir,
edit out rules to rebuild config.h.
1996-04-02 00:35:28 +00:00
Fred Fish
251b8ab932 * hppa-tdep.c (hppa_pop_frame): Call clear_proceed_status before
proceeding.
1996-04-01 17:21:32 +00:00
Fred Fish
771f63d3ff * hppah-nat.c (store_inferior_registers, store_inferior_registers,
fetch_register, child_xfer_memory): Use call_ptrace function supplied
	by infptrace.c rather than calling ptrace directly.
1996-04-01 01:25:44 +00:00
Stan Shebs
32b186046e * mon960-rom.c: Cleanups and elimination of unused code,
clarify documentation string.
	(mon960_serial, mon960_ttyname): Remove.
	* config/i960/tm-mon960.h (ADDITIONAL_OPTIONS,
	ADDITIONAL_OPTION_CASES, ADDITIONAL_OPTION_HELP): Remove.
1996-04-01 00:44:19 +00:00
Fred Fish
07b77f5ca4 * configure.in: Check whether printf family supports printing
long doubles or not and define PRINTF_HAS_LONG_DOUBLE if so.
	* acconfig.h: Provide default undef for PRINTF_HAS_LONG_DOUBLE.
	* configure: Regenerate.
	* valprint.c (print_floating): Use PRINTF_HAS_LONG_DOUBLE.
	* c-exp.y (parse_number): Use PRINTF_HAS_LONG_DOUBLE.
	* configure.in: Fix have_gregset and have_fpregset autoconf
	variable names so that they match the pattern required to
	cache them.
1996-03-31 01:04:37 +00:00
Fred Fish
b52cac6b76 * core-aout.c (fetch_core_registers): Cast core_reg_size to int
before testing against reg_ptr.
	* eval.c (evaluate_subexp_standard): Cast type of
	TYPE_FN_FIELD_VOFFSET to int.
	* findvar.c (extract_signed_integer, extract_unsigned_integer,
	extract_long_unsigned_integer): Cast type of sizeof to int.
	* values.c (unpack_field_as_long, modify_field): Ditto.
	* valops.c (value_assign, call_function_by_hand): Ditto.
	* infcmd.c (do_registers_info): Ditto.
	* ser-tcp.c (tcp_open): Ditto
	* remote.c (putpkt): Ditto.
	* dcache.c (dcache_peek): Ditto.
	* dcache.c (dcache_poke): Ditto.
	* m2-exp.y (yylex): Ditto.
	* gnu-regex.c (re_match_2): Ditto.
	* f-lang.c (ADD_BF_SYMNUM, saved_bf_list_end, tmp_bf_ptr): Ifdef
	out unused macro definition and variables.
	* inftarg.c (proc_wait): Move from main.c to here, and make static.
	* valprint.c (val_print_string): Change bufsize from int to unsigned.
	* main.c (wait.h): Include
	* top.c (command_line_input): Remove unused variable "c".
	* f-typeprint.c (f_type_print_varspec_prefix): Add missing enum
	value TYPE_CODE_TYPEDEF to switch statement.
	(f_type_print_varspec_suffix): Add missing enum value
	TYPE_CODE_TYPEDEF to switch statement.
	* ch-exp.c (parse_primval): Add remaining enumeration values to
	switch statement, with no specific action.
	(ch_lex): Add LOC_UNRESOLVED in switch statement.
	(pushback_token): Ifdef out, since code using it is ifdef'd out.
	* stabsread.c (cleanup_undefined_types): Remove unused label
	"badtype".
	* objfiles.h (print_symbol_bcache_statistics): Add prototype.
	* maint.c (objfiles.h): Include.
	(maintenance_print_statistics): Remove unused variable "temp".
	* minsyms.c (lookup_minimal_symbol_solib_trampoline): Remove
	unused variable "found_file_symbol".
	* m2-exp.y (yylex): Add LOC_UNRESOLVED case to switch.
	* language.c (lang_bool_type): Use existing function local type
	variable rather than create block local variables.
	* solib.c (disable_break): Enclose in ifndef SVR4_SHARED_LIBS.
	* infptrace.c (wait.h, command.h): Include.
	* ser-tcp.c (gdb_string.h): Include
	* i386-tdep.c (codestream_seek): Change "place" to CORE_ADDR.
	(i386_get_frame_setup): Change "pc" from int to CORE_ADDR.
	* command.c (complete_on_enum): Make assignment used as truth value
	explictly check against NULL.
	(wait.h): Include.
	* infrun.c (wait_for_inferior): Ifdef out prologue_pc since code
	that uses it is ifdef'd out.
	* parser-defs.h: Add prototype for write_dollar_variable.
	* infrun.c: Add prototype for write_pc_pid.
	* breakpoint.h: Add prototype for re_enable_breakpoints_in_shlibs.
	* symmisc.c (bcache.h): Include.
	* bcache.h: Add prototype for print_bcache_statistics.
	* symfile.c: Include <time.h>.
	* printcmd.c (print_scalar_formatted): Change len to unsigned int.
	* valarith.c (value_equal): Cast result of TYPE_LENGTH to int.
	* valarith.c (value_binop): Change result_len, promoted_len1,
 	and promoted_len2 to unsigned int.
	* valarith.c (value_subscripted_rvalue): Change elt_offs and
 	elt_size to unsigned int.
	* valops.c (value_array): Change typelength to unsigned int.
	(destructor_name_p): Change len to unsigned int.
	* scm-lang.h (scm_parse): Add prototype for scm_unpack.
	* symfile.c (decrement_reading_symtab): Change return type to void.
	* valarith.c (value_subscript): Remove unused variable "word".
	(value_subscript): Remove unused variable "tint".
	* valops.c (auto_abandon): Ifdef out, since code using it is also
	ifdef'd out.
	* eval.c (init_array_element): Remove unused variable "val".
	* Makefile.in (values.o): Depends on scm-lang.h.
	(command.o): Depends upon wait_h.
	(ser-tcp.o): Depends upon gdb_string.h.
	(infptrace.o): Depends upon wait_h and command_h.
	(maint.o): Depends on objfiles.h and symfile.h.
	* values.c (allocate_repeat_value): Remove unused variable
	"element_type".
	(scm-lang.h): Include.
	* breakpoint.c (create_longjmp_breakpoint): Enclose in
	GET_LONGJMP_TARGET define, unused otherwise.
	* config/i386/nm-linux.h: Add prototypes for i386_insert_watchpoint,
	i386_remove_watchpoint and i386_stopped_by_watchpoint.
1996-03-30 05:45:10 +00:00
Fred Fish
84f737e989 Regenerate with hacked Cygnus autoconf 2.8 rather than FSF autoconf 2.8,
otherwise configure fails.
1996-03-29 22:07:42 +00:00
David Edelsohn
078aeca489 * configure.in (sparc64-*-solaris2*): Delete.
Stick with sparc-*-solaris2*.
	* configure: Regenerated.
1996-03-28 20:54:27 +00:00
Fred Fish
75225aa25d * valops.c (value_assign): Make copy of internal variable value
before returning it as a new value, since it is owned by the
	internal variable and will be freed along with it.
1996-03-28 15:03:16 +00:00
Fred Fish
06f4dc0882 Note that failures under linux for backtrace through signal handler
are not consistent among different systems, or even the same system.
1996-03-28 00:27:33 +00:00
Jeff Law
fa3764e2bf * From Peter Schauer.
* breakpoint.c (breakpoint_re_set_one):  Keep temporary
        breakpoints bp_until, bp_finish, bp_watchpoint_cope, bp_call_dummy
        and bp_step_resume in case breakpoint_re_set_one is called due
        to a step over a dlopen call.
        * infrun.c (wait_for_inferior):  Always remove breakpoints from
        inferior in BPSTAT_WHAT_CHECK_SHLIBS case.
1996-03-27 15:35:16 +00:00
Fred Fish
7e2ff10d97 * config/mips/tm-mips.h (COERCE_FLOAT_TO_DOUBLE): Only prefer
non-prototyped case over prototyped case for C.
	* config/pa/tm-hppa.h (COERCE_FLOAT_TO_DOUBLE):  Ditto.
1996-03-27 00:21:02 +00:00
Fred Fish
fda58904db Revert use of autoconf 2.9, it was causing too many regressions. 1996-03-25 04:09:45 +00:00
Fred Fish
9a58ff19cc Tweak to match output of autoconf 2.9 with same cygnus local patch as
current autoconf 2.8.
1996-03-24 02:59:18 +00:00
Fred Fish
4cfb23a94c * os9kread.c (os9k_process_one_symbol): Note nonportable
assumption that an int can hold a char *.

	* bcache.h (struct hashlink): Wrap data[] inside union with
	double to force longest alignment.
	(BCACHE_DATA): New macro to access data[].
	(BCACHE_ALIGNMENT): New macro to get offset to data[].
	* bcache.c (lookup_cache, bcache): Use BCACHE_DATA to get
 	address of cached data.  Use BCACHE_ALIGNMENT to compute
	amount of space to allocate for each hashlink struct.
1996-03-24 00:22:50 +00:00
Fred Fish
a319972ce6 * configure, testsuite/configure, testsuite/gdb.base/configure,
testsuite/gdb.c++/configure, testsuite/gdb.chill/configure,
	testsuite/gdb.disasm/configure, testsuite/gdb.stabs/configure:
	Regenerated with autoconf 2.9.
1996-03-24 00:19:59 +00:00
Fred Fish
b9aa6215c9 * ch-lang.c (evaluate_subexp_chill): Fix typo. 1996-03-23 19:52:50 +00:00
Ian Lance Taylor
18ea4416b7 * config.in: Rename from config.h.in.
* configure.in: Call AC_CONFIG_HEADER with config.h:config.in.
	Change CONFIG_HEADERS test in AC_OUTPUT accordingly.
	* configure: Rebuild.
	* Makefile.in (stamp-h): Depend upon config.in, not config.h.in.
	Set CONFIG_HEADERS to config.h:config.in.
The file name config.h.in can be used on DOS filesystems.
1996-03-21 15:59:01 +00:00
Fred Fish
d2309db18c Revert part of change from last night. 1996-03-20 15:48:34 +00:00
Fred Fish
8ce1c210f1 * gdb.base/corefile.exp: Always regenerate the core file, since
we always regenerate the coremaker program.  Detect special case
	where registers cannot be read from core file.  Change setup_xfail
	for "print func2:coremaker_local" and "backtrace in corefile.exp"
	to fail for all i*86 targets.
1996-03-20 07:52:01 +00:00
Fred Fish
a9424716ea From Peter Schauer <Peter.Schauer@Regent.E-Technik.TU-Muenchen.DE>
* gdb.base/funcargs.c: Patch for SPARCworks alloca compatibility
	* gdb.c++/templates.exp: Only match on basename of file since
	some formats like xcoff don't encode directory information.
	* gdb.stabs/weird.exp: Use the right sed script for powerpc
	and rs6000 AIX xcoff targets.
	* configure.in: Add stabsdirs to configdirs for powerpc-*-aix*.
	* configure: Regenerate.
	* gdb.base/Makefile.in (clean): Remove generated file twice-tmp.c
	here, rather than in distclean.
1996-03-20 02:58:28 +00:00
Peter Schauer
677183693d * partial-stab.h (case N_ENDM): Finish current partial symbol
table for Solaris 2 cc.
1996-03-19 20:50:13 +00:00
Jeff Law
a466b86aac * rs6000-nat.c (exec_one_dummy_insn): Don't clobber the
PC in the registers array.  From Peter Schauer.
1996-03-19 17:40:12 +00:00
Fred Fish
0ef22be97f * symfile.c (reread_symbols): Reinitialize bcache struct
members to zero using memset.  Also use memset to reinit
	global_psymbols and static_psymbols, rather than explicitly
	resetting each structure member.
1996-03-18 21:24:48 +00:00
Fred Fish
5d93d326ad Add acconfig.h and config.h.in 1996-03-18 16:15:05 +00:00
Fred Fish
9b4df2e5af * gdb.base/mips_pro.exp: Create mips_pro.ci to get gcc_compiled
defined, and use it to compile the test case with -O2.  The
	native compilation still uses no optimization.
	* gdb.base/mips_pro.c: Remove inline assembly code since
	it is compiled PIC by default, which results in assembler
	warnings that make the testsuite think the compilation
	was unsuccessful.
1996-03-17 21:48:40 +00:00