Index: /trunk/src/VBox/VMM/HWACCM.cpp
===================================================================
--- /trunk/src/VBox/VMM/HWACCM.cpp	(revision 19907)
+++ /trunk/src/VBox/VMM/HWACCM.cpp	(revision 19908)
@@ -118,5 +118,146 @@
 static const char * const g_apszAmdVExitReasons[MAX_EXITREASON_STAT] =
 {
-    /** @todo fill in these. */
+    EXIT_REASON(SVM_EXIT_READ_CR0                   ,  0, "Read CR0."),
+    EXIT_REASON(SVM_EXIT_READ_CR1                   ,  1, "Read CR1."),
+    EXIT_REASON(SVM_EXIT_READ_CR2                   ,  2, "Read CR2."),
+    EXIT_REASON(SVM_EXIT_READ_CR3                   ,  3, "Read CR3."),
+    EXIT_REASON(SVM_EXIT_READ_CR4                   ,  4, "Read CR4."),
+    EXIT_REASON(SVM_EXIT_READ_CR5                   ,  5, "Read CR5."),
+    EXIT_REASON(SVM_EXIT_READ_CR6                   ,  6, "Read CR6."),
+    EXIT_REASON(SVM_EXIT_READ_CR7                   ,  7, "Read CR7."),
+    EXIT_REASON(SVM_EXIT_READ_CR8                   ,  8, "Read CR8."),
+    EXIT_REASON(SVM_EXIT_READ_CR9                   ,  9, "Read CR9."),
+    EXIT_REASON(SVM_EXIT_READ_CR10                  , 10, "Read CR10."),
+    EXIT_REASON(SVM_EXIT_READ_CR11                  , 11, "Read CR11."),
+    EXIT_REASON(SVM_EXIT_READ_CR12                  , 12, "Read CR12."),
+    EXIT_REASON(SVM_EXIT_READ_CR13                  , 13, "Read CR13."),
+    EXIT_REASON(SVM_EXIT_READ_CR14                  , 14, "Read CR14."),
+    EXIT_REASON(SVM_EXIT_READ_CR15                  , 15, "Read CR15."),
+    EXIT_REASON(SVM_EXIT_WRITE_CR0                  , 16, "Write CR0."),
+    EXIT_REASON(SVM_EXIT_WRITE_CR1                  , 17, "Write CR1."),
+    EXIT_REASON(SVM_EXIT_WRITE_CR2                  , 18, "Write CR2."),
+    EXIT_REASON(SVM_EXIT_WRITE_CR3                  , 19, "Write CR3."),
+    EXIT_REASON(SVM_EXIT_WRITE_CR4                  , 20, "Write CR4."),
+    EXIT_REASON(SVM_EXIT_WRITE_CR5                  , 21, "Write CR5."),
+    EXIT_REASON(SVM_EXIT_WRITE_CR6                  , 22, "Write CR6."),
+    EXIT_REASON(SVM_EXIT_WRITE_CR7                  , 23, "Write CR7."),
+    EXIT_REASON(SVM_EXIT_WRITE_CR8                  , 24, "Write CR8."),
+    EXIT_REASON(SVM_EXIT_WRITE_CR9                  , 25, "Write CR9."),
+    EXIT_REASON(SVM_EXIT_WRITE_CR10                 , 26, "Write CR10."),
+    EXIT_REASON(SVM_EXIT_WRITE_CR11                 , 27, "Write CR11."),
+    EXIT_REASON(SVM_EXIT_WRITE_CR12                 , 28, "Write CR12."),
+    EXIT_REASON(SVM_EXIT_WRITE_CR13                 , 29, "Write CR13."),
+    EXIT_REASON(SVM_EXIT_WRITE_CR14                 , 30, "Write CR14."),
+    EXIT_REASON(SVM_EXIT_WRITE_CR15                 , 31, "Write CR15."),
+    EXIT_REASON(SVM_EXIT_READ_DR0                   , 32, "Read DR0."),
+    EXIT_REASON(SVM_EXIT_READ_DR1                   , 33, "Read DR1."),
+    EXIT_REASON(SVM_EXIT_READ_DR2                   , 34, "Read DR2."),
+    EXIT_REASON(SVM_EXIT_READ_DR3                   , 35, "Read DR3."),
+    EXIT_REASON(SVM_EXIT_READ_DR4                   , 36, "Read DR4."),
+    EXIT_REASON(SVM_EXIT_READ_DR5                   , 37, "Read DR5."),
+    EXIT_REASON(SVM_EXIT_READ_DR6                   , 38, "Read DR6."),
+    EXIT_REASON(SVM_EXIT_READ_DR7                   , 39, "Read DR7."),
+    EXIT_REASON(SVM_EXIT_READ_DR8                   , 40, "Read DR8."),
+    EXIT_REASON(SVM_EXIT_READ_DR9                   , 41, "Read DR9."),
+    EXIT_REASON(SVM_EXIT_READ_DR10                  , 42, "Read DR10."),
+    EXIT_REASON(SVM_EXIT_READ_DR11                  , 43, "Read DR11"),
+    EXIT_REASON(SVM_EXIT_READ_DR12                  , 44, "Read DR12."),
+    EXIT_REASON(SVM_EXIT_READ_DR13                  , 45, "Read DR13."),
+    EXIT_REASON(SVM_EXIT_READ_DR14                  , 46, "Read DR14."),
+    EXIT_REASON(SVM_EXIT_READ_DR15                  , 47, "Read DR15."),
+    EXIT_REASON(SVM_EXIT_WRITE_DR0                  , 48, "Write DR0."),
+    EXIT_REASON(SVM_EXIT_WRITE_DR1                  , 49, "Write DR1."),
+    EXIT_REASON(SVM_EXIT_WRITE_DR2                  , 50, "Write DR2."),
+    EXIT_REASON(SVM_EXIT_WRITE_DR3                  , 51, "Write DR3."),
+    EXIT_REASON(SVM_EXIT_WRITE_DR4                  , 52, "Write DR4."),
+    EXIT_REASON(SVM_EXIT_WRITE_DR5                  , 53, "Write DR5."),
+    EXIT_REASON(SVM_EXIT_WRITE_DR6                  , 54, "Write DR6."),
+    EXIT_REASON(SVM_EXIT_WRITE_DR7                  , 55, "Write DR7."),
+    EXIT_REASON(SVM_EXIT_WRITE_DR8                  , 56, "Write DR8."),
+    EXIT_REASON(SVM_EXIT_WRITE_DR9                  , 57, "Write DR9."),
+    EXIT_REASON(SVM_EXIT_WRITE_DR10                 , 58, "Write DR10."),
+    EXIT_REASON(SVM_EXIT_WRITE_DR11                 , 59, "Write DR11."),
+    EXIT_REASON(SVM_EXIT_WRITE_DR12                 , 60, "Write DR12."),
+    EXIT_REASON(SVM_EXIT_WRITE_DR13                 , 61, "Write DR13."),
+    EXIT_REASON(SVM_EXIT_WRITE_DR14                 , 62, "Write DR14."),
+    EXIT_REASON(SVM_EXIT_WRITE_DR15                 , 63, "Write DR15."),
+    EXIT_REASON(SVM_EXIT_EXCEPTION_0                , 64, "Exception Vector 0  (0x0)."),
+    EXIT_REASON(SVM_EXIT_EXCEPTION_1                , 65, "Exception Vector 1  (0x1)."),
+    EXIT_REASON(SVM_EXIT_EXCEPTION_2                , 66, "Exception Vector 2  (0x2)."),
+    EXIT_REASON(SVM_EXIT_EXCEPTION_3                , 67, "Exception Vector 3  (0x3)."),
+    EXIT_REASON(SVM_EXIT_EXCEPTION_4                , 68, "Exception Vector 4  (0x4)."),
+    EXIT_REASON(SVM_EXIT_EXCEPTION_5                , 69, "Exception Vector 5  (0x5)."),
+    EXIT_REASON(SVM_EXIT_EXCEPTION_6                , 70, "Exception Vector 6  (0x6)."),
+    EXIT_REASON(SVM_EXIT_EXCEPTION_7                , 71, "Exception Vector 7  (0x7)."),
+    EXIT_REASON(SVM_EXIT_EXCEPTION_8                , 72, "Exception Vector 8  (0x8)."),
+    EXIT_REASON(SVM_EXIT_EXCEPTION_9                , 73, "Exception Vector 9  (0x9)."),
+    EXIT_REASON(SVM_EXIT_EXCEPTION_A                , 74, "Exception Vector 10 (0xA)."),
+    EXIT_REASON(SVM_EXIT_EXCEPTION_B                , 75, "Exception Vector 11 (0xB)."),
+    EXIT_REASON(SVM_EXIT_EXCEPTION_C                , 76, "Exception Vector 12 (0xC)."),
+    EXIT_REASON(SVM_EXIT_EXCEPTION_D                , 77, "Exception Vector 13 (0xD)."),
+    EXIT_REASON(SVM_EXIT_EXCEPTION_E                , 78, "Exception Vector 14 (0xE)."),
+    EXIT_REASON(SVM_EXIT_EXCEPTION_F                , 79, "Exception Vector 15 (0xF)."),
+    EXIT_REASON(SVM_EXIT_EXCEPTION_10               , 80, "Exception Vector 16 (0x10)."),
+    EXIT_REASON(SVM_EXIT_EXCEPTION_11               , 81, "Exception Vector 17 (0x11)."),
+    EXIT_REASON(SVM_EXIT_EXCEPTION_12               , 82, "Exception Vector 18 (0x12)."),
+    EXIT_REASON(SVM_EXIT_EXCEPTION_13               , 83, "Exception Vector 19 (0x13)."),
+    EXIT_REASON(SVM_EXIT_EXCEPTION_14               , 84, "Exception Vector 20 (0x14)."),
+    EXIT_REASON(SVM_EXIT_EXCEPTION_15               , 85, "Exception Vector 22 (0x15)."),
+    EXIT_REASON(SVM_EXIT_EXCEPTION_16               , 86, "Exception Vector 22 (0x16)."),
+    EXIT_REASON(SVM_EXIT_EXCEPTION_17               , 87, "Exception Vector 23 (0x17)."),
+    EXIT_REASON(SVM_EXIT_EXCEPTION_18               , 88, "Exception Vector 24 (0x18)."),
+    EXIT_REASON(SVM_EXIT_EXCEPTION_19               , 89, "Exception Vector 25 (0x19)."),
+    EXIT_REASON(SVM_EXIT_EXCEPTION_1A               , 90, "Exception Vector 26 (0x1A)."),
+    EXIT_REASON(SVM_EXIT_EXCEPTION_1B               , 91, "Exception Vector 27 (0x1B)."),
+    EXIT_REASON(SVM_EXIT_EXCEPTION_1C               , 92, "Exception Vector 28 (0x1C)."),
+    EXIT_REASON(SVM_EXIT_EXCEPTION_1D               , 93, "Exception Vector 29 (0x1D)."),
+    EXIT_REASON(SVM_EXIT_EXCEPTION_1E               , 94, "Exception Vector 30 (0x1E)."),
+    EXIT_REASON(SVM_EXIT_EXCEPTION_1F               , 95, "Exception Vector 31 (0x1F)."),
+    EXIT_REASON(SVM_EXIT_EXCEPTION_INTR             , 96, "Physical maskable interrupt."),
+    EXIT_REASON(SVM_EXIT_EXCEPTION_NMI              , 97, "Physical non-maskable interrupt."),
+    EXIT_REASON(SVM_EXIT_EXCEPTION_SMI              , 98, "System management interrupt."),
+    EXIT_REASON(SVM_EXIT_EXCEPTION_INIT             , 99, "Physical INIT signal."),
+    EXIT_REASON(SVM_EXIT_EXCEPTION_VINTR            ,100, "Visual interrupt."),
+    EXIT_REASON(SVM_EXIT_EXCEPTION_CR0_SEL_WRITE    ,101, "Write to CR0 that changed any bits other than CR0.TS or CR0.MP."),
+    EXIT_REASON(SVM_EXIT_EXCEPTION_IDTR_READ        ,102, "Read IDTR"),
+    EXIT_REASON(SVM_EXIT_EXCEPTION_GDTR_READ        ,103, "Read GDTR"),
+    EXIT_REASON(SVM_EXIT_EXCEPTION_LDTR_READ        ,104, "Read LDTR."),
+    EXIT_REASON(SVM_EXIT_EXCEPTION_TR_READ          ,105, "Read TR."),
+    EXIT_REASON(SVM_EXIT_EXCEPTION_TR_READ          ,106, "Write IDTR."),
+    EXIT_REASON(SVM_EXIT_EXCEPTION_TR_READ          ,107, "Write GDTR."),
+    EXIT_REASON(SVM_EXIT_EXCEPTION_TR_READ          ,108, "Write LDTR."),
+    EXIT_REASON(SVM_EXIT_EXCEPTION_TR_READ          ,109, "Write TR."),
+    EXIT_REASON(SVM_EXIT_RDTSC                      ,110, "RDTSC instruction."),
+    EXIT_REASON(SVM_EXIT_RDPMC                      ,111, "RDPMC instruction."),
+    EXIT_REASON(SVM_EXIT_PUSHF                      ,112, "PUSHF instruction."),
+    EXIT_REASON(SVM_EXIT_POPF                       ,113, "POPF instruction."),
+    EXIT_REASON(SVM_EXIT_CPUID                      ,114, "CPUID instruction."),
+    EXIT_REASON(SVM_EXIT_RSM                        ,115, "RSM instruction."),
+    EXIT_REASON(SVM_EXIT_IRET                       ,116, "IRET instruction."),
+    EXIT_REASON(SVM_EXIT_SWINT                      ,117, "Software interrupt (INTn instructions)."),
+    EXIT_REASON(SVM_EXIT_INVD                       ,118, "INVD instruction."),
+    EXIT_REASON(SVM_EXIT_PAUSE                      ,119, "PAUSE instruction."),
+    EXIT_REASON(SVM_EXIT_HLT                        ,120, "HLT instruction."),
+    EXIT_REASON(SVM_EXIT_INVLPG                     ,121, "INVLPG instruction."),
+    EXIT_REASON(SVM_EXIT_INVLPGA                    ,122, "INVLPGA instruction."),
+    EXIT_REASON(SVM_EXIT_IOIO                       ,123, "IN/OUT accessing protected port (EXITINFO1 field provides more information)."),
+    EXIT_REASON(SVM_EXIT_MSR                        ,124, "RDMSR or WRMSR access to protected MSR."),
+    EXIT_REASON(SVM_EXIT_TASK_SWITCH                ,125, "Task switch."),
+    EXIT_REASON(SVM_EXIT_FERR_FREEZE                ,126, "FP legacy handling enabled, and processor is frozen in an x87/mmx instruction waiting for an interrupt"),
+    EXIT_REASON(SVM_EXIT_TASK_SHUTDOWN              ,127, "Shutdown."),
+    EXIT_REASON(SVM_EXIT_TASK_VMRUN                 ,128, "VMRUN instruction."),
+    EXIT_REASON(SVM_EXIT_TASK_VMCALL                ,129, "VMCALL instruction."),
+    EXIT_REASON(SVM_EXIT_TASK_VMLOAD                ,130, "VMLOAD instruction."),
+    EXIT_REASON(SVM_EXIT_TASK_VMSAVE                ,131, "VMSAVE instruction."),
+    EXIT_REASON(SVM_EXIT_TASK_STGI                  ,132, "STGI instruction."),
+    EXIT_REASON(SVM_EXIT_TASK_CLGI                  ,133, "CLGI instruction."),
+    EXIT_REASON(SVM_EXIT_TASK_SKINIT                ,134, "SKINIT instruction."),
+    EXIT_REASON(SVM_EXIT_TASK_RDTSCP                ,135, "RDTSCP instruction."),
+    EXIT_REASON(SVM_EXIT_TASK_ICEBP                 ,136, "ICEBP instruction."),
+    EXIT_REASON(SVM_EXIT_TASK_WBINVD                ,137, "WBINVD instruction."),
+    EXIT_REASON(SVM_EXIT_TASK_MONITOR               ,138, "MONITOR instruction."),
+    EXIT_REASON(SVM_EXIT_MWAIT_UNCOND               ,139, "MWAIT instruction unconditional."),
+    EXIT_REASON(SVM_EXIT_MWAIT_ARMED                ,140, "MWAIT instruction when armed."),
+    EXIT_REASON(SVM_EXIT_MWAIT_NPF                  ,1024, "Nested paging: host-level page fault occurred (EXITINFO1 contains fault errorcode; EXITINFO2 contains the guest physical address causing the fault)."),
     EXIT_REASON_NIL()
 };
