Corinna Vinschen
6ed14b0ece
* v850-tdep.c: Begin multi-arch'ing v850.
...
(v850_target_architecture_hook): Remove function.
(v850_gdbarch_init): New function. Add code previously in
v850_target_architecture_hook().
(_initialize_v850_tdep): Don't set target_architecture_hook.
Call register_gdbarch_init() instead.
2002-05-16 07:35:21 +00:00
Daniel Jacobowitz
4272591028
2002-05-16 Daniel Jacobowitz <drow@mvista.com>
...
* gdbtypes.h (struct cplus_struct_type): Remove args field.
* hpread.c (hpread_read_struct_type): Remove assignments to args.
(fixup_class_method_type): Likewise.
2002-05-16 03:59:58 +00:00
Daniel Jacobowitz
0bc68c4948
2002-05-15 Daniel Jacobowitz <drow@mvista.com>
...
From Martin Pool <mbp@samba.org>:
* gdbserver/server.c (gdbserver_usage): New function.
(main): Call it.
2002-05-16 02:33:04 +00:00
gdbadmin
abdb5c032d
*** empty log message ***
2002-05-16 00:00:34 +00:00
Jim Blandy
99d9066e57
Add macro structures to GDB's symbol tables. Nobody puts anything
...
in them yet.
* symtab.h (struct symtab): New member: `macro_table'.
* buildsym.h (pending_macros): New global variable.
* buildsym.c: #include "macrotab.h".
(buildsym_init): Initialize `pending_macros'.
(end_symtab): If we found macro information while reading a CU's
debugging info, do build a symtab structure for it. Make the
symtab point to the macro information, and clear the
`pending_macros' pointer which held it while we were reading the
debug info.
(really_free_pendings): Free any pending macro table.
* objfiles.h (struct objfile): New member: `macro_cache'.
* objfiles.c (allocate_objfile): Set allocate and free functions
for the macro cache's objstack.
(free_objfile): Empty the macro cache's obstack.
* symfile.c (reread_symbols): Empty the macro cache's obstack, and
set new allocate and free functions for it.
* solib-sunos.c (allocate_rt_common_objfile): Set allocate and
free functions for the macro cache's objstack. (Why is this
function building its own objfile?)
* symmisc.c (print_objfile_statistics): Print statistics on the
macro bcache.
* Makefile.in: Note that buildsym.o depends on macrotab.h.
2002-05-15 21:19:21 +00:00
Richard Earnshaw
c899585bc7
* config/arm/nm-nbsd.h: Use <> for include of config/nm-nbsd.h.
...
(REGISTER_U_ADDR): Delete definition.
(arm_register_u_addr): Delete declaration.
2002-05-15 16:21:59 +00:00
Richard Earnshaw
a6cdd8c5f6
* arm-linux-tdep.c (ARM_LINUX_JB_PC): Renamed from JB_PC.
...
(ARM_LINUX_JB_ELEMENT_SIZE): Likewise.
2002-05-15 12:29:41 +00:00
Daniel Jacobowitz
fd3a5ca161
2002-05-14 Daniel Jacobowitz <drow@mvista.com>
...
* gdbserver/mem-break.c (reinsert_breakpoint_by_bp): Correct typo
stop_at -> stop_pc.
2002-05-15 03:36:13 +00:00
Andrew Cagney
c97dcfc7b8
* regcache.c (register_valid): Revise comments refering to "Not
...
available" and "unavailable".
* frame.c (frame_register_read): Ditto.
* findvar.c (value_of_register): Ditto.
2002-05-15 01:01:56 +00:00
gdbadmin
0e0cbfbfde
*** empty log message ***
2002-05-15 00:00:34 +00:00
Andrew Cagney
93021b7d08
* Makefile.in (remote_sim_h): Replace remote-sim_h.
...
(remote-sim.o): Update dependencies.
(d10v-tdep.o): Specify dependencies.
(sim_d10v_h): Define.
2002-05-14 22:19:49 +00:00
Elena Zannoni
eac2a696e0
2002-05-14 Elena Zannoni <ezannoni@redhat.com>
...
* gdb.arch/altivec-abi.c: New file.
* gdb.arch/altivec-abi.exp: New file.
* gdb.arch/altivec-regs.c: New file.
* gdb.arch/altivec-regs.exp: New file.
2002-05-14 22:10:16 +00:00
Elena Zannoni
57680a243b
2002-05-14 Elena Zannoni <ezannoni@redhat.com>
...
* gdb.arch/altivec-abi.c: New file.
* gdb.arch/altivec-abi.exp: New file.
* gdb.arch/altivec-regs.c: New file.
* gdb.arch/altivec-regs.exp: New file.
2002-05-14 22:02:52 +00:00
Jim Blandy
a86bc61c35
* macroexp.c (init_buffer, gather_arguments, expand): Use NULL, not 0.
...
* macrotab.c (macro_lookup_inclusion, find_definition,
new_macro_table): Same.
* macroexp.c (currently_rescanning, expand): Use `strcmp () == 0',
not `! strcmp ()'. This is a dubious improvement.
* macrotab.c (macro_lookup_inclusion, find_definition): Same.
* macrotab.c (macro_lookup_inclusion): Initialize `best_depth',
although it's not necessary, to avoid a warning.
2002-05-14 21:31:05 +00:00
Daniel Jacobowitz
2fdde8f831
2002-05-14 Daniel Jacobowitz <drow@mvista.com>
...
* gdbtypes.h: Update accessor macros to use TYPE_MAIN_TYPE.
(TYPE_CONST, TYPE_VOLATILE, TYPE_CODE_SPACE, TYPE_DATA_SPACE): Use
TYPE_INSTANCE_FLAGS.
(struct main_type): New.
(struct type): Move most members to struct main_type. Change
cv_type and as_type to new type_chain member. Add instance_flags.
(TYPE_MAIN_TYPE, TYPE_CHAIN, TYPE_INSTANCE_FLAGS): New macros.
(TYPE_CV_TYPE, TYPE_AS_TYPE): Remove.
(finish_cv_type): Remove prototype.
* gdbtypes.c (alloc_type): Update comment. Allocate TYPE_MAIN_TYPE.
Set TYPE_CHAIN.
(alloc_type_instance): New function.
(smash_type): New function.
(make_pointer_type, make_reference_type, make_function_type)
(smash_to_member_type, smash_to_method_type): Call smash_type.
(make_qualified_type): New function.
(make_type_with_address_space): Call make_qualified_type.
(make_cv_type): Likewise.
(finish_cv_type): Remove unnecessary function.
(replace_type): Update comment. Copy TYPE_MAIN_TYPE.
(recursive_dump_type): Dump TYPE_CHAIN and TYPE_INSTANCE_FLAGS;
remove TYPE_CV_TYPE and TYPE_AS_TYPE.
* c-typeprint.c (c_type_print_modifier): Use TYPE_INSTANCE_FLAGS.
* dwarf2read.c (read_structure_scope): Don't call finish_cv_type.
* hpread.c (hpread_read_struct_type): Likewise.
* stabsread.c (read_struct_type): Likewise.
2002-05-14 Daniel Jacobowitz <drow@mvista.com>
* gdb.base/maint.exp (maint print type): Update for new type
structure.
2002-05-14 18:30:53 +00:00
Elena Zannoni
e31f1a7cdb
2002-05-14 Elena Zannoni <ezannoni@redhat.com>
...
* gdb.arch: New directory.
* gdb.arch/configure.in: New file.
* gdb.arch/configure: New file.
* gdb.arch/Makefile.in: New file.
2002-05-14 17:09:13 +00:00
Elena Zannoni
843fedf445
2002-05-14 Elena Zannoni <ezannoni@redhat.com>
...
* configure.tgt: Add a catch all sh* target, for cases like
sh[2,3,4]-elf and sh-hms.
2002-05-14 15:22:29 +00:00
Keith Seitz
05a6c72cef
* event-loop.c (create_file_handler): Don't do anything but
...
update data when we are given a fd which we are already
monitoring.
2002-05-14 15:21:10 +00:00
Corinna Vinschen
db5897415c
* gdb.asm/asm-source.exp: Add v850 as supported target.
...
* gdb.asm/v850.inc: New file.
2002-05-14 10:25:33 +00:00
Michal Ludvig
5d085aafc8
2002-05-14 Michal Ludvig <mludvig@suse.cz>
...
* dwarf2cfi.c (context_cpy): Copy registers correctly.
(update_context): Use __func__ in warnings.
2002-05-14 08:24:26 +00:00
Daniel Jacobowitz
9db8d71ff0
2002-05-14 Daniel Jacobowitz <drow@mvista.com>
...
* ser-tcp.c: Include <netinet/udp.h>. Rename tcp_open
and tcp_close to net_open and net_close.
(net_open): Accept "udp:" and "tcp:" specifications. Connect
using UDP if requested. Don't try to disable Nagle on UDP
sockets.
* remote.c (remote_serial_open): New function. Warn about UDP.
(remote_open_1, remote_async_open_1, remote_cisco_open): Call it.
2002-05-14 Daniel Jacobowitz <drow@mvista.com>
* gdb.texinfo (Debug Session): Document new `udp:' and `tcp:'
options for `target remote'.
2002-05-14 04:26:25 +00:00
Elena Zannoni
5dbc6baa50
2002-05-13 Elena Zannoni <ezannoni@redhat.com>
...
* MAINTAINERS: List sh-elf as buildable with ,-Werror.
2002-05-14 01:25:00 +00:00
Elena Zannoni
cc3023f779
2002-05-13 Elena Zannoni <ezannoni@redhat.com>
...
* configure.tgt: Remove sh-hms target.
* MAINTAINERS: Don't list sh-hms as a separate target.
2002-05-14 01:21:39 +00:00
gdbadmin
6cc7bdfa5c
*** empty log message ***
2002-05-14 00:00:06 +00:00
Daniel Jacobowitz
8ce2a7dcda
2002-05-13 Daniel Jacobowitz <drow@mvista.com>
...
* gdb.c++/annota2.exp (annotate-quit): Add comment.
2002-05-13 19:18:52 +00:00
Jim Blandy
ec2bcbe754
Add first preprocessor macro-expansion files.
...
* macroexp.c, macroexp.h, macrotab.c, macrotab.h: New files.
* Makefile.in (SFILES): Add macrotab.c, macroexp.c.
(splay_tree_h, macroexp_h, macrotab_h): New variable.
(HFILES_NO_SRCDIR): Add macrotab.h, macroexp.h.
(COMMON_OBS): Add macrotab.o, macroexp.o.
(macroexp.o, macrotab.o): New rules.
2002-05-13 18:13:07 +00:00
Andrew Cagney
6d53172289
* config/m88k/tm-m88k.h: Update copyright.
...
(m88k_target_write_pc): Declare
(TARGET_WRITE_PC): Redefine using m88k_target_write_pc.
(M88K_NNPC_REGNUM): Rename NNPC_REGNUM.
(SHIFT_INST_REGS): Update definition.
* m88k-tdep.c (m88k_target_write_pc): New function. Implement
using old definition of TARGET_WRITE_PC.
* regcache.c (generic_target_write_pc): Delete code handling
NNPC_REGNUM.
* gdbarch.sh (NNPC_REGNUM): Delete.
* gdbarch.h, gdbarch.c: Regenerate.
* gdbint.texinfo (Target Architecture Definition): Delete
documentation on NNPC_REGNUM.
2002-05-13 17:20:59 +00:00
Richard Earnshaw
3e3f273960
* builtin-regs.c (value_of_builtin_reg): Correctly calculate the
...
builtin reg number.
2002-05-13 16:25:08 +00:00
Daniel Jacobowitz
4c90d51b96
2002-05-13 Daniel Jacobowitz <drow@mvista.com>
...
* ax-gdb.c (gen_sign_extend, gen_fetch, gen_usual_unary)
(gen_cast, gen_scale, gen_add, gen_sub, gen_binop, gen_deref)
(gen_address_of, gen_struct_ref, gen_repeat): Use type
access macros.
* c-typeprint.c (cp_type_print_method_args): Likewise.
(c_type_print_args): Likewise.
* d10v-tdep.c (d10v_push_arguments): Likewise.
(d10v_extract_return_value): Likewise.
* expprint.c (print_subexp): Likewise.
* gdbtypes.c (lookup_primitive_typename): Likewise.
(lookup_template_type, add_mangled_type, print_arg_types): Likewise.
* gdbtypes.h (TYPE_UNSIGNED, TYPE_NOSIGN, TYPE_STUB)
(TYPE_TARGET_STUB, TYPE_STATIC, TYPE_CONST, TYPE_VOLATILE)
(TYPE_PROTOTYPED, TYPE_INCOMPLETE, TYPE_CODE_SPACE, TYPE_VARARGS)
(TYPE_VECTOR): Likewise.
* hpread.c (hpread_read_struct_type)
(fix_static_member_physnames, fixup_class_method_type)
(hpread_type_lookup): Likewise.
* mdebugread.c (parse_symbol, parse_type): Likewise.
* p-lang.c (is_pascal_string_type): Likewise.
* valops.c (hand_function_call): Likewise.
* x86-64-tdep.c (classify_argument): Likewise.
* hpread.c (hpread_read_function_type)
(hpread_read_doc_function_type): Call replace_type.
* dstread.c (create_new_type): Delete.
(decode_dst_structure, process_dst_function): Call alloc_type.
Use type access macros.
2002-05-13 14:21:12 +00:00
Daniel Jacobowitz
0004e5a2cf
2002-05-13 Daniel Jacobowitz <drow@mvista.com>
...
* ax-gdb.c (gen_sign_extend, gen_fetch, gen_usual_unary)
(gen_cast, gen_scale, gen_add, gen_sub, gen_binop, gen_deref)
(gen_address_of, gen_struct_ref, gen_repeat): Use type
access macros.
* c-typeprint.c (cp_type_print_method_args): Likewise.
(c_type_print_args): Likewise.
* d10v-tdep.c (d10v_push_arguments): Likewise.
(d10v_extract_return_value): Likewise.
* expprint.c (print_subexp): Likewise.
* gdbtypes.c (lookup_primitive_typename): Likewise.
(lookup_template_type, add_mangled_type, print_arg_types): Likewise.
* gdbtypes.h (TYPE_UNSIGNED, TYPE_NOSIGN, TYPE_STUB)
(TYPE_TARGET_STUB, TYPE_STATIC, TYPE_CONST, TYPE_VOLATILE)
(TYPE_PROTOTYPED, TYPE_INCOMPLETE, TYPE_CODE_SPACE, TYPE_VARARGS)
(TYPE_VECTOR): Likewise.
* hpread.c (hpread_read_struct_type)
(fix_static_member_physnames, fixup_class_method_type)
(hpread_type_lookup): Likewise.
* mdebugread.c (parse_symbol, parse_type): Likewise.
* p-lang.c (is_pascal_string_type): Likewise.
* valops.c (hand_function_call): Likewise.
* x86-64-tdep.c (classify_argument): Likewise.
* hpread.c (hpread_read_function_type)
(hpread_read_doc_function_type): Call replace_type.
* dstread.c (create_new_type): Delete.
(decode_dst_structure, process_dst_function): Call alloc_type.
Use type access macros.
2002-05-13 14:00:36 +00:00
Daniel Jacobowitz
df763c7f5b
2002-05-12 Daniel Jacobowitz <drow@mvista.com>
...
* gdb.base/break.exp: Check 'break "marker2"'.
2002-05-13 01:18:19 +00:00
gdbadmin
59aa1751ab
*** empty log message ***
2002-05-13 00:00:34 +00:00
Mark Kettenis
dff95cc7a6
* i387-tdep.c (i387_supply_fxsave): Skip the SSE registers if
...
the're not supported by the current architecture.
(i387_fill_fxsave): Likewise.
2002-05-12 21:16:08 +00:00
Fred Fish
bbcd32adda
Approved by ezannoni@redhat.com:
...
2002-05-12 Fred Fish <fnf@redhat.com>
* symfile.c (default_symfile_offsets): Arrange for uninitialized
sect_index_xxx members to index the first slot in section_offsets
if all of the section_offsets are zero.
2002-05-12 18:13:33 +00:00
Jason Thorpe
1aee598a77
Add a ChangeLog entry that was accidentally not committed
...
with the change:
2002-05-11 Jason Thorpe <thorpej@wasabisystems.com>
* Makefile.in (ALLDEPFILES): Remove alphanbsd-nat.c.
(alphanbsd-nat.o): Remove dependency list.
(alphanbsd-tdep.o): Add $(regcache_h) to dependency list.
* alphanbsd-nat.c: Delete. Contents moved to...
* alphanbsd-tdep.c: ...here.
(_initialize_alphanbsd_tdep): Register core functions.
* config/alpha/nbsd.mh (NATDEPFILES): Remove alphanbsd-nat.o.
2002-05-12 16:37:16 +00:00
Mark Kettenis
89cf478729
* configure.tgt (sparc-*openbsd): Remove entry accidentially
...
checked in with last change.
2002-05-12 15:07:41 +00:00
Mark Kettenis
1f77ffc533
* configure.tgt (i[3456]86-*-unixware*, i[3456]86-*-unixware2*):
...
Remove targets. These are canonicalized to i386-*-sysv4.2uw by
config.sub.
2002-05-12 14:58:56 +00:00
Daniel Jacobowitz
89b8b4a9c6
2002-05-12 Daniel Jacobowitz <drow@mvista.com>
...
* Makefile.in: Update dependencies.
2002-05-12 07:40:37 +00:00
Andrew Cagney
14a5e76714
* language.c (local_hex_string_custom): Simplify. Do not depend
...
on PRINTF_HAS_LONG_LONG or CC_HAS_LONG_LONG.
* memattr.c (mem_info_command): Replace calls to
longest_local_hex_string and longest_local_hex_string_custom.
* buildsym.c (make_blockvector): Ditto.
* solib.c (info_sharedlibrary_command): Ditto.
* tracepoint.c (tracepoints_info): Ditto.
* symtab.c (print_msymbol_info): Ditto.
* language.c (local_hex_string): Delete.
(local_hex_string_custom): Delete.
(longest_local_hex_string): Rename to local_hex_string.
(longest_local_hex_string_custom): Rename to
local_hex_string_custom.
* language.h (local_hex_string): Change parameter type to LONGEST.
(local_hex_string_custom): Ditto.
(longest_local_hex_string): Delete declaration.
(longest_local_hex_string_custom): Ditto.
* solib.c: Update copyright.
* memattr.c: Update copyright.
2002-05-12 04:20:06 +00:00
Andrew Cagney
13d0122493
* arch-utils.h (legacy_register_to_value): Declare.
...
(legacy_value_to_register): Declare.
(legacy_convert_register_p): Declare.
* arch-utils.c (legacy_register_to_value): New function.
(legacy_value_to_register): New function.
(legacy_convert_register_p): New function.
* gdbarch.sh (REGISTER_TO_VALUE): Define.
(VALUE_TO_REGISTER): Define.
(CONVERT_REGISTER_P): Define.
* gdbarch.h, gdbarch.c: Regenerate.
* valops.c (value_assign): Use CONVERT_REGISTER_P and
VALUE_TO_REGISTER.
* findvar.c (value_from_register): Use REGISTER_TO_VALUE and
CONVERT_REGISTER_P.
* gdbint.texinfo (Target Architecture Definition): Document
REGISTER_TO_VALUE and VALUE_TO_REGISTER and CONVERT_REGISTER_P.
(Target Architecture Definition): Revise section `Using Different
Register and Memory Data Representations'. Add section `Raw and
Virtual Register Representations'.
2002-05-12 03:09:12 +00:00
Daniel Jacobowitz
4a1970e4a4
2005-05-11 Daniel Jacobowitz <drow@mvista.com>
...
Peter Schauer <pes@regent.e-technik.tu-muenchen.de>
* Makefile.in: Update dependencies for valops.c.
* valops.c: Include "gdb_assert.h".
(typecmp): Skip THIS parameter to methods.
(find_method_list): Remove static_memfuncp argument,
update callers. Check for stub methods.
(find_value_oload_method_list): Don't set *static_memfuncp.
(find_overload_match): Don't check for stub methods. Assert
that methods are not stubbed. Handle static methods.
(value_find_oload_method_list): Remove static_memfuncp argument.
* gdbtypes.c (check_stub_method): Do not add THIS pointer
to the argument list for static stub methods.
* value.h (value_find_oload_method_list): Update prototype.
2002-05-12 02:20:38 +00:00
Andrew Cagney
b2e75d7899
* arch-utils.h (generic_register_size): Declare.
...
(generic_register_raw_size, generic_register_virtual_size): Delete
declarations.
* arch-utils.c (generic_register_raw_size): Delete.
(generic_register_size): New function.
(generic_register_virtual_size): Delete.
* gdbarch.sh (REGISTER_RAW_SIZE, REGISTER_VIRTUAL_SIZE): Make
default generic_register_size.
* gdbarch.h, gdbarch.c: Re-generate.
* d10v-tdep.c (d10v_gdbarch_init): Use generic_register_size for
register_virtual_size.
* x86-64-tdep.c (x86_64_gdbarch_init): Ditto.
* rs6000-tdep.c (rs6000_gdbarch_init): Ditto.
* gdbint.texinfo (Target Architecture Definition): Mention
defaults for REGISTER_VIRTUAL_SIZE and REGISTER_RAW_SIZE.
(Target Architecture Definition): Mention same. Add references to
web pages.
2002-05-12 02:16:05 +00:00
Andrew Cagney
451fbdda72
* gdbarch.sh (gdbarch_data): Add gdbarch parameter.
...
* gdbarch.h, gdbarch.c: Regenerate.
* gnu-v3-abi.c: Update copyright.
(vtable_address_point_offset): Update.
(gnuv3_rtti_type): Update.
(gnuv3_baseclass_offset): Update.
* solib-svr4.c (svr4_fetch_link_map_offsets): Update.
(init_fetch_link_map_offsets): Update.
* remote.c (get_remote_state): Update.
2002-05-12 01:02:58 +00:00
gdbadmin
b91d9153be
*** empty log message ***
2002-05-12 00:00:05 +00:00
Daniel Jacobowitz
6d2f5ceaae
2002-05-11 Daniel Jacobowitz <drow@mvista.com>
...
* TODO: Remove value_headof/value_from_vtable_info comment.
* printcmd.c (print_command_1): Don't call value_from_vtable_info.
* values.c (value_headof, value_from_vtable_info): Delete.
* value.h (value_from_vtable_info): Delete prototype.
2002-05-11 23:48:23 +00:00
Andrew Cagney
d2324da42d
* Makefile.in: Replace gdb_assert.h with $(gdb_assert_h),
...
gdb_string.h with $(gdb_string_h) and gdb_regex.h with
$(gdb_regex_h).
(gdb_assert_h): Define.
(gdb_wait_h): Define.
(gdb_regex_h): Define.
2002-05-11 23:14:25 +00:00
Daniel Jacobowitz
5c71744046
2002-05-11 Daniel Jacobowitz <drow@mvista.com>
...
From Peter Schauer <Peter.Schauer@Regent.E-Technik.TU-Muenchen.DE>:
* linespec.c (find_methods): Handle GCC 3.x template constructors.
2002-05-11 22:46:19 +00:00
Jason Thorpe
6c7861b3c0
* nbsd-tdep.c: Fix comment.
2002-05-11 22:21:26 +00:00
Jason Thorpe
ea5bc2a606
* Makefile.in (ALLDEPFILES): Add nbsd-tdep.c.
...
(alphanbsd-tdep.o): Add nbsd-tdep.h to dependency list.
(nbsd-tdep.o): New dependency list.
* alphanbsd-tdep.c: Don't include solib-svr4.h. Include
nbsd-tdep.h.
(alphanbsd_solib_svr4_fetch_link_map_offsets): Remove.
(alphanbsd_init_abi): Use nbsd_lp64_solib_svr4_fetch_link_map_offsets.
* nbsd-tdep.c: New file.
* nbsd-tdep.h: New file.
* shnbsd-tdep.c: Don't include solib-svr4.h. Include
nbsd-tdep.h.
(shnbsd_solib_svr4_fetch_link_map_offsets): Remove.
(shnbsd_init_abi): Use nbsd_ilp32_solib_svr4_fetch_link_map_offsets.
* config/alpha/nbsd.mt (TDEPFILES): Add nbsd-tdep.o.
* config/sh/nbsd.mt (TDEPFILES): Ditto.
2002-05-11 22:14:19 +00:00
Jason Thorpe
b28da8653f
* config/alpha/nbsd.mh (NATDEPFILES): Remove corelow.o.
...
* config/alpha/nbsd.mt (TDEPFILES): Add corelow.o.
* config/i386/nbsd.mh (NATDEPFILES): Remove corelow.o.
* config/i386/nbsd.mt (TDEPFILES): Add corelow.o.
* config/i386/nbsdelf.mh (NATDEPFILES): Remove corelow.o.
* config/i386/nbsdelf.mt (TDEPFILES): Add corelow.o.
2002-05-11 21:46:17 +00:00