1
0
mirror of https://github.com/ioacademy-jikim/debugging synced 2026-08-31 09:49:38 +00:00

first commit

This commit is contained in:
jikim
2015-12-13 22:34:58 +09:00
commit 0b589c7986
9455 changed files with 4350134 additions and 0 deletions
@@ -0,0 +1,979 @@
# Makefile.in generated by automake 1.14.1 from Makefile.am.
# memcheck/tests/x86-solaris/Makefile. Generated from Makefile.in by configure.
# Copyright (C) 1994-2013 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
# PARTICULAR PURPOSE.
# This file is used for tool tests, and also in perf/Makefile.am.
# This file should be included (directly or indirectly) by every
# Makefile.am that builds programs. And also the top-level Makefile.am.
#----------------------------------------------------------------------------
# Global stuff
#----------------------------------------------------------------------------
am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
am__make_running_with_option = \
case $${target_option-} in \
?) ;; \
*) echo "am__make_running_with_option: internal error: invalid" \
"target option '$${target_option-}' specified" >&2; \
exit 1;; \
esac; \
has_opt=no; \
sane_makeflags=$$MAKEFLAGS; \
if $(am__is_gnu_make); then \
sane_makeflags=$$MFLAGS; \
else \
case $$MAKEFLAGS in \
*\\[\ \ ]*) \
bs=\\; \
sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
| sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \
esac; \
fi; \
skip_next=no; \
strip_trailopt () \
{ \
flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
}; \
for flg in $$sane_makeflags; do \
test $$skip_next = yes && { skip_next=no; continue; }; \
case $$flg in \
*=*|--*) continue;; \
-*I) strip_trailopt 'I'; skip_next=yes;; \
-*I?*) strip_trailopt 'I';; \
-*O) strip_trailopt 'O'; skip_next=yes;; \
-*O?*) strip_trailopt 'O';; \
-*l) strip_trailopt 'l'; skip_next=yes;; \
-*l?*) strip_trailopt 'l';; \
-[dEDm]) skip_next=yes;; \
-[JT]) skip_next=yes;; \
esac; \
case $$flg in \
*$$target_option*) has_opt=yes; break;; \
esac; \
done; \
test $$has_opt = yes
am__make_dryrun = (target_option=n; $(am__make_running_with_option))
am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
pkgdatadir = $(datadir)/valgrind
pkgincludedir = $(includedir)/valgrind
pkglibdir = $(libdir)/valgrind
pkglibexecdir = $(libexecdir)/valgrind
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
install_sh_DATA = $(install_sh) -c -m 644
install_sh_PROGRAM = $(install_sh) -c
install_sh_SCRIPT = $(install_sh) -c
INSTALL_HEADER = $(INSTALL_DATA)
transform = $(program_transform_name)
NORMAL_INSTALL = :
PRE_INSTALL = :
POST_INSTALL = :
NORMAL_UNINSTALL = :
PRE_UNINSTALL = :
POST_UNINSTALL = :
build_triplet = i686-pc-linux-gnu
host_triplet = i686-pc-linux-gnu
DIST_COMMON = $(top_srcdir)/Makefile.tool-tests.am \
$(top_srcdir)/Makefile.all.am $(srcdir)/Makefile.in \
$(srcdir)/Makefile.am $(dist_noinst_SCRIPTS) \
$(top_srcdir)/depcomp
#am__append_1 = -Wno-cast-align -Wno-self-assign \
# -Wno-tautological-compare
#am__append_2 = -Wl,-M,$(top_srcdir)/solaris/vgpreload-solaris.mapfile
# The Android toolchain includes all kinds of stdlib helpers present in
# bionic which is bad because we are not linking with it and the Android
# linker will panic.
#am__append_3 = -nostdlib
#am__append_4 = -DVGA_SEC_=1 \
# -DVGP_SEC_x86_linux=1
# Make sure that all test programs have threaded errno.
#am__append_5 = -D_REENTRANT
#am__append_6 = -Wno-format-extra-args \
# -Wno-literal-range \
# -Wno-tautological-constant-out-of-range-compare \
# -Wno-self-assign -Wno-string-plus-int \
# -Wno-uninitialized -Wno-unused-value # \
# clang 3.0.0
#am__append_7 = -Wno-unused-private-field # drd/tests/tsan_unittest.cpp
check_PROGRAMS = scalar$(EXEEXT) context_eflags$(EXEEXT) \
context_eflags2$(EXEEXT) context_fpu$(EXEEXT) \
context_gpr$(EXEEXT) context_sse$(EXEEXT) ldsoexec$(EXEEXT) \
$(am__EXEEXT_1)
#am__append_8 = scalar_obsolete
subdir = memcheck/tests/x86-solaris
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(install_sh) -d
CONFIG_HEADER = $(top_builddir)/config.h
CONFIG_CLEAN_FILES =
CONFIG_CLEAN_VPATH_FILES =
#am__EXEEXT_1 = scalar_obsolete$(EXEEXT)
context_eflags_SOURCES = context_eflags.c
context_eflags_OBJECTS = context_eflags.$(OBJEXT)
context_eflags_LDADD = $(LDADD)
context_eflags2_SOURCES = context_eflags2.c
context_eflags2_OBJECTS = context_eflags2.$(OBJEXT)
context_eflags2_LDADD = $(LDADD)
context_fpu_SOURCES = context_fpu.c
context_fpu_OBJECTS = context_fpu.$(OBJEXT)
context_fpu_LDADD = $(LDADD)
context_gpr_SOURCES = context_gpr.c
context_gpr_OBJECTS = context_gpr.$(OBJEXT)
context_gpr_LDADD = $(LDADD)
context_sse_SOURCES = context_sse.c
context_sse_OBJECTS = context_sse.$(OBJEXT)
context_sse_LDADD = $(LDADD)
ldsoexec_SOURCES = ldsoexec.c
ldsoexec_OBJECTS = ldsoexec.$(OBJEXT)
ldsoexec_LDADD = $(LDADD)
scalar_SOURCES = scalar.c
scalar_OBJECTS = scalar.$(OBJEXT)
scalar_LDADD = $(LDADD)
scalar_obsolete_SOURCES = scalar_obsolete.c
scalar_obsolete_OBJECTS = scalar_obsolete.$(OBJEXT)
scalar_obsolete_LDADD = $(LDADD)
SCRIPTS = $(dist_noinst_SCRIPTS)
AM_V_P = $(am__v_P_$(V))
am__v_P_ = $(am__v_P_$(AM_DEFAULT_VERBOSITY))
am__v_P_0 = false
am__v_P_1 = :
AM_V_GEN = $(am__v_GEN_$(V))
am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY))
am__v_GEN_0 = @echo " GEN " $@;
am__v_GEN_1 =
AM_V_at = $(am__v_at_$(V))
am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY))
am__v_at_0 = @
am__v_at_1 =
DEFAULT_INCLUDES = -I. -I$(top_builddir)
depcomp = $(SHELL) $(top_srcdir)/depcomp
am__depfiles_maybe = depfiles
am__mv = mv -f
COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
AM_V_CC = $(am__v_CC_$(V))
am__v_CC_ = $(am__v_CC_$(AM_DEFAULT_VERBOSITY))
am__v_CC_0 = @echo " CC " $@;
am__v_CC_1 =
CCLD = $(CC)
LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
AM_V_CCLD = $(am__v_CCLD_$(V))
am__v_CCLD_ = $(am__v_CCLD_$(AM_DEFAULT_VERBOSITY))
am__v_CCLD_0 = @echo " CCLD " $@;
am__v_CCLD_1 =
SOURCES = context_eflags.c context_eflags2.c context_fpu.c \
context_gpr.c context_sse.c ldsoexec.c scalar.c \
scalar_obsolete.c
DIST_SOURCES = context_eflags.c context_eflags2.c context_fpu.c \
context_gpr.c context_sse.c ldsoexec.c scalar.c \
scalar_obsolete.c
am__can_run_installinfo = \
case $$AM_UPDATE_INFO_DIR in \
n|no|NO) false;; \
*) (install-info --version) >/dev/null 2>&1;; \
esac
am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
# Read a list of newline-separated strings from the standard input,
# and print each of them once, without duplicates. Input order is
# *not* preserved.
am__uniquify_input = $(AWK) '\
BEGIN { nonempty = 0; } \
{ items[$$0] = 1; nonempty = 1; } \
END { if (nonempty) { for (i in items) print i; }; } \
'
# Make sure the list of sources is unique. This is necessary because,
# e.g., the same source file might be shared among _SOURCES variables
# for different programs/libraries.
am__define_uniq_tagged_files = \
list='$(am__tagged_files)'; \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | $(am__uniquify_input)`
ETAGS = etags
CTAGS = ctags
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ACLOCAL = ${SHELL} /root/03_day/valgrind-3.11.0/missing aclocal-1.14
AMTAR = $${TAR-tar}
AM_DEFAULT_VERBOSITY = 1
AR = /usr/bin/ar
AUTOCONF = ${SHELL} /root/03_day/valgrind-3.11.0/missing autoconf
AUTOHEADER = ${SHELL} /root/03_day/valgrind-3.11.0/missing autoheader
AUTOMAKE = ${SHELL} /root/03_day/valgrind-3.11.0/missing automake-1.14
AWK = gawk
BOOST_CFLAGS =
BOOST_LIBS =
CC = gcc
CCAS = gcc
CCASDEPMODE = depmode=gcc3
CCASFLAGS =
CCDEPMODE = depmode=gcc3
CFLAGS =
CFLAGS_MPI = -g -O -fno-omit-frame-pointer -Wall -fpic
CPP = gcc -E
CPPFLAGS =
CXX = g++
CXXDEPMODE = depmode=gcc3
CXXFLAGS =
CYGPATH_W = echo
DEFAULT_SUPP = exp-sgcheck.supp xfree-3.supp xfree-4.supp glibc-2.X-drd.supp glibc-2.34567-NPTL-helgrind.supp glibc-2.X.supp
DEFS = -DHAVE_CONFIG_H
DEPDIR = .deps
DIFF = diff -u
DIS_PATH =
ECHO_C =
ECHO_N = -n
ECHO_T =
EGREP = /bin/grep -E
EXEEXT =
FLAG_FNO_IPA_ICF = -fno-ipa-icf
FLAG_FNO_STACK_PROTECTOR = -fno-stack-protector
FLAG_FSANITIZE =
FLAG_M32 = -m32
FLAG_M64 = -m64
FLAG_MIPS32 =
FLAG_MIPS64 =
FLAG_MLONG_DOUBLE_128 = -mlong-double-128
FLAG_MMMX = -mmmx
FLAG_MSSE = -msse
FLAG_NO_BUILD_ID =
FLAG_OCTEON =
FLAG_OCTEON2 =
FLAG_T_TEXT = -Ttext-segment
FLAG_UNLIMITED_INLINE_UNIT_GROWTH = --param inline-unit-growth=900
FLAG_W_CAST_ALIGN = -Wcast-align
FLAG_W_CAST_QUAL = -Wcast-qual
FLAG_W_EMPTY_BODY = -Wempty-body
FLAG_W_EXTRA = -Wextra
FLAG_W_FORMAT = -Wformat
FLAG_W_FORMAT_SECURITY = -Wformat-security
FLAG_W_FORMAT_SIGNEDNESS =
FLAG_W_IGNORED_QUALIFIERS = -Wignored-qualifiers
FLAG_W_MISSING_PARAMETER_TYPE = -Wmissing-parameter-type
FLAG_W_NO_INFINITE_RECURSION =
FLAG_W_NO_MEMSET_TRANSPOSED_ARGS = -Wno-memset-transposed-args
FLAG_W_NO_MISMATCHED_NEW_DELETE =
FLAG_W_NO_NONNULL = -Wno-nonnull
FLAG_W_NO_OVERFLOW = -Wno-overflow
FLAG_W_NO_POINTER_SIGN = -Wno-pointer-sign
FLAG_W_NO_STATIC_LOCAL_IN_INLINE =
FLAG_W_NO_UNINITIALIZED = -Wno-uninitialized
FLAG_W_NO_UNUSED_FUNCTION = -Wno-unused-function
FLAG_W_OLD_STYLE_DECLARATION = -Wold-style-declaration
FLAG_W_WRITE_STRINGS = -Wwrite-strings
GDB = /usr/bin/gdb
GLIBC_VERSION = 2.21
GREP = /bin/grep
HWCAP_HAS_ALTIVEC =
HWCAP_HAS_DFP =
HWCAP_HAS_HTM =
HWCAP_HAS_ISA_2_05 =
HWCAP_HAS_ISA_2_06 =
HWCAP_HAS_ISA_2_07 =
HWCAP_HAS_VSX =
INSTALL = /usr/bin/install -c
INSTALL_DATA = ${INSTALL} -m 644
INSTALL_PROGRAM = ${INSTALL}
INSTALL_SCRIPT = ${INSTALL}
INSTALL_STRIP_PROGRAM = $(install_sh) -c -s
LDFLAGS =
LDFLAGS_MPI = -fpic -shared
LIBOBJS =
LIBS =
LIB_UBSAN =
LN_S = ln -s
LTLIBOBJS =
MAINT = #
MAKEINFO = ${SHELL} /root/03_day/valgrind-3.11.0/missing makeinfo
MKDIR_P = /bin/mkdir -p
MPI_CC = mpicc
OBJEXT = o
PACKAGE = valgrind
PACKAGE_BUGREPORT = valgrind-users@lists.sourceforge.net
PACKAGE_NAME = Valgrind
PACKAGE_STRING = Valgrind 3.11.0
PACKAGE_TARNAME = valgrind
PACKAGE_URL =
PACKAGE_VERSION = 3.11.0
PATH_SEPARATOR = :
PERL = /usr/bin/perl
PREFERRED_STACK_BOUNDARY_2 = -mpreferred-stack-boundary=2
RANLIB = ranlib
SED = /bin/sed
SET_MAKE =
SHELL = /bin/bash
STRIP =
VALT_LOAD_ADDRESS_PRI = 0x38000000
VALT_LOAD_ADDRESS_SEC = 0xUNSET
VERSION = 3.11.0
VGCONF_ARCH_PRI = x86
VGCONF_ARCH_SEC =
VGCONF_OS = linux
VGCONF_PLATFORM_PRI_CAPS = X86_LINUX
VGCONF_PLATFORM_SEC_CAPS =
VGCONF_PLATVARIANT = vanilla
VG_TMPDIR = /tmp
abs_builddir = /root/03_day/valgrind-3.11.0/memcheck/tests/x86-solaris
abs_srcdir = /root/03_day/valgrind-3.11.0/memcheck/tests/x86-solaris
abs_top_builddir = /root/03_day/valgrind-3.11.0
abs_top_srcdir = /root/03_day/valgrind-3.11.0
ac_ct_CC = gcc
ac_ct_CXX = g++
am__include = include
am__leading_dot = .
am__quote =
am__tar = $${TAR-tar} chof - "$$tardir"
am__untar = $${TAR-tar} xf -
bindir = ${exec_prefix}/bin
build = i686-pc-linux-gnu
build_alias =
build_cpu = i686
build_os = linux-gnu
build_vendor = pc
builddir = .
datadir = ${datarootdir}
datarootdir = ${prefix}/share
docdir = ${datarootdir}/doc/${PACKAGE_TARNAME}
dvidir = ${docdir}
exec_prefix = ${prefix}
host = i686-pc-linux-gnu
host_alias =
host_cpu = i686
host_os = linux-gnu
host_vendor = pc
htmldir = ${docdir}
includedir = ${prefix}/include
infodir = ${datarootdir}/info
install_sh = ${SHELL} /root/03_day/valgrind-3.11.0/install-sh
libdir = ${exec_prefix}/lib
libexecdir = ${exec_prefix}/libexec
localedir = ${datarootdir}/locale
localstatedir = ${prefix}/var
mandir = ${datarootdir}/man
mkdir_p = $(MKDIR_P)
oldincludedir = /usr/include
pdfdir = ${docdir}
prefix = /usr/local
program_transform_name = s,x,x,
psdir = ${docdir}
sbindir = ${exec_prefix}/sbin
sharedstatedir = ${prefix}/com
srcdir = .
sysconfdir = ${prefix}/etc
target_alias =
top_build_prefix = ../../../
top_builddir = ../../..
top_srcdir = ../../..
inplacedir = $(top_builddir)/.in_place
#----------------------------------------------------------------------------
# Flags
#----------------------------------------------------------------------------
# Baseline flags for all compilations. Aim here is to maximise
# performance and get whatever useful warnings we can out of gcc.
# -fno-builtin is important for defeating LLVM's idiom recognition
# that somehow causes VG_(memset) to get into infinite recursion.
AM_CFLAGS_BASE = -O2 -g -std=gnu99 -Wall -Wmissing-prototypes -Wshadow \
-Wpointer-arith -Wstrict-prototypes -Wmissing-declarations \
-Wcast-align -Wcast-qual -Wwrite-strings \
-Wempty-body -Wformat \
-Wformat-security -Wignored-qualifiers \
-Wmissing-parameter-type -Wold-style-declaration \
-fno-stack-protector \
-fno-strict-aliasing -fno-builtin $(am__append_1)
AM_CFLAGS_PSO_BASE = -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
-fpic -fno-builtin -fno-ipa-icf
# These flags are used for building the preload shared objects (PSOs).
# The aim is to give reasonable performance but also to have good
# stack traces, since users often see stack traces extending
# into (and through) the preloads. Also, we must use any
# -mpreferred-stack-boundary flag to build the preload shared
# objects, since that risks misaligning the client's stack and
# results in segfaults like (eg) #324050.
#AM_CFLAGS_PSO_BASE = -dynamic \
# -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
# -fpic -fPIC -fno-builtin -fno-ipa-icf
# Flags for specific targets.
#
# Nb: the AM_CPPFLAGS_* values are suitable for building tools and auxprogs.
# For building the core, coregrind/Makefile.am files add some extra things.
AM_CPPFLAGS_X86_LINUX = \
-I$(top_srcdir) \
-I$(top_srcdir)/include \
-I$(top_srcdir)/VEX/pub \
-I$(top_builddir)/VEX/pub \
-DVGA_x86=1 \
-DVGO_linux=1 \
-DVGP_x86_linux=1 \
-DVGPV_x86_linux_vanilla=1
#AM_CPPFLAGS_ = \
# -I$(top_srcdir) \
# -I$(top_srcdir)/include \
# -I$(top_srcdir)/VEX/pub \
# -I$(top_builddir)/VEX/pub \
# -DVGA_=1 \
# -DVGO_linux=1 \
# -DVGP__linux=1 \
# -DVGPV__linux_vanilla=1
AM_FLAG_M3264_X86_LINUX = -m32
AM_CFLAGS_X86_LINUX = -m32 -mpreferred-stack-boundary=2 \
$(AM_CFLAGS_BASE) -fomit-frame-pointer
AM_CFLAGS_PSO_X86_LINUX = -m32 $(AM_CFLAGS_BASE) $(AM_CFLAGS_PSO_BASE)
AM_CCASFLAGS_X86_LINUX = -m32 -g
AM_FLAG_M3264_AMD64_LINUX = -m64
AM_CFLAGS_AMD64_LINUX = -m64 \
$(AM_CFLAGS_BASE) -fomit-frame-pointer
AM_CFLAGS_PSO_AMD64_LINUX = -m64 $(AM_CFLAGS_BASE) $(AM_CFLAGS_PSO_BASE)
AM_CCASFLAGS_AMD64_LINUX = -m64 -g
AM_FLAG_M3264_PPC32_LINUX = -m32
AM_CFLAGS_PPC32_LINUX = -m32 $(AM_CFLAGS_BASE)
AM_CFLAGS_PSO_PPC32_LINUX = -m32 $(AM_CFLAGS_BASE) $(AM_CFLAGS_PSO_BASE)
AM_CCASFLAGS_PPC32_LINUX = -m32 -g
AM_FLAG_M3264_PPC64BE_LINUX = -m64
AM_CFLAGS_PPC64BE_LINUX = -m64 $(AM_CFLAGS_BASE)
AM_CFLAGS_PSO_PPC64BE_LINUX = -m64 $(AM_CFLAGS_BASE) $(AM_CFLAGS_PSO_BASE)
AM_CCASFLAGS_PPC64BE_LINUX = -m64 -g
AM_FLAG_M3264_PPC64LE_LINUX = -m64
AM_CFLAGS_PPC64LE_LINUX = -m64 $(AM_CFLAGS_BASE)
AM_CFLAGS_PSO_PPC64LE_LINUX = -m64 $(AM_CFLAGS_BASE) $(AM_CFLAGS_PSO_BASE)
AM_CCASFLAGS_PPC64LE_LINUX = -m64 -g
AM_FLAG_M3264_ARM_LINUX = -m32
AM_CFLAGS_ARM_LINUX = -m32 \
$(AM_CFLAGS_BASE) -marm -mcpu=cortex-a8
AM_CFLAGS_PSO_ARM_LINUX = -m32 $(AM_CFLAGS_BASE) \
-marm -mcpu=cortex-a8 $(AM_CFLAGS_PSO_BASE)
AM_CCASFLAGS_ARM_LINUX = -m32 \
-marm -mcpu=cortex-a8 -g
AM_FLAG_M3264_ARM64_LINUX = -m64
AM_CFLAGS_ARM64_LINUX = -m64 $(AM_CFLAGS_BASE)
AM_CFLAGS_PSO_ARM64_LINUX = -m64 $(AM_CFLAGS_BASE) $(AM_CFLAGS_PSO_BASE)
AM_CCASFLAGS_ARM64_LINUX = -m64 -g
AM_FLAG_M3264_X86_DARWIN = -arch i386
AM_CFLAGS_X86_DARWIN = $(WERROR) -arch i386 $(AM_CFLAGS_BASE) \
-mmacosx-version-min=10.5 \
-fno-stack-protector -fno-pic -fno-PIC
AM_CFLAGS_PSO_X86_DARWIN = $(AM_CFLAGS_X86_DARWIN) $(AM_CFLAGS_PSO_BASE)
AM_CCASFLAGS_X86_DARWIN = -arch i386 -g
AM_FLAG_M3264_AMD64_DARWIN = -arch x86_64
AM_CFLAGS_AMD64_DARWIN = $(WERROR) -arch x86_64 $(AM_CFLAGS_BASE) \
-mmacosx-version-min=10.5 -fno-stack-protector
AM_CFLAGS_PSO_AMD64_DARWIN = $(AM_CFLAGS_AMD64_DARWIN) $(AM_CFLAGS_PSO_BASE)
AM_CCASFLAGS_AMD64_DARWIN = -arch x86_64 -g
AM_FLAG_M3264_S390X_LINUX = -m64
AM_CFLAGS_S390X_LINUX = -m64 $(AM_CFLAGS_BASE) -fomit-frame-pointer
AM_CFLAGS_PSO_S390X_LINUX = -m64 $(AM_CFLAGS_BASE) $(AM_CFLAGS_PSO_BASE)
AM_CCASFLAGS_S390X_LINUX = -m64 -g -mzarch -march=z900
AM_FLAG_M3264_MIPS32_LINUX = -m32
AM_CFLAGS_MIPS32_LINUX = -m32 $(AM_CFLAGS_BASE)
AM_CFLAGS_PSO_MIPS32_LINUX = -m32 $(AM_CFLAGS_BASE) \
$(AM_CFLAGS_PSO_BASE)
AM_CCASFLAGS_MIPS32_LINUX = -m32 -g
AM_FLAG_M3264_MIPS64_LINUX = -m64
AM_CFLAGS_MIPS64_LINUX = -m64 $(AM_CFLAGS_BASE)
AM_CFLAGS_PSO_MIPS64_LINUX = -m64 $(AM_CFLAGS_BASE) \
$(AM_CFLAGS_PSO_BASE)
AM_CCASFLAGS_MIPS64_LINUX = -m64 -g
AM_CFLAGS_TILEGX_LINUX = -m64 $(AM_CFLAGS_BASE)
AM_CFLAGS_PSO_TILEGX_LINUX = -m64 $(AM_CFLAGS_BASE) $(AM_CFLAGS_PSO_BASE)
AM_FLAG_M3264_X86_SOLARIS = -m32
AM_CFLAGS_X86_SOLARIS = -m32 -mpreferred-stack-boundary=2 \
$(AM_CFLAGS_BASE) -fomit-frame-pointer
AM_CFLAGS_PSO_X86_SOLARIS = -m32 $(AM_CFLAGS_BASE) $(AM_CFLAGS_PSO_BASE)
AM_CCASFLAGS_X86_SOLARIS = -m32 -g -D_ASM
AM_FLAG_M3264_AMD64_SOLARIS = -m64
AM_CFLAGS_AMD64_SOLARIS = -m64 \
$(AM_CFLAGS_BASE) -fomit-frame-pointer
AM_CFLAGS_PSO_AMD64_SOLARIS = -m64 $(AM_CFLAGS_BASE) $(AM_CFLAGS_PSO_BASE)
AM_CCASFLAGS_AMD64_SOLARIS = -m64 -g -D_ASM
# Flags for the primary target. These must be used to build the
# regtests and performance tests. In fact, these must be used to
# build anything which is built only once on a dual-arch build.
#
AM_FLAG_M3264_PRI = $(AM_FLAG_M3264_X86_LINUX)
AM_CPPFLAGS_PRI = $(AM_CPPFLAGS_X86_LINUX)
AM_CFLAGS_PRI = $(AM_CFLAGS_X86_LINUX)
AM_CCASFLAGS_PRI = $(AM_CCASFLAGS_X86_LINUX)
AM_FLAG_M3264_SEC =
#AM_FLAG_M3264_SEC = $(AM_FLAG_M3264_)
# Baseline link flags for making vgpreload shared objects.
#
PRELOAD_LDFLAGS_COMMON_LINUX = -nodefaultlibs -shared \
-Wl,-z,interpose,-z,initfirst $(am__append_3)
PRELOAD_LDFLAGS_COMMON_DARWIN = -dynamic -dynamiclib -all_load
PRELOAD_LDFLAGS_COMMON_SOLARIS = -nodefaultlibs -shared \
-Wl,-z,interpose,-z,initfirst $(am__append_2)
PRELOAD_LDFLAGS_X86_LINUX = $(PRELOAD_LDFLAGS_COMMON_LINUX) -m32
PRELOAD_LDFLAGS_AMD64_LINUX = $(PRELOAD_LDFLAGS_COMMON_LINUX) -m64
PRELOAD_LDFLAGS_PPC32_LINUX = $(PRELOAD_LDFLAGS_COMMON_LINUX) -m32
PRELOAD_LDFLAGS_PPC64BE_LINUX = $(PRELOAD_LDFLAGS_COMMON_LINUX) -m64
PRELOAD_LDFLAGS_PPC64LE_LINUX = $(PRELOAD_LDFLAGS_COMMON_LINUX) -m64
PRELOAD_LDFLAGS_ARM_LINUX = $(PRELOAD_LDFLAGS_COMMON_LINUX) -m32
PRELOAD_LDFLAGS_ARM64_LINUX = $(PRELOAD_LDFLAGS_COMMON_LINUX) -m64
PRELOAD_LDFLAGS_X86_DARWIN = $(PRELOAD_LDFLAGS_COMMON_DARWIN) -arch i386
PRELOAD_LDFLAGS_AMD64_DARWIN = $(PRELOAD_LDFLAGS_COMMON_DARWIN) -arch x86_64
PRELOAD_LDFLAGS_S390X_LINUX = $(PRELOAD_LDFLAGS_COMMON_LINUX) -m64
PRELOAD_LDFLAGS_MIPS32_LINUX = $(PRELOAD_LDFLAGS_COMMON_LINUX) -m32
PRELOAD_LDFLAGS_MIPS64_LINUX = $(PRELOAD_LDFLAGS_COMMON_LINUX) -m64
PRELOAD_LDFLAGS_TILEGX_LINUX = $(PRELOAD_LDFLAGS_COMMON_LINUX) -m64
PRELOAD_LDFLAGS_X86_SOLARIS = $(PRELOAD_LDFLAGS_COMMON_SOLARIS) -m32
PRELOAD_LDFLAGS_AMD64_SOLARIS = $(PRELOAD_LDFLAGS_COMMON_SOLARIS) -m64
AM_CPPFLAGS = -I$(top_srcdir) -I$(top_srcdir)/include \
-I$(top_srcdir)/coregrind -I$(top_builddir)/include \
-I$(top_srcdir)/VEX/pub -I$(top_builddir)/VEX/pub \
-DVGA_x86=1 -DVGO_linux=1 \
-DVGP_x86_linux=1 \
-DVGPV_x86_linux_vanilla=1 \
$(am__append_4)
# Nb: Tools need to augment these flags with an arch-selection option, such
# as $(AM_FLAG_M3264_PRI).
AM_CFLAGS = -Winline -Wall -Wshadow -Wno-long-long -g \
-fno-stack-protector $(am__append_5) $(am__append_6) \
-m32 $(am__empty)
AM_CXXFLAGS = -Winline -Wall -Wshadow -Wno-long-long -g \
-fno-stack-protector $(am__append_7) -m32
# Include AM_CPPFLAGS in AM_CCASFLAGS to allow for older versions of
# automake; see comments in Makefile.all.am for more detail.
AM_CCASFLAGS = $(AM_CPPFLAGS) -m32
#noinst_DSYMS = $(check_PROGRAMS)
dist_noinst_SCRIPTS = filter_stderr
EXTRA_DIST = \
scalar.stderr.exp scalar.stdout.exp scalar.vgtest \
scalar_obsolete.stderr.exp scalar_obsolete.stdout.exp scalar_obsolete.vgtest \
context_eflags.stderr.exp context_eflags.stdout.exp context_eflags.vgtest \
context_eflags2.stderr.exp context_eflags2.stdout.exp context_eflags2.vgtest \
context_fpu.stderr.exp context_fpu.stdout.exp context_fpu.vgtest \
context_gpr.stderr.exp context_gpr.stdout.exp context_gpr.vgtest \
context_sse.stderr.exp context_sse.stdout.exp context_sse.vgtest \
ldsoexec.stderr.exp ldsoexec.vgtest
all: all-am
.SUFFIXES:
.SUFFIXES: .c .o .obj
$(srcdir)/Makefile.in: # $(srcdir)/Makefile.am $(top_srcdir)/Makefile.tool-tests.am $(top_srcdir)/Makefile.all.am $(am__configure_deps)
@for dep in $?; do \
case '$(am__configure_deps)' in \
*$$dep*) \
( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
&& { if test -f $@; then exit 0; else break; fi; }; \
exit 1;; \
esac; \
done; \
echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign memcheck/tests/x86-solaris/Makefile'; \
$(am__cd) $(top_srcdir) && \
$(AUTOMAKE) --foreign memcheck/tests/x86-solaris/Makefile
.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
*config.status*) \
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
*) \
echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
esac;
$(top_srcdir)/Makefile.tool-tests.am $(top_srcdir)/Makefile.all.am:
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(top_srcdir)/configure: # $(am__configure_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(ACLOCAL_M4): # $(am__aclocal_m4_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(am__aclocal_m4_deps):
clean-checkPROGRAMS:
-test -z "$(check_PROGRAMS)" || rm -f $(check_PROGRAMS)
context_eflags$(EXEEXT): $(context_eflags_OBJECTS) $(context_eflags_DEPENDENCIES) $(EXTRA_context_eflags_DEPENDENCIES)
@rm -f context_eflags$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(context_eflags_OBJECTS) $(context_eflags_LDADD) $(LIBS)
context_eflags2$(EXEEXT): $(context_eflags2_OBJECTS) $(context_eflags2_DEPENDENCIES) $(EXTRA_context_eflags2_DEPENDENCIES)
@rm -f context_eflags2$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(context_eflags2_OBJECTS) $(context_eflags2_LDADD) $(LIBS)
context_fpu$(EXEEXT): $(context_fpu_OBJECTS) $(context_fpu_DEPENDENCIES) $(EXTRA_context_fpu_DEPENDENCIES)
@rm -f context_fpu$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(context_fpu_OBJECTS) $(context_fpu_LDADD) $(LIBS)
context_gpr$(EXEEXT): $(context_gpr_OBJECTS) $(context_gpr_DEPENDENCIES) $(EXTRA_context_gpr_DEPENDENCIES)
@rm -f context_gpr$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(context_gpr_OBJECTS) $(context_gpr_LDADD) $(LIBS)
context_sse$(EXEEXT): $(context_sse_OBJECTS) $(context_sse_DEPENDENCIES) $(EXTRA_context_sse_DEPENDENCIES)
@rm -f context_sse$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(context_sse_OBJECTS) $(context_sse_LDADD) $(LIBS)
ldsoexec$(EXEEXT): $(ldsoexec_OBJECTS) $(ldsoexec_DEPENDENCIES) $(EXTRA_ldsoexec_DEPENDENCIES)
@rm -f ldsoexec$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(ldsoexec_OBJECTS) $(ldsoexec_LDADD) $(LIBS)
scalar$(EXEEXT): $(scalar_OBJECTS) $(scalar_DEPENDENCIES) $(EXTRA_scalar_DEPENDENCIES)
@rm -f scalar$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(scalar_OBJECTS) $(scalar_LDADD) $(LIBS)
scalar_obsolete$(EXEEXT): $(scalar_obsolete_OBJECTS) $(scalar_obsolete_DEPENDENCIES) $(EXTRA_scalar_obsolete_DEPENDENCIES)
@rm -f scalar_obsolete$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(scalar_obsolete_OBJECTS) $(scalar_obsolete_LDADD) $(LIBS)
mostlyclean-compile:
-rm -f *.$(OBJEXT)
distclean-compile:
-rm -f *.tab.c
include ./$(DEPDIR)/context_eflags.Po
include ./$(DEPDIR)/context_eflags2.Po
include ./$(DEPDIR)/context_fpu.Po
include ./$(DEPDIR)/context_gpr.Po
include ./$(DEPDIR)/context_sse.Po
include ./$(DEPDIR)/ldsoexec.Po
include ./$(DEPDIR)/scalar.Po
include ./$(DEPDIR)/scalar_obsolete.Po
.c.o:
$(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.o$$||'`;\
$(COMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $< &&\
$(am__mv) $$depbase.Tpo $$depbase.Po
# $(AM_V_CC)source='$<' object='$@' libtool=no \
# DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) \
# $(AM_V_CC_no)$(COMPILE) -c -o $@ $<
.c.obj:
$(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.obj$$||'`;\
$(COMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ `$(CYGPATH_W) '$<'` &&\
$(am__mv) $$depbase.Tpo $$depbase.Po
# $(AM_V_CC)source='$<' object='$@' libtool=no \
# DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) \
# $(AM_V_CC_no)$(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
ID: $(am__tagged_files)
$(am__define_uniq_tagged_files); mkid -fID $$unique
tags: tags-am
TAGS: tags
tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
set x; \
here=`pwd`; \
$(am__define_uniq_tagged_files); \
shift; \
if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
test -n "$$unique" || unique=$$empty_fix; \
if test $$# -gt 0; then \
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
"$$@" $$unique; \
else \
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
$$unique; \
fi; \
fi
ctags: ctags-am
CTAGS: ctags
ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
$(am__define_uniq_tagged_files); \
test -z "$(CTAGS_ARGS)$$unique" \
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
$$unique
GTAGS:
here=`$(am__cd) $(top_builddir) && pwd` \
&& $(am__cd) $(top_srcdir) \
&& gtags -i $(GTAGS_ARGS) "$$here"
cscopelist: cscopelist-am
cscopelist-am: $(am__tagged_files)
list='$(am__tagged_files)'; \
case "$(srcdir)" in \
[\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
*) sdir=$(subdir)/$(srcdir) ;; \
esac; \
for i in $$list; do \
if test -f "$$i"; then \
echo "$(subdir)/$$i"; \
else \
echo "$$sdir/$$i"; \
fi; \
done >> $(top_builddir)/cscope.files
distclean-tags:
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
distdir: $(DISTFILES)
@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
list='$(DISTFILES)'; \
dist_files=`for file in $$list; do echo $$file; done | \
sed -e "s|^$$srcdirstrip/||;t" \
-e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
case $$dist_files in \
*/*) $(MKDIR_P) `echo "$$dist_files" | \
sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
sort -u` ;; \
esac; \
for file in $$dist_files; do \
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
if test -d $$d/$$file; then \
dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
if test -d "$(distdir)/$$file"; then \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
else \
test -f "$(distdir)/$$file" \
|| cp -p $$d/$$file "$(distdir)/$$file" \
|| exit 1; \
fi; \
done
check-am: all-am
$(MAKE) $(AM_MAKEFLAGS) $(check_PROGRAMS)
$(MAKE) $(AM_MAKEFLAGS) check-local
check: check-am
all-am: Makefile $(SCRIPTS)
installdirs:
install: install-am
install-exec: install-exec-am
install-data: install-data-am
uninstall: uninstall-am
install-am: all-am
@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
installcheck: installcheck-am
install-strip:
if test -z '$(STRIP)'; then \
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
install; \
else \
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
"INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
fi
mostlyclean-generic:
clean-generic:
distclean-generic:
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
maintainer-clean-generic:
@echo "This command is intended for maintainers to use"
@echo "it deletes files that may require special tools to rebuild."
clean: clean-am
clean-am: clean-checkPROGRAMS clean-generic clean-local mostlyclean-am
distclean: distclean-am
-rm -rf ./$(DEPDIR)
-rm -f Makefile
distclean-am: clean-am distclean-compile distclean-generic \
distclean-tags
dvi: dvi-am
dvi-am:
html: html-am
html-am:
info: info-am
info-am:
install-data-am:
install-dvi: install-dvi-am
install-dvi-am:
install-exec-am:
install-html: install-html-am
install-html-am:
install-info: install-info-am
install-info-am:
install-man:
install-pdf: install-pdf-am
install-pdf-am:
install-ps: install-ps-am
install-ps-am:
installcheck-am:
maintainer-clean: maintainer-clean-am
-rm -rf ./$(DEPDIR)
-rm -f Makefile
maintainer-clean-am: distclean-am maintainer-clean-generic
mostlyclean: mostlyclean-am
mostlyclean-am: mostlyclean-compile mostlyclean-generic
pdf: pdf-am
pdf-am:
ps: ps-am
ps-am:
uninstall-am:
.MAKE: check-am install-am install-strip
.PHONY: CTAGS GTAGS TAGS all all-am check check-am check-local clean \
clean-checkPROGRAMS clean-generic clean-local cscopelist-am \
ctags ctags-am distclean distclean-compile distclean-generic \
distclean-tags distdir dvi dvi-am html html-am info info-am \
install install-am install-data install-data-am install-dvi \
install-dvi-am install-exec install-exec-am install-html \
install-html-am install-info install-info-am install-man \
install-pdf install-pdf-am install-ps install-ps-am \
install-strip installcheck installcheck-am installdirs \
maintainer-clean maintainer-clean-generic mostlyclean \
mostlyclean-compile mostlyclean-generic pdf pdf-am ps ps-am \
tags tags-am uninstall uninstall-am
# This used to be required when Vex had a handwritten Makefile. It
# shouldn't be needed any more, though.
#----------------------------------------------------------------------------
# noinst_PROGRAMS and noinst_DSYMS targets
#----------------------------------------------------------------------------
# On Darwin, for a program 'p', the DWARF debug info is stored in the
# directory 'p.dSYM'. This must be generated after the executable is
# created, with 'dsymutil p'. We could redefine LINK with a script that
# executes 'dsymutil' after linking, but that's a pain. Instead we use this
# hook so that every time "make check" is run, we subsequently invoke
# 'dsymutil' on all the executables that lack a .dSYM directory, or that are
# newer than their corresponding .dSYM directory.
build-noinst_DSYMS: $(noinst_DSYMS)
for f in $(noinst_DSYMS); do \
if [ ! -e $$f.dSYM -o $$f -nt $$f.dSYM ] ; then \
echo "dsymutil $$f"; \
dsymutil $$f; \
fi; \
done
# This is used by coregrind/Makefile.am and Makefile.tool.am for doing
# "in-place" installs. It copies $(noinst_PROGRAMS) into $inplacedir.
# It needs to be depended on by an 'all-local' rule.
inplace-noinst_PROGRAMS: $(noinst_PROGRAMS)
mkdir -p $(inplacedir); \
for f in $(noinst_PROGRAMS) ; do \
rm -f $(inplacedir)/$$f; \
ln -f -s ../$(subdir)/$$f $(inplacedir); \
done
# Similar to inplace-noinst_PROGRAMS
inplace-noinst_DSYMS: build-noinst_DSYMS
mkdir -p $(inplacedir); \
for f in $(noinst_DSYMS); do \
rm -f $(inplacedir)/$$f.dSYM; \
ln -f -s ../$(subdir)/$$f.dSYM $(inplacedir); \
done
# This is used by coregrind/Makefile.am and by <tool>/Makefile.am for doing
# "make install". It copies $(noinst_PROGRAMS) into $prefix/lib/valgrind/.
# It needs to be depended on by an 'install-exec-local' rule.
install-noinst_PROGRAMS: $(noinst_PROGRAMS)
$(mkinstalldirs) $(DESTDIR)$(pkglibdir); \
for f in $(noinst_PROGRAMS); do \
$(INSTALL_PROGRAM) $$f $(DESTDIR)$(pkglibdir); \
done
# This is used by coregrind/Makefile.am and by <tool>/Makefile.am for doing
# "make uninstall". It removes $(noinst_PROGRAMS) from $prefix/lib/valgrind/.
# It needs to be depended on by an 'uninstall-local' rule.
uninstall-noinst_PROGRAMS:
for f in $(noinst_PROGRAMS); do \
rm -f $(DESTDIR)$(pkglibdir)/$$f; \
done
# Similar to install-noinst_PROGRAMS.
# Nb: we don't use $(INSTALL_PROGRAM) here because it doesn't work with
# directories. XXX: not sure whether the resulting permissions will be
# correct when using 'cp -R'...
install-noinst_DSYMS: build-noinst_DSYMS
$(mkinstalldirs) $(DESTDIR)$(pkglibdir); \
for f in $(noinst_DSYMS); do \
cp -R $$f.dSYM $(DESTDIR)$(pkglibdir); \
done
# Similar to uninstall-noinst_PROGRAMS.
uninstall-noinst_DSYMS:
for f in $(noinst_DSYMS); do \
rm -f $(DESTDIR)$(pkglibdir)/$$f.dSYM; \
done
# This needs to be depended on by a 'clean-local' rule.
clean-noinst_DSYMS:
for f in $(noinst_DSYMS); do \
rm -rf $$f.dSYM; \
done
check-local: build-noinst_DSYMS
clean-local: clean-noinst_DSYMS
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:
@@ -0,0 +1,32 @@
include $(top_srcdir)/Makefile.tool-tests.am
dist_noinst_SCRIPTS = filter_stderr
EXTRA_DIST = \
scalar.stderr.exp scalar.stdout.exp scalar.vgtest \
scalar_obsolete.stderr.exp scalar_obsolete.stdout.exp scalar_obsolete.vgtest \
context_eflags.stderr.exp context_eflags.stdout.exp context_eflags.vgtest \
context_eflags2.stderr.exp context_eflags2.stdout.exp context_eflags2.vgtest \
context_fpu.stderr.exp context_fpu.stdout.exp context_fpu.vgtest \
context_gpr.stderr.exp context_gpr.stdout.exp context_gpr.vgtest \
context_sse.stderr.exp context_sse.stdout.exp context_sse.vgtest \
ldsoexec.stderr.exp ldsoexec.vgtest
check_PROGRAMS = \
scalar \
context_eflags \
context_eflags2 \
context_fpu \
context_gpr \
context_sse \
ldsoexec
if SOLARIS_OLD_SYSCALLS
check_PROGRAMS += scalar_obsolete
endif
AM_CFLAGS += @FLAG_M32@
AM_CXXFLAGS += @FLAG_M32@
AM_CCASFLAGS += @FLAG_M32@
@@ -0,0 +1,979 @@
# Makefile.in generated by automake 1.14.1 from Makefile.am.
# @configure_input@
# Copyright (C) 1994-2013 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
# with or without modifications, as long as this notice is preserved.
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
# PARTICULAR PURPOSE.
@SET_MAKE@
# This file is used for tool tests, and also in perf/Makefile.am.
# This file should be included (directly or indirectly) by every
# Makefile.am that builds programs. And also the top-level Makefile.am.
#----------------------------------------------------------------------------
# Global stuff
#----------------------------------------------------------------------------
VPATH = @srcdir@
am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
am__make_running_with_option = \
case $${target_option-} in \
?) ;; \
*) echo "am__make_running_with_option: internal error: invalid" \
"target option '$${target_option-}' specified" >&2; \
exit 1;; \
esac; \
has_opt=no; \
sane_makeflags=$$MAKEFLAGS; \
if $(am__is_gnu_make); then \
sane_makeflags=$$MFLAGS; \
else \
case $$MAKEFLAGS in \
*\\[\ \ ]*) \
bs=\\; \
sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
| sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \
esac; \
fi; \
skip_next=no; \
strip_trailopt () \
{ \
flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
}; \
for flg in $$sane_makeflags; do \
test $$skip_next = yes && { skip_next=no; continue; }; \
case $$flg in \
*=*|--*) continue;; \
-*I) strip_trailopt 'I'; skip_next=yes;; \
-*I?*) strip_trailopt 'I';; \
-*O) strip_trailopt 'O'; skip_next=yes;; \
-*O?*) strip_trailopt 'O';; \
-*l) strip_trailopt 'l'; skip_next=yes;; \
-*l?*) strip_trailopt 'l';; \
-[dEDm]) skip_next=yes;; \
-[JT]) skip_next=yes;; \
esac; \
case $$flg in \
*$$target_option*) has_opt=yes; break;; \
esac; \
done; \
test $$has_opt = yes
am__make_dryrun = (target_option=n; $(am__make_running_with_option))
am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
pkgdatadir = $(datadir)/@PACKAGE@
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
pkglibexecdir = $(libexecdir)/@PACKAGE@
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
install_sh_DATA = $(install_sh) -c -m 644
install_sh_PROGRAM = $(install_sh) -c
install_sh_SCRIPT = $(install_sh) -c
INSTALL_HEADER = $(INSTALL_DATA)
transform = $(program_transform_name)
NORMAL_INSTALL = :
PRE_INSTALL = :
POST_INSTALL = :
NORMAL_UNINSTALL = :
PRE_UNINSTALL = :
POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@
DIST_COMMON = $(top_srcdir)/Makefile.tool-tests.am \
$(top_srcdir)/Makefile.all.am $(srcdir)/Makefile.in \
$(srcdir)/Makefile.am $(dist_noinst_SCRIPTS) \
$(top_srcdir)/depcomp
@COMPILER_IS_CLANG_TRUE@am__append_1 = -Wno-cast-align -Wno-self-assign \
@COMPILER_IS_CLANG_TRUE@ -Wno-tautological-compare
@SOLARIS_XPG_SYMBOLS_PRESENT_TRUE@am__append_2 = -Wl,-M,$(top_srcdir)/solaris/vgpreload-solaris.mapfile
# The Android toolchain includes all kinds of stdlib helpers present in
# bionic which is bad because we are not linking with it and the Android
# linker will panic.
@VGCONF_PLATVARIANT_IS_ANDROID_TRUE@am__append_3 = -nostdlib
@VGCONF_HAVE_PLATFORM_SEC_TRUE@am__append_4 = -DVGA_SEC_@VGCONF_ARCH_SEC@=1 \
@VGCONF_HAVE_PLATFORM_SEC_TRUE@ -DVGP_SEC_@VGCONF_ARCH_PRI@_@VGCONF_OS@=1
# Make sure that all test programs have threaded errno.
@VGCONF_OS_IS_SOLARIS_TRUE@am__append_5 = -D_REENTRANT
@COMPILER_IS_CLANG_TRUE@am__append_6 = -Wno-format-extra-args \
@COMPILER_IS_CLANG_TRUE@ -Wno-literal-range \
@COMPILER_IS_CLANG_TRUE@ -Wno-tautological-constant-out-of-range-compare \
@COMPILER_IS_CLANG_TRUE@ -Wno-self-assign -Wno-string-plus-int \
@COMPILER_IS_CLANG_TRUE@ -Wno-uninitialized -Wno-unused-value # \
@COMPILER_IS_CLANG_TRUE@ clang 3.0.0
@COMPILER_IS_CLANG_TRUE@am__append_7 = -Wno-unused-private-field # drd/tests/tsan_unittest.cpp
check_PROGRAMS = scalar$(EXEEXT) context_eflags$(EXEEXT) \
context_eflags2$(EXEEXT) context_fpu$(EXEEXT) \
context_gpr$(EXEEXT) context_sse$(EXEEXT) ldsoexec$(EXEEXT) \
$(am__EXEEXT_1)
@SOLARIS_OLD_SYSCALLS_TRUE@am__append_8 = scalar_obsolete
subdir = memcheck/tests/x86-solaris
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(install_sh) -d
CONFIG_HEADER = $(top_builddir)/config.h
CONFIG_CLEAN_FILES =
CONFIG_CLEAN_VPATH_FILES =
@SOLARIS_OLD_SYSCALLS_TRUE@am__EXEEXT_1 = scalar_obsolete$(EXEEXT)
context_eflags_SOURCES = context_eflags.c
context_eflags_OBJECTS = context_eflags.$(OBJEXT)
context_eflags_LDADD = $(LDADD)
context_eflags2_SOURCES = context_eflags2.c
context_eflags2_OBJECTS = context_eflags2.$(OBJEXT)
context_eflags2_LDADD = $(LDADD)
context_fpu_SOURCES = context_fpu.c
context_fpu_OBJECTS = context_fpu.$(OBJEXT)
context_fpu_LDADD = $(LDADD)
context_gpr_SOURCES = context_gpr.c
context_gpr_OBJECTS = context_gpr.$(OBJEXT)
context_gpr_LDADD = $(LDADD)
context_sse_SOURCES = context_sse.c
context_sse_OBJECTS = context_sse.$(OBJEXT)
context_sse_LDADD = $(LDADD)
ldsoexec_SOURCES = ldsoexec.c
ldsoexec_OBJECTS = ldsoexec.$(OBJEXT)
ldsoexec_LDADD = $(LDADD)
scalar_SOURCES = scalar.c
scalar_OBJECTS = scalar.$(OBJEXT)
scalar_LDADD = $(LDADD)
scalar_obsolete_SOURCES = scalar_obsolete.c
scalar_obsolete_OBJECTS = scalar_obsolete.$(OBJEXT)
scalar_obsolete_LDADD = $(LDADD)
SCRIPTS = $(dist_noinst_SCRIPTS)
AM_V_P = $(am__v_P_@AM_V@)
am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
am__v_P_0 = false
am__v_P_1 = :
AM_V_GEN = $(am__v_GEN_@AM_V@)
am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
am__v_GEN_0 = @echo " GEN " $@;
am__v_GEN_1 =
AM_V_at = $(am__v_at_@AM_V@)
am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
am__v_at_0 = @
am__v_at_1 =
DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)
depcomp = $(SHELL) $(top_srcdir)/depcomp
am__depfiles_maybe = depfiles
am__mv = mv -f
COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
AM_V_CC = $(am__v_CC_@AM_V@)
am__v_CC_ = $(am__v_CC_@AM_DEFAULT_V@)
am__v_CC_0 = @echo " CC " $@;
am__v_CC_1 =
CCLD = $(CC)
LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
AM_V_CCLD = $(am__v_CCLD_@AM_V@)
am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@)
am__v_CCLD_0 = @echo " CCLD " $@;
am__v_CCLD_1 =
SOURCES = context_eflags.c context_eflags2.c context_fpu.c \
context_gpr.c context_sse.c ldsoexec.c scalar.c \
scalar_obsolete.c
DIST_SOURCES = context_eflags.c context_eflags2.c context_fpu.c \
context_gpr.c context_sse.c ldsoexec.c scalar.c \
scalar_obsolete.c
am__can_run_installinfo = \
case $$AM_UPDATE_INFO_DIR in \
n|no|NO) false;; \
*) (install-info --version) >/dev/null 2>&1;; \
esac
am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
# Read a list of newline-separated strings from the standard input,
# and print each of them once, without duplicates. Input order is
# *not* preserved.
am__uniquify_input = $(AWK) '\
BEGIN { nonempty = 0; } \
{ items[$$0] = 1; nonempty = 1; } \
END { if (nonempty) { for (i in items) print i; }; } \
'
# Make sure the list of sources is unique. This is necessary because,
# e.g., the same source file might be shared among _SOURCES variables
# for different programs/libraries.
am__define_uniq_tagged_files = \
list='$(am__tagged_files)'; \
unique=`for i in $$list; do \
if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
done | $(am__uniquify_input)`
ETAGS = etags
CTAGS = ctags
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ACLOCAL = @ACLOCAL@
AMTAR = @AMTAR@
AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
AR = @AR@
AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@
AUTOMAKE = @AUTOMAKE@
AWK = @AWK@
BOOST_CFLAGS = @BOOST_CFLAGS@
BOOST_LIBS = @BOOST_LIBS@
CC = @CC@
CCAS = @CCAS@
CCASDEPMODE = @CCASDEPMODE@
CCASFLAGS = @CCASFLAGS@
CCDEPMODE = @CCDEPMODE@
CFLAGS = @CFLAGS@
CFLAGS_MPI = @CFLAGS_MPI@
CPP = @CPP@
CPPFLAGS = @CPPFLAGS@
CXX = @CXX@
CXXDEPMODE = @CXXDEPMODE@
CXXFLAGS = @CXXFLAGS@
CYGPATH_W = @CYGPATH_W@
DEFAULT_SUPP = @DEFAULT_SUPP@
DEFS = @DEFS@
DEPDIR = @DEPDIR@
DIFF = @DIFF@
DIS_PATH = @DIS_PATH@
ECHO_C = @ECHO_C@
ECHO_N = @ECHO_N@
ECHO_T = @ECHO_T@
EGREP = @EGREP@
EXEEXT = @EXEEXT@
FLAG_FNO_IPA_ICF = @FLAG_FNO_IPA_ICF@
FLAG_FNO_STACK_PROTECTOR = @FLAG_FNO_STACK_PROTECTOR@
FLAG_FSANITIZE = @FLAG_FSANITIZE@
FLAG_M32 = @FLAG_M32@
FLAG_M64 = @FLAG_M64@
FLAG_MIPS32 = @FLAG_MIPS32@
FLAG_MIPS64 = @FLAG_MIPS64@
FLAG_MLONG_DOUBLE_128 = @FLAG_MLONG_DOUBLE_128@
FLAG_MMMX = @FLAG_MMMX@
FLAG_MSSE = @FLAG_MSSE@
FLAG_NO_BUILD_ID = @FLAG_NO_BUILD_ID@
FLAG_OCTEON = @FLAG_OCTEON@
FLAG_OCTEON2 = @FLAG_OCTEON2@
FLAG_T_TEXT = @FLAG_T_TEXT@
FLAG_UNLIMITED_INLINE_UNIT_GROWTH = @FLAG_UNLIMITED_INLINE_UNIT_GROWTH@
FLAG_W_CAST_ALIGN = @FLAG_W_CAST_ALIGN@
FLAG_W_CAST_QUAL = @FLAG_W_CAST_QUAL@
FLAG_W_EMPTY_BODY = @FLAG_W_EMPTY_BODY@
FLAG_W_EXTRA = @FLAG_W_EXTRA@
FLAG_W_FORMAT = @FLAG_W_FORMAT@
FLAG_W_FORMAT_SECURITY = @FLAG_W_FORMAT_SECURITY@
FLAG_W_FORMAT_SIGNEDNESS = @FLAG_W_FORMAT_SIGNEDNESS@
FLAG_W_IGNORED_QUALIFIERS = @FLAG_W_IGNORED_QUALIFIERS@
FLAG_W_MISSING_PARAMETER_TYPE = @FLAG_W_MISSING_PARAMETER_TYPE@
FLAG_W_NO_INFINITE_RECURSION = @FLAG_W_NO_INFINITE_RECURSION@
FLAG_W_NO_MEMSET_TRANSPOSED_ARGS = @FLAG_W_NO_MEMSET_TRANSPOSED_ARGS@
FLAG_W_NO_MISMATCHED_NEW_DELETE = @FLAG_W_NO_MISMATCHED_NEW_DELETE@
FLAG_W_NO_NONNULL = @FLAG_W_NO_NONNULL@
FLAG_W_NO_OVERFLOW = @FLAG_W_NO_OVERFLOW@
FLAG_W_NO_POINTER_SIGN = @FLAG_W_NO_POINTER_SIGN@
FLAG_W_NO_STATIC_LOCAL_IN_INLINE = @FLAG_W_NO_STATIC_LOCAL_IN_INLINE@
FLAG_W_NO_UNINITIALIZED = @FLAG_W_NO_UNINITIALIZED@
FLAG_W_NO_UNUSED_FUNCTION = @FLAG_W_NO_UNUSED_FUNCTION@
FLAG_W_OLD_STYLE_DECLARATION = @FLAG_W_OLD_STYLE_DECLARATION@
FLAG_W_WRITE_STRINGS = @FLAG_W_WRITE_STRINGS@
GDB = @GDB@
GLIBC_VERSION = @GLIBC_VERSION@
GREP = @GREP@
HWCAP_HAS_ALTIVEC = @HWCAP_HAS_ALTIVEC@
HWCAP_HAS_DFP = @HWCAP_HAS_DFP@
HWCAP_HAS_HTM = @HWCAP_HAS_HTM@
HWCAP_HAS_ISA_2_05 = @HWCAP_HAS_ISA_2_05@
HWCAP_HAS_ISA_2_06 = @HWCAP_HAS_ISA_2_06@
HWCAP_HAS_ISA_2_07 = @HWCAP_HAS_ISA_2_07@
HWCAP_HAS_VSX = @HWCAP_HAS_VSX@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_SCRIPT = @INSTALL_SCRIPT@
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
LDFLAGS = @LDFLAGS@
LDFLAGS_MPI = @LDFLAGS_MPI@
LIBOBJS = @LIBOBJS@
LIBS = @LIBS@
LIB_UBSAN = @LIB_UBSAN@
LN_S = @LN_S@
LTLIBOBJS = @LTLIBOBJS@
MAINT = @MAINT@
MAKEINFO = @MAKEINFO@
MKDIR_P = @MKDIR_P@
MPI_CC = @MPI_CC@
OBJEXT = @OBJEXT@
PACKAGE = @PACKAGE@
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
PACKAGE_NAME = @PACKAGE_NAME@
PACKAGE_STRING = @PACKAGE_STRING@
PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_URL = @PACKAGE_URL@
PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_SEPARATOR = @PATH_SEPARATOR@
PERL = @PERL@
PREFERRED_STACK_BOUNDARY_2 = @PREFERRED_STACK_BOUNDARY_2@
RANLIB = @RANLIB@
SED = @SED@
SET_MAKE = @SET_MAKE@
SHELL = @SHELL@
STRIP = @STRIP@
VALT_LOAD_ADDRESS_PRI = @VALT_LOAD_ADDRESS_PRI@
VALT_LOAD_ADDRESS_SEC = @VALT_LOAD_ADDRESS_SEC@
VERSION = @VERSION@
VGCONF_ARCH_PRI = @VGCONF_ARCH_PRI@
VGCONF_ARCH_SEC = @VGCONF_ARCH_SEC@
VGCONF_OS = @VGCONF_OS@
VGCONF_PLATFORM_PRI_CAPS = @VGCONF_PLATFORM_PRI_CAPS@
VGCONF_PLATFORM_SEC_CAPS = @VGCONF_PLATFORM_SEC_CAPS@
VGCONF_PLATVARIANT = @VGCONF_PLATVARIANT@
VG_TMPDIR = @VG_TMPDIR@
abs_builddir = @abs_builddir@
abs_srcdir = @abs_srcdir@
abs_top_builddir = @abs_top_builddir@
abs_top_srcdir = @abs_top_srcdir@
ac_ct_CC = @ac_ct_CC@
ac_ct_CXX = @ac_ct_CXX@
am__include = @am__include@
am__leading_dot = @am__leading_dot@
am__quote = @am__quote@
am__tar = @am__tar@
am__untar = @am__untar@
bindir = @bindir@
build = @build@
build_alias = @build_alias@
build_cpu = @build_cpu@
build_os = @build_os@
build_vendor = @build_vendor@
builddir = @builddir@
datadir = @datadir@
datarootdir = @datarootdir@
docdir = @docdir@
dvidir = @dvidir@
exec_prefix = @exec_prefix@
host = @host@
host_alias = @host_alias@
host_cpu = @host_cpu@
host_os = @host_os@
host_vendor = @host_vendor@
htmldir = @htmldir@
includedir = @includedir@
infodir = @infodir@
install_sh = @install_sh@
libdir = @libdir@
libexecdir = @libexecdir@
localedir = @localedir@
localstatedir = @localstatedir@
mandir = @mandir@
mkdir_p = @mkdir_p@
oldincludedir = @oldincludedir@
pdfdir = @pdfdir@
prefix = @prefix@
program_transform_name = @program_transform_name@
psdir = @psdir@
sbindir = @sbindir@
sharedstatedir = @sharedstatedir@
srcdir = @srcdir@
sysconfdir = @sysconfdir@
target_alias = @target_alias@
top_build_prefix = @top_build_prefix@
top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
inplacedir = $(top_builddir)/.in_place
#----------------------------------------------------------------------------
# Flags
#----------------------------------------------------------------------------
# Baseline flags for all compilations. Aim here is to maximise
# performance and get whatever useful warnings we can out of gcc.
# -fno-builtin is important for defeating LLVM's idiom recognition
# that somehow causes VG_(memset) to get into infinite recursion.
AM_CFLAGS_BASE = -O2 -g -std=gnu99 -Wall -Wmissing-prototypes -Wshadow \
-Wpointer-arith -Wstrict-prototypes -Wmissing-declarations \
@FLAG_W_CAST_ALIGN@ @FLAG_W_CAST_QUAL@ @FLAG_W_WRITE_STRINGS@ \
@FLAG_W_EMPTY_BODY@ @FLAG_W_FORMAT@ @FLAG_W_FORMAT_SIGNEDNESS@ \
@FLAG_W_FORMAT_SECURITY@ @FLAG_W_IGNORED_QUALIFIERS@ \
@FLAG_W_MISSING_PARAMETER_TYPE@ @FLAG_W_OLD_STYLE_DECLARATION@ \
@FLAG_FNO_STACK_PROTECTOR@ @FLAG_FSANITIZE@ \
-fno-strict-aliasing -fno-builtin $(am__append_1)
@VGCONF_OS_IS_DARWIN_FALSE@AM_CFLAGS_PSO_BASE = -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
@VGCONF_OS_IS_DARWIN_FALSE@ -fpic -fno-builtin @FLAG_FNO_IPA_ICF@
# These flags are used for building the preload shared objects (PSOs).
# The aim is to give reasonable performance but also to have good
# stack traces, since users often see stack traces extending
# into (and through) the preloads. Also, we must use any
# -mpreferred-stack-boundary flag to build the preload shared
# objects, since that risks misaligning the client's stack and
# results in segfaults like (eg) #324050.
@VGCONF_OS_IS_DARWIN_TRUE@AM_CFLAGS_PSO_BASE = -dynamic \
@VGCONF_OS_IS_DARWIN_TRUE@ -O -g -fno-omit-frame-pointer -fno-strict-aliasing \
@VGCONF_OS_IS_DARWIN_TRUE@ -fpic -fPIC -fno-builtin @FLAG_FNO_IPA_ICF@
# Flags for specific targets.
#
# Nb: the AM_CPPFLAGS_* values are suitable for building tools and auxprogs.
# For building the core, coregrind/Makefile.am files add some extra things.
AM_CPPFLAGS_@VGCONF_PLATFORM_PRI_CAPS@ = \
-I$(top_srcdir) \
-I$(top_srcdir)/include \
-I$(top_srcdir)/VEX/pub \
-I$(top_builddir)/VEX/pub \
-DVGA_@VGCONF_ARCH_PRI@=1 \
-DVGO_@VGCONF_OS@=1 \
-DVGP_@VGCONF_ARCH_PRI@_@VGCONF_OS@=1 \
-DVGPV_@VGCONF_ARCH_PRI@_@VGCONF_OS@_@VGCONF_PLATVARIANT@=1
@VGCONF_HAVE_PLATFORM_SEC_TRUE@AM_CPPFLAGS_@VGCONF_PLATFORM_SEC_CAPS@ = \
@VGCONF_HAVE_PLATFORM_SEC_TRUE@ -I$(top_srcdir) \
@VGCONF_HAVE_PLATFORM_SEC_TRUE@ -I$(top_srcdir)/include \
@VGCONF_HAVE_PLATFORM_SEC_TRUE@ -I$(top_srcdir)/VEX/pub \
@VGCONF_HAVE_PLATFORM_SEC_TRUE@ -I$(top_builddir)/VEX/pub \
@VGCONF_HAVE_PLATFORM_SEC_TRUE@ -DVGA_@VGCONF_ARCH_SEC@=1 \
@VGCONF_HAVE_PLATFORM_SEC_TRUE@ -DVGO_@VGCONF_OS@=1 \
@VGCONF_HAVE_PLATFORM_SEC_TRUE@ -DVGP_@VGCONF_ARCH_SEC@_@VGCONF_OS@=1 \
@VGCONF_HAVE_PLATFORM_SEC_TRUE@ -DVGPV_@VGCONF_ARCH_SEC@_@VGCONF_OS@_@VGCONF_PLATVARIANT@=1
AM_FLAG_M3264_X86_LINUX = @FLAG_M32@
AM_CFLAGS_X86_LINUX = @FLAG_M32@ @PREFERRED_STACK_BOUNDARY_2@ \
$(AM_CFLAGS_BASE) -fomit-frame-pointer
AM_CFLAGS_PSO_X86_LINUX = @FLAG_M32@ $(AM_CFLAGS_BASE) $(AM_CFLAGS_PSO_BASE)
AM_CCASFLAGS_X86_LINUX = @FLAG_M32@ -g
AM_FLAG_M3264_AMD64_LINUX = @FLAG_M64@
AM_CFLAGS_AMD64_LINUX = @FLAG_M64@ \
$(AM_CFLAGS_BASE) -fomit-frame-pointer
AM_CFLAGS_PSO_AMD64_LINUX = @FLAG_M64@ $(AM_CFLAGS_BASE) $(AM_CFLAGS_PSO_BASE)
AM_CCASFLAGS_AMD64_LINUX = @FLAG_M64@ -g
AM_FLAG_M3264_PPC32_LINUX = @FLAG_M32@
AM_CFLAGS_PPC32_LINUX = @FLAG_M32@ $(AM_CFLAGS_BASE)
AM_CFLAGS_PSO_PPC32_LINUX = @FLAG_M32@ $(AM_CFLAGS_BASE) $(AM_CFLAGS_PSO_BASE)
AM_CCASFLAGS_PPC32_LINUX = @FLAG_M32@ -g
AM_FLAG_M3264_PPC64BE_LINUX = @FLAG_M64@
AM_CFLAGS_PPC64BE_LINUX = @FLAG_M64@ $(AM_CFLAGS_BASE)
AM_CFLAGS_PSO_PPC64BE_LINUX = @FLAG_M64@ $(AM_CFLAGS_BASE) $(AM_CFLAGS_PSO_BASE)
AM_CCASFLAGS_PPC64BE_LINUX = @FLAG_M64@ -g
AM_FLAG_M3264_PPC64LE_LINUX = @FLAG_M64@
AM_CFLAGS_PPC64LE_LINUX = @FLAG_M64@ $(AM_CFLAGS_BASE)
AM_CFLAGS_PSO_PPC64LE_LINUX = @FLAG_M64@ $(AM_CFLAGS_BASE) $(AM_CFLAGS_PSO_BASE)
AM_CCASFLAGS_PPC64LE_LINUX = @FLAG_M64@ -g
AM_FLAG_M3264_ARM_LINUX = @FLAG_M32@
AM_CFLAGS_ARM_LINUX = @FLAG_M32@ \
$(AM_CFLAGS_BASE) -marm -mcpu=cortex-a8
AM_CFLAGS_PSO_ARM_LINUX = @FLAG_M32@ $(AM_CFLAGS_BASE) \
-marm -mcpu=cortex-a8 $(AM_CFLAGS_PSO_BASE)
AM_CCASFLAGS_ARM_LINUX = @FLAG_M32@ \
-marm -mcpu=cortex-a8 -g
AM_FLAG_M3264_ARM64_LINUX = @FLAG_M64@
AM_CFLAGS_ARM64_LINUX = @FLAG_M64@ $(AM_CFLAGS_BASE)
AM_CFLAGS_PSO_ARM64_LINUX = @FLAG_M64@ $(AM_CFLAGS_BASE) $(AM_CFLAGS_PSO_BASE)
AM_CCASFLAGS_ARM64_LINUX = @FLAG_M64@ -g
AM_FLAG_M3264_X86_DARWIN = -arch i386
AM_CFLAGS_X86_DARWIN = $(WERROR) -arch i386 $(AM_CFLAGS_BASE) \
-mmacosx-version-min=10.5 \
-fno-stack-protector -fno-pic -fno-PIC
AM_CFLAGS_PSO_X86_DARWIN = $(AM_CFLAGS_X86_DARWIN) $(AM_CFLAGS_PSO_BASE)
AM_CCASFLAGS_X86_DARWIN = -arch i386 -g
AM_FLAG_M3264_AMD64_DARWIN = -arch x86_64
AM_CFLAGS_AMD64_DARWIN = $(WERROR) -arch x86_64 $(AM_CFLAGS_BASE) \
-mmacosx-version-min=10.5 -fno-stack-protector
AM_CFLAGS_PSO_AMD64_DARWIN = $(AM_CFLAGS_AMD64_DARWIN) $(AM_CFLAGS_PSO_BASE)
AM_CCASFLAGS_AMD64_DARWIN = -arch x86_64 -g
AM_FLAG_M3264_S390X_LINUX = @FLAG_M64@
AM_CFLAGS_S390X_LINUX = @FLAG_M64@ $(AM_CFLAGS_BASE) -fomit-frame-pointer
AM_CFLAGS_PSO_S390X_LINUX = @FLAG_M64@ $(AM_CFLAGS_BASE) $(AM_CFLAGS_PSO_BASE)
AM_CCASFLAGS_S390X_LINUX = @FLAG_M64@ -g -mzarch -march=z900
AM_FLAG_M3264_MIPS32_LINUX = @FLAG_M32@
AM_CFLAGS_MIPS32_LINUX = @FLAG_M32@ $(AM_CFLAGS_BASE) @FLAG_MIPS32@
AM_CFLAGS_PSO_MIPS32_LINUX = @FLAG_M32@ $(AM_CFLAGS_BASE) @FLAG_MIPS32@ \
$(AM_CFLAGS_PSO_BASE)
AM_CCASFLAGS_MIPS32_LINUX = @FLAG_M32@ -g @FLAG_MIPS32@
AM_FLAG_M3264_MIPS64_LINUX = @FLAG_M64@
AM_CFLAGS_MIPS64_LINUX = @FLAG_M64@ $(AM_CFLAGS_BASE) @FLAG_MIPS64@
AM_CFLAGS_PSO_MIPS64_LINUX = @FLAG_M64@ $(AM_CFLAGS_BASE) @FLAG_MIPS64@ \
$(AM_CFLAGS_PSO_BASE)
AM_CCASFLAGS_MIPS64_LINUX = @FLAG_M64@ -g @FLAG_MIPS64@
AM_CFLAGS_TILEGX_LINUX = @FLAG_M64@ $(AM_CFLAGS_BASE)
AM_CFLAGS_PSO_TILEGX_LINUX = @FLAG_M64@ $(AM_CFLAGS_BASE) $(AM_CFLAGS_PSO_BASE)
AM_FLAG_M3264_X86_SOLARIS = @FLAG_M32@
AM_CFLAGS_X86_SOLARIS = @FLAG_M32@ @PREFERRED_STACK_BOUNDARY_2@ \
$(AM_CFLAGS_BASE) -fomit-frame-pointer
AM_CFLAGS_PSO_X86_SOLARIS = @FLAG_M32@ $(AM_CFLAGS_BASE) $(AM_CFLAGS_PSO_BASE)
AM_CCASFLAGS_X86_SOLARIS = @FLAG_M32@ -g -D_ASM
AM_FLAG_M3264_AMD64_SOLARIS = @FLAG_M64@
AM_CFLAGS_AMD64_SOLARIS = @FLAG_M64@ \
$(AM_CFLAGS_BASE) -fomit-frame-pointer
AM_CFLAGS_PSO_AMD64_SOLARIS = @FLAG_M64@ $(AM_CFLAGS_BASE) $(AM_CFLAGS_PSO_BASE)
AM_CCASFLAGS_AMD64_SOLARIS = @FLAG_M64@ -g -D_ASM
# Flags for the primary target. These must be used to build the
# regtests and performance tests. In fact, these must be used to
# build anything which is built only once on a dual-arch build.
#
AM_FLAG_M3264_PRI = $(AM_FLAG_M3264_@VGCONF_PLATFORM_PRI_CAPS@)
AM_CPPFLAGS_PRI = $(AM_CPPFLAGS_@VGCONF_PLATFORM_PRI_CAPS@)
AM_CFLAGS_PRI = $(AM_CFLAGS_@VGCONF_PLATFORM_PRI_CAPS@)
AM_CCASFLAGS_PRI = $(AM_CCASFLAGS_@VGCONF_PLATFORM_PRI_CAPS@)
@VGCONF_HAVE_PLATFORM_SEC_FALSE@AM_FLAG_M3264_SEC =
@VGCONF_HAVE_PLATFORM_SEC_TRUE@AM_FLAG_M3264_SEC = $(AM_FLAG_M3264_@VGCONF_PLATFORM_SEC_CAPS@)
# Baseline link flags for making vgpreload shared objects.
#
PRELOAD_LDFLAGS_COMMON_LINUX = -nodefaultlibs -shared \
-Wl,-z,interpose,-z,initfirst $(am__append_3)
PRELOAD_LDFLAGS_COMMON_DARWIN = -dynamic -dynamiclib -all_load
PRELOAD_LDFLAGS_COMMON_SOLARIS = -nodefaultlibs -shared \
-Wl,-z,interpose,-z,initfirst $(am__append_2)
PRELOAD_LDFLAGS_X86_LINUX = $(PRELOAD_LDFLAGS_COMMON_LINUX) @FLAG_M32@
PRELOAD_LDFLAGS_AMD64_LINUX = $(PRELOAD_LDFLAGS_COMMON_LINUX) @FLAG_M64@
PRELOAD_LDFLAGS_PPC32_LINUX = $(PRELOAD_LDFLAGS_COMMON_LINUX) @FLAG_M32@
PRELOAD_LDFLAGS_PPC64BE_LINUX = $(PRELOAD_LDFLAGS_COMMON_LINUX) @FLAG_M64@
PRELOAD_LDFLAGS_PPC64LE_LINUX = $(PRELOAD_LDFLAGS_COMMON_LINUX) @FLAG_M64@
PRELOAD_LDFLAGS_ARM_LINUX = $(PRELOAD_LDFLAGS_COMMON_LINUX) @FLAG_M32@
PRELOAD_LDFLAGS_ARM64_LINUX = $(PRELOAD_LDFLAGS_COMMON_LINUX) @FLAG_M64@
PRELOAD_LDFLAGS_X86_DARWIN = $(PRELOAD_LDFLAGS_COMMON_DARWIN) -arch i386
PRELOAD_LDFLAGS_AMD64_DARWIN = $(PRELOAD_LDFLAGS_COMMON_DARWIN) -arch x86_64
PRELOAD_LDFLAGS_S390X_LINUX = $(PRELOAD_LDFLAGS_COMMON_LINUX) @FLAG_M64@
PRELOAD_LDFLAGS_MIPS32_LINUX = $(PRELOAD_LDFLAGS_COMMON_LINUX) @FLAG_M32@
PRELOAD_LDFLAGS_MIPS64_LINUX = $(PRELOAD_LDFLAGS_COMMON_LINUX) @FLAG_M64@
PRELOAD_LDFLAGS_TILEGX_LINUX = $(PRELOAD_LDFLAGS_COMMON_LINUX) @FLAG_M64@
PRELOAD_LDFLAGS_X86_SOLARIS = $(PRELOAD_LDFLAGS_COMMON_SOLARIS) @FLAG_M32@
PRELOAD_LDFLAGS_AMD64_SOLARIS = $(PRELOAD_LDFLAGS_COMMON_SOLARIS) @FLAG_M64@
AM_CPPFLAGS = -I$(top_srcdir) -I$(top_srcdir)/include \
-I$(top_srcdir)/coregrind -I$(top_builddir)/include \
-I$(top_srcdir)/VEX/pub -I$(top_builddir)/VEX/pub \
-DVGA_@VGCONF_ARCH_PRI@=1 -DVGO_@VGCONF_OS@=1 \
-DVGP_@VGCONF_ARCH_PRI@_@VGCONF_OS@=1 \
-DVGPV_@VGCONF_ARCH_PRI@_@VGCONF_OS@_@VGCONF_PLATVARIANT@=1 \
$(am__append_4)
# Nb: Tools need to augment these flags with an arch-selection option, such
# as $(AM_FLAG_M3264_PRI).
AM_CFLAGS = -Winline -Wall -Wshadow -Wno-long-long -g \
@FLAG_FNO_STACK_PROTECTOR@ $(am__append_5) $(am__append_6) \
@FLAG_M32@ $(am__empty)
AM_CXXFLAGS = -Winline -Wall -Wshadow -Wno-long-long -g \
@FLAG_FNO_STACK_PROTECTOR@ $(am__append_7) @FLAG_M32@
# Include AM_CPPFLAGS in AM_CCASFLAGS to allow for older versions of
# automake; see comments in Makefile.all.am for more detail.
AM_CCASFLAGS = $(AM_CPPFLAGS) @FLAG_M32@
@VGCONF_OS_IS_DARWIN_TRUE@noinst_DSYMS = $(check_PROGRAMS)
dist_noinst_SCRIPTS = filter_stderr
EXTRA_DIST = \
scalar.stderr.exp scalar.stdout.exp scalar.vgtest \
scalar_obsolete.stderr.exp scalar_obsolete.stdout.exp scalar_obsolete.vgtest \
context_eflags.stderr.exp context_eflags.stdout.exp context_eflags.vgtest \
context_eflags2.stderr.exp context_eflags2.stdout.exp context_eflags2.vgtest \
context_fpu.stderr.exp context_fpu.stdout.exp context_fpu.vgtest \
context_gpr.stderr.exp context_gpr.stdout.exp context_gpr.vgtest \
context_sse.stderr.exp context_sse.stdout.exp context_sse.vgtest \
ldsoexec.stderr.exp ldsoexec.vgtest
all: all-am
.SUFFIXES:
.SUFFIXES: .c .o .obj
$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir)/Makefile.tool-tests.am $(top_srcdir)/Makefile.all.am $(am__configure_deps)
@for dep in $?; do \
case '$(am__configure_deps)' in \
*$$dep*) \
( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
&& { if test -f $@; then exit 0; else break; fi; }; \
exit 1;; \
esac; \
done; \
echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign memcheck/tests/x86-solaris/Makefile'; \
$(am__cd) $(top_srcdir) && \
$(AUTOMAKE) --foreign memcheck/tests/x86-solaris/Makefile
.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
*config.status*) \
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
*) \
echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
esac;
$(top_srcdir)/Makefile.tool-tests.am $(top_srcdir)/Makefile.all.am:
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(am__aclocal_m4_deps):
clean-checkPROGRAMS:
-test -z "$(check_PROGRAMS)" || rm -f $(check_PROGRAMS)
context_eflags$(EXEEXT): $(context_eflags_OBJECTS) $(context_eflags_DEPENDENCIES) $(EXTRA_context_eflags_DEPENDENCIES)
@rm -f context_eflags$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(context_eflags_OBJECTS) $(context_eflags_LDADD) $(LIBS)
context_eflags2$(EXEEXT): $(context_eflags2_OBJECTS) $(context_eflags2_DEPENDENCIES) $(EXTRA_context_eflags2_DEPENDENCIES)
@rm -f context_eflags2$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(context_eflags2_OBJECTS) $(context_eflags2_LDADD) $(LIBS)
context_fpu$(EXEEXT): $(context_fpu_OBJECTS) $(context_fpu_DEPENDENCIES) $(EXTRA_context_fpu_DEPENDENCIES)
@rm -f context_fpu$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(context_fpu_OBJECTS) $(context_fpu_LDADD) $(LIBS)
context_gpr$(EXEEXT): $(context_gpr_OBJECTS) $(context_gpr_DEPENDENCIES) $(EXTRA_context_gpr_DEPENDENCIES)
@rm -f context_gpr$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(context_gpr_OBJECTS) $(context_gpr_LDADD) $(LIBS)
context_sse$(EXEEXT): $(context_sse_OBJECTS) $(context_sse_DEPENDENCIES) $(EXTRA_context_sse_DEPENDENCIES)
@rm -f context_sse$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(context_sse_OBJECTS) $(context_sse_LDADD) $(LIBS)
ldsoexec$(EXEEXT): $(ldsoexec_OBJECTS) $(ldsoexec_DEPENDENCIES) $(EXTRA_ldsoexec_DEPENDENCIES)
@rm -f ldsoexec$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(ldsoexec_OBJECTS) $(ldsoexec_LDADD) $(LIBS)
scalar$(EXEEXT): $(scalar_OBJECTS) $(scalar_DEPENDENCIES) $(EXTRA_scalar_DEPENDENCIES)
@rm -f scalar$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(scalar_OBJECTS) $(scalar_LDADD) $(LIBS)
scalar_obsolete$(EXEEXT): $(scalar_obsolete_OBJECTS) $(scalar_obsolete_DEPENDENCIES) $(EXTRA_scalar_obsolete_DEPENDENCIES)
@rm -f scalar_obsolete$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(scalar_obsolete_OBJECTS) $(scalar_obsolete_LDADD) $(LIBS)
mostlyclean-compile:
-rm -f *.$(OBJEXT)
distclean-compile:
-rm -f *.tab.c
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/context_eflags.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/context_eflags2.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/context_fpu.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/context_gpr.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/context_sse.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ldsoexec.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/scalar.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/scalar_obsolete.Po@am__quote@
.c.o:
@am__fastdepCC_TRUE@ $(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.o$$||'`;\
@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $< &&\
@am__fastdepCC_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Po
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ $<
.c.obj:
@am__fastdepCC_TRUE@ $(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.obj$$||'`;\
@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ `$(CYGPATH_W) '$<'` &&\
@am__fastdepCC_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Po
@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
ID: $(am__tagged_files)
$(am__define_uniq_tagged_files); mkid -fID $$unique
tags: tags-am
TAGS: tags
tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
set x; \
here=`pwd`; \
$(am__define_uniq_tagged_files); \
shift; \
if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
test -n "$$unique" || unique=$$empty_fix; \
if test $$# -gt 0; then \
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
"$$@" $$unique; \
else \
$(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
$$unique; \
fi; \
fi
ctags: ctags-am
CTAGS: ctags
ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
$(am__define_uniq_tagged_files); \
test -z "$(CTAGS_ARGS)$$unique" \
|| $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
$$unique
GTAGS:
here=`$(am__cd) $(top_builddir) && pwd` \
&& $(am__cd) $(top_srcdir) \
&& gtags -i $(GTAGS_ARGS) "$$here"
cscopelist: cscopelist-am
cscopelist-am: $(am__tagged_files)
list='$(am__tagged_files)'; \
case "$(srcdir)" in \
[\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
*) sdir=$(subdir)/$(srcdir) ;; \
esac; \
for i in $$list; do \
if test -f "$$i"; then \
echo "$(subdir)/$$i"; \
else \
echo "$$sdir/$$i"; \
fi; \
done >> $(top_builddir)/cscope.files
distclean-tags:
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
distdir: $(DISTFILES)
@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
list='$(DISTFILES)'; \
dist_files=`for file in $$list; do echo $$file; done | \
sed -e "s|^$$srcdirstrip/||;t" \
-e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
case $$dist_files in \
*/*) $(MKDIR_P) `echo "$$dist_files" | \
sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
sort -u` ;; \
esac; \
for file in $$dist_files; do \
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
if test -d $$d/$$file; then \
dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
if test -d "$(distdir)/$$file"; then \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
fi; \
cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
else \
test -f "$(distdir)/$$file" \
|| cp -p $$d/$$file "$(distdir)/$$file" \
|| exit 1; \
fi; \
done
check-am: all-am
$(MAKE) $(AM_MAKEFLAGS) $(check_PROGRAMS)
$(MAKE) $(AM_MAKEFLAGS) check-local
check: check-am
all-am: Makefile $(SCRIPTS)
installdirs:
install: install-am
install-exec: install-exec-am
install-data: install-data-am
uninstall: uninstall-am
install-am: all-am
@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
installcheck: installcheck-am
install-strip:
if test -z '$(STRIP)'; then \
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
install; \
else \
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
"INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
fi
mostlyclean-generic:
clean-generic:
distclean-generic:
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
maintainer-clean-generic:
@echo "This command is intended for maintainers to use"
@echo "it deletes files that may require special tools to rebuild."
clean: clean-am
clean-am: clean-checkPROGRAMS clean-generic clean-local mostlyclean-am
distclean: distclean-am
-rm -rf ./$(DEPDIR)
-rm -f Makefile
distclean-am: clean-am distclean-compile distclean-generic \
distclean-tags
dvi: dvi-am
dvi-am:
html: html-am
html-am:
info: info-am
info-am:
install-data-am:
install-dvi: install-dvi-am
install-dvi-am:
install-exec-am:
install-html: install-html-am
install-html-am:
install-info: install-info-am
install-info-am:
install-man:
install-pdf: install-pdf-am
install-pdf-am:
install-ps: install-ps-am
install-ps-am:
installcheck-am:
maintainer-clean: maintainer-clean-am
-rm -rf ./$(DEPDIR)
-rm -f Makefile
maintainer-clean-am: distclean-am maintainer-clean-generic
mostlyclean: mostlyclean-am
mostlyclean-am: mostlyclean-compile mostlyclean-generic
pdf: pdf-am
pdf-am:
ps: ps-am
ps-am:
uninstall-am:
.MAKE: check-am install-am install-strip
.PHONY: CTAGS GTAGS TAGS all all-am check check-am check-local clean \
clean-checkPROGRAMS clean-generic clean-local cscopelist-am \
ctags ctags-am distclean distclean-compile distclean-generic \
distclean-tags distdir dvi dvi-am html html-am info info-am \
install install-am install-data install-data-am install-dvi \
install-dvi-am install-exec install-exec-am install-html \
install-html-am install-info install-info-am install-man \
install-pdf install-pdf-am install-ps install-ps-am \
install-strip installcheck installcheck-am installdirs \
maintainer-clean maintainer-clean-generic mostlyclean \
mostlyclean-compile mostlyclean-generic pdf pdf-am ps ps-am \
tags tags-am uninstall uninstall-am
# This used to be required when Vex had a handwritten Makefile. It
# shouldn't be needed any more, though.
#----------------------------------------------------------------------------
# noinst_PROGRAMS and noinst_DSYMS targets
#----------------------------------------------------------------------------
# On Darwin, for a program 'p', the DWARF debug info is stored in the
# directory 'p.dSYM'. This must be generated after the executable is
# created, with 'dsymutil p'. We could redefine LINK with a script that
# executes 'dsymutil' after linking, but that's a pain. Instead we use this
# hook so that every time "make check" is run, we subsequently invoke
# 'dsymutil' on all the executables that lack a .dSYM directory, or that are
# newer than their corresponding .dSYM directory.
build-noinst_DSYMS: $(noinst_DSYMS)
for f in $(noinst_DSYMS); do \
if [ ! -e $$f.dSYM -o $$f -nt $$f.dSYM ] ; then \
echo "dsymutil $$f"; \
dsymutil $$f; \
fi; \
done
# This is used by coregrind/Makefile.am and Makefile.tool.am for doing
# "in-place" installs. It copies $(noinst_PROGRAMS) into $inplacedir.
# It needs to be depended on by an 'all-local' rule.
inplace-noinst_PROGRAMS: $(noinst_PROGRAMS)
mkdir -p $(inplacedir); \
for f in $(noinst_PROGRAMS) ; do \
rm -f $(inplacedir)/$$f; \
ln -f -s ../$(subdir)/$$f $(inplacedir); \
done
# Similar to inplace-noinst_PROGRAMS
inplace-noinst_DSYMS: build-noinst_DSYMS
mkdir -p $(inplacedir); \
for f in $(noinst_DSYMS); do \
rm -f $(inplacedir)/$$f.dSYM; \
ln -f -s ../$(subdir)/$$f.dSYM $(inplacedir); \
done
# This is used by coregrind/Makefile.am and by <tool>/Makefile.am for doing
# "make install". It copies $(noinst_PROGRAMS) into $prefix/lib/valgrind/.
# It needs to be depended on by an 'install-exec-local' rule.
install-noinst_PROGRAMS: $(noinst_PROGRAMS)
$(mkinstalldirs) $(DESTDIR)$(pkglibdir); \
for f in $(noinst_PROGRAMS); do \
$(INSTALL_PROGRAM) $$f $(DESTDIR)$(pkglibdir); \
done
# This is used by coregrind/Makefile.am and by <tool>/Makefile.am for doing
# "make uninstall". It removes $(noinst_PROGRAMS) from $prefix/lib/valgrind/.
# It needs to be depended on by an 'uninstall-local' rule.
uninstall-noinst_PROGRAMS:
for f in $(noinst_PROGRAMS); do \
rm -f $(DESTDIR)$(pkglibdir)/$$f; \
done
# Similar to install-noinst_PROGRAMS.
# Nb: we don't use $(INSTALL_PROGRAM) here because it doesn't work with
# directories. XXX: not sure whether the resulting permissions will be
# correct when using 'cp -R'...
install-noinst_DSYMS: build-noinst_DSYMS
$(mkinstalldirs) $(DESTDIR)$(pkglibdir); \
for f in $(noinst_DSYMS); do \
cp -R $$f.dSYM $(DESTDIR)$(pkglibdir); \
done
# Similar to uninstall-noinst_PROGRAMS.
uninstall-noinst_DSYMS:
for f in $(noinst_DSYMS); do \
rm -f $(DESTDIR)$(pkglibdir)/$$f.dSYM; \
done
# This needs to be depended on by a 'clean-local' rule.
clean-noinst_DSYMS:
for f in $(noinst_DSYMS); do \
rm -rf $$f.dSYM; \
done
check-local: build-noinst_DSYMS
clean-local: clean-noinst_DSYMS
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:
@@ -0,0 +1,71 @@
/* x86 variant of the amd64-solaris/context_rflags.c test. */
#include <assert.h>
#include <signal.h>
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <sys/syscall.h>
#include <sys/ucontext.h>
#define OBIT(eflags) (!!((eflags) & (1 << 11)))
#define SBIT(eflags) (!!((eflags) & (1 << 7)))
static siginfo_t si;
static ucontext_t uc;
static void sighandler(int sig, siginfo_t *sip, ucontext_t *ucp)
{
si = *sip;
uc = *ucp;
}
int main(void)
{
struct sigaction sa;
pid_t pid;
int eflags;
sa.sa_handler = sighandler;
sa.sa_flags = SA_SIGINFO;
if (sigfillset(&sa.sa_mask)) {
perror("sigfillset");
return 1;
}
if (sigaction(SIGUSR1, &sa, NULL)) {
perror("sigaction");
return 1;
}
pid = getpid();
__asm__ __volatile__(
/* Set overflow and sign flags. */
"movl $1, %%edx\n"
"addl $0x7fffffff, %%edx\n"
/* Prepare syscall parameters. */
"pushl %[sig]\n"
"pushl %[pid]\n"
"pushl $0xdeadbeef\n"
"movl %[scall], %%eax\n"
/* Trigger the signal handler. */
"int $0x91\n"
"pushfl\n"
"popl %%edx\n"
"addl $12, %%esp\n"
: "=d" (eflags)
: [scall] "i" (SYS_kill), [pid] "a" (pid), [sig] "i" (SIGUSR1)
: "cc", "memory");
printf("Values in the signal handler:\n");
printf(" overflow=%d, sign=%d\n",
OBIT(uc.uc_mcontext.gregs[EFL]), SBIT(uc.uc_mcontext.gregs[EFL]));
printf("Values after the return from the signal handler:\n");
printf(" overflow=%d, sign=%d\n", OBIT(eflags), SBIT(eflags));
return 0;
}
@@ -0,0 +1,4 @@
Values in the signal handler:
overflow=1, sign=1
Values after the return from the signal handler:
overflow=1, sign=1
@@ -0,0 +1,2 @@
prog: context_eflags
vgopts: -q --track-origins=yes
@@ -0,0 +1,80 @@
/* x86 variant of the amd64-solaris/context_rflags2.c test. */
#include <assert.h>
#include <signal.h>
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <sys/syscall.h>
#include <sys/ucontext.h>
#define OBIT(eflags) (!!((eflags) & (1 << 11)))
#define SBIT(eflags) (!!((eflags) & (1 << 7)))
static siginfo_t si;
static ucontext_t uc;
void break_out(void);
static void sighandler(int sig, siginfo_t *sip, ucontext_t *ucp)
{
si = *sip;
uc = *ucp;
/* Break out of the endless loop. */
*(uintptr_t*)&ucp->uc_mcontext.gregs[EIP] = (uintptr_t)break_out;
}
int main(void)
{
struct sigaction sa;
int eflags;
int x1;
/* Uninitialised, but we know px[0] is 0x0. */
int *px = malloc(sizeof(*px));
x1 = px[0] + 1;
sa.sa_handler = sighandler;
sa.sa_flags = SA_SIGINFO;
if (sigfillset(&sa.sa_mask)) {
perror("sigfillset");
return 1;
}
if (sigaction(SIGALRM, &sa, NULL)) {
perror("sigaction");
return 1;
}
alarm(2);
__asm__ __volatile__(
/* Set overflow and sign flags. */
"movl %[x1], %%edx\n"
"addl $0x7fffffff, %%edx\n"
/* Loopity loop, this is where the SIGALRM is triggered. */
"1:\n"
"jmp 1b\n"
"break_out:\n"
"pushfl\n"
"popl %%edx\n"
: "=d" (eflags)
: [x1] "m" (x1)
: "cc", "memory");
/* Check that the overflow and sign flags are uninitialised.
Note: This actually fails because the eflags are only approximate
(always initialised) in the signal handler. */
if (!OBIT(uc.uc_mcontext.gregs[EFL]) || !SBIT(uc.uc_mcontext.gregs[EFL]))
assert(0);
/* Check that the overflow and sign flags are uninitialised. */
if (!OBIT(eflags) || !SBIT(eflags))
assert(0);
return 0;
}
@@ -0,0 +1,12 @@
Conditional jump or move depends on uninitialised value(s)
at 0x........: main (context_eflags2.c:75)
Uninitialised value was created by a heap allocation
at 0x........: malloc (vg_replace_malloc.c:...)
by 0x........: main (context_eflags2.c:35)
Conditional jump or move depends on uninitialised value(s)
at 0x........: main (context_eflags2.c:75)
Uninitialised value was created by a heap allocation
at 0x........: malloc (vg_replace_malloc.c:...)
by 0x........: main (context_eflags2.c:35)
@@ -0,0 +1,2 @@
prog: context_eflags2
vgopts: -q --track-origins=yes
@@ -0,0 +1,116 @@
/* x86 variant of the amd64-solaris/context_fpu.c test. */
#include <assert.h>
#include <signal.h>
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <sys/syscall.h>
#include <sys/ucontext.h>
static siginfo_t si;
static ucontext_t uc;
static float inhandler[8];
static void sighandler(int sig, siginfo_t *sip, ucontext_t *ucp)
{
int i;
si = *sip;
uc = *ucp;
/* Reset the FP stack so it's possible to push other values onto it. (It
is fully filled in main() before triggering the signal handler). Note
that VEX also clears all FP values when the finit instruction is
executed. This provides another level of validation that the restore
code is correct. */
__asm__ __volatile__(
"finit\n");
/* Convert 80b values in mcontext to 32b values in the inhandler array. */
for (i = 0; i < 8; i++) {
__asm__ __volatile__(
"fldt %[in]\n"
"fstps %[out]\n"
: [out] "=m" (inhandler[i])
: [in] "m" (*((char*)&ucp->uc_mcontext.fpregs.fp_reg_set.fpchip_state
+ 28 + i * 10)));
}
}
int main(void)
{
struct sigaction sa;
pid_t pid;
float out[8];
float x0;
/* Uninitialised, but we know px[0] is 0x0. */
float *px = malloc(sizeof(*px));
x0 = px[0];
sa.sa_handler = sighandler;
sa.sa_flags = SA_SIGINFO;
if (sigfillset(&sa.sa_mask)) {
perror("sigfillset");
return 1;
}
if (sigaction(SIGUSR1, &sa, NULL)) {
perror("sigaction");
return 1;
}
pid = getpid();
__asm__ __volatile__(
/* Set values in the FP stack. */
"flds %[x0]\n"
"fld1\n"
"flds %[x0]\n"
"fld1\n"
"flds %[x0]\n"
"fld1\n"
"flds %[x0]\n"
"fld1\n"
/* Prepare syscall parameters. */
"pushl %[sig]\n"
"pushl %[pid]\n"
"pushl $0xdeadbeef\n"
"movl %[scall], %%eax\n"
/* Trigger the signal handler. */
"int $0x91\n"
"addl $12, %%esp\n"
"fstps 0x00 + %[out]\n"
"fstps 0x04 + %[out]\n"
"fstps 0x08 + %[out]\n"
"fstps 0x0c + %[out]\n"
"fstps 0x10 + %[out]\n"
"fstps 0x14 + %[out]\n"
"fstps 0x18 + %[out]\n"
"fstps 0x1c + %[out]\n"
: [out] "=m" (out[0])
: [scall] "i" (SYS_kill), [pid] "a" (pid), [sig] "i" (SIGUSR1),
[x0] "m" (x0)
: "edx", "cc", "memory");
printf("Values in the signal handler:\n");
printf(" fp[0]=%f, fp[2]=%f, fp[4]=%f, fp[6]=%f\n",
inhandler[0], inhandler[2], inhandler[4], inhandler[6]);
/* Check that inhandler[1], inhandler[3], inhandler[5] and inhandler[7]
contain uninitialised values (origin is px[0]). */
if (inhandler[1] || inhandler[3] || inhandler[5] || inhandler[7])
assert(0);
printf("Values after the return from the signal handler:\n");
printf(" fp[0]=%f, fp[2]=%f, fp[4]=%f, fp[6]=%f\n",
out[0], out[2], out[4], out[6]);
/* Check that out[1], out[3], out[5] and out[7] contain uninitialised
values (origin is px[0]). */
if (out[1] || out[3] || out[5] || out[7])
assert(0);
return 0;
}
@@ -0,0 +1,96 @@
Conditional jump or move depends on uninitialised value(s)
at 0x........: main (context_fpu.c:103)
Uninitialised value was created by a heap allocation
at 0x........: malloc (vg_replace_malloc.c:...)
by 0x........: main (context_fpu.c:49)
Conditional jump or move depends on uninitialised value(s)
at 0x........: main (context_fpu.c:103)
Uninitialised value was created by a heap allocation
at 0x........: malloc (vg_replace_malloc.c:...)
by 0x........: main (context_fpu.c:49)
Conditional jump or move depends on uninitialised value(s)
at 0x........: main (context_fpu.c:103)
Uninitialised value was created by a heap allocation
at 0x........: malloc (vg_replace_malloc.c:...)
by 0x........: main (context_fpu.c:49)
Conditional jump or move depends on uninitialised value(s)
at 0x........: main (context_fpu.c:103)
Uninitialised value was created by a heap allocation
at 0x........: malloc (vg_replace_malloc.c:...)
by 0x........: main (context_fpu.c:49)
Conditional jump or move depends on uninitialised value(s)
at 0x........: main (context_fpu.c:103)
Uninitialised value was created by a heap allocation
at 0x........: malloc (vg_replace_malloc.c:...)
by 0x........: main (context_fpu.c:49)
Conditional jump or move depends on uninitialised value(s)
at 0x........: main (context_fpu.c:103)
Uninitialised value was created by a heap allocation
at 0x........: malloc (vg_replace_malloc.c:...)
by 0x........: main (context_fpu.c:49)
Conditional jump or move depends on uninitialised value(s)
at 0x........: main (context_fpu.c:103)
Uninitialised value was created by a heap allocation
at 0x........: malloc (vg_replace_malloc.c:...)
by 0x........: main (context_fpu.c:49)
Conditional jump or move depends on uninitialised value(s)
at 0x........: main (context_fpu.c:103)
Uninitialised value was created by a heap allocation
at 0x........: malloc (vg_replace_malloc.c:...)
by 0x........: main (context_fpu.c:49)
Conditional jump or move depends on uninitialised value(s)
at 0x........: main (context_fpu.c:111)
Uninitialised value was created by a heap allocation
at 0x........: malloc (vg_replace_malloc.c:...)
by 0x........: main (context_fpu.c:49)
Conditional jump or move depends on uninitialised value(s)
at 0x........: main (context_fpu.c:111)
Uninitialised value was created by a heap allocation
at 0x........: malloc (vg_replace_malloc.c:...)
by 0x........: main (context_fpu.c:49)
Conditional jump or move depends on uninitialised value(s)
at 0x........: main (context_fpu.c:111)
Uninitialised value was created by a heap allocation
at 0x........: malloc (vg_replace_malloc.c:...)
by 0x........: main (context_fpu.c:49)
Conditional jump or move depends on uninitialised value(s)
at 0x........: main (context_fpu.c:111)
Uninitialised value was created by a heap allocation
at 0x........: malloc (vg_replace_malloc.c:...)
by 0x........: main (context_fpu.c:49)
Conditional jump or move depends on uninitialised value(s)
at 0x........: main (context_fpu.c:111)
Uninitialised value was created by a heap allocation
at 0x........: malloc (vg_replace_malloc.c:...)
by 0x........: main (context_fpu.c:49)
Conditional jump or move depends on uninitialised value(s)
at 0x........: main (context_fpu.c:111)
Uninitialised value was created by a heap allocation
at 0x........: malloc (vg_replace_malloc.c:...)
by 0x........: main (context_fpu.c:49)
Conditional jump or move depends on uninitialised value(s)
at 0x........: main (context_fpu.c:111)
Uninitialised value was created by a heap allocation
at 0x........: malloc (vg_replace_malloc.c:...)
by 0x........: main (context_fpu.c:49)
Conditional jump or move depends on uninitialised value(s)
at 0x........: main (context_fpu.c:111)
Uninitialised value was created by a heap allocation
at 0x........: malloc (vg_replace_malloc.c:...)
by 0x........: main (context_fpu.c:49)
@@ -0,0 +1,4 @@
Values in the signal handler:
fp[0]=1.000000, fp[2]=1.000000, fp[4]=1.000000, fp[6]=1.000000
Values after the return from the signal handler:
fp[0]=1.000000, fp[2]=1.000000, fp[4]=1.000000, fp[6]=1.000000
@@ -0,0 +1,2 @@
prog: context_fpu
vgopts: -q --track-origins=yes
@@ -0,0 +1,92 @@
/* x86 variant of the amd64-solaris/context_gpr.c test. */
#include <assert.h>
#include <signal.h>
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <sys/syscall.h>
#include <sys/ucontext.h>
static siginfo_t si;
static ucontext_t uc;
/* x0 is always zero, but is visible to Valgrind as uninitialised. */
static int x0;
static void sighandler(int sig, siginfo_t *sip, ucontext_t *ucp)
{
si = *sip;
uc = *ucp;
ucp->uc_mcontext.gregs[ECX] = x0;
}
int main(void)
{
struct sigaction sa;
pid_t pid;
int eax, ebx, ecx, edx, esi, edi;
int y0;
/* Uninitialised, but we know px[0] is 0x0. */
int *px = malloc(sizeof(*px));
x0 = px[0];
/* Uninitialised, but we know py[0] is 0x0. */
int *py = malloc(sizeof(*py));
y0 = py[0];
sa.sa_handler = sighandler;
sa.sa_flags = SA_SIGINFO;
if (sigfillset(&sa.sa_mask)) {
perror("sigfillset");
return 1;
}
if (sigaction(SIGUSR1, &sa, NULL)) {
perror("sigaction");
return 1;
}
pid = getpid();
__asm__ __volatile__(
/* Set values in general purpose registers. */
"movl %[y0], %%ebx\n"
"movl $0xf1, %%ecx\n"
"movl $0xf2, %%edx\n"
"movl $0xf3, %%esi\n"
"movl $0xf4, %%edi\n"
/* Prepare syscall parameters. */
"pushl %[sig]\n"
"pushl %[pid]\n"
"pushl $0xdeadbeef\n"
"movl %[scall], %%eax\n"
/* Trigger the signal handler. */
"int $0x91\n"
"addl $12, %%esp\n"
: "=a" (eax), "=b" (ebx), "=c" (ecx), "=d" (edx), "=S" (esi),
"=D" (edi)
: [scall] "i" (SYS_kill), [pid] "a" (pid), [sig] "i" (SIGUSR1),
[y0] "m" (y0)
: "cc", "memory");
printf("Values in the signal handler:\n");
printf(" eax=%#x, edx=%#x, esi=%#x, edi=%#x\n",
uc.uc_mcontext.gregs[EAX], uc.uc_mcontext.gregs[EDX],
uc.uc_mcontext.gregs[ESI], uc.uc_mcontext.gregs[EDI]);
/* Check that ebx contains an uninitialised value (origin is py[0]). */
if (uc.uc_mcontext.gregs[EBX])
assert(0);
printf("Values after the return from the signal handler:\n");
printf(" eax=%#x, edx=%#x, esi=%#x, edi=%#x\n", eax, edx, esi, edi);
/* Check that ebx and ecx contain uninitialised values (origin is py[0]
and px[0], respectively). */
if (ebx || ecx)
assert(0);
return 0;
}
@@ -0,0 +1,18 @@
Conditional jump or move depends on uninitialised value(s)
at 0x........: main (context_gpr.c:80)
Uninitialised value was created by a heap allocation
at 0x........: malloc (vg_replace_malloc.c:...)
by 0x........: main (context_gpr.c:36)
Conditional jump or move depends on uninitialised value(s)
at 0x........: main (context_gpr.c:87)
Uninitialised value was created by a heap allocation
at 0x........: malloc (vg_replace_malloc.c:...)
by 0x........: main (context_gpr.c:36)
Conditional jump or move depends on uninitialised value(s)
at 0x........: main (context_gpr.c:87)
Uninitialised value was created by a heap allocation
at 0x........: malloc (vg_replace_malloc.c:...)
by 0x........: main (context_gpr.c:32)
@@ -0,0 +1,4 @@
Values in the signal handler:
eax=0, edx=0, esi=0xf3, edi=0xf4
Values after the return from the signal handler:
eax=0, edx=0, esi=0xf3, edi=0xf4
@@ -0,0 +1,2 @@
prog: context_gpr
vgopts: -q --track-origins=yes
@@ -0,0 +1,106 @@
/* x86 variant of the amd64-solaris/context_sse.c test. */
#include <assert.h>
#include <signal.h>
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <sys/syscall.h>
#include <sys/ucontext.h>
static siginfo_t si;
static ucontext_t uc;
/* x0 is always zero, but is visible to Valgrind as uninitialised. */
static upad128_t x0;
static upad128_t d0 = {0};
static void sighandler(int sig, siginfo_t *sip, ucontext_t *ucp)
{
si = *sip;
uc = *ucp;
ucp->uc_mcontext.fpregs.fp_reg_set.fpchip_state.xmm[0] = d0;
ucp->uc_mcontext.fpregs.fp_reg_set.fpchip_state.xmm[1] = x0;
}
int main(void)
{
struct sigaction sa;
pid_t pid;
upad128_t out[8];
upad128_t y0;
struct fpchip_state *fs = &uc.uc_mcontext.fpregs.fp_reg_set.fpchip_state;
/* Uninitialised, but we know px[0] is 0x0. */
upad128_t *px = malloc(sizeof(*px));
x0 = px[0];
/* Uninitialised, but we know py[0] is 0x0. */
upad128_t *py = malloc(sizeof(*py));
y0 = py[0];
sa.sa_handler = sighandler;
sa.sa_flags = SA_SIGINFO;
if (sigfillset(&sa.sa_mask)) {
perror("sigfillset");
return 1;
}
if (sigaction(SIGUSR1, &sa, NULL)) {
perror("sigaction");
return 1;
}
pid = getpid();
__asm__ __volatile__(
/* Set values in the SSE registers. */
"movups %[y0], %%xmm0\n"
"movups %[d0], %%xmm1\n"
"movups %[d0], %%xmm2\n"
"movups %[y0], %%xmm3\n"
"movups %[y0], %%xmm4\n"
"movups %[d0], %%xmm5\n"
"movups %[d0], %%xmm6\n"
"movups %[y0], %%xmm7\n"
/* Prepare syscall parameters. */
"pushl %[sig]\n"
"pushl %[pid]\n"
"pushl $0xdeadbeef\n"
"movl %[scall], %%eax\n"
/* Trigger the signal handler. */
"int $0x91\n"
"addl $12, %%esp\n"
"movups %%xmm0, 0x00 + %[out]\n"
"movups %%xmm1, 0x10 + %[out]\n"
"movups %%xmm2, 0x20 + %[out]\n"
"movups %%xmm3, 0x30 + %[out]\n"
"movups %%xmm4, 0x40 + %[out]\n"
"movups %%xmm5, 0x50 + %[out]\n"
"movups %%xmm6, 0x60 + %[out]\n"
"movups %%xmm7, 0x70 + %[out]\n"
: [out] "=m" (out[0])
: [scall] "i" (SYS_kill), [pid] "a" (pid), [sig] "i" (SIGUSR1),
[y0] "m" (y0), [d0] "m" (d0)
: "edx", "cc", "memory");
printf("Values in the signal handler:\n");
printf(" xmm1=%Lf, xmm2=%Lf, xmm5=%Lf, xmm6=%Lf\n",
fs->xmm[1]._q, fs->xmm[2]._q, fs->xmm[5]._q, fs->xmm[6]._q);
/* Check that fs->xmm[0], fs->xmm[3], fs->xmm[4] and fs->xmm[7] contain
uninitialised values (origin is py[0]). */
if (fs->xmm[0]._q || fs->xmm[3]._q || fs->xmm[4]._q || fs->xmm[7]._q)
assert(0);
printf("Values after the return from the signal handler:\n");
printf(" xmm0=%Lf, xmm2=%Lf, xmm5=%Lf, xmm6=%Lf\n",
out[0]._q, out[2]._q, out[5]._q, out[6]._q);
/* Check that out[1], out[3], out[4] and out[7] contain uninitialised
values (origin is px[0]). */
if (out[1]._q || out[3]._q || out[4]._q || out[7]._q)
assert(0);
return 0;
}
@@ -0,0 +1,96 @@
Conditional jump or move depends on uninitialised value(s)
at 0x........: main (context_sse.c:93)
Uninitialised value was created by a heap allocation
at 0x........: malloc (vg_replace_malloc.c:...)
by 0x........: main (context_sse.c:39)
Conditional jump or move depends on uninitialised value(s)
at 0x........: main (context_sse.c:93)
Uninitialised value was created by a heap allocation
at 0x........: malloc (vg_replace_malloc.c:...)
by 0x........: main (context_sse.c:39)
Conditional jump or move depends on uninitialised value(s)
at 0x........: main (context_sse.c:93)
Uninitialised value was created by a heap allocation
at 0x........: malloc (vg_replace_malloc.c:...)
by 0x........: main (context_sse.c:39)
Conditional jump or move depends on uninitialised value(s)
at 0x........: main (context_sse.c:93)
Uninitialised value was created by a heap allocation
at 0x........: malloc (vg_replace_malloc.c:...)
by 0x........: main (context_sse.c:39)
Conditional jump or move depends on uninitialised value(s)
at 0x........: main (context_sse.c:93)
Uninitialised value was created by a heap allocation
at 0x........: malloc (vg_replace_malloc.c:...)
by 0x........: main (context_sse.c:39)
Conditional jump or move depends on uninitialised value(s)
at 0x........: main (context_sse.c:93)
Uninitialised value was created by a heap allocation
at 0x........: malloc (vg_replace_malloc.c:...)
by 0x........: main (context_sse.c:39)
Conditional jump or move depends on uninitialised value(s)
at 0x........: main (context_sse.c:93)
Uninitialised value was created by a heap allocation
at 0x........: malloc (vg_replace_malloc.c:...)
by 0x........: main (context_sse.c:39)
Conditional jump or move depends on uninitialised value(s)
at 0x........: main (context_sse.c:93)
Uninitialised value was created by a heap allocation
at 0x........: malloc (vg_replace_malloc.c:...)
by 0x........: main (context_sse.c:39)
Conditional jump or move depends on uninitialised value(s)
at 0x........: main (context_sse.c:101)
Uninitialised value was created by a heap allocation
at 0x........: malloc (vg_replace_malloc.c:...)
by 0x........: main (context_sse.c:35)
Conditional jump or move depends on uninitialised value(s)
at 0x........: main (context_sse.c:101)
Uninitialised value was created by a heap allocation
at 0x........: malloc (vg_replace_malloc.c:...)
by 0x........: main (context_sse.c:35)
Conditional jump or move depends on uninitialised value(s)
at 0x........: main (context_sse.c:101)
Uninitialised value was created by a heap allocation
at 0x........: malloc (vg_replace_malloc.c:...)
by 0x........: main (context_sse.c:39)
Conditional jump or move depends on uninitialised value(s)
at 0x........: main (context_sse.c:101)
Uninitialised value was created by a heap allocation
at 0x........: malloc (vg_replace_malloc.c:...)
by 0x........: main (context_sse.c:39)
Conditional jump or move depends on uninitialised value(s)
at 0x........: main (context_sse.c:101)
Uninitialised value was created by a heap allocation
at 0x........: malloc (vg_replace_malloc.c:...)
by 0x........: main (context_sse.c:39)
Conditional jump or move depends on uninitialised value(s)
at 0x........: main (context_sse.c:101)
Uninitialised value was created by a heap allocation
at 0x........: malloc (vg_replace_malloc.c:...)
by 0x........: main (context_sse.c:39)
Conditional jump or move depends on uninitialised value(s)
at 0x........: main (context_sse.c:101)
Uninitialised value was created by a heap allocation
at 0x........: malloc (vg_replace_malloc.c:...)
by 0x........: main (context_sse.c:39)
Conditional jump or move depends on uninitialised value(s)
at 0x........: main (context_sse.c:101)
Uninitialised value was created by a heap allocation
at 0x........: malloc (vg_replace_malloc.c:...)
by 0x........: main (context_sse.c:39)
@@ -0,0 +1,4 @@
Values in the signal handler:
xmm1=0.000000, xmm2=0.000000, xmm5=0.000000, xmm6=0.000000
Values after the return from the signal handler:
xmm0=0.000000, xmm2=0.000000, xmm5=0.000000, xmm6=0.000000
@@ -0,0 +1,2 @@
prog: context_sse
vgopts: -q --track-origins=yes
@@ -0,0 +1,3 @@
#! /bin/sh
../filter_stderr "$@"
@@ -0,0 +1,3 @@
int main(void) {
return 0;
}
@@ -0,0 +1,2 @@
prog: /lib/ld.so.1 ./ldsoexec
vgopts: -q
@@ -0,0 +1,116 @@
/* Basic syscall test for Solaris/x86 specific syscalls. */
#include "../solaris/scalar.h"
#include <string.h>
#include <sys/fcntl.h>
#include <sys/statvfs.h>
/* Helper functions. These are necessary if we've got two tests for a single
syscall. In that case, Memcheck can sometimes merge error messages. Doing
each test in its own function prevents that. */
__attribute__((noinline))
static void sys_openat64(void)
{
GO(SYS_openat64, "(3-args) 3s 1m");
SY(SYS_openat64, x0 - 1, x0, x0); FAILx(EBADF);
}
__attribute__((noinline))
static void sys_openat642(void)
{
GO(SYS_openat64, "(4-args) 4s 1m");
SY(SYS_openat64, x0 - 1, x0, x0 | O_CREAT, x0); FAILx(EBADF);
}
__attribute__((noinline))
static void sys_statvfs64(void)
{
GO(SYS_statvfs64, "2s 2m");
SY(SYS_statvfs64, x0 + 1, x0 + 1); FAIL;
}
__attribute__((noinline))
static int sys_statvfs642(void)
{
const char path[] = "/";
struct statvfs64 stats;
GO(SYS_statvfs64, "4s 0m");
SY(SYS_statvfs64, x0 + path, x0 + &stats); SUCC;
size_t basetype_len = strlen(stats.f_basetype);
size_t fstr_len = strlen(stats.f_fstr);
/* Now check that memory after the strings is reported uninitialized. */
int x = 0;
if (stats.f_basetype[basetype_len + 2] != ' ') x = -1; else x = -2;
if (stats.f_fstr[fstr_len + 2] != ' ') x = -3; else x = -4;
return x;
}
int main(void)
{
/* Uninitialised, but we know px[0] is 0x0. */
long *px = malloc(sizeof(long));
x0 = px[0];
/* SYS_fstatat64 67 */
GO(SYS_fstatat64, "4s 2m");
SY(SYS_fstatat64, x0 - 1, x0 + 1, x0, x0); FAILx(EBADF);
/* SYS_openat64 69 */
sys_openat64();
sys_openat642();
/* SYS_llseek 175 */
GO(SYS_llseek, "3s 0m");
SY(SYS_llseek, x0 - 1, x0, x0); FAILx(EBADF);
/* SYS_getdents64 213 */
GO(SYS_getdents64, "3s 1m");
SY(SYS_getdents64, x0, x0, x0 + 1); FAIL;
/* SYS_mmap64 214 */
GO(SYS_mmap64, "7s 0m");
SY(SYS_mmap64, x0, x0, x0, x0, x0, x0, x0); FAILx(EINVAL);
/* SYS_stat64 215 */
/* Tested in x86-solaris/scalar_obsolete.c. */
/* SYS_lstat64 216 */
/* Tested in x86-solaris/scalar_obsolete.c. */
/* SYS_fstat64 217 */
/* Tested in x86-solaris/scalar_obsolete.c. */
/* SYS_statvfs64 218 */
sys_statvfs64();
sys_statvfs642();
/* SYS_fstatvfs64 219 */
GO(SYS_fstatvfs64, "2s 1m");
SY(SYS_fstatvfs64, x0 - 1, x0 + 1); FAILx(EBADF);
/* SYS_setrlimit64 220 */
GO(SYS_setrlimit64, "2s 1m");
SY(SYS_setrlimit64, x0, x0); FAIL;
/* SYS_getrlimit64 221 */
GO(SYS_getrlimit64, "2s 1m");
SY(SYS_getrlimit64, x0, x0); FAIL;
/* SYS_pread64 222 */
GO(SYS_pread64, "5s 1m");
SY(SYS_pread64, x0 - 1, x0, x0 + 1, x0, x0); FAILx(EBADF);
/* SYS_pwrite64 223 */
GO(SYS_pwrite64, "5s 1m");
SY(SYS_pwrite64, x0 - 1, x0, x0 + 1, x0, x0); FAILx(EBADF);
/* SYS_open64 225 */
/* Tested in x86-solaris/scalar_obsolete.c. */
return 0;
}
@@ -0,0 +1,225 @@
---------------------------------------------------------
67: SYS_fstatat64 4s 2m
---------------------------------------------------------
Syscall param fstatat64(fildes) contains uninitialised byte(s)
...
Syscall param fstatat64(path) contains uninitialised byte(s)
...
Syscall param fstatat64(buf) contains uninitialised byte(s)
...
Syscall param fstatat64(flag) contains uninitialised byte(s)
...
Syscall param fstatat64(path) points to unaddressable byte(s)
...
Address 0x........ is not stack'd, malloc'd or (recently) free'd
Syscall param fstatat64(buf) points to unaddressable byte(s)
...
Address 0x........ is not stack'd, malloc'd or (recently) free'd
---------------------------------------------------------
69: SYS_openat64 (3-args) 3s 1m
---------------------------------------------------------
Syscall param openat64(fildes) contains uninitialised byte(s)
...
Syscall param openat64(filename) contains uninitialised byte(s)
...
Syscall param openat64(flags) contains uninitialised byte(s)
...
Syscall param openat64(filename) points to unaddressable byte(s)
...
Address 0x........ is not stack'd, malloc'd or (recently) free'd
---------------------------------------------------------
69: SYS_openat64 (4-args) 4s 1m
---------------------------------------------------------
Syscall param openat64(fildes) contains uninitialised byte(s)
...
Syscall param openat64(filename) contains uninitialised byte(s)
...
Syscall param openat64(flags) contains uninitialised byte(s)
...
Syscall param openat64(mode) contains uninitialised byte(s)
...
Syscall param openat64(filename) points to unaddressable byte(s)
...
Address 0x........ is not stack'd, malloc'd or (recently) free'd
---------------------------------------------------------
175: SYS_llseek 3s 0m
---------------------------------------------------------
Syscall param llseek(fildes) contains uninitialised byte(s)
...
Syscall param llseek(offset_low) contains uninitialised byte(s)
...
Syscall param llseek(offset_high) contains uninitialised byte(s)
...
---------------------------------------------------------
213: SYS_getdents64 3s 1m
---------------------------------------------------------
Syscall param getdents64(fd) contains uninitialised byte(s)
...
Syscall param getdents64(dirp) contains uninitialised byte(s)
...
Syscall param getdents64(count) contains uninitialised byte(s)
...
Syscall param getdents64(dirp) points to unaddressable byte(s)
...
Address 0x........ is not stack'd, malloc'd or (recently) free'd
---------------------------------------------------------
214: SYS_mmap64 7s 0m
---------------------------------------------------------
Syscall param mmap(start) contains uninitialised byte(s)
...
Syscall param mmap(length) contains uninitialised byte(s)
...
Syscall param mmap(prot) contains uninitialised byte(s)
...
Syscall param mmap(flags) contains uninitialised byte(s)
...
Syscall param mmap(fd) contains uninitialised byte(s)
...
Syscall param mmap(offlo) contains uninitialised byte(s)
...
Syscall param mmap(offhi) contains uninitialised byte(s)
...
---------------------------------------------------------
218: SYS_statvfs64 2s 2m
---------------------------------------------------------
Syscall param statvfs64(path) contains uninitialised byte(s)
...
Syscall param statvfs64(buf) contains uninitialised byte(s)
...
Syscall param statvfs64(path) points to unaddressable byte(s)
...
Address 0x........ is not stack'd, malloc'd or (recently) free'd
Syscall param statvfs64(buf) points to unaddressable byte(s)
...
Address 0x........ is not stack'd, malloc'd or (recently) free'd
---------------------------------------------------------
218: SYS_statvfs64 4s 0m
---------------------------------------------------------
Syscall param statvfs64(path) contains uninitialised byte(s)
...
Syscall param statvfs64(buf) contains uninitialised byte(s)
...
Conditional jump or move depends on uninitialised value(s)
...
Conditional jump or move depends on uninitialised value(s)
...
---------------------------------------------------------
219: SYS_fstatvfs64 2s 1m
---------------------------------------------------------
Syscall param fstatvfs64(fd) contains uninitialised byte(s)
...
Syscall param fstatvfs64(buf) contains uninitialised byte(s)
...
Syscall param fstatvfs64(buf) points to unaddressable byte(s)
...
Address 0x........ is not stack'd, malloc'd or (recently) free'd
---------------------------------------------------------
220: SYS_setrlimit64 2s 1m
---------------------------------------------------------
Syscall param setrlimit64(resource) contains uninitialised byte(s)
...
Syscall param setrlimit64(rlim) contains uninitialised byte(s)
...
Syscall param setrlimit64(rlim) points to unaddressable byte(s)
...
Address 0x........ is not stack'd, malloc'd or (recently) free'd
---------------------------------------------------------
221: SYS_getrlimit64 2s 1m
---------------------------------------------------------
Syscall param getrlimit64(resource) contains uninitialised byte(s)
...
Syscall param getrlimit64(rlim) contains uninitialised byte(s)
...
Syscall param getrlimit64(rlim) points to unaddressable byte(s)
...
Address 0x........ is not stack'd, malloc'd or (recently) free'd
---------------------------------------------------------
222: SYS_pread64 5s 1m
---------------------------------------------------------
Syscall param pread64(fd) contains uninitialised byte(s)
...
Syscall param pread64(buf) contains uninitialised byte(s)
...
Syscall param pread64(count) contains uninitialised byte(s)
...
Syscall param pread64(offset_1) contains uninitialised byte(s)
...
Syscall param pread64(offset_2) contains uninitialised byte(s)
...
Syscall param pread64(buf) points to unaddressable byte(s)
...
Address 0x........ is not stack'd, malloc'd or (recently) free'd
---------------------------------------------------------
223: SYS_pwrite64 5s 1m
---------------------------------------------------------
Syscall param pwrite64(fd) contains uninitialised byte(s)
...
Syscall param pwrite64(buf) contains uninitialised byte(s)
...
Syscall param pwrite64(count) contains uninitialised byte(s)
...
Syscall param pwrite64(offset_1) contains uninitialised byte(s)
...
Syscall param pwrite64(offset_2) contains uninitialised byte(s)
...
Syscall param pwrite64(buf) points to unaddressable byte(s)
...
Address 0x........ is not stack'd, malloc'd or (recently) free'd
@@ -0,0 +1,3 @@
prog: scalar
vgopts: -q --error-limit=no
stderr_filter_args:
@@ -0,0 +1,49 @@
/* Test for syscalls that are available on illumos but are removed on
Solaris 11. This test is compiled only on illumos. */
#include "../solaris/scalar.h"
#include <sys/fcntl.h>
/* Helper functions. These are necessary if we've got two tests for a single
syscall. In that case, Memcheck can sometimes merge error messages. Doing
each test in its own function prevents that. */
__attribute__((noinline))
static void sys_open64(void)
{
GO(SYS_open64, "(2-args) 2s 1m");
SY(SYS_open64, x0, x0); FAIL;
}
__attribute__((noinline))
static void sys_open642(void)
{
GO(SYS_open64, "(3-args) 3s 1m");
SY(SYS_open64, x0, x0 | O_CREAT, x0); FAIL;
}
int main(void)
{
/* Uninitialised, but we know px[0] is 0x0. */
long *px = malloc(sizeof(long));
x0 = px[0];
/* SYS_stat64 215 */
GO(SYS_stat64, "2s 2m");
SY(SYS_stat64, x0, x0); FAIL;
/* SYS_lstat64 216 */
GO(SYS_lstat64, "2s 2m");
SY(SYS_lstat64, x0, x0); FAIL;
/* SYS_fstat64 217 */
GO(SYS_fstat64, "2s 1m");
SY(SYS_fstat64, x0, x0); FAIL;
/* SYS_open64 225 */
sys_open64();
sys_open642();
return 0;
}
@@ -0,0 +1,76 @@
---------------------------------------------------------
215: SYS_stat64 2s 2m
---------------------------------------------------------
Syscall param stat64(path) contains uninitialised byte(s)
...
Syscall param stat64(buf) contains uninitialised byte(s)
...
Syscall param stat64(path) points to unaddressable byte(s)
...
Address 0x........ is not stack'd, malloc'd or (recently) free'd
Syscall param stat64(buf) points to unaddressable byte(s)
...
Address 0x........ is not stack'd, malloc'd or (recently) free'd
---------------------------------------------------------
216: SYS_lstat64 2s 2m
---------------------------------------------------------
Syscall param lstat64(path) contains uninitialised byte(s)
...
Syscall param lstat64(buf) contains uninitialised byte(s)
...
Syscall param lstat64(path) points to unaddressable byte(s)
...
Address 0x........ is not stack'd, malloc'd or (recently) free'd
Syscall param lstat64(buf) points to unaddressable byte(s)
...
Address 0x........ is not stack'd, malloc'd or (recently) free'd
---------------------------------------------------------
217: SYS_fstat64 2s 1m
---------------------------------------------------------
Syscall param fstat64(fildes) contains uninitialised byte(s)
...
Syscall param fstat64(buf) contains uninitialised byte(s)
...
Syscall param fstat64(buf) points to unaddressable byte(s)
...
Address 0x........ is not stack'd, malloc'd or (recently) free'd
---------------------------------------------------------
225: SYS_open64 (2-args) 2s 1m
---------------------------------------------------------
Syscall param open64(filename) contains uninitialised byte(s)
...
Syscall param open64(flags) contains uninitialised byte(s)
...
Syscall param open(filename) points to unaddressable byte(s)
...
Address 0x........ is not stack'd, malloc'd or (recently) free'd
---------------------------------------------------------
225: SYS_open64 (3-args) 3s 1m
---------------------------------------------------------
Syscall param open64(filename) contains uninitialised byte(s)
...
Syscall param open64(flags) contains uninitialised byte(s)
...
Syscall param open64(mode) contains uninitialised byte(s)
...
Syscall param open(filename) points to unaddressable byte(s)
...
Address 0x........ is not stack'd, malloc'd or (recently) free'd
@@ -0,0 +1,4 @@
prereq: test -e scalar_obsolete
prog: scalar_obsolete
vgopts: -q --error-limit=no
stderr_filter_args: