diff options
| author | Michael Matz <matz@suse.de> | 2016-09-26 22:31:19 +0200 |
|---|---|---|
| committer | Michael Matz <matz@suse.de> | 2016-12-15 17:47:12 +0100 |
| commit | ad8e14b740f87d814a00f9f0d44301f71ffd7ec6 (patch) | |
| tree | ce081aa8c2e0aada497ddefb52963089dcd336b7 /tests | |
| parent | ce55d03eef8cefff5ed731c0e1176425d59c600f (diff) | |
| download | tinycc-ad8e14b740f87d814a00f9f0d44301f71ffd7ec6.tar.gz tinycc-ad8e14b740f87d814a00f9f0d44301f71ffd7ec6.tar.bz2 | |
opt: Don't emit inline functions from dead code
Inside dead code don't regard inline functions as being
referenced.
Diffstat (limited to 'tests')
| -rw-r--r-- | tests/tcctest.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/tests/tcctest.c b/tests/tcctest.c index 0485a74..7bdffff 100644 --- a/tests/tcctest.c +++ b/tests/tcctest.c @@ -1170,6 +1170,11 @@ void bool_test() extern int undefined_function(void); extern int defined_function(void); +static inline void refer_to_undefined(void) +{ + undefined_function(); +} + void optimize_out(void) { int i = 0 ? undefined_function() : defined_function(); @@ -1264,6 +1269,9 @@ void optimize_out(void) else undefined_function(); + if (defined_function() && 0) + refer_to_undefined(); + if (1) return; printf ("oor:%d\n", undefined_function()); |
