native_client/src/native_client.git
5 hours agoExponential backoff sleep time on WindowsError. master
yyanagisawa@chromium.org [Fri, 31 Oct 2014 08:10:52 +0000 (08:10 +0000)]
Exponential backoff sleep time on WindowsError.

I found removal error by WindowsError under high concurrency can
be relaxed by retrying.  In other words, waiting could relax the
failure of removal.
Let me increase the sleep time with exponential backoff to
wait more than now.

BUG=https://code.google.com/p/nativeclient/issues/detail?id=3934
BUG=https://code.google.com/p/chromium/issues/detail?id=390764

NOTRY=true

Review URL: https://codereview.chromium.org/690913002

git-svn-id: svn://svn.chromium.org/native_client/trunk/src/native_client@14014 fcba33aa-ac0c-11dd-b9e7-8d5594d729c2

20 hours agoNon-SFI mode: Add MSG_TRUNC and MSG_CTRUNC to sys/socket.h
hidehiko@chromium.org [Thu, 30 Oct 2014 16:56:35 +0000 (16:56 +0000)]
Non-SFI mode: Add MSG_TRUNC and MSG_CTRUNC to sys/socket.h

These flags are used some libraries in chrome, such as
base/posix/unix_domain_socket_linux.cc in base_nacl_nonsfi library.

BUG=https://code.google.com/p/chromium/issues/detail?id=427625
TEST=Ran trybot. Build base_nacl_nonsfi library with this patch and
local modification to enable the code using MSG_TRUNC/MSG_CTRUNC.

Review URL: https://codereview.chromium.org/648853008

git-svn-id: svn://svn.chromium.org/native_client/trunk/src/native_client@14013 fcba33aa-ac0c-11dd-b9e7-8d5594d729c2

38 hours agoUpdate .DEPS.git
chrome-admin@google.com [Wed, 29 Oct 2014 22:46:05 +0000 (22:46 +0000)]
Update .DEPS.git

git-svn-id: svn://svn.chromium.org/native_client/trunk/src/native_client@14011 fcba33aa-ac0c-11dd-b9e7-8d5594d729c2

38 hours agoallow 16 bit xadd (including atomic version) in ia32.
shyamsundarr@chromium.org [Wed, 29 Oct 2014 22:45:10 +0000 (22:45 +0000)]
allow 16 bit xadd (including atomic version) in ia32.

This was always allowed in 64 bit mode. So there is no reason to disallow it in ia32. the only reason it was disallowed is for compatibility with the old validator.

There is still a pending compatibility/bug reproduction in that xadd isn't marked as zero extending. However, leaving that issue alone in the particular change.

BUG=https://code.google.com/p/nativeclient/issues/detail?id=2981
R=kschimpf@google.com

Review URL: https://codereview.chromium.org/687383002

git-svn-id: svn://svn.chromium.org/native_client/trunk/src/native_client@14010 fcba33aa-ac0c-11dd-b9e7-8d5594d729c2

2 days agoUpdate .DEPS.git
chrome-admin@google.com [Tue, 28 Oct 2014 21:24:06 +0000 (21:24 +0000)]
Update .DEPS.git

git-svn-id: svn://svn.chromium.org/native_client/trunk/src/native_client@14008 fcba33aa-ac0c-11dd-b9e7-8d5594d729c2

2 days agoallow 16 bit shld/shrd in ia32.
shyamsundarr@chromium.org [Tue, 28 Oct 2014 21:23:18 +0000 (21:23 +0000)]
allow 16 bit shld/shrd in ia32.

These were only disallowed in 32 bit mode for compatibility with the old validator. The 64 bit rdfa already accepts them. Note only the 32 bit dfa changes.

BUG=https://code.google.com/p/nativeclient/issues/detail?id=2978
BUG=https://code.google.com/p/nativeclient/issues/detail?id=2980
R=kschimpf@google.com

Review URL: https://codereview.chromium.org/686933002

git-svn-id: svn://svn.chromium.org/native_client/trunk/src/native_client@14007 fcba33aa-ac0c-11dd-b9e7-8d5594d729c2

2 days agonewlib: Add declaration of readdir_r
sbc@chromium.org [Tue, 28 Oct 2014 19:10:55 +0000 (19:10 +0000)]
newlib: Add declaration of readdir_r

This function is implemented in newlib (libcrt_common.a)
but was not declared in our sys/dirent.h header.

BUG= https://code.google.com/p/nativeclient/issues/detail?id=3988
TEST=newlib toolchain trybots
R=mseaborn@chromium.org

Review URL: https://codereview.chromium.org/686523004

git-svn-id: svn://svn.chromium.org/native_client/trunk/src/native_client@14005 fcba33aa-ac0c-11dd-b9e7-8d5594d729c2

2 days agoUpdate .DEPS.git
chrome-admin@google.com [Tue, 28 Oct 2014 18:55:06 +0000 (18:55 +0000)]
Update .DEPS.git

git-svn-id: svn://svn.chromium.org/native_client/trunk/src/native_client@14004 fcba33aa-ac0c-11dd-b9e7-8d5594d729c2

2 days agoallow 16 bit bsr/bsf in ia32.
shyamsundarr@chromium.org [Tue, 28 Oct 2014 18:54:23 +0000 (18:54 +0000)]
allow 16 bit bsr/bsf in ia32.

These were only disabled in 32 bit mode for compatibility with the old validator. However, they are already enabled in 64 bit mode. change is tested via bsr_bsf_proof.py

BUG=https://code.google.com/p/nativeclient/issues/detail?id=2972
BUG=https://code.google.com/p/nativeclient/issues/detail?id=2973

Review URL: https://codereview.chromium.org/680943003

git-svn-id: svn://svn.chromium.org/native_client/trunk/src/native_client@14003 fcba33aa-ac0c-11dd-b9e7-8d5594d729c2

2 days agoBuildbot for glibc now archives new redirector sources.
dyen@chromium.org [Tue, 28 Oct 2014 18:54:17 +0000 (18:54 +0000)]
Buildbot for glibc now archives new redirector sources.

R=jvoung@chromium.org
BUG=None
TEST=Trybots

Review URL: https://codereview.chromium.org/686763003

git-svn-id: svn://svn.chromium.org/native_client/trunk/src/native_client@14002 fcba33aa-ac0c-11dd-b9e7-8d5594d729c2

3 days agoFix previous commit 'PNaCl toolchain tests: use clang and LD_LIBRARY_PATH'
jfb@chromium.org [Mon, 27 Oct 2014 23:55:38 +0000 (23:55 +0000)]
Fix previous commit 'PNaCl toolchain tests: use clang and LD_LIBRARY_PATH'

I did 'git svn dcommit' instead of 'git cl dcommit', and only the first git commit got in. The CL description should have been:

After the LLVM 3.5 merge the tests that run native code (and compare it to the
PNaCl version) will need to be able to find the libc++.so that's built by our
toolchain. The tests currently rely on GCC and the local libstdc++, this CL
moves them to LLVM instead.

R=dschuff@chromium.org
TEST= toolchain FYI bots
BUG= https://code.google.com/p/nativeclient/issues/detail?id=3930

Review URL: https://codereview.chromium.org/681953002

git-svn-id: svn://svn.chromium.org/native_client/trunk/src/native_client@14001 fcba33aa-ac0c-11dd-b9e7-8d5594d729c2

3 days agoPNaCl toolchain tests: use LD_LIBRARY_PATH
jfb@chromium.org [Mon, 27 Oct 2014 23:48:38 +0000 (23:48 +0000)]
PNaCl toolchain tests: use LD_LIBRARY_PATH

After the LLVM 3.5 merge the tests that run native code (and compare it to the PNaCl version) will need to be able to find the libc++.so that's built by our toolchain. The tests currently rely on GCC and the local libstdc++.

R= dschuff@chromium.org
TEST= toolchain FYI bots
BUG= https://code.google.com/p/nativeclient/issues/detail?id=3930

git-svn-id: svn://svn.chromium.org/native_client/trunk/src/native_client@14000 fcba33aa-ac0c-11dd-b9e7-8d5594d729c2

3 days agoPNaCl drivers: pass through-ish "-x c++-header", etc., for building pch.
jvoung@google.com [Mon, 27 Oct 2014 23:19:29 +0000 (23:19 +0000)]
PNaCl drivers: pass through-ish "-x c++-header", etc., for building pch.

It's not really pass-through because:
(a) the PNaCl drivers intercept -x <foo> and label
each input's "filetype" based on the order of the
flags w.r.t. the files.
(b) the PNaCl drivers want to know when linking is
needed, and if only header files are specified without a
-c, or -S, it should only compile the header and not
attempt to compile and link. Ideally the "needs_link"
condition is probably more like if there exists any
source/assembly/object/library files.

BUG= https://code.google.com/p/nativeclient/issues/detail?id=3983
R=dschuff@chromium.org, sbc@chromium.org

Review URL: https://codereview.chromium.org/675393002

git-svn-id: svn://svn.chromium.org/native_client/trunk/src/native_client@13999 fcba33aa-ac0c-11dd-b9e7-8d5594d729c2

3 days agoSwitch mac PNaCl testing to using 64 bit NaCl
dschuff@chromium.org [Mon, 27 Oct 2014 22:34:26 +0000 (22:34 +0000)]
Switch mac PNaCl testing to using 64 bit NaCl

Mac Chrome canary has switched to 64-bit, so it is now our primary supported
target on that platform. So switch our buildbots to using 64-bit NaCl tests.

R=jvoung@chromium.org
BUG=None

Review URL: https://codereview.chromium.org/670043003

git-svn-id: svn://svn.chromium.org/native_client/trunk/src/native_client@13998 fcba33aa-ac0c-11dd-b9e7-8d5594d729c2

3 days agoUpdate revision for PNaCl r13986->r13992
dschuff@chromium.org [Mon, 27 Oct 2014 21:10:26 +0000 (21:10 +0000)]
Update revision for PNaCl r13986->r13992

Pull the following PNaCl changes into NaCl:
  r13992: (dschuff@chromium.org) PNaCl: Update LLVM revision in pnacl/COMPONENT_REVISIONS
    | 85fd7c7: (dschuff@chromium.org) Fix sandboxing of inline assembly memory operands on x86-64

BUG= https://code.google.com/p/nativeclient/issues/detail?id=3957
R= jvoung@chromium.org, dschuff@chromium.org
TEST=git try
NOTRY=true
(Please LGTM this change and tick the "commit" box)

Review URL: https://codereview.chromium.org/639753010

git-svn-id: svn://svn.chromium.org/native_client/trunk/src/native_client@13997 fcba33aa-ac0c-11dd-b9e7-8d5594d729c2

3 days agoUpdate .DEPS.git
chrome-admin@google.com [Mon, 27 Oct 2014 20:12:19 +0000 (20:12 +0000)]
Update .DEPS.git

git-svn-id: svn://svn.chromium.org/native_client/trunk/src/native_client@13995 fcba33aa-ac0c-11dd-b9e7-8d5594d729c2

3 days agoallow 16 bit movbe in ia32.
shyamsundarr@chromium.org [Mon, 27 Oct 2014 20:11:55 +0000 (20:11 +0000)]
allow 16 bit movbe in ia32.

This was already enabled in 64 bit mode and just left disabled in 32 bit mode for compatibility with the old validator. As we no longer rely on the old validator, we can fix this compatibility issues.
BUG=https://code.google.com/p/nativeclient/issues/detail?id=2976
R=kschimpf@google.com

Review URL: https://codereview.chromium.org/678763002

git-svn-id: svn://svn.chromium.org/native_client/trunk/src/native_client@13994 fcba33aa-ac0c-11dd-b9e7-8d5594d729c2

3 days agoRemove some unused/obsolete references to Gio
mseaborn@chromium.org [Mon, 27 Oct 2014 20:10:20 +0000 (20:10 +0000)]
Remove some unused/obsolete references to Gio

NaClAppLoadFile() no longer takes a Gio object argument, so remove a
comment referring to that.

Remove the prototype for NaClLoadImage(), which is not defined
anywhere.

BUG=none
TEST=build

Review URL: https://codereview.chromium.org/667533003

git-svn-id: svn://svn.chromium.org/native_client/trunk/src/native_client@13993 fcba33aa-ac0c-11dd-b9e7-8d5594d729c2

3 days agoPNaCl: Update LLVM revision in pnacl/COMPONENT_REVISIONS
dschuff@chromium.org [Mon, 27 Oct 2014 18:03:08 +0000 (18:03 +0000)]
PNaCl: Update LLVM revision in pnacl/COMPONENT_REVISIONS

This pulls in the following LLVM change:

85fd7c7: (dschuff@chromium.org) Fix sandboxing of inline assembly memory operands on x86-64

BUG= https://code.google.com/p/nativeclient/issues/detail?id=3957
TEST= PNaCl toolchain trybots
R=jvoung@chromium.org

Review URL: https://codereview.chromium.org/683503002

git-svn-id: svn://svn.chromium.org/native_client/trunk/src/native_client@13992 fcba33aa-ac0c-11dd-b9e7-8d5594d729c2

3 days agofix typo in vandps definition.
shyamsundarr@chromium.org [Mon, 27 Oct 2014 17:40:27 +0000 (17:40 +0000)]
fix typo in vandps definition.

doesn't affect generated dfa but good to be correct.

R=kschimpf@google.com
BUG=

Review URL: https://codereview.chromium.org/636303004

git-svn-id: svn://svn.chromium.org/native_client/trunk/src/native_client@13991 fcba33aa-ac0c-11dd-b9e7-8d5594d729c2

6 days agoAdded support for using custom toolchains within the chromium gyp build.
dyen@chromium.org [Fri, 24 Oct 2014 23:23:37 +0000 (23:23 +0000)]
Added support for using custom toolchains within the chromium gyp build.

Traditionally it has been very tricky to use a (P)NaCl toolchain other
than the default one pinned to the current revision. This makes doing
things such as debugging locally built toolchains difficult.

To accommodate using custom (P)NaCl toolchains, this CL adds various
gyp variables which you can set to point to toolchains on your local
machine (nacl_x86_newlib_toolchain, nacl_x86_glibc_toolchain,
nacl_arm_newlib_toolchain, pnacl_newlib_toolchain). Because of the
nature of build dependencies, users of these gyp variables are also
required to specify a file which acts as a "stamp" file for which
gyp can determine if the toolchain has been updated. The stamp file
should live within the toolchain directory and be specified in the
corresponding gyp variable relative to the toolchain directory
(nacl_x86_newlib_stamp, nacl_x86_glibc_stamp, nacl_arm_newlib_stamp,
pnacl_newlib_stamp).

Currently because of how the toolchain needs to be prepped in the
output directory, gyp sets up rules to make a copy of the toolchain
into the output directory to be prepped. Eventually we hope to make
the prepping stage part of the toolchain building process so this
copy will not be necessary. At that point gyp will be able to
utilize the toolchain directly from the specified directory. However,
when that time comes, the gyp variables will remain the same.

R=dschuff@chromium.org
BUG= https://code.google.com/p/nativeclient/issues/detail?id=3954
TEST=trybots

Review URL: https://codereview.chromium.org/655103003

git-svn-id: svn://svn.chromium.org/native_client/trunk/src/native_client@13990 fcba33aa-ac0c-11dd-b9e7-8d5594d729c2

6 days agoAdd an optional callback function + user data when running benchmarks.
nfullagar@google.com [Fri, 24 Oct 2014 17:44:46 +0000 (17:44 +0000)]
Add an optional callback function + user data when running benchmarks.
BUG=https://code.google.com/p/nativeclient/issues/detail?id=3987
TEST=the benchmark suite is a test
R=bradnelson@google.com

Review URL: https://codereview.chromium.org/663233005

git-svn-id: svn://svn.chromium.org/native_client/trunk/src/native_client@13989 fcba33aa-ac0c-11dd-b9e7-8d5594d729c2

7 days agoUpdate revision for PNaCl r13925->r13986
dschuff@chromium.org [Thu, 23 Oct 2014 19:59:11 +0000 (19:59 +0000)]
Update revision for PNaCl r13925->r13986

Pull the following PNaCl changes into NaCl:
  r13926: (dschuff@chromium.org) Fix build directory for LLVM regression test runner
  r13950: (jvoung@google.com) Build gold.nexe with a segment gap, and supply -B, to later support IRT use.
  r13963: (dyen@chromium.org) win32 i686-nacl-as and i686-nacl-ld for PNaCl direct to NaCl toolchain.
  r13986: (dschuff@chromium.org) PNaCl: Update LLVM revision in pnacl/COMPONENT_REVISIONS
    | ee4f49b: (dschuff@chromium.org) Cherry-pick r215837 from upstream.
    | e370300: (dschuff@chromium.org) Cherrypick upstream r220439 [MC] Attach labels to existing fragments instead of using a separate fragment
    | 8e57321: (dschuff@chromium.org) De-C++11ify cherrypick of r220439

BUG= https://code.google.com/p/nativeclient/issues/detail?id=3982
BUG= https://code.google.com/p/nativeclient/issues/detail?id=3914
R= jvoung@chromium.org, stichnot@chromium.org, dschuff@chromium.org, jvoung@google.com, mseaborn@chromium.org, dyen@chromium.org
TEST=git try
NOTRY=true
(Please LGTM this change and tick the "commit" box)

Review URL: https://codereview.chromium.org/678473002

git-svn-id: svn://svn.chromium.org/native_client/trunk/src/native_client@13988 fcba33aa-ac0c-11dd-b9e7-8d5594d729c2

7 days agoNacl-clang does not appear to follow the same portable SIMD vector alignment
nfullagar@google.com [Thu, 23 Oct 2014 18:39:55 +0000 (18:39 +0000)]
Nacl-clang does not appear to follow the same portable SIMD vector alignment
rules as pnacl.  The workaround is to add attribute aligned(1) to the
vector type.  When nacl-clang follows the same vector alignment rules as
pnacl, this alignment attribute can be removed.

BUG=https://code.google.com/p/nativeclient/issues/detail?id=3986
TEST=benchmark_life.cc
R=bradnelson@google.com

Review URL: https://codereview.chromium.org/669213003

git-svn-id: svn://svn.chromium.org/native_client/trunk/src/native_client@13987 fcba33aa-ac0c-11dd-b9e7-8d5594d729c2

7 days agoPNaCl: Update LLVM revision in pnacl/COMPONENT_REVISIONS
dschuff@chromium.org [Thu, 23 Oct 2014 17:09:26 +0000 (17:09 +0000)]
PNaCl: Update LLVM revision in pnacl/COMPONENT_REVISIONS

This pulls in the following LLVM changes:

ee4f49b: (dschuff@chromium.org) Cherry-pick r215837 from upstream.
e370300: (dschuff@chromium.org) Cherrypick upstream r220439 [MC] Attach labels to existing fragments instead of using a separate fragment
8e57321: (dschuff@chromium.org) De-C++11ify cherrypick of r220439

BUG= https://code.google.com/p/nativeclient/issues/detail?id=3982
TEST= PNaCl toolchain trybots
R=jvoung@chromium.org

Review URL: https://codereview.chromium.org/674593005

git-svn-id: svn://svn.chromium.org/native_client/trunk/src/native_client@13986 fcba33aa-ac0c-11dd-b9e7-8d5594d729c2

7 days agoNon-SFI IRT: Remove workarounds for service_runtime/include/ headers
mseaborn@chromium.org [Thu, 23 Oct 2014 15:38:38 +0000 (15:38 +0000)]
Non-SFI IRT: Remove workarounds for service_runtime/include/ headers

Now that the conditionalisation in the service_runtime/include/
headers has been cleaned up, the workarounds in
src/nonsfi/irt/irt_interfaces.c are no longer needed.

BUG= https://code.google.com/p/nativeclient/issues/detail?id=3909
TEST= main trybots + PNaCl toolchain trybot
R=hamaji@chromium.org

Review URL: https://codereview.chromium.org/665913004

git-svn-id: svn://svn.chromium.org/native_client/trunk/src/native_client@13985 fcba33aa-ac0c-11dd-b9e7-8d5594d729c2

8 days agoUpdate .DEPS.git
chrome-admin@google.com [Thu, 23 Oct 2014 07:53:08 +0000 (07:53 +0000)]
Update .DEPS.git

git-svn-id: svn://svn.chromium.org/native_client/trunk/src/native_client@13984 fcba33aa-ac0c-11dd-b9e7-8d5594d729c2

8 days agoUpdate .DEPS.git
chrome-admin@google.com [Thu, 23 Oct 2014 07:52:43 +0000 (07:52 +0000)]
Update .DEPS.git

git-svn-id: svn://svn.chromium.org/native_client/trunk/src/native_client@13983 fcba33aa-ac0c-11dd-b9e7-8d5594d729c2

8 days agoUpdate .DEPS.git
chrome-admin@google.com [Thu, 23 Oct 2014 07:37:24 +0000 (07:37 +0000)]
Update .DEPS.git

git-svn-id: svn://svn.chromium.org/native_client/trunk/src/native_client@13982 fcba33aa-ac0c-11dd-b9e7-8d5594d729c2

8 days agoUpdate .DEPS.git
chrome-admin@google.com [Thu, 23 Oct 2014 07:36:13 +0000 (07:36 +0000)]
Update .DEPS.git

git-svn-id: svn://svn.chromium.org/native_client/trunk/src/native_client@13981 fcba33aa-ac0c-11dd-b9e7-8d5594d729c2

8 days agoUpdate .DEPS.git
chrome-admin@google.com [Thu, 23 Oct 2014 03:36:08 +0000 (03:36 +0000)]
Update .DEPS.git

git-svn-id: svn://svn.chromium.org/native_client/trunk/src/native_client@13980 fcba33aa-ac0c-11dd-b9e7-8d5594d729c2

8 days agoUpdate .DEPS.git
chrome-admin@google.com [Thu, 23 Oct 2014 03:35:03 +0000 (03:35 +0000)]
Update .DEPS.git

git-svn-id: svn://svn.chromium.org/native_client/trunk/src/native_client@13979 fcba33aa-ac0c-11dd-b9e7-8d5594d729c2

8 days ago[MIPS] Disable seg_gap tests
petarj@mips.com [Thu, 23 Oct 2014 00:35:09 +0000 (00:35 +0000)]
[MIPS] Disable seg_gap tests

MIPS's SFI expects data section to be above 256 MB, so the gap is expected
regardless of IRT. Thus, the recently added tests do not check correctly for
IRT presence in case of MIPS arch.

This change disables the following tests for MIPS:
- run_sel_main_chrome_irt_optional_with_seg_gap_tes
- run_sel_main_chrome_irt_optional_no_seg_gap_test

introduced in r13952.

BUG= run_sel_main_chrome_irt_optional_no_seg_gap_test fails for MIPS
TEST= ./scons platform=mips32 smoke_tests

Review URL: https://codereview.chromium.org/674543005

git-svn-id: svn://svn.chromium.org/native_client/trunk/src/native_client@13978 fcba33aa-ac0c-11dd-b9e7-8d5594d729c2

8 days agoCapture build_nexe verbose log messages to emit in the event of error.
bradnelson@google.com [Wed, 22 Oct 2014 20:41:56 +0000 (20:41 +0000)]
Capture build_nexe verbose log messages to emit in the event of error.

Record log messages in memory for build_nexe runs, so that they can be
emitted for failures. The buildbots do not run with verbosity turned up
due to space / master performance constraints.

BUG=https://code.google.com/p/nativeclient/issues/detail?id=3934
BUG=https://code.google.com/p/chromium/issues/detail?id=390764
TEST=local
R=jam@chromium.org, ncbray@chromium.org, mseaborn@chromium.org

Review URL: https://codereview.chromium.org/666073003

git-svn-id: svn://svn.chromium.org/native_client/trunk/src/native_client@13977 fcba33aa-ac0c-11dd-b9e7-8d5594d729c2

8 days agoMore include path truncation for benchmark source relocation into SDK.
nfullagar@google.com [Wed, 22 Oct 2014 18:18:53 +0000 (18:18 +0000)]
More include path truncation for benchmark source relocation into SDK.
BUG=none
TEST=manual, trybots, checkdeps.py
R=bradnelson@google.com

Review URL: https://codereview.chromium.org/676473002

git-svn-id: svn://svn.chromium.org/native_client/trunk/src/native_client@13976 fcba33aa-ac0c-11dd-b9e7-8d5594d729c2

8 days agoDisable run_dynamic_load_test under nacl_clang x86-32
dschuff@chromium.org [Wed, 22 Oct 2014 17:35:58 +0000 (17:35 +0000)]
Disable run_dynamic_load_test under nacl_clang x86-32

It's quite flaky on the toolchain bot.

R=stichnot@chromium.org
BUG= https://code.google.com/p/nativeclient/issues/detail?id=3980

Review URL: https://codereview.chromium.org/638883007

git-svn-id: svn://svn.chromium.org/native_client/trunk/src/native_client@13975 fcba33aa-ac0c-11dd-b9e7-8d5594d729c2

9 days agoUpdate .DEPS.git
chrome-admin@google.com [Wed, 22 Oct 2014 09:34:10 +0000 (09:34 +0000)]
Update .DEPS.git

git-svn-id: svn://svn.chromium.org/native_client/trunk/src/native_client@13974 fcba33aa-ac0c-11dd-b9e7-8d5594d729c2

9 days agoUpdate .DEPS.git
chrome-admin@google.com [Wed, 22 Oct 2014 09:33:36 +0000 (09:33 +0000)]
Update .DEPS.git

git-svn-id: svn://svn.chromium.org/native_client/trunk/src/native_client@13973 fcba33aa-ac0c-11dd-b9e7-8d5594d729c2

9 days agoUpdate .DEPS.git
chrome-admin@google.com [Wed, 22 Oct 2014 09:26:11 +0000 (09:26 +0000)]
Update .DEPS.git

git-svn-id: svn://svn.chromium.org/native_client/trunk/src/native_client@13972 fcba33aa-ac0c-11dd-b9e7-8d5594d729c2

9 days agoUpdate .DEPS.git
chrome-admin@google.com [Wed, 22 Oct 2014 09:25:31 +0000 (09:25 +0000)]
Update .DEPS.git

git-svn-id: svn://svn.chromium.org/native_client/trunk/src/native_client@13971 fcba33aa-ac0c-11dd-b9e7-8d5594d729c2

9 days agoNon-SFI Mode: Append --allow-llvm-bitcode-input only once
hamaji@chromium.org [Wed, 22 Oct 2014 05:25:17 +0000 (05:25 +0000)]
Non-SFI Mode: Append --allow-llvm-bitcode-input only once

Without this, we pass this flag hundreds times.

TEST=trybots, manually checked the flag for pnacl-translate
BUG=None

Review URL: https://codereview.chromium.org/664053002

git-svn-id: svn://svn.chromium.org/native_client/trunk/src/native_client@13970 fcba33aa-ac0c-11dd-b9e7-8d5594d729c2

9 days agoUpdate .DEPS.git
chrome-admin@google.com [Wed, 22 Oct 2014 03:48:08 +0000 (03:48 +0000)]
Update .DEPS.git

git-svn-id: svn://svn.chromium.org/native_client/trunk/src/native_client@13969 fcba33aa-ac0c-11dd-b9e7-8d5594d729c2

9 days agoUpdate .DEPS.git
chrome-admin@google.com [Wed, 22 Oct 2014 03:27:09 +0000 (03:27 +0000)]
Update .DEPS.git

git-svn-id: svn://svn.chromium.org/native_client/trunk/src/native_client@13968 fcba33aa-ac0c-11dd-b9e7-8d5594d729c2

9 days agoAdditional path modification to make benchmark code more
nfullagar@google.com [Tue, 21 Oct 2014 23:42:14 +0000 (23:42 +0000)]
Additional path modification to make benchmark code more
relocatable between nacl test & SDK.
TEST=manual, trybots & checkdeps
BUG=none
R=bradnelson@google.com

Review URL: https://codereview.chromium.org/668133002

git-svn-id: svn://svn.chromium.org/native_client/trunk/src/native_client@13967 fcba33aa-ac0c-11dd-b9e7-8d5594d729c2

9 days agoUpdate .DEPS.git
chrome-admin@google.com [Tue, 21 Oct 2014 21:19:13 +0000 (21:19 +0000)]
Update .DEPS.git

git-svn-id: svn://svn.chromium.org/native_client/trunk/src/native_client@13965 fcba33aa-ac0c-11dd-b9e7-8d5594d729c2

9 days agoAllow vzeroall and vzeroupper in ragel dfa.
shyamsundarr@chromium.org [Tue, 21 Oct 2014 21:18:19 +0000 (21:18 +0000)]
Allow vzeroall and vzeroupper in ragel dfa.

These are AVX instructions that have no operands. They respectively zero out all the YMM registers or just the top 128 bits of all the YMM registers. The corresponding test
for adding these are in vzero_proof.py, where we verify that no instructions were removed from the DFA, and that the set of added instructions to the DFA disassembles to {'vzeroall', 'vzeroupper'}

BUG=https://code.google.com/p/nativeclient/issues/detail?id=3327
R=kschimpf@google.com

Review URL: https://codereview.chromium.org/660473005

git-svn-id: svn://svn.chromium.org/native_client/trunk/src/native_client@13964 fcba33aa-ac0c-11dd-b9e7-8d5594d729c2

9 days agowin32 i686-nacl-as and i686-nacl-ld for PNaCl direct to NaCl toolchain.
dyen@chromium.org [Tue, 21 Oct 2014 19:02:13 +0000 (19:02 +0000)]
win32 i686-nacl-as and i686-nacl-ld for PNaCl direct to NaCl toolchain.

Repurposed redirector.exe to be used within toolchain_build_pnacl. We
now compile the redirector program using mingw and then use it to
redirect i686-nacl-as.exe and i686-nacl-ld.exe for windows.

R=dschuff@chromium.org
BUG=None
TEST=trybots

Review URL: https://codereview.chromium.org/671523002

git-svn-id: svn://svn.chromium.org/native_client/trunk/src/native_client@13963 fcba33aa-ac0c-11dd-b9e7-8d5594d729c2

9 days agoUpdate .DEPS.git
chrome-admin@google.com [Tue, 21 Oct 2014 14:37:13 +0000 (14:37 +0000)]
Update .DEPS.git

git-svn-id: svn://svn.chromium.org/native_client/trunk/src/native_client@13962 fcba33aa-ac0c-11dd-b9e7-8d5594d729c2

9 days agoUpdate .DEPS.git
chrome-admin@google.com [Tue, 21 Oct 2014 14:36:44 +0000 (14:36 +0000)]
Update .DEPS.git

git-svn-id: svn://svn.chromium.org/native_client/trunk/src/native_client@13961 fcba33aa-ac0c-11dd-b9e7-8d5594d729c2

10 days agoSimplify irt-linkage and fix an issue for MIPS
petarj@mips.com [Tue, 21 Oct 2014 10:19:38 +0000 (10:19 +0000)]
Simplify irt-linkage and fix an issue for MIPS

When built as static, MIPS irt is expected to be in one 256MB-aligned region
in order to use 'jal'. This is not the case in the fake "too-close-to-max"
case when first link is performed. Thus, this patch simplifies the irt link
procedure by removing "too-close-to-max" case, so we always use the second
link attempt to align and fit irt correctly.

This fixes number of linker issues when building irt as static for MIPS.

BUG= linker issues when building irt as static for MIPS

Review URL: https://codereview.chromium.org/663143002

git-svn-id: svn://svn.chromium.org/native_client/trunk/src/native_client@13960 fcba33aa-ac0c-11dd-b9e7-8d5594d729c2

10 days agoUpdate .DEPS.git
chrome-admin@google.com [Tue, 21 Oct 2014 09:49:07 +0000 (09:49 +0000)]
Update .DEPS.git

git-svn-id: svn://svn.chromium.org/native_client/trunk/src/native_client@13959 fcba33aa-ac0c-11dd-b9e7-8d5594d729c2

10 days agoUpdate .DEPS.git
chrome-admin@google.com [Tue, 21 Oct 2014 09:48:43 +0000 (09:48 +0000)]
Update .DEPS.git

git-svn-id: svn://svn.chromium.org/native_client/trunk/src/native_client@13958 fcba33aa-ac0c-11dd-b9e7-8d5594d729c2

10 days agoUpdate .DEPS.git
chrome-admin@google.com [Tue, 21 Oct 2014 05:16:15 +0000 (05:16 +0000)]
Update .DEPS.git

git-svn-id: svn://svn.chromium.org/native_client/trunk/src/native_client@13957 fcba33aa-ac0c-11dd-b9e7-8d5594d729c2

10 days agoUpdate .DEPS.git
chrome-admin@google.com [Tue, 21 Oct 2014 05:15:15 +0000 (05:15 +0000)]
Update .DEPS.git

git-svn-id: svn://svn.chromium.org/native_client/trunk/src/native_client@13956 fcba33aa-ac0c-11dd-b9e7-8d5594d729c2

10 days agoNon-SFI Mode: Add linux_syscalls directory to the default include path of Non-SFI...
hidehiko@chromium.org [Tue, 21 Oct 2014 02:29:52 +0000 (02:29 +0000)]
Non-SFI Mode: Add linux_syscalls directory to the default include path of Non-SFI gyp rule.

The directory contains some header files which are not provided by newlib.

TEST=Ran trybots.
BUG=https://code.google.com/p/chromium/issues/detail?id=358465

Review URL: https://codereview.chromium.org/639123006

git-svn-id: svn://svn.chromium.org/native_client/trunk/src/native_client@13955 fcba33aa-ac0c-11dd-b9e7-8d5594d729c2

10 days agoClean up conditionalisation in the service_runtime/include/ headers
mseaborn@chromium.org [Mon, 20 Oct 2014 23:21:01 +0000 (23:21 +0000)]
Clean up conditionalisation in the service_runtime/include/ headers

Background: The headers in service_runtime/include/ are meant to be
usable in 3 contexts:
 1) Untrusted code as toolchain headers, munged to strip "NACL_ABI_" prefixes
 2) Untrusted code, directly #included without munging
 3) Trusted code, directly #included without munging

To this end, parts of the headers are conditionalised on
"defined(__native_client__)".  This makes various things work for use
case 3: it disables some parts that would conflict with system
headers, and it enables some "nacl_abi_*" declarations.  However, this
conditional fails to have the same effect for use case 2.

In order to make use cases 2 and 3 work the same, I'm replacing
"defined(__native_client__)" with
"defined(NACL_IN_TOOLCHAIN_HEADERS)".  I'm changing export_header.py
expand out the latter.  NACL_IN_TOOLCHAIN_HEADERS will be a
pseudo-#define: the C preprocessor never actually sees if #defined.

This cleanup should allow us to remove a hack in
src/nonsfi/irt/irt_interfaces.c.  It will reduce the number of
conflicts we have with these headers.

I've done the replacement semi-mechanically.  Some further cleanup
should be possible (e.g. removing "defined(__GLIBC__)" checks), but
I'm not attempting that now.  The only cleanup is to an #include in
sys/dirent.h.

BUG= https://code.google.com/p/nativeclient/issues/detail?id=3909
TEST= main trybots + PNaCl toolchain trybot
R=dschuff@chromium.org

Review URL: https://codereview.chromium.org/640653003

git-svn-id: svn://svn.chromium.org/native_client/trunk/src/native_client@13954 fcba33aa-ac0c-11dd-b9e7-8d5594d729c2

10 days agoPrep for sdk inclusion - make source more relocatable, so
nfullagar@google.com [Mon, 20 Oct 2014 21:51:08 +0000 (21:51 +0000)]
Prep for sdk inclusion - make source more relocatable, so
it can be copied into SDK and released as part of the SDK update.
TEST=manually built, trybots
BUG=none
R=bradnelson@google.com

Review URL: https://codereview.chromium.org/663213002

git-svn-id: svn://svn.chromium.org/native_client/trunk/src/native_client@13953 fcba33aa-ac0c-11dd-b9e7-8d5594d729c2

10 days agoAdd irt_load_optional flag to chrome_main args. Helps w/ making pnacl ld.nexe use...
jvoung@google.com [Mon, 20 Oct 2014 21:34:16 +0000 (21:34 +0000)]
Add irt_load_optional flag to chrome_main args. Helps w/ making pnacl ld.nexe use IRT.

There will be a transitional period where chrome will try
to supply the irt_fd when loading ld.nexe, but ld.nexe
may not be up to date to have a segment gap yet.

We can first build ld.nexe with a segment gap
(https://codereview.chromium.org/668723002/), without
*requiring* the IRT, then bump kMinPnaclVersion. That is
another way to help the issue of the IRT load being
rejected. This is another layer that could help
ease the transition, in case the on-demand update fails.

After the IRT starts being supplied and the segment
gap is present, we can start using the public libs
instead of the private libs.

TEST= run_sel_main_chrome_irt_optional_no_seg_gap_test
TEST= run_sel_main_chrome_irt_optional_with_seg_gap_test
BUG= https://code.google.com/p/nativeclient/issues/detail?id=3914
R=mseaborn@chromium.org

Review URL: https://codereview.chromium.org/668433003

git-svn-id: svn://svn.chromium.org/native_client/trunk/src/native_client@13952 fcba33aa-ac0c-11dd-b9e7-8d5594d729c2

10 days agoBuild gold.nexe with a segment gap, and supply -B, to later support IRT use.
jvoung@google.com [Mon, 20 Oct 2014 20:42:42 +0000 (20:42 +0000)]
Build gold.nexe with a segment gap, and supply -B, to later support IRT use.

This does not yet *require* the IRT, since the private libs
are still linked in first (need a change to the gold
Makefile). Also update the driver to start supplying the -B
flag for the IRT for sel_universal when running gold.nexe.

After that will be the actual change to stop using
the private libs, but we need to make sure Chrome is
ready and supplies the IRT first.

BUG= https://code.google.com/p/nativeclient/issues/detail?id=3914
R=dschuff@chromium.org, mseaborn@chromium.org

Review URL: https://codereview.chromium.org/668723002

git-svn-id: svn://svn.chromium.org/native_client/trunk/src/native_client@13950 fcba33aa-ac0c-11dd-b9e7-8d5594d729c2

10 days agoFilter -fsanitize=undefined from cflags when nacl_bootstrap_lib.
glider@chromium.org [Mon, 20 Oct 2014 19:38:51 +0000 (19:38 +0000)]
Filter -fsanitize=undefined from cflags when nacl_bootstrap_lib.
Add a comment describing why we're removing sanitizer flags.

BUG=420710
R=mseaborn@chromium.org

Review URL: https://codereview.chromium.org/644603003

git-svn-id: svn://svn.chromium.org/native_client/trunk/src/native_client@13949 fcba33aa-ac0c-11dd-b9e7-8d5594d729c2

10 days agoClean up sys/errno.h's #include guard to match the file's name
mseaborn@chromium.org [Mon, 20 Oct 2014 19:28:52 +0000 (19:28 +0000)]
Clean up sys/errno.h's #include guard to match the file's name

BUG=none
TEST=none
R=dschuff@chromium.org

Review URL: https://codereview.chromium.org/665143002

git-svn-id: svn://svn.chromium.org/native_client/trunk/src/native_client@13948 fcba33aa-ac0c-11dd-b9e7-8d5594d729c2

10 days agoallow avx/xop/fma instructions but disable all them via def file attributes.
shyamsundarr@chromium.org [Mon, 20 Oct 2014 17:17:39 +0000 (17:17 +0000)]
allow avx/xop/fma instructions but disable all them via def file attributes.

introduce a def file attribute (disable_untested) which means that an
instruction is disabled because it is untested. As we test these instructions
we will remove this attribute, which will enable them. Changing the DFA to explicitly disallow vmaskmovdqu (which was previously the only AVX instruction in the DFA but disabled via cpufeature_avx which is now allowed).

BUG=https://code.google.com/p/nativeclient/issues/detail?id=3327
R=khim@google.com, kschimpf@google.com

Review URL: https://codereview.chromium.org/662463002

git-svn-id: svn://svn.chromium.org/native_client/trunk/src/native_client@13947 fcba33aa-ac0c-11dd-b9e7-8d5594d729c2

11 days agoUpdate .DEPS.git
chrome-admin@google.com [Mon, 20 Oct 2014 08:39:08 +0000 (08:39 +0000)]
Update .DEPS.git

git-svn-id: svn://svn.chromium.org/native_client/trunk/src/native_client@13946 fcba33aa-ac0c-11dd-b9e7-8d5594d729c2

11 days agoUpdate .DEPS.git
chrome-admin@google.com [Mon, 20 Oct 2014 08:38:52 +0000 (08:38 +0000)]
Update .DEPS.git

git-svn-id: svn://svn.chromium.org/native_client/trunk/src/native_client@13945 fcba33aa-ac0c-11dd-b9e7-8d5594d729c2

11 days agoUpdate .DEPS.git
chrome-admin@google.com [Mon, 20 Oct 2014 08:31:08 +0000 (08:31 +0000)]
Update .DEPS.git

git-svn-id: svn://svn.chromium.org/native_client/trunk/src/native_client@13944 fcba33aa-ac0c-11dd-b9e7-8d5594d729c2

11 days agoUpdate .DEPS.git
chrome-admin@google.com [Mon, 20 Oct 2014 08:30:25 +0000 (08:30 +0000)]
Update .DEPS.git

git-svn-id: svn://svn.chromium.org/native_client/trunk/src/native_client@13943 fcba33aa-ac0c-11dd-b9e7-8d5594d729c2

11 days agoAvoid using mismatch compilers from buildbot.
yyanagisawa@chromium.org [Mon, 20 Oct 2014 00:39:52 +0000 (00:39 +0000)]
Avoid using mismatch compilers from buildbot.

Since buildbots are expected to be used as checking the compiler's
bug before submission.  It should not be good to check it by using
the different version compiler in goma server.

BUG=https://code.google.com/p/nativeclient/issues/detail?id=3933

Fix: forget to import time.

Add import time to avoid NameError.
This is a follow up of https://codereview.chromium.org/581063002/.

Also, as suggested in the comment of above change, WindowsError will
be logged.

BUG=https://code.google.com/p/nativeclient/issues/detail?id=3934

Review URL: https://codereview.chromium.org/649563004

git-svn-id: svn://svn.chromium.org/native_client/trunk/src/native_client@13942 fcba33aa-ac0c-11dd-b9e7-8d5594d729c2

11 days agoUpdate .DEPS.git
chrome-admin@google.com [Sun, 19 Oct 2014 23:48:11 +0000 (23:48 +0000)]
Update .DEPS.git

git-svn-id: svn://svn.chromium.org/native_client/trunk/src/native_client@13941 fcba33aa-ac0c-11dd-b9e7-8d5594d729c2

11 days agoUpdate .DEPS.git
chrome-admin@google.com [Sun, 19 Oct 2014 23:47:36 +0000 (23:47 +0000)]
Update .DEPS.git

git-svn-id: svn://svn.chromium.org/native_client/trunk/src/native_client@13940 fcba33aa-ac0c-11dd-b9e7-8d5594d729c2

12 days agoUpdate .DEPS.git
chrome-admin@google.com [Sat, 18 Oct 2014 19:22:10 +0000 (19:22 +0000)]
Update .DEPS.git

git-svn-id: svn://svn.chromium.org/native_client/trunk/src/native_client@13939 fcba33aa-ac0c-11dd-b9e7-8d5594d729c2

12 days agoUpdate .DEPS.git
chrome-admin@google.com [Sat, 18 Oct 2014 19:21:30 +0000 (19:21 +0000)]
Update .DEPS.git

git-svn-id: svn://svn.chromium.org/native_client/trunk/src/native_client@13938 fcba33aa-ac0c-11dd-b9e7-8d5594d729c2

13 days ago[MIPS] Add missing -mtls-use-call when building irt libraries
petarj@mips.com [Sat, 18 Oct 2014 01:31:09 +0000 (01:31 +0000)]
[MIPS] Add missing -mtls-use-call when building irt libraries

Option "-mtls-use-call" was passed for building irt.nexe but not for
building irt libraries separately. The issue was triggered in Debug build in
Chromium.

BUG= NaCl crashes in Debug build in Chromium

Review URL: https://codereview.chromium.org/663853004

git-svn-id: svn://svn.chromium.org/native_client/trunk/src/native_client@13937 fcba33aa-ac0c-11dd-b9e7-8d5594d729c2

13 days agoAdd third_party/computer_language_benchmarks_game to DEPS
nfullagar@google.com [Fri, 17 Oct 2014 22:54:02 +0000 (22:54 +0000)]
Add third_party/computer_language_benchmarks_game to DEPS
so checkdeps.py passes.
TEST=local run of checkdeps.py
BUG=none
R=jvoung@chromium.org

Review URL: https://codereview.chromium.org/660953003

git-svn-id: svn://svn.chromium.org/native_client/trunk/src/native_client@13936 fcba33aa-ac0c-11dd-b9e7-8d5594d729c2

13 days agoInitial benchmark suite for toolchain side.
nfullagar@google.com [Fri, 17 Oct 2014 22:37:21 +0000 (22:37 +0000)]
Initial benchmark suite for toolchain side.
The benchmarks binarytrees, nbody, and chameneos are from
the computer language benchmarks game.  The benchmark
Life is from the native client sdk demo.
The benchmark timings are printed in a format that gasper
will scrape.  If a benchmark fails, it will show up as
a failure in large tests.
TEST=these benchmarks are, in a sense, tests.
BUG=none
R=bradnelson@google.com

Review URL: https://codereview.chromium.org/658653004

git-svn-id: svn://svn.chromium.org/native_client/trunk/src/native_client@13935 fcba33aa-ac0c-11dd-b9e7-8d5594d729c2

13 days agoAllow 'opt' bots to use GN with is_debug=false ('dbg' bots get debug).
jvoung@google.com [Fri, 17 Oct 2014 20:19:46 +0000 (20:19 +0000)]
Allow 'opt' bots to use GN with is_debug=false ('dbg' bots get debug).

This hopefully makes the sel_ldr built by GN for 'performance_test'
similar to the sel_ldr built by scons.

BUG=none
R=bradnelson@google.com

Review URL: https://codereview.chromium.org/659373002

git-svn-id: svn://svn.chromium.org/native_client/trunk/src/native_client@13934 fcba33aa-ac0c-11dd-b9e7-8d5594d729c2

13 days agoEnable arm callingconv test for varargs and va_list.
jvoung@google.com [Fri, 17 Oct 2014 19:04:21 +0000 (19:04 +0000)]
Enable arm callingconv test for varargs and va_list.

Enable structs, but don't enable doubles because of
possible constant island issues.

Should work now thanks to Roland's change to va_list
definition for arm-nacl-gcc.
See commit in comment #41 of:
BUG= https://code.google.com/p/nativeclient/issues/detail?id=3650

BUG= https://code.google.com/p/nativeclient/issues/detail?id=3143
BUG= http://code.google.com/p/nativeclient/issues/detail?id=2378
R=dschuff@chromium.org

Review URL: https://codereview.chromium.org/661903002

git-svn-id: svn://svn.chromium.org/native_client/trunk/src/native_client@13933 fcba33aa-ac0c-11dd-b9e7-8d5594d729c2

13 days agoKeep the perf data of the trusted version of performance_tests separate.
jvoung@chromium.org [Fri, 17 Oct 2014 18:19:16 +0000 (18:19 +0000)]
Keep the perf data of the trusted version of performance_tests separate.

13910 changed it to use GetPerfEnvDescription() without
a 'trusted' prefix. Revert to old form with 'trusted'
prefix. Keep the perf_prefix, which was added by 13910 to
distinguish between gn and not gn.

This prevents run_trusted_performance_test from
clashing with run_performance_test.

BUG=none

Review URL: https://codereview.chromium.org/665483003

git-svn-id: svn://svn.chromium.org/native_client/trunk/src/native_client@13932 fcba33aa-ac0c-11dd-b9e7-8d5594d729c2

13 days agofix lahf feature detection.
shyamsundarr@chromium.org [Fri, 17 Oct 2014 16:50:13 +0000 (16:50 +0000)]
fix lahf feature detection.

khim@ diagnosed the issue in:
https://codereview.chromium.org/638223002/
Add a test that contains sahf/lahf instructions that runs in sel_ldr.

BUG=https://code.google.com/p/nativeclient/issues/detail?id=3971
R=mseaborn@chromium.org

Review URL: https://codereview.chromium.org/639713008

git-svn-id: svn://svn.chromium.org/native_client/trunk/src/native_client@13931 fcba33aa-ac0c-11dd-b9e7-8d5594d729c2

2 weeks agoUpdate .DEPS.git
chrome-admin@google.com [Fri, 17 Oct 2014 05:37:12 +0000 (05:37 +0000)]
Update .DEPS.git

git-svn-id: svn://svn.chromium.org/native_client/trunk/src/native_client@13930 fcba33aa-ac0c-11dd-b9e7-8d5594d729c2

2 weeks agoUpdate .DEPS.git
chrome-admin@google.com [Fri, 17 Oct 2014 05:18:07 +0000 (05:18 +0000)]
Update .DEPS.git

git-svn-id: svn://svn.chromium.org/native_client/trunk/src/native_client@13929 fcba33aa-ac0c-11dd-b9e7-8d5594d729c2

2 weeks agoDisable flaky IRT extension thread tests on asan mac bots.
dyen@chromium.org [Fri, 17 Oct 2014 00:36:16 +0000 (00:36 +0000)]
Disable flaky IRT extension thread tests on asan mac bots.

R=mcgrathr@chromium.org
BUG= https://code.google.com/p/nativeclient/issues/detail?id=3906
TEST=trybots

Review URL: https://codereview.chromium.org/642143002

git-svn-id: svn://svn.chromium.org/native_client/trunk/src/native_client@13928 fcba33aa-ac0c-11dd-b9e7-8d5594d729c2

2 weeks agoUpdate revision for PNaCl r13918->r13925
dschuff@chromium.org [Thu, 16 Oct 2014 21:20:05 +0000 (21:20 +0000)]
Update revision for PNaCl r13918->r13925

Pull the following PNaCl changes into NaCl:
  r13920: (dschuff@chromium.org) PNaCl: Update LLVM revision in pnacl/COMPONENT_REVISIONS
    | e9104b5: (dschuff@chromium.org) Change usage of naclcall and nacljmp pseudo-instructions to match x86 gas
    | 7197942: (dschuff@chromium.org) Cherrypick Upstream r219811: [MC] Make bundle alignment mode setting idempotent and support nested bundles
  r13924: (dschuff@chromium.org) PNaCl: Update LLVM revision in pnacl/COMPONENT_REVISIONS
    | 6eb1213: (dschuff@chromium.org) Fix mov register size sandbox-hiding frame setup
    | 5ec5bfe: (dschuff@chromium.org) Ensure jump tables get a unique rodata section if their corresponding function has a unique text section

BUG= https://code.google.com/p/nativeclient/issues/detail?id=3966
BUG= https://code.google.com/p/nativeclient/issues/detail?id=3952
R= jvoung@chromium.org, dschuff@chromium.org
TEST=git try
NOTRY=true
(Please LGTM this change and tick the "commit" box)

Review URL: https://codereview.chromium.org/643993003

git-svn-id: svn://svn.chromium.org/native_client/trunk/src/native_client@13927 fcba33aa-ac0c-11dd-b9e7-8d5594d729c2

2 weeks agoFix build directory for LLVM regression test runner
dschuff@chromium.org [Thu, 16 Oct 2014 21:12:31 +0000 (21:12 +0000)]
Fix build directory for LLVM regression test runner

The LLVM regression tests haven't been running on the x86-32
linux toolchain bot because they were looking for llvm_x86_64_linux_work as their working directory.
This fixes the directory specification.

In doing this I discovered a few extra failing tests, which
I added to known_failures under an extra attribute.

R=stichnot@chromium.org, stichnot@chromium.rog

Review URL: https://codereview.chromium.org/656193002

git-svn-id: svn://svn.chromium.org/native_client/trunk/src/native_client@13926 fcba33aa-ac0c-11dd-b9e7-8d5594d729c2

2 weeks agofix the check_decoder_test.
shyamsundarr@chromium.org [Thu, 16 Oct 2014 18:10:39 +0000 (18:10 +0000)]
fix the check_decoder_test.

It is supposed to be manually run when changing the dfa.
However it is broken at top of tree. After this change, "scons dfacheckdecoder" passes again.

Note that the gas,objdump, etc are all taken from source control toolchain (e.g. $SVN_ROOT/native_client/toolchain/linux_x86/nacl_x86_newlib/bin/x86_64-nacl-as)

The issues fixed with this change are:

(a) By default, the nacl gas now emits a NACLALIGN symbol. This changes how objdump does the diassembly but not the validator disassembler which can't read symbols. We make gas omit this via '--strip-local-absolute'.

(b) By default, objdump puts a comment with the absolute address for rip relative addressing that our validator disassembler that doesn't know about addresses doesn't.
e.g. # 0x400408: ff 35 e2 0b 20 00     pushq  0x200be2(%rip)        # 0x600ff0
We fix this by generally ignoring comments.

(c) one of the reserved prefetch instructions will have a new mnemonic with AVX512 that the latest version of objdump we use already reflects. note that it is still forbidden.

BUG=https://code.google.com/p/nativeclient/issues/detail?id=3455
TEST=scons dfacheckdecoder
R=ncbray@chromium.org

Review URL: https://codereview.chromium.org/596023002

git-svn-id: svn://svn.chromium.org/native_client/trunk/src/native_client@13925 fcba33aa-ac0c-11dd-b9e7-8d5594d729c2

2 weeks agoPNaCl: Update LLVM revision in pnacl/COMPONENT_REVISIONS
dschuff@chromium.org [Thu, 16 Oct 2014 18:09:20 +0000 (18:09 +0000)]
PNaCl: Update LLVM revision in pnacl/COMPONENT_REVISIONS

This pulls in the following LLVM changes:

6eb1213: (dschuff@chromium.org) Fix mov register size sandbox-hiding frame setup
5ec5bfe: (dschuff@chromium.org) Ensure jump tables get a unique rodata section if their corresponding function has a unique text section

BUG= https://code.google.com/p/nativeclient/issues/detail?id=3966
BUG= https://code.google.com/p/nativeclient/issues/detail?id=3952
TEST= PNaCl toolchain trybots
R=jvoung@chromium.org

Review URL: https://codereview.chromium.org/660863004

git-svn-id: svn://svn.chromium.org/native_client/trunk/src/native_client@13924 fcba33aa-ac0c-11dd-b9e7-8d5594d729c2

2 weeks agoUpdate nacl_arm_newlib toolchain
mcgrathr@chromium.org [Thu, 16 Oct 2014 17:42:18 +0000 (17:42 +0000)]
Update nacl_arm_newlib toolchain

This brings in the va_list ABI change.

BUG= https://code.google.com/p/nativeclient/issues/detail?id=3650
TEST= trybots
R=jvoung@chromium.org

Review URL: https://codereview.chromium.org/657143003

git-svn-id: svn://svn.chromium.org/native_client/trunk/src/native_client@13923 fcba33aa-ac0c-11dd-b9e7-8d5594d729c2

2 weeks agocleanup special case compatibility with old validator for avx.
shyamsundarr@chromium.org [Thu, 16 Oct 2014 17:04:15 +0000 (17:04 +0000)]
cleanup special case compatibility with old validator for avx.

BUG=https://code.google.com/p/nativeclient/issues/detail?id=3327
R=kschimpf@google.com

Review URL: https://codereview.chromium.org/660853002

git-svn-id: svn://svn.chromium.org/native_client/trunk/src/native_client@13922 fcba33aa-ac0c-11dd-b9e7-8d5594d729c2

2 weeks agoUpdate newlib-based toolchain versions.
sbc@chromium.org [Wed, 15 Oct 2014 22:39:09 +0000 (22:39 +0000)]
Update newlib-based toolchain versions.

This pulls in the following newlib changes:
bf66148 Split posix_spawn.c into 3 different files
a59cc12 libc/posix/posix_spawn.c: include _syslist.h.

BUG= https://code.google.com/p/nativeclient/issues/detail?id=3976
BUG= https://code.google.com/p/nativeclient/issues/detail?id=3973

Review URL: https://codereview.chromium.org/660573006

git-svn-id: svn://svn.chromium.org/native_client/trunk/src/native_client@13921 fcba33aa-ac0c-11dd-b9e7-8d5594d729c2

2 weeks agoPNaCl: Update LLVM revision in pnacl/COMPONENT_REVISIONS
dschuff@chromium.org [Wed, 15 Oct 2014 21:46:23 +0000 (21:46 +0000)]
PNaCl: Update LLVM revision in pnacl/COMPONENT_REVISIONS

This pulls in the following LLVM changes:

e9104b5: (dschuff@chromium.org) Change usage of naclcall and nacljmp pseudo-instructions to match x86 gas
7197942: (dschuff@chromium.org) Cherrypick Upstream r219811: [MC] Make bundle alignment mode setting idempotent and support nested bundles

BUG= https://code.google.com/p/nativeclient/issues/detail?id=3966
TEST= PNaCl toolchain trybots
R=jvoung@chromium.org

Review URL: https://codereview.chromium.org/661583002

git-svn-id: svn://svn.chromium.org/native_client/trunk/src/native_client@13920 fcba33aa-ac0c-11dd-b9e7-8d5594d729c2

2 weeks agoReport S_IFCHR in windows sel_ldr stat()/fstat() calls.
sbc@chromium.org [Wed, 15 Oct 2014 20:34:22 +0000 (20:34 +0000)]
Report S_IFCHR in windows sel_ldr stat()/fstat() calls.

This makes windows and POSIX behavior consistent
and removes the sometimes confusing warning message
produced when stdout/stderr/stdin were fstat'd.

TEST=trybots + local testing with stdout as a command prompt.

Review URL: https://codereview.chromium.org/659583002

git-svn-id: svn://svn.chromium.org/native_client/trunk/src/native_client@13919 fcba33aa-ac0c-11dd-b9e7-8d5594d729c2

2 weeks agotoolchain_build: Update gcc revision
mcgrathr@chromium.org [Wed, 15 Oct 2014 20:08:31 +0000 (20:08 +0000)]
toolchain_build: Update gcc revision

This brings in:

1e19388 Revert va_list padding

BUG= https://code.google.com/p/nativeclient/issues/detail?id=3650
TEST= toolchain trybots
R=jvoung@chromium.org

Review URL: https://codereview.chromium.org/657023009

git-svn-id: svn://svn.chromium.org/native_client/trunk/src/native_client@13918 fcba33aa-ac0c-11dd-b9e7-8d5594d729c2

2 weeks agoUpdate newlib version
sbc@chromium.org [Wed, 15 Oct 2014 18:05:20 +0000 (18:05 +0000)]
Update newlib version

This brings in a single newlib revision:
bf66148 Split posix_spawn.c into 3 different files
a59cc12 libc/posix/posix_spawn.c: include _syslist.h.

BUG= https://code.google.com/p/nativeclient/issues/detail?id=3976
BUG= https://code.google.com/p/nativeclient/issues/detail?id=3973
R=binji@chromium.org

Review URL: https://codereview.chromium.org/651953002

git-svn-id: svn://svn.chromium.org/native_client/trunk/src/native_client@13917 fcba33aa-ac0c-11dd-b9e7-8d5594d729c2

2 weeks agoRemove some mostly-unused debug logging for printing memory layout
mseaborn@chromium.org [Wed, 15 Oct 2014 17:28:14 +0000 (17:28 +0000)]
Remove some mostly-unused debug logging for printing memory layout

This code is only called from mmap_test.c.

NaClMemRegionPrinter() duplicates what NaClVmmapDebug() does, which
mmap_test.c also calls.

NaClAppPrintDetails() duplicates what NaClLogAddressSpaceLayout()
does.

This code is one of the few users of Gio and gprintf(), so removing
this would help with removing Gio/gprintf().

BUG=none
TEST=build

Review URL: https://codereview.chromium.org/646483008

git-svn-id: svn://svn.chromium.org/native_client/trunk/src/native_client@13916 fcba33aa-ac0c-11dd-b9e7-8d5594d729c2

2 weeks agoClean up sysconf() test to address a TODO that depended on a toolchain roll
mseaborn@chromium.org [Wed, 15 Oct 2014 16:37:16 +0000 (16:37 +0000)]
Clean up sysconf() test to address a TODO that depended on a toolchain roll

BUG=https://code.google.com/p/nativeclient/issues/detail?id=3909
BUG=https://code.google.com/p/nativeclient/issues/detail?id=2714
TEST=run_sysconf_pagesize_test

Review URL: https://codereview.chromium.org/655963003

git-svn-id: svn://svn.chromium.org/native_client/trunk/src/native_client@13915 fcba33aa-ac0c-11dd-b9e7-8d5594d729c2

2 weeks agoAdd NaClDescCreateWithFilePathMetadata fallback.
teravest@chromium.org [Wed, 15 Oct 2014 16:05:13 +0000 (16:05 +0000)]
Add NaClDescCreateWithFilePathMetadata fallback.

If an empty file path is passed to NaClDescCreateWithFilePathMetadata, a
descriptor should be returned without any file info metadata attached to it.

Previously, this function depended on being called with a valid non-empty file
path.

This has been manually tested with a chromium-side change that depends on
this fallback.

BUG=https://code.google.com/p/chromium/issues/detail?id=394130

Review URL: https://codereview.chromium.org/653953003

git-svn-id: svn://svn.chromium.org/native_client/trunk/src/native_client@13914 fcba33aa-ac0c-11dd-b9e7-8d5594d729c2

2 weeks agoMake PNaCl translator use hard-float ABI for ARM nonsfi target.
mazda@chromium.org [Wed, 15 Oct 2014 05:02:23 +0000 (05:02 +0000)]
Make PNaCl translator use hard-float ABI for ARM nonsfi target.

Also add run_arm_float_abi_test to nonsfi_tests so that the test runs in buildbot.

TEST=./scons platform=arm bitcode=1 nonsfi_nacl=1 \
         pnacl_generate_pexe=0 run_arm_float_abi_test
TEST=try
BUG=https://code.google.com/p/nativeclient/issues/detail?id=3869

Review URL: https://codereview.chromium.org/628813004

git-svn-id: svn://svn.chromium.org/native_client/trunk/src/native_client@13913 fcba33aa-ac0c-11dd-b9e7-8d5594d729c2

2 weeks agoUpdate .DEPS.git
chrome-admin@google.com [Wed, 15 Oct 2014 02:20:12 +0000 (02:20 +0000)]
Update .DEPS.git

git-svn-id: svn://svn.chromium.org/native_client/trunk/src/native_client@13912 fcba33aa-ac0c-11dd-b9e7-8d5594d729c2

2 weeks agoUpdate .DEPS.git
chrome-admin@google.com [Wed, 15 Oct 2014 02:19:59 +0000 (02:19 +0000)]
Update .DEPS.git

git-svn-id: svn://svn.chromium.org/native_client/trunk/src/native_client@13911 fcba33aa-ac0c-11dd-b9e7-8d5594d729c2

2 weeks agoAdding a prefix to distinct perf results so they are graphed separately.
bradnelson@google.com [Wed, 15 Oct 2014 00:13:38 +0000 (00:13 +0000)]
Adding a prefix to distinct perf results so they are graphed separately.

We inadvertently have added perf result tags which are duplicates.
The perf capture plumbing in run_test.py seems to honor only the last
item which ran.

For some time we've been running these variants:
- non-irt
- irt
- gn non-irt
- non-ragel non-irt

When dropping the non-ragel variant we have therefore seen a change in result.

Adding a prefix to each variant so that they are graphed separately.
Preserving the existing naming convention for the non-irt version.
Reusing existing perf environment naming scheme, but including the irt prefix and optional external prefix for use with gn.

Variations will now include:
* '' - without irt
* 'with_irt_' - with irt
* 'gn_' - gn built without irt
* 'gn_with_irt_' - gn built with irt (not currently run on the bots)

BUG=None
TEST=trybots
R=jvoung@chromium.org, nfullagar@google.com, nfullagar@chromium.org

Review URL: https://codereview.chromium.org/649193004

git-svn-id: svn://svn.chromium.org/native_client/trunk/src/native_client@13910 fcba33aa-ac0c-11dd-b9e7-8d5594d729c2

2 weeks agoARM: Remove Scons support for using ARM soft-float toolchains
mseaborn@chromium.org [Tue, 14 Oct 2014 22:11:00 +0000 (22:11 +0000)]
ARM: Remove Scons support for using ARM soft-float toolchains

Just assume a hard-float ("hf") toolchain on ARM.

This simplifies the toolchain setup a little.

BUG=none
TEST=build

Review URL: https://codereview.chromium.org/646783003

git-svn-id: svn://svn.chromium.org/native_client/trunk/src/native_client@13909 fcba33aa-ac0c-11dd-b9e7-8d5594d729c2