Permalink
Browse files

[sub] Added helper functions Parrot_Sub_get_line_from_pc() and

Parrot_sub_get_filename_from_pc(), intended for a lighter weight version of
Parrot_Context_get_info().

git-svn-id: https://svn.parrot.org/parrot/trunk@41199 d31e2699-5ff4-0310-a27c-f18f2fbe73fe
  • Loading branch information...
1 parent 1a35011 commit 10a76c3a5c4d133af55c5fe4c123d656f1e1e01c @chromatic chromatic committed Sep 11, 2009
Showing with 541 additions and 0 deletions.
  1. +64 −0 .gitignore
  2. +2 −0 compilers/data_json/.gitignore
  3. +2 −0 compilers/data_json/data_json/.gitignore
  4. +11 −0 compilers/imcc/.gitignore
  5. +2 −0 compilers/json/.gitignore
  6. +2 −0 compilers/json/JSON/.gitignore
  7. +2 −0 compilers/ncigen/.gitignore
  8. +3 −0 compilers/ncigen/src/.gitignore
  9. +2 −0 compilers/nqp/.gitignore
  10. +2 −0 compilers/nqp/bootstrap/.gitignore
  11. +1 −0 compilers/nqp/src/.gitignore
  12. +2 −0 compilers/pct/.gitignore
  13. +1 −0 compilers/pct/src/POST/.gitignore
  14. +4 −0 compilers/pge/.gitignore
  15. +2 −0 compilers/pge/PGE/.gitignore
  16. +6 −0 compilers/pirc/.gitignore
  17. +6 −0 compilers/pirc/t/.gitignore
  18. +1 −0 compilers/tge/.gitignore
  19. +1 −0 compilers/tge/TGE/.gitignore
  20. +1 −0 config/gen/call_list/.gitignore
  21. +5 −0 docs/.gitignore
  22. +1 −0 docs/book/.gitignore
  23. +1 −0 docs/ops/.gitignore
  24. +4 −0 editor/.gitignore
  25. +10 −0 examples/languages/abc/.gitignore
  26. +3 −0 examples/languages/abc/src/.gitignore
  27. +2 −0 examples/languages/abc/t/.gitignore
  28. +10 −0 examples/languages/squaak/.gitignore
  29. +1 −0 examples/languages/squaak/src/.gitignore
  30. +2 −0 examples/mops/.gitignore
  31. +1 −0 examples/nci/.gitignore
  32. +3 −0 examples/pasm/.gitignore
  33. +9 −0 examples/pir/befunge/.gitignore
  34. +1 −0 ext/.gitignore
  35. +29 −0 ext/Parrot-Embed/.gitignore
  36. +2 −0 ext/Parrot-Embed/lib/Parrot/.gitignore
  37. +1 −0 ext/Parrot-Embed/t/.gitignore
  38. +11 −0 include/parrot/.gitignore
  39. +4 −0 include/parrot/oplib/.gitignore
  40. +24 −0 include/parrot/sub.h
  41. +1 −0 lib/.gitignore
  42. +9 −0 lib/Parrot/.gitignore
  43. +1 −0 lib/Parrot/Config/.gitignore
  44. +1 −0 lib/Parrot/Pmc2c/.gitignore
  45. +1 −0 ports/debian/.gitignore
  46. +13 −0 runtime/parrot/dynext/.gitignore
  47. +3 −0 runtime/parrot/include/.gitignore
  48. +4 −0 runtime/parrot/library/.gitignore
  49. +1 −0 runtime/parrot/library/CGI/.gitignore
  50. +1 −0 runtime/parrot/library/Config/.gitignore
  51. +1 −0 runtime/parrot/library/Data/.gitignore
  52. +1 −0 runtime/parrot/library/Data/Dumper/.gitignore
  53. +1 −0 runtime/parrot/library/Digest/.gitignore
  54. +1 −0 runtime/parrot/library/Getopt/.gitignore
  55. +1 −0 runtime/parrot/library/MIME/.gitignore
  56. +1 −0 runtime/parrot/library/Math/.gitignore
  57. +1 −0 runtime/parrot/library/Math/Random/.gitignore
  58. +1 −0 runtime/parrot/library/NCI/.gitignore
  59. +1 −0 runtime/parrot/library/OpenGL/.gitignore
  60. +1 −0 runtime/parrot/library/PCT/.gitignore
  61. +1 −0 runtime/parrot/library/PGE/.gitignore
  62. +1 −0 runtime/parrot/library/Parrot/.gitignore
  63. +1 −0 runtime/parrot/library/Stream/.gitignore
  64. +1 −0 runtime/parrot/library/String/.gitignore
  65. +1 −0 runtime/parrot/library/Tcl/.gitignore
  66. +1 −0 runtime/parrot/library/Test/.gitignore
  67. +1 −0 runtime/parrot/library/Test/Builder/.gitignore
  68. +1 −0 runtime/parrot/library/YAML/.gitignore
  69. +1 −0 runtime/parrot/library/YAML/Dumper/.gitignore
  70. +1 −0 runtime/parrot/library/YAML/Parser/.gitignore
  71. +23 −0 src/.gitignore
  72. +2 −0 src/atomic/.gitignore
  73. +2 −0 src/call/.gitignore
  74. +13 −0 src/dynoplibs/.gitignore
  75. +25 −0 src/dynpmc/.gitignore
  76. +17 −0 src/gc/.gitignore
  77. +1 −0 src/interp/.gitignore
  78. +3 −0 src/io/.gitignore
  79. +3 −0 src/ops/.gitignore
  80. +2 −0 src/packfile/.gitignore
  81. +8 −0 src/pmc/.gitignore
  82. +4 −0 src/string/.gitignore
  83. +2 −0 src/string/charset/.gitignore
  84. +2 −0 src/string/encoding/.gitignore
  85. +54 −0 src/sub.c
  86. +2 −0 t/benchmark/.gitignore
  87. +1 −0 t/compilers/imcc/.gitignore
  88. +4 −0 t/compilers/imcc/imcpasm/.gitignore
  89. +4 −0 t/compilers/imcc/reg/.gitignore
  90. +4 −0 t/compilers/imcc/syn/.gitignore
  91. +3 −0 t/compilers/json/.gitignore
  92. +2 −0 t/compilers/pct/.gitignore
  93. +4 −0 t/compilers/pge/.gitignore
  94. +1 −0 t/compilers/pge/p5regex/.gitignore
  95. +2 −0 t/compilers/pge/perl6regex/.gitignore
  96. +3 −0 t/compilers/tge/.gitignore
  97. +3 −0 t/dynoplibs/.gitignore
  98. +12 −0 t/dynpmc/.gitignore
  99. +4 −0 t/examples/.gitignore
  100. +5 −0 t/library/.gitignore
  101. +1 −0 t/native_pbc/.gitignore
  102. +2 −0 t/oo/.gitignore
  103. +5 −0 t/op/.gitignore
  104. +2 −0 t/perl/.gitignore
  105. +5 −0 t/pmc/.gitignore
  106. +1 −0 t/src/.gitignore
  107. +5 −0 t/stress/.gitignore
  108. +7 −0 t/tools/.gitignore
  109. +2 −0 tools/build/.gitignore
View
64 .gitignore
@@ -0,0 +1,64 @@
+/*.patch
+/*.tmp
+/*.vcproj*
+/*.sln
+/*.ncb
+/*.suo
+/*.sto
+/CFLAGS
+/MANIFEST.configure.generated
+/Makefile
+/TAGS
+/all_cstring.str
+/blib
+/config_lib.pasm
+/install_config.fpmc
+/libparrot.def
+/libparrot.dll
+/miniparrot
+/myconfig
+/parrot
+/parrot_config
+/parrot_config.c
+/parrot_config.pbc
+/parrot.ilk
+/parrot.pdb
+/parrot.pc
+/parrot_test_run.tar.gz
+/pbc_disassemble
+/pbc_info
+/pbc_merge
+/pbc_dump
+/tags
+/temp.file
+/test
+/test.c
+/test.cco
+/test.err
+/test.ilk
+/test.ldo
+/test.out
+/test.pdb
+/vc60.pdb
+/vc70.pdb
+/vtable.dump
+/installable*
+/*.exe
+/*.core
+/*.pdb
+/*.ilk
+/*.def
+/*.lib
+/*.obj
+/*.o
+/*.exp
+/*.manifest
+/parrot.iss
+/cover_db
+/pbc_to_exe
+/pbc_to_exe.*
+/perl6
+/.parrot_current_rev
+/.git
+/parrot_debugger
+/pirc
View
2 compilers/data_json/.gitignore
@@ -0,0 +1,2 @@
+/Makefile
+/data_json.pbc
View
2 compilers/data_json/data_json/.gitignore
@@ -0,0 +1,2 @@
+/*.pir
+/*.pbc
View
11 compilers/imcc/.gitignore
@@ -0,0 +1,11 @@
+/*.flag
+/*.o
+/*.tmp
+/imcc
+/imclexer.c
+/imcparser.c
+/imcparser.h
+/imcparser.output
+/Makefile
+/CFLAGS
+/*.obj
View
2 compilers/json/.gitignore
@@ -0,0 +1,2 @@
+/Makefile
+/JSON.pbc
View
2 compilers/json/JSON/.gitignore
@@ -0,0 +1,2 @@
+/*.pbc
+/*.pir
View
2 compilers/ncigen/.gitignore
@@ -0,0 +1,2 @@
+/Makefile
+/ncigen.pbc
View
3 compilers/ncigen/src/.gitignore
@@ -0,0 +1,3 @@
+/gen_actions.pir
+/gen_grammar.pir
+/gen_builtins.pir
View
2 compilers/nqp/.gitignore
@@ -0,0 +1,2 @@
+/Makefile
+/nqp.pbc
View
2 compilers/nqp/bootstrap/.gitignore
@@ -0,0 +1,2 @@
+/nqp.pbc
+/gen_actions.pir
View
1 compilers/nqp/src/.gitignore
@@ -0,0 +1 @@
+/Grammar_gen.pir
View
2 compilers/pct/.gitignore
@@ -0,0 +1,2 @@
+/Makefile
+/*.pbc
View
1 compilers/pct/src/POST/.gitignore
@@ -0,0 +1 @@
+/Grammar_gen.pir
View
4 compilers/pge/.gitignore
@@ -0,0 +1,4 @@
+/*.dylib
+/*.so
+/Makefile
+/PGE.pbc
View
2 compilers/pge/PGE/.gitignore
@@ -0,0 +1,2 @@
+/builtins_gen.pir
+/*.dll
View
6 compilers/pirc/.gitignore
@@ -0,0 +1,6 @@
+/Makefile
+/pirc
+/pirc.exe
+/*.o
+/*.obj
+/*.pbd
View
6 compilers/pirc/t/.gitignore
@@ -0,0 +1,6 @@
+/subflags_?.pir
+/heredoc_?.pir
+/stmts_?.pir
+/basic_?.pir
+/basic_??.pir
+/macro_?.pir
View
1 compilers/tge/.gitignore
@@ -0,0 +1 @@
+/Makefile
View
1 compilers/tge/TGE/.gitignore
@@ -0,0 +1 @@
+/Parser.pir
View
1 config/gen/call_list/.gitignore
@@ -0,0 +1 @@
+/opengl.in
View
5 docs/.gitignore
@@ -0,0 +1,5 @@
+/*.tmp
+/html
+/Makefile
+/packfile-c.pod
+/packfile-perl.pod
View
1 docs/book/.gitignore
@@ -0,0 +1 @@
+/*.html
View
1 docs/ops/.gitignore
@@ -0,0 +1 @@
+/*.pod
View
4 editor/.gitignore
@@ -0,0 +1,4 @@
+/Makefile
+/imc.vim
+/imcc.xml
+/pir.vim
View
10 examples/languages/abc/.gitignore
@@ -0,0 +1,10 @@
+/Makefile
+/*.pbc
+/*.c
+/*.o
+/*.obj
+/*.exe
+/*.iss
+/abc
+/installable_abc
+/man
View
3 examples/languages/abc/src/.gitignore
@@ -0,0 +1,3 @@
+/gen_actions.pir
+/gen_grammar.pir
+/gen_builtins.pir
View
2 examples/languages/abc/t/.gitignore
@@ -0,0 +1,2 @@
+/*_*.pir
+/*_*.out
View
10 examples/languages/squaak/.gitignore
@@ -0,0 +1,10 @@
+/Makefile
+/*.pbc
+/*.c
+/*.o
+/*.obj
+/*.exe
+/*.iss
+/squaak
+/installable_squaak
+/man
View
1 examples/languages/squaak/src/.gitignore
@@ -0,0 +1 @@
+/gen_*.pir
View
2 examples/mops/.gitignore
@@ -0,0 +1,2 @@
+/*.o
+/mops
View
1 examples/nci/.gitignore
@@ -0,0 +1 @@
+/*.pbc
View
3 examples/pasm/.gitignore
@@ -0,0 +1,3 @@
+/hello
+/hello.o
+/hello.pbc
View
9 examples/pir/befunge/.gitignore
@@ -0,0 +1,9 @@
+/Makefile
+/*.pbc
+/*.c
+/*.o
+/*.obj
+/*.exe
+/*.iss
+/befunge
+/installable_befunge
View
1 ext/.gitignore
@@ -0,0 +1 @@
+/Makefile
View
29 ext/Parrot-Embed/.gitignore
@@ -0,0 +1,29 @@
+/*.tmp
+/*.pdb
+/_build
+/blib
+/Build
+/Build.bat
+/Makefile
+/Makefile.PL
+/*.bundle
+/*.c
+/*.dump
+/*.dylib
+/*.h
+/*.so
+/*.o
+/*.exe
+/*.pdb
+/*.ilk
+/*.def
+/*.lib
+/*.obj
+/*.exp
+/*.dll
+/*.manifest
+/*.bs
+/*.old
+/*.xs
+/pm_to_blib
+/dll.base
View
2 ext/Parrot-Embed/lib/Parrot/.gitignore
@@ -0,0 +1,2 @@
+/*.obj
+/*.c
View
1 ext/Parrot-Embed/t/.gitignore
@@ -0,0 +1 @@
+/*.pbc
View
11 include/parrot/.gitignore
@@ -0,0 +1,11 @@
+/*.tmp
+/config.h
+/core_pmcs.h
+/extend_vtable.h
+/feature.h
+/has_header.h
+/platform.h
+/platform_interface.h
+/vtable.h
+/pbcversion.h
+/platform_limits.h
View
4 include/parrot/oplib/.gitignore
@@ -0,0 +1,4 @@
+/*_ops.h
+/*_ops_switch.h
+/*_ops_cg*.h
+/ops.h
View
24 include/parrot/sub.h
@@ -248,6 +248,21 @@ PMC* Parrot_find_pad(PARROT_INTERP,
__attribute__nonnull__(2)
__attribute__nonnull__(3);
+PARROT_CANNOT_RETURN_NULL
+STRING * Parrot_Sub_get_filename_from_pc(PARROT_INTERP,
+ ARGIN(PMC *sub),
+ ARGIN(opcode_t *pc))
+ __attribute__nonnull__(1)
+ __attribute__nonnull__(2)
+ __attribute__nonnull__(3);
+
+INTVAL Parrot_Sub_get_line_from_pc(PARROT_INTERP,
+ ARGIN(PMC *subpmc),
+ ARGIN(opcode_t *pc))
+ __attribute__nonnull__(1)
+ __attribute__nonnull__(2)
+ __attribute__nonnull__(3);
+
#define ASSERT_ARGS_new_ret_continuation_pmc __attribute__unused__ int _ASSERT_ARGS_CHECK = \
PARROT_ASSERT_ARG(interp)
#define ASSERT_ARGS_Parrot_Context_get_info __attribute__unused__ int _ASSERT_ARGS_CHECK = \
@@ -288,6 +303,15 @@ PMC* Parrot_find_pad(PARROT_INTERP,
PARROT_ASSERT_ARG(interp) \
|| PARROT_ASSERT_ARG(lex_name) \
|| PARROT_ASSERT_ARG(ctx)
+#define ASSERT_ARGS_Parrot_Sub_get_filename_from_pc \
+ __attribute__unused__ int _ASSERT_ARGS_CHECK = \
+ PARROT_ASSERT_ARG(interp) \
+ || PARROT_ASSERT_ARG(sub) \
+ || PARROT_ASSERT_ARG(pc)
+#define ASSERT_ARGS_Parrot_Sub_get_line_from_pc __attribute__unused__ int _ASSERT_ARGS_CHECK = \
+ PARROT_ASSERT_ARG(interp) \
+ || PARROT_ASSERT_ARG(subpmc) \
+ || PARROT_ASSERT_ARG(pc)
/* Don't modify between HEADERIZER BEGIN / HEADERIZER END. Your changes will be lost. */
/* HEADERIZER END: src/sub.c */
View
1 lib/.gitignore
@@ -0,0 +1 @@
+/DumbLink.pm
View
9 lib/Parrot/.gitignore
@@ -0,0 +1,9 @@
+/PMC.pm
+/Jit.pm
+/blib
+/pm_to_blib
+/PakFile2.c
+/PakFile2.bs
+/Makefile
+/*.tmp
+/OpLib
View
1 lib/Parrot/Config/.gitignore
@@ -0,0 +1 @@
+/Generated.pm
View
1 lib/Parrot/Pmc2c/.gitignore
@@ -0,0 +1 @@
+/PCCMETHOD_BITS.pm
View
1 ports/debian/.gitignore
@@ -0,0 +1 @@
+/
View
13 runtime/parrot/dynext/.gitignore
@@ -0,0 +1,13 @@
+/*.dylib
+/libnci.*
+/*.bundle
+/*.so
+/*.exe
+/*.pdb
+/*.ilk
+/*.def
+/*.lib
+/*.obj
+/*.exp
+/*.dll
+/*.manifest
View
3 runtime/parrot/include/.gitignore
@@ -0,0 +1,3 @@
+/*.pasm
+/*.pbc
+/*.fpmc
View
4 runtime/parrot/library/.gitignore
@@ -0,0 +1,4 @@
+/PAST
+/*.pbc
+/config.pir
+/OpenGL_funcs.pir
View
1 runtime/parrot/library/CGI/.gitignore
@@ -0,0 +1 @@
+/*.pbc
View
1 runtime/parrot/library/Config/.gitignore
@@ -0,0 +1 @@
+/*.pbc
View
1 runtime/parrot/library/Data/.gitignore
@@ -0,0 +1 @@
+/*.pbc
View
1 runtime/parrot/library/Data/Dumper/.gitignore
@@ -0,0 +1 @@
+/*.pbc
View
1 runtime/parrot/library/Digest/.gitignore
@@ -0,0 +1 @@
+/*.pbc
View
1 runtime/parrot/library/Getopt/.gitignore
@@ -0,0 +1 @@
+/Obj.pbc
View
1 runtime/parrot/library/MIME/.gitignore
@@ -0,0 +1 @@
+/*.pbc
View
1 runtime/parrot/library/Math/.gitignore
@@ -0,0 +1 @@
+/*.pbc
View
1 runtime/parrot/library/Math/Random/.gitignore
@@ -0,0 +1 @@
+/*.pbc
View
1 runtime/parrot/library/NCI/.gitignore
@@ -0,0 +1 @@
+/*.pbc
View
1 runtime/parrot/library/OpenGL/.gitignore
@@ -0,0 +1 @@
+/*.pbc
View
1 runtime/parrot/library/PCT/.gitignore
@@ -0,0 +1 @@
+/*.pbc
View
1 runtime/parrot/library/PGE/.gitignore
@@ -0,0 +1 @@
+/*.pbc
View
1 runtime/parrot/library/Parrot/.gitignore
@@ -0,0 +1 @@
+/*.pbc
View
1 runtime/parrot/library/Stream/.gitignore
@@ -0,0 +1 @@
+/*.pbc
View
1 runtime/parrot/library/String/.gitignore
@@ -0,0 +1 @@
+/Utils.pbc
View
1 runtime/parrot/library/Tcl/.gitignore
@@ -0,0 +1 @@
+/*.pbc
View
1 runtime/parrot/library/Test/.gitignore
@@ -0,0 +1 @@
+/*.pbc
View
1 runtime/parrot/library/Test/Builder/.gitignore
@@ -0,0 +1 @@
+/*.pbc
View
1 runtime/parrot/library/YAML/.gitignore
@@ -0,0 +1 @@
+/*.pbc
View
1 runtime/parrot/library/YAML/Dumper/.gitignore
@@ -0,0 +1 @@
+/*.pbc
View
1 runtime/parrot/library/YAML/Parser/.gitignore
@@ -0,0 +1 @@
+/*.pbc
View
23 src/.gitignore
@@ -0,0 +1,23 @@
+/*.o
+/*.obj
+/*.str
+/asmfun.*
+/core_pmcs.c
+/exec_cpu.c
+/exec_dep.c
+/exec_dep.h
+/extend_vtable.c
+/fingerprint.c
+/glut_callbacks.c
+/install_config.c
+/jit_cpu.c
+/jit_defs.c
+/jit_emit.h
+/nci.c
+/null_config.c
+/platform.c
+/platform_asm.s
+/parrot_config.c
+/parrot_config.h
+/revision.c
+/call_list.txt
View
2 src/atomic/.gitignore
@@ -0,0 +1,2 @@
+/*.gcda
+/*.o
View
2 src/call/.gitignore
@@ -0,0 +1,2 @@
+/*.str
+/*.obj
View
13 src/dynoplibs/.gitignore
@@ -0,0 +1,13 @@
+/Makefile
+/*.c
+/*.h
+/*.so
+/*.bundle
+/*.o
+/*.obj
+/*.dll
+/*.pdb
+/*.ilk
+/*.lib
+/*.exp
+/*.manifest
View
25 src/dynpmc/.gitignore
@@ -0,0 +1,25 @@
+/*.bundle
+/*.c
+/*.dump
+/*.dylib
+/*.h
+/*.so
+/Makefile
+/*.o
+/*.exe
+/*.pdb
+/*.ilk
+/*.def
+/*.lib
+/*.obj
+/*.exp
+/*.dll
+/*.manifest
+/md2.pmc
+/md4.pmc
+/md5.pmc
+/ripemd160.pmc
+/sha.pmc
+/sha1.pmc
+/sha256.pmc
+/sha512.pmc
View
17 src/gc/.gitignore
@@ -0,0 +1,17 @@
+/*.bundle
+/*.c
+/*.dump
+/*.dylib
+/*.h
+/*.so
+/Makefile
+/*.o
+/*.exe
+/*.pdb
+/*.ilk
+/*.def
+/*.lib
+/*.obj
+/*.exp
+/*.dll
+/*.manifest
View
1 src/interp/.gitignore
@@ -0,0 +1 @@
+/*.str
View
3 src/io/.gitignore
@@ -0,0 +1,3 @@
+/*.o
+/*.obj
+/*.str
View
3 src/ops/.gitignore
@@ -0,0 +1,3 @@
+/*.c
+/*.o
+/*.obj
View
2 src/packfile/.gitignore
@@ -0,0 +1,2 @@
+/*.o
+/*.obj
View
8 src/pmc/.gitignore
@@ -0,0 +1,8 @@
+/Makefile
+/*.c
+/*.h
+/*.o
+/*.tmp
+/*.dump
+/*.str
+/*.obj
View
4 src/string/.gitignore
@@ -0,0 +1,4 @@
+/private_cstring.h
+/*.o
+/*.obj
+/*.str
View
2 src/string/charset/.gitignore
@@ -0,0 +1,2 @@
+/*.o
+/*.obj
View
2 src/string/encoding/.gitignore
@@ -0,0 +1,2 @@
+/*.o
+/*.obj
View
54 src/sub.c
@@ -268,6 +268,60 @@ Parrot_Context_get_info(PARROT_INTERP, ARGIN(PMC *ctx),
return 1;
}
+
+/*
+
+=item C<INTVAL Parrot_Sub_get_line_from_pc(PARROT_INTERP, PMC *subpmc, opcode_t
+*pc)>
+
+Given a PMC sub and the current opcode, returns the corresponding PIR line
+number.
+
+=cut
+
+*/
+
+INTVAL
+Parrot_Sub_get_line_from_pc(PARROT_INTERP, ARGIN(PMC *subpmc), ARGIN(opcode_t *pc))
+{
+ Parrot_Sub_attributes *sub;
+ int position;
+
+ PMC_get_sub(interp, subpmc, sub);
+ position = pc - sub->seg->base.data;
+
+ return (INTVAL)(sub->seg->debugs->base.data[position]);
+}
+
+
+/*
+
+=item C<STRING * Parrot_Sub_get_filename_from_pc(PARROT_INTERP, PMC *sub,
+opcode_t *pc)>
+
+Given a PMC sub and the current opcode, returns the corresponding PIR file
+name.
+
+=cut
+
+*/
+
+PARROT_CANNOT_RETURN_NULL
+STRING *
+Parrot_Sub_get_filename_from_pc(PARROT_INTERP, ARGIN(PMC *subpmc), ARGIN(opcode_t *pc))
+{
+ Parrot_Sub_attributes *sub;
+ PackFile_Debug *debug;
+ int position;
+
+ PMC_get_sub(interp, subpmc, sub);
+
+ debug = sub->seg->debugs;
+ position = pc - sub->seg->base.data;
+
+ return Parrot_debug_pc_to_filename(interp, debug, position);
+}
+
/*
=item C<STRING* Parrot_Context_infostr(PARROT_INTERP, PMC *ctx)>
View
2 t/benchmark/.gitignore
@@ -0,0 +1,2 @@
+/*.pasm
+/*.pir
View
1 t/compilers/imcc/.gitignore
@@ -0,0 +1 @@
+/*.pbc
View
4 t/compilers/imcc/imcpasm/.gitignore
@@ -0,0 +1,4 @@
+/*_pbcexe
+/*.pbc
+/*.pir
+/*.pasm
View
4 t/compilers/imcc/reg/.gitignore
@@ -0,0 +1,4 @@
+/*_pbcexe*
+/*.pbc
+/*.pir
+/*.pasm
View
4 t/compilers/imcc/syn/.gitignore
@@ -0,0 +1,4 @@
+/*_pbcexe*
+/*.pasm
+/*.pbc
+/*.pir
View
3 t/compilers/json/.gitignore
@@ -0,0 +1,3 @@
+/*_pbcexe
+/*.pbc
+/*.pir
View
2 t/compilers/pct/.gitignore
@@ -0,0 +1,2 @@
+/*.pbc
+/*.pir
View
4 t/compilers/pge/.gitignore
@@ -0,0 +1,4 @@
+/*_pbcexe
+/*.pasm
+/*.pbc
+/*.pir
View
1 t/compilers/pge/p5regex/.gitignore
@@ -0,0 +1 @@
+/*.pir
View
2 t/compilers/pge/perl6regex/.gitignore
@@ -0,0 +1,2 @@
+/*.pbc
+/*.pir
View
3 t/compilers/tge/.gitignore
@@ -0,0 +1,3 @@
+/*_pbcexe
+/*.pir
+/*.pbc
View
3 t/dynoplibs/.gitignore
@@ -0,0 +1,3 @@
+/*.pasm
+/*.pbc
+/*.pir
View
12 t/dynpmc/.gitignore
@@ -0,0 +1,12 @@
+/*.pasm
+/*_pbcexe*
+/*.pbc
+/*.pir
+/md2.t
+/md4.t
+/md5.t
+/ripemd160.t
+/sha1.t
+/sha256.t
+/sha512.t
+/sha.t
View
4 t/examples/.gitignore
@@ -0,0 +1,4 @@
+/*_pbcexe*
+/*.pasm
+/*.pbc
+/*.pir
View
5 t/library/.gitignore
@@ -0,0 +1,5 @@
+/*_pbcexe*
+/*.out
+/*.pasm
+/*.pbc
+/*.pir
View
1 t/native_pbc/.gitignore
@@ -0,0 +1 @@
+/*_pbcexe*
View
2 t/oo/.gitignore
@@ -0,0 +1,2 @@
+/*.pbc
+/*.pir
View
5 t/op/.gitignore
@@ -0,0 +1,5 @@
+/*_pbcexe*
+/*.out
+/*.pasm
+/*.pbc
+/*.pir
View
2 t/perl/.gitignore
@@ -0,0 +1,2 @@
+/Parrot_Test_1.pasm
+/Parrot_Test_1.pir
View
5 t/pmc/.gitignore
@@ -0,0 +1,5 @@
+/*_pbcexe*
+/*.pasm
+/*.pbc
+/*.pir
+/*.out
View
1 t/src/.gitignore
@@ -0,0 +1 @@
+/*_*
View
5 t/stress/.gitignore
@@ -0,0 +1,5 @@
+/*_pbcexe*
+/*.pasm
+/*.pbc
+/*.pir
+/*.out
View
7 t/tools/.gitignore
@@ -0,0 +1,7 @@
+/*.pir
+/*.pbc
+/pmc2c.*.pmc
+/pmc2c.*.dump
+/pmc2c.*.h
+/pmc2c.*.c
+/pdb.t.*
View
2 tools/build/.gitignore
@@ -0,0 +1,2 @@
+/dynpmc.pl
+/dynoplibs.pl

0 comments on commit 10a76c3

Please sign in to comment.