36 #include "code/exceptionHandlerTable.hpp" |
36 #include "code/exceptionHandlerTable.hpp" |
37 #include "code/nmethod.hpp" |
37 #include "code/nmethod.hpp" |
38 #include "compiler/compileLog.hpp" |
38 #include "compiler/compileLog.hpp" |
39 #include "compiler/disassembler.hpp" |
39 #include "compiler/disassembler.hpp" |
40 #include "compiler/oopMap.hpp" |
40 #include "compiler/oopMap.hpp" |
|
41 #include "jfr/jfrEvents.hpp" |
41 #include "opto/addnode.hpp" |
42 #include "opto/addnode.hpp" |
42 #include "opto/block.hpp" |
43 #include "opto/block.hpp" |
43 #include "opto/c2compiler.hpp" |
44 #include "opto/c2compiler.hpp" |
44 #include "opto/callGenerator.hpp" |
45 #include "opto/callGenerator.hpp" |
45 #include "opto/callnode.hpp" |
46 #include "opto/callnode.hpp" |
69 #include "opto/vectornode.hpp" |
70 #include "opto/vectornode.hpp" |
70 #include "runtime/arguments.hpp" |
71 #include "runtime/arguments.hpp" |
71 #include "runtime/signature.hpp" |
72 #include "runtime/signature.hpp" |
72 #include "runtime/stubRoutines.hpp" |
73 #include "runtime/stubRoutines.hpp" |
73 #include "runtime/timer.hpp" |
74 #include "runtime/timer.hpp" |
74 #include "trace/tracing.hpp" |
|
75 #include "utilities/copy.hpp" |
75 #include "utilities/copy.hpp" |
76 #if defined AD_MD_HPP |
76 #if defined AD_MD_HPP |
77 # include AD_MD_HPP |
77 # include AD_MD_HPP |
78 #elif defined TARGET_ARCH_MODEL_x86_32 |
78 #elif defined TARGET_ARCH_MODEL_x86_32 |
79 # include "adfiles/ad_x86_32.hpp" |
79 # include "adfiles/ad_x86_32.hpp" |
86 #elif defined TARGET_ARCH_MODEL_ppc_64 |
86 #elif defined TARGET_ARCH_MODEL_ppc_64 |
87 # include "adfiles/ad_ppc_64.hpp" |
87 # include "adfiles/ad_ppc_64.hpp" |
88 #elif defined TARGET_ARCH_MODEL_mips_64 |
88 #elif defined TARGET_ARCH_MODEL_mips_64 |
89 # include "adfiles/ad_mips_64.hpp" |
89 # include "adfiles/ad_mips_64.hpp" |
90 #endif |
90 #endif |
91 |
|
92 |
91 |
93 // -------------------- Compile::mach_constant_base_node ----------------------- |
92 // -------------------- Compile::mach_constant_base_node ----------------------- |
94 // Constant table base node singleton. |
93 // Constant table base node singleton. |
95 MachConstantBaseNode* Compile::mach_constant_base_node() { |
94 MachConstantBaseNode* Compile::mach_constant_base_node() { |
96 if (_mach_constant_base_node == NULL) { |
95 if (_mach_constant_base_node == NULL) { |
3601 if (_failure_reason == NULL) { |
3600 if (_failure_reason == NULL) { |
3602 // Record the first failure reason. |
3601 // Record the first failure reason. |
3603 _failure_reason = reason; |
3602 _failure_reason = reason; |
3604 } |
3603 } |
3605 |
3604 |
3606 EventCompilerFailure event; |
|
3607 if (event.should_commit()) { |
|
3608 event.set_compileID(Compile::compile_id()); |
|
3609 event.set_failure(reason); |
|
3610 event.commit(); |
|
3611 } |
|
3612 |
|
3613 if (!C->failure_reason_is(C2Compiler::retry_no_subsuming_loads())) { |
3605 if (!C->failure_reason_is(C2Compiler::retry_no_subsuming_loads())) { |
3614 C->print_method(PHASE_FAILURE); |
3606 C->print_method(PHASE_FAILURE); |
3615 } |
3607 } |
3616 _root = NULL; // flush the graph, too |
3608 _root = NULL; // flush the graph, too |
3617 } |
3609 } |