mirror of
				https://github.com/ruby/ruby.git
				synced 2022-11-09 12:17:21 -05:00 
			
		
		
		
	Add T_IMEMO support to lldb
I'm trying to find why a reference to an IMEMO object isn't being updated
This commit is contained in:
		
							parent
							
								
									ce91c5615c
								
							
						
					
					
						commit
						7574b836a9
					
				
					 1 changed files with 6 additions and 0 deletions
				
			
		| 
						 | 
				
			
			@ -236,6 +236,12 @@ def lldb_inspect(debugger, target, result, val):
 | 
			
		|||
            tRTypedData = target.FindFirstType("struct RMoved").GetPointerType()
 | 
			
		||||
            val = val.Cast(tRTypedData)
 | 
			
		||||
            append_command_output(debugger, "p *(struct RMoved *) %0#x" % val.GetValueAsUnsigned(), result)
 | 
			
		||||
        elif flType == RUBY_T_IMEMO:
 | 
			
		||||
            # I'm not sure how to get IMEMO_MASK out of lldb. It's not in globals()
 | 
			
		||||
            imemo_type = (flags >> RUBY_FL_USHIFT) & 0x0F # IMEMO_MASK
 | 
			
		||||
            print("T_IMEMO: ", file=result)
 | 
			
		||||
            append_command_output(debugger, "p (enum imemo_type) %d" % imemo_type, result)
 | 
			
		||||
            append_command_output(debugger, "p *(struct MEMO *) %0#x" % val.GetValueAsUnsigned(), result)
 | 
			
		||||
        else:
 | 
			
		||||
            print("Not-handled type %0#x" % flType, file=result)
 | 
			
		||||
            print(val, file=result)
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue