linux signal codes, user settings to enable breaking on them, feed into debug engine

This commit is contained in:
Ryan Fleury committed 2026-10-01 11:49:53 -07:00
1 parent 56073cfff0
commit cc9951b5ef
8 files changed
+437 -166

No files matched your search

+17 -47
View File
@@ -139,75 +139,45 @@ D_EntityKindTable:
////////////////////////////////
//~ rjf: Exception Codes
@table(name lower_name code default display_string)
D_ExceptionCodeKindTable:
{
{Win32CtrlC win32_ctrl_c 0x40010005 1 "(Win32) Control-C" }
{Win32CtrlBreak win32_ctrl_break 0x40010008 1 "(Win32) Control-Break" }
{Win32WinRTOriginateError win32_win_rt_originate_error 0x40080201 0 "(Win32) WinRT Originate Error" }
{Win32WinRTTransformError win32_win_rt_transform_error 0x40080202 0 "(Win32) WinRT Transform Error" }
{Win32RPCCallCancelled win32_rpc_call_cancelled 0x0000071a 0 "(Win32) RPC Call Cancelled" }
{Win32DatatypeMisalignment win32_datatype_misalignment 0x80000002 0 "(Win32) Data Type Misalignment" }
{Win32AccessViolation win32_access_violation 0xc0000005 1 "(Win32) Access Violation" }
{Win32InPageError win32_in_page_error 0xc0000006 0 "(Win32) In Page Error" }
{Win32InvalidHandle win32_invalid_handle 0xc0000008 1 "(Win32) Invalid Handle Specified" }
{Win32NotEnoughQuota win32_not_enough_quota 0xc0000017 0 "(Win32) Not Enough Quota" }
{Win32IllegalInstruction win32_illegal_instruction 0xc000001d 0 "(Win32) Illegal Instruction" }
{Win32CannotContinueException win32_cannot_continue_exception 0xc0000025 0 "(Win32) Cannot Continue From Exception" }
{Win32InvalidExceptionDisposition win32_invalid_exception_disposition 0xc0000026 0 "(Win32) Invalid Exception Disposition Returned By Handler" }
{Win32ArrayBoundsExceeded win32_array_bounds_exceeded 0xc000008c 0 "(Win32) Array Bounds Exceeded" }
{Win32FloatingPointDenormalOperand win32_floating_point_denormal_operand 0xc000008d 0 "(Win32) Floating-Point Denormal Operand" }
{Win32FloatingPointDivisionByZero win32_floating_point_division_by_zero 0xc000008e 0 "(Win32) Floating-Point Division By Zero" }
{Win32FloatingPointInexactResult win32_floating_point_inexact_result 0xc000008f 0 "(Win32) Floating-Point Inexact Result" }
{Win32FloatingPointInvalidOperation win32_floating_point_invalid_operation 0xc0000090 0 "(Win32) Floating-Point Invalid Operation" }
{Win32FloatingPointOverflow win32_floating_point_overflow 0xc0000091 0 "(Win32) Floating-Point Overflow" }
{Win32FloatingPointStackCheck win32_floating_point_stack_check 0xc0000092 0 "(Win32) Floating-Point Stack Check" }
{Win32FloatingPointUnderflow win32_floating_point_underflow 0xc0000093 0 "(Win32) Floating-Point Underflow" }
{Win32IntegerDivisionByZero win32_integer_division_by_zero 0xc0000094 0 "(Win32) Integer Division By Zero" }
{Win32IntegerOverflow win32_integer_overflow 0xc0000095 0 "(Win32) Integer Overflow" }
{Win32PrivilegedInstruction win32_privileged_instruction 0xc0000096 0 "(Win32) Privileged Instruction" }
{Win32StackOverflow win32_stack_overflow 0xc00000fd 0 "(Win32) Stack Overflow" }
{Win32UnableToLocateDLL win32_unable_to_locate_dll 0xc0000135 0 "(Win32) Unable To Locate DLL" }
{Win32OrdinalNotFound win32_ordinal_not_found 0xc0000138 0 "(Win32) Ordinal Not Found" }
{Win32EntryPointNotFound win32_entry_point_not_found 0xc0000139 0 "(Win32) Entry Point Not Found" }
{Win32DLLInitializationFailed win32_dll_initialization_failed 0xc0000142 0 "(Win32) DLL Initialization Failed" }
{Win32FloatingPointSSEMultipleFaults win32_floating_point_sse_multiple_faults 0xc00002b4 0 "(Win32) Floating Point SSE Multiple Faults" }
{Win32FloatingPointSSEMultipleTraps win32_floating_point_sse_multiple_traps 0xc00002b5 0 "(Win32) Floating Point SSE Multiple Traps" }
{Win32AssertionFailed win32_assertion_failed 0xc0000420 1 "(Win32) Assertion Failed" }
{Win32ModuleNotFound win32_module_not_found 0xc06d007e 0 "(Win32) Module Not Found" }
{Win32ProcedureNotFound win32_procedure_not_found 0xc06d007f 0 "(Win32) Procedure Not Found" }
{Win32SanitizerErrorDetected win32_sanitizer_error_detected 0xe073616e 1 "(Win32) Sanitizer Error Detected" }
{Win32SanitizerRawAccessViolation win32_sanitizer_raw_access_violation 0xe0736171 0 "(Win32) Sanitizer Raw Access Violation" }
{Win32DirectXDebugLayer win32_directx_debug_layer 0x0000087a 1 "(Win32) DirectX Debug Layer" }
}
@enum D_ExceptionCodeKind:
{
Null,
@expand(D_ExceptionCodeKindTable a) `$(a.name)`,
@expand(W32_ExceptionCodeKindTable a) `Win32$(a.name)`,
@expand(LNX_SignalCodeTable a) `Linux$(a.name)`,
COUNT,
}
@data(U32) d_exception_code_kind_code_table:
{
`0`;
@expand(D_ExceptionCodeKindTable a) `$(a.code)`;
@expand(W32_ExceptionCodeKindTable a) `$(a.code)`;
@expand(LNX_SignalCodeTable a) `$(a.code)`,
}
@data(OperatingSystem) d_exception_code_kind_os_table:
{
`OperatingSystem_Null`;
@expand(W32_ExceptionCodeKindTable a) `OperatingSystem_Windows`;
@expand(LNX_SignalCodeTable a) `OperatingSystem_Linux`,
}
@data(String8) d_exception_code_kind_display_string_table:
{
`{0}`;
@expand(D_ExceptionCodeKindTable a) `str8_lit_comp("$(a.display_string)")`;
@expand(W32_ExceptionCodeKindTable a) `str8_lit_comp("$(a.display_string)")`;
@expand(LNX_SignalCodeTable a) `str8_lit_comp("$(a.name) ($(a.desc))")`,
}
@data(String8) d_exception_code_kind_lowercase_code_string_table:
{
`{0}`;
@expand(D_ExceptionCodeKindTable a) `str8_lit_comp("$(a.lower_name)")`;
@expand(W32_ExceptionCodeKindTable a) `str8_lit_comp("win32_$(a.lower_name)")`;
@expand(LNX_SignalCodeTable a) `str8_lit_comp("linux_$(a.name_lower)")`,
}
@data(B8) d_exception_code_kind_default_enable_table:
{
`0`;
@expand(D_ExceptionCodeKindTable a) `$(a.default)`;
@expand(W32_ExceptionCodeKindTable a) `$(a.default)`;
@expand(LNX_SignalCodeTable a) `$(a.break_default)`;
}
+238 -41
View File
@@ -38,7 +38,7 @@ str8_lit_comp("Breakpoint"),
str8_lit_comp("AddressRangeAnnotation"),
};
U32 d_exception_code_kind_code_table[38] =
U32 d_exception_code_kind_code_table[69] =
{
0,
0x40010005,
@@ -78,51 +78,186 @@ U32 d_exception_code_kind_code_table[38] =
0xe073616e,
0xe0736171,
0x0000087a,
1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
25,
26,
27,
28,
29,
30,
31,
};
String8 d_exception_code_kind_display_string_table[38] =
OperatingSystem d_exception_code_kind_os_table[69] =
{
OperatingSystem_Null,
OperatingSystem_Windows,
OperatingSystem_Windows,
OperatingSystem_Windows,
OperatingSystem_Windows,
OperatingSystem_Windows,
OperatingSystem_Windows,
OperatingSystem_Windows,
OperatingSystem_Windows,
OperatingSystem_Windows,
OperatingSystem_Windows,
OperatingSystem_Windows,
OperatingSystem_Windows,
OperatingSystem_Windows,
OperatingSystem_Windows,
OperatingSystem_Windows,
OperatingSystem_Windows,
OperatingSystem_Windows,
OperatingSystem_Windows,
OperatingSystem_Windows,
OperatingSystem_Windows,
OperatingSystem_Windows,
OperatingSystem_Windows,
OperatingSystem_Windows,
OperatingSystem_Windows,
OperatingSystem_Windows,
OperatingSystem_Windows,
OperatingSystem_Windows,
OperatingSystem_Windows,
OperatingSystem_Windows,
OperatingSystem_Windows,
OperatingSystem_Windows,
OperatingSystem_Windows,
OperatingSystem_Windows,
OperatingSystem_Windows,
OperatingSystem_Windows,
OperatingSystem_Windows,
OperatingSystem_Windows,
OperatingSystem_Linux,
OperatingSystem_Linux,
OperatingSystem_Linux,
OperatingSystem_Linux,
OperatingSystem_Linux,
OperatingSystem_Linux,
OperatingSystem_Linux,
OperatingSystem_Linux,
OperatingSystem_Linux,
OperatingSystem_Linux,
OperatingSystem_Linux,
OperatingSystem_Linux,
OperatingSystem_Linux,
OperatingSystem_Linux,
OperatingSystem_Linux,
OperatingSystem_Linux,
OperatingSystem_Linux,
OperatingSystem_Linux,
OperatingSystem_Linux,
OperatingSystem_Linux,
OperatingSystem_Linux,
OperatingSystem_Linux,
OperatingSystem_Linux,
OperatingSystem_Linux,
OperatingSystem_Linux,
OperatingSystem_Linux,
OperatingSystem_Linux,
OperatingSystem_Linux,
OperatingSystem_Linux,
OperatingSystem_Linux,
OperatingSystem_Linux,
};
String8 d_exception_code_kind_display_string_table[69] =
{
{0},
str8_lit_comp("(Win32) Control-C"),
str8_lit_comp("(Win32) Control-Break"),
str8_lit_comp("(Win32) WinRT Originate Error"),
str8_lit_comp("(Win32) WinRT Transform Error"),
str8_lit_comp("(Win32) RPC Call Cancelled"),
str8_lit_comp("(Win32) Data Type Misalignment"),
str8_lit_comp("(Win32) Access Violation"),
str8_lit_comp("(Win32) In Page Error"),
str8_lit_comp("(Win32) Invalid Handle Specified"),
str8_lit_comp("(Win32) Not Enough Quota"),
str8_lit_comp("(Win32) Illegal Instruction"),
str8_lit_comp("(Win32) Cannot Continue From Exception"),
str8_lit_comp("(Win32) Invalid Exception Disposition Returned By Handler"),
str8_lit_comp("(Win32) Array Bounds Exceeded"),
str8_lit_comp("(Win32) Floating-Point Denormal Operand"),
str8_lit_comp("(Win32) Floating-Point Division By Zero"),
str8_lit_comp("(Win32) Floating-Point Inexact Result"),
str8_lit_comp("(Win32) Floating-Point Invalid Operation"),
str8_lit_comp("(Win32) Floating-Point Overflow"),
str8_lit_comp("(Win32) Floating-Point Stack Check"),
str8_lit_comp("(Win32) Floating-Point Underflow"),
str8_lit_comp("(Win32) Integer Division By Zero"),
str8_lit_comp("(Win32) Integer Overflow"),
str8_lit_comp("(Win32) Privileged Instruction"),
str8_lit_comp("(Win32) Stack Overflow"),
str8_lit_comp("(Win32) Unable To Locate DLL"),
str8_lit_comp("(Win32) Ordinal Not Found"),
str8_lit_comp("(Win32) Entry Point Not Found"),
str8_lit_comp("(Win32) DLL Initialization Failed"),
str8_lit_comp("(Win32) Floating Point SSE Multiple Faults"),
str8_lit_comp("(Win32) Floating Point SSE Multiple Traps"),
str8_lit_comp("(Win32) Assertion Failed"),
str8_lit_comp("(Win32) Module Not Found"),
str8_lit_comp("(Win32) Procedure Not Found"),
str8_lit_comp("(Win32) Sanitizer Error Detected"),
str8_lit_comp("(Win32) Sanitizer Raw Access Violation"),
str8_lit_comp("(Win32) DirectX Debug Layer"),
str8_lit_comp("Control-C"),
str8_lit_comp("Control-Break"),
str8_lit_comp("WinRT Originate Error"),
str8_lit_comp("WinRT Transform Error"),
str8_lit_comp("RPC Call Cancelled"),
str8_lit_comp("Data Type Misalignment"),
str8_lit_comp("Access Violation"),
str8_lit_comp("In Page Error"),
str8_lit_comp("Invalid Handle Specified"),
str8_lit_comp("Not Enough Quota"),
str8_lit_comp("Illegal Instruction"),
str8_lit_comp("Cannot Continue From Exception"),
str8_lit_comp("Invalid Exception Disposition Returned By Handler"),
str8_lit_comp("Array Bounds Exceeded"),
str8_lit_comp("Floating-Point Denormal Operand"),
str8_lit_comp("Floating-Point Division By Zero"),
str8_lit_comp("Floating-Point Inexact Result"),
str8_lit_comp("Floating-Point Invalid Operation"),
str8_lit_comp("Floating-Point Overflow"),
str8_lit_comp("Floating-Point Stack Check"),
str8_lit_comp("Floating-Point Underflow"),
str8_lit_comp("Integer Division By Zero"),
str8_lit_comp("Integer Overflow"),
str8_lit_comp("Privileged Instruction"),
str8_lit_comp("Stack Overflow"),
str8_lit_comp("Unable To Locate DLL"),
str8_lit_comp("Ordinal Not Found"),
str8_lit_comp("Entry Point Not Found"),
str8_lit_comp("DLL Initialization Failed"),
str8_lit_comp("Floating Point SSE Multiple Faults"),
str8_lit_comp("Floating Point SSE Multiple Traps"),
str8_lit_comp("Assertion Failed"),
str8_lit_comp("Module Not Found"),
str8_lit_comp("Procedure Not Found"),
str8_lit_comp("Sanitizer Error Detected"),
str8_lit_comp("Sanitizer Raw Access Violation"),
str8_lit_comp("DirectX Debug Layer"),
str8_lit_comp("SIGHUP (Hangup detected on controlling terminal or death of controlling process)"),
str8_lit_comp("SIGINT (Interrupt from keyboard)"),
str8_lit_comp("SIGQUIT (Quit from keyboard)"),
str8_lit_comp("SIGILL (Illegal Instruction)"),
str8_lit_comp("SIGTRAP (Trace/breakpoint trap)"),
str8_lit_comp("SIGABRT (Abort signal)"),
str8_lit_comp("SIGBUS (Bus error (bad address))"),
str8_lit_comp("SIGFPE (Erroneous arithmetic operation)"),
str8_lit_comp("SIGKILL (Kill signal)"),
str8_lit_comp("SIGUSR1 (User-defined signal 1)"),
str8_lit_comp("SIGSEGV (Invalid memory reference)"),
str8_lit_comp("SIGUSR2 (User-defined signal 2)"),
str8_lit_comp("SIGPIPE (Broken pipe; write to pipe with no readers)"),
str8_lit_comp("SIGALRM (Timer signal)"),
str8_lit_comp("SIGTERM (Termination signal)"),
str8_lit_comp("SIGSTKFLT (Stack fault on coprocessor)"),
str8_lit_comp("SIGCHLD (Child stopped, terminated, or continued)"),
str8_lit_comp("SIGCONT (Continue if stopped)"),
str8_lit_comp("SIGSTOP (Stop process)"),
str8_lit_comp("SIGTSTP (Stop typed at terminal)"),
str8_lit_comp("SIGTTIN (Terminal input for background process)"),
str8_lit_comp("SIGTTOU (Terminal output for background process)"),
str8_lit_comp("SIGURG (Urgent condition on socket)"),
str8_lit_comp("SIGXCPU (CPU time limit exceeded)"),
str8_lit_comp("SIGXFSZ (File size limit exceeded)"),
str8_lit_comp("SIGVTALRM (Virtual alarm clock)"),
str8_lit_comp("SIGPROF (Profiling timer expired)"),
str8_lit_comp("SIGWINCH (Window resize signal)"),
str8_lit_comp("SIGIO (I/O now possible)"),
str8_lit_comp("SIGPWR (Power failure)"),
str8_lit_comp("SIGSYS (Bad system call)"),
};
String8 d_exception_code_kind_lowercase_code_string_table[38] =
String8 d_exception_code_kind_lowercase_code_string_table[69] =
{
{0},
str8_lit_comp("win32_ctrl_c"),
@@ -162,9 +297,40 @@ str8_lit_comp("win32_procedure_not_found"),
str8_lit_comp("win32_sanitizer_error_detected"),
str8_lit_comp("win32_sanitizer_raw_access_violation"),
str8_lit_comp("win32_directx_debug_layer"),
str8_lit_comp("linux_sighup"),
str8_lit_comp("linux_sigint"),
str8_lit_comp("linux_sigquit"),
str8_lit_comp("linux_sigill"),
str8_lit_comp("linux_sigtrap"),
str8_lit_comp("linux_sigabrt"),
str8_lit_comp("linux_sigbus"),
str8_lit_comp("linux_sigfpe"),
str8_lit_comp("linux_sigkill"),
str8_lit_comp("linux_sigusr1"),
str8_lit_comp("linux_sigsegv"),
str8_lit_comp("linux_sigusr2"),
str8_lit_comp("linux_sigpipe"),
str8_lit_comp("linux_sigalrm"),
str8_lit_comp("linux_sigterm"),
str8_lit_comp("linux_sigstkflt"),
str8_lit_comp("linux_sigchld"),
str8_lit_comp("linux_sigcont"),
str8_lit_comp("linux_sigstop"),
str8_lit_comp("linux_sigtstp"),
str8_lit_comp("linux_sigttin"),
str8_lit_comp("linux_sigttou"),
str8_lit_comp("linux_sigurg"),
str8_lit_comp("linux_sigxcpu"),
str8_lit_comp("linux_sigxfsz"),
str8_lit_comp("linux_sigvtalrm"),
str8_lit_comp("linux_sigprof"),
str8_lit_comp("linux_sigwinch"),
str8_lit_comp("linux_sigio"),
str8_lit_comp("linux_sigpwr"),
str8_lit_comp("linux_sigsys"),
};
B8 d_exception_code_kind_default_enable_table[38] =
B8 d_exception_code_kind_default_enable_table[69] =
{
0,
1,
@@ -204,6 +370,37 @@ B8 d_exception_code_kind_default_enable_table[38] =
1,
0,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
1,
0,
1,
1,
0,
0,
0,
1,
1,
0,
0,
0,
0,
1,
1,
};
C_LINKAGE_END
+36 -4
View File
@@ -106,6 +106,37 @@ D_ExceptionCodeKind_Win32ProcedureNotFound,
D_ExceptionCodeKind_Win32SanitizerErrorDetected,
D_ExceptionCodeKind_Win32SanitizerRawAccessViolation,
D_ExceptionCodeKind_Win32DirectXDebugLayer,
D_ExceptionCodeKind_LinuxSIGHUP,
D_ExceptionCodeKind_LinuxSIGINT,
D_ExceptionCodeKind_LinuxSIGQUIT,
D_ExceptionCodeKind_LinuxSIGILL,
D_ExceptionCodeKind_LinuxSIGTRAP,
D_ExceptionCodeKind_LinuxSIGABRT,
D_ExceptionCodeKind_LinuxSIGBUS,
D_ExceptionCodeKind_LinuxSIGFPE,
D_ExceptionCodeKind_LinuxSIGKILL,
D_ExceptionCodeKind_LinuxSIGUSR1,
D_ExceptionCodeKind_LinuxSIGSEGV,
D_ExceptionCodeKind_LinuxSIGUSR2,
D_ExceptionCodeKind_LinuxSIGPIPE,
D_ExceptionCodeKind_LinuxSIGALRM,
D_ExceptionCodeKind_LinuxSIGTERM,
D_ExceptionCodeKind_LinuxSIGSTKFLT,
D_ExceptionCodeKind_LinuxSIGCHLD,
D_ExceptionCodeKind_LinuxSIGCONT,
D_ExceptionCodeKind_LinuxSIGSTOP,
D_ExceptionCodeKind_LinuxSIGTSTP,
D_ExceptionCodeKind_LinuxSIGTTIN,
D_ExceptionCodeKind_LinuxSIGTTOU,
D_ExceptionCodeKind_LinuxSIGURG,
D_ExceptionCodeKind_LinuxSIGXCPU,
D_ExceptionCodeKind_LinuxSIGXFSZ,
D_ExceptionCodeKind_LinuxSIGVTALRM,
D_ExceptionCodeKind_LinuxSIGPROF,
D_ExceptionCodeKind_LinuxSIGWINCH,
D_ExceptionCodeKind_LinuxSIGIO,
D_ExceptionCodeKind_LinuxSIGPWR,
D_ExceptionCodeKind_LinuxSIGSYS,
D_ExceptionCodeKind_COUNT,
} D_ExceptionCodeKind;
@@ -133,10 +164,11 @@ struct {B32 *value_ptr; String8 name;} DEV_toggle_table[] =
C_LINKAGE_BEGIN
extern String8 d_entity_kind_code_name_table[13];
extern String8 d_entity_kind_display_string_table[13];
extern U32 d_exception_code_kind_code_table[38];
extern String8 d_exception_code_kind_display_string_table[38];
extern String8 d_exception_code_kind_lowercase_code_string_table[38];
extern B8 d_exception_code_kind_default_enable_table[38];
extern U32 d_exception_code_kind_code_table[69];
extern OperatingSystem d_exception_code_kind_os_table[69];
extern String8 d_exception_code_kind_display_string_table[69];
extern String8 d_exception_code_kind_lowercase_code_string_table[69];
extern B8 d_exception_code_kind_default_enable_table[69];
C_LINKAGE_END
+32 -33
View File
@@ -1,38 +1,37 @@
// Copyright (c) Epic Games Tools
// Licensed under the MIT license (https://opensource.org/license/mit/)
@table(name code repeatable) LNX_SignalCodeTable:
@table(name name_lower code repeatable break_default desc) LNX_SignalCodeTable:
{
{ SIGHUP 1 1 }
{ SIGINT 2 1 }
{ SIGQUIT 3 1 }
{ SIGILL 4 1 }
{ SIGTRAP 5 1 }
{ SIGABRT 6 1 }
{ SIGIOT 6 1 }
{ SIGBUS 7 1 }
{ SIGFPE 8 1 }
{ SIGKILL 9 1 }
{ SIGUSR1 10 1 }
{ SIGSEGV 11 1 }
{ SIGUSR2 12 1 }
{ SIGPIPE 13 1 }
{ SIGALRM 14 1 }
{ SIGTERM 15 1 }
{ SIGSTKFLT 16 1 }
{ SIGCHLD 17 0 }
{ SIGCONT 18 0 }
{ SIGSTOP 19 1 }
{ SIGTSTP 20 1 }
{ SIGTTIN 21 1 }
{ SIGTTOU 22 1 }
{ SIGURG 23 0 }
{ SIGXCPU 24 1 }
{ SIGXFSZ 25 1 }
{ SIGVTALRM 26 1 }
{ SIGPROF 27 1 }
{ SIGWINCH 28 0 }
{ SIGIO 29 1 }
{ SIGPWR 30 1 }
{ SIGSYS 31 1 }
{ SIGHUP sighup 1 1 1 "Hangup detected on controlling terminal or death of controlling process" }
{ SIGINT sigint 2 1 1 "Interrupt from keyboard"}
{ SIGQUIT sigquit 3 1 1 "Quit from keyboard"}
{ SIGILL sigill 4 1 1 "Illegal Instruction"}
{ SIGTRAP sigtrap 5 1 1 "Trace/breakpoint trap"}
{ SIGABRT sigabrt 6 1 1 "Abort signal"}
{ SIGBUS sigbus 7 1 1 "Bus error (bad address)"}
{ SIGFPE sigfpe 8 1 1 "Erroneous arithmetic operation"}
{ SIGKILL sigkill 9 1 1 "Kill signal"}
{ SIGUSR1 sigusr1 10 1 1 "User-defined signal 1"}
{ SIGSEGV sigsegv 11 1 1 "Invalid memory reference"}
{ SIGUSR2 sigusr2 12 1 1 "User-defined signal 2"}
{ SIGPIPE sigpipe 13 1 1 "Broken pipe; write to pipe with no readers"}
{ SIGALRM sigalrm 14 1 1 "Timer signal"}
{ SIGTERM sigterm 15 1 1 "Termination signal"}
{ SIGSTKFLT sigstkflt 16 1 1 "Stack fault on coprocessor"}
{ SIGCHLD sigchld 17 0 1 "Child stopped, terminated, or continued"}
{ SIGCONT sigcont 18 0 0 "Continue if stopped"}
{ SIGSTOP sigstop 19 1 1 "Stop process"}
{ SIGTSTP sigtstp 20 1 1 "Stop typed at terminal"}
{ SIGTTIN sigttin 21 1 0 "Terminal input for background process"}
{ SIGTTOU sigttou 22 1 0 "Terminal output for background process"}
{ SIGURG sigurg 23 0 0 "Urgent condition on socket"}
{ SIGXCPU sigxcpu 24 1 1 "CPU time limit exceeded"}
{ SIGXFSZ sigxfsz 25 1 1 "File size limit exceeded"}
{ SIGVTALRM sigvtalrm 26 1 0 "Virtual alarm clock"}
{ SIGPROF sigprof 27 1 0 "Profiling timer expired"}
{ SIGWINCH sigwinch 28 0 0 "Window resize signal"}
{ SIGIO sigio 29 1 0 "I/O now possible"}
{ SIGPWR sigpwr 30 1 1 "Power failure"}
{ SIGSYS sigsys 31 1 1 "Bad system call"}
}
+1 -1
View File
@@ -439,7 +439,7 @@ RD_VocabInfo rd_vocab_info_table[370] =
RD_NameSchemaInfo rd_name_schema_info_table[39] =
{
{str8_lit_comp("user"), 0, str8_lit_comp("@expand_commands(edit_user_theme) x:\n{\n //- rjf: animations\n @display_name('Animations') @description(\"Enables animations.\")\n @default(1) 'animations': bool,\n @display_name('Scrolling Animations') @description(\"Enables scrolling animations.\")\n @expand_if(\"$.animations\") @default(1) 'scrolling_animations': bool,\n @display_name('Tooltip Animations') @description(\"Enables tooltip animations.\")\n @expand_if(\"$.animations\") @default(1) 'tooltip_animations': bool,\n @display_name('Menu Animations') @description(\"Enables menu animations.\")\n @expand_if(\"$.animations\") @default(1) 'menu_animations': bool,\n\n //- rjf: fonts\n @display_name('Use Alternative Font For UI') @description(\"Uses an alternative font for non-code UI elements.\")\n @default(1) 'use_alternative_font_for_ui': bool,\n @expand_if(\"$.use_alternative_font_for_ui\") @display_name('UI Font') @description(\"The name of, or path to, the font used when displaying non-code UI elements.\")\n @default('') 'main_font': string,\n @expand_if(\"$.use_alternative_font_for_ui\") @display_name('Code Font') @description(\"The name of, or path to, the font used when displaying code.\")\n @default('') 'code_font': string,\n @expand_if(\"!$.use_alternative_font_for_ui\") @display_name('Font') @description(\"The name of, or path to, the font used in all UI.\")\n @default('') 'font': string,\n\n //- rjf: theme\n @default(\"Default (Dark)\") @display_name('User Theme')\n @description(\"The user's theme, which describes all colors used throughout the UI.\")\n 'theme': string,\n @no_expand @display_name('User Theme')\n 'theme_colors': set,\n\n //- rjf: auto eval\n @display_name('Show Auto Watches In Source / Disassembly') @description(\"Enables the display of auto watch expressions inline in source and disassembly views.\") @default(1)\n 'show_autos_in_src_and_disasm': bool,\n\n //- rjf: autocompletion\n @display_name('Autocompletion Lister') @description(\"Enables the autocompletion lister while typing expressions.\") @default(1)\n 'autocompletion_lister': bool,\n @display_name('View Call Argument Helper') @description(\"Enables the view call argument helper, which shows view arguments and documentation, while typing expressions.\") @default(1)\n 'view_call_argument_helper': bool,\n\n //- rjf: scope decorations\n @default(1) @display_name('Cursor Scope Lines') @description(\"Controls whether or not scopes containing the cursor in text views are drawn.\")\n 'cursor_scope_lines': bool,\n @default(1) @display_name('Cursor Scope End Annotations') @description(\"Controls whether or not ending annotations for scopes containing the cursor are drawn.\")\n 'cursor_scope_end_annotations': bool,\n\n //- rjf: cursor decorations\n @default(1) @display_name('Cursor Trail') @expand_if(\"$.animations\") @description(\"Controls whether or not a movement trail animation of the cursor is drawn.\")\n 'cursor_trail': bool,\n\n //- rjf: thread & breakpoint decorations\n @default(1) @display_name('Thread Lines') @description(\"Controls whether or not a long horizontal line is drawn before the next line or instruction that the selected thread will execute in source and disassembly views.\")\n 'thread_lines': bool,\n @default(1) @display_name('Thread Glow') @description(\"Controls whether or not a glowing effect is drawn on the selected thread in source and disassembly views.\")\n 'thread_glow': bool,\n @default(1) @display_name('Breakpoint Lines') @description(\"Controls whether or not a long horizontal line is drawn before the line or instruction at which a breakpoint is placed, in source and disassembly views.\")\n 'breakpoint_lines': bool,\n @default(1) @display_name('Breakpoint Glow') @description(\"Controls whether or not a glowing effect is drawn on breakpoints in source and disassembly views.\")\n 'breakpoint_glow': bool,\n\n //- rjf: occluding background settings\n @default(0) @display_name('Opaque Backgrounds') @description(\"Controls whether or not all floating background colors are forced to be fully opaque.\")\n 'opaque_backgrounds': bool,\n @default(1) @display_name('Background Blur') @description(\"Controls whether or not occluded regions behind floating elements are blurred.\")\n 'background_blur': bool,\n\n //- rjf: appearance settings\n @default(1) @display_name('Drop Shadows') @description(\"Controls whether or not drop shadows are drawn.\")\n 'drop_shadows': bool,\n @default(1.f) @display_name('Rounded Corner Amount') @description(\"Controls the degree to which UI corners are rounded.\")\n 'rounded_corner_amount': @range[0, 1] f32,\n\n //- rjf: code formatting settings\n @default(2) @display_name('User Tab Width') 'tab_width': @range[1, 32] u64,\n\n //- rjf: windows style menu bar\n @default(1) @display_name('Focus Menu Bar With Alt') @description(\"Mimics standard Windows behavior of focusing the menu bar using the Alt key.\")\n 'focus_menu_bar_wLine truncated
{str8_lit_comp("project"), 0, str8_lit_comp("@expand_commands(edit_project_theme) x:\n{\n @display_name('Project Name') 'name': string,\n @default(2) @display_name('Project Tab Width') 'tab_width': @range[1, 32] u64,\n\n //- rjf: visualizers\n @display_name('Display Pointer Addresses Before Contents') @description(\"When visualizing pointers, always shows the address first, before showing contents at the pointer's address.\")\n @default(0) display_pointer_addresses_before_contents: bool,\n @display_name('Use Default C++ STL Type Visualizers') @description(\"Enables the built-in type views for C++ STL types.\")\n @default(1) use_default_stl_type_views: bool,\n @display_name('Use Default Unreal Engine Type Visualizers') @description(\"Enables the built-in type views for Unreal Engine types.\")\n @default(1) use_default_ue_type_views: bool,\n\n //- rjf: theme\n @default(\"None\") @display_name('Project Theme') @description(\"The project's theme, which describes all colors used throughout the UI, and can override the user's theme.\")\n 'theme': string,\n @no_expand @display_name('Project Theme') @description(\"The project's theme, which describes all colors used throughout the UI, and can override the user's theme.\")\n 'theme_colors': set,\n\n //- rjf: exception settings\n @default(1) @display_name(\"Break On Win32 Control-C Exceptions\") @description(\"Code: 0x40010005\")\n win32_ctrl_c: bool;\n @default(1) @display_name(\"Break On Win32 Control-Break Exceptions\") @description(\"Code: 0x40010008\")\n win32_ctrl_break: bool;\n @default(0) @display_name(\"Break On Win32 WinRT Originate Error Exceptions\") @description(\"Code: 0x40080201\")\n win32_win_rt_originate_error: bool;\n @default(0) @display_name(\"Break On Win32 WinRT Transform Error Exceptions\") @description(\"Code: 0x40080202\")\n win32_win_rt_transform_error: bool;\n @default(0) @display_name(\"Break On Win32 RPC Call Cancelled Exceptions\") @description(\"Code: 0x0000071a\")\n win32_rpc_call_cancelled: bool;\n @default(0) @display_name(\"Break On Win32 Data Type Misalignment Exceptions\") @description(\"Code: 0x80000002\")\n win32_datatype_misalignment: bool;\n @default(1) @display_name(\"Break On Win32 Access Violation Exceptions\") @description(\"Code: 0xc0000005\")\n win32_access_violation: bool;\n @default(0) @display_name(\"Break On Win32 In Page Error Exceptions\") @description(\"Code: 0xc0000006\")\n win32_in_page_error: bool;\n @default(1) @display_name(\"Break On Win32 Invalid Handle Specified Exceptions\") @description(\"Code: 0xc0000008\")\n win32_invalid_handle: bool;\n @default(0) @display_name(\"Break On Win32 Not Enough Quota Exceptions\") @description(\"Code: 0xc0000017\")\n win32_not_enough_quota: bool;\n @default(0) @display_name(\"Break On Win32 Illegal Instruction Exceptions\") @description(\"Code: 0xc000001d\")\n win32_illegal_instruction: bool;\n @default(0) @display_name(\"Break On Win32 Cannot Continue From Exception Exceptions\") @description(\"Code: 0xc0000025\")\n win32_cannot_continue_exception: bool;\n @default(0) @display_name(\"Break On Win32 Invalid Exception Disposition Returned By Handler Exceptions\") @description(\"Code: 0xc0000026\")\n win32_invalid_exception_disposition: bool;\n @default(0) @display_name(\"Break On Win32 Array Bounds Exceeded Exceptions\") @description(\"Code: 0xc000008c\")\n win32_array_bounds_exceeded: bool;\n @default(0) @display_name(\"Break On Win32 Floating-Point Denormal Operand Exceptions\") @description(\"Code: 0xc000008d\")\n win32_floating_point_denormal_operand: bool;\n @default(0) @display_name(\"Break On Win32 Floating-Point Division By Zero Exceptions\") @description(\"Code: 0xc000008e\")\n win32_floating_point_division_by_zero: bool;\n @default(0) @display_name(\"Break On Win32 Floating-Point Inexact Result Exceptions\") @description(\"Code: 0xc000008f\")\n win32_floating_point_inexact_result: bool;\n @default(0) @display_name(\"Break On Win32 Floating-Point Invalid Operation Exceptions\") @description(\"Code: 0xc0000090\")\n win32_floating_point_invalid_operation: bool;\n @default(0) @display_name(\"Break On Win32 Floating-Point Overflow Exceptions\") @description(\"Code: 0xc0000091\")\n win32_floating_point_overflow: bool;\n @default(0) @display_name(\"Break On Win32 Floating-Point Stack Check Exceptions\") @description(\"Code: 0xc0000092\")\n win32_floating_point_stack_check: bool;\n @default(0) @display_name(\"Break On Win32 Floating-Point Underflow Exceptions\") @description(\"Code: 0xc0000093\")\n win32_floating_point_underflow: bool;\n @default(0) @display_name(\"Break On Win32 Integer Division By Zero Exceptions\") @description(\"Code: 0xc0000094\")\n win32_integer_division_by_zero: bool;\n @default(0) @display_name(\"Break On Win32 Integer Overflow Exceptions\") @description(\"Code: 0xc0000095\")\n win32_integer_overflow: bool;\n @default(0) @display_name(\"Break On Win32 Privileged Instruction Exceptions\ Line truncated
{str8_lit_comp("project"), 0, str8_lit_comp("@expand_commands(edit_project_theme) x:\n{\n @display_name('Project Name') 'name': string,\n @default(2) @display_name('Project Tab Width') 'tab_width': @range[1, 32] u64,\n\n //- rjf: visualizers\n @display_name('Display Pointer Addresses Before Contents') @description(\"When visualizing pointers, always shows the address first, before showing contents at the pointer's address.\")\n @default(0) display_pointer_addresses_before_contents: bool,\n @display_name('Use Default C++ STL Type Visualizers') @description(\"Enables the built-in type views for C++ STL types.\")\n @default(1) use_default_stl_type_views: bool,\n @display_name('Use Default Unreal Engine Type Visualizers') @description(\"Enables the built-in type views for Unreal Engine types.\")\n @default(1) use_default_ue_type_views: bool,\n\n //- rjf: theme\n @default(\"None\") @display_name('Project Theme') @description(\"The project's theme, which describes all colors used throughout the UI, and can override the user's theme.\")\n 'theme': string,\n @no_expand @display_name('Project Theme') @description(\"The project's theme, which describes all colors used throughout the UI, and can override the user's theme.\")\n 'theme_colors': set,\n\n //- rjf: win32 exception settings\n @default(1) @display_name(\"Break on Win32 Control-C Exceptions\") @description(\"Code: 0x40010005\")\n win32_ctrl_c: bool;\n @default(1) @display_name(\"Break on Win32 Control-Break Exceptions\") @description(\"Code: 0x40010008\")\n win32_ctrl_break: bool;\n @default(0) @display_name(\"Break on Win32 WinRT Originate Error Exceptions\") @description(\"Code: 0x40080201\")\n win32_win_rt_originate_error: bool;\n @default(0) @display_name(\"Break on Win32 WinRT Transform Error Exceptions\") @description(\"Code: 0x40080202\")\n win32_win_rt_transform_error: bool;\n @default(0) @display_name(\"Break on Win32 RPC Call Cancelled Exceptions\") @description(\"Code: 0x0000071a\")\n win32_rpc_call_cancelled: bool;\n @default(0) @display_name(\"Break on Win32 Data Type Misalignment Exceptions\") @description(\"Code: 0x80000002\")\n win32_datatype_misalignment: bool;\n @default(1) @display_name(\"Break on Win32 Access Violation Exceptions\") @description(\"Code: 0xc0000005\")\n win32_access_violation: bool;\n @default(0) @display_name(\"Break on Win32 In Page Error Exceptions\") @description(\"Code: 0xc0000006\")\n win32_in_page_error: bool;\n @default(1) @display_name(\"Break on Win32 Invalid Handle Specified Exceptions\") @description(\"Code: 0xc0000008\")\n win32_invalid_handle: bool;\n @default(0) @display_name(\"Break on Win32 Not Enough Quota Exceptions\") @description(\"Code: 0xc0000017\")\n win32_not_enough_quota: bool;\n @default(0) @display_name(\"Break on Win32 Illegal Instruction Exceptions\") @description(\"Code: 0xc000001d\")\n win32_illegal_instruction: bool;\n @default(0) @display_name(\"Break on Win32 Cannot Continue From Exception Exceptions\") @description(\"Code: 0xc0000025\")\n win32_cannot_continue_exception: bool;\n @default(0) @display_name(\"Break on Win32 Invalid Exception Disposition Returned By Handler Exceptions\") @description(\"Code: 0xc0000026\")\n win32_invalid_exception_disposition: bool;\n @default(0) @display_name(\"Break on Win32 Array Bounds Exceeded Exceptions\") @description(\"Code: 0xc000008c\")\n win32_array_bounds_exceeded: bool;\n @default(0) @display_name(\"Break on Win32 Floating-Point Denormal Operand Exceptions\") @description(\"Code: 0xc000008d\")\n win32_floating_point_denormal_operand: bool;\n @default(0) @display_name(\"Break on Win32 Floating-Point Division By Zero Exceptions\") @description(\"Code: 0xc000008e\")\n win32_floating_point_division_by_zero: bool;\n @default(0) @display_name(\"Break on Win32 Floating-Point Inexact Result Exceptions\") @description(\"Code: 0xc000008f\")\n win32_floating_point_inexact_result: bool;\n @default(0) @display_name(\"Break on Win32 Floating-Point Invalid Operation Exceptions\") @description(\"Code: 0xc0000090\")\n win32_floating_point_invalid_operation: bool;\n @default(0) @display_name(\"Break on Win32 Floating-Point Overflow Exceptions\") @description(\"Code: 0xc0000091\")\n win32_floating_point_overflow: bool;\n @default(0) @display_name(\"Break on Win32 Floating-Point Stack Check Exceptions\") @description(\"Code: 0xc0000092\")\n win32_floating_point_stack_check: bool;\n @default(0) @display_name(\"Break on Win32 Floating-Point Underflow Exceptions\") @description(\"Code: 0xc0000093\")\n win32_floating_point_underflow: bool;\n @default(0) @display_name(\"Break on Win32 Integer Division By Zero Exceptions\") @description(\"Code: 0xc0000094\")\n win32_integer_division_by_zero: bool;\n @default(0) @display_name(\"Break on Win32 Integer Overflow Exceptions\") @description(\"Code: 0xc0000095\")\n win32_integer_overflow: bool;\n @default(0) @display_name(\"Break on Win32 Privileged Instruction ExcepLine truncated
{str8_lit_comp("theme_color"), 0, str8_lit_comp("@collection_commands(add_theme_color, fork_theme, save_theme, save_and_set_theme)\n@row_commands(duplicate_cfg, remove_cfg)\nx:\n{\n @display_name('Tags') tags: string,\n @display_name('Value') value: @color @hex u32,\n}\n")},
{str8_lit_comp("window"), 0, str8_lit_comp("x:\n{\n //- rjf: text rasterization settings\n @default(1) @display_name('Smooth UI Text') @description(\"Controls whether or not UI text is fully anti-aliased, for a smoother appearance.\")\n 'smooth_ui_text': bool,\n @default(1) @display_name('Hint UI Text') @description(\"Controls whether or not UI text is hinted, for better text readability at small sizes.\")\n 'hint_ui_text': bool,\n @default(0) @display_name('Smooth Code Text') @description(\"Controls whether or not code text is fully anti-aliased, for a smoother appearance.\")\n 'smooth_code_text': bool,\n @default(1) @display_name('Hint Code Text') @description(\"Controls whether or not code text is hinted, for better text readability at small sizes.\")\n 'hint_code_text': bool,\n @default(11) @display_name('Window Font Size') @description(\"Controls the window's default font size. Does not apply to tabs with their own font size set.\")\n 'font_size': @range[6, 72] u64,\n\n //- rjf: size settings\n @default(3.f) @display_name('Window Row Height') @description(\"Controls the window's default row height, in multiples of the font size. Does not apply to tabs with their own row height set.\")\n 'row_height': @range[1.75f, 5.f] f32,\n @default(3.f) @description(\"Controls the height of tabs, in multiples of the font size.\")\n 'tab_height': @range[1.75f, 5.f] f32,\n\n //- rjf: theme settings\n @default(1) @display_name('Use Project Theme') @description(\"Prefer using the project theme for this window, if any. If off, only the user's theme settings will be used.\")\n 'use_project_theme': bool,\n}\n")},
{str8_lit_comp("tab"), 0, str8_lit_comp("@row_commands(@file copy_tab_full_path, @file show_file_in_explorer, duplicate_tab, close_tab)\nx:\n{\n @override @display_name('Tab Font Size') @description(\"Controls the tab's font size.\") @no_callee_helper\n 'font_size': @range[6, 72] u64,\n}\n")},
+103 -39
View File
@@ -329,7 +329,7 @@ RD_VocabTable:
//- rjf: breakpoint behavior
@default(0) @display_name('Lock New Breakpoints To Selected Thread') @description("When placing breakpoints, locks them to the selected thread by default.")
'lock_new_breakpoints_to_selected_thread': bool,
//- rjf: update check
@default(1) @display_name('Check For Updates') @description("Enables a small network request to check if there is a newer release version available.")
'check_for_updates': bool,
@@ -368,81 +368,145 @@ RD_VocabTable:
@no_expand @display_name('Project Theme') @description("The project's theme, which describes all colors used throughout the UI, and can override the user's theme.")
'theme_colors': set,
//- rjf: exception settings
@default(1) @display_name("Break On Win32 Control-C Exceptions") @description("Code: 0x40010005")
//- rjf: win32 exception settings
@default(1) @display_name("Break on Win32 Control-C Exceptions") @description("Code: 0x40010005")
win32_ctrl_c: bool;
@default(1) @display_name("Break On Win32 Control-Break Exceptions") @description("Code: 0x40010008")
@default(1) @display_name("Break on Win32 Control-Break Exceptions") @description("Code: 0x40010008")
win32_ctrl_break: bool;
@default(0) @display_name("Break On Win32 WinRT Originate Error Exceptions") @description("Code: 0x40080201")
@default(0) @display_name("Break on Win32 WinRT Originate Error Exceptions") @description("Code: 0x40080201")
win32_win_rt_originate_error: bool;
@default(0) @display_name("Break On Win32 WinRT Transform Error Exceptions") @description("Code: 0x40080202")
@default(0) @display_name("Break on Win32 WinRT Transform Error Exceptions") @description("Code: 0x40080202")
win32_win_rt_transform_error: bool;
@default(0) @display_name("Break On Win32 RPC Call Cancelled Exceptions") @description("Code: 0x0000071a")
@default(0) @display_name("Break on Win32 RPC Call Cancelled Exceptions") @description("Code: 0x0000071a")
win32_rpc_call_cancelled: bool;
@default(0) @display_name("Break On Win32 Data Type Misalignment Exceptions") @description("Code: 0x80000002")
@default(0) @display_name("Break on Win32 Data Type Misalignment Exceptions") @description("Code: 0x80000002")
win32_datatype_misalignment: bool;
@default(1) @display_name("Break On Win32 Access Violation Exceptions") @description("Code: 0xc0000005")
@default(1) @display_name("Break on Win32 Access Violation Exceptions") @description("Code: 0xc0000005")
win32_access_violation: bool;
@default(0) @display_name("Break On Win32 In Page Error Exceptions") @description("Code: 0xc0000006")
@default(0) @display_name("Break on Win32 In Page Error Exceptions") @description("Code: 0xc0000006")
win32_in_page_error: bool;
@default(1) @display_name("Break On Win32 Invalid Handle Specified Exceptions") @description("Code: 0xc0000008")
@default(1) @display_name("Break on Win32 Invalid Handle Specified Exceptions") @description("Code: 0xc0000008")
win32_invalid_handle: bool;
@default(0) @display_name("Break On Win32 Not Enough Quota Exceptions") @description("Code: 0xc0000017")
@default(0) @display_name("Break on Win32 Not Enough Quota Exceptions") @description("Code: 0xc0000017")
win32_not_enough_quota: bool;
@default(0) @display_name("Break On Win32 Illegal Instruction Exceptions") @description("Code: 0xc000001d")
@default(0) @display_name("Break on Win32 Illegal Instruction Exceptions") @description("Code: 0xc000001d")
win32_illegal_instruction: bool;
@default(0) @display_name("Break On Win32 Cannot Continue From Exception Exceptions") @description("Code: 0xc0000025")
@default(0) @display_name("Break on Win32 Cannot Continue From Exception Exceptions") @description("Code: 0xc0000025")
win32_cannot_continue_exception: bool;
@default(0) @display_name("Break On Win32 Invalid Exception Disposition Returned By Handler Exceptions") @description("Code: 0xc0000026")
@default(0) @display_name("Break on Win32 Invalid Exception Disposition Returned By Handler Exceptions") @description("Code: 0xc0000026")
win32_invalid_exception_disposition: bool;
@default(0) @display_name("Break On Win32 Array Bounds Exceeded Exceptions") @description("Code: 0xc000008c")
@default(0) @display_name("Break on Win32 Array Bounds Exceeded Exceptions") @description("Code: 0xc000008c")
win32_array_bounds_exceeded: bool;
@default(0) @display_name("Break On Win32 Floating-Point Denormal Operand Exceptions") @description("Code: 0xc000008d")
@default(0) @display_name("Break on Win32 Floating-Point Denormal Operand Exceptions") @description("Code: 0xc000008d")
win32_floating_point_denormal_operand: bool;
@default(0) @display_name("Break On Win32 Floating-Point Division By Zero Exceptions") @description("Code: 0xc000008e")
@default(0) @display_name("Break on Win32 Floating-Point Division By Zero Exceptions") @description("Code: 0xc000008e")
win32_floating_point_division_by_zero: bool;
@default(0) @display_name("Break On Win32 Floating-Point Inexact Result Exceptions") @description("Code: 0xc000008f")
@default(0) @display_name("Break on Win32 Floating-Point Inexact Result Exceptions") @description("Code: 0xc000008f")
win32_floating_point_inexact_result: bool;
@default(0) @display_name("Break On Win32 Floating-Point Invalid Operation Exceptions") @description("Code: 0xc0000090")
@default(0) @display_name("Break on Win32 Floating-Point Invalid Operation Exceptions") @description("Code: 0xc0000090")
win32_floating_point_invalid_operation: bool;
@default(0) @display_name("Break On Win32 Floating-Point Overflow Exceptions") @description("Code: 0xc0000091")
@default(0) @display_name("Break on Win32 Floating-Point Overflow Exceptions") @description("Code: 0xc0000091")
win32_floating_point_overflow: bool;
@default(0) @display_name("Break On Win32 Floating-Point Stack Check Exceptions") @description("Code: 0xc0000092")
@default(0) @display_name("Break on Win32 Floating-Point Stack Check Exceptions") @description("Code: 0xc0000092")
win32_floating_point_stack_check: bool;
@default(0) @display_name("Break On Win32 Floating-Point Underflow Exceptions") @description("Code: 0xc0000093")
@default(0) @display_name("Break on Win32 Floating-Point Underflow Exceptions") @description("Code: 0xc0000093")
win32_floating_point_underflow: bool;
@default(0) @display_name("Break On Win32 Integer Division By Zero Exceptions") @description("Code: 0xc0000094")
@default(0) @display_name("Break on Win32 Integer Division By Zero Exceptions") @description("Code: 0xc0000094")
win32_integer_division_by_zero: bool;
@default(0) @display_name("Break On Win32 Integer Overflow Exceptions") @description("Code: 0xc0000095")
@default(0) @display_name("Break on Win32 Integer Overflow Exceptions") @description("Code: 0xc0000095")
win32_integer_overflow: bool;
@default(0) @display_name("Break On Win32 Privileged Instruction Exceptions") @description("Code: 0xc0000096")
@default(0) @display_name("Break on Win32 Privileged Instruction Exceptions") @description("Code: 0xc0000096")
win32_privileged_instruction: bool;
@default(0) @display_name("Break On Win32 Stack Overflow Exceptions") @description("Code: 0xc00000fd")
@default(0) @display_name("Break on Win32 Stack Overflow Exceptions") @description("Code: 0xc00000fd")
win32_stack_overflow: bool;
@default(0) @display_name("Break On Win32 Unable To Locate DLL Exceptions") @description("Code: 0xc0000135")
@default(0) @display_name("Break on Win32 Unable To Locate DLL Exceptions") @description("Code: 0xc0000135")
win32_unable_to_locate_dll: bool;
@default(0) @display_name("Break On Win32 Ordinal Not Found Exceptions") @description("Code: 0xc0000138")
@default(0) @display_name("Break on Win32 Ordinal Not Found Exceptions") @description("Code: 0xc0000138")
win32_ordinal_not_found: bool;
@default(0) @display_name("Break On Win32 Entry Point Not Found Exceptions") @description("Code: 0xc0000139")
@default(0) @display_name("Break on Win32 Entry Point Not Found Exceptions") @description("Code: 0xc0000139")
win32_entry_point_not_found: bool;
@default(0) @display_name("Break On Win32 DLL Initialization Failed Exceptions") @description("Code: 0xc0000142")
@default(0) @display_name("Break on Win32 DLL Initialization Failed Exceptions") @description("Code: 0xc0000142")
win32_dll_initialization_failed: bool;
@default(0) @display_name("Break On Win32 Floating Point SSE Multiple Faults Exceptions") @description("Code: 0xc00002b4")
@default(0) @display_name("Break on Win32 Floating Point SSE Multiple Faults Exceptions") @description("Code: 0xc00002b4")
win32_floating_point_sse_multiple_faults: bool;
@default(0) @display_name("Break On Win32 Floating Point SSE Multiple Traps Exceptions") @description("Code: 0xc00002b5")
@default(0) @display_name("Break on Win32 Floating Point SSE Multiple Traps Exceptions") @description("Code: 0xc00002b5")
win32_floating_point_sse_multiple_traps: bool;
@default(1) @display_name("Break On Win32 Assertion Failed Exceptions") @description("Code: 0xc0000420")
@default(1) @display_name("Break on Win32 Assertion Failed Exceptions") @description("Code: 0xc0000420")
win32_assertion_failed: bool;
@default(0) @display_name("Break On Win32 Module Not Found Exceptions") @description("Code: 0xc06d007e")
@default(0) @display_name("Break on Win32 Module Not Found Exceptions") @description("Code: 0xc06d007e")
win32_module_not_found: bool;
@default(0) @display_name("Break On Win32 Procedure Not Found Exceptions") @description("Code: 0xc06d007f")
@default(0) @display_name("Break on Win32 Procedure Not Found Exceptions") @description("Code: 0xc06d007f")
win32_procedure_not_found: bool;
@default(1) @display_name("Break On Win32 Sanitizer Error Detected Exceptions") @description("Code: 0xe073616e")
@default(1) @display_name("Break on Win32 Sanitizer Error Detected Exceptions") @description("Code: 0xe073616e")
win32_sanitizer_error_detected: bool;
@default(0) @display_name("Break On Win32 Sanitizer Raw Access Violation Exceptions") @description("Code: 0xe0736171")
@default(0) @display_name("Break on Win32 Sanitizer Raw Access Violation Exceptions") @description("Code: 0xe0736171")
win32_sanitizer_raw_access_violation: bool;
@default(1) @display_name("Break On Win32 DirectX Debug Layer Exceptions") @description("Code: 0x0000087a")
@default(1) @display_name("Break on Win32 DirectX Debug Layer Exceptions") @description("Code: 0x0000087a")
win32_directx_debug_layer: bool;
//- rjf: linux exception settings
@display_name("Break on Linux SIGHUP") @default(1) @description("Hangup detected on controlling terminal or death of controlling process (Code: 1)")
linux_sighup: bool,
@display_name("Break on Linux SIGINT") @default(1) @description("Interrupt from keyboard (Code: 2)")
linux_sigint: bool,
@display_name("Break on Linux SIGQUIT") @default(1) @description("Quit from keyboard (Code: 3)")
linux_sigquit: bool,
@display_name("Break on Linux SIGILL") @default(1) @description("Illegal Instruction (Code: 4)")
linux_sigill: bool,
@display_name("Break on Linux SIGTRAP") @default(1) @description("Trace/breakpoint trap (Code: 5)")
linux_sigtrap: bool,
@display_name("Break on Linux SIGABRT") @default(1) @description("Abort signal (Code: 6)")
linux_sigabrt: bool,
@display_name("Break on Linux SIGBUS") @default(1) @description("Bus error (bad address) (Code: 7)")
linux_sigbus: bool,
@display_name("Break on Linux SIGFPE") @default(1) @description("Erroneous arithmetic operation (Code: 8)")
linux_sigfpe: bool,
@display_name("Break on Linux SIGKILL") @default(1) @description("Kill signal (Code: 9)")
linux_sigkill: bool,
@display_name("Break on Linux SIGUSR1") @default(1) @description("User-defined signal 1 (Code: 10)")
linux_sigusr1: bool,
@display_name("Break on Linux SIGSEGV") @default(1) @description("Invalid memory reference (Code: 11)")
linux_sigsegv: bool,
@display_name("Break on Linux SIGUSR2") @default(1) @description("User-defined signal 2 (Code: 12)")
linux_sigusr2: bool,
@display_name("Break on Linux SIGPIPE") @default(1) @description("Broken pipe; write to pipe with no readers (Code: 13)")
linux_sigpipe: bool,
@display_name("Break on Linux SIGALRM") @default(1) @description("Timer signal (Code: 14)")
linux_sigalrm: bool,
@display_name("Break on Linux SIGTERM") @default(1) @description("Termination signal (Code: 15)")
linux_sigterm: bool,
@display_name("Break on Linux SIGSTKFLT") @default(1) @description("Stack fault on coprocessor (Code: 16)")
linux_sigstkflt: bool,
@display_name("Break on Linux SIGCHLD") @default(1) @description("Child stopped, terminated, or continued (Code: 17)")
linux_sigchld: bool,
@display_name("Break on Linux SIGCONT") @default(1) @description("Continue if stopped (Code: 18)")
linux_sigcont: bool,
@display_name("Break on Linux SIGSTOP") @default(1) @description("Stop process (Code: 19)")
linux_sigstop: bool,
@display_name("Break on Linux SIGTSTP") @default(1) @description("Stop typed at terminal (Code: 20)")
linux_sigtstp: bool,
@display_name("Break on Linux SIGTTIN") @default(1) @description("Terminal input for background process (Code: 21)")
linux_sigttin: bool,
@display_name("Break on Linux SIGTTOU") @default(1) @description("Terminal output for background process (Code: 22)")
linux_sigttou: bool,
@display_name("Break on Linux SIGURG") @default(1) @description("Urgent condition on socket (Code: 23)")
linux_sigurg: bool,
@display_name("Break on Linux SIGXCPU") @default(1) @description("CPU time limit exceeded (Code: 24)")
linux_sigxcpu: bool,
@display_name("Break on Linux SIGXFSZ") @default(1) @description("File size limit exceeded (Code: 25)")
linux_sigxfsz: bool,
@display_name("Break on Linux SIGVTALRM") @default(1) @description("Virtual alarm clock (Code: 26)")
linux_sigvtalrm: bool,
@display_name("Break on Linux SIGPROF") @default(1) @description("Profiling timer expired (Code: 27)")
linux_sigprof: bool,
@display_name("Break on Linux SIGWINCH") @default(1) @description("Window resize signal (Code: 28)")
linux_sigwinch: bool,
@display_name("Break on Linux SIGIO") @default(1) @description("I/O now possible (Code: 29)")
linux_sigio: bool,
@display_name("Break on Linux SIGPWR") @default(1) @description("Power failure (Code: 30)")
linux_sigpwr: bool,
@display_name("Break on Linux SIGSYS") @default(1) @description("Bad system call (Code: 31)")
linux_sigsys: bool,
}
```
}
+5
View File
@@ -5,6 +5,11 @@
//~ rjf: linux TODO notes
//
// post initial alpha:
// [ ] 0x1b (SIGPROF) - need to ignore by default
// [ ] line stepping over function epilogue seems to end up just resuming in some cases
// [ ] function breakpoint resolution racing
// [ ] conditional breakpoint evaluation bug
//
// [ ] windowing
// [ ] wayland
// [ ] support
+5 -1
View File
@@ -21,6 +21,8 @@
#include "base/base_inc.h"
#include "x64/x64_inc.h"
#include "win32/win32_inc.h"
#include "linux/linux_inc.h"
#include "linker/hash_table.h"
#include "linker/lf_hash_table.h"
#include "linker/base_ext/base_bit_array.h"
@@ -105,7 +107,9 @@
#include "torture.h"
#include "base/base_inc.c"
#include "x64/x64.c"
#include "x64/x64_inc.c"
#include "win32/win32_inc.c"
#include "linux/linux_inc.c"
#include "linker/hash_table.c"
#include "linker/lf_hash_table.c"
#include "linker/base_ext/base_bit_array.c"