On Fri, May 26, 2017 at 3:03 PM, <[email protected]> wrote:
> Hi,
>
> Can anyone point in some direction to work on v8.
> Please.
> I did have a look a lot of issues.
>
> For e.g. how about something like this -
> https://bugs.chromium.org/p/v8/issues/detail?id=2051&q=&colspec=ID%20Type%20Status%20Priority%20Owner%20Summary%20HW%20OS%20Component%20Stars
> :)
>
> Thanks a lot in advance.
>
> - Umair
The x87 backend has bitrotted after the move to GN, maybe that is
something you would like to work on?
Fixing it up is a matter of adapting the build system (see attached
diff, apply to the build/ directory) and porting relevant patches. I
did some work on it last month[0] but I ran out of time. Feel free to
pick up where I left off, no attribution needed.
[0] https://github.com/bnoordhuis/v8/commits/x87
--
--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev
---
You received this message because you are subscribed to the Google Groups
"v8-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/d/optout.
diff --git a/config/compiler/BUILD.gn b/config/compiler/BUILD.gn
index 092991d..38665a8 100644
--- a/config/compiler/BUILD.gn
+++ b/config/compiler/BUILD.gn
@@ -200,8 +200,8 @@ config("compiler") {
# See also https://crbug.com/533294
cflags += [ "--param=ssp-buffer-size=4" ]
- # The x86 toolchain currently has problems with stack-protector.
- if (is_android && current_cpu == "x86") {
+ # The x86 and x87 toolchains currently have problems with
stack-protector.
+ if (is_android && (current_cpu == "x86" || current_cpu == "x87")) {
cflags += [ "-fno-stack-protector" ]
} else {
cflags += [ "-fstack-protector" ]
@@ -582,6 +582,9 @@ config("compiler_cpu_abi") {
"-mmmx",
]
}
+ } else if (current_cpu == "x87") {
+ cflags += [ "-m32", "-march=i586" ]
+ ldflags += [ "-m32", "-march=i586" ]
} else if (current_cpu == "arm") {
if (is_clang && !is_android && !is_nacl) {
cflags += [ "--target=arm-linux-gnueabihf" ]
diff --git a/config/features.gni b/config/features.gni
index d143dac..b925b0a 100644
--- a/config/features.gni
+++ b/config/features.gni
@@ -25,7 +25,8 @@ declare_args() {
# Temporarily disable nacl on arm64 linux to get rid of compilation errors.
# TODO(mcgrathr): When mipsel-nacl-clang is available, drop the exclusion.
enable_nacl = !is_ios && !is_android && !is_chromecast &&
- current_cpu != "mipsel" && !(is_linux && target_cpu == "arm64")
+ current_cpu != "mipsel" && current_cpu != "x87" &&
+ !(is_linux && target_cpu == "arm64")
# Non-SFI is not yet supported on mipsel
enable_nacl_nonsfi = current_cpu != "mipsel"
diff --git a/config/features.gni b/config/features.gni
index d143dac..b925b0a 100644
--- a/config/features.gni
+++ b/config/features.gni
@@ -25,7 +25,8 @@ declare_args() {
# Temporarily disable nacl on arm64 linux to get rid of compilation errors.
# TODO(mcgrathr): When mipsel-nacl-clang is available, drop the exclusion.
enable_nacl = !is_ios && !is_android && !is_chromecast &&
- current_cpu != "mipsel" && !(is_linux && target_cpu == "arm64")
+ current_cpu != "mipsel" && current_cpu != "x87" &&
+ !(is_linux && target_cpu == "arm64")
# Non-SFI is not yet supported on mipsel
enable_nacl_nonsfi = current_cpu != "mipsel"
diff --git a/toolchain/linux/BUILD.gn b/toolchain/linux/BUILD.gn
index 3be5c36..4bf6a02 100644
--- a/toolchain/linux/BUILD.gn
+++ b/toolchain/linux/BUILD.gn
@@ -102,6 +102,25 @@ gcc_toolchain("x86") {
}
}
+gcc_toolchain("x87") {
+ cc = "gcc"
+ cxx = "g++"
+
+ readelf = "readelf"
+ nm = "nm"
+ ar = "ar"
+ ld = cxx
+
+ # Output linker map files for binary size analysis.
+ enable_linker_map = true
+
+ toolchain_args = {
+ current_cpu = "x87"
+ current_os = "linux"
+ is_clang = false
+ }
+}
+
clang_toolchain("clang_x64") {
# Output linker map files for binary size analysis.
enable_linker_map = true