Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix #2772: Special case Devalify for java.lang.System.* #2781

Merged
merged 7 commits into from Jun 25, 2017
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
8 changes: 8 additions & 0 deletions docs/docs/reference/optimisations.md
@@ -0,0 +1,8 @@
---
layout: doc-page
title: "Local Optimisations"
---

The Dotty compiler implements several local optimisations to generate faster bytecode. These optimisations can be enabled by compiling with the `-optimise` flag. The current best source of documentation about what tree transformations are performed under `-optimise` is the Scaladoc classes in the [localopt package](https://github.com/lampepfl/dotty/tree/master/compiler/src/dotty/tools/dotc/transform/localopt).

Local optimisations assumes no use of Java Reflection to mutate static final fields.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What about non-static final fields, are those safe to mutate?

2 changes: 2 additions & 0 deletions docs/sidebar.yml
Expand Up @@ -51,6 +51,8 @@ sidebar:
url: docs/reference/auto-parameter-tupling.html
- title: Named Type Arguments
url: docs/reference/named-typeargs.html
- title: Local Optimisations
url: docs/reference/optimisations.html
- title: Changed Features
subsection:
- title: Volatile Lazy Vals
Expand Down