cparser
12 years agoLet the callers of print_statement() handle printing a newline at the end.
Christoph Mallon [Tue, 27 Mar 2012 07:46:43 +0000 (09:46 +0200)]
Let the callers of print_statement() handle printing a newline at the end.

12 years agoRemove pointless null pointer check.
Christoph Mallon [Tue, 27 Mar 2012 07:02:03 +0000 (09:02 +0200)]
Remove pointless null pointer check.

Case label statements always have an inner statement.

12 years agoignore config.mak
Matthias Braun [Mon, 12 Mar 2012 11:48:03 +0000 (12:48 +0100)]
ignore config.mak

12 years agofix -O0 still performing local optimizations
Matthias Braun [Thu, 1 Mar 2012 14:49:11 +0000 (15:49 +0100)]
fix -O0 still performing local optimizations

12 years agoupdate libfirm version
Matthias Braun [Wed, 29 Feb 2012 13:17:09 +0000 (14:17 +0100)]
update libfirm version

12 years agoignore -msse2
Matthias Braun [Wed, 29 Feb 2012 13:16:59 +0000 (14:16 +0100)]
ignore -msse2

12 years agorework os classification
Matthias Braun [Wed, 29 Feb 2012 13:16:46 +0000 (14:16 +0100)]
rework os classification

12 years agoignore TARGET environment variable (Makefiles tend to set that and confuse cparser)
Matthias Braun [Wed, 29 Feb 2012 13:16:04 +0000 (14:16 +0100)]
ignore TARGET environment variable (Makefiles tend to set that and confuse cparser)

12 years agoupdate libfirm reference (so new builtins actually work)
Matthias Braun [Fri, 17 Feb 2012 16:03:22 +0000 (17:03 +0100)]
update libfirm reference (so new builtins actually work)

12 years agoimplement more builtins
Matthias Braun [Fri, 17 Feb 2012 16:00:51 +0000 (17:00 +0100)]
implement more builtins

(bswap, fabs)

12 years agodarwin name in target tripple may contain version
Matthias Braun [Tue, 14 Feb 2012 10:22:05 +0000 (11:22 +0100)]
darwin name in target tripple may contain version

12 years agoupdate libfirm reference
Matthias Braun [Fri, 10 Feb 2012 15:53:01 +0000 (16:53 +0100)]
update libfirm reference

12 years agoupdate for new release
Matthias Braun [Wed, 7 Dec 2011 18:00:22 +0000 (19:00 +0100)]
update for new release

12 years agodisable download from internet in makefile for now
Matthias Braun [Tue, 20 Dec 2011 13:41:17 +0000 (14:41 +0100)]
disable download from internet in makefile for now

12 years agoimplement -dumpversion for gcc compatibility
Matthias Braun [Tue, 20 Dec 2011 13:35:02 +0000 (14:35 +0100)]
implement -dumpversion for gcc compatibility

12 years agofix --help display
Matthias Braun [Tue, 20 Dec 2011 13:34:51 +0000 (14:34 +0100)]
fix --help display

12 years agoFixed wrong enum type.
Sebastian Buchwald [Wed, 21 Dec 2011 13:20:43 +0000 (14:20 +0100)]
Fixed wrong enum type.

12 years agomaturing start and end block isn't necessary anymore with latest libfirm
Matthias Braun [Mon, 19 Dec 2011 09:57:08 +0000 (10:57 +0100)]
maturing start and end block isn't necessary anymore with latest libfirm

12 years agodo not use ir_.*_ptr types
Matthias Braun [Mon, 12 Dec 2011 15:18:24 +0000 (16:18 +0100)]
do not use ir_.*_ptr types

12 years agoDo not link on every make invocation
Andreas Zwinkau [Mon, 19 Dec 2011 14:45:50 +0000 (15:45 +0100)]
Do not link on every make invocation

Previously, ld had to be called, because the static libfirm might have
been updated.

Note the little hack, which apparently makes GNU Make re-evaluated the
Makefile, whenever the phony libfirm_subdir goal has been executed:

> Makefile: libfirm_subdir

12 years agofix noreturn attribute
Matthias Braun [Thu, 8 Dec 2011 17:39:49 +0000 (18:39 +0100)]
fix noreturn attribute

12 years agoignore gcc --unroll-loops
Matthias Braun [Wed, 7 Dec 2011 17:54:57 +0000 (18:54 +0100)]
ignore gcc --unroll-loops

12 years agoupdate NEWS, README
Matthias Braun [Wed, 7 Dec 2011 17:54:47 +0000 (18:54 +0100)]
update NEWS, README

12 years agofix warnings
Matthias Braun [Mon, 28 Nov 2011 17:44:16 +0000 (18:44 +0100)]
fix warnings

12 years agocompound literals are linker_constants
Matthias Braun [Thu, 24 Nov 2011 20:13:20 +0000 (21:13 +0100)]
compound literals are linker_constants

12 years agofix non-scalar type initializers
Matthias Braun [Thu, 24 Nov 2011 20:13:05 +0000 (21:13 +0100)]
fix non-scalar type initializers

12 years agocreate constant initializers as entities in data segment
Matthias Braun [Thu, 24 Nov 2011 20:00:02 +0000 (21:00 +0100)]
create constant initializers as entities in data segment

12 years agocleanup driver interface a bit
Matthias Braun [Fri, 18 Nov 2011 16:16:29 +0000 (17:16 +0100)]
cleanup driver interface a bit

12 years agothe frontend shouldn't care about the inliner
Matthias Braun [Thu, 17 Nov 2011 16:33:46 +0000 (17:33 +0100)]
the frontend shouldn't care about the inliner

12 years agoalways put a mode into assembler constraints
Matthias Braun [Thu, 17 Nov 2011 16:33:39 +0000 (17:33 +0100)]
always put a mode into assembler constraints

12 years agouse ir_export_file so we can also export to stdout
Matthias Braun [Thu, 17 Nov 2011 16:33:03 +0000 (17:33 +0100)]
use ir_export_file so we can also export to stdout

12 years agodo not continue if program import failed
Matthias Braun [Wed, 16 Nov 2011 17:44:43 +0000 (18:44 +0100)]
do not continue if program import failed

12 years agoadapt to latest libfirm
Matthias Braun [Thu, 10 Nov 2011 14:37:23 +0000 (15:37 +0100)]
adapt to latest libfirm

12 years agoremove $Id$, it does not work with git anyway
Matthias Braun [Thu, 10 Nov 2011 13:24:59 +0000 (14:24 +0100)]
remove $Id$, it does not work with git anyway

12 years agofix indentation
Matthias Braun [Thu, 10 Nov 2011 13:22:39 +0000 (14:22 +0100)]
fix indentation

12 years agoremove unused fourcc.h
Matthias Braun [Thu, 10 Nov 2011 13:22:20 +0000 (14:22 +0100)]
remove unused fourcc.h

12 years agoremove unused adt/align.h
Matthias Braun [Thu, 10 Nov 2011 13:21:46 +0000 (14:21 +0100)]
remove unused adt/align.h

12 years agolibfirm doesn't allow Conv Is(xx b) anymore
Matthias Braun [Mon, 7 Nov 2011 12:34:28 +0000 (13:34 +0100)]
libfirm doesn't allow Conv Is(xx b) anymore

12 years agoUse new libFirm version with localopts phase
Andreas Zwinkau [Fri, 4 Nov 2011 14:25:46 +0000 (15:25 +0100)]
Use new libFirm version with localopts phase

12 years agoupdate to a less broken libfirm revision
Matthias Braun [Thu, 3 Nov 2011 17:45:48 +0000 (18:45 +0100)]
update to a less broken libfirm revision

12 years agofix wrong type of case statements
Matthias Braun [Thu, 3 Nov 2011 16:45:09 +0000 (17:45 +0100)]
fix wrong type of case statements

§6.8.4.2:3 The expression of each case label shall be an integer
           constant expression
§6.8.4.2:5 The constant expression in each case label is converted to the
           promoted type of the controlling expression.

12 years agoadapt to new Switch node
Matthias Braun [Wed, 2 Nov 2011 18:00:56 +0000 (19:00 +0100)]
adapt to new Switch node

12 years agoadapt to pn_Builtin_1_result removal
Matthias Braun [Wed, 2 Nov 2011 18:00:45 +0000 (19:00 +0100)]
adapt to pn_Builtin_1_result removal

12 years agolinker flags to the end
Andreas Zwinkau [Fri, 28 Oct 2011 20:09:13 +0000 (22:09 +0200)]
linker flags to the end

12 years agoadapt to firm ir_mode changes
Matthias Braun [Tue, 25 Oct 2011 12:53:37 +0000 (14:53 +0200)]
adapt to firm ir_mode changes

12 years agoast2firm: do not load from incomplete typed objects
Matthias Braun [Tue, 25 Oct 2011 10:53:18 +0000 (12:53 +0200)]
ast2firm: do not load from incomplete typed objects

12 years agosizeof(void) is 1
Matthias Braun [Tue, 25 Oct 2011 10:55:44 +0000 (12:55 +0200)]
sizeof(void) is 1

This only matters when GNU mode is enabled, but then you can perform
pointer arithmetic with void in which case its size should also be 1

12 years agoDisplay libfirm revision on --version
Andreas Zwinkau [Wed, 26 Oct 2011 13:52:17 +0000 (15:52 +0200)]
Display libfirm revision on --version

12 years agoUpdate libfirm submodule reference
Andreas Zwinkau [Tue, 25 Oct 2011 13:47:04 +0000 (15:47 +0200)]
Update libfirm submodule reference

12 years agorepair prepare_main_collect2 hack
Matthias Braun [Thu, 20 Oct 2011 12:58:06 +0000 (14:58 +0200)]
repair prepare_main_collect2 hack

12 years agofix typo on systems with unsigned short as wchar_t
Matthias Braun [Thu, 20 Oct 2011 12:28:36 +0000 (14:28 +0200)]
fix typo on systems with unsigned short as wchar_t

12 years agoupdate submodule reference
Matthias Braun [Wed, 19 Oct 2011 19:47:11 +0000 (21:47 +0200)]
update submodule reference

12 years agoall sources are dependent on config.h
Matthias Braun [Wed, 19 Oct 2011 19:33:14 +0000 (21:33 +0200)]
all sources are dependent on config.h

12 years agouse a better url for the libfirm submodule
Matthias Braun [Wed, 19 Oct 2011 19:32:59 +0000 (21:32 +0200)]
use a better url for the libfirm submodule

12 years agoUpdate libfirm submodule reference
Andreas Zwinkau [Wed, 19 Oct 2011 14:39:15 +0000 (16:39 +0200)]
Update libfirm submodule reference

12 years agovalues resulting from a bitfield store need to be sign extended
Matthias Braun [Fri, 14 Oct 2011 11:03:47 +0000 (13:03 +0200)]
values resulting from a bitfield store need to be sign extended

This should fix testsuite/C/cp_error069.c

12 years agosplit enum type construction and value computation
Matthias Braun [Thu, 13 Oct 2011 12:25:39 +0000 (14:25 +0200)]
split enum type construction and value computation

This fixes testsuite/C/cp_error068.c

12 years agopass -ansi flag to preprocessor
Matthias Braun [Tue, 27 Sep 2011 15:13:10 +0000 (17:13 +0200)]
pass -ansi flag to preprocessor

12 years agoRemove stale and strange entries from .gitignore.
Christoph Mallon [Tue, 11 Oct 2011 08:31:33 +0000 (10:31 +0200)]
Remove stale and strange entries from .gitignore.

12 years agoConsistently use $(BUILDDIR) instead of build.
Christoph Mallon [Tue, 11 Oct 2011 08:20:41 +0000 (10:20 +0200)]
Consistently use $(BUILDDIR) instead of build.

12 years agocparser.bootstrap2 depends on cparser.bootstrap.
Christoph Mallon [Tue, 11 Oct 2011 08:16:40 +0000 (10:16 +0200)]
cparser.bootstrap2 depends on cparser.bootstrap.

12 years agoRemove dubious/unnecessary dependencies.
Christoph Mallon [Tue, 11 Oct 2011 08:16:13 +0000 (10:16 +0200)]
Remove dubious/unnecessary dependencies.

12 years agoList all phony targets in .PHONY.
Christoph Mallon [Tue, 11 Oct 2011 08:15:25 +0000 (10:15 +0200)]
List all phony targets in .PHONY.

12 years agoUse $(CC) -MMD instead of makedepend for tracking header dependencies.
Christoph Mallon [Tue, 11 Oct 2011 08:12:28 +0000 (10:12 +0200)]
Use $(CC) -MMD instead of makedepend for tracking header dependencies.

makedepend might not be available.

12 years agoCreate build directories more systematically.
Christoph Mallon [Tue, 11 Oct 2011 08:02:09 +0000 (10:02 +0200)]
Create build directories more systematically.

In particular this corrects one typo: cpbe2 should be cpbe.

12 years agoProperly update revision.h.
Christoph Mallon [Tue, 11 Oct 2011 07:51:34 +0000 (09:51 +0200)]
Properly update revision.h.

revision.h was not updated anymore once it existed.

12 years agoRemove stale comment.
Christoph Mallon [Tue, 11 Oct 2011 06:39:56 +0000 (08:39 +0200)]
Remove stale comment.

12 years agoReport an error if a struct contains only a flexible array member.
Christoph Mallon [Mon, 10 Oct 2011 12:33:25 +0000 (14:33 +0200)]
Report an error if a struct contains only a flexible array member.

12 years agoUse $(FIRM_HOME) instead of hardcoding libfirm. Also do not unconditionally show...
Christoph Mallon [Mon, 10 Oct 2011 10:59:46 +0000 (12:59 +0200)]
Use $(FIRM_HOME) instead of hardcoding libfirm. Also do not unconditionally show the sub-make command.

12 years agoBuild the debug version with -O0, not -O2.
Christoph Mallon [Mon, 10 Oct 2011 07:09:14 +0000 (09:09 +0200)]
Build the debug version with -O0, not -O2.

13 years agoAdapt CFLAGS according to variant
Andreas Zwinkau [Fri, 30 Sep 2011 12:20:50 +0000 (14:20 +0200)]
Adapt CFLAGS according to variant

13 years agoUpdate libfirm submodule reference
Andreas Zwinkau [Wed, 28 Sep 2011 08:27:27 +0000 (10:27 +0200)]
Update libfirm submodule reference

Some Sparc fixes
One local opt fix

13 years agoUpdate libfirm submodule reference
Andreas Zwinkau [Mon, 26 Sep 2011 08:34:58 +0000 (10:34 +0200)]
Update libfirm submodule reference

13 years agoSet visibility for compilerlib entities.
Manuel Mohr [Fri, 23 Sep 2011 10:47:40 +0000 (12:47 +0200)]
Set visibility for compilerlib entities.

13 years agoSet the compilerlib entity creation callback on non-linux systems.
Manuel Mohr [Thu, 22 Sep 2011 14:35:41 +0000 (16:35 +0200)]
Set the compilerlib entity creation callback on non-linux systems.

13 years agoadapt to latest libfirm
Matthias Braun [Thu, 22 Sep 2011 14:55:41 +0000 (16:55 +0200)]
adapt to latest libfirm

13 years agoadapt to latest libfirm
Matthias Braun [Fri, 16 Sep 2011 11:07:55 +0000 (13:07 +0200)]
adapt to latest libfirm

13 years agoUpdate libfirm submodule reference
Andreas Zwinkau [Thu, 15 Sep 2011 13:55:52 +0000 (15:55 +0200)]
Update libfirm submodule reference

13 years agoInclude adt/strutil.c within Makefile
Andreas Zwinkau [Wed, 14 Sep 2011 16:13:38 +0000 (18:13 +0200)]
Include adt/strutil.c within Makefile

13 years agoUpdate libfirm submodule reference
Andreas Zwinkau [Wed, 14 Sep 2011 14:31:55 +0000 (16:31 +0200)]
Update libfirm submodule reference

13 years agoWhen doing micro-optimisations, then go all the way: Use memcmp() instead of strncmp().
Christoph Mallon [Wed, 14 Sep 2011 09:18:52 +0000 (11:18 +0200)]
When doing micro-optimisations, then go all the way: Use memcmp() instead of strncmp().

13 years agoUse streq() instead of strcmp() == 0.
Christoph Mallon [Wed, 14 Sep 2011 09:10:48 +0000 (11:10 +0200)]
Use streq() instead of strcmp() == 0.

13 years agoUse strstart() instead of strncmp().
Christoph Mallon [Wed, 14 Sep 2011 09:02:50 +0000 (11:02 +0200)]
Use strstart() instead of strncmp().

13 years agoChange strcmp_underscore() to streq_underscore().
Christoph Mallon [Wed, 14 Sep 2011 08:41:31 +0000 (10:41 +0200)]
Change strcmp_underscore() to streq_underscore().

13 years agoMerge the two copies of strcmp_underscore().
Christoph Mallon [Wed, 14 Sep 2011 08:38:18 +0000 (10:38 +0200)]
Merge the two copies of strcmp_underscore().

13 years agoCorrect checking for well known functions: Properly check for __builtin_ prefix.
Christoph Mallon [Wed, 14 Sep 2011 07:20:14 +0000 (09:20 +0200)]
Correct checking for well known functions: Properly check for __builtin_ prefix.

The code checked for _..uiltin_ (. being arbitrary chars) or even crashed on strings shorter than 3 chars.

13 years agoFurther correct re-typedef in C++: Even in system headers only identical (not just...
Christoph Mallon [Wed, 14 Sep 2011 07:15:53 +0000 (09:15 +0200)]
Further correct re-typedef in C++: Even in system headers only identical (not just compatible) typedefs are allowed.

13 years agoMove function descriptions into headers.
Christoph Mallon [Wed, 14 Sep 2011 07:05:25 +0000 (09:05 +0200)]
Move function descriptions into headers.

13 years agoUpdate libfirm submodule reference
Andreas Zwinkau [Tue, 13 Sep 2011 14:55:43 +0000 (16:55 +0200)]
Update libfirm submodule reference

13 years agoadd special treatment for known setjmp/longjmp function names
Matthias Braun [Tue, 13 Sep 2011 11:28:15 +0000 (13:28 +0200)]
add special treatment for known setjmp/longjmp function names

13 years agonoreturn, returns_twice, nothrow are method-type attributes
Matthias Braun [Tue, 13 Sep 2011 11:28:55 +0000 (13:28 +0200)]
noreturn, returns_twice, nothrow are method-type attributes

13 years agoPass -s flag to linker.
Sebastian Buchwald [Tue, 13 Sep 2011 07:45:39 +0000 (09:45 +0200)]
Pass -s flag to linker.

13 years agoFixed typo.
Sebastian Buchwald [Tue, 13 Sep 2011 06:41:52 +0000 (08:41 +0200)]
Fixed typo.

13 years agofix/improve double typedef exceptions
Matthias Braun [Mon, 12 Sep 2011 08:59:06 +0000 (10:59 +0200)]
fix/improve double typedef exceptions

13 years agopass -w flag on to preprocessor
Matthias Braun [Tue, 6 Sep 2011 15:25:42 +0000 (17:25 +0200)]
pass -w flag on to preprocessor

13 years agoThe typeof-type is always set, no need to check and use the expression's type as...
Christoph Mallon [Sat, 10 Sep 2011 10:16:32 +0000 (12:16 +0200)]
The typeof-type is always set, no need to check and use the expression's type as fallback.

13 years agoMake get_type_alignment_compound() static.
Christoph Mallon [Sat, 10 Sep 2011 09:42:06 +0000 (11:42 +0200)]
Make get_type_alignment_compound() static.

13 years agoMake sure that get_type_alignment() is not passed a typedef.
Christoph Mallon [Sat, 10 Sep 2011 09:39:05 +0000 (11:39 +0200)]
Make sure that get_type_alignment() is not passed a typedef.

13 years agoUpdate libfirm submodule reference
Andreas Zwinkau [Tue, 6 Sep 2011 10:26:48 +0000 (12:26 +0200)]
Update libfirm submodule reference

13 years agoparse line-directive flags to detect system headers
Matthias Braun [Mon, 5 Sep 2011 17:53:22 +0000 (19:53 +0200)]
parse line-directive flags to detect system headers

In system headers we disable the redundant decl warning and the
redefinition error for typedefs