Commit Graph

88 Commits

Author SHA1 Message Date
Nicola Pero
26e51caa4d Rewritten from scratch class lookup internals - getting a good performance
boost for class method invocations

From-SVN: r46616
2001-10-29 21:24:48 +00:00
Nicola Pero
2726bdbaac Rewritten all the internals - great performance boost.
From-SVN: r46615
2001-10-29 21:23:31 +00:00
Ovidiu Predescu
71a18acf34 gc.c: Removed the DEBUG declaration.
2001-09-10  Ovidiu Predescu  <ovidiu@cup.hp.com>

	* gc.c: Removed the DEBUG declaration.

From-SVN: r45511
2001-09-10 16:24:11 +00:00
Ovidiu Predescu
041dea5661 Removed the DEBUG declaration.
From-SVN: r45510
2001-09-10 16:22:42 +00:00
Nicola Pero
5f1ecf82e7 Save a function call in common mutex locking/unlocking operations
From-SVN: r44107
2001-07-18 11:55:24 +00:00
Nicola Pero
ba0cf7f7f5 Save a function call on mutex locking/unlocking
From-SVN: r44106
2001-07-18 11:54:03 +00:00
Nicola Pero
42d28de5b2 Fixed object_is_class and object_is_metaclass
From-SVN: r44039
2001-07-16 11:36:24 +00:00
Alexandre Oliva
4173be7fe5 configure.in (AC_EXEEXT): Work around in case it expands to nothing, as in autoconf 2.50.
* configure.in (AC_EXEEXT): Work around in case it expands to
nothing, as in autoconf 2.50.
* acinclude.m4: Likewise.
* configure: Rebuilt.

From-SVN: r43105
2001-06-09 20:32:56 +00:00
Nicola Pero
27132e6489 THREADS: Explain that when we compile libobjc inside GCC...
2001-06-08  Nicola Pero  <n.pero@mi.flashnet.it>

        * THREADS: Explain that when we compile libobjc inside GCC, we
        always use thr-objc.c as a backend, which uses GCC's thread code.

From-SVN: r43058
2001-06-08 22:42:59 +00:00
Richard Frith-Macdonald
e6be21fe87 init.c (__objc_send_message_in_list): When setting a new entry in __objc_load_methods use the method IMP as key...
2001-06-06  Richard Frith-Macdonald  <rrfm@gnu.org>

        * init.c (__objc_send_message_in_list): When setting a new entry
        in __objc_load_methods use the method IMP as key, but check to see
        if the method is in the hashtable by looking at the IMP also.
        Also ... call the method after adding it to the hashtable rather
        than before ... thus preventing an obscure possibility of infinite
        recursion if a +load method itself loads a subclass.

From-SVN: r43052
2001-06-08 22:19:47 +00:00
Ovidiu Predescu
12e010668b init.c (__objc_send_message_in_list): When setting a new entry in __objc_load_methods use the method name as key...
2001-05-25  Ovidiu Predescu  <ovidiu@cup.hp.com>

	* init.c (__objc_send_message_in_list): When setting a new entry
	in __objc_load_methods use the method name as key, not the method
	IMP (reported by Richard Frith-Macdonald <richard@brainstorm.co.uk>).

From-SVN: r42562
2001-05-25 07:14:10 +00:00
Ovidiu Predescu
3e5252057d (__objc_send_message_in_list): When setting a new entry in __objc_load_methods use the method name as key...
(__objc_send_message_in_list): When setting a new entry in
__objc_load_methods use the method name as key, not the method IMP
(reported by Richard Frith-Macdonald <richard@brainstorm.co.uk>).

From-SVN: r42561
2001-05-25 07:12:17 +00:00
Alexandre Oliva
334564454e ltconfig, [...]: Upgraded to libtool 1.4a 1.641.2.254.
* ltconfig, ltmain.sh, libtool.m4, ltcf-c.sh, ltcf-cxx.sh,
ltcf-gcj.sh: Upgraded to libtool 1.4a 1.641.2.254.  Rebuilt a number
of subdir/configure scripts to use the new libtool.m4.

From-SVN: r42351
2001-05-20 18:55:59 +00:00
Joseph Myers
10c179f3e9 objc.texi: Move from ../libobjc/objc-features.texi.
gcc:
	* objc.texi: Move from ../libobjc/objc-features.texi.  Adjust for
	inclusion as a chapter of the GCC manual.
	* gcc.texi: Include objc.texi.
	* fdl.texi: Use @unnumberedsec for the addendum.
	* Makefile.in ($(srcdir)/gcc.info, gcc.dvi): Update dependencies.

libobjc:
	* objc-features.texi: Move to ../gcc/objc.texi.
	* fdl.texi: Remove.
	* Makefile.in: Don't generate documentation from
	objc-features.texi.

From-SVN: r41927
2001-05-09 15:16:47 +01:00
Mark Mitchell
78fb357776 Fix typo
From-SVN: r41750
2001-05-02 00:58:46 +00:00
Mark Mitchell
bcecb0b06d fdl.texi: New file.
* fdl.texi: New file.
	* objc-features.texi: Simplify.
	* Makefile.in: Adjust accordingly.

From-SVN: r41747
2001-05-02 00:39:01 +00:00
Mark Mitchell
c3aac51278 fdl.texi: New file.
* fdl.texi: New file.
	* c-tree.texi: Use the GFDL.
	* gcc.texi: Likewise.

	* porting.texi: Use the GFDL.

	* objc-features.texi: Use the GFDL.

	* gxxint.texi: Remove.
	* Make-lang.in: Remove all traces of gxxint.texi.

From-SVN: r41700
2001-04-30 22:46:01 +00:00
John Wehle
49073def1b * encoding.c (REAL_TYPE): Define.
From-SVN: r40687
2001-03-21 09:46:20 +00:00
David Edelsohn
120d59bfb9 * encoding.c (TYPE_MODE): Define.
From-SVN: r40633
2001-03-19 16:05:03 -05:00
Nicola Pero
b894530e6d thr.c (objc_thread_add): New function.
2001-03-14  Nicola Pero  <n.pero@mi.flashnet.it>

        * thr.c (objc_thread_add): New function.
        (objc_thread_remove): Ditto.
        * objc/thr.h: Declare them.
        * libobjc.def: Mention them.

From-SVN: r40479
2001-03-15 02:18:09 +00:00
Ovidiu Predescu
11014a3b38 objc-features.texi: Document the @compatibility_alias compiler directive (description from Nicola...
2001-02-28  Ovidiu Predescu  <ovidiu@cup.hp.com>

	* objc-features.texi: Document the @compatibility_alias compiler
	directive (description from Nicola Pero <n.pero@mi.flashnet.it>).

From-SVN: r40126
2001-02-28 17:17:09 +00:00
Ovidiu Predescu
2e226581cb Document the @compatibility_alias compiler directive (description from
Nicola Pero <n.pero@mi.flashnet.it>).

From-SVN: r40125
2001-02-28 17:16:17 +00:00
Rainer Orth
a79ffa5a8c sendmsg.c (__objc_forward): Delete strlen() declaration.
Fri Feb 23 18:12:00 2001  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>

* sendmsg.c (__objc_forward): Delete strlen() declaration.

From-SVN: r40033
2001-02-24 06:14:36 +00:00
Geoffrey Keating
7c6b0e92a4 In libf2c:
* configure.in: Don't run AC_PROG_CC_WORKS, because
	we're not interested in the result and it might fail.
	* libF77/configure.in: Likewise.
	* libI77/configure.in: Likewise.
	* libU77/configure.in: Likewise.
	* configure: Regenerated.
	* libF77/configure: Likewise.
	* libI77/configure: Likewise.
	* libU77/configure: Likewise.
In libobjc:
	* configure.in: Don't run AC_PROG_CC_WORKS or AC_EXEEXT, because
	we're not interested in the result and they might fail.
	* configure: Regenerated.

From-SVN: r39560
2001-02-09 07:14:35 +00:00
Joseph Myers
01d9cb8b77 * objc-features.texi: Use @email.
From-SVN: r38949
2001-01-12 17:06:15 +00:00
Joseph Myers
0fc39d8ad7 sendmsg.c (__objc_print_dtable_stats): Don't use #ifdef inside printf.
* sendmsg.c (__objc_print_dtable_stats): Don't use #ifdef inside
	printf.

From-SVN: r38931
2001-01-12 00:30:53 +00:00
Richard Earnshaw
919ee051d3 encoding.c (STRUCTURE_SIZE_BOUNDARY): Redefine in a way that determines the value dynamically.
* encoding.c (STRUCTURE_SIZE_BOUNDARY): Redefine in a way that
determines the value dynamically.

From-SVN: r38906
2001-01-11 14:01:45 +00:00
Ovidiu Predescu
1104c18d2f sendmsg.c: Added __objc_msg_forward...
Wed Jan  3 00:49:10 2001  Ovidiu Predescu  <ovidiu@cup.hp.com>

	* sendmsg.c: Added __objc_msg_forward, a hook that allows external
	libraries to provide a function that returns the real forwarding
	function. This can alleviate problems __builtin_apply() and
	friends have on various platforms. (Solution suggested by Helge
	Hess.)

	* objc/objc-api.h: Define __objc_msg_forward.

	* sendmsg.c: Define gen_rtx_REG.

From-SVN: r38652
2001-01-03 08:50:46 +00:00
Ovidiu Predescu
406515b276 Added __objc_msg_forward...
Added __objc_msg_forward, a hook that allows external libraries to
provide a function that returns the real forwarding function. This can
alleviate problems __builtin_apply() and friends have on various
platforms. (Solution suggested by Helge Hess.)

From-SVN: r38651
2001-01-03 08:49:34 +00:00
Ovidiu Predescu
68b61df962 Added __objc_msg_forward...
Added __objc_msg_forward, a hook that allows external libraries to
provide a function that returns the real forwarding function. This can
alleviate problems __builtin_apply() and friends have on various
platforms. (Solution suggested by Helge Hess.)

Define gen_rtx_REG.

From-SVN: r38650
2001-01-03 08:49:02 +00:00
Ralf Corsepius
68c9c61a01 * thr-rtems.c: New file. Stub to compile.
From-SVN: r38084
2000-12-06 18:40:42 -07:00
Alexandre Oliva
03391b53b5 Rebuilt again, something went wrong last time
From-SVN: r38066
2000-12-06 17:16:32 +00:00
Robert Lipe
162f5967da Regenerate to pick up libtool fix. Per Alexandre Oliva.
From-SVN: r38063
2000-12-06 04:06:15 +00:00
Mark Mitchell
ae499ccea4 Move statement-tree facilities from C++ to C front-end.
* c-common.h (c_tree_index): Add CTI_VOID_ZERO.
	(void_zero_node): New macro.
	(struct stmt_tree_s): New type.
	(stmt_tree): New typedef.
	(struct language_function): New type.
	(last_tree): New macro.
	(last_expr_type): Likewise.
	(walk_tree_fn): New typedef.
	(current_stmt_tree): New function.
	(begin_stmt_tree): Likewise.
	(add_stmt): Likewise.
	(finish_stmt_tree): Likewise.
	(statement_code_p): Likewise.
	(lang_statement_code_p): New variable.
	(walk_stmt_tree): New function.
	(STMT_IS_FULL_EXPR_P): New macro.
	* c-common.c (lang_statement_code_p): New variable.
	(c_common_nodes_and_builtins): Initialize void_zero_node.
	(statement_code_p): New function.
	(walk_stmt_tree): Likewise.
	* c-decl.c (language_function): Rename to ...
	(c_language_function): ... this.  Include language_function.
	(push_c_function_context): Adjust accordingly.
	(pop_c_function_context): Likewise.
	(mark_c_function_context): Likewise.
	(current_stmt_tree): Define.
	* c-semantics.c (begin_stmt_tree): New function.
	(add_stmt): Likewise.
	(prune_unused_decls): Likewise.
	(finish_stmt_tree): Likewise.

	Move statement-tree facilities from C++ to C front-end.
	* cp-tree.h (cp_tree_index): Remove CPTI_VOID_ZERO.
	(void_zero_node): Remove.
	(stmt_tree): Likewise.
	(scope_chain): Adjust.
	(language_function): Rename to cp_language_function.
	(cp_function_chain): Adjust.
	(current_stmt_tree): Remove.
	(last_tree): Likewise.
	(last_expr_type): Likewise.
	(struct lang_decl): Adjust.
	(STMT_IS_FULL_EXPR_P): Remove.
	(add_tree): Remove.
	(begin_stmt_tree): Likewise.
	(finish_stmt_tree): Likewise.
	(walk_tree_fn): Likewise.
	(walk_stmt_tree): Likewise.
	* class.c (finish_struct): Replace use of add_tree with add_stmt.
	* decl.c (mark_stmt_tree): Adjust type.
	(init_decl_processing): Don't build void_zero_node.
	(initialize_local_var): Adjust usage of current_stmt_tree.
	(finish_enum): Use add_stmt, not add_tree.
	(save_function_data): Adjust use of language_function.
	(finish_constructor_body): Use add_stmt, not add_tree.
	(finish_destructor_body): Likewise.
	(push_cp_function_context): Adjust use of language_function.
	(pop_cp_function_context): Likewise.
	(mark_lang_function): Likewise.
	(mark_cp_function_context): Likewise.
	* init.c (build_aggr_init): Adjust use of current_stmt_tree.
	(build_vec_init): Likewise.
	* semantics.c (SET_LAST_STMT): Remove.
	(RECHAIN_STMTS): Don't use it.
	(stmts_are_full_exprs_p): Adjust use of current_stmt_tree.
	(current_stmt_tree): Define.
	(add_tree): Remove.
	(finish_goto_stmt): Use add_stmt, not add_tree.
	(finish_expr_stmt): Likewise.
	(begin_if_stmt): Likewise.
	(finish_then_clause): Likewise.
	(begin_while_stmt): Likewise.
	(begin_do_stmt): Likewise.
	(finish_return_stmt): Likewise.
	(begin_for_stmt): Likewise.
	(finish_break_stmt): Likewise.
	(finish_continue_stmt): Likewise.
	(begin_switch_stmt): Likewise.
	(finish_case_label): Likewise.
	(begin_try_block): Likewise.
	(begin_function_try_block): Likewise.
	(begin_handler): Likewise.
	(begin_catch_block): Likewise.
	(begin_compound_stmt): Likewise.
	(begin_asm_stmt): Likewise.
	(finish_asm_stmt): Likewise.
	(finish_label_stmt): Likewise.
	(add_decl_stmt): Likewise.
	(finish_subobject): Likewise.
	(finish_decl_cleanup): Likewise.
	(finish_named_return_value): Likewise.
	(setup_vtbl_ptr): Likewise.
	(add_scope_stmt): Likewise.
	(finish_stmt_expr): Likewise.
	(prune_unused_decls): Remove.
	(begin_stmt_tree): Likewise.
	(finish_stmt_tree): Likewise.
	(prep_stmt): Adjust use of current_stmt_tree.
	(lang_expand_stmt): Likewise.
	* tree.c (statement_code_p): Remove.
	(cp_statement_code_p): New function.
	(walk_stmt_tree): Remove.
	(init_tree): Set lang_statement_code_p.

From-SVN: r36221
2000-09-07 01:36:11 +00:00
Alexandre Oliva
6d93bca4fe * configure: Rebuilt with new libtool.m4.
From-SVN: r36199
2000-09-06 14:08:04 +00:00
Ovidiu Predescu
9d10fcf978 configure.in: Create a config.h file.
Tue Aug 15 00:38:56 2000  Ovidiu Predescu  <ovidiu@cup.hp.com>

	* configure.in: Create a config.h file. Check for <sched.h>.
	* configure: Regenerate.

	* config.h.in: Check for <sched.h>.

From-SVN: r35698
2000-08-15 07:39:20 +00:00
Ovidiu Predescu
f3fc0ba86b Check for <sched.h>.
From-SVN: r35697
2000-08-15 07:38:54 +00:00
Ovidiu Predescu
d972a4c286 Create a config.h file. Check for <sched.h>.
From-SVN: r35696
2000-08-15 07:38:04 +00:00
Zack Weinberg
57119aa9eb top level:
* configure: Make enable_threads and enable_shared defaults
	explicit.  Substitute enable_threads into generated Makefiles.
	* configure.in: Accept *-*-linux* not just *-*-linux-gnu*.
	* libtool.m4: Accept *-*-linux* not just *-*-linux-gnu*.
gcc:
	* configure.in: Accept *-*-linux* not just *-*-linux-gnu*.
	* fixinc/inclhack.def: Likewise.
	* fixinc/mkfixinc.sh: Likewise.
	* configure: Regenerate.
	* fixinc/fixincl.x: Regenerate.
	* install.texi: Document equivalence of linux and linux-gnu.
libio:
	* configure.in: Accept *-*-linux* not just *-*-linux-gnu*.
	Honor --disable-threads.
libstdc++:
	* configure.in: Accept *-*-linux* not just *-*-linux-gnu*.
	Honor --disable-threads.
libstdc++-v3:
	* configure: Regenerate after change to ../libtool.m4.
libobjc:
	* configure: Regenerate after change to ../libtool.m4.

From-SVN: r35680
2000-08-14 18:08:46 +00:00
Andreas Schwab
b310e72532 * objc-features.texi (Top): Move @menu at end of node.
From-SVN: r35674
2000-08-14 08:06:53 -06:00
Manfred Hollstein
82fbe83592 * objc-features.texi: Move @node Top before @menu.
From-SVN: r35643
2000-08-11 15:25:29 -06:00
Ovidiu Predescu
b3dc253f84 objc-features.texi: Documented the new -fconstant-string-class option.
Sun Aug  6 23:27:49 2000  Ovidiu Predescu  <ovidiu@cup.hp.com>

	* objc-features.texi: Documented the new -fconstant-string-class
	option.

From-SVN: r35538
2000-08-07 06:28:07 +00:00
Ovidiu Predescu
9f942e8c17 Documented the new -fconstant-string-class option.
From-SVN: r35537
2000-08-07 06:27:47 +00:00
Ovidiu Predescu
9bc3876e69 thr-posix.c: Integrated Chris Ball's <cball@fmco.com> changes to improve the Posix thread...
Sun Aug  6 22:51:16 2000  Ovidiu Predescu  <ovidiu@cup.hp.com>

	* thr-posix.c: Integrated Chris Ball's <cball@fmco.com> changes to
	improve the Posix thread support for Objective-C.

From-SVN: r35536
2000-08-07 05:51:41 +00:00
Ovidiu Predescu
54359cf93b Integrated Chris Ball's <cball@fmco.com> changes to improve the Posix
thread support for Objective-C.

From-SVN: r35535
2000-08-07 05:51:14 +00:00
Zack Weinberg
8cab40f72e aclocal.m4: Replace copy of ../libtool.m4 with sinclude(../libtool.m4).
* aclocal.m4: Replace copy of ../libtool.m4 with
	sinclude(../libtool.m4).

From-SVN: r35502
2000-08-05 01:13:37 +00:00
Nicola Pero
c161c99b43 Added libtool support for building libobjc.
From-SVN: r35329
2000-07-29 19:19:43 +00:00
Ovidiu Predescu
9c14a607e8 Removed the explicit prototypes for strlen and memcpy on 64-bit
platforms (Suggested by Rodney Brown <rdb@cup.hp.com>).

From-SVN: r35326
2000-07-29 07:11:04 +00:00
H.J. Lu
15794a9567 Applied H.J.Lu's patch to not require -lpthread when compiling single threaded Objective-C programs.
From-SVN: r35141
2000-07-20 07:27:26 +00:00
Kaveh R. Ghazi
8dd8d754d2 * objc/hash.h: Include string.h.
From-SVN: r35019
2000-07-13 18:56:49 +00:00