diff --git a/app/helpers/application_helper.rb b/app/helpers/application_helper.rb
index bc07c09cd4a256c87f024d95ba2fa1901597c2d9..bcd400b7e7bb1878eef7be80a287ac24d8cd7dad 100644
--- a/app/helpers/application_helper.rb
+++ b/app/helpers/application_helper.rb
@@ -222,7 +222,9 @@ module ApplicationHelper
   end
 
   def render_markup(file_name, file_content)
-    if asciidoc?(file_name)
+    if gitlab_markdown?(file_name)
+      Haml::Helpers.preserve(markdown(file_content))
+    elsif asciidoc?(file_name)
       asciidoc(file_content)
     else
       GitHub::Markup.render(file_name, file_content).
@@ -233,15 +235,15 @@ module ApplicationHelper
   end
 
   def markup?(filename)
-    Gitlab::MarkdownHelper.markup?(filename)
+    Gitlab::MarkupHelper.markup?(filename)
   end
 
   def gitlab_markdown?(filename)
-    Gitlab::MarkdownHelper.gitlab_markdown?(filename)
+    Gitlab::MarkupHelper.gitlab_markdown?(filename)
   end
 
   def asciidoc?(filename)
-    Gitlab::MarkdownHelper.asciidoc?(filename)
+    Gitlab::MarkupHelper.asciidoc?(filename)
   end
 
   # Overrides ActionView::Helpers::UrlHelper#link_to to add `rel="nofollow"` to
diff --git a/app/helpers/blob_helper.rb b/app/helpers/blob_helper.rb
index 4ea838ca44731fef9fc818a8665a41f90a9eaf70..885ac5f85b884676a979672d80660ea1ff9555b2 100644
--- a/app/helpers/blob_helper.rb
+++ b/app/helpers/blob_helper.rb
@@ -55,7 +55,7 @@ module BlobHelper
   end
 
   def editing_preview_title(filename)
-    if Gitlab::MarkdownHelper.previewable?(filename)
+    if Gitlab::MarkupHelper.previewable?(filename)
       'Preview'
     else
       'Preview changes'
diff --git a/app/helpers/tree_helper.rb b/app/helpers/tree_helper.rb
index c03564a71ab82ff74b3369412e911d46b8f9668a..03a49e119b8441210e89c526f72a8fbdc46342cf 100644
--- a/app/helpers/tree_helper.rb
+++ b/app/helpers/tree_helper.rb
@@ -25,15 +25,7 @@ module TreeHelper
   end
 
   def render_readme(readme)
-    if gitlab_markdown?(readme.name)
-      preserve(markdown(readme.data))
-    elsif asciidoc?(readme.name)
-      asciidoc(readme.data)
-    elsif markup?(readme.name)
-      render_markup(readme.name, readme.data)
-    else
-      simple_format(readme.data)
-    end
+    render_markup(readme.name, readme.data)
   end
 
   # Return an image icon depending on the file type and mode
diff --git a/app/models/tree.rb b/app/models/tree.rb
index f279e896cda38bb176eaad6d62599352d87114f4..93b3246a6681fa2be48f4cea9812e98165d37f35 100644
--- a/app/models/tree.rb
+++ b/app/models/tree.rb
@@ -1,11 +1,11 @@
 class Tree
-  include Gitlab::MarkdownHelper
+  include Gitlab::MarkupHelper
 
   attr_accessor :repository, :sha, :path, :entries
 
   def initialize(repository, sha, path = '/')
     path = '/' if path.blank?
-    
+
     @repository = repository
     @sha = sha
     @path = path
@@ -20,7 +20,7 @@ class Tree
     available_readmes = blobs.select(&:readme?)
 
     if available_readmes.count == 0
-      return @readme = nil 
+      return @readme = nil
     end
 
     # Take the first previewable readme, or the first available readme, if we
diff --git a/app/views/projects/blob/_text.html.haml b/app/views/projects/blob/_text.html.haml
index f6bd62f239baab71521db45ea9131ac41c99a4bc..4429c395aee79de4cc0f37e54457149dc9ab2852 100644
--- a/app/views/projects/blob/_text.html.haml
+++ b/app/views/projects/blob/_text.html.haml
@@ -1,8 +1,4 @@
-- if gitlab_markdown?(blob.name)
-  .file-content.wiki
-    = preserve do
-      = markdown(blob.data)
-- elsif markup?(blob.name)
+- if markup?(blob.name)
   .file-content.wiki
     = render_markup(blob.name, blob.data)
 - else
diff --git a/app/views/search/results/_snippet_blob.html.haml b/app/views/search/results/_snippet_blob.html.haml
index 8af393777f0c32d4dde8597c762967769d1ae366..95099853918d22129c5fae2866c46a1a75a722c0 100644
--- a/app/views/search/results/_snippet_blob.html.haml
+++ b/app/views/search/results/_snippet_blob.html.haml
@@ -13,16 +13,7 @@
       .file-title
         %i.fa.fa-file
         %strong= snippet_blob[:snippet_object].file_name
-      - if gitlab_markdown?(snippet_blob[:snippet_object].file_name)
-        .file-content.wiki
-          - snippet_blob[:snippet_chunks].each do |snippet|
-            - unless snippet[:data].empty?
-              = preserve do
-                = markdown(snippet[:data])
-            - else
-              .file-content.code
-                .nothing-here-block Empty file
-      - elsif markup?(snippet_blob[:snippet_object].file_name)
+      - if markup?(snippet_blob[:snippet_object].file_name)
         .file-content.wiki
           - snippet_blob[:snippet_chunks].each do |snippet|
             - unless snippet[:data].empty?
diff --git a/app/views/shared/snippets/_blob.html.haml b/app/views/shared/snippets/_blob.html.haml
index 30458793fd13e04ec7538cb3ded4ef91cc92dde0..d26a99bb14c86b13b6db3a4b6d77ac08a1f3c28b 100644
--- a/app/views/shared/snippets/_blob.html.haml
+++ b/app/views/shared/snippets/_blob.html.haml
@@ -1,9 +1,5 @@
 - unless @snippet.content.empty?
-  - if gitlab_markdown?(@snippet.file_name)
-    .file-content.wiki
-      = preserve do
-        = markdown(@snippet.data)
-  - elsif markup?(@snippet.file_name)
+  - if markup?(@snippet.file_name)
     .file-content.wiki
       = render_markup(@snippet.file_name, @snippet.data)
   - else
diff --git a/lib/gitlab/markdown_helper.rb b/lib/gitlab/markup_helper.rb
similarity index 76%
rename from lib/gitlab/markdown_helper.rb
rename to lib/gitlab/markup_helper.rb
index 70384b1db2cf8c5b66ecc7c4d7031a37f0842464..f99be969d3e750c731fac5c5895ba7d967ea9ef2 100644
--- a/lib/gitlab/markdown_helper.rb
+++ b/lib/gitlab/markup_helper.rb
@@ -1,5 +1,5 @@
 module Gitlab
-  module MarkdownHelper
+  module MarkupHelper
     module_function
 
     # Public: Determines if a given filename is compatible with GitHub::Markup.
@@ -8,8 +8,10 @@ module Gitlab
     #
     # Returns boolean
     def markup?(filename)
-      filename.downcase.end_with?(*%w(.textile .rdoc .org .creole .wiki
-                                      .mediawiki .rst .adoc .ad .asciidoc))
+      gitlab_markdown?(filename) ||
+        asciidoc?(filename) ||
+        filename.downcase.end_with?(*%w(.textile .rdoc .org .creole .wiki
+                                        .mediawiki .rst))
     end
 
     # Public: Determines if a given filename is compatible with
@@ -32,7 +34,7 @@ module Gitlab
     end
 
     def previewable?(filename)
-      gitlab_markdown?(filename) || markup?(filename)
+      markup?(filename)
     end
   end
 end
diff --git a/spec/helpers/application_helper_spec.rb b/spec/helpers/application_helper_spec.rb
index 59870dfb192848db1ae41c6df086cb476a58fc9b..3307ac776fc946e9cc09e06624a7e93ddd169733 100644
--- a/spec/helpers/application_helper_spec.rb
+++ b/spec/helpers/application_helper_spec.rb
@@ -269,6 +269,13 @@ describe ApplicationHelper do
       expect(render_markup('foo.rst', content).encoding.name).to eq('UTF-8')
     end
 
+    it "should delegate to #markdown when file name corresponds to Markdown" do
+      expect(self).to receive(:gitlab_markdown?).with('foo.md').and_return(true)
+      expect(self).to receive(:markdown).and_return('NOEL')
+
+      expect(render_markup('foo.md', content)).to eq('NOEL')
+    end
+
     it "should delegate to #asciidoc when file name corresponds to AsciiDoc" do
       expect(self).to receive(:asciidoc?).with('foo.adoc').and_return(true)
       expect(self).to receive(:asciidoc).and_return('NOEL')
diff --git a/spec/lib/gitlab/gitlab_markdown_helper_spec.rb b/spec/lib/gitlab/markup_helper_spec.rb
similarity index 55%
rename from spec/lib/gitlab/gitlab_markdown_helper_spec.rb
rename to spec/lib/gitlab/markup_helper_spec.rb
index beaafd56352a3638010f3c83672a40d6cde53259..7e716e866b154229bb90b22c7648970a697d5e46 100644
--- a/spec/lib/gitlab/gitlab_markdown_helper_spec.rb
+++ b/spec/lib/gitlab/markup_helper_spec.rb
@@ -1,40 +1,40 @@
 require 'spec_helper'
 
-describe Gitlab::MarkdownHelper do
+describe Gitlab::MarkupHelper do
   describe '#markup?' do
     %w(textile rdoc org creole wiki
-       mediawiki rst adoc ad asciidoc).each do |type|
+       mediawiki rst adoc ad asciidoc mdown md markdown).each do |type|
       it "returns true for #{type} files" do
-        expect(Gitlab::MarkdownHelper.markup?("README.#{type}")).to be_truthy
+        expect(Gitlab::MarkupHelper.markup?("README.#{type}")).to be_truthy
       end
     end
 
     it 'returns false when given a non-markup filename' do
-      expect(Gitlab::MarkdownHelper.markup?('README.rb')).not_to be_truthy
+      expect(Gitlab::MarkupHelper.markup?('README.rb')).not_to be_truthy
     end
   end
 
   describe '#gitlab_markdown?' do
     %w(mdown md markdown).each do |type|
       it "returns true for #{type} files" do
-        expect(Gitlab::MarkdownHelper.gitlab_markdown?("README.#{type}")).to be_truthy
+        expect(Gitlab::MarkupHelper.gitlab_markdown?("README.#{type}")).to be_truthy
       end
     end
 
     it 'returns false when given a non-markdown filename' do
-      expect(Gitlab::MarkdownHelper.gitlab_markdown?('README.rb')).not_to be_truthy
+      expect(Gitlab::MarkupHelper.gitlab_markdown?('README.rb')).not_to be_truthy
     end
   end
 
   describe '#asciidoc?' do
     %w(adoc ad asciidoc ADOC).each do |type|
       it "returns true for #{type} files" do
-        expect(Gitlab::MarkdownHelper.asciidoc?("README.#{type}")).to be_truthy
+        expect(Gitlab::MarkupHelper.asciidoc?("README.#{type}")).to be_truthy
       end
     end
 
     it 'returns false when given a non-asciidoc filename' do
-      expect(Gitlab::MarkdownHelper.asciidoc?('README.rb')).not_to be_truthy
+      expect(Gitlab::MarkupHelper.asciidoc?('README.rb')).not_to be_truthy
     end
   end
 end