mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-11-19 22:29:37 +01:00
FpDebug: Disabled range-checking to fix range-check error. The fix in r46105 #bbf07c5bd6 leads to a datastructure which is too large for 32 bit
git-svn-id: trunk@46119 -
This commit is contained in:
parent
97c76539bf
commit
afc3882ca7
@ -31,6 +31,8 @@
|
||||
<RunParams>
|
||||
<local>
|
||||
<FormatVersion Value="1"/>
|
||||
<CommandLineParams Value="\home\CNOC\joost\svn\ranger\newserver\RangerServer2"/>
|
||||
<LaunchingApplication PathPlusParams="\usr\bin\gnome-terminal -e $(TargetCmdLine)"/>
|
||||
</local>
|
||||
</RunParams>
|
||||
<RequiredPackages Count="1">
|
||||
@ -38,16 +40,11 @@
|
||||
<PackageName Value="fpdebug"/>
|
||||
</Item1>
|
||||
</RequiredPackages>
|
||||
<Units Count="2">
|
||||
<Units Count="1">
|
||||
<Unit0>
|
||||
<Filename Value="fpd.lpr"/>
|
||||
<IsPartOfProject Value="True"/>
|
||||
</Unit0>
|
||||
<Unit1>
|
||||
<Filename Value="..\dbgclasses.pp"/>
|
||||
<IsPartOfProject Value="True"/>
|
||||
<UnitName Value="dbgclasses"/>
|
||||
</Unit1>
|
||||
</Units>
|
||||
</ProjectOptions>
|
||||
<CompilerOptions>
|
||||
@ -60,17 +57,33 @@
|
||||
<IncludeFiles Value="$(ProjOutDir)"/>
|
||||
<UnitOutputDirectory Value="lib\$(TargetCPU)-$(TargetOS)"/>
|
||||
</SearchPaths>
|
||||
<Parsing>
|
||||
<SyntaxOptions>
|
||||
<IncludeAssertionCode Value="True"/>
|
||||
</SyntaxOptions>
|
||||
</Parsing>
|
||||
<CodeGeneration>
|
||||
<Checks>
|
||||
<IOChecks Value="True"/>
|
||||
<RangeChecks Value="True"/>
|
||||
<OverflowChecks Value="True"/>
|
||||
<StackChecks Value="True"/>
|
||||
</Checks>
|
||||
<VerifyObjMethodCallValidity Value="True"/>
|
||||
<TargetCPU Value="x86_64"/>
|
||||
</CodeGeneration>
|
||||
<Linking>
|
||||
<Debugging>
|
||||
<DebugInfoType Value="dsDwarf3"/>
|
||||
<UseHeaptrc Value="True"/>
|
||||
<TrashVariables Value="True"/>
|
||||
</Debugging>
|
||||
<Options>
|
||||
<PassLinkerOptions Value="True"/>
|
||||
<LinkerOptions Value="-sectcreate __TEXT __info_plist Info.plist"/>
|
||||
</Options>
|
||||
</Linking>
|
||||
<Other>
|
||||
<CompilerMessages>
|
||||
<MsgFileName Value=""/>
|
||||
</CompilerMessages>
|
||||
<CompilerPath Value="$(CompPath)"/>
|
||||
<CustomOptions Value="-dFPDBG_DWARF_VERBOSE -dFPDBG_DWARF_SEARCH"/>
|
||||
</Other>
|
||||
</CompilerOptions>
|
||||
<Debugging>
|
||||
|
||||
@ -692,7 +692,7 @@ begin
|
||||
end;
|
||||
|
||||
WriteLN('Callstack:');
|
||||
ACallStack := GController.CurrentProcess.MainThread.CreateCallStackEntryList;
|
||||
//ACallStack := GController.CurrentProcess.MainThread.CreateCallStackEntryList;
|
||||
try
|
||||
for i := 0 to ACallStack.Count-1 do
|
||||
begin
|
||||
|
||||
@ -648,6 +648,8 @@ function TDbgProcess.AddBreak(const ALocation: TDbgPtr): TDbgBreakpoint;
|
||||
begin
|
||||
Result := OSDbgClasses.DbgBreakpointClass.Create(Self, ALocation);
|
||||
FBreakMap.Add(ALocation, Result);
|
||||
if (GetInstructionPointerRegisterValue=ALocation) and not assigned(FCurrentBreakpoint) then
|
||||
FCurrentBreakpoint := Result;
|
||||
end;
|
||||
|
||||
constructor TDbgProcess.Create(const AName: string; const AProcessID, AThreadID: Integer; AOnLog: TOnLog);
|
||||
|
||||
@ -1045,7 +1045,7 @@ var
|
||||
else
|
||||
begin // append to existing
|
||||
GapAvail := FTableListGaps[ATableListIndex].EndTable;
|
||||
assert(AEntry^.EndIndex + AEntry^.LeadHigh - AEntry^.LeadLow + 1 + GapAvail <= FEndTableNextFreeIndex);
|
||||
//assert(AEntry^.EndIndex + AEntry^.LeadHigh - AEntry^.LeadLow + 1 + GapAvail <= FEndTableNextFreeIndex);
|
||||
AtEnd := AEntry^.EndIndex + AEntry^.EndHigh - AEntry^.EndLow + 1 + GapAvail = FEndTableNextFreeIndex;
|
||||
ANeeded := ALeadByte - AEntry^.EndHigh;
|
||||
|
||||
|
||||
@ -153,8 +153,13 @@ type
|
||||
start_stack : dword;
|
||||
signal : longint;
|
||||
reserved : longint;
|
||||
{$ifdef i386}
|
||||
u_ar0 : ^user_regs_struct32;
|
||||
u_fpstate : ^user_fpregs_struct32;
|
||||
{$else}
|
||||
u_ar0 : DWord;
|
||||
u_fpstate : DWord;
|
||||
{$endif}
|
||||
magic : dword;
|
||||
u_comm : array[0..31] of char;
|
||||
u_debugreg : array[0..7] of longint;
|
||||
@ -347,7 +352,7 @@ begin
|
||||
e := fpgeterrno;
|
||||
if e <> 0 then
|
||||
begin
|
||||
log('Failed to read dr'+inttostr(ind)+'-debug register. Errcode: '+inttostr(e));
|
||||
log('Failed to read dr'+inttostr(ind)+'-debug register offset '+inttostr(qword(GetDebugRegOffset(ind)))+'. Errcode: '+inttostr(e));
|
||||
result := false;
|
||||
end
|
||||
else
|
||||
|
||||
@ -11,6 +11,33 @@
|
||||
<OtherUnitFiles Value="."/>
|
||||
<UnitOutputDirectory Value="lib\$(TargetCPU)-$(TargetOS)"/>
|
||||
</SearchPaths>
|
||||
<Parsing>
|
||||
<SyntaxOptions>
|
||||
<IncludeAssertionCode Value="True"/>
|
||||
</SyntaxOptions>
|
||||
</Parsing>
|
||||
<CodeGeneration>
|
||||
<Checks>
|
||||
<IOChecks Value="True"/>
|
||||
<RangeChecks Value="True"/>
|
||||
<OverflowChecks Value="True"/>
|
||||
<StackChecks Value="True"/>
|
||||
</Checks>
|
||||
<VerifyObjMethodCallValidity Value="True"/>
|
||||
</CodeGeneration>
|
||||
<Linking>
|
||||
<Debugging>
|
||||
<DebugInfoType Value="dsDwarf3"/>
|
||||
<UseHeaptrc Value="True"/>
|
||||
<TrashVariables Value="True"/>
|
||||
</Debugging>
|
||||
</Linking>
|
||||
<Other>
|
||||
<CustomOptions Value="-dFPDBG_DWARF_VERBOSE
|
||||
-dFPDBG_DWARF_VERBOSE_LOAD
|
||||
-dFPDBG_DWARF_WARNINGS
|
||||
-aln"/>
|
||||
</Other>
|
||||
</CompilerOptions>
|
||||
<Description Value="A set of helperclasses for implementing a debugger.
|
||||
|
||||
|
||||
@ -106,7 +106,7 @@ type
|
||||
st_size : qword;
|
||||
end;
|
||||
PElf64symbolArray = ^TElf64symbolArray;
|
||||
TElf64symbolArray = array[0..MaxInt] of TElf64symbol;
|
||||
TElf64symbolArray = array[0..maxSmallint] of TElf64symbol;
|
||||
|
||||
|
||||
|
||||
@ -358,11 +358,14 @@ begin
|
||||
for i := 0 to SymbolCount-1 do
|
||||
begin
|
||||
begin
|
||||
{$push}
|
||||
{$R-}
|
||||
if SymbolArr64^[i].st_name<>0 then
|
||||
begin
|
||||
SymbolName:=pchar(SymbolStr+SymbolArr64^[i].st_name);
|
||||
AfpSymbolInfo.AddObject(SymbolName, TObject(PtrUInt(SymbolArr64^[i].st_value+ImageBase)));
|
||||
end;
|
||||
{$pop}
|
||||
end
|
||||
end;
|
||||
end
|
||||
|
||||
Loading…
Reference in New Issue
Block a user