[PATCH] sim: profile: fix building with --disable-sim-profile

Mike Frysinger vapier@gentoo.org
Tue Nov 16 03:24:00 GMT 2010


When the sim is configured with profile support disabled, the build fails:
./../common/sim-profile.c: In function 'profile_option_handler':
./../common/sim-profile.c:337:6: warning: implicit declaration of function 'PROFILE_PC_FREQ'
./../common/sim-profile.c:337:6: error: lvalue required as left operand of assignment
./../common/sim-profile.c:351:6: warning: implicit declaration of function 'PROFILE_PC_NR_BUCKETS'
./../common/sim-profile.c:351:6: error: lvalue required as left operand of assignment
./../common/sim-profile.c:381:6: warning: implicit declaration of function 'PROFILE_PC_SHIFT'
./../common/sim-profile.c:381:6: error: lvalue required as left operand of assignment
./../common/sim-profile.c:405:8: warning: implicit declaration of function 'PROFILE_PC_START'
./../common/sim-profile.c:405:8: error: lvalue required as left operand of assignment
./../common/sim-profile.c:406:8: warning: implicit declaration of function 'PROFILE_PC_END'
./../common/sim-profile.c:406:8: error: lvalue required as left operand of assignment
./../common/sim-profile.c: In function 'profile_uninstall':
./../common/sim-profile.c:1299:7: warning: implicit declaration of function 'PROFILE_INSN_COUNT'
./../common/sim-profile.c:1299:37: warning: comparison between pointer and integer
./../common/sim-profile.c:1300:2: warning: passing argument 1 of 'zfree' makes pointer from integer without a cast
../common/sim-utils.h:30:6: note: expected 'void *' but argument is of type 'int'
make[2]: *** [sim-profile.o] Error 1

So add some stubs similar to how some of the other subsystems are
stubbed out so things build correctly.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>

2010-11-16  Mike Frysinger  <vapier@gentoo.org>

	* sim-profile.c (PROFILE_PC_FREQ, PROFILE_PC_NR_BUCKETS,
	PROFILE_PC_SHIFT, PROFILE_PC_START, PROFILE_PC_END,
	PROFILE_INSN_COUNT): Add stubs when profile is disabled.
---
 sim/common/sim-profile.c |   10 ++++++++++
 1 files changed, 10 insertions(+), 0 deletions(-)

diff --git a/sim/common/sim-profile.c b/sim/common/sim-profile.c
index e7bcd3e..837fada 100644
--- a/sim/common/sim-profile.c
+++ b/sim/common/sim-profile.c
@@ -36,6 +36,16 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.  */
 #endif
 #include <ctype.h>
 
+#if !WITH_PROFILE_PC_P
+static unsigned int _profile_stub;
+# define PROFILE_PC_FREQ(p) _profile_stub
+# define PROFILE_PC_NR_BUCKETS(p) _profile_stub
+# define PROFILE_PC_SHIFT(p) _profile_stub
+# define PROFILE_PC_START(p) _profile_stub
+# define PROFILE_PC_END(p) _profile_stub
+# define PROFILE_INSN_COUNT(p) &_profile_stub
+#endif
+
 #define COMMAS(n) sim_add_commas (comma_buf, sizeof (comma_buf), (n))
 
 static MODULE_INIT_FN profile_init;
-- 
1.7.3.1



More information about the Gdb-patches mailing list