Arnold Schwaighofer
3c755e36aa
ABCOpts: Bail out if we don't know how-to hoist an array operation
...
Instead of assuming we see only certain forms IR.
rdar://28204253
2016-09-19 10:34:32 -07:00
Andrew Trick
c47687da2c
Add an isStrict flag to SIL pointer_to_address. ( #3529 )
...
Strict aliasing only applies to memory operations that use strict
addresses. The optimizer needs to be aware of this flag. Uses of raw
addresses should not have their address substituted with a strict
address.
Also add Builtin.LoadRaw which will be used by raw pointer loads.
2016-07-15 15:04:02 -05:00
Erik Eckstein
0c97cfa6a8
ABCOpt: we should not hoist bounds/overflow checks if the loop has multiple exit edges.
...
fixes rdar://problem/26126534
2016-05-06 15:07:17 -07:00
Arnold Schwaighofer
c65acf0b6f
ABCOpts: Rewrite the code that handles known comparisons to be more general and handle more cases
...
rdar://25965806
2016-04-29 07:55:38 -07:00
Arnold Schwaighofer
aec5001616
ABCOpts: Check for another pattern the compiler will generate with the indexing changes
...
rdar://25940018
2016-04-27 10:51:49 -07:00
Arnold Schwaighofer
010cd2684a
ABCOpts: Remove superflous range checks that fall within the range of the induction variable
...
rdar://25940018
2016-04-27 09:04:00 -07:00
Ge Sen
5ad36b2962
[gardening] Put white spaces in between if/while clauses and braces where it is missing.
...
For instance:
'if (foo){' => 'if (foo) {'
2016-04-02 14:43:45 +08:00
Michael Gottesman
7361e35bb9
Revert "Putting white spaces in between if/while clauses and braces."
2016-04-01 22:00:25 -07:00
Ge Sen
7dd61bdfa9
[gardening] Put white spaces in between if/while clauses and braces where it is missing.
...
For instance:
'if (foo){' => 'if (foo) {'
2016-04-02 08:22:23 +08:00
Erik Eckstein
8af1372ff3
remove unused variable
2016-01-26 09:37:08 -08:00
Erik Eckstein
74d44b74e7
SIL: remove SILValue::getDef and add a cast operator to ValueBase * as a repelacement. NFC.
2016-01-25 15:00:49 -08:00
Erik Eckstein
506ab9809f
SIL: remove getTyp() from SILValue
2016-01-25 15:00:49 -08:00
Erik Eckstein
b745691a38
SIL refactoring: Move some functions out of SILValue and Operand
...
SILValue.h/.cpp just defines the SIL base classes. Referring to specific instructions is a (small) kind of layering violation.
Also I want to keep SILValue small so that it is really just a type alias of ValueBase*.
NFC.
2016-01-25 10:37:03 -08:00
practicalswift
8efa5f587e
[gardening] Remove "-*- C++ -*-" tag from .cpp files
...
Emacs assumes .h files are C files by default which is why the
tag "-*- C++ -*-" is needed.
.cpp files do not have this problem.
2016-01-23 12:09:32 +01:00
practicalswift
1339b5403b
Consistent use of header comment format.
...
Correct format:
//===--- Name of file - Description ----------------------------*- Lang -*-===//
2016-01-04 13:26:31 +01:00
practicalswift
f91525a10f
Consistent placement of "-*- [language] -*-===//" in header.
2016-01-04 09:46:20 +01:00
Zach Panzarino
e3a4147ac9
Update copyright date
2015-12-31 23:28:40 +00:00
practicalswift
fa0b339a21
Fix typos.
2015-12-26 17:51:59 +01:00
practicalswift
db13bcb22e
Fix typos.
2015-12-26 14:11:42 +01:00
ken0nek
fcd8fcee91
Convert [Cc]an not -> [Cc]annot
2015-12-23 00:55:48 +09:00
Dmitri Gribenko
6a66b3cff8
Merge pull request #561 from practicalswift/typos-again
...
[Typo] Replace PR#514-525 with one large PR
2015-12-18 03:37:02 -08:00
Arsen Gasparyan
65f336b849
Fix a typo
2015-12-17 00:57:52 +03:00
practicalswift
8ab8847684
Fix typos.
2015-12-16 22:09:32 +01:00
Dmitri Gribenko
a50b8cd659
Merge pull request #510 from practicalswift/fix-typos-14
...
Fix typos (14 of 30)
2015-12-14 01:07:49 -08:00
practicalswift
a0428d1993
Fix typo: guarantuees → guarantees
2015-12-14 00:11:49 +01:00
practicalswift
03ab74760a
Fix typo: cannonical → canonical
2015-12-14 00:11:20 +01:00
practicalswift
a01cc1e4f2
Fix typo: burried → buried
2015-12-14 00:11:19 +01:00
Tushar
657cd80b30
Fix typo
2015-12-14 00:45:10 +05:30
Kanstantsin Linou
bc732a9ec9
Fix typo in ArrayBoundsCheckOpts.cpp
...
<code>guarantueed</code> -> <code>guaranteed</code>
2015-12-12 20:09:14 +03:00
Andrew Trick
739b0e9c56
Reorganize SILOptimizer directories for better discoverability.
...
(libraries now)
It has been generally agreed that we need to do this reorg, and now
seems like the perfect time. Some major pass reorganization is in the
works.
This does not have to be the final word on the matter. The consensus
among those working on the code is that it's much better than what we
had and a better starting point for future bike shedding.
Note that the previous organization was designed to allow separate
analysis and optimization libraries. It turns out this is an
artificial distinction and not an important goal.
2015-12-11 15:14:23 -08:00