#
12895:16e3712d8189 |
|
02-Aug-2018 |
Jason Lowe-Power <jason@lowepower.com> |
misc: Appease GCC 8
GCC 8 adds a number of new warnings to -Wall which generate errors.
- Fix memset to 0 for structs by adding casts. - Fix cast with const when the const was ignored. - Fix catch a polymorphic type by value
We now compile with GCC 8!
Change-Id: Iab70ce11190eee67608fc25c0bedff170152b153 Signed-off-by: Jason Lowe-Power <jason@lowepower.com> Reviewed-on: https://gem5-review.googlesource.com/11949 Reviewed-by: Daniel Carvalho <odanrc@yahoo.com.br> Reviewed-by: Andreas Sandberg <andreas.sandberg@arm.com>
|
#
12631:d48fc4cce6eb |
|
29-Mar-2018 |
Gabe Black <gabeblack@google.com> |
base: Make bitunion output functions static/inline.
The specializations need to be online only and not static, but the template itself is static and inline.
Originally they were in an anonymous namespace, but that causes warnings when building on clang or with certain versions of gcc because the functions may not be used in every .cc.
Change-Id: Iff127337f7bf0c18755de07a49d6e7a9ce6f2f0a Reviewed-on: https://gem5-review.googlesource.com/9581 Reviewed-by: Anthony Gutierrez <anthony.gutierrez@amd.com> Reviewed-by: Jason Lowe-Power <jason@lowepower.com> Maintainer: Anthony Gutierrez <anthony.gutierrez@amd.com> Maintainer: Jason Lowe-Power <jason@lowepower.com>
|
#
12625:c0cf272e0456 |
|
27-Mar-2018 |
Gabe Black <gabeblack@google.com> |
base: Add a default output function for bitunion types.
This way printing bitunions with, for instance, DPRINTF actually prints something useful. More specialized overloads will still allow printing particular bitunion types in ways that might make more sense for that particular type.
Change-Id: I92beb0ce07683ba8b318cf25aa73e0057e4a60ef Reviewed-on: https://gem5-review.googlesource.com/9461 Reviewed-by: Andreas Sandberg <andreas.sandberg@arm.com> Maintainer: Gabe Black <gabeblack@google.com>
|
#
12491:8765e1fb564d |
|
04-Feb-2018 |
Gabe Black <gabeblack@google.com> |
base: Update #includes for bitunion.hh.
<iostream> isn't actually used anywhere in bitunion.hh. The templated hash struct type is defined in <functional> and should be included explicitly.
Change-Id: I8691ccb2f9e28a01610ae8bb4d9591b07cb7320b Reviewed-on: https://gem5-review.googlesource.com/7781 Reviewed-by: Matthias Jung <jungma@eit.uni-kl.de> Maintainer: Gabe Black <gabeblack@google.com>
|
#
12465:db848583d43e |
|
27-Jan-2018 |
Gabe Black <gabeblack@google.com> |
base: Get bitunions to compile on clang 3.8.
clang was getting very upset and interpretting a member function pointer as a call to the actual underlying function, and then complaining that it was a non-static function call without an instance.
It seems what it was really upset about was that the class who's scope the member function pointer belonged to (the current class) wasn't done being defined. This *should* be ok as far as I can tell, but clang was having none of it.
This change reworks how the type of the setter function arguments are determined to work around that limitation. The bitunion test was run with clang++ and g++ and both pass, and I've built gem5.opt for ARM successfully.
Change-Id: Ib9351784a897af4867fe08045577e0247334ea11 Reviewed-on: https://gem5-review.googlesource.com/7581 Reviewed-by: Jason Lowe-Power <jason@lowepower.com> Maintainer: Gabe Black <gabeblack@google.com>
|
#
12454:277c1f58ab6d |
|
07-Jan-2018 |
Gabe Black <gabeblack@google.com> |
base: Hide the BitUnion::__StorageType type.
Since this type is now accessible through a clean interface, hide it from anybody that tries to peak around the curtain.
Change-Id: I1257b6675a45b8648be459ad8e8d0f27a6feee6b Reviewed-on: https://gem5-review.googlesource.com/7205 Reviewed-by: Gabe Black <gabeblack@google.com> Maintainer: Gabe Black <gabeblack@google.com>
|
#
12453:424595e0a14e |
|
07-Jan-2018 |
Gabe Black <gabeblack@google.com> |
arm, base: Generalize and move the BitUnion hash struct.
The ARM types.hh file defined an STL style hash structure to operate on the ExtMachInst, but it referred to the underlying storage type using internal typedefs in the BitUnion types. To avoid having to do that, this change adds a hash structure to bitunion.hh which will work on any BitUnion, and gets rid of the ARM ExtMachInst version.
Change-Id: I7c1c84d61b59061fec98abaaeab6becd06537dee Reviewed-on: https://gem5-review.googlesource.com/7204 Reviewed-by: Jason Lowe-Power <jason@lowepower.com> Maintainer: Gabe Black <gabeblack@google.com>
|
#
12451:5a5024ab0364 |
|
07-Jan-2018 |
Gabe Black <gabeblack@google.com> |
base: Enable specializing templates on BitUnion types.
Previously these relied on reaching into private internal definitions in the BitUnion types.
Change-Id: Ia6c94de92986b85ec9e5fcb197459d450111fb36 Reviewed-on: https://gem5-review.googlesource.com/7202 Reviewed-by: Jason Lowe-Power <jason@lowepower.com> Maintainer: Gabe Black <gabeblack@google.com>
|
#
12450:b5a0300fc327 |
|
06-Jan-2018 |
Gabe Black <gabeblack@google.com> |
base: Rework bitunions so they can be more flexible.
They are now oriented around a class which makes it easy to provide custom setter/getter functions which let you set or read bits in an arbitrary way.
Future additions may add the ability to add custom bitfield methods, and index-able bitfields.
Change-Id: Ibd6d4d9e49107490f6dad30a4379a8c93bda9333 Reviewed-on: https://gem5-review.googlesource.com/7201 Reviewed-by: Jason Lowe-Power <jason@lowepower.com> Maintainer: Gabe Black <gabeblack@google.com>
|
#
11800:54436a1784dc |
|
09-Nov-2016 |
Brandon Potter <brandon.potter@amd.com> |
style: [patch 3/22] reduce include dependencies in some headers
Used cppclean to help identify useless includes and removed them. This involved erroneously included headers, but also cases where forward declarations could have been used rather than a full include.
|
#
11294:a368064a2ab5 |
|
11-Jan-2016 |
Andreas Hansson <andreas.hansson@arm.com> |
scons: Enable -Wextra by default
Make best use of the compiler, and enable -Wextra as well as -Wall. There are a few issues that had to be resolved, but they are all trivial.
|
#
10640:edbc52a43cd8 |
|
07-Jan-2015 |
Gabe Black <gabeblack@google.com> |
base: Fix assigning between identical bitfields.
If two bitfields are of the same type, also implying that they have the same first and last bit positions, the existing implementation would copy the entire bitfield. That includes the __data member which is shared among all the bitfields, effectively overwritting the entire bitunion.
This change also adjusts the write only signed bitfield assignment operator to be like the unsigned version, using "using" instead of implementing it again and calling down to the underlying implementation.
|
#
10289:4593282280e4 |
|
26-Aug-2014 |
Andreas Sandberg <Andreas.Sandberg@ARM.com> |
base: Add a static assert to check bit union ranges
If a bit field in a bit union specified as Bitfield<LSB, MSB> instead of Bitfield<MSB, LSB> the code silently fails and the field is read as zero. This changeset introduces a static assert that tests, at compile time, that the bit order is correct.
|
#
6249:ba13184587a5 |
|
21-Jun-2009 |
Gabe Black <gblack@eecs.umich.edu> |
BitUnion: Add more constiness.
|
#
6215:9aed64c9f10f |
|
17-May-2009 |
Nathan Binkert <nate@binkert.org> |
includes: use base/types.hh not inttypes.h or stdint.h
|
#
5543:3af77710f397 |
|
10-Sep-2008 |
Ali Saidi <saidi@eecs.umich.edu> |
style: Remove non-leading tabs everywhere they shouldn't be. Developers should configure their editors to not insert tabs
|
#
5442:0552284c5b8b |
|
12-Jun-2008 |
Gabe Black <gblack@eecs.umich.edu> |
BitUnion: Take out namespace declaration so bitunions can be declared inside classes.
|
#
5136:53c8a5da3d65 |
|
07-Oct-2007 |
Gabe Black <gblack@eecs.umich.edu> |
BitUnion: Fix some types in the bitunion classes.
|
#
4698:88acffc31e4a |
|
18-Jul-2007 |
Gabe Black <gblack@eecs.umich.edu> |
Fix a compilation error for SubBitUnions,
|
#
4681:5a8ff2219a2f |
|
17-Jul-2007 |
Gabe Black <gblack@eecs.umich.edu> |
Add a conversion constructor so a bitunion can be initialized to a value. Previously, the bitunion would need to be declared and then assigned to separately.
|
#
4680:09867d787df8 |
|
14-Jul-2007 |
Gabe Black <gblack@eecs.umich.edu> |
Move bitunion code into it's own file.
|