Commit Graph

315 Commits

Author SHA1 Message Date
Stefano Sanfilippo
439ef31f94 Support LLVM 7, 8 and 9. Bump default required version to 7.
Fixes #48.
2019-12-09 18:46:43 +01:00
Stefano Sanfilippo
1bdb2d64c9 Build system fixes. 2019-12-09 18:44:36 +01:00
Stefano Sanfilippo
4be7463cb3 Replace deprecated TypeBuilder with FunctionType::get.
The TypeBuilder API has been removed in https://reviews.llvm.org/D56573, and breaks compilation in LLVM 9+.
2019-12-09 18:04:08 +01:00
Stefano Sanfilippo
21f27ec261 Enable C++11 and strict checks for all code, msvc compatibility. 2019-07-07 10:07:28 +02:00
Stefano Sanfilippo
25110521d0 Check LLVM version, rename RAGEL to RAGEL_EXECUTABLE. 2019-07-07 09:53:59 +02:00
Stefano Sanfilippo
08368b178c Update clang-format config, run it. 2019-07-07 09:53:59 +02:00
Stefano Sanfilippo
7a72294426 Build a tarball with "make package". 2019-06-25 10:44:10 +02:00
Stefano Sanfilippo
e48cb899f4 Merge branch 'master' of github.com:esseks/monicelli 2019-06-25 10:36:14 +02:00
Stefano Sanfilippo
c4c70182a1 Improve build scripts, add MONICELLI_ARCH cache variable. 2019-06-25 10:35:02 +02:00
Stefano Sanfilippo
6c29cadd86
Bump LLVM version to 6.0 in the README. 2019-06-24 11:44:21 +02:00
Stefano Sanfilippo
68dee1250d Port the build scripts to CMake 3.5, refactor them.
* Use the official LLVMConfig rather than our FindLLVM.
* Add target rule for Ragel.
* Remove useless dependencies by only compiling for the native target.
* Use target rules.
2019-06-24 11:02:46 +02:00
Stefano Sanfilippo
3b5a9be6b9 Emit position independent code by default, to enable support for shared libraries and PIE.
PIE is now default on Ubuntu LTS. PIC can be disabled with --no-pic.
2018-12-25 14:12:35 +01:00
Stefano Sanfilippo
ab596da379 Port Monicelli to LLVM 6.0 2018-09-16 14:24:27 +02:00
Stefano Sanfilippo
7f2a9a34a8 Push Monicelli 2.0 "Cofandina" 2018-09-16 14:24:27 +02:00
Stefano Sanfilippo
8aa5c1a575 Merge branch 'location' 2015-03-27 12:02:55 +01:00
Stefano Sanfilippo
554f80ac5d Keeping track of locations in parser. 2015-03-26 15:19:07 +01:00
Stefano Sanfilippo
4c9c5dc13b Pass current node to reportError function.
This way, the location is included in the error message.
2015-03-26 15:18:44 +01:00
Stefano Sanfilippo
7c5b760a94 Add location traits to AST nodes.
This way, we keep trace of the exact source location where a
statement or symbol was defined and we are able to emit
more precise error messages in LLVM mode.
2015-03-26 14:43:42 +01:00
Stefano Sanfilippo
5c05d96b39 Merge branch 'master' into location 2015-03-25 01:36:26 +01:00
Stefano Sanfilippo
3dc5dc604a Ensure that a proper bb is created when "else" is omitted in a branch. 2015-03-25 01:32:49 +01:00
Stefano Sanfilippo
69f54847b4 Fixing typo in HEXDIGIT regex. 2015-03-25 01:32:38 +01:00
Stefano Sanfilippo
d7fe87ee6e Add missing header in BitcodeEmitter.cpp 2015-03-25 01:26:15 +01:00
Stefano Sanfilippo
aa927e698b Add Netbeans files to gitignore. 2015-03-25 01:26:01 +01:00
Stefano Sanfilippo
425dc1d9f4 Fixing typo in HEXDIGIT regex. 2015-03-12 18:59:45 +01:00
Stefano Sanfilippo
1ba0e79c01 Making output operator for Type and Operator part of the iface. 2015-03-12 17:52:27 +01:00
Stefano Sanfilippo
09c69f163f Adding template using decl to compile features check. 2015-03-12 15:25:15 +01:00
Stefano Sanfilippo
f2ee32ca80 Remove unused headers. 2015-03-11 00:58:31 +01:00
Stefano Sanfilippo
6e832cf2f4 Use type shorthand macros in bitcode emitter. 2015-03-11 00:57:14 +01:00
Stefano Sanfilippo
a191342dec Adding fibonacci example. 2015-03-11 00:52:53 +01:00
Stefano Sanfilippo
16d0e877bf Fix YAML-cpp minimum version required. 2015-03-11 00:50:08 +01:00
Stefano Sanfilippo
a0a94d13eb Additional checks on input files. 2015-03-10 21:21:54 +01:00
Stefano Sanfilippo
f83f3759d3 Qualify global regexes as static const in main. 2015-03-10 21:09:22 +01:00
Stefano Sanfilippo
ca8a86d217 Updating list of dependencies in readme. 2015-03-10 21:00:03 +01:00
Stefano Sanfilippo
47302ea0de Slightly improved error reporting for << and >>. 2015-03-10 20:57:25 +01:00
Stefano Sanfilippo
d10d8cf3fd Fix compile time errors in hello world. 2015-03-10 20:53:51 +01:00
Stefano Sanfilippo
69c4a80c81 Fix README for C++ transpiler. 2015-03-10 19:51:45 +01:00
Stefano Sanfilippo
eb448f6ae5 Clearer messages on command line. 2015-03-10 19:48:53 +01:00
Stefano Sanfilippo
f3356d5906 Add back the option to emit C++ instead of LLVM bitcode. 2015-03-10 19:45:43 +01:00
Stefano Sanfilippo
8061e9dd90 Merge branch 'agatti-homebrew' 2015-03-10 15:44:28 +01:00
Stefano Sanfilippo
a34efebff9 Adding forgotten <iostream> include. 2015-03-10 15:44:07 +01:00
Stefano Sanfilippo
94dca845a5 Merge branch 'homebrew' of https://github.com/agatti/monicelli into agatti-homebrew
Conflicts:
	CMakeLists.txt
2015-03-10 15:43:55 +01:00
Stefano Sanfilippo
22f4c334b7 Adding command line options parser 2015-03-10 14:36:32 +01:00
Stefano Sanfilippo
04e031a6a0 Adding minimal test case for dead basic block optimization. 2015-03-10 13:33:34 +01:00
Stefano Sanfilippo
ba5dbde1ea Build distributable packages with CPack 2015-03-10 13:32:43 +01:00
Stefano Sanfilippo
c9c0e72bec Add install rules to CMake build scripts. 2015-03-10 13:31:02 +01:00
Stefano Sanfilippo
d8e13b54fe Adding supercazzola version of mandebrot.mc 2015-03-10 01:41:58 +01:00
Stefano Sanfilippo
6e20935a1b Grouping source files under src/ directory. 2015-03-10 01:28:43 +01:00
Stefano Sanfilippo
8b355d8003 Adding a turtle graphics example with an external module. 2015-03-10 01:21:45 +01:00
Stefano Sanfilippo
4df447f23e Adding support for declaration of external modules as .mm files. 2015-03-10 00:52:51 +01:00
Stefano Sanfilippo
ef0e1be751 Convenience ctor for Id from std::string. 2015-03-10 00:48:28 +01:00