patch 8.1.1684: profiling functionality is spread out

Problem:    Profiling functionality is spread out.
Solution:   Put profiling functionality in profiling.c. (Yegappan Lakshmanan,
            closes #4666)
diff --git a/src/Make_vms.mms b/src/Make_vms.mms
index f01d325..b7063e1 100644
--- a/src/Make_vms.mms
+++ b/src/Make_vms.mms
@@ -313,10 +313,10 @@
 	if_cscope.c if_xcmdsrv.c fileio.c findfile.c fold.c getchar.c \
 	hardcopy.c hashtab.c indent.c insexpand.c json.c list.c main.c mark.c \
 	menu.c mbyte.c memfile.c memline.c message.c misc1.c misc2.c move.c \
-	normal.c ops.c option.c popupmnu.c popupwin.c, quickfix.c regexp.c search.c \
-	sha256.c sign.c spell.c spellfile.c syntax.c tag.c term.c termlib.c \
-	textprop.c ui.c undo.c usercmd.c userfunc.c version.c screen.c \
-	window.c os_unix.c os_vms.c pathdef.c \
+	normal.c ops.c option.c popupmnu.c popupwin.c profiler.c quickfix.c \
+	regexp.c search.c sha256.c sign.c spell.c spellfile.c syntax.c tag.c \
+	term.c termlib.c textprop.c ui.c undo.c usercmd.c userfunc.c \
+	version.c screen.c window.c os_unix.c os_vms.c pathdef.c \
 	$(GUI_SRC) $(PERL_SRC) $(PYTHON_SRC) $(TCL_SRC) \
  	$(RUBY_SRC) $(HANGULIN_SRC) $(MZSCH_SRC) $(XDIFF_SRC)
 
@@ -327,11 +327,12 @@
 	fileio.obj findfile.obj fold.obj getchar.obj hardcopy.obj hashtab.obj \
 	indent.obj insexpand.obj json.obj list.obj main.obj mark.obj \
 	menu.obj memfile.obj memline.obj message.obj misc1.obj misc2.obj \
-	move.obj mbyte.obj normal.obj ops.obj option.obj popupmnu.obj popupwin.obj\
-	quickfix.obj regexp.obj search.obj sha256.obj sign.obj spell.obj \
-	spellfile.obj syntax.obj tag.obj term.obj termlib.obj textprop.obj \
-	ui.obj undo.obj usercmd.obj userfunc.obj screen.obj version.obj \
-	window.obj os_unix.obj os_vms.obj pathdef.obj if_mzsch.obj \
+	move.obj mbyte.obj normal.obj ops.obj option.obj popupmnu.obj \
+	popupwin.obj profiler.obj quickfix.obj regexp.obj search.obj \
+	sha256.obj sign.obj spell.obj spellfile.obj syntax.obj tag.obj \
+	term.obj termlib.obj textprop.obj ui.obj undo.obj usercmd.obj \
+	userfunc.obj screen.obj version.obj window.obj os_unix.obj os_vms.obj \
+	pathdef.obj if_mzsch.obj \
 	$(GUI_OBJ) $(PERL_OBJ) $(PYTHON_OBJ) $(TCL_OBJ) \
  	$(RUBY_OBJ) $(HANGULIN_OBJ) $(MZSCH_OBJ) $(XDIFF_OBJ)
 
@@ -692,6 +693,10 @@
  ascii.h keymap.h term.h macros.h structs.h regexp.h \
  gui.h beval.h [.proto]gui_beval.pro option.h ex_cmds.h proto.h \
  globals.h
+profiler.obj : profiler.c vim.h [.auto]config.h feature.h os_unix.h \
+ ascii.h keymap.h term.h macros.h structs.h regexp.h \
+ gui.h beval.h [.proto]gui_beval.pro option.h ex_cmds.h proto.h \
+ globals.h
 quickfix.obj : quickfix.c vim.h [.auto]config.h feature.h os_unix.h \
  ascii.h keymap.h term.h macros.h structs.h regexp.h \
  gui.h beval.h [.proto]gui_beval.pro option.h ex_cmds.h proto.h \