gem5/src/base
Andreas Hansson 406891c62a scons: Enforce gcc >= 4.4 or clang >= 2.9 and c++0x support
This patch checks that the compiler in use is either gcc >= 4.4 or
clang >= 2.9. and enables building with --std=c++0x in all cases. As a
consequence, we can tidy up the hashmap and always have static_assert
available. If anyone wants to use alternative compilers, icc for
example supports c++0x to a similar level and could be added if
needed.

This patch opens up for a more elaborate use of c++0x features that
are present in gcc 4.4 and clang 2.9, e.g. auto typed variables,
variadic templates, rvalues and move semantics, and strongly typed
enums. There will be no going back on this one...
2013-01-07 13:05:39 -05:00
..
loader ARM: added support for flattened device tree blobs 2012-09-25 11:49:41 -05:00
stats scons: Enforce gcc >= 4.4 or clang >= 2.9 and c++0x support 2013-01-07 13:05:39 -05:00
vnc sim: have a curTick per eventq 2012-11-16 10:27:47 -06:00
addr_range.hh base: Add support for merging of interleaved address ranges 2013-01-07 13:05:38 -05:00
addr_range_map.hh mem: Add interleaving bits to the address ranges 2013-01-07 13:05:38 -05:00
atomicio.cc types: clean up types, especially signed vs unsigned 2009-06-04 23:21:12 -07:00
atomicio.hh atomicio: provide atomic read and write functions. 2008-09-19 09:42:31 -07:00
bigint.cc build: fix compile problems pointed out by gcc 4.4 2009-11-04 16:57:01 -08:00
bigint.hh build: fix compile problems pointed out by gcc 4.4 2009-11-04 16:57:01 -08:00
bitfield.hh ARM: Add a findLsbSet function and use it to implement clz. 2009-07-01 22:16:36 -07:00
bitmap.cc gcc: Clean-up of non-C++0x compliant code, first steps 2012-03-19 06:36:09 -04:00
bitmap.hh VNC: Add support for capturing frame buffer to file each time it is changed. 2011-12-01 00:15:26 -08:00
bitunion.hh BitUnion: Add more constiness. 2009-06-21 16:40:33 -07:00
callback.cc gcc: Clean-up of non-C++0x compliant code, first steps 2012-03-19 06:36:09 -04:00
callback.hh callback: Make helper functions that create callback objects for you 2010-04-18 13:23:25 -07:00
cast.hh safe_cast: add a new cast function for casts that should always succeed. 2008-11-10 11:51:17 -08:00
chunk_generator.hh types: clean up types, especially signed vs unsigned 2009-06-04 23:21:12 -07:00
circlebuf.cc gcc: Add extra parens to quell warnings. 2008-09-27 21:03:49 -07:00
circlebuf.hh Updated Authors from bk prs info 2006-05-31 19:26:56 -04:00
compiler.hh scons: Enforce gcc >= 4.4 or clang >= 2.9 and c++0x support 2013-01-07 13:05:39 -05:00
condcodes.hh Condition Codes: Fix the findParity function. 2007-09-25 20:26:10 -07:00
cp_annotate.cc includes: sort all includes 2011-04-15 10:44:06 -07:00
cp_annotate.hh includes: sort all includes 2011-04-15 10:44:06 -07:00
CPA.py sim: Include object header files in SWIG interfaces 2012-11-02 11:32:01 -05:00
cprintf.cc base: Fix a few incorrectly handled print format cases 2012-11-02 11:32:00 -05:00
cprintf.hh base: Fix a few incorrectly handled print format cases 2012-11-02 11:32:00 -05:00
cprintf_formats.hh cprintf: support a configurable width and precision ("*" in printf) 2008-12-03 04:57:54 -08:00
date.cc Updated Authors from bk prs info 2006-05-31 19:26:56 -04:00
debug.cc debug: fix AllFlags::disable() 2012-01-16 19:00:59 -08:00
debug.hh debug: fix help output 2011-05-04 10:08:08 -04:00
fenv.c includes: sort all includes 2011-04-15 10:44:06 -07:00
fenv.hh create base/fenv.c to standerdize fenv across platforms. It's a c file and not a cpp file because c99 2007-04-21 17:50:47 -04:00
flags.hh flags: Change naming of functions to be clearer 2008-12-06 14:18:18 -08:00
hashmap.hh scons: Enforce gcc >= 4.4 or clang >= 2.9 and c++0x support 2013-01-07 13:05:39 -05:00
hostinfo.cc str: add an overloaded startswith() utility method 2012-08-06 16:52:49 -07:00
hostinfo.hh MAC: Make gem5 compile and run on MacOSX 10.7.2 2012-01-09 18:08:20 -06:00
inet.cc Inet: Remove the SackRange and its use 2012-09-10 11:57:39 -04:00
inet.hh AddrRange: Transition from Range<T> to AddrRange 2012-09-19 06:15:44 -04:00
inifile.cc clang/gcc: Fix compilation issues with clang 3.0 and gcc 4.6 2012-04-14 05:43:31 -04:00
inifile.hh inifile: Whack preprocessor access. 2008-09-19 09:11:40 -07:00
intmath.cc Updated Authors from bk prs info 2006-05-31 19:26:56 -04:00
intmath.hh Bus: Replace tickNextIdle and inRetry with a state variable 2012-07-09 12:35:35 -04:00
match.cc types: clean up types, especially signed vs unsigned 2009-06-04 23:21:12 -07:00
match.hh Updated Authors from bk prs info 2006-05-31 19:26:56 -04:00
misc.cc Misc: Remove the URL from warnings, fatals, panics, etc. 2011-05-29 21:48:58 -07:00
misc.hh Rename the info function to inform to avoid likely name conflicts 2008-10-10 12:17:53 -07:00
mod_num.hh Updated Authors from bk prs info 2006-05-31 19:26:56 -04:00
output.cc mem: Add tracing support in the communication monitor 2013-01-07 13:05:37 -05:00
output.hh mem: Add tracing support in the communication monitor 2013-01-07 13:05:37 -05:00
pollevent.cc includes: sort all includes 2011-04-15 10:44:06 -07:00
pollevent.hh includes: sort all includes 2011-04-15 10:44:06 -07:00
printable.hh Additional comments and helper functions for PrintReq. 2008-01-02 13:46:22 -08:00
random.cc Base: Fixed shift amount in genrand() to work with large numbers 2012-01-09 18:08:20 -06:00
random.hh AddrRange: Transition from Range<T> to AddrRange 2012-09-19 06:15:44 -04:00
random_mt.cc copyright: clean up copyright blocks 2011-06-02 14:36:35 -07:00
refcnt.hh refcnt: Update doxygen comments 2011-04-13 09:32:19 -07:00
remote_gdb.cc NetBSD: Build on NetBSD 2012-09-10 11:57:42 -04:00
remote_gdb.hh MEM: Enable multiple distributed generalized memories 2012-04-06 13:46:31 -04:00
SConscript AddrRange: Simplify Range by removing stream input/output 2012-09-19 06:15:43 -04:00
socket.cc includes: sort all includes 2011-04-15 10:44:06 -07:00
socket.hh sockets: Add a function to disable all listening sockets. 2008-08-03 18:19:55 -07:00
statistics.cc stats: Provide a mechanism to get a callback when stats are dumped. 2012-06-05 01:23:08 -04:00
statistics.hh stats: when applying an operation to two vectors sum the components first. 2012-06-05 01:23:11 -04:00
stl_helpers.hh clang: Enable compiling gem5 using clang 2.9 and 3.0 2012-01-31 12:05:52 -05:00
str.cc gcc: Clean-up of non-C++0x compliant code, first steps 2012-03-19 06:36:09 -04:00
str.hh str: add an overloaded startswith() utility method 2012-08-06 16:52:49 -07:00
time.cc ARM: Add RTC device for ARM platforms. 2012-03-01 17:26:31 -06:00
time.hh ARM: Add RTC device for ARM platforms. 2012-03-01 17:26:31 -06:00
trace.cc Trace: FIx issue with creation of trace file with output dir overhaul. 2011-12-01 17:36:22 -08:00
trace.hh trace: reimplement the DTRACE function so it doesn't use a vector 2011-04-15 10:44:32 -07:00
trie.hh base: Include cassert in trie.hh. 2012-04-22 05:20:44 -07:00
types.hh Param: Transition to Cycles for relevant parameters 2012-09-07 12:34:38 -04:00
userinfo.cc Updated Authors from bk prs info 2006-05-31 19:26:56 -04:00
userinfo.hh Updated Authors from bk prs info 2006-05-31 19:26:56 -04:00
varargs.hh Make commenting on close namespace brackets consistent. 2011-01-03 14:35:43 -08:00