1212#include "mini-runtime.h"
1313#include <mono/jit/jit.h>
1414#include "config.h"
15+ #include <dn-vector.h>
1516#include <mono/metadata/verify.h>
1617#include <mono/metadata/mono-config.h>
1718#include <mono/metadata/mono-debug.h>
@@ -30,7 +31,7 @@ typedef struct {
3031typedef struct
3132{
3233 MonoDebugMethodJitInfo * jit ;
33- GArray * line_numbers ;
34+ dn_vector_t * line_numbers ;
3435 guint32 has_line_numbers ;
3536 guint32 breakpoint_id ;
3637} MiniDebugMethodInfo ;
@@ -43,7 +44,7 @@ record_line_number (MiniDebugMethodInfo *info, guint32 address, guint32 offset)
4344 lne .native_offset = address ;
4445 lne .il_offset = offset ;
4546
46- g_array_append_val (info -> line_numbers , lne );
47+ dn_vector_push_back (info -> line_numbers , lne );
4748}
4849
4950
@@ -78,7 +79,7 @@ mono_debug_open_method (MonoCompile *cfg)
7879 g_assert (header );
7980
8081 info -> jit = jit = g_new0 (MonoDebugMethodJitInfo , 1 );
81- info -> line_numbers = g_array_new (FALSE, TRUE, sizeof ( MonoDebugLineNumberEntry ) );
82+ info -> line_numbers = dn_vector_alloc_t ( MonoDebugLineNumberEntry );
8283 jit -> num_locals = header -> num_locals ;
8384 jit -> locals = g_new0 (MonoDebugVarInfo , jit -> num_locals );
8485}
@@ -269,11 +270,11 @@ mono_debug_close_method (MonoCompile *cfg)
269270 }
270271 }
271272
272- jit -> num_line_numbers = info -> line_numbers -> len ;
273+ jit -> num_line_numbers = dn_vector_size ( info -> line_numbers ) ;
273274 jit -> line_numbers = g_new0 (MonoDebugLineNumberEntry , jit -> num_line_numbers );
274275
275276 for (guint32 i = 0 ; i < jit -> num_line_numbers ; i ++ )
276- jit -> line_numbers [i ] = g_array_index (info -> line_numbers , MonoDebugLineNumberEntry , i );
277+ jit -> line_numbers [i ] = * dn_vector_index_t (info -> line_numbers , MonoDebugLineNumberEntry , i );
277278
278279 mono_debug_add_method (cfg -> method_to_register , jit , NULL );
279280
@@ -291,7 +292,7 @@ mono_debug_free_method (MonoCompile *cfg)
291292 info = (MiniDebugMethodInfo * ) cfg -> debug_info ;
292293 if (info ) {
293294 if (info -> line_numbers )
294- g_array_free (info -> line_numbers , TRUE );
295+ dn_vector_free (info -> line_numbers );
295296 g_free (info );
296297 cfg -> debug_info = NULL ;
297298 }
0 commit comments