diff --git a/share/qtcreator/debugger/lldbbridge.py b/share/qtcreator/debugger/lldbbridge.py
index bcf70338f5bae95b4552995acd2174f3a21f93b4..229237004321706d3b545790f3b399caf7a0ac66 100644
--- a/share/qtcreator/debugger/lldbbridge.py
+++ b/share/qtcreator/debugger/lldbbridge.py
@@ -1488,16 +1488,19 @@ class Dumper(DumperBase):
         else:
             self.reportData()
 
-    def executeJumpToLine(self, args):
+    def executeJumpToLocation(self, args):
         frame = self.currentFrame()
         self.report('state="stopped"')
         if not frame:
             self.reportStatus("No frame available.")
             self.reportLocation()
             return
-        bp = self.target.BreakpointCreateByLocation(
-                    str(args["file"]), int(args["line"]))
-        isWatch = isinstance(bp, lldb.SBWatchpoint)
+        addr = args.get('address', 0)
+        if addr:
+            bp = self.target.BreakpointCreateByAddress(addr)
+        else:
+            bp = self.target.BreakpointCreateByLocation(
+                        str(args['file']), int(args['line']))
         if bp.GetNumLocations() == 0:
             self.target.BreakpointDelete(bp.GetID())
             self.reportStatus("No target location found.")
diff --git a/src/plugins/debugger/lldb/lldbengine.cpp b/src/plugins/debugger/lldb/lldbengine.cpp
index a1a60a2b1ed1b132b4256b39b735cf2777ccb780..54ac32b28e432cbb5fd66146619599b5d3ebaddd 100644
--- a/src/plugins/debugger/lldb/lldbengine.cpp
+++ b/src/plugins/debugger/lldb/lldbengine.cpp
@@ -378,8 +378,11 @@ void LldbEngine::executeJumpToLine(const ContextData &data)
 {
     resetLocation();
     notifyInferiorRunRequested();
-    runCommand(Command("executeJumpToLine")
-        .arg("file", data.fileName).arg("line", data.lineNumber));
+    Command cmd("executeJumpToLocation");
+    cmd.arg("file", data.fileName);
+    cmd.arg("line", data.lineNumber);
+    cmd.arg("address", data.address);
+    runCommand(cmd);
 }
 
 void LldbEngine::activateFrame(int frameIndex)