Author: dgilmore
Date: 2012-08-19 19:57:14 -0400 (Sun, 19 Aug 2012)
New Revision: 4009
Modified:
trunk/configure
trunk/configure.ac
trunk/osprey/Makefile.gsetup.in
trunk/osprey/common/com/ir_reader.cxx
trunk/osprey/common/com/wn.cxx
trunk/osprey/common/com/wn_core.h
Log:
Add configuration option --enable-whirl-id.
This configure option enables the debugging ID field in WHIRL nodes.
Changed CPP macro name from USE_UNIQUE_MAP_ID_FOR_DEBUG to
WHIRL_USE_UNIQUE_ID_FOR_DEBUG to better describe the
functionality being added.
CR: David Coakley
Modified: trunk/configure
===================================================================
--- trunk/configure 2012-08-19 23:53:31 UTC (rev 4008)
+++ trunk/configure 2012-08-19 23:57:14 UTC (rev 4009)
@@ -273,7 +273,7 @@
ac_subdirs_all="$ac_subdirs_all osprey/cygnus"
ac_subdirs_all="$ac_subdirs_all osprey-gcc-4.2.0"
-ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME
PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix
program_transform_name bindir sbindir libexecdir datadir sysconfdir
sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir
build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS build
build_cpu build_vendor build_os host host_cpu host_vendor host_os target
target_cpu target_vendor target_os MACHINE_TYPE CROSS_TARGET BUILD_ABI
BUILD_ARCH BUILD_HOST BUILD_TARGET BUILD_VENDOR BUILD_OPTIMIZE
BUILD_FFE_OPTIMIZE BUILD_LIB_OPTIMIZE BUILD_COMPILER BUILD_BOTH
LIB_MACHINE_TYPE LIB_BUILD_TARGET LIB_BUILD_ABI LIB_BUILD_ARCH LIB_BUILD_HOST
LIB2_MACHINE_TYPE LIB2_BUILD_TARGET LIB2_BUILD_ABI LIB2_BUILD_ARCH
LIB2_BUILD_HOST BUILD_MULTILIB COMPILER_TARG_DIR TARG_INFO_NAME BUILD_GNU3
BUILD_FORTRAN BUILD_SKIP_IPA BUILD_TYPE GCC_CONFIGURE_TARG GCC_DIR LIBLIST
subdirs LIBOBJS LTLIBOBJS'
+ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME
PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix
program_transform_name bindir sbindir libexecdir datadir sysconfdir
sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir
build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS build
build_cpu build_vendor build_os host host_cpu host_vendor host_os target
target_cpu target_vendor target_os MACHINE_TYPE CROSS_TARGET BUILD_ABI
BUILD_ARCH BUILD_HOST BUILD_TARGET BUILD_VENDOR BUILD_OPTIMIZE
BUILD_FFE_OPTIMIZE BUILD_LIB_OPTIMIZE BUILD_COMPILER BUILD_BOTH
LIB_MACHINE_TYPE LIB_BUILD_TARGET LIB_BUILD_ABI LIB_BUILD_ARCH LIB_BUILD_HOST
LIB2_MACHINE_TYPE LIB2_BUILD_TARGET LIB2_BUILD_ABI LIB2_BUILD_ARCH
LIB2_BUILD_HOST BUILD_MULTILIB COMPILER_TARG_DIR TARG_INFO_NAME BUILD_GNU3
BUILD_FORTRAN WHIRL_HAS_ID_FIELD BUILD_SKIP_IPA BUILD_TYPE GCC_CONFIGURE_TARG
GCC_DIR LIBLIST subdirs LIBOBJS LTLIBOBJS'
ac_subst_files=''
# Initialize some variables set by options.
@@ -793,6 +793,7 @@
--enable-FEATURE[=ARG] include FEATURE [ARG=yes]
--enable-gnu3 Enable GNU3-based C/C++ frontend
--disable-fortran Disable Fortran language support
+ --enable-whirl-id Enable debugging ID in WHIRL node
--disable-ipa Disable IPA compilation support (EXPERIMENTAL)
--disable-shared Disable shared libraries (EXPERIMENTAL)
@@ -1496,6 +1497,24 @@
fi
+# Set whether WHIRL a node contains a debugging ID
+# Check whether --enable-whirl_id or --disable-whirl_id was given.
+if test "${enable_whirl_id+set}" = set; then
+ enableval="$enable_whirl_id"
+
+fi;
+
+if test "x$enable_whirl_id" = "xyes"; then
+
+ WHIRL_HAS_ID_FIELD=YES
+
+else
+
+ WHIRL_HAS_ID_FIELD=NO
+
+fi
+
+
# Set whether to skip IPA support (default NO).
# Check whether --enable-ipa or --disable-ipa was given.
if test "${enable_ipa+set}" = set; then
@@ -1756,6 +1775,7 @@
+
# List of configurable files to create in object directory.
ac_config_files="$ac_config_files Makefile osprey/Makefile.gsetup
osprey/targdir/libspin/Makefile osprey/targdir/libspin_4_2_0/Makefile
osprey/targdir/include/Makefile osprey/targdir/driver/Makefile
osprey/targdir/libiberty/Makefile osprey/targdir/targ_info/Makefile
osprey/targdir/be/Makefile osprey/targdir/libelf/Makefile
osprey/targdir/libelfutil/Makefile osprey/targdir/libdwarf/Makefile
osprey/targdir/libunwindP/Makefile osprey/targdir/cg/Makefile
osprey/targdir/wopt/Makefile osprey/targdir/ipl/Makefile
osprey/targdir/lno/Makefile osprey/targdir/lw_inline/Makefile
osprey/targdir/ipa/Makefile osprey/targdir/whirl2c/Makefile
osprey/targdir/libcomutil/Makefile osprey/targdir/ir_tools/Makefile
osprey/targdir/libcmplrs/Makefile osprey/targdir/wgen/Makefile
osprey/targdir/libcif/Makefile osprey/targdir/arith/Makefile
osprey/targdir/orc_ict/Makefile osprey/targdir/orc_intel/Makefile
osprey/targdir/libkapi/Makefile"
@@ -2576,6 +2596,7 @@
s,@TARG_INFO_NAME@,$TARG_INFO_NAME,;t t
s,@BUILD_GNU3@,$BUILD_GNU3,;t t
s,@BUILD_FORTRAN@,$BUILD_FORTRAN,;t t
+s,@WHIRL_HAS_ID_FIELD@,$WHIRL_HAS_ID_FIELD,;t t
s,@BUILD_SKIP_IPA@,$BUILD_SKIP_IPA,;t t
s,@BUILD_TYPE@,$BUILD_TYPE,;t t
s,@GCC_CONFIGURE_TARG@,$GCC_CONFIGURE_TARG,;t t
Modified: trunk/configure.ac
===================================================================
--- trunk/configure.ac 2012-08-19 23:53:31 UTC (rev 4008)
+++ trunk/configure.ac 2012-08-19 23:57:14 UTC (rev 4009)
@@ -144,6 +144,16 @@
BUILD_FORTRAN=YES
])
+# Set whether WHIRL a node contains a debugging ID
+AC_ARG_ENABLE([whirl_id],
+ AS_HELP_STRING([--enable-whirl-id], [Enable debugging ID in WHIRL node]))
+
+AS_IF([test "x$enable_whirl_id" = "xyes"], [
+ WHIRL_HAS_ID_FIELD=YES
+], [
+ WHIRL_HAS_ID_FIELD=NO
+])
+
# Set whether to skip IPA support (default NO).
AC_ARG_ENABLE([ipa],
AS_HELP_STRING([--disable-ipa], [Disable IPA compilation support
(EXPERIMENTAL)]))
@@ -383,6 +393,7 @@
AC_SUBST([TARG_INFO_NAME])
AC_SUBST([BUILD_GNU3])
AC_SUBST([BUILD_FORTRAN])
+AC_SUBST([WHIRL_HAS_ID_FIELD])
AC_SUBST([BUILD_SKIP_IPA])
AC_SUBST([BUILD_TYPE])
AC_SUBST([GCC_CONFIGURE_TARG])
Modified: trunk/osprey/Makefile.gsetup.in
===================================================================
--- trunk/osprey/Makefile.gsetup.in 2012-08-19 23:53:31 UTC (rev 4008)
+++ trunk/osprey/Makefile.gsetup.in 2012-08-19 23:57:14 UTC (rev 4009)
@@ -159,6 +159,9 @@
ifndef GCC_DIR
GCC_DIR = @GCC_DIR@
endif
+ifndef WHIRL_HAS_ID_FIELD
+ WHIRL_HAS_ID_FIELD = @WHIRL_HAS_ID_FIELD@
+endif
# For cross compilers, there are really 3 separate variables:
# the build host (machine you are building on),
@@ -663,6 +666,9 @@
ifeq ($(BUILD_TYPE), SHARED)
STD_COMPILE_OPTS += -DSHARED_BUILD
endif
+ifeq ($(WHIRL_HAS_ID_FIELD), YES)
+STD_COMPILE_OPTS += -DWHIRL_USE_UNIQUE_ID_FOR_DEBUG
+endif
#
# Assign STD_C++_OPTS here
Modified: trunk/osprey/common/com/ir_reader.cxx
===================================================================
--- trunk/osprey/common/com/ir_reader.cxx 2012-08-19 23:53:31 UTC (rev
4008)
+++ trunk/osprey/common/com/ir_reader.cxx 2012-08-19 23:57:14 UTC (rev
4009)
@@ -966,7 +966,7 @@
return;
} else {
if (IR_dump_wn_id) {
-#ifdef USE_UNIQUE_MAP_ID_FOR_DEBUG
+#ifdef WHIRL_USE_UNIQUE_ID_FOR_DEBUG
fprintf(ir_ofile, "[%6u] ", WN_id(wn));
#endif
}
@@ -1385,7 +1385,7 @@
static void ir_put_marker(const char *str, INT indent)
{
if (IR_dump_wn_id) {
-#ifdef USE_UNIQUE_MAP_ID_FOR_DEBUG
+#ifdef WHIRL_USE_UNIQUE_ID_FOR_DEBUG
indent += 9;
#endif
}
Modified: trunk/osprey/common/com/wn.cxx
===================================================================
--- trunk/osprey/common/com/wn.cxx 2012-08-19 23:53:31 UTC (rev 4008)
+++ trunk/osprey/common/com/wn.cxx 2012-08-19 23:57:14 UTC (rev 4009)
@@ -545,7 +545,7 @@
{
if (n && (n == trace_wn_node
|| trace_wn_mapid != -1 && WN_map_id(n) == trace_wn_mapid
-#ifdef USE_UNIQUE_MAP_ID_FOR_DEBUG
+#ifdef WHIRL_USE_UNIQUE_ID_FOR_DEBUG
|| trace_wn_id != 0 && trace_wn_id == WN_id(n)
#endif
) ) {
@@ -557,7 +557,7 @@
void Set_Trace_Wn_id(UINT32 wn_id)
{
-#ifdef USE_UNIQUE_MAP_ID_FOR_DEBUG
+#ifdef WHIRL_USE_UNIQUE_ID_FOR_DEBUG
trace_wn_id = wn_id;
copied_ids.insert(wn_id);
#endif
@@ -565,7 +565,7 @@
void Trace_Wn_Copy(const WN *wn, const WN *src_wn)
{
-#ifdef USE_UNIQUE_MAP_ID_FOR_DEBUG
+#ifdef WHIRL_USE_UNIQUE_ID_FOR_DEBUG
set<UINT32>::iterator itr = copied_ids.find(WN_id(src_wn));
if (itr != copied_ids.end()) {
// found src_wn's wn_id in copied list
Modified: trunk/osprey/common/com/wn_core.h
===================================================================
--- trunk/osprey/common/com/wn_core.h 2012-08-19 23:53:31 UTC (rev 4008)
+++ trunk/osprey/common/com/wn_core.h 2012-08-19 23:57:14 UTC (rev 4009)
@@ -490,7 +490,7 @@
mUINT32 kid_count :14; /* gives kid_count for free */
mINT64 map_id :30;
TYPE_ID desc : 6; /* descriptor type */
-#ifdef USE_UNIQUE_MAP_ID_FOR_DEBUG
+#ifdef WHIRL_USE_UNIQUE_ID_FOR_DEBUG
UINT32 wn_id; /* unique id for the whirl node */
#endif
} common;
@@ -587,7 +587,7 @@
friend void Check_Traced_Wn_Node(WN *);
void set_unique_id() {
the_unique_id++;
-#ifdef USE_UNIQUE_MAP_ID_FOR_DEBUG
+#ifdef WHIRL_USE_UNIQUE_ID_FOR_DEBUG
common.wn_id = the_unique_id;
#endif
Check_Traced_Wn_Node(this);
@@ -688,7 +688,7 @@
friend inline TYPE_ID WN_desc (const WN *);
friend inline void WN_set_desc (WN *, TYPE_ID);
friend inline INT32 WN_map_id (const WN *);
-#ifdef USE_UNIQUE_MAP_ID_FOR_DEBUG
+#ifdef WHIRL_USE_UNIQUE_ID_FOR_DEBUG
friend inline UINT32 WN_id (const WN *);
#endif
friend inline TY_IDX WN_ty (const WN *, const int);
@@ -842,7 +842,7 @@
Check_Traced_Wn_Node(wn);
#endif
}
-#ifdef USE_UNIQUE_MAP_ID_FOR_DEBUG
+#ifdef WHIRL_USE_UNIQUE_ID_FOR_DEBUG
inline UINT32 WN_id (const WN *wn) { return wn->common.wn_id; }
#endif
------------------------------------------------------------------------------
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and
threat landscape has changed and how IT managers can respond. Discussions
will include endpoint security, mobile security and the latest in malware
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
_______________________________________________
Open64-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/open64-devel