summaryrefslogtreecommitdiff
path: root/gcc/melt-runtime.h
Commit message (Collapse)AuthorAgeFilesLines
* [./]bstarynk2013-11-221-1/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | 2013-11-22 Basile Starynkevitch <basile@starynkevitch.net> {{merge with trunk GCC 4.9 svn rev 205247 now in stage 3}} [gcc/] 2013-11-22 Basile Starynkevitch <basile@starynkevitch.net> {{merge with trunk GCC 4.9 svn rev 205247 now in stage 3}} * Makefile.in (MELT_GCC_VERSION_NUM): New make variable. (melt-run-md5.h, melt-run.h): Use it. * melt-runtime.cc: With GCC 4.9 include print-tree.h, gimple-iterator.h, gimple-walk.h. (meltgc_start_all_new_modules, meltgc_start_flavored_module) (meltgc_do_initial_mode, meltgc_set_user_options) (meltgc_load_modules_and_do_mode): Improve debugprintf... (melt_gt_ggc_mx_gimple_seq_d): Handle GCC 4.9 specifically. * melt-runtime.h (gt_ggc_mx_gimple_statement_d): Temporarily define this macro. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/melt-branch@205264 138bc75d-0d04-0410-961f-82ee72b054a4
* [./]bstarynk2013-11-121-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2013-11-12 Basile Starynkevitch <basile@starynkevitch.net> {{merge with trunk GCC 4.9 svn rev 204695; previous trunk merge was 202773; very unstable...}} [gcc/] 2013-11-11 Basile Starynkevitch <basile@starynkevitch.net> {{merge with trunk GCC 4.9 svn rev 204695; very unstable}} * melt-runtime.h (MELT_VERSION_STRING): Bump to "1.0.1+". * melt-run.proto.h: Update copyright years. include tree-cfg.h instead of tree-flow.h for GCC 4.9. * melt-runtime.cc: Include tree-cfg.h not tree-flow.h for GCC 4.9. (meltgc_walk_gimple_seq): Fatal error with GCC 4.9 since the walk_use_def_chains function disappeared from GCC... * melt/xtramelt-ana-gimple.melt (walk_gimple_seq) (walk_gimple_seq_unique_tree): issue some #warning-s for GCC 4.9 because walk_use_def_chains function disappeared from GCC... * melt/xtramelt-probe.melt (probe_docmd): Issue an error since currently the MELT probe is not usable with GCC 4.9.... git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/melt-branch@204705 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-11-06 Basile Starynkevitch <basile@starynkevitch.net>bstarynk2013-11-071-1/+1
| | | | | | | | | | | | | | | | | | {{1.0.1 release}} * INSTALL/README-MELT-PLUGIN: Mention 1.0.1 release & unifdef. [gcc/] 2013-11-07 Basile Starynkevitch <basile@starynkevitch.net> * melt-runtime.h (MELT_VERSION_STRING): Bump to "1.0.1". [contrib/] 2013-11-07 Basile Starynkevitch <basile@starynkevitch.net> * MELT-Plugin-Makefile: Improve message for missing GCC plugin kit. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/melt-branch@204511 138bc75d-0d04-0410-961f-82ee72b054a4
* [.]bstarynk2013-11-051-1/+1
| | | | | | | | | | | | | | | | | | | | | | 2013-10-29 Basile Starynkevitch <basile@starynkevitch.net> {{1.0.1 release candidate 1}} [gcc/] 2013-11-05 Basile Starynkevitch <basile@starynkevitch.net> {{Bug MELT-SFT-6 probably fixed by a shameful hack to circumvent a bug in GCC 4.7 gengtype...}} * melt-runtime.h (MELT_VERSION_STRING): Bump to "1.0.1-rc1". [contrib/] 2013-11-05 Basile Starynkevitch <basile@starynkevitch.net> * MELT-Plugin-Makefile: Shameful hack around gengtype bug in GCC 4.7. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/melt-branch@204421 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-11-05 Basile Starynkevitch <basile@starynkevitch.net>bstarynk2013-11-051-1/+1
| | | | | | | | | | | | | | {{tentative fix for bug MELT-STF-6 https://sourceforge.net/p/gcc-melt/tickets/6/}} * melt-runtime.h (MELT_VERSION_STR): Bump to "1.0.1-pre" * melt/warmelt-modes.melt (generate_runtypesupport_gty): Nest correctly the emission of MELT_NO_CONVERSION_OPERATOR preprocessor #ifndef/#endif ... BTW, this flag might be useless now... git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/melt-branch@204384 138bc75d-0d04-0410-961f-82ee72b054a4
* [./]bstarynk2013-10-291-1/+1
| | | | | | | | | | | | | | | | | | 2013-10-29 Basile Starynkevitch <basile@starynkevitch.net> {{1.0 release}} * INSTALL/README-MELT-PLUGIN: Improve. [gcc/] 2013-10-29 Basile Starynkevitch <basile@starynkevitch.net> {{MELT plugin 1.0 release}} * melt-module.mk: Remove info about GCCMELTGEN_BUILD. * melt-runtime.h (MELT_VERSION_STR): Bump to "1.0" git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/melt-branch@204149 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-10-28 Basile Starynkevitch <basile@starynkevitch.net>bstarynk2013-10-281-1/+1
| | | | | | | | | * melt-runtime.h (MELT_VERSION_STRING): Bump to "1.0-rc3+". Should be the 1.0 release.... git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/melt-branch@204133 138bc75d-0d04-0410-961f-82ee72b054a4
* [./]bstarynk2013-10-271-1/+1
| | | | | | | | | | | | | | 2013-10-27 Basile Starynkevitch <basile@starynkevitch.net> {{1.0-rc3 release candidate}} [gcc/] 2013-10-27 Basile Starynkevitch <basile@starynkevitch.net> {{1.0-rc3 release candidate}} * melt-runtime.h (MELT_VERSION_STR): Bump to "1.0-rc3" ... git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/melt-branch@204105 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-10-25 Basile Starynkevitch <basile@starynkevitch.net>bstarynk2013-10-251-1/+1
| | | | | | | | * melt-runtime.h (MELT_VERSION_STR): Bump to "1.0-rc2+". git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/melt-branch@204060 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-10-23 Basile Starynkevitch <basile@starynkevitch.net>bstarynk2013-10-231-1/+1
| | | | | | | | | | | | | | {{1.0-rc2 release candidate}} [gcc/] 2013-10-23 Basile Starynkevitch <basile@starynkevitch.net> {{1.0-rc2 = MELT plugin 1.0 release candidate 2}} * melt-runtime.h (MELT_VERSION_STRING): Bump to "1.0-rc2". git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/melt-branch@203972 138bc75d-0d04-0410-961f-82ee72b054a4
* [./]bstarynk2013-10-231-1/+1
| | | | | | | | | | | | | | | | | | | | | | | 2013-10-23 Basile Starynkevitch <basile@starynkevitch.net> * INSTALL/README-MELT-PLUGIN: Almost complete for 1.0 improvements. [gcc/] 2013-10-23 Basile Starynkevitch <basile@starynkevitch.net> * melt-runtime.h (MELT_VERSION_STRING): Bump to "1.0-rc2almost". * melt/warmelt-first.melt (hook_symbol_importer): Don't show warnings for warmelt-* modules unless bootsrapping. This is a shameful kludge. * melt/warmelt-base.melt (melt_make_sexpr): Remove all debug. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/melt-branch@203953 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-10-19 Basile Starynkevitch <basile@starynkevitch.net>bstarynk2013-10-191-1/+1
| | | | | | | | | | | | | | | | | | {{MELT-SFT-4 fixed}} * melt-runtime.h (MELT_VERSION_STRING): Bump to 1.0-rc2quasi. * melt/warmelt-macro.melt (mexpand_gccif, gccif) (mexpandobsolete_container, container): Remove since moved to warmelt-moremacro.melt file... (install_initial_patmacro, mexpand_reference) (patexpand_reference): Export functions. * melt/warmelt-moremacro.melt (mexpand_gccif, gccif) (mexpandobsolete_container, container): Moved here. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/melt-branch@203845 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-10-17 Basile Starynkevitch <basile@starynkevitch.net>bstarynk2013-10-171-1/+1
| | | | | | | | | | | | | | | {{remove temporary -fmelt-plugin-arg-use-base-env option}} * melt-runtime.h (MELT_VERSION_STRING): Bump to 1.0-rc2- * melt/warmelt-normal.melt (normexp_macro_installation): No more use-base-env... * melt/warmelt-outobj.melt (translate_macroexpanded_list): Likewise... git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/melt-branch@203776 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-10-14 Basile Starynkevitch <basile@starynkevitch.net>bstarynk2013-10-141-1/+1
| | | | | | | | * melt-runtime.h (MELT_VERSION_STRING): Bump to 1.0-rc1+ git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/melt-branch@203564 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-10-03 Basile Starynkevitch <basile@starynkevitch.net>bstarynk2013-10-031-1/+1
| | | | | | | | | | | | | | | | | | | | | {{MELT 1.0 rc1 release candidate}} [contrib/] 2013-10-03 Basile Starynkevitch <basile@starynkevitch.net> * MELT-Plugin-Makefile (melt-gendoc): Test that we have a texi2html and a texi2pdf utility. (install-melt-sources): Test that melt-normal.cc [not old melt-normal.c] has been generated. [gcc/] 2013-10-03 Basile Starynkevitch <basile@starynkevitch.net> * melt-runtime.h (MELT_VERSION_STRING): Update to 1.0-rc1 git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/melt-branch@203184 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-10-03 Basile Starynkevitch <basile@starynkevitch.net>bstarynk2013-10-031-1/+1
| | | | | | | | | | | * melt-runtime.h (MELT_VERSION_STRING): Update to 1.0-pre... * melt-runtime.cc (melt_really_initialize): Improve warning when without mode. (melt_dbgbacktrace): Replace & by && in test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/melt-branch@203154 138bc75d-0d04-0410-961f-82ee72b054a4
* [contrib/]bstarynk2013-10-021-0/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2013-10-02 Basile Starynkevitch <basile@starynkevitch.net> * MELT-Plugin-Makefile: (_melt-runtime.c, _meltrunsup-inc.c): Correct rules. (melt.so): Use GCCMELT_CXX & MELT_RUNTIME_CC. [gcc/] 2013-10-02 Basile Starynkevitch <basile@starynkevitch.net> * Makefile.in (melt-build-param.sh): Generate for C++ only, so use GCCMELT_CC1PLUS instead of GCCMELT_CC1, GCCMELT_RUNTIME_CC etc etc... * melt-build-script.tpl: Use GCCMELT_CC1PLUS, GCCMELT_CC1PLUS_PREFIX etc.., likewise. * melt-build-script.sh: Regenerate. * melt-run.proto.h (gt_ggc_mx_melt_un): Move declaration to melt-runtime.h file. * melt-runtime.h (gt_ggc_mx_melt_un): Add declaration. (Melt_CallProtoFrame, debug_hook, debug_closure, dbg_file) (dbg_line): Add stub methods to Melt_CallProtoFrame class. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/melt-branch@203105 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-09-30 Basile Starynkevitch <basile@starynkevitch.net>bstarynk2013-09-301-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * melt-runtime.h (melt_pass_instance_counter) (melt_current_pass_index_var): New extern variable. * melt-runtime.cc: Ditto. * melt/generated/meltrunsup.h (melthookproc_HOOK_PASS_EXECUTION): Add third ptype long parameter. * melt/generated/meltrunsup-inc.cc: Ditto. * melt/warmelt-hooks.melt (melt_pass_execution_hook_callback): pass the type number. (hook_pass_execution): Handle that type number. Don't accumulate results. (register_pass_execution_first, register_pass_execution_last): Improve :doc string. * melt/xtramelt-ana-base.melt (melt_gimple_pass) (melt_simple_ipa_pass): Handle the pass index. * melt/xtramelt-ana-simple.melt (justshowpass) (justshowpasses_docmd): New functions. (justshowpasses_mode): New justshowpasses mode. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/melt-branch@203029 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-09-17 Basile Starynkevitch <basile@starynkevitch.net>bstarynk2013-09-171-4/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | {{The branch should now accept -fplugin-arg-melt-* arguments like -fmelt ones and ignore -fplugin=melt; arbitrary arguments are permitted, like in plugin mode...}} * common.opt: Revert to trunk. No more MELT specific options. * melt-runtime.h (melt_flag_debug, melt_flag_bootstrapping): Declared both for branch and plugin. * melt-runtime.cc: include <map> header. (melt_flag_debug, melt_flag_bootstrapping) (melt_flag_generate_work_link): Declared both for branch and plugin. (melt_branch_argument_map): New variable in branch. (melt_branch_argument_processing): New function. (melt_argument): In branch, use melt_branch_argument_map. (melt_really_initialize): Less branch specific code. * toplevel.c (toplev_main): Call melt_branch_argument_processing. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/melt-branch@202665 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-09-10 Basile Starynkevitch <basile@starynkevitch.net>bstarynk2013-09-101-1/+5
| | | | | | | | | | * melt-runtime.h (MELT_FLEXIBLE_DIM, MELT_HAVE_FLEXIBLE_DIM): Set with GCC or Clang or when MELT_FORCE_FLEXIBLE_DIM is set and MELT_FORCE_INFLEXIBLE_DIM is false. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/melt-branch@202422 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-09-04 Basile Starynkevitch <basile@starynkevitch.net>bstarynk2013-09-051-398/+491
| | | | | | | | | * melt-runtime.h: Reindented with astyle --style=gnu -s2 command. * melt-runtime.cc: Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/melt-branch@202287 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-09-04 Basile Starynkevitch <basile@starynkevitch.net>bstarynk2013-09-051-1/+0
| | | | | | | | | | | | | | | | | | | | | | | {{C++ifying the MELT runtime}} * melt-runtime.h (melt_nb_modules): Remove. * melt-runtime.cc: Include <string.h>, <string>, <vector> headers. (MELT_MODULE_MAGIC, MELT_EXTENSION_MAGIC): Remove #define. (struct melt_module_info_st, struct melt_modulinfovec_st, struct melt_extension_info_st, struct meltextinfovec_st) (melt_modulinfo, melt_extinfo): Remove. (Melt_Module, Melt_Plain_Module, Melt_Extension_Module): New classes. (Melt_Module::Melt_Module, Melt_Module::initialize): New. (melt_marking_callback, melt_minor_copying_garbage_collector) (melt_dlsym_all, melt_load_module_index, meltgc_run_cc_extension) (meltgc_start_module_by_index, meltgc_start_all_new_modules) (meltgc_load_modules_and_do_mode, melt_really_initialize) (melt_fatal_info): Adapt to use Melt_Module. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/melt-branch@202285 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-09-03 Basile Starynkevitch <basile@starynkevitch.net>bstarynk2013-09-031-2/+2
| | | | | | | | | * melt-runtime.h (MELT_FLEXIBLE_DIM): Define as 1 for standard compliance. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/melt-branch@202219 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-07-31 Basile Starynkevitch <basile@starynkevitch.net>bstarynk2013-07-311-1/+1
| | | | | | | | | | | | | | | | | | | | | | | * melt-runtime.h (melt_fatal_info): Declare as MELT_EXTERN. * melt/warmelt-first.melt (melt_assert_failure_fun): New function. (variadic_ctype, variadic_index, variadic_length, variadic_skip) (variadic_type_code): Moved from warmelt-base.melt file. * melt/warmelt-base.melt (variadic_ctype, variadic_index) (variadic_length, variadic_skip) (variadic_type_code): Removed since moved to warmelt-first.melt file above. * melt/warmelt-macro.melt (mexpand_assert_msg): Now more variadic and expanded to call to melt_assert_failure_fun. * melt/xtramelt-ana-base.melt: Most assert_msg got new variadic arguments. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/melt-branch@201366 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-07-18 Basile Starynkevitch <basile@starynkevitch.net>bstarynk2013-07-181-1/+21
| | | | | | | | | | | | | | | | | | | | | | * melt-runtime.h (Melt_CallProtoFrame::call_depth) (Melt_CallProtoFrame::call_deeper_than): New member functions. (Melt_CallProtoFrame::top_call_depth) (Melt_CallProtoFrame::top_call_deeper_than): New static functions. * melt-runtime.c (melt_apply): Call melt_fatal_error when too deep application... * melt/warmelt-base.melt (melt_call_deeper_than, melt_call_depth): New primitives. * melt/warmelt-macro.melt (macroexpand_1): Warn when excessive call depth. * testsuite/melt/tmacro-1.melt: Retrieve the first argument of a macro. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/melt-branch@201028 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-07-09 Basile Starynkevitch <basile@starynkevitch.net>bstarynk2013-07-121-1/+1
| | | | | | | | | | | | | | | * melt-runtime.h (melt_default_depth): Declare MELT_EXTERN. * melt/warmelt-base.melt: The loc formal argument can be some located object. * melt/warmelt-macro.melt (mexpand_debug): More debug. * testsuite/melt/tmacro-1.melt: New file. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/melt-branch@200923 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-07-05 Basile Starynkevitch <basile@starynkevitch.net>bstarynk2013-07-061-117/+2
| | | | | | | | | | | | | | {{keep only the classy frames}} * melt-runtime.h (melt_check_call_frames): Empty macro. Keep only the classy frames, so remove #if MELT_HAVE_CLASSY_FRAME.... * melt-runtime.c: Keep only the classy frames, so remove #if MELT_HAVE_CLASSY_FRAME.... (melt_check_call_frames_at): Remove. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/melt-branch@200735 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-07-06 Basile Starynkevitch <basile@starynkevitch.net>bstarynk2013-07-061-3/+15
| | | | | | | | | | | | | | | | | | | | | {{classy frames fully working}} * melt-runtime.h (MELT_HAVE_CLASSY_FRAME): Define to 1. (Melt_CallFrame): Use #if ENABLE_CHECKING instead of #if MELT_HAVE_DEBUG to enable the dbg_file etc... * melt-runtime.c (melt_dbgbacktrace, melt_dbgshortbacktrace): Shameful hack around a bug elsewhere; Don't compile the cfr->dbg_file() case when GCCMELT_CHECKMELTRUNTIME. * melt-build-script.tpl: The checkruntime case gets -DGCCMELT_CHECKMELTRUNTIME preprocessor flag. * melt-build-script.sh: Regenerate. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/melt-branch@200729 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-07-05 Basile Starynkevitch <basile@starynkevitch.net>bstarynk2013-07-051-14/+19
| | | | | | | | | | | | | | | | | | | * melt-runtime.h (Melt_CallProtoFrame, Melt_CallFrame) (Melt_CallFrameWithValues): Use #if ENABLE_CHECKING not MELT_HAVE_DEBUG. * melt-runtime.c (melt_really_initialize): Likewise. (melt_dbgbacktrace, melt_dbgshortbacktrace): Use the dbg_file() when relevant. * melt/warmelt-outobj.melt (output_curframe_declstruct): Emit ENABLE_CHECKING, not MELT_HAVE_DEBUG. (outpucod_initialmoduleroutine): Don't emit the melt_sparebreakpoint_0. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/melt-branch@200717 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-07-05 Basile Starynkevitch <basile@starynkevitch.net>bstarynk2013-07-051-3/+6
| | | | | | | | | | | | | | | | | | * melt-runtime.h (melt_sparebreakpoint_0_at) (melt_sparebreakpoint_1_at, melt_sparebreakpoint_2_at): Declare as MELT_EXTERN functions. (melt_sparebreakpoint_0): New macro. * melt-runtime.c (melt_really_initialize): Write a comment in dbgfile about GCCMELT_DEBUG_CALL_FRAME environemnt variable. (melt_sparebreakpoint_0_at): New function. * melt/warmelt-outobj.melt (outpucod_initialmoduleroutine): Emit debug printing and call to melt_sparebreakpoint_0. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/melt-branch@200714 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-07-04 Basile Starynkevitch <basile@starynkevitch.net>bstarynk2013-07-041-1/+1
| | | | | | | | | | {{First MELT bootstrap with classy frames, but optimized flavour dont work!}} * melt-runtime.h (MELT_HAVE_CLASSY_FRAME): Can be set to 1. (Melt_CallProtoFrame): Improve dbgcall_file print. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/melt-branch@200675 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-07-04 Basile Starynkevitch <basile@starynkevitch.net>bstarynk2013-07-041-2/+3
| | | | | | | | | | | | * melt-runtime.h (Melt_CallProtoFrame::Melt_CallProtoFrame): Move call to melt_clear_rest_of_frame after the debug printing. * melt/warmelt-outobj.melt (output_curframe_declstruct_init): Emit a debugprint of the sizeof Melt_InitialFrame... git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/melt-branch@200668 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-07-03 Basile Starynkevitch <basile@starynkevitch.net>bstarynk2013-07-031-2/+3
| | | | | | | | | | | * melt-runtime.h (Melt_CallProtoFrame): Use the basename of the file name. * melt/warmelt-first.melt (hook_intern_symbol): Add debugeprintf. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/melt-branch@200644 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-07-03 Basile Starynkevitch <basile@starynkevitch.net>bstarynk2013-07-031-11/+28
| | | | | | | | | | | | | | | * melt-runtime.h (Melt_CallProtoFrame::_top_call_frame_): Replaced by global melt_top_call_frame. (Melt_CallFrameWithValues): Ensure mcfr_varptr has at least one cell, even for empty frames. Add debuggc messages. (melt_curframdepth): Use melt_top_call_frame. * melt-runtime.c (melt_top_call_frame): Declare. (melt_marking_callback, melt_minor_copying_garbage_collector) (melt_dbgbacktrace, melt_dbgshortbacktrace): Use it. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/melt-branch@200642 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-07-03 Basile Starynkevitch <basile@starynkevitch.net>bstarynk2013-07-031-1/+4
| | | | | | | | | | | * melt-runtime.h (Melt_CallFrameWithValues::melt_forward_values): Also forward the current value, that is the hook or closure. (Melt_CallFrameWithValues::melt_mark_values): Also mark the current value, that is the hook or closure. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/melt-branch@200639 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-07-03 Basile Starynkevitch <basile@starynkevitch.net>bstarynk2013-07-031-74/+97
| | | | | | | | | | | | | | | | | | * melt-runtime.h (Melt_CallProtoFrame): New class, dealing with debugging and with linking frames. (Melt_CallFrame): Use it. * melt-runtime.c: Likewise. * toplev.c (general_init): When ENABLE_CHECKING remove the signal handlers. * melt/warmelt-outobj.melt (output_curframe_declstruct_init): Emit file and line information for frames in debugging mode. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/melt-branch@200633 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-07-03 Basile Starynkevitch <basile@starynkevitch.net>bstarynk2013-07-031-5/+14
| | | | | | | | | | * melt-runtime.h (Melt_CallFrame): Declare _dbgcall_count_ when debugging and use it. * melt-runtime.c (Melt_CallFrame::_dbgcall_count_): Define. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/melt-branch@200632 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-07-02 Basile Starynkevitch <basile@starynkevitch.net>bstarynk2013-07-021-1/+13
| | | | | | | | * melt-runtime.h (Melt_CallFrame): Improve debugging constructors. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/melt-branch@200622 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-07-02 Basile Starynkevitch <basile@starynkevitch.net>bstarynk2013-07-021-7/+8
| | | | | | | | | | | * melt-runtime.h (Melt_CallFrame): Improve, works with MELT_HAVE_DEBUG. * melt/warmelt-outobj.melt (output_curframe_declstruct): Bette emission of the constructor in debug mode. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/melt-branch@200615 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-07-02 Basile Starynkevitch <basile@starynkevitch.net>bstarynk2013-07-021-1/+26
| | | | | | | | | | | | | | | | | {{Classy frame variant compiles but crashes}} * melt-runtime.h (Melt_CallFrame::_dbgcall_file_): New static member. (Melt_CallFrame): Provide constructors with file and line. (Melt_CallFrame::set_debug_file): New function. * melt-runtime.c (Melt_CallFrame::_dbgcall_file_): Define. (melt_really_initialize): Use GCCMELT_DEBUG_CALL_FRAME environment variable for debugging the call frame. (melt_do_finalize): clear the debug file for frames. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/melt-branch@200612 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-07-02 Basile Starynkevitch <basile@starynkevitch.net>bstarynk2013-07-021-2/+56
| | | | | | | | | | | | | | | * melt-runtime.h (Melt_CallFrame): Add fields meltcf_dbgfile & meltcf_dbgline when debugging. Also add constructor. (Melt_CallFrameWithValues): Likewise. (MELT_ENTERFRAME_AT): Provide debugging variant. * melt/warmelt-outobj.melt (outcinitfill_objinithook) (output_curframe_declstruct): Emit the frames with a debugging constructor, and add many emitted fromline comments. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/melt-branch@200606 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-06-28 Basile Starynkevitch <basile@starynkevitch.net>bstarynk2013-06-281-0/+10
| | | | | | | | | | * melt/warmelt-outobj.melt (output_curframe_declstruct): Better handling of initial frames. Emit appropriate meltinitial_frame_t typedef. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/melt-branch@200526 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-06-28 Basile Starynkevitch <basile@starynkevitch.net>bstarynk2013-06-281-11/+8
| | | | | | | | | | | | | | | | | | | | | * melt-runtime.h (melt_low_stderr_value_at): Always perform the output. (Melt_CallFrame): Improve meltcast in current_closure & current_hook... * melt-runtime.c (melt_marking_callback): Becoming non-static. Use mcf->current() for classy frames. (meltgc_reference_put, meltgc_readmacrostringsequence) (meltgc_new_file, meltgc_output_file, melt_val2passflag): Add cast to melt_ptr_t. (melt_dbgbacktrace): Fix typo for classy frames. (meltgc_walkstmt_cb, meltgc_walktree_cb): Fix for classy frames. * melt/warmelt-outobj.melt (output_curframe_declstruct): For classy frames emit a mcfr_varnum field. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/melt-branch@200516 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-06-28 Basile Starynkevitch <basile@starynkevitch.net>bstarynk2013-06-281-0/+20
| | | | | | | | | | | | | | | | | * melt-runtime.h (melt_low_stderr_value) (melt_low_stderr_value_at): New macros. (Melt_CallFrame): current_closure, current_hook: New member functions. * melt-runtime.c (melt_errprint_dladdr): New utility function. (melt_dbgbacktrace, melt_dbgshortbacktrace): Show backtrace with classy frames. Use melt_errprint_dladdr. * melt/warmelt-modes.melt (generate_runtypesupport_enum_objmagic): Emit newline. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/melt-branch@200514 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-06-28 Basile Starynkevitch <basile@starynkevitch.net>bstarynk2013-06-281-0/+4
| | | | | | | | | | | | | | | | | | * melt-predef.list (HOOK_LOW_STDERR_VALUE_AT): New. * melt-runtime.h (Melt_CallFrame): Add member functions top_call_frame, previous_frame, srcloc, current. * melt-runtime.c (melt_dbgbacktrace): adding classy call frame support. * melt/warmelt-debug.melt (debug_msg_fun): Cosmetical changes. * melt/warmelt-hooks.melt (hook_low_stderr_value_at): New hook. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/melt-branch@200502 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-06-27 Basile Starynkevitch <basile@starynkevitch.net>bstarynk2013-06-271-31/+0
| | | | | | | | | | | | | | * melt-runtime.h (meltgc_new_mult1, meltgc_new_mult2) (meltgc_new_mult3, meltgc_new_mult4, meltgc_new_mult5) (meltgc_new_mult6, meltgc_new_mult7): Remove declarations. * melt-runtime.c (meltgc_new_mult1, meltgc_new_mult2) (meltgc_new_mult3, meltgc_new_mult4, meltgc_new_mult5) (meltgc_new_mult6, meltgc_new_mult7): Remove function definitions. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/melt-branch@200476 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-06-27 Basile Starynkevitch <basile@starynkevitch.net>bstarynk2013-06-271-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | * melt-runtime.h (Melt_CallFrame): The melt_marking_callback is a friend. * melt-runtime.c (meltgc_make_special, meltgc_make_specialdata) (meltgc_new_int, meltgc_new_mixint, meltgc_new_mixloc) (meltgc_new_mixbigint_mpz, meltgc_new_routine, meltgc_new_closure) (meltgc_new_strbuf, meltgc_new_raw_object, meltgc_new_multiple) (meltgc_new_subseq_multiple, meltgc_new_mult1, meltgc_new_mult2) (meltgc_new_mult3, meltgc_new_mult4, meltgc_new_mult5) (meltgc_new_mult6, meltgc_new_mult7, meltgc_new_list) (meltgc_new_pair, meltgc_prepend_list, meltgc_new_mapobjects) (meltgc_new_mapstrings, meltgc_raw_new_mappointers) (meltgc_new_string_raw_len, meltgc_new_longsbucket): Calls to meltgc_allocate are casted. * melt/warmelt-base.melt (valdesc_mapobjects, valdesc_mapstrings) (valdesc_multiple, valdesc_string, valdesc_list): Add casts in cloning part. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/melt-branch@200473 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-06-27 Basile Starynkevitch <basile@starynkevitch.net>bstarynk2013-06-271-1/+2
| | | | | | | | | | | | * melt-runtime.h (MELT_ENTERFRAME_AT): For classy frames, pass their explicit size to constructor. * melt/warmelt-modes.melt (generate_runtypesupport_boxingfun): Emit explicit casts. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/melt-branch@200457 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-06-27 Basile Starynkevitch <basile@starynkevitch.net>bstarynk2013-06-271-215/+110
| | | | | | | | | | | | | | | | | * melt-run.proto.h: Just include from "c-family/c-pragma.h" since GCC 4.6 support is gone... * melt-runtime.h: More comments for #if and #endif. (MELT_FLEXIBLE_DIM): Keep only C++ case. Reorganized oldstyle frames so that mcfr_flocs is always defined. MELT_LOCATION* macros simplified with "if (MELT_HAVE_DEBUG)".... * melt/warmelt-outobj.melt (output_curframe_declstruct): Field declaration mcfr_flocs is always emitted. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/melt-branch@200456 138bc75d-0d04-0410-961f-82ee72b054a4
* 2013-06-27 Basile Starynkevitch <basile@starynkevitch.net>bstarynk2013-06-271-10/+24
| | | | | | | | | | | | | * melt-runtime.h (melt_warning_at_strbuf) Typos in comments. (melt_dynobjstruct_getfield_object_at) (melt_dynobjstruct_putfield_object_at, melt_getfield_object_at) (melt_putfield_object_at): Mention MELT in error messages. (Melt_CallFrame::melt_clear_rest_of_frame): New member function. (Melt_CallFrameWithValues): Call it. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/melt-branch@200455 138bc75d-0d04-0410-961f-82ee72b054a4