LLInt ARM backend should not use the d8 register as scratch register
authorrgabor@webkit.org <rgabor@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Thu, 18 Apr 2013 21:56:32 +0000 (21:56 +0000)
committerrgabor@webkit.org <rgabor@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Thu, 18 Apr 2013 21:56:32 +0000 (21:56 +0000)
https://bugs.webkit.org/show_bug.cgi?id=114811

Reviewed by Filip Pizlo.

The d8 register must preserved across function calls and should
not used as scratch register. Changing it to d6.

* offlineasm/arm.rb:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@148705 268f45cc-cd09-0410-ab3c-d52691b4dbfc

Source/JavaScriptCore/ChangeLog
Source/JavaScriptCore/offlineasm/arm.rb

index 2370c7c..2bb1d7d 100644 (file)
@@ -1,3 +1,15 @@
+2013-04-18  Gabor Rapcsanyi  <rgabor@webkit.org>
+
+        LLInt ARM backend should not use the d8 register as scratch register
+        https://bugs.webkit.org/show_bug.cgi?id=114811
+
+        Reviewed by Filip Pizlo.
+
+        The d8 register must preserved across function calls and should
+        not used as scratch register. Changing it to d6.
+
+        * offlineasm/arm.rb:
+
 2013-04-18  Geoffrey Garen  <ggaren@apple.com>
 
         Removed HeapTimer::synchronize
index aac6cc8..498333b 100644 (file)
@@ -65,7 +65,7 @@ end
 
 ARM_EXTRA_GPRS = [SpecialRegister.new("r9"), SpecialRegister.new("r8"), SpecialRegister.new("r3")]
 ARM_EXTRA_FPRS = [SpecialRegister.new("d7")]
-ARM_SCRATCH_FPR = SpecialRegister.new("d8")
+ARM_SCRATCH_FPR = SpecialRegister.new("d6")
 
 def armMoveImmediate(value, register)
     # Currently we only handle the simple cases, and fall back to mov/movt for the complex ones.