Index: lldb/trunk/include/lldb/Target/UnixSignals.h =================================================================== --- lldb/trunk/include/lldb/Target/UnixSignals.h +++ lldb/trunk/include/lldb/Target/UnixSignals.h @@ -98,6 +98,9 @@ int32_t GetSignalAtIndex(int32_t index) const; + ConstString + GetShortName(ConstString name) const; + // We assume that the elements of this object are constant once it is constructed, // since a process should never need to add or remove symbols as it runs. So don't // call these functions anywhere but the constructor of your subclass of UnixSignals or in @@ -106,11 +109,11 @@ void AddSignal (int signo, const char *name, - const char *short_name, bool default_suppress, bool default_stop, bool default_notify, - const char *description); + const char *description, + const char *alias = nullptr); void RemoveSignal (int signo); @@ -123,18 +126,18 @@ struct Signal { ConstString m_name; - ConstString m_short_name; + ConstString m_alias; std::string m_description; bool m_suppress:1, m_stop:1, m_notify:1; Signal (const char *name, - const char *short_name, bool default_suppress, bool default_stop, bool default_notify, - const char *description); + const char *description, + const char *alias); ~Signal () {} }; Index: lldb/trunk/source/Plugins/Platform/gdb-server/PlatformRemoteGDBServer.cpp =================================================================== --- lldb/trunk/source/Plugins/Platform/gdb-server/PlatformRemoteGDBServer.cpp +++ lldb/trunk/source/Plugins/Platform/gdb-server/PlatformRemoteGDBServer.cpp @@ -914,13 +914,8 @@ return false; // We can live without short_name, description, etc. - std::string short_name{""}; - auto object_sp = dict->GetValueForKey("short_name"); - if (object_sp && object_sp->IsValid()) - short_name = object_sp->GetStringValue(); - bool suppress{false}; - object_sp = dict->GetValueForKey("suppress"); + auto object_sp = dict->GetValueForKey("suppress"); if (object_sp && object_sp->IsValid()) suppress = object_sp->GetBooleanValue(); @@ -941,7 +936,6 @@ remote_signals_sp->AddSignal(signo, name.c_str(), - short_name.c_str(), suppress, stop, notify, description.c_str()); return true; Index: lldb/trunk/source/Plugins/Process/Utility/FreeBSDSignals.cpp =================================================================== --- lldb/trunk/source/Plugins/Process/Utility/FreeBSDSignals.cpp +++ lldb/trunk/source/Plugins/Process/Utility/FreeBSDSignals.cpp @@ -26,70 +26,70 @@ { UnixSignals::Reset(); - // SIGNO NAME SHORT NAME SUPPRESS STOP NOTIFY DESCRIPTION - // ====== ============ ========== ======== ====== ====== =================================================== - AddSignal (32, "SIGTHR", "THR", false, false, false, "thread interrupt"); - AddSignal (33, "SIGLIBRT", "LIBRT", false, false, false, "reserved by real-time library"); - AddSignal (65, "SIGRTMIN", "RTMIN", false, false, false, "real time signal 0"); - AddSignal (66, "SIGRTMIN+1", "RTMIN+1", false, false, false, "real time signal 1"); - AddSignal (67, "SIGRTMIN+2", "RTMIN+2", false, false, false, "real time signal 2"); - AddSignal (68, "SIGRTMIN+3", "RTMIN+3", false, false, false, "real time signal 3"); - AddSignal (69, "SIGRTMIN+4", "RTMIN+4", false, false, false, "real time signal 4"); - AddSignal (70, "SIGRTMIN+5", "RTMIN+5", false, false, false, "real time signal 5"); - AddSignal (71, "SIGRTMIN+6", "RTMIN+6", false, false, false, "real time signal 6"); - AddSignal (72, "SIGRTMIN+7", "RTMIN+7", false, false, false, "real time signal 7"); - AddSignal (73, "SIGRTMIN+8", "RTMIN+8", false, false, false, "real time signal 8"); - AddSignal (74, "SIGRTMIN+9", "RTMIN+9", false, false, false, "real time signal 9"); - AddSignal (75, "SIGRTMIN+10", "RTMIN+10", false, false, false, "real time signal 10"); - AddSignal (76, "SIGRTMIN+11", "RTMIN+11", false, false, false, "real time signal 11"); - AddSignal (77, "SIGRTMIN+12", "RTMIN+12", false, false, false, "real time signal 12"); - AddSignal (78, "SIGRTMIN+13", "RTMIN+13", false, false, false, "real time signal 13"); - AddSignal (79, "SIGRTMIN+14", "RTMIN+14", false, false, false, "real time signal 14"); - AddSignal (80, "SIGRTMIN+15", "RTMIN+15", false, false, false, "real time signal 15"); - AddSignal (81, "SIGRTMIN+16", "RTMIN+16", false, false, false, "real time signal 16"); - AddSignal (82, "SIGRTMIN+17", "RTMIN+17", false, false, false, "real time signal 17"); - AddSignal (83, "SIGRTMIN+18", "RTMIN+18", false, false, false, "real time signal 18"); - AddSignal (84, "SIGRTMIN+19", "RTMIN+19", false, false, false, "real time signal 19"); - AddSignal (85, "SIGRTMIN+20", "RTMIN+20", false, false, false, "real time signal 20"); - AddSignal (86, "SIGRTMIN+21", "RTMIN+21", false, false, false, "real time signal 21"); - AddSignal (87, "SIGRTMIN+22", "RTMIN+22", false, false, false, "real time signal 22"); - AddSignal (88, "SIGRTMIN+23", "RTMIN+23", false, false, false, "real time signal 23"); - AddSignal (89, "SIGRTMIN+24", "RTMIN+24", false, false, false, "real time signal 24"); - AddSignal (90, "SIGRTMIN+25", "RTMIN+25", false, false, false, "real time signal 25"); - AddSignal (91, "SIGRTMIN+26", "RTMIN+26", false, false, false, "real time signal 26"); - AddSignal (92, "SIGRTMIN+27", "RTMIN+27", false, false, false, "real time signal 27"); - AddSignal (93, "SIGRTMIN+28", "RTMIN+28", false, false, false, "real time signal 28"); - AddSignal (94, "SIGRTMIN+29", "RTMIN+29", false, false, false, "real time signal 29"); - AddSignal (95, "SIGRTMIN+30", "RTMIN+30", false, false, false, "real time signal 30"); - AddSignal (96, "SIGRTMAX-30", "RTMAX-30", false, false, false, "real time signal 31"); - AddSignal (97, "SIGRTMAX-29", "RTMAX-29", false, false, false, "real time signal 32"); - AddSignal (98, "SIGRTMAX-28", "RTMAX-28", false, false, false, "real time signal 33"); - AddSignal (99, "SIGRTMAX-27", "RTMAX-27", false, false, false, "real time signal 34"); - AddSignal (100, "SIGRTMAX-26", "RTMAX-26", false, false, false, "real time signal 35"); - AddSignal (101, "SIGRTMAX-25", "RTMAX-25", false, false, false, "real time signal 36"); - AddSignal (102, "SIGRTMAX-24", "RTMAX-24", false, false, false, "real time signal 37"); - AddSignal (103, "SIGRTMAX-23", "RTMAX-23", false, false, false, "real time signal 38"); - AddSignal (104, "SIGRTMAX-22", "RTMAX-22", false, false, false, "real time signal 39"); - AddSignal (105, "SIGRTMAX-21", "RTMAX-21", false, false, false, "real time signal 40"); - AddSignal (106, "SIGRTMAX-20", "RTMAX-20", false, false, false, "real time signal 41"); - AddSignal (107, "SIGRTMAX-19", "RTMAX-19", false, false, false, "real time signal 42"); - AddSignal (108, "SIGRTMAX-18", "RTMAX-18", false, false, false, "real time signal 43"); - AddSignal (109, "SIGRTMAX-17", "RTMAX-17", false, false, false, "real time signal 44"); - AddSignal (110, "SIGRTMAX-16", "RTMAX-16", false, false, false, "real time signal 45"); - AddSignal (111, "SIGRTMAX-15", "RTMAX-15", false, false, false, "real time signal 46"); - AddSignal (112, "SIGRTMAX-14", "RTMAX-14", false, false, false, "real time signal 47"); - AddSignal (113, "SIGRTMAX-13", "RTMAX-13", false, false, false, "real time signal 48"); - AddSignal (114, "SIGRTMAX-12", "RTMAX-12", false, false, false, "real time signal 49"); - AddSignal (115, "SIGRTMAX-11", "RTMAX-11", false, false, false, "real time signal 50"); - AddSignal (116, "SIGRTMAX-10", "RTMAX-10", false, false, false, "real time signal 51"); - AddSignal (117, "SIGRTMAX-9", "RTMAX-9", false, false, false, "real time signal 52"); - AddSignal (118, "SIGRTMAX-8", "RTMAX-8", false, false, false, "real time signal 53"); - AddSignal (119, "SIGRTMAX-7", "RTMAX-7", false, false, false, "real time signal 54"); - AddSignal (120, "SIGRTMAX-6", "RTMAX-6", false, false, false, "real time signal 55"); - AddSignal (121, "SIGRTMAX-5", "RTMAX-5", false, false, false, "real time signal 56"); - AddSignal (122, "SIGRTMAX-4", "RTMAX-4", false, false, false, "real time signal 57"); - AddSignal (123, "SIGRTMAX-3", "RTMAX-3", false, false, false, "real time signal 58"); - AddSignal (124, "SIGRTMAX-2", "RTMAX-2", false, false, false, "real time signal 59"); - AddSignal (125, "SIGRTMAX-1", "RTMAX-1", false, false, false, "real time signal 60"); - AddSignal (126, "SIGRTMAX", "RTMAX", false, false, false, "real time signal 61"); + // SIGNO NAME SUPPRESS STOP NOTIFY DESCRIPTION + // ====== ============ ======== ====== ====== =================================================== + AddSignal (32, "SIGTHR", false, false, false, "thread interrupt"); + AddSignal (33, "SIGLIBRT", false, false, false, "reserved by real-time library"); + AddSignal (65, "SIGRTMIN", false, false, false, "real time signal 0"); + AddSignal (66, "SIGRTMIN+1", false, false, false, "real time signal 1"); + AddSignal (67, "SIGRTMIN+2", false, false, false, "real time signal 2"); + AddSignal (68, "SIGRTMIN+3", false, false, false, "real time signal 3"); + AddSignal (69, "SIGRTMIN+4", false, false, false, "real time signal 4"); + AddSignal (70, "SIGRTMIN+5", false, false, false, "real time signal 5"); + AddSignal (71, "SIGRTMIN+6", false, false, false, "real time signal 6"); + AddSignal (72, "SIGRTMIN+7", false, false, false, "real time signal 7"); + AddSignal (73, "SIGRTMIN+8", false, false, false, "real time signal 8"); + AddSignal (74, "SIGRTMIN+9", false, false, false, "real time signal 9"); + AddSignal (75, "SIGRTMIN+10", false, false, false, "real time signal 10"); + AddSignal (76, "SIGRTMIN+11", false, false, false, "real time signal 11"); + AddSignal (77, "SIGRTMIN+12", false, false, false, "real time signal 12"); + AddSignal (78, "SIGRTMIN+13", false, false, false, "real time signal 13"); + AddSignal (79, "SIGRTMIN+14", false, false, false, "real time signal 14"); + AddSignal (80, "SIGRTMIN+15", false, false, false, "real time signal 15"); + AddSignal (81, "SIGRTMIN+16", false, false, false, "real time signal 16"); + AddSignal (82, "SIGRTMIN+17", false, false, false, "real time signal 17"); + AddSignal (83, "SIGRTMIN+18", false, false, false, "real time signal 18"); + AddSignal (84, "SIGRTMIN+19", false, false, false, "real time signal 19"); + AddSignal (85, "SIGRTMIN+20", false, false, false, "real time signal 20"); + AddSignal (86, "SIGRTMIN+21", false, false, false, "real time signal 21"); + AddSignal (87, "SIGRTMIN+22", false, false, false, "real time signal 22"); + AddSignal (88, "SIGRTMIN+23", false, false, false, "real time signal 23"); + AddSignal (89, "SIGRTMIN+24", false, false, false, "real time signal 24"); + AddSignal (90, "SIGRTMIN+25", false, false, false, "real time signal 25"); + AddSignal (91, "SIGRTMIN+26", false, false, false, "real time signal 26"); + AddSignal (92, "SIGRTMIN+27", false, false, false, "real time signal 27"); + AddSignal (93, "SIGRTMIN+28", false, false, false, "real time signal 28"); + AddSignal (94, "SIGRTMIN+29", false, false, false, "real time signal 29"); + AddSignal (95, "SIGRTMIN+30", false, false, false, "real time signal 30"); + AddSignal (96, "SIGRTMAX-30", false, false, false, "real time signal 31"); + AddSignal (97, "SIGRTMAX-29", false, false, false, "real time signal 32"); + AddSignal (98, "SIGRTMAX-28", false, false, false, "real time signal 33"); + AddSignal (99, "SIGRTMAX-27", false, false, false, "real time signal 34"); + AddSignal (100, "SIGRTMAX-26", false, false, false, "real time signal 35"); + AddSignal (101, "SIGRTMAX-25", false, false, false, "real time signal 36"); + AddSignal (102, "SIGRTMAX-24", false, false, false, "real time signal 37"); + AddSignal (103, "SIGRTMAX-23", false, false, false, "real time signal 38"); + AddSignal (104, "SIGRTMAX-22", false, false, false, "real time signal 39"); + AddSignal (105, "SIGRTMAX-21", false, false, false, "real time signal 40"); + AddSignal (106, "SIGRTMAX-20", false, false, false, "real time signal 41"); + AddSignal (107, "SIGRTMAX-19", false, false, false, "real time signal 42"); + AddSignal (108, "SIGRTMAX-18", false, false, false, "real time signal 43"); + AddSignal (109, "SIGRTMAX-17", false, false, false, "real time signal 44"); + AddSignal (110, "SIGRTMAX-16", false, false, false, "real time signal 45"); + AddSignal (111, "SIGRTMAX-15", false, false, false, "real time signal 46"); + AddSignal (112, "SIGRTMAX-14", false, false, false, "real time signal 47"); + AddSignal (113, "SIGRTMAX-13", false, false, false, "real time signal 48"); + AddSignal (114, "SIGRTMAX-12", false, false, false, "real time signal 49"); + AddSignal (115, "SIGRTMAX-11", false, false, false, "real time signal 50"); + AddSignal (116, "SIGRTMAX-10", false, false, false, "real time signal 51"); + AddSignal (117, "SIGRTMAX-9", false, false, false, "real time signal 52"); + AddSignal (118, "SIGRTMAX-8", false, false, false, "real time signal 53"); + AddSignal (119, "SIGRTMAX-7", false, false, false, "real time signal 54"); + AddSignal (120, "SIGRTMAX-6", false, false, false, "real time signal 55"); + AddSignal (121, "SIGRTMAX-5", false, false, false, "real time signal 56"); + AddSignal (122, "SIGRTMAX-4", false, false, false, "real time signal 57"); + AddSignal (123, "SIGRTMAX-3", false, false, false, "real time signal 58"); + AddSignal (124, "SIGRTMAX-2", false, false, false, "real time signal 59"); + AddSignal (125, "SIGRTMAX-1", false, false, false, "real time signal 60"); + AddSignal (126, "SIGRTMAX", false, false, false, "real time signal 61"); } Index: lldb/trunk/source/Plugins/Process/Utility/LinuxSignals.cpp =================================================================== --- lldb/trunk/source/Plugins/Process/Utility/LinuxSignals.cpp +++ lldb/trunk/source/Plugins/Process/Utility/LinuxSignals.cpp @@ -24,72 +24,70 @@ LinuxSignals::Reset() { m_signals.clear(); - - AddSignal (1, "SIGHUP", "HUP", false, true , true , "hangup"); - AddSignal (2, "SIGINT", "INT", true , true , true , "interrupt"); - AddSignal (3, "SIGQUIT", "QUIT", false, true , true , "quit"); - AddSignal (4, "SIGILL", "ILL", false, true , true , "illegal instruction"); - AddSignal (5, "SIGTRAP", "TRAP", true , true , true , "trace trap (not reset when caught)"); - AddSignal (6, "SIGABRT", "ABRT", false, true , true , "abort()"); - AddSignal (6, "SIGIOT", "IOT", false, true , true , "IOT trap"); - AddSignal (7, "SIGBUS", "BUS", false, true , true , "bus error"); - AddSignal (8, "SIGFPE", "FPE", false, true , true , "floating point exception"); - AddSignal (9, "SIGKILL", "KILL", false, true , true , "kill"); - AddSignal (10, "SIGUSR1", "USR1", false, true , true , "user defined signal 1"); - AddSignal (11, "SIGSEGV", "SEGV", false, true , true , "segmentation violation"); - AddSignal (12, "SIGUSR2", "USR2", false, true , true , "user defined signal 2"); - AddSignal (13, "SIGPIPE", "PIPE", false, true , true , "write to pipe with reading end closed"); - AddSignal (14, "SIGALRM", "ALRM", false, false, false, "alarm"); - AddSignal (15, "SIGTERM", "TERM", false, true , true , "termination requested"); - AddSignal (16, "SIGSTKFLT", "STKFLT", false, true , true , "stack fault"); - AddSignal (16, "SIGCLD", "CLD", false, false, true , "same as SIGCHLD"); - AddSignal (17, "SIGCHLD", "CHLD", false, false, true , "child status has changed"); - AddSignal (18, "SIGCONT", "CONT", false, true , true , "process continue"); - AddSignal (19, "SIGSTOP", "STOP", true , true , true , "process stop"); - AddSignal (20, "SIGTSTP", "TSTP", false, true , true , "tty stop"); - AddSignal (21, "SIGTTIN", "TTIN", false, true , true , "background tty read"); - AddSignal (22, "SIGTTOU", "TTOU", false, true , true , "background tty write"); - AddSignal (23, "SIGURG", "URG", false, true , true , "urgent data on socket"); - AddSignal (24, "SIGXCPU", "XCPU", false, true , true , "CPU resource exceeded"); - AddSignal (25, "SIGXFSZ", "XFSZ", false, true , true , "file size limit exceeded"); - AddSignal (26, "SIGVTALRM", "VTALRM", false, true , true , "virtual time alarm"); - AddSignal (27, "SIGPROF", "PROF", false, false, false, "profiling time alarm"); - AddSignal (28, "SIGWINCH", "WINCH", false, true , true , "window size changes"); - AddSignal (29, "SIGPOLL", "POLL", false, true , true , "pollable event"); - AddSignal (29, "SIGIO", "IO", false, true , true , "input/output ready"); - AddSignal (30, "SIGPWR", "PWR", false, true , true , "power failure"); - AddSignal (31, "SIGSYS", "SYS", false, true , true , "invalid system call"); - AddSignal (32, "SIG32", "SIG32", false, false, false, "threading library internal signal 1"); - AddSignal (33, "SIG33", "SIG33", false, false, false, "threading library internal signal 2"); - AddSignal (34, "SIGRTMIN", "RTMIN", false, false, false, "real time signal 0"); - AddSignal (35, "SIGRTMIN+1", "RTMIN+1", false, false, false, "real time signal 1"); - AddSignal (36, "SIGRTMIN+2", "RTMIN+2", false, false, false, "real time signal 2"); - AddSignal (37, "SIGRTMIN+3", "RTMIN+3", false, false, false, "real time signal 3"); - AddSignal (38, "SIGRTMIN+4", "RTMIN+4", false, false, false, "real time signal 4"); - AddSignal (39, "SIGRTMIN+5", "RTMIN+5", false, false, false, "real time signal 5"); - AddSignal (40, "SIGRTMIN+6", "RTMIN+6", false, false, false, "real time signal 6"); - AddSignal (41, "SIGRTMIN+7", "RTMIN+7", false, false, false, "real time signal 7"); - AddSignal (42, "SIGRTMIN+8", "RTMIN+8", false, false, false, "real time signal 8"); - AddSignal (43, "SIGRTMIN+9", "RTMIN+9", false, false, false, "real time signal 9"); - AddSignal (44, "SIGRTMIN+10", "RTMIN+10", false, false, false, "real time signal 10"); - AddSignal (45, "SIGRTMIN+11", "RTMIN+11", false, false, false, "real time signal 11"); - AddSignal (46, "SIGRTMIN+12", "RTMIN+12", false, false, false, "real time signal 12"); - AddSignal (47, "SIGRTMIN+13", "RTMIN+13", false, false, false, "real time signal 13"); - AddSignal (48, "SIGRTMIN+14", "RTMIN+14", false, false, false, "real time signal 14"); - AddSignal (49, "SIGRTMIN+15", "RTMIN+15", false, false, false, "real time signal 15"); - AddSignal (50, "SIGRTMAX-14", "RTMAX-14", false, false, false, "real time signal 16"); // switching to SIGRTMAX-xxx to match "kill -l" output - AddSignal (51, "SIGRTMAX-13", "RTMAX-13", false, false, false, "real time signal 17"); - AddSignal (52, "SIGRTMAX-12", "RTMAX-12", false, false, false, "real time signal 18"); - AddSignal (53, "SIGRTMAX-11", "RTMAX-11", false, false, false, "real time signal 19"); - AddSignal (54, "SIGRTMAX-10", "RTMAX-10", false, false, false, "real time signal 20"); - AddSignal (55, "SIGRTMAX-9", "RTMAX-9", false, false, false, "real time signal 21"); - AddSignal (56, "SIGRTMAX-8", "RTMAX-8", false, false, false, "real time signal 22"); - AddSignal (57, "SIGRTMAX-7", "RTMAX-7", false, false, false, "real time signal 23"); - AddSignal (58, "SIGRTMAX-6", "RTMAX-6", false, false, false, "real time signal 24"); - AddSignal (59, "SIGRTMAX-5", "RTMAX-5", false, false, false, "real time signal 25"); - AddSignal (60, "SIGRTMAX-4", "RTMAX-4", false, false, false, "real time signal 26"); - AddSignal (61, "SIGRTMAX-3", "RTMAX-3", false, false, false, "real time signal 27"); - AddSignal (62, "SIGRTMAX-2", "RTMAX-2", false, false, false, "real time signal 28"); - AddSignal (63, "SIGRTMAX-1", "RTMAX-1", false, false, false, "real time signal 29"); - AddSignal (64, "SIGRTMAX", "RTMAX", false, false, false, "real time signal 30"); + // SIGNO NAME SUPPRESS STOP NOTIFY DESCRIPTION ALIAS + // ===== =========== ======== ===== ====== ====================================== ====== + AddSignal (1, "SIGHUP", false, true , true , "hangup" ); + AddSignal (2, "SIGINT", true , true , true , "interrupt" ); + AddSignal (3, "SIGQUIT", false, true , true , "quit" ); + AddSignal (4, "SIGILL", false, true , true , "illegal instruction" ); + AddSignal (5, "SIGTRAP", true , true , true , "trace trap (not reset when caught)" ); + AddSignal (6, "SIGABRT", false, true , true , "abort()/IOT trap", "SIGIOT"); + AddSignal (7, "SIGBUS", false, true , true , "bus error" ); + AddSignal (8, "SIGFPE", false, true , true , "floating point exception" ); + AddSignal (9, "SIGKILL", false, true , true , "kill" ); + AddSignal (10, "SIGUSR1", false, true , true , "user defined signal 1" ); + AddSignal (11, "SIGSEGV", false, true , true , "segmentation violation" ); + AddSignal (12, "SIGUSR2", false, true , true , "user defined signal 2" ); + AddSignal (13, "SIGPIPE", false, true , true , "write to pipe with reading end closed" ); + AddSignal (14, "SIGALRM", false, false, false, "alarm" ); + AddSignal (15, "SIGTERM", false, true , true , "termination requested" ); + AddSignal (16, "SIGSTKFLT", false, true , true , "stack fault" ); + AddSignal (17, "SIGCHLD", false, false, true , "child status has changed", "SIGCLD"); + AddSignal (18, "SIGCONT", false, true , true , "process continue" ); + AddSignal (19, "SIGSTOP", true , true , true , "process stop" ); + AddSignal (20, "SIGTSTP", false, true , true , "tty stop" ); + AddSignal (21, "SIGTTIN", false, true , true , "background tty read" ); + AddSignal (22, "SIGTTOU", false, true , true , "background tty write" ); + AddSignal (23, "SIGURG", false, true , true , "urgent data on socket" ); + AddSignal (24, "SIGXCPU", false, true , true , "CPU resource exceeded" ); + AddSignal (25, "SIGXFSZ", false, true , true , "file size limit exceeded" ); + AddSignal (26, "SIGVTALRM", false, true , true , "virtual time alarm" ); + AddSignal (27, "SIGPROF", false, false, false, "profiling time alarm" ); + AddSignal (28, "SIGWINCH", false, true , true , "window size changes" ); + AddSignal (29, "SIGIO", false, true , true , "input/output ready/Pollable event", "SIGPOLL"); + AddSignal (30, "SIGPWR", false, true , true , "power failure" ); + AddSignal (31, "SIGSYS", false, true , true , "invalid system call" ); + AddSignal (32, "SIG32", false, false, false, "threading library internal signal 1" ); + AddSignal (33, "SIG33", false, false, false, "threading library internal signal 2" ); + AddSignal (34, "SIGRTMIN", false, false, false, "real time signal 0" ); + AddSignal (35, "SIGRTMIN+1", false, false, false, "real time signal 1" ); + AddSignal (36, "SIGRTMIN+2", false, false, false, "real time signal 2" ); + AddSignal (37, "SIGRTMIN+3", false, false, false, "real time signal 3" ); + AddSignal (38, "SIGRTMIN+4", false, false, false, "real time signal 4" ); + AddSignal (39, "SIGRTMIN+5", false, false, false, "real time signal 5" ); + AddSignal (40, "SIGRTMIN+6", false, false, false, "real time signal 6" ); + AddSignal (41, "SIGRTMIN+7", false, false, false, "real time signal 7" ); + AddSignal (42, "SIGRTMIN+8", false, false, false, "real time signal 8" ); + AddSignal (43, "SIGRTMIN+9", false, false, false, "real time signal 9" ); + AddSignal (44, "SIGRTMIN+10", false, false, false, "real time signal 10" ); + AddSignal (45, "SIGRTMIN+11", false, false, false, "real time signal 11" ); + AddSignal (46, "SIGRTMIN+12", false, false, false, "real time signal 12" ); + AddSignal (47, "SIGRTMIN+13", false, false, false, "real time signal 13" ); + AddSignal (48, "SIGRTMIN+14", false, false, false, "real time signal 14" ); + AddSignal (49, "SIGRTMIN+15", false, false, false, "real time signal 15" ); + AddSignal (50, "SIGRTMAX-14", false, false, false, "real time signal 16" ); // switching to SIGRTMAX-xxx to match "kill -l" output + AddSignal (51, "SIGRTMAX-13", false, false, false, "real time signal 17" ); + AddSignal (52, "SIGRTMAX-12", false, false, false, "real time signal 18" ); + AddSignal (53, "SIGRTMAX-11", false, false, false, "real time signal 19" ); + AddSignal (54, "SIGRTMAX-10", false, false, false, "real time signal 20" ); + AddSignal (55, "SIGRTMAX-9", false, false, false, "real time signal 21" ); + AddSignal (56, "SIGRTMAX-8", false, false, false, "real time signal 22" ); + AddSignal (57, "SIGRTMAX-7", false, false, false, "real time signal 23" ); + AddSignal (58, "SIGRTMAX-6", false, false, false, "real time signal 24" ); + AddSignal (59, "SIGRTMAX-5", false, false, false, "real time signal 25" ); + AddSignal (60, "SIGRTMAX-4", false, false, false, "real time signal 26" ); + AddSignal (61, "SIGRTMAX-3", false, false, false, "real time signal 27" ); + AddSignal (62, "SIGRTMAX-2", false, false, false, "real time signal 28" ); + AddSignal (63, "SIGRTMAX-1", false, false, false, "real time signal 29" ); + AddSignal (64, "SIGRTMAX", false, false, false, "real time signal 30" ); } Index: lldb/trunk/source/Plugins/Process/Utility/MipsLinuxSignals.cpp =================================================================== --- lldb/trunk/source/Plugins/Process/Utility/MipsLinuxSignals.cpp +++ lldb/trunk/source/Plugins/Process/Utility/MipsLinuxSignals.cpp @@ -24,72 +24,70 @@ MipsLinuxSignals::Reset() { m_signals.clear(); - - AddSignal (1, "SIGHUP", "HUP", false, true , true , "hangup"); - AddSignal (2, "SIGINT", "INT", true , true , true , "interrupt"); - AddSignal (3, "SIGQUIT", "QUIT", false, true , true , "quit"); - AddSignal (4, "SIGILL", "ILL", false, true , true , "illegal instruction"); - AddSignal (5, "SIGTRAP", "TRAP", true , true , true , "trace trap (not reset when caught)"); - AddSignal (6, "SIGABRT", "ABRT", false, true , true , "abort()"); - AddSignal (6, "SIGIOT", "IOT", false, true , true , "IOT trap"); - AddSignal (7, "SIGEMT", "EMT", false, true , true , "terminate process with core dump"); - AddSignal (8, "SIGFPE", "FPE", false, true , true , "floating point exception"); - AddSignal (9, "SIGKILL", "KILL", false, true , true , "kill"); - AddSignal (10, "SIGBUS", "BUS", false, true , true , "bus error"); - AddSignal (11, "SIGSEGV", "SEGV", false, true , true , "segmentation violation"); - AddSignal (12, "SIGSYS", "SYS", false, true , true , "invalid system call"); - AddSignal (13, "SIGPIPE", "PIPE", false, true , true , "write to pipe with reading end closed"); - AddSignal (14, "SIGALRM", "ALRM", false, false, false, "alarm"); - AddSignal (15, "SIGTERM", "TERM", false, true , true , "termination requested"); - AddSignal (16, "SIGUSR1", "USR1", false, true , true , "user defined signal 1"); - AddSignal (17, "SIGUSR2", "USR2", false, true , true , "user defined signal 2"); - AddSignal (18, "SIGCLD", "CLD", false, false, true , "same as SIGCHLD"); - AddSignal (18, "SIGCHLD", "CHLD", false, false, true , "child status has changed"); - AddSignal (19, "SIGPWR", "PWR", false, true , true , "power failure"); - AddSignal (20, "SIGWINCH", "WINCH", false, true , true , "window size changes"); - AddSignal (21, "SIGURG", "URG", false, true , true , "urgent data on socket"); - AddSignal (22, "SIGIO", "IO", false, true , true , "input/output ready"); - AddSignal (22, "SIGPOLL", "POLL", false, true , true , "pollable event"); - AddSignal (23, "SIGSTOP", "STOP", true , true , true , "process stop"); - AddSignal (24, "SIGTSTP", "TSTP", false, true , true , "tty stop"); - AddSignal (25, "SIGCONT", "CONT", false, true , true , "process continue"); - AddSignal (26, "SIGTTIN", "TTIN", false, true , true , "background tty read"); - AddSignal (27, "SIGTTOU", "TTOU", false, true , true , "background tty write"); - AddSignal (28, "SIGVTALRM", "VTALRM", false, true , true , "virtual time alarm"); - AddSignal (29, "SIGPROF", "PROF", false, false, false, "profiling time alarm"); - AddSignal (30, "SIGXCPU", "XCPU", false, true , true , "CPU resource exceeded"); - AddSignal (31, "SIGXFSZ", "XFSZ", false, true , true , "file size limit exceeded"); - AddSignal (32, "SIG32", "SIG32", false, false, false, "threading library internal signal 1"); - AddSignal (33, "SIG33", "SIG33", false, false, false, "threading library internal signal 2"); - AddSignal (34, "SIGRTMIN", "RTMIN", false, false, false, "real time signal 0"); - AddSignal (35, "SIGRTMIN+1", "RTMIN+1", false, false, false, "real time signal 1"); - AddSignal (36, "SIGRTMIN+2", "RTMIN+2", false, false, false, "real time signal 2"); - AddSignal (37, "SIGRTMIN+3", "RTMIN+3", false, false, false, "real time signal 3"); - AddSignal (38, "SIGRTMIN+4", "RTMIN+4", false, false, false, "real time signal 4"); - AddSignal (39, "SIGRTMIN+5", "RTMIN+5", false, false, false, "real time signal 5"); - AddSignal (40, "SIGRTMIN+6", "RTMIN+6", false, false, false, "real time signal 6"); - AddSignal (41, "SIGRTMIN+7", "RTMIN+7", false, false, false, "real time signal 7"); - AddSignal (42, "SIGRTMIN+8", "RTMIN+8", false, false, false, "real time signal 8"); - AddSignal (43, "SIGRTMIN+9", "RTMIN+9", false, false, false, "real time signal 9"); - AddSignal (44, "SIGRTMIN+10", "RTMIN+10", false, false, false, "real time signal 10"); - AddSignal (45, "SIGRTMIN+11", "RTMIN+11", false, false, false, "real time signal 11"); - AddSignal (46, "SIGRTMIN+12", "RTMIN+12", false, false, false, "real time signal 12"); - AddSignal (47, "SIGRTMIN+13", "RTMIN+13", false, false, false, "real time signal 13"); - AddSignal (48, "SIGRTMIN+14", "RTMIN+14", false, false, false, "real time signal 14"); - AddSignal (49, "SIGRTMIN+15", "RTMIN+15", false, false, false, "real time signal 15"); - AddSignal (50, "SIGRTMAX-14", "RTMAX-14", false, false, false, "real time signal 16"); // switching to SIGRTMAX-xxx to match "kill -l" output - AddSignal (51, "SIGRTMAX-13", "RTMAX-13", false, false, false, "real time signal 17"); - AddSignal (52, "SIGRTMAX-12", "RTMAX-12", false, false, false, "real time signal 18"); - AddSignal (53, "SIGRTMAX-11", "RTMAX-11", false, false, false, "real time signal 19"); - AddSignal (54, "SIGRTMAX-10", "RTMAX-10", false, false, false, "real time signal 20"); - AddSignal (55, "SIGRTMAX-9", "RTMAX-9", false, false, false, "real time signal 21"); - AddSignal (56, "SIGRTMAX-8", "RTMAX-8", false, false, false, "real time signal 22"); - AddSignal (57, "SIGRTMAX-7", "RTMAX-7", false, false, false, "real time signal 23"); - AddSignal (58, "SIGRTMAX-6", "RTMAX-6", false, false, false, "real time signal 24"); - AddSignal (59, "SIGRTMAX-5", "RTMAX-5", false, false, false, "real time signal 25"); - AddSignal (60, "SIGRTMAX-4", "RTMAX-4", false, false, false, "real time signal 26"); - AddSignal (61, "SIGRTMAX-3", "RTMAX-3", false, false, false, "real time signal 27"); - AddSignal (62, "SIGRTMAX-2", "RTMAX-2", false, false, false, "real time signal 28"); - AddSignal (63, "SIGRTMAX-1", "RTMAX-1", false, false, false, "real time signal 29"); - AddSignal (64, "SIGRTMAX", "RTMAX", false, false, false, "real time signal 30"); + // SIGNO NAME SUPPRESS STOP NOTIFY DESCRIPTION ALIAS + // ===== =========== ======== ===== ====== ====================================== ======== + AddSignal (1, "SIGHUP", false, true , true , "hangup" ); + AddSignal (2, "SIGINT", true , true , true , "interrupt" ); + AddSignal (3, "SIGQUIT", false, true , true , "quit" ); + AddSignal (4, "SIGILL", false, true , true , "illegal instruction" ); + AddSignal (5, "SIGTRAP", true , true , true , "trace trap (not reset when caught)" ); + AddSignal (6, "SIGABRT", false, true , true , "abort()/IOT trap", "SIGIOT"); + AddSignal (7, "SIGEMT", false, true , true , "terminate process with core dump" ); + AddSignal (8, "SIGFPE", false, true , true , "floating point exception" ); + AddSignal (9, "SIGKILL", false, true , true , "kill" ); + AddSignal (10, "SIGBUS", false, true , true , "bus error" ); + AddSignal (11, "SIGSEGV", false, true , true , "segmentation violation" ); + AddSignal (12, "SIGSYS", false, true , true , "invalid system call" ); + AddSignal (13, "SIGPIPE", false, true , true , "write to pipe with reading end closed" ); + AddSignal (14, "SIGALRM", false, false, false, "alarm" ); + AddSignal (15, "SIGTERM", false, true , true , "termination requested" ); + AddSignal (16, "SIGUSR1", false, true , true , "user defined signal 1" ); + AddSignal (17, "SIGUSR2", false, true , true , "user defined signal 2" ); + AddSignal (18, "SIGCHLD", false, false, true , "child status has changed", "SIGCLD"); + AddSignal (19, "SIGPWR", false, true , true , "power failure" ); + AddSignal (20, "SIGWINCH", false, true , true , "window size changes" ); + AddSignal (21, "SIGURG", false, true , true , "urgent data on socket" ); + AddSignal (22, "SIGIO", false, true , true , "input/output ready/Pollable event", "SIGPOLL"); + AddSignal (23, "SIGSTOP", true , true , true , "process stop" ); + AddSignal (24, "SIGTSTP", false, true , true , "tty stop" ); + AddSignal (25, "SIGCONT", false, true , true , "process continue" ); + AddSignal (26, "SIGTTIN", false, true , true , "background tty read" ); + AddSignal (27, "SIGTTOU", false, true , true , "background tty write" ); + AddSignal (28, "SIGVTALRM", false, true , true , "virtual time alarm" ); + AddSignal (29, "SIGPROF", false, false, false, "profiling time alarm" ); + AddSignal (30, "SIGXCPU", false, true , true , "CPU resource exceeded" ); + AddSignal (31, "SIGXFSZ", false, true , true , "file size limit exceeded" ); + AddSignal (32, "SIG32", false, false, false, "threading library internal signal 1" ); + AddSignal (33, "SIG33", false, false, false, "threading library internal signal 2" ); + AddSignal (34, "SIGRTMIN", false, false, false, "real time signal 0" ); + AddSignal (35, "SIGRTMIN+1", false, false, false, "real time signal 1" ); + AddSignal (36, "SIGRTMIN+2", false, false, false, "real time signal 2" ); + AddSignal (37, "SIGRTMIN+3", false, false, false, "real time signal 3" ); + AddSignal (38, "SIGRTMIN+4", false, false, false, "real time signal 4" ); + AddSignal (39, "SIGRTMIN+5", false, false, false, "real time signal 5" ); + AddSignal (40, "SIGRTMIN+6", false, false, false, "real time signal 6" ); + AddSignal (41, "SIGRTMIN+7", false, false, false, "real time signal 7" ); + AddSignal (42, "SIGRTMIN+8", false, false, false, "real time signal 8" ); + AddSignal (43, "SIGRTMIN+9", false, false, false, "real time signal 9" ); + AddSignal (44, "SIGRTMIN+10", false, false, false, "real time signal 10" ); + AddSignal (45, "SIGRTMIN+11", false, false, false, "real time signal 11" ); + AddSignal (46, "SIGRTMIN+12", false, false, false, "real time signal 12" ); + AddSignal (47, "SIGRTMIN+13", false, false, false, "real time signal 13" ); + AddSignal (48, "SIGRTMIN+14", false, false, false, "real time signal 14" ); + AddSignal (49, "SIGRTMIN+15", false, false, false, "real time signal 15" ); + AddSignal (50, "SIGRTMAX-14", false, false, false, "real time signal 16" ); // switching to SIGRTMAX-xxx to match "kill -l" output + AddSignal (51, "SIGRTMAX-13", false, false, false, "real time signal 17" ); + AddSignal (52, "SIGRTMAX-12", false, false, false, "real time signal 18" ); + AddSignal (53, "SIGRTMAX-11", false, false, false, "real time signal 19" ); + AddSignal (54, "SIGRTMAX-10", false, false, false, "real time signal 20" ); + AddSignal (55, "SIGRTMAX-9", false, false, false, "real time signal 21" ); + AddSignal (56, "SIGRTMAX-8", false, false, false, "real time signal 22" ); + AddSignal (57, "SIGRTMAX-7", false, false, false, "real time signal 23" ); + AddSignal (58, "SIGRTMAX-6", false, false, false, "real time signal 24" ); + AddSignal (59, "SIGRTMAX-5", false, false, false, "real time signal 25" ); + AddSignal (60, "SIGRTMAX-4", false, false, false, "real time signal 26" ); + AddSignal (61, "SIGRTMAX-3", false, false, false, "real time signal 27" ); + AddSignal (62, "SIGRTMAX-2", false, false, false, "real time signal 28" ); + AddSignal (63, "SIGRTMAX-1", false, false, false, "real time signal 29" ); + AddSignal (64, "SIGRTMAX", false, false, false, "real time signal 30" ); } Index: lldb/trunk/source/Target/UnixSignals.cpp =================================================================== --- lldb/trunk/source/Target/UnixSignals.cpp +++ lldb/trunk/source/Target/UnixSignals.cpp @@ -25,18 +25,18 @@ UnixSignals::Signal::Signal ( const char *name, - const char *short_name, bool default_suppress, bool default_stop, bool default_notify, - const char *description + const char *description, + const char *alias ) : m_name (name), - m_short_name (short_name), m_description (), m_suppress (default_suppress), m_stop (default_stop), - m_notify (default_notify) + m_notify (default_notify), + m_alias (alias) { if (description) m_description.assign (description); @@ -97,39 +97,39 @@ // order, you can either subclass this class, and use Add & Remove to change them // or you can subclass and build them afresh in your constructor; m_signals.clear(); - // SIGNO NAME SHORT NAME SUPPRESS STOP NOTIFY DESCRIPTION - // ====== ============ ========== ======== ====== ====== =================================================== - AddSignal (1, "SIGHUP", "HUP", false, true , true , "hangup"); - AddSignal (2, "SIGINT", "INT", true , true , true , "interrupt"); - AddSignal (3, "SIGQUIT", "QUIT", false, true , true , "quit"); - AddSignal (4, "SIGILL", "ILL", false, true , true , "illegal instruction"); - AddSignal (5, "SIGTRAP", "TRAP", true , true , true , "trace trap (not reset when caught)"); - AddSignal (6, "SIGABRT", "ABRT", false, true , true , "abort()"); - AddSignal (7, "SIGEMT", "EMT", false, true , true , "pollable event"); - AddSignal (8, "SIGFPE", "FPE", false, true , true , "floating point exception"); - AddSignal (9, "SIGKILL", "KILL", false, true , true , "kill"); - AddSignal (10, "SIGBUS", "BUS", false, true , true , "bus error"); - AddSignal (11, "SIGSEGV", "SEGV", false, true , true , "segmentation violation"); - AddSignal (12, "SIGSYS", "SYS", false, true , true , "bad argument to system call"); - AddSignal (13, "SIGPIPE", "PIPE", false, true , true , "write on a pipe with no one to read it"); - AddSignal (14, "SIGALRM", "ALRM", false, false, false, "alarm clock"); - AddSignal (15, "SIGTERM", "TERM", false, true , true , "software termination signal from kill"); - AddSignal (16, "SIGURG", "URG", false, false, false, "urgent condition on IO channel"); - AddSignal (17, "SIGSTOP", "STOP", true , true , true , "sendable stop signal not from tty"); - AddSignal (18, "SIGTSTP", "TSTP", false, true , true , "stop signal from tty"); - AddSignal (19, "SIGCONT", "CONT", false, true , true , "continue a stopped process"); - AddSignal (20, "SIGCHLD", "CHLD", false, false, false, "to parent on child stop or exit"); - AddSignal (21, "SIGTTIN", "TTIN", false, true , true , "to readers process group upon background tty read"); - AddSignal (22, "SIGTTOU", "TTOU", false, true , true , "to readers process group upon background tty write"); - AddSignal (23, "SIGIO", "IO", false, false, false, "input/output possible signal"); - AddSignal (24, "SIGXCPU", "XCPU", false, true , true , "exceeded CPU time limit"); - AddSignal (25, "SIGXFSZ", "XFSZ", false, true , true , "exceeded file size limit"); - AddSignal (26, "SIGVTALRM", "VTALRM", false, false, false, "virtual time alarm"); - AddSignal (27, "SIGPROF", "PROF", false, false, false, "profiling time alarm"); - AddSignal (28, "SIGWINCH", "WINCH", false, false, false, "window size changes"); - AddSignal (29, "SIGINFO", "INFO", false, true , true , "information request"); - AddSignal (30, "SIGUSR1", "USR1", false, true , true , "user defined signal 1"); - AddSignal (31, "SIGUSR2", "USR2", false, true , true , "user defined signal 2"); + // SIGNO NAME SUPPRESS STOP NOTIFY DESCRIPTION + // ====== ============ ======== ====== ====== =================================================== + AddSignal (1, "SIGHUP", false, true , true , "hangup"); + AddSignal (2, "SIGINT", true , true , true , "interrupt"); + AddSignal (3, "SIGQUIT", false, true , true , "quit"); + AddSignal (4, "SIGILL", false, true , true , "illegal instruction"); + AddSignal (5, "SIGTRAP", true , true , true , "trace trap (not reset when caught)"); + AddSignal (6, "SIGABRT", false, true , true , "abort()"); + AddSignal (7, "SIGEMT", false, true , true , "pollable event"); + AddSignal (8, "SIGFPE", false, true , true , "floating point exception"); + AddSignal (9, "SIGKILL", false, true , true , "kill"); + AddSignal (10, "SIGBUS", false, true , true , "bus error"); + AddSignal (11, "SIGSEGV", false, true , true , "segmentation violation"); + AddSignal (12, "SIGSYS", false, true , true , "bad argument to system call"); + AddSignal (13, "SIGPIPE", false, true , true , "write on a pipe with no one to read it"); + AddSignal (14, "SIGALRM", false, false, false, "alarm clock"); + AddSignal (15, "SIGTERM", false, true , true , "software termination signal from kill"); + AddSignal (16, "SIGURG", false, false, false, "urgent condition on IO channel"); + AddSignal (17, "SIGSTOP", true , true , true , "sendable stop signal not from tty"); + AddSignal (18, "SIGTSTP", false, true , true , "stop signal from tty"); + AddSignal (19, "SIGCONT", false, true , true , "continue a stopped process"); + AddSignal (20, "SIGCHLD", false, false, false, "to parent on child stop or exit"); + AddSignal (21, "SIGTTIN", false, true , true , "to readers process group upon background tty read"); + AddSignal (22, "SIGTTOU", false, true , true , "to readers process group upon background tty write"); + AddSignal (23, "SIGIO", false, false, false, "input/output possible signal"); + AddSignal (24, "SIGXCPU", false, true , true , "exceeded CPU time limit"); + AddSignal (25, "SIGXFSZ", false, true , true , "exceeded file size limit"); + AddSignal (26, "SIGVTALRM", false, false, false, "virtual time alarm"); + AddSignal (27, "SIGPROF", false, false, false, "profiling time alarm"); + AddSignal (28, "SIGWINCH", false, false, false, "window size changes"); + AddSignal (29, "SIGINFO", false, true , true , "information request"); + AddSignal (30, "SIGUSR1", false, true , true , "user defined signal 1"); + AddSignal (31, "SIGUSR2", false, true , true , "user defined signal 2"); } void @@ -137,14 +137,14 @@ ( int signo, const char *name, - const char *short_name, bool default_suppress, bool default_stop, bool default_notify, - const char *description + const char *description, + const char *alias ) { - Signal new_signal (name, short_name, default_suppress, default_stop, default_notify, description); + Signal new_signal (name, default_suppress, default_stop, default_notify, description, alias); m_signals.insert (std::make_pair(signo, new_signal)); } @@ -173,6 +173,16 @@ return m_signals.find (signo) != m_signals.end(); } +ConstString +UnixSignals::GetShortName(ConstString name) const +{ + if (name) + { + char* signame = (char*)(name.AsCString()); + return ConstString(signame + 3); // Remove "SIG" from name + } + return name; +} int32_t UnixSignals::GetSignalNumberFromName (const char *name) const @@ -182,7 +192,8 @@ collection::const_iterator pos, end = m_signals.end (); for (pos = m_signals.begin (); pos != end; pos++) { - if ((const_name == pos->second.m_name) || (const_name == pos->second.m_short_name)) + if ((const_name == pos->second.m_name) || (const_name == pos->second.m_alias) || + (const_name == GetShortName(pos->second.m_name)) || (const_name == GetShortName(pos->second.m_alias))) return pos->first; }