Daniel Dunbar
fc8d8effb6
ccc: Bug fix and gcc compatibility tweak.
...
- --gstabs only goes to Darwin/Assembler when dealing with an
assembly file from the command line.
- Relative placement of -o option for cc1 moves depending on
-fsyntax-only/-S, how quaint.
llvm-svn: 62152
2009-01-13 06:25:31 +00:00
Daniel Dunbar
34bafa4a40
ccc: Add option groups.
...
- Simple mechanism for group together sets of options so the driver
can efficiently deal with them as a group (i.e., for forwarding -i*
to cc1).
- Use to finish off the major missing pieces of Darwin/CC1 support.
llvm-svn: 62149
2009-01-13 05:54:38 +00:00
Daniel Dunbar
fab583b7c6
ccc: Darwin/CC1: Hardcode (for now) some -m options to match gcc.
...
llvm-svn: 62146
2009-01-13 04:51:51 +00:00
Daniel Dunbar
8af0d3447e
ccc: Allow host to over-ride default arch based on command line
...
arguments (e.g., -m32 and -m64).
llvm-svn: 62145
2009-01-13 04:05:40 +00:00
Daniel Dunbar
260c84657f
ccc: Darwin/CC1: Be bug compatible with gcc in a corner case.
...
llvm-svn: 62131
2009-01-13 01:04:40 +00:00
Daniel Dunbar
dd0efa8aad
ccc: Bug fix, output can be NULL.
...
llvm-svn: 62108
2009-01-12 22:19:59 +00:00
Daniel Dunbar
f538cfa254
ccc: Even more Darwin/cc1 argument translation support.
...
llvm-svn: 62105
2009-01-12 21:44:10 +00:00
Daniel Dunbar
df5598444a
ccc: Add leading space in -### output to match gcc.
...
llvm-svn: 62097
2009-01-12 19:36:35 +00:00
Daniel Dunbar
b1a40a6a58
ccc: (Darwin) More argument translation for Darwin/Compile tool.
...
llvm-svn: 62093
2009-01-12 18:51:02 +00:00
Daniel Dunbar
d0b0eca12a
ccc: (Darwin) More argument translation for Darwin/Compile tool.
...
llvm-svn: 62089
2009-01-12 17:53:19 +00:00
Daniel Dunbar
999c85542a
ccc: (Darwin) Start implementing argument translation for
...
Darwin/Compile tool.
llvm-svn: 62085
2009-01-12 09:23:15 +00:00
Daniel Dunbar
f12e40736a
ccc: When constructing a named output, only use base name (not full
...
path).
llvm-svn: 62083
2009-01-12 07:48:07 +00:00
Daniel Dunbar
e42e520a57
ccc: (Darwin) Move path resolution into ToolChain.
...
llvm-svn: 62082
2009-01-12 07:45:49 +00:00
Daniel Dunbar
17bbcfd5a0
ccc: Implement the rest of Darwin/Assembler argument translation.
...
llvm-svn: 62081
2009-01-12 07:40:25 +00:00
Daniel Dunbar
c11d8d4a09
ccc: Implement macosx-version-min conditions (including a bug fix).
...
llvm-svn: 62079
2009-01-12 05:02:38 +00:00
Daniel Dunbar
e84d6ed8f8
ccc: Generalize Darwin/Link tool based on Darwin version.
...
llvm-svn: 62078
2009-01-12 04:21:12 +00:00
Daniel Dunbar
02cd7e4070
ccc: Support arguments which behave like linker inputs.
...
- Support comma joined options which magically turn into multiple
value arguments (e.g., -Wl,)
- Split out separate Arg::render routine for when an argument is
being rendered as an input (as opposed to in its original form).
- Add option flag for options which should be rendered without the
option when they are used as an input (e.g., -Xlinker or -o).
- Support -weak-l..., -weak_framework, and -weak_library.
llvm-svn: 62075
2009-01-12 03:33:58 +00:00
Daniel Dunbar
027c5fbb6d
ccc: (Darwin) Pass -ObjC to linker if -ObjC, -ObjC++ or -fobjc is
...
present.
llvm-svn: 62070
2009-01-12 02:24:21 +00:00
Daniel Dunbar
fd22768b08
ccc: Add fairly complete argument translation for Darwin link step.
...
- Some things are still hardcoded, and macosx-version-min comparison
isn't implemented, but otherwise this very closely matches gcc.
- The one exception is that arguments (like -framework or -Wl,) which are
treated as linker inputs instead of options are not being
forwarded yet.
llvm-svn: 62059
2009-01-11 23:13:15 +00:00
Daniel Dunbar
3b43cf6169
ccc: Add several convenience methods for argument translation.
...
llvm-svn: 62057
2009-01-11 22:42:24 +00:00
Daniel Dunbar
39a5c22c40
ccc: Add and name a host of arguments.
...
- Also, fix bug in MultipleValuesOption which was accepting joined
arguments.
- Add ArgList::getArgs, provides iterator over all arg instances for a
given option.
- Option definition is very much in need of cleaning...
llvm-svn: 62054
2009-01-11 22:12:37 +00:00
Daniel Dunbar
adf3e5bdbc
ccc: Give the Host an opportunity to switch ToolChains when binding
...
archs (as a driver driver).
llvm-svn: 62053
2009-01-11 22:06:22 +00:00
Daniel Dunbar
10d5adf031
ccc: Print -### output on stderr to match gcc.
...
llvm-svn: 62052
2009-01-11 22:03:55 +00:00
Daniel Dunbar
cb8d7e131c
ccc: Introduce ToolChains for mapping Actions to Tools which can
...
perform them.
- A ToolChain is a coherent set of tools use in a compilation
process. The idea is that a ToolChain holds roughly the information
(specs, search paths, etc.) that is in a single gcc binary.
- The default ToolChain is selected by the host and will generally
correspond to what the default system compiler would do. However,
this can be over-riden for a variety of purposes, for example the
by the driver driver or for testing.
llvm-svn: 62021
2009-01-10 02:07:54 +00:00
Daniel Dunbar
eacf5b174d
ccc: Add generic assembler & linker tools which effectively shell out
...
to gcc.
llvm-svn: 62020
2009-01-10 02:00:04 +00:00
Daniel Dunbar
96977ae536
ccc: Add information about whether type can be user specified (a -x
...
argument) to InputType.
llvm-svn: 62019
2009-01-10 01:50:42 +00:00
Daniel Dunbar
61f97e290a
ccc: Get host information via Driver methods.
...
llvm-svn: 62011
2009-01-09 22:21:24 +00:00
Daniel Dunbar
a3491665a6
ccc: Start defining host information.
...
- For use by the driver in places where the host alters driver
behavior (for example, running as a driver driver on darwin).
- Allow user override for testing purposes.
llvm-svn: 61967
2009-01-09 01:00:40 +00:00
Daniel Dunbar
f8b5992b80
ccc: Make proper synthetic arguments in places we have to construct
...
"fake" options, allowing Tools to be oblivious to whether an argument
is real or synthetic. This kills off DerivedArg & a number of FIXMEs.
llvm-svn: 61871
2009-01-07 18:54:26 +00:00
Daniel Dunbar
7792e90f83
ccc: Change Command to take list of strings for argv instead of Arg
...
instances; this just complicated things and doesn't seem to provide
any benefit.
llvm-svn: 61869
2009-01-07 18:40:45 +00:00
Daniel Dunbar
de482c408c
ccc: Extend ArgList to support indexing into a synthetic arg array
...
(for killing off DerivedArg).
llvm-svn: 61846
2009-01-07 01:57:39 +00:00
Daniel Dunbar
d315a274aa
ccc: Refactor so that all accesses to actual input strings go through
...
the ArgList.
llvm-svn: 61844
2009-01-07 01:29:28 +00:00
Daniel Dunbar
697867dadd
ccc: Remove ValueArg::setValue, this is no longer used.
...
llvm-svn: 61794
2009-01-06 06:32:49 +00:00
Daniel Dunbar
85a868f8cc
ccc: Track last actual argument instance for each option & change
...
driver to lookup this way instead of manually scanning arguments in
multiple places.
llvm-svn: 61793
2009-01-06 06:12:13 +00:00
Daniel Dunbar
e5e454e199
ccc: Use dummy InputOption and UnknownOption classes instead of
...
InputArg and UnknownArg.
- Every argument now always corresponds to some option, which
simplifies other code.
llvm-svn: 61783
2009-01-06 02:30:10 +00:00
Daniel Dunbar
e31bfdd7c7
ccc: Introduce ArgList for keeping input argv & parsed Args together.
...
llvm-svn: 61780
2009-01-06 01:35:44 +00:00
Daniel Dunbar
6e01600398
Add prototype ccc rewrite.
...
- Entry point is tools/ccc/xcc until we are a functional replacement
for ccc.
This is highly experimental (FIXME/LOC ratio of 3.4%), quite crufty,
and barely usable (and then only on my specific Darwin). However, many
of the right ideas are present, and it already fixes a number of
things gcc gets wrong.
The major missing component is argument translation for tools
(translating driver arguments into cc1/ld/as/etc. arguments). This is
a large part of the driver functionality and will probably double the
LOC, but my hope is that the current architecture is relatively
stable.
Documentation & motivation to follow soon...
llvm-svn: 61739
2009-01-05 19:53:30 +00:00
Ted Kremenek
1e0d95e17e
"missing ivar release" is a performance bug.
...
llvm-svn: 58436
2008-10-30 17:29:54 +00:00
Ted Kremenek
4bc52fdd75
Generalize searching for the keyword "leak" in a bug type.
...
llvm-svn: 58115
2008-10-24 21:23:51 +00:00
Ted Kremenek
049ba7fbb1
For Radar reporting, null dereferences should be default classified as "Crash/Hang/Data loss" <rdar://problem/6315624>
...
llvm-svn: 58045
2008-10-23 21:36:52 +00:00
Ted Kremenek
7a93cd8ac6
Set reproducibility back to "Always"
...
llvm-svn: 56891
2008-09-30 23:23:58 +00:00
Daniel Dunbar
9e3b917965
scan-view: Remove some debugging prints.
...
llvm-svn: 56864
2008-09-30 17:54:44 +00:00
Ted Kremenek
05f3ccda24
Default reproducibility to "Not applicable"
...
llvm-svn: 56860
2008-09-30 17:28:54 +00:00
Ted Kremenek
9f403161d7
Make "Performance" the default Radar classification for leaks. "Other" for all others (for now).
...
llvm-svn: 56858
2008-09-30 17:12:32 +00:00
Ted Kremenek
fb0fef9157
Make a separate parameter class for "Radar classifications".
...
Do not save the radar classification to the config file.
llvm-svn: 56856
2008-09-30 17:00:30 +00:00
Ted Kremenek
b166299f2b
Add "SelectionParameter" class to represent drop-down boxes.
...
Added "Classification" field to Radar filing.
Modified FileRadar.scpt to take the classification as an argument.
llvm-svn: 56854
2008-09-30 16:37:50 +00:00
Ted Kremenek
fef3c4092d
Conditionally load/save default parameter value from config file.
...
llvm-svn: 56852
2008-09-30 16:11:33 +00:00
Ted Kremenek
094ff0b061
Use objects to represent form parameters. This allows us to abstract away some
...
of the details of HTML rendering of form parameters, and also us with the
ability to delegate other actions (such as in the filling in of default values)
to specific parameter objects.
llvm-svn: 56851
2008-09-30 16:08:13 +00:00
Ted Kremenek
a930b56252
Tabs -> Spaces.
...
llvm-svn: 56833
2008-09-30 05:45:59 +00:00
Daniel Dunbar
068f7f7092
Fix braindead bug, ID number was hardcoded.
...
llvm-svn: 56789
2008-09-29 16:06:43 +00:00
Daniel Dunbar
08971bf2c4
Change Radar reproducibility to "Always".
...
llvm-svn: 56644
2008-09-26 05:00:28 +00:00
Daniel Dunbar
8e519d0d48
Disable report crashes link for the time being.
...
llvm-svn: 56617
2008-09-25 19:59:17 +00:00
Daniel Dunbar
0dbad4670c
Add link to report analyzer failures (parse errors, asserts, etc).
...
llvm-svn: 56606
2008-09-25 06:05:31 +00:00
Daniel Dunbar
d8d1fec6bd
Add scan-view '--allow-all-hosts' option, by default access is now
...
restricted to 127.0.0.1.
llvm-svn: 56563
2008-09-24 17:59:41 +00:00
Daniel Dunbar
fd462af19e
scan-view: Add header and "report bug" links to report pages.
...
llvm-svn: 56470
2008-09-22 21:43:43 +00:00
Daniel Dunbar
d3b096bd5a
scan-view: Add links to open files using default file handler.
...
llvm-svn: 56454
2008-09-22 18:44:46 +00:00
Daniel Dunbar
6c9bf7d92a
scan-view: Update for "button" class change, drop magic resolution of
...
"scanview.css", start action for opening files.
llvm-svn: 56448
2008-09-22 18:05:49 +00:00
Ted Kremenek
2c4a8f414b
Removed scan-view's version of scanview.css.
...
llvm-svn: 56446
2008-09-22 17:55:14 +00:00
Nuno Lopes
47e46ed3da
not executable
...
llvm-svn: 56439
2008-09-22 17:26:14 +00:00
Daniel Dunbar
ed4e3210da
scan-view: Add links from bug reporting forms to report & summary pages.
...
llvm-svn: 56427
2008-09-22 03:08:32 +00:00
Daniel Dunbar
2ef3142b92
scan-view: Search for available port if default is unavailable.
...
llvm-svn: 56426
2008-09-22 02:53:12 +00:00
Daniel Dunbar
34525a91fa
scan-view: Store bug reporter defaults in ~/.scanview.cfg
...
llvm-svn: 56424
2008-09-22 02:27:45 +00:00
Daniel Dunbar
4aed7dede7
scan-view tweak
...
- Require index.html in provided results directory.
llvm-svn: 56423
2008-09-22 01:42:08 +00:00
Daniel Dunbar
8d139d3d40
scan-view tweaks
...
- Use more correct HTTP error codes on (unexpected) errors.
- Use onLoad to set ensure bug submission method gets set correctly.
llvm-svn: 56422
2008-09-22 01:40:14 +00:00
Daniel Dunbar
553fdc6bc7
Improve scan-view report bug (submitted) interface.
...
Give more meaningful error messages / fail gracefully on bad form
input or SMTP errors.
Use button for Report Bug link (where available).
llvm-svn: 56420
2008-09-22 01:21:30 +00:00
Daniel Dunbar
49351e7eb9
Improve scan-view report bug interface.
...
- Pulled css out into Resources/scanview.css
llvm-svn: 56416
2008-09-22 00:11:51 +00:00
Daniel Dunbar
19af4ea47b
scan-view tweaks:
...
- Add simple favicon
- Allow resolving source file paths (should be rethought)
llvm-svn: 56414
2008-09-21 23:02:25 +00:00
Daniel Dunbar
daa26f879e
scan-view tweaks:
...
- Update for scan-build table change.
- Add --auto-reload option (for development, avoids need to restart
server).
- Always send Last-Modified, with a reasonable value for dynamic content.
llvm-svn: 56409
2008-09-21 20:34:58 +00:00
Daniel Dunbar
b9c42108d9
scan-view: Add more information to default bug description and use
...
iframe to embed bug view (for easy reference).
llvm-svn: 56406
2008-09-21 19:08:54 +00:00
Daniel Dunbar
a00b7a8240
Don't add Bugzilla reporter (not yet implemented)
...
llvm-svn: 56404
2008-09-21 19:06:51 +00:00
Ted Kremenek
ebb4245b84
Have ScanView.py generate a "<td></td>" pair in the output HTML instead of having scan-build output an empty (and possibly unused) <td>.
...
llvm-svn: 56393
2008-09-21 03:55:51 +00:00
Daniel Dunbar
025b48dd6e
Make scan-view more robust / friendly when bug reporting fails.
...
llvm-svn: 56382
2008-09-20 01:43:16 +00:00
Daniel Dunbar
d4c2337ef5
Add initial implementation of scan-view
...
- Web based interface to static analyzer.
llvm-svn: 56375
2008-09-19 23:32:11 +00:00