Which approach to take depends on where you want the added markup to appear, relative to things like description and notes.
Demo:
$wire->addHookBefore('InputfieldText::render', function(HookEvent $event) {
/** @var InputfieldText $inputfield */
$inputfield = $event->object;
if($inputfield->name !== 'text_1') return;
$inputfield->prependMarkup('<div>prependMarkup</div>');
$inputfield->appendMarkup('<div>appendMarkup</div>');
});
$wire->addHookAfter('InputfieldText::render', function(HookEvent $event) {
/** @var InputfieldText $inputfield */
$inputfield = $event->object;
if($inputfield->name !== 'text_1') return;
$event->return = '<div>before render</div>' . $event->return . '<div>after render</div>';
});
Related request: https://github.com/processwire/processwire-requests/issues/536