Commit Graph

304 Commits

Author SHA1 Message Date
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
Stefano Sanfilippo
f35332cf89 Enable simple optimizations. 2015-03-09 22:48:10 +01:00
Stefano Sanfilippo
f28172e9f2 Adding a Mandelbrot set plotter example. 2015-03-09 22:38:16 +01:00
Stefano Sanfilippo
cf241951a0 Ensure that basic blocks in loops and branches are well formed. 2015-03-09 22:04:10 +01:00
Stefano Sanfilippo
ec76d2a21d Use Pointer<...> in BitcodeEmitter.hpp instead of unique_ptr 2015-03-09 22:03:07 +01:00
Stefano Sanfilippo
dc5fffbddc Cast the expression before deducing truth value in isTrue() 2015-03-09 21:41:11 +01:00
Stefano Sanfilippo
2d58363c50 Ext or trunc for integers types, not bitcast. 2015-03-09 14:26:25 +01:00
Stefano Sanfilippo
1f4fec77b3 Fix error reporting in FunctionPrototype bitcode emitter. 2015-03-09 13:58:43 +01:00
Stefano Sanfilippo
ea94de076d Force return type of main to int in CppEmitter. 2015-03-09 13:52:34 +01:00
Stefano Sanfilippo
e46ddfcd80 Fixing error message for parameter number mismatch in function call. 2015-03-09 13:43:22 +01:00
Stefano Sanfilippo
12ea83a4af Make sure vectors are not empty when calling back(). 2015-03-09 13:35:33 +01:00
Stefano Sanfilippo
0c3702ea34 Single ret point in functions, so that a ret is always in the codepath. 2015-03-09 12:33:10 +01:00