Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 // Copyright (c) 2006, Google Inc. | 1 // Copyright (c) 2006, Google Inc. |
| 2 // All rights reserved. | 2 // All rights reserved. |
| 3 // | 3 // |
| 4 // Redistribution and use in source and binary forms, with or without | 4 // Redistribution and use in source and binary forms, with or without |
| 5 // modification, are permitted provided that the following conditions are | 5 // modification, are permitted provided that the following conditions are |
| 6 // met: | 6 // met: |
| 7 // | 7 // |
| 8 // * Redistributions of source code must retain the above copyright | 8 // * Redistributions of source code must retain the above copyright |
| 9 // notice, this list of conditions and the following disclaimer. | 9 // notice, this list of conditions and the following disclaimer. |
| 10 // * Redistributions in binary form must reproduce the above | 10 // * Redistributions in binary form must reproduce the above |
| (...skipping 727 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 738 reason.append("EXC_PPC_BADSPACE"); | 738 reason.append("EXC_PPC_BADSPACE"); |
| 739 break; | 739 break; |
| 740 case MD_EXCEPTION_CODE_MAC_PPC_UNALIGNED: | 740 case MD_EXCEPTION_CODE_MAC_PPC_UNALIGNED: |
| 741 reason.append("EXC_PPC_UNALIGNED"); | 741 reason.append("EXC_PPC_UNALIGNED"); |
| 742 break; | 742 break; |
| 743 default: | 743 default: |
| 744 reason.append(flags_string); | 744 reason.append(flags_string); |
| 745 BPLOG(INFO) << "Unknown exception reason " << reason; | 745 BPLOG(INFO) << "Unknown exception reason " << reason; |
| 746 break; | 746 break; |
| 747 } | 747 } |
| 748 } else if (raw_system_info->processor_architecture == | |
| 749 MD_CPU_ARCHITECTURE_X86 || | |
| 750 raw_system_info->processor_architecture == | |
| 751 MD_CPU_ARCHITECTURE_AMD64) { | |
| 752 switch (exception_flags) { | |
| 753 case MD_EXCEPTION_CODE_MAC_X86_GENERAL_PROTECTION_FAULT: | |
| 754 reason.append("EXC_I386_GPFLT"); | |
| 755 break; | |
| 756 default: | |
| 757 reason.append(flags_string); | |
| 758 BPLOG(INFO) << "Unknown exception reason " << reason; | |
| 759 break; | |
| 760 } | |
| 748 } else { | 761 } else { |
| 749 reason.append(flags_string); | 762 reason.append(flags_string); |
| 750 BPLOG(INFO) << "Unknown exception reason " << reason; | 763 BPLOG(INFO) << "Unknown exception reason " << reason; |
| 751 } | 764 } |
| 752 break; | 765 break; |
| 753 } | 766 } |
| 754 break; | 767 break; |
| 755 case MD_EXCEPTION_MAC_BAD_INSTRUCTION: | 768 case MD_EXCEPTION_MAC_BAD_INSTRUCTION: |
| 756 reason = "EXC_BAD_INSTRUCTION / "; | 769 reason = "EXC_BAD_INSTRUCTION / "; |
| 757 switch (raw_system_info->processor_architecture) { | 770 switch (raw_system_info->processor_architecture) { |
| (...skipping 30 matching lines...) Expand all Loading... | |
| 788 case MD_EXCEPTION_CODE_MAC_PPC_PERFORMANCE_MONITOR: | 801 case MD_EXCEPTION_CODE_MAC_PPC_PERFORMANCE_MONITOR: |
| 789 reason.append("EXC_PPC_PERFMON"); | 802 reason.append("EXC_PPC_PERFMON"); |
| 790 break; | 803 break; |
| 791 default: | 804 default: |
| 792 reason.append(flags_string); | 805 reason.append(flags_string); |
| 793 BPLOG(INFO) << "Unknown exception reason " << reason; | 806 BPLOG(INFO) << "Unknown exception reason " << reason; |
| 794 break; | 807 break; |
| 795 } | 808 } |
| 796 break; | 809 break; |
| 797 } | 810 } |
| 811 case MD_CPU_ARCHITECTURE_AMD64: | |
| 798 case MD_CPU_ARCHITECTURE_X86: { | 812 case MD_CPU_ARCHITECTURE_X86: { |
| 799 switch (exception_flags) { | 813 switch (exception_flags) { |
| 800 case MD_EXCEPTION_CODE_MAC_X86_INVALID_OPERATION: | 814 case MD_EXCEPTION_CODE_MAC_X86_INVALID_OPERATION: |
| 801 reason.append("EXC_I386_INVOP"); | 815 reason.append("EXC_I386_INVOP"); |
| 802 break; | 816 break; |
| 803 case MD_EXCEPTION_CODE_MAC_X86_INVALID_TASK_STATE_SEGMENT: | 817 case MD_EXCEPTION_CODE_MAC_X86_INVALID_TASK_STATE_SEGMENT: |
| 804 reason.append("EXC_INVTSSFLT"); | 818 reason.append("EXC_INVTSSFLT"); |
|
Mark Mentovai
2016/03/29 15:21:57
All of the rest of these are EXC_I386_* too.
| |
| 805 break; | 819 break; |
| 806 case MD_EXCEPTION_CODE_MAC_X86_SEGMENT_NOT_PRESENT: | 820 case MD_EXCEPTION_CODE_MAC_X86_SEGMENT_NOT_PRESENT: |
| 807 reason.append("EXC_SEGNPFLT"); | 821 reason.append("EXC_SEGNPFLT"); |
| 808 break; | 822 break; |
| 809 case MD_EXCEPTION_CODE_MAC_X86_STACK_FAULT: | 823 case MD_EXCEPTION_CODE_MAC_X86_STACK_FAULT: |
| 810 reason.append("EXC_STKFLT"); | 824 reason.append("EXC_STKFLT"); |
| 811 break; | 825 break; |
| 812 case MD_EXCEPTION_CODE_MAC_X86_GENERAL_PROTECTION_FAULT: | 826 case MD_EXCEPTION_CODE_MAC_X86_GENERAL_PROTECTION_FAULT: |
| 813 reason.append("EXC_GPFLT"); | 827 reason.append("EXC_I386_GPFLT"); |
| 814 break; | 828 break; |
| 815 case MD_EXCEPTION_CODE_MAC_X86_ALIGNMENT_FAULT: | 829 case MD_EXCEPTION_CODE_MAC_X86_ALIGNMENT_FAULT: |
| 816 reason.append("EXC_ALIGNFLT"); | 830 reason.append("EXC_ALIGNFLT"); |
| 817 break; | 831 break; |
| 818 default: | 832 default: |
| 819 reason.append(flags_string); | 833 reason.append(flags_string); |
| 820 BPLOG(INFO) << "Unknown exception reason " << reason; | 834 BPLOG(INFO) << "Unknown exception reason " << reason; |
| 821 break; | 835 break; |
| 822 } | 836 } |
| 823 break; | 837 break; |
| (...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 859 break; | 873 break; |
| 860 case MD_EXCEPTION_CODE_MAC_PPC_ALTIVEC_ASSIST: | 874 case MD_EXCEPTION_CODE_MAC_PPC_ALTIVEC_ASSIST: |
| 861 reason.append("EXC_PPC_ALTIVECASSIST"); | 875 reason.append("EXC_PPC_ALTIVECASSIST"); |
| 862 default: | 876 default: |
| 863 reason.append(flags_string); | 877 reason.append(flags_string); |
| 864 BPLOG(INFO) << "Unknown exception reason " << reason; | 878 BPLOG(INFO) << "Unknown exception reason " << reason; |
| 865 break; | 879 break; |
| 866 } | 880 } |
| 867 break; | 881 break; |
| 868 } | 882 } |
| 883 case MD_CPU_ARCHITECTURE_AMD64: | |
| 869 case MD_CPU_ARCHITECTURE_X86: { | 884 case MD_CPU_ARCHITECTURE_X86: { |
| 870 switch (exception_flags) { | 885 switch (exception_flags) { |
| 871 case MD_EXCEPTION_CODE_MAC_X86_DIV: | 886 case MD_EXCEPTION_CODE_MAC_X86_DIV: |
| 872 reason.append("EXC_I386_DIV"); | 887 reason.append("EXC_I386_DIV"); |
| 873 break; | 888 break; |
| 874 case MD_EXCEPTION_CODE_MAC_X86_INTO: | 889 case MD_EXCEPTION_CODE_MAC_X86_INTO: |
| 875 reason.append("EXC_I386_INTO"); | 890 reason.append("EXC_I386_INTO"); |
| 876 break; | 891 break; |
| 877 case MD_EXCEPTION_CODE_MAC_X86_NOEXT: | 892 case MD_EXCEPTION_CODE_MAC_X86_NOEXT: |
| 878 reason.append("EXC_I386_NOEXT"); | 893 reason.append("EXC_I386_NOEXT"); |
| (...skipping 80 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 959 case MD_EXCEPTION_CODE_MAC_PPC_BREAKPOINT: | 974 case MD_EXCEPTION_CODE_MAC_PPC_BREAKPOINT: |
| 960 reason.append("EXC_PPC_BREAKPOINT"); | 975 reason.append("EXC_PPC_BREAKPOINT"); |
| 961 break; | 976 break; |
| 962 default: | 977 default: |
| 963 reason.append(flags_string); | 978 reason.append(flags_string); |
| 964 BPLOG(INFO) << "Unknown exception reason " << reason; | 979 BPLOG(INFO) << "Unknown exception reason " << reason; |
| 965 break; | 980 break; |
| 966 } | 981 } |
| 967 break; | 982 break; |
| 968 } | 983 } |
| 984 case MD_CPU_ARCHITECTURE_AMD64: | |
| 969 case MD_CPU_ARCHITECTURE_X86: { | 985 case MD_CPU_ARCHITECTURE_X86: { |
| 970 switch (exception_flags) { | 986 switch (exception_flags) { |
| 971 case MD_EXCEPTION_CODE_MAC_X86_SGL: | 987 case MD_EXCEPTION_CODE_MAC_X86_SGL: |
| 972 reason.append("EXC_I386_SGL"); | 988 reason.append("EXC_I386_SGL"); |
| 973 break; | 989 break; |
| 974 case MD_EXCEPTION_CODE_MAC_X86_BPT: | 990 case MD_EXCEPTION_CODE_MAC_X86_BPT: |
| 975 reason.append("EXC_I386_BPT"); | 991 reason.append("EXC_I386_BPT"); |
| 976 break; | 992 break; |
| 977 default: | 993 default: |
| 978 reason.append(flags_string); | 994 reason.append(flags_string); |
| (...skipping 557 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 1536 char assertion_line[32]; | 1552 char assertion_line[32]; |
| 1537 snprintf(assertion_line, sizeof(assertion_line), "%u", raw_assertion->line); | 1553 snprintf(assertion_line, sizeof(assertion_line), "%u", raw_assertion->line); |
| 1538 assertion_string.append(" at line "); | 1554 assertion_string.append(" at line "); |
| 1539 assertion_string.append(assertion_line); | 1555 assertion_string.append(assertion_line); |
| 1540 } | 1556 } |
| 1541 | 1557 |
| 1542 return assertion_string; | 1558 return assertion_string; |
| 1543 } | 1559 } |
| 1544 | 1560 |
| 1545 } // namespace google_breakpad | 1561 } // namespace google_breakpad |
| OLD | NEW |