Code Monkey home page Code Monkey logo

emscripten-fastcomp-clang's People

Contributors

aaronballman avatar akyrtzi avatar alexey-bataev avatar annazaks avatar atoker avatar chandlerc avatar chapuni avatar d0k avatar ddunbar avatar djasper avatar douggregor avatar dwblaikie avatar echristo avatar eefriedman avatar espindola avatar gribozavr avatar jrose-apple avatar lattner avatar majnemer avatar nico avatar pcc avatar r4nt avatar rjmccall avatar rnk avatar tkremenek avatar topperc avatar weverything avatar xuzhongxing avatar zmodem avatar zygoloid avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

emscripten-fastcomp-clang's Issues

Fastcomp Backend won't compile.

Errors with:

/home/pmartin/emscripten-src/tools/clang/lib/Basic/Targets.cpp: In function ‘clang::TargetInfo* AllocateTarget(const string&)’:
/home/pmartin/emscripten-src/tools/clang/lib/Basic/Targets.cpp:5427:8: error: ‘asmjs’ is not a member of ‘llvm::Triple’
   case llvm::Triple::asmjs:
        ^
/home/pmartin/emscripten-src/tools/clang/lib/Basic/Targets.cpp:5429:12: error: ‘Emscripten’ is not a member of ‘llvm::Triple’
       case llvm::Triple::Emscripten:
            ^

Cmake error!

The C compiler identification is MSVC 18.0.40629.0
The CXX compiler identification is MSVC 18.0.40629.0
Check for working C compiler: E:/Program Files (x86)/Microsoft Visual Studio 12.0/VC/bin/cl.exe
Check for working C compiler: E:/Program Files (x86)/Microsoft Visual Studio 12.0/VC/bin/cl.exe -- works
Detecting C compiler ABI info
Detecting C compiler ABI info - done
Check for working CXX compiler: E:/Program Files (x86)/Microsoft Visual Studio 12.0/VC/bin/cl.exe
Check for working CXX compiler: E:/Program Files (x86)/Microsoft Visual Studio 12.0/VC/bin/cl.exe -- works
Detecting CXX compiler ABI info
Detecting CXX compiler ABI info - done
Detecting CXX compile features
Detecting CXX compile features - done
Found LLVM_CONFIG as E:/Emscripten/clang/3.2_64bit/bin/llvm-config.exe
usage: llvm-config ... [...]

Get various configuration information needed to compile programs which use
LLVM. Typically called from 'configure' scripts. Examples:
llvm-config --cxxflags
llvm-config --ldflags
llvm-config --libs engine bcreader scalaropts

Options:
--version Print LLVM version.
--prefix Print the installation prefix.
--src-root Print the source root LLVM was built from.
--obj-root Print the object root used to build LLVM.
--bindir Directory containing LLVM executables.
--includedir Directory containing LLVM headers.
--libdir Directory containing LLVM libraries.
--cppflags C preprocessor flags for files that include LLVM headers.
--cflags C compiler flags for files that include LLVM headers.
--cxxflags C++ compiler flags for files that include LLVM headers.
--ldflags Print Linker flags.
--libs Libraries needed to link against LLVM components.
--lib
names Bare library names for in-tree builds.
--libfiles Fully qualified library filenames for makefile depends.
--components List of all possible components.
--targets-built List of all targets currently built.
--host-target Target triple used to configure LLVM.
--build-mode Print build mode of LLVM tree (e.g. Debug or Release).
Typical components:
all All LLVM libraries (default).
engine Either a native JIT or a bitcode interpreter.

E:/Emscripten/clang/3.2_64bit/bin/llvm-config.exe --assertion-mode --bindir --libdir --includedir --prefix --src-root --cmakedir
CMake Error at CMakeLists.txt:33 (message):
llvm-config failed with status 1

The error code is that message(FATAL_ERROR "llvm-config failed with status ${HAD_ERROR}") in the file of CMakeLists.txt .

Clang 3.6 instead of clang 3.4

Hi!
I'm trying to compile em-Dosbox (but it happens the same with any other transcompile I try after updating emscripten).

emcc -v shows:
emcc (Emscripten GCC-like replacement + linker emulating GNU ld ) 1.22.1
clang version 3.9.0 (https://github.com/kripken/emscripten-fastcomp-clang/ 271ce598c3d1fe74efadc254f5be1b57edea9f41) (https://github.com/kripken/emscripten-fastcomp/ 61acfb230665464544f2e8db292f8999fc3c628c) (emscripten 1.36.0 : 1.36.0)
Target: x86_64-unknown-linux-gnu
Thread model: posix
InstalledDir: MyDirectory/emsdk_portable/clang/fastcomp/build_master_64/bin
Found candidate GCC installation: /usr/lib/gcc/i686-linux-gnu/5.4.0
Found candidate GCC installation: /usr/lib/gcc/i686-linux-gnu/6.0.0
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.9
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.9.3
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/5.4.0
Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/6.0.0
Selected GCC installation: /usr/lib/gcc/x86_64-linux-gnu/5.4.0
Candidate multilib: .;@m64
Selected multilib: .;@m64
WARNING root: LLVM version appears incorrect (seeing "(https://github.com/kripken/emscripten-fastcomp-clang/", expected "3.4")
INFO root: (Emscripten: Running sanity checks)

When I try to compile, this error:
/usr/share/emscripten/em++ -O3 -s TOTAL_MEMORY=67108864 --pre-js pre.js -o dosbox.html dosbox.o cpu/libcpu.a debug/libdebug.a dos/libdos.a fpu/libfpu.a hardware/libhardware.a gui/libgui.a ints/libints.a misc/libmisc.a shell/libshell.a hardware/serialport/libserial.a libs/gui_tk/libgui_tk.a
Exception in thread Thread-3:
Traceback (most recent call last):
File "/usr/lib/python2.7/threading.py", line 801, in __bootstrap_inner
self.run()
File "/usr/lib/python2.7/threading.py", line 754, in run
self.__target(*self.__args, **self.__kwargs)
File "/usr/lib/python2.7/multiprocessing/pool.py", line 389, in _handle_results
task = get()
TypeError: ('__init__() takes at least 3 arguments (1 given)', <class 'subprocess.CalledProcessError'>, ())

What am I doing wrong?

Issue compiling with incoming branch of emscripten

[  0%] Built target LLVMTableGen
[  5%] Built target LLVMSupport
[  5%] Built target LLVMHello_exports
[  6%] Built target obj.llvm-tblgen
[  7%] Built target LLVMMCParser
[ 10%] Built target LLVMMC
[ 10%] Built target LLVMMCDisassembler
[ 11%] Built target LLVMObjectYAML
[ 11%] Built target LLVMOption
[ 12%] Built target LLVMDebugInfoCodeView
[ 13%] Built target LLVMDebugInfoDWARF
[ 13%] Built target LLVMSymbolize
[ 16%] Built target LLVMDebugInfoPDB
[ 16%] Built target LLVMLineEditor
[ 16%] Built target FileCheck
[ 17%] Built target llvm-PerfectShuffle
[ 17%] Built target count
[ 17%] Built target not
[ 17%] Built target yaml-bench
[ 17%] Built target LTO_exports
[ 18%] Built target llvm-config
[ 18%] Building CXX object tools/clang/utils/TableGen/CMakeFiles/obj.clang-tblgen.dir/ClangAttrEmitter.cpp.o
[ 18%] Built target libclang_exports
[ 19%] Built target scan-build
[ 19%] Built target scan-view
[ 19%] Built target llvm-mcmarkup
[ 19%] Built target BugpointPasses_exports
[ 19%] Built target llvm-tblgen
[ 19%] Built target AttributeCompatFuncTableGen
[ 19%] Built target intrinsics_gen
[ 19%] Built target LibOptionsTableGen
[ 19%] Built target ClangDriverOptions
[ 19%] Building CXX object lib/IR/CMakeFiles/LLVMCore.dir/AsmWriter.cpp.o
/home/rebecca/workspace/emscripten-fastcomp/tools/clang/utils/TableGen/ClangAttrEmitter.cpp: In function ‘std::unique_ptr<{anonymous}::Argument> createArgument(const llvm::Record&, llvm::StringRef, const llvm::Record*)’:
/home/rebecca/workspace/emscripten-fastcomp/tools/clang/utils/TableGen/ClangAttrEmitter.cpp:1075:54: error: conversion from ‘llvm::ArrayRef<std::pair<llvm::Record*, llvm::SMRange> >’ to non-scalar type ‘llvm::ArrayRef<llvm::Record*>’ requested
     ArrayRef<Record*> Bases = Search->getSuperClasses();
                                                      ^
/home/rebecca/workspace/emscripten-fastcomp/tools/clang/utils/TableGen/ClangAttrEmitter.cpp: In function ‘void emitClangAttrTypeArgList(llvm::RecordKeeper&, llvm::raw_ostream&)’:
/home/rebecca/workspace/emscripten-fastcomp/tools/clang/utils/TableGen/ClangAttrEmitter.cpp:1384:42: error: base operand of ‘->’ has non-pointer type ‘const std::pair<llvm::Record*, llvm::SMRange>’
     if (Args[0]->getSuperClasses().back()->getName() != "TypeArgument")
                                          ^
/home/rebecca/workspace/emscripten-fastcomp/tools/clang/utils/TableGen/ClangAttrEmitter.cpp: In function ‘bool isIdentifierArgument(llvm::Record*)’:
/home/rebecca/workspace/emscripten-fastcomp/tools/clang/utils/TableGen/ClangAttrEmitter.cpp:1422:59: error: base operand of ‘->’ has non-pointer type ‘const std::pair<llvm::Record*, llvm::SMRange>’
     llvm::StringSwitch<bool>(Arg->getSuperClasses().back()->getName())
                                                           ^
/home/rebecca/workspace/emscripten-fastcomp/tools/clang/utils/TableGen/ClangAttrEmitter.cpp: In function ‘void clang::EmitClangAttrClass(llvm::RecordKeeper&, llvm::raw_ostream&)’:
/home/rebecca/workspace/emscripten-fastcomp/tools/clang/utils/TableGen/ClangAttrEmitter.cpp:1479:50: error: conversion from ‘llvm::ArrayRef<std::pair<llvm::Record*, llvm::SMRange> >’ to non-scalar type ‘llvm::ArrayRef<llvm::Record*>’ requested
     ArrayRef<Record *> Supers = R.getSuperClasses();
                                                  ^
tools/clang/utils/TableGen/CMakeFiles/obj.clang-tblgen.dir/build.make:86: recipe for target 'tools/clang/utils/TableGen/CMakeFiles/obj.clang-tblgen.dir/ClangAttrEmitter.cpp.o' failed
make[2]: *** [tools/clang/utils/TableGen/CMakeFiles/obj.clang-tblgen.dir/ClangAttrEmitter.cpp.o] Error 1
CMakeFiles/Makefile2:6747: recipe for target 'tools/clang/utils/TableGen/CMakeFiles/obj.clang-tblgen.dir/all' failed
make[1]: *** [tools/clang/utils/TableGen/CMakeFiles/obj.clang-tblgen.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....
[ 19%] Building CXX object lib/IR/CMakeFiles/LLVMCore.dir/Attributes.cpp.o
[ 19%] Building CXX object lib/IR/CMakeFiles/LLVMCore.dir/AutoUpgrade.cpp.o
[ 19%] Building CXX object lib/IR/CMakeFiles/LLVMCore.dir/BasicBlock.cpp.o
[ 19%] Building CXX object lib/IR/CMakeFiles/LLVMCore.dir/Comdat.cpp.o
[ 19%] Building CXX object lib/IR/CMakeFiles/LLVMCore.dir/ConstantFold.cpp.o
[ 19%] Building CXX object lib/IR/CMakeFiles/LLVMCore.dir/ConstantRange.cpp.o
[ 19%] Building CXX object lib/IR/CMakeFiles/LLVMCore.dir/Constants.cpp.o
[ 19%] Building CXX object lib/IR/CMakeFiles/LLVMCore.dir/Core.cpp.o
[ 19%] Building CXX object lib/IR/CMakeFiles/LLVMCore.dir/DIBuilder.cpp.o
[ 19%] Building CXX object lib/IR/CMakeFiles/LLVMCore.dir/DataLayout.cpp.o
[ 19%] Building CXX object lib/IR/CMakeFiles/LLVMCore.dir/DebugInfo.cpp.o
[ 19%] Building CXX object lib/IR/CMakeFiles/LLVMCore.dir/DebugInfoMetadata.cpp.o
[ 19%] Building CXX object lib/IR/CMakeFiles/LLVMCore.dir/DebugLoc.cpp.o
lib/IR/CMakeFiles/LLVMCore.dir/build.make:374: recipe for target 'lib/IR/CMakeFiles/LLVMCore.dir/DebugLoc.cpp.o' failed
make[2]: *** [lib/IR/CMakeFiles/LLVMCore.dir/DebugLoc.cpp.o] Interrupt
lib/IR/CMakeFiles/LLVMCore.dir/build.make:350: recipe for target 'lib/IR/CMakeFiles/LLVMCore.dir/DebugInfoMetadata.cpp.o' failed
make[2]: *** [lib/IR/CMakeFiles/LLVMCore.dir/DebugInfoMetadata.cpp.o] Interrupt
CMakeFiles/Makefile2:564: recipe for target 'lib/IR/CMakeFiles/LLVMCore.dir/all' failed
make[1]: *** [lib/IR/CMakeFiles/LLVMCore.dir/all] Interrupt
Makefile:138: recipe for target 'all' failed

Is it normal that fastcomp on linux takes ~6GB?

Hi, I'm trying to prepare a Docker image with Emscripten (based on Ubuntu 15.10) and it works fine except image size what is huge. Major chunk of image is consumed by clang. There is an output.

root@98096b18fc46:/emsdk_portable/clang/tag-e1.35.0/build_tag-e1.35.0_32/bin# ls -laSh && du -sh
total 4.6G
-rwxr-xr-x  1 root root 833M Dec  2 16:23 clang-3.7
-rwxr-xr-x  1 root root 415M Dec  2 16:23 clang-check
-rwxr-xr-x  1 root root 339M Dec  2 16:24 opt
-rwxr-xr-x  1 root root 307M Dec  2 16:22 arcmt-test
-rwxr-xr-x  1 root root 278M Dec  2 16:21 llvm-lto
-rwxr-xr-x  1 root root 264M Dec  2 16:17 diagtool
-rwxr-xr-x  1 root root 233M Dec  2 16:20 lli
-rwxr-xr-x  1 root root 230M Dec  2 16:24 llc
-rwxr-xr-x  1 root root 218M Dec  2 16:21 llvm-dsymutil
-rwxr-xr-x  1 root root 216M Dec  2 16:21 bugpoint
-rwxr-xr-x  1 root root 202M Dec  2 16:21 llvm-c-test
-rwxr-xr-x  1 root root 100M Dec  2 16:20 llvm-objdump
-rwxr-xr-x  1 root root  95M Dec  2 16:23 llvm-mc
-rwxr-xr-x  1 root root  92M Dec  2 16:24 llvm-nm
-rwxr-xr-x  1 root root  92M Dec  2 16:24 llvm-ar
-rwxr-xr-x  1 root root  56M Dec  2 16:21 llvm-rtdyld
-rwxr-xr-x  1 root root  49M Dec  2 16:20 llvm-extract
-rwxr-xr-x  1 root root  43M Dec  2 16:17 llvm-cov
-rwxr-xr-x  1 root root  42M Dec  2 16:17 llvm-symbolizer
-rwxr-xr-x  1 root root  42M Dec  2 16:20 llvm-link
-rwxr-xr-x  1 root root  42M Dec  2 16:21 llvm-readobj
-rwxr-xr-x  1 root root  41M Dec  2 16:21 verify-uselistorder
-rwxr-xr-x  1 root root  41M Dec  2 16:17 obj2yaml
-rwxr-xr-x  1 root root  40M Dec  2 16:17 llvm-dwarfdump
-rwxr-xr-x  1 root root  39M Dec  2 16:21 llvm-cxxdump
-rwxr-xr-x  1 root root  38M Dec  2 16:16 llvm-size
-rwxr-xr-x  1 root root  38M Dec  2 16:17 macho-dump
-rwxr-xr-x  1 root root  37M Dec  2 16:20 llvm-diff
-rwxr-xr-x  1 root root  36M Dec  2 16:16 llvm-as
-rwxr-xr-x  1 root root  36M Dec  2 15:55 llvm-tblgen
-rwxr-xr-x  1 root root  32M Dec  2 16:20 llvm-dis
-rwxr-xr-x  1 root root  30M Dec  2 16:21 llvm-stress
-rwxr-xr-x  1 root root  30M Dec  2 16:17 clang-format
-rwxr-xr-x  1 root root  24M Dec  2 16:17 llvm-profdata
-rwxr-xr-x  1 root root  13M Dec  2 15:55 clang-tblgen
-rwxr-xr-x  1 root root 7.7M Dec  2 16:17 yaml2obj
-rwxr-xr-x  1 root root 7.2M Dec  2 15:54 llvm-pdbdump
-rwxr-xr-x  1 root root 5.0M Dec  2 15:54 yaml-bench
-rwxr-xr-x  1 root root 4.8M Dec  2 15:54 FileCheck
-rwxr-xr-x  1 root root 4.6M Dec  2 16:17 llvm-bcanalyzer
-rwxr-xr-x  1 root root 4.1M Dec  2 15:54 llvm-mcmarkup
-rwxr-xr-x  1 root root 2.7M Dec  2 15:54 llvm-config
-rwxr-xr-x  1 root root 2.2M Dec  2 15:54 lli-child-target
-rwxr-xr-x  1 root root 2.1M Dec  2 15:54 not
-rwxr-xr-x  1 root root 324K Dec  2 16:24 c-index-test
-rwxr-xr-x  1 root root 101K Dec  2 15:54 llvm-PerfectShuffle
-rwxr-xr-x  1 root root  22K Dec  2 16:24 c-arcmt-test
-rwxr-xr-x  1 root root  14K Dec  2 15:54 count
drwxr-xr-x  2 root root 4.0K Dec  2 16:24 .
drwxr-xr-x 16 root root 4.0K Dec  7 08:55 ..
-rwxrwxr-x  1 root root 1.7K Dec  2 15:52 llvm-lit
lrwxrwxrwx  1 root root    9 Dec  2 16:23 clang -> clang-3.7
lrwxrwxrwx  1 root root    7 Dec  2 16:24 llvm-ranlib -> llvm-ar
lrwxrwxrwx  1 root root    5 Dec  2 16:23 clang++ -> clang
lrwxrwxrwx  1 root root    5 Dec  2 16:23 clang-cl -> clang

Question is: Can we do something with compilation flags that in default it will produce size optimized clang binary files?

`emsdk install sdk-tag-1.36.8-64bit` on Windows won't succeed

Installing SDK 'sdk-tag-1.36.8-64bit'..
Installing tool 'clang-tag-e1.36.8-64bit'..
Downloading: C:/Program Files/Emscripten/zips/llvm-e1.36.8.zip from https://github.com/kripken/emscripten-fastcomp/archi
ve/1.36.8.zip
Unpacking 'C:/Program Files/Emscripten/zips/llvm-e1.36.8.zip' to 'C:/Program Files/Emscripten/clang/tag-e1.36.8\src'
HTTP error with URL 'https://github.com/kripken/emscripten-fastcomp-clang/archive/1.36.8.zip': HTTP Error 404: Not Found
Installation failed!

There is no 1.36.8 release here so it fails. Can this be fixed? I want to try downgrading from 1.36.9 to 1.36.8 to see emscripten-core/emscripten#4506 gets fixed or not.

clang still reports emscripten version 1.38.31

$ fastcomp/fastcomp/bin/clang -v
clang version 6.0.1 (/b/s/w/ir/cache/git/chromium.googlesource.com-external-github.com-emscripten--core-emscripten--fastcomp--clang 98df4be387dde3e3918fa5bbb5fc43e1a0e1daac) (/b/s/w/ir/cache/git/chromium.googlesource.com-external-github.com-emscripten--core-emscripten--fastcomp 1b4148f39a69c7fc62edadd85e4122b68694dfb7) (emscripten 1.38.31 : 1.38.31)

Presumably because we haven't kept emscripten-version.txt up to date.
Do we even need that version? Upstream clang doesn't report it at all.

error: use of undeclared identifier '__builtin_ia32_readeflags_u32' return __builtin_ia32_readeflags_u32();

Hi just trying to compile this project.

Currently I am using the following commands:

cd ./HiGHS/src
em++ ./interfaces/highs_c_api.cpp -I . -s WASM=1 -o sol.js -std=c++11

There are a number of errors shown in the full log below.

The main error is "undeclared identifier" for many of the ia32 '__builtin_ia32_readeflags_u32', '__builtin_ia32_writeeflags_u32', '__builtin_ia32_rdpmc', ...

Do I need to set a flag? Is this expected?

In file included from ./interfaces/highs_c_api.cpp:2:
In file included from ./Highs.h:19:
In file included from ./lp_data/HighsModelObject.h:14:
In file included from ./lp_data/HighsOptions.h:22:
In file included from ./presolve/Presolve.h:26:
In file included from ./simplex/HTimerPre.h:25:
In file included from /home/banana/Documents/code/emsdk/clang/fastcomp/build_incoming_64/lib/clang/6.0.1/include/x86intrin.h:27:
/home/banana/Documents/code/emsdk/clang/fastcomp/build_incoming_64/lib/clang/6.0.1/include/ia32intrin.h:48:10: error:
use of undeclared identifier
'__builtin_ia32_readeflags_u32'
return __builtin_ia32_readeflags_u32();
^
/home/banana/Documents/code/emsdk/clang/fastcomp/build_incoming_64/lib/clang/6.0.1/include/ia32intrin.h:54:3: error:
use of undeclared identifier
'__builtin_ia32_writeeflags_u32'
__builtin_ia32_writeeflags_u32(__f);
^
/home/banana/Documents/code/emsdk/clang/fastcomp/build_incoming_64/lib/clang/6.0.1/include/ia32intrin.h:60:10: error:
use of undeclared identifier '__builtin_ia32_rdpmc'
return __builtin_ia32_rdpmc(__A);
^
/home/banana/Documents/code/emsdk/clang/fastcomp/build_incoming_64/lib/clang/6.0.1/include/ia32intrin.h:66:10: error:
use of undeclared identifier '__builtin_ia32_rdtscp'
return __builtin_ia32_rdtscp(__A);
^
In file included from ./interfaces/highs_c_api.cpp:2:
In file included from ./Highs.h:19:
In file included from ./lp_data/HighsModelObject.h:14:
In file included from ./lp_data/HighsOptions.h:22:
In file included from ./presolve/Presolve.h:26:
In file included from ./simplex/HTimerPre.h:25:
In file included from /home/banana/Documents/code/emsdk/clang/fastcomp/build_incoming_64/lib/clang/6.0.1/include/x86intrin.h:29:
In file included from /home/banana/Documents/code/emsdk/clang/fastcomp/build_incoming_64/lib/clang/6.0.1/include/immintrin.h:28:
/home/banana/Documents/code/emsdk/clang/fastcomp/build_incoming_64/lib/clang/6.0.1/include/mmintrin.h:47:5: error:
use of undeclared identifier '__builtin_ia32_emms'; did you
mean '__builtin_isless'?
__builtin_ia32_emms();
^
/home/banana/Documents/code/emsdk/clang/fastcomp/build_incoming_64/lib/clang/6.0.1/include/mmintrin.h:47:5: note:
'__builtin_isless' declared here
/home/banana/Documents/code/emsdk/clang/fastcomp/build_incoming_64/lib/clang/6.0.1/include/mmintrin.h:47:25: error:
too few arguments to function call, expected 2, have 0
__builtin_ia32_emms();
^
/home/banana/Documents/code/emsdk/clang/fastcomp/build_incoming_64/lib/clang/6.0.1/include/mmintrin.h:64:19: error:
use of undeclared identifier '__builtin_ia32_vec_init_v2si'
return (__m64)__builtin_ia32_vec_init_v2si(__i, 0);
^
/home/banana/Documents/code/emsdk/clang/fastcomp/build_incoming_64/lib/clang/6.0.1/include/mmintrin.h:81:12: error:
use of undeclared identifier '__builtin_ia32_vec_ext_v2si'
return __builtin_ia32_vec_ext_v2si((__v2si)__m, 0);
^
/home/banana/Documents/code/emsdk/clang/fastcomp/build_incoming_64/lib/clang/6.0.1/include/mmintrin.h:143:19: error:
use of undeclared identifier '__builtin_ia32_packsswb'
return (__m64)__builtin_ia32_packsswb((__v4hi)__m1, (...
^
/home/banana/Documents/code/emsdk/clang/fastcomp/build_incoming_64/lib/clang/6.0.1/include/mmintrin.h:173:19: error:
use of undeclared identifier '__builtin_ia32_packssdw'
return (__m64)__builtin_ia32_packssdw((__v2si)__m1, (...
^
/home/banana/Documents/code/emsdk/clang/fastcomp/build_incoming_64/lib/clang/6.0.1/include/mmintrin.h:203:19: error:
use of undeclared identifier '__builtin_ia32_packuswb'
return (__m64)__builtin_ia32_packuswb((__v4hi)__m1, (...
^
/home/banana/Documents/code/emsdk/clang/fastcomp/build_incoming_64/lib/clang/6.0.1/include/mmintrin.h:230:19: error:
use of undeclared identifier '__builtin_ia32_punpckhbw'
return (__m64)__builtin_ia32_punpckhbw((__v8qi)__m1, ...
^
/home/banana/Documents/code/emsdk/clang/fastcomp/build_incoming_64/lib/clang/6.0.1/include/mmintrin.h:253:19: error:
use of undeclared identifier '__builtin_ia32_punpckhwd'
return (__m64)__builtin_ia32_punpckhwd((__v4hi)__m1, ...
^
/home/banana/Documents/code/emsdk/clang/fastcomp/build_incoming_64/lib/clang/6.0.1/include/mmintrin.h:274:19: error:
use of undeclared identifier '__builtin_ia32_punpckhdq'
return (__m64)__builtin_ia32_punpckhdq((__v2si)__m1, ...
^
/home/banana/Documents/code/emsdk/clang/fastcomp/build_incoming_64/lib/clang/6.0.1/include/mmintrin.h:301:19: error:
use of undeclared identifier '__builtin_ia32_punpcklbw'
return (__m64)__builtin_ia32_punpcklbw((__v8qi)__m1, ...
^
/home/banana/Documents/code/emsdk/clang/fastcomp/build_incoming_64/lib/clang/6.0.1/include/mmintrin.h:324:19: error:
use of undeclared identifier '__builtin_ia32_punpcklwd'
return (__m64)__builtin_ia32_punpcklwd((__v4hi)__m1, ...
^
/home/banana/Documents/code/emsdk/clang/fastcomp/build_incoming_64/lib/clang/6.0.1/include/mmintrin.h:345:19: error:
use of undeclared identifier '__builtin_ia32_punpckldq'
return (__m64)__builtin_ia32_punpckldq((__v2si)__m1, ...
^
/home/banana/Documents/code/emsdk/clang/fastcomp/build_incoming_64/lib/clang/6.0.1/include/mmintrin.h:366:19: error:
use of undeclared identifier '__builtin_ia32_paddb'
return (__m64)__builtin_ia32_paddb((__v8qi)__m1, (__v...
^
/home/banana/Documents/code/emsdk/clang/fastcomp/build_incoming_64/lib/clang/6.0.1/include/mmintrin.h:387:19: error:
use of undeclared identifier '__builtin_ia32_paddw'
return (__m64)__builtin_ia32_paddw((__v4hi)__m1, (__v...
^
fatal error: too many errors emitted, stopping now
[-ferror-limit=]
20 errors generated.
shared:ERROR: compiler frontend failed to generate LLVM bitcode, halting

I update emscripten from 1.35.0 to 1.37.0 and get compile error "unknown type name '__declspec'"

After I build the source of emscripten 1.37.0, I find that emcc do not recognise __declspec. In 1.35.0, It is just a warning, but now it is an error and treat __declspec as a class. The example code and error message is :
class __declspec(dllexport) A
{
};
error : unknown type name '__declspec'

Is it because the new version emscripten do not support this or I need to modify some kinds of configure ?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.