From 2ca42cd62666f4d13eab259290b6cde5fe677862 Mon Sep 17 00:00:00 2001 From: Andreas Hansson Date: Wed, 20 Mar 2013 06:41:23 -0400 Subject: cpu: Avoid including inorder TLBUnit to avoid gcc LTO bug This patch comments out the inclusion of the inorder TLBUnit which is only used in the 9-stage pipeline. With the TLBUnit present, gcc >= 4.6 in combination with LTO ends up throwing away the definition of the TLBUnit destructor, and consequently fail to link. See http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53808 for more details about the bug, and http://gcc.gnu.org/ml/gcc/2012-06/msg00397.html for the discussion thread that also touches on similar issues seen with clang. --- src/cpu/inorder/resources/resource_list.hh | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'src/cpu/inorder') diff --git a/src/cpu/inorder/resources/resource_list.hh b/src/cpu/inorder/resources/resource_list.hh index ae6b4ecaf..a3876d80f 100644 --- a/src/cpu/inorder/resources/resource_list.hh +++ b/src/cpu/inorder/resources/resource_list.hh @@ -42,7 +42,9 @@ #include "cpu/inorder/resources/graduation_unit.hh" #include "cpu/inorder/resources/inst_buffer.hh" #include "cpu/inorder/resources/mult_div_unit.hh" -#include "cpu/inorder/resources/tlb_unit.hh" +// The TLBUnit is only needed with the 9-stage pipe and is +// triggering a gcc LTO bug +//#include "cpu/inorder/resources/tlb_unit.hh" #include "cpu/inorder/resources/use_def.hh" #endif -- cgit v1.2.3